when a user enters a decimal number using the "international"/English/OSM-raw-data formatting (e.g. as in `0.5`), it is parsed using the basic, non-localized, number parser. In such cases, the content of the input field should not be overwritten with the localized formatting, as that would cause unexpected glitches and make editing harder (e.g. when thousands-grouping characters seemingly "magically" disappear or appear while typing).
see https://github.com/openstreetmap/iD/pull/8769/#pullrequestreview-1324246437 ff.
this necessary when a regional preset (e.g. from NSI) is supposed to inherit fields from a parent preset, but the direct parent does NOT apply at the location of the entity to be added/edited. In that case we need to search for a potential regional variant of the parent preset.
this fixes where tag values of fields with referenced strings can become corrupted when the sub-field has restricted `options`, and an unavailable option is entered manually into the field.
important for openstreetmap/id-tagging-schema#891
fixes a bug where `multi/many/semiCombo` options are not selectable immediately after they were removed from a field, when the field does not use taginfo to fetch options
instead of `"strings": { "options": { "<tag-value>": "<translatable-string>", …` it is now also supported to have:
```
"strings": {
"options": {
"<tag-value>": {
"title": "<translatable-string>",
"description": "<translatable-string>"
},
…
```
because the common tag vs. left/right tag situation can be different for different entities in the multiselection, the approach to merge/split/update the tags needs to be made on a per entity basis
this introduces a new way to specify tag changes: a callback function which is called for each to be modified entity
* Clamp degree values in `direction` fields between 0 and 359 degrees, fixes#9386
* Only match cardinal values to numbers in `direction` fields
* Disable increment/decrement buttons on number fields if the input value is not numeric or when there is a multi-selection with conflicting values
* Fix/implement reverse operation for semicolon delimited `direction` values