Commit Graph

62 Commits

Author SHA1 Message Date
Bryan Housel
16ff2b1373 Upgrade country-coder to scoped package @ideditor/country-coder 2019-12-02 13:51:04 -05:00
Quincy Morgan
f45670a9a7 Don't suggest brands from incompatible countries in the Name field (close #6479) 2019-11-07 19:21:00 +01:00
Quincy Morgan
d89996e52c Update country-coder to 2.0.0 (close #7029)
Localize address field in walkthrough without overwriting country coder function
2019-11-07 18:45:46 +01:00
Quincy Morgan
8c0740191f Replace remaining nominatim countryCode calls with country-coder calls (close #6941) 2019-11-01 18:15:35 +01:00
Quincy Morgan
af4df042a7 Account for OSM using sr instead of sr-Cyrl for Cyrillic Serbian in the multilingual name field (re: #6712) 2019-08-23 09:49:22 -05:00
Quincy Morgan
5742e58ff6 Prioritize the user's language and territory languages in the multilingual name suggestion list (close #6712) 2019-08-08 16:21:06 -05:00
Quincy Morgan
39454c1b80 Lock the Name field if a feature as a name:etymology:wikidata tag (close #6683) 2019-08-08 14:55:23 -05:00
Quincy Morgan
e37948fe9a Use CLDR for a translated language list in the localized name field instead of untranslated wmf site matrix (close #2457)
Translate language names in the community index list (close #4990)
2019-07-31 13:47:53 -04:00
Quincy Morgan
b0c7500e33 Fix deletion and update issues with localized name field (close #6491) 2019-07-30 13:05:19 -04:00
Bryan Housel
69a25fd6aa Move locking code from input and localized up to uiField
Also adjust styles some more for wikidata tagged items
2019-05-20 17:50:50 -04:00
Bryan Housel
06bdfbfb8a Use gray stroke on marker and lock icon on field for locked item 2019-05-20 15:36:10 -04:00
Quincy Morgan
401c3a5005 Fix issue with the Label field by changing the class name of form-field-label (close #6344) 2019-05-13 10:36:21 -04:00
Bryan Housel
fceb1a86f7 Merge pull request #6245 from openstreetmap/d3-v5
d3 v5
2019-04-29 15:46:08 -04:00
Bryan Housel
b99be67169 When calling an errback from a Promise.catch, pass err.message 2019-04-25 21:58:36 -04:00
Quincy Morgan
d01bb78707 Reduce circular dependencies caused by importing from indexes, the location of the validation models, and the location of areaKeys (close #6237) 2019-04-24 13:45:59 -07:00
Bryan Housel
ff4f8f005f Remove lodash find and findIndex
(re: #6087)
2019-03-22 17:31:41 -04:00
Bryan Housel
d0021f77ca Handle possibility of combobox blurring without dispatching accept 2019-01-28 13:43:40 -05:00
Bryan Housel
18d71448be pacify eslint 2019-01-25 16:23:46 -05:00
Bryan Housel
5d6e331635 Don't erase name field when tabbing from it
(closes #5760)
2019-01-25 16:16:07 -05:00
Bryan Housel
20bcfc5730 Delimit name-suggestion-preset names on en-dash, not hyphen
To avoid conflicts with hyphenated names, or bilingual names
with hyphens in them (like used in Brussels)
2019-01-23 09:44:24 -05:00
Bryan Housel
4583e2d4d7 Make sure all combo event listeners can handle accept/cancel w/o datum
(re: #5637, re: #5618)

This can happen if the user enters a value that is not matched to
one of the combo suggestions.

Also make sure to set `this` to the input field.  It might not be
already if the event was triggered from a keypress instead of a click.
2019-01-22 23:14:34 -05:00
Bryan Housel
39b3f1df68 Avoid creating comboboxes
(closes #5568)

Several strategies in here:
- Move uiCombobox() from inside the render function to class variable
- Don't render stuff like the raw tag editor when it's collapsed
- Don't show as many fields/combos on hover
- Don't instantiate fields (like universal/more) until they're actually shown
- Bind the combo on enter selection not on update selection
2018-12-11 16:07:00 -05:00
Bryan Housel
ff646fa2c8 Dispatch a 'cancel' event if the user hits escape 2018-12-11 00:09:55 -05:00
Bryan Housel
15a54cab17 Use context.container instead of passing it in 2018-12-10 14:14:27 -05:00
Bryan Housel
e5dedeff8b Move lib/d3.combobox.js -> ui/combobox.js
As with other things from this lib/ folder, little original code remains
and turning these things into reusable d3 plugins is not a priority.
2018-12-10 12:38:21 -05:00
Bryan Housel
d574bfcd77 Disable autocomplete on the localized field
(closes #5558)
2018-12-07 17:19:02 -05:00
Bryan Housel
247900f727 Change several of the event things, remove numeric index
re: https://github.com/openstreetmap/iD/issues/5558#issuecomment-445307568
2018-12-07 16:54:32 -05:00
Bryan Housel
8b2e5c98bd Fix tests - test for _entity before using it 2018-12-02 01:46:35 -05:00
Bryan Housel
0a286bbd9d Lock name field when there is a wikidata tag
(re: #5515)
2018-12-02 00:14:51 -05:00
Bryan Housel
958d7fac4f wip changing all fields to use flexbox everywhere 2018-11-28 18:15:38 -05:00
Bryan Housel
986b663c9e Get rid of extra form-label-button-wrap div
Buttons can now be directly appended to the form-field-label flex container
2018-11-27 09:14:11 -05:00
Bryan Housel
7170e93b39 Adjust tooltip 2018-11-26 17:35:38 -05:00
Bryan Housel
df91eb2959 Cleanup style, make sure multilingual fields always render 2018-11-26 17:13:55 -05:00
Bryan Housel
9341e477a6 Merge remote-tracking branch 'origin/master' into brand-name-protection 2018-11-26 15:27:56 -05:00
Bryan Housel
f6f146f79b Lock down some fields when a brand preset has been chosen 2018-11-26 15:13:40 -05:00
Bryan Housel
ae063e9616 Make name and brand fields readonly on suggestion presets
(re #5515)
2018-11-23 23:44:52 -05:00
Quincy Morgan
e2b2649976 Merge pull request #5498 from quincylvania/form-field-flexbox
Flexbox preset field, member, and membership UI
2018-11-21 20:14:36 -05:00
Bryan Housel
ea9e3008a5 addTags() -> setTags() / removeTags() -> unsetTags()
This avoids overriding the `addTags` and `removeTags` objects with functions
2018-11-21 12:59:43 -05:00
Bryan Housel
2699418c3e Disable the name field when matching a suggestion preset
(re: #5515)
2018-11-21 12:40:12 -05:00
Bryan Housel
622621ca89 Improve suggestion combo behavior in the name field
- adds minItems(1) so it will match
- displays up to 10 suggestions
- correctly removes old tags by setting the `undefined`
- adjust the name distance scoring
- only shows name suggestions if the preset can benefit from them
  (i.e. a generic/fallback or a preset that has some suggestions in the index)
2018-11-21 11:15:03 -05:00
Bryan Housel
e3f5aecda9 Remove dataSuggestions and utilSuggestNames
- dataSuggestions was just a reexport of the name-suggestion-index
- utilSuggestNames was a combobox fetcher function used only once by uiFieldLocalized
    Doesn't need to be a util if it's only used once in the code
    and the tests for it were not really that interesting
2018-11-20 21:27:32 -05:00
Quincy Morgan
7bad67ff76 Flexbox preset field, member, and membership UI 2018-11-18 11:28:48 -05:00
Bryan Housel
470835b38f Extract all graphics from iD sprite, reassemble with svg-sprite
All iD sprite graphics are now prefixed with `iD-`
Also includes support for sending the preset logos to taginfo
2018-06-08 16:06:46 -04:00
Bryan Housel
4a71aa6146 Use safer field ids in classes, element ids, css selectors
Fixes issue with nested/namespaced fields, such as `maxspeed/advisory`,
in situations where would try to use a css selector or element id.
Can't use characters like '/' in a css selector.
2018-03-15 00:57:41 -04:00
Bryan Housel
6d65a1c89a Convert lodah-es and d3 to named imports for ui/fields 2017-09-26 00:17:13 -04:00
Bryan Housel
5f44c9a00a Add combobox menus to id-container instead of document.body
(re: https://github.com/openstreetmap/iD/issues/3925#issuecomment-290718356)
2017-03-31 13:44:55 -04:00
Bryan Housel
2314acfec7 Add utilNoAuto to remove autocorrect/spellcheck features from inputs
(closes #3839)
2017-02-14 17:19:24 -05:00
Bryan Housel
053074d076 Export live binding for services in iD.services, fix init/reset
(closes #3324)

Previously we allowed devs to swap out services that they didn't need.
This became difficult now that ES6 exports are immutable bindings.
But we can wrap the immutable bindings themselves in a live object,
to get back the flexibility that we used to have.

This change also drops the `taginfo` accessor on Context, since devs who want
to swap out taginfo service with something else can now do so through the live
binding.  `iD.services.taginfo = myTaginfo()`
2016-10-14 10:38:09 -04:00
Bryan Housel
3102a4ae6a Rename all the things to include pseudonamespaces 2016-10-04 19:06:20 -04:00
Bryan Housel
0ea59a043d Fields mostly working (but not dispatch/update) 2016-09-20 22:41:05 -04:00