Commit Graph

78 Commits

Author SHA1 Message Date
Quincy Morgan 874c412b74 Enforce max unicode charachter length of keys, values, and relation roles through truncation upon input rather than HTML maxlength attribute (close #6817)
Normalize unicode when changing keys, values, and relation roles
2020-06-10 14:11:55 -04:00
Quincy Morgan d01f1598d3 Show the delete button for filled multilingual name fields even if no name tag is present (close #7572)
Focus the language input when clicking a multilingual name field label instead of deleting the value
Be more lenient with `utilUniqueDomId` function input
2020-06-10 10:35:03 -04:00
Quincy Morgan 63aa47f02f Fix issue with entering language codes directly in multilingual name fields (close #7156) 2020-05-21 14:33:10 -04:00
Quincy Morgan 60f7dc7c0b Replace presets property of context with singleton
Remove utilPreset
2020-04-01 13:08:45 -07:00
Quincy Morgan a1af118f0e Ensure locales and presets are loaded before the UI loads (close #7406)
Consolidate localization behavior and init to a coreLocalizer function and singleton
Explicitly support `en-US` locale
Rename coreData to coreFileFetcher and export a singleton rather than using a property of coreContext
Add `apiConnections` property of coreContext to simplify adding a source switcher
Replace some init functions with re-callable, promise-supporting `ensureLoaded` functions
Make coreContext itself load the UI if a container has been specified at init time
Fix code tests
2020-03-31 12:23:31 -07:00
Quincy Morgan d62a62cba8 Make popover and tooltip part of the UI module instead of utils 2020-03-24 17:32:09 -07:00
Quincy Morgan 4872b06a28 Randomize form field ids to thwart browser memory and help with embedding iD (close #6444) 2020-03-21 13:16:40 -07:00
Bryan Housel 3608659d21 Restore field inheritance 2020-02-10 16:22:13 -05:00
Bryan Housel 4aa4686e7f Fix test failures in localized and suspicious_names 2020-02-03 12:38:17 -05:00
Quincy Morgan 8d9adbd902 Lock the name field if any of the selected features should be locked (re: #7306) 2020-01-31 11:23:42 -05:00
Quincy Morgan b3262a71dc Use newlines instead of semicolons to separate mutliselection tag values in tooltips (re: #7306) 2020-01-31 10:49:31 -05:00
Quincy Morgan 15e9599ff7 Support editing the Name and Multilingual Name fields during multiselection 2020-01-30 17:09:19 -05:00
Quincy Morgan 1b331bb678 Add mechanism for fields to support editing during multiselection (re: #7276)
Add `utilCombinedTags` method and use it for the raw tag editor as well as fields
Pass `entityIDs` array into fields instead of single `entity` object
Give field revertion its own path separate from `change`
Add multiselection editing to fields in files: access, address, check, combo, cycleway, input, maxspeed, textarea, and wikidata
2020-01-30 13:53:29 -05:00
Bryan Housel 567eeac587 Make several data external instead of bundled:
Also dist/data/* contains minified files now

These are now external and will fetch as needed:
-export { dataAddressFormats } from './address-formats.json';
-export { dataDeprecated } from './deprecated.json';
-export { dataDiscarded } from './discarded.json';
-export { dataLanguages } from './languages.json';
-export { dataPhoneFormats } from './phone-formats.json';
-export { dataShortcuts } from './shortcuts.json';
-export { dataTerritoryLanguages } from './territory-languages.json';
2020-01-28 22:21:31 -05:00
Quincy Morgan 89ce98f510 Don't require services/osm in order to get max OSM character lengths 2020-01-28 09:28:23 -05:00
Quincy Morgan 17ae12b3d7 Address most common places where tag keys or values could exceed the 255 character API limit (close #6817) 2020-01-27 15:57:55 -05:00
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