Commit Graph

3334 Commits

Author SHA1 Message Date
Bryan Housel
fe00a40e9a Move the keepRight data extrnal 2020-02-07 09:16:34 -05:00
SilentSpike
f8a4a0b3ad Use d3_json Promise directly for Osmose requests 2020-02-07 11:29:48 +00:00
SilentSpike
8bb2dc7fa6 Return Promise for Osmose string requests 2020-02-07 11:21:33 +00:00
SilentSpike
7d76e0ac5c Fix Osmose request resolving after UI moves on
- Previously caused minor unexpected renderer behaviour by forcing elements
visible when the user had moved on (potentially interfering with
whatever they're currently doing)
2020-02-07 10:43:44 +00:00
SilentSpike
f86837d637 Fix use of double quotes 2020-02-06 23:12:18 +00:00
SilentSpike
51efd5b714 Update and standardise QA implementations
- ES6ify (now using class syntax to define QAItem objects)
- Fix bug with KeepRight marker rendering not updating properly
- Use `qa-` prefix for the UI element classes to differentiate from iD
validation error related UI element classes
- Move away from "error" where possible in source
- Move away from snake_case naming where possible

Note that some function/method names have been untouched to make life
easier for v3 development. Have added note comments where appropriate.
2020-02-06 23:07:50 +00:00
Bryan Housel
9faf8c0fe5 Test that fallback presets are there before data is loaded
Also, we don't actually need a vertex preset anymore, it was removed a while ago
2020-02-06 17:04:11 -05:00
Bryan Housel
de0ac9d451 Upgrade to name-suggestion-index v4.0.0
(closes #7336)

- json data files are distributed both regular and minified
- json data is no longer exported by index.mjs
2020-02-06 11:28:02 -05:00
Bryan Housel
13ead25654 Merge branch 'external_presets' into 2.x
(re: #4994)
2020-02-05 21:32:51 -05:00
Bryan Housel
3c6ba9703a presetIndex.build -> presetIndex.merge, and make it merge data 2020-02-05 21:13:15 -05:00
Quincy Morgan
1720f7cb93 Organize some code in coreUploader (re: #7333)
Fix lint error
2020-02-05 17:53:28 -05:00
Quincy Morgan
237a382c51 Merge branch '2.x' into uploader
# Conflicts:
#	modules/modes/save.js
2020-02-05 16:23:09 -05:00
Quincy Morgan
3b19cc32fd Don't grey out the map during conflict resolution (close #6547) 2020-02-05 16:16:50 -05:00
Quincy Morgan
0e14241fcf Move some upload code from modeSave to new coreUploader object (re: #7247) 2020-02-05 15:28:23 -05:00
Bryan Housel
c4f0700309 Fix data urls 2020-02-05 13:27:25 -05:00
Bryan Housel
147af19626 Seed presetIndex collection with fallback presets
- amazingly, this passes all tests, but iD ends up pretty non-functional
2020-02-05 12:21:33 -05:00
Bryan Housel
e3e7cd3003 Memoize presetCollection.item (it's an Array.find)
Also add tests for `matchAllGeometry`
2020-02-05 10:32:20 -05:00
Quincy Morgan
4194194e14 Prefix file variables in operations/orthogonalize.js with underscores
Simplify multiple disabled reasons code for circularize and orthogonalize operaitons
2020-02-05 10:10:12 -05:00
Quincy Morgan
4ff634b90f Enable the circularize operation for multiple selected features (close #7326) 2020-02-05 09:57:33 -05:00
Bryan Housel
0fe766d9a4 WIP on external presets
- preset data is no longer bundled into iD.js
- some code pathways commented out re: external presets
- many changes so that tests can run without presets at start, or async
- still need to make sure fallbacks are always there (point, line, area, etc)
2020-02-05 09:38:26 -05:00
SilentSpike
4c843f60db Merge pull request #7095 from openstreetmap/osmose
Add Osmose Q/A layer
2020-02-04 21:47:28 +00:00
SilentSpike
03a097c847 Move Osmose translation link below details box 2020-02-04 21:44:20 +00:00
SilentSpike
3745c06d62 Hide Osmose issue description if no string 2020-02-04 21:22:44 +00:00
SilentSpike
087867d5c8 Use Promises for Osmose issue detail requests
Also ES6ify the details script
2020-02-04 21:08:02 +00:00
Bryan Housel
fe5ca6867c Fix error in generating outdated_tags messgae 2020-02-04 13:00:14 -05:00
Quincy Morgan
9d31d444d0 Show only issues shared by all features on multiselection 2020-02-04 12:09:54 -05:00
SilentSpike
e6cf53dfe8 Fix use of test() method on color string 2020-02-04 12:05:36 +00:00
SilentSpike
377e99240f Add Osmose translations link to details footer
Improves structure of the details UI and introduces the use of flexboxes
for this. Does not break UI for other error services with shared classes.
2020-02-03 23:20:45 +00:00
SilentSpike
1dd65cb93e Correct Osmose UI element spacing 2020-02-03 23:20:45 +00:00
SilentSpike
ecadafb3e4 Use Osmose supplied hex colors 2020-02-03 23:20:45 +00:00
SilentSpike
cf878ca410 Use Object.keys() not Python {}.keys() 🤦‍♂️ 2020-02-03 23:20:45 +00:00
SilentSpike
2d2fa440c1 Use multiple specific Osmose string requests
- Only requesting the data we need (Osmose has many more issue types
than iD will ever display)
2020-02-03 23:20:45 +00:00
SilentSpike
06ac02f89f Use Osmose dynamic subtitile string
Providing a `langs` param that's currently not implemented so these will
all be English until that is done.
2020-02-03 23:20:45 +00:00
SilentSpike
e3c6f58624 Format markdown in Osmose strings appropriately 2020-02-03 23:20:44 +00:00
SilentSpike
010ca30999 Show more Osmose strings in the UI
Also only add sections where appropriate
2020-02-03 23:20:44 +00:00
SilentSpike
7a00c0a974 Use Osmose locale filter and detail strings 2020-02-03 23:20:44 +00:00
SilentSpike
5d93d3cace Prepare to use Osmose issue detail strings
- Remove translation description strings, will be using supplied
translations once the API is updated
- Change the way elements and details are presented since they can't be
easily integrated into the 3rd party description strings
2020-02-03 23:20:44 +00:00
SilentSpike
7d76950d55 Use Osmose translation strings for issue titles
This is just step one in the process while we wait for the API to supply
further strings and filtering to reduce the amount of string data
requested (since we don't need it all).

Strings are requested when the layer is first enabled and cached for the
current language (plus English as a backup).
2020-02-03 23:20:43 +00:00
SilentSpike
6310349a5a Use latest Osmose API tiles endpoint 2020-02-03 23:20:43 +00:00
SilentSpike
d2f9278fe2 Port changeset tag improvement to ImproveOSM QA
Also marked the `closed:` tags as readonly since these are filled in
automatically.

- Gives a count of each error type closed instead of making a list of
joined coordinates which quickly fills the maximum value length.
- This is more useful since a changeset already gives the area worked
on while these counts give insight into the type of changes made.
- Similar to iD own validation tags
2020-02-03 23:20:43 +00:00
SilentSpike
9fca611ec1 Add support for even more Osmose error types
- Conflicting tags
- Orthographic errors (excess whitespace and all capital names)
- Deprecated tagging
- Bad use of the "area" tag
2020-02-03 23:20:43 +00:00
SilentSpike
406264c37e Simplify structure of QA error data 2020-02-03 23:20:42 +00:00
SilentSpike
a53f1c0f67 Add support for Osmose unnecessary tag error type 2020-02-03 23:20:42 +00:00
SilentSpike
c13eb15691 Add support for more Osmose error types
- Unconnected level crossings
- Unconnected highway features/barries
- Unexpected punctuation/symbols in tag values
- Unbalanced parentheses/quotes in name values
- Invalid date formats
- Access tagging that permits all transport modes
- Elements with a "name" tag and no main tagging
- Relations missing a "type" value
2020-02-03 23:20:42 +00:00
SilentSpike
cc3039033f Support more subtypes of osmose error type 8300 2020-02-03 23:20:41 +00:00
SilentSpike
12206c68e6 Convert Osmsoe service to ES6 syntax 2020-02-03 23:20:41 +00:00
SilentSpike
896ed762e0 Fix silent failure for some Osmose error types
When I added special handling for mapillary errors the code was trying
to access translation strings nested under the error category (which
doesn't exist for all error types). This code is now moved into it's own
function so that variable hoisting doesn't run it for non-applicable
error types and prevent them from working.

- Also adds support for error type 3040 (bad tag value)
- Updated the Osmose sidebar UI title
2020-02-03 23:20:41 +00:00
SilentSpike
a068cdfc59 Tag changeset with Osmose issue closed counts
This seems more useful than tagging with a list of joined coordinates
which quickly becomes truncated due to tag value length.

Adds a tag per issue type similar to iDs own validation.
2020-02-03 23:20:41 +00:00
SilentSpike
5afdfc527b Add support for more Osmose error types
- Missing parking access
- Malformed opening hours tagging
- Objects detected by Mapillary that aren't mapped
- Traffic sign information detected by Mapillary that isn't mapped

Mapillary errors add example code for special error type handling as
they don't need to request further details and can use piecewise
translation strings
2020-02-03 23:01:03 +00:00
SilentSpike
b24b041335 Add Osmose issue detail fetching for UI
Must fetch details per-issue to get the associated OSM elements for
highlighting and use in the error description.

Also fixes URL for error closure.
2020-02-03 23:01:03 +00:00