From 1bd66c3d9e56aac9107daed76d9fdd262d522182 Mon Sep 17 00:00:00 2001 From: Quincy Morgan Date: Wed, 17 Apr 2019 12:40:31 -0700 Subject: [PATCH] Add presets for Pit Latrine and Flush Toilets Add Handwashing and Positions fields to the toilet presets Deprecate alternative, less-common tags for toilets:disposal=pitlatrine Correct Pit Latrine option string in the Disposal field --- data/deprecated.json | 8 +++++ data/presets.yaml | 18 ++++++++++- data/presets/fields.json | 4 ++- data/presets/fields/toilets/disposal.json | 2 +- data/presets/fields/toilets/handwashing.json | 5 ++++ data/presets/fields/toilets/position.json | 5 ++++ data/presets/presets.json | 4 ++- data/presets/presets/amenity/toilets.json | 8 +++-- .../amenity/toilets/disposal/flush.json | 30 +++++++++++++++++++ .../amenity/toilets/disposal/pitlatrine.json | 28 +++++++++++++++++ data/taginfo.json | 8 +++-- dist/locales/en.json | 16 +++++++++- package.json | 24 +++++++-------- svg/fontawesome/fas-toilet.svg | 1 + svg/the-noun-project/2009541.svg | 1 + 15 files changed, 140 insertions(+), 22 deletions(-) create mode 100644 data/presets/fields/toilets/handwashing.json create mode 100644 data/presets/fields/toilets/position.json create mode 100644 data/presets/presets/amenity/toilets/disposal/flush.json create mode 100644 data/presets/presets/amenity/toilets/disposal/pitlatrine.json create mode 100644 svg/fontawesome/fas-toilet.svg create mode 100644 svg/the-noun-project/2009541.svg diff --git a/data/deprecated.json b/data/deprecated.json index b0a0d4ba4..07f3e3298 100644 --- a/data/deprecated.json +++ b/data/deprecated.json @@ -575,6 +575,14 @@ "old": {"sloped_curb": "yes"}, "replace": {"kerb": "lowered"} }, + { + "old": {"toilets:disposal": "longdrop"}, + "replace": {"toilets:disposal": "pitlatrine"} + }, + { + "old": {"toilets:disposal": "pit_latrine"}, + "replace": {"toilets:disposal": "pitlatrine"} + }, { "old": {"tourism": "bed_and_breakfast"}, "replace": {"tourism": "guest_house"} diff --git a/data/presets.yaml b/data/presets.yaml index d4d6ef9f1..57972644b 100644 --- a/data/presets.yaml +++ b/data/presets.yaml @@ -1990,7 +1990,13 @@ en: # 'toilets:disposal=flush' flush: Flush # 'toilets:disposal=pitlatrine' - pitlatrine: Pit/Latrine + pitlatrine: Pit Latrine + toilets/handwashing: + # 'toilets:handwashing=*' + label: Handwashing + toilets/position: + # 'toilets:position=*' + label: Positions toll: # toll=* label: Toll @@ -3076,6 +3082,16 @@ en: name: Toilets # 'terms: bathroom,restroom,outhouse,privy,head,lavatory,latrine,water closet,WC,W.C.' terms: '' + amenity/toilets/disposal/flush: + # 'amenity=toilets, toilets:disposal=flush' + name: Flush Toilets + # 'terms: bathroom,head,lavatory,privy,restroom,water closet,WC,W.C.' + terms: '' + amenity/toilets/disposal/pitlatrine: + # 'amenity=toilets, toilets:disposal=pitlatrine' + name: Pit Latrine + # 'terms: head,lavatory,long drop,outhouse,pit toilet,privy' + terms: '' amenity/townhall: # amenity=townhall name: Town Hall diff --git a/data/presets/fields.json b/data/presets/fields.json index 8d6d0d75b..76c398b4c 100644 --- a/data/presets/fields.json +++ b/data/presets/fields.json @@ -356,7 +356,9 @@ "target": {"key": "target", "type": "combo", "label": "Target"}, "tidal": {"key": "tidal", "type": "check", "label": "Tidal"}, "to": {"key": "to", "type": "text", "label": "To"}, - "toilets/disposal": {"key": "toilets:disposal", "type": "combo", "label": "Disposal", "strings": {"options": {"flush": "Flush", "pitlatrine": "Pit/Latrine", "chemical": "Chemical", "bucket": "Bucket"}}}, + "toilets/disposal": {"key": "toilets:disposal", "type": "combo", "label": "Disposal", "strings": {"options": {"flush": "Flush", "pitlatrine": "Pit Latrine", "chemical": "Chemical", "bucket": "Bucket"}}}, + "toilets/handwashing": {"key": "toilets:handwashing", "type": "check", "label": "Handwashing"}, + "toilets/position": {"key": "toilets:position", "type": "semiCombo", "label": "Positions"}, "toll": {"key": "toll", "type": "check", "label": "Toll"}, "tomb": {"key": "tomb", "type": "typeCombo", "label": "Type"}, "tourism": {"key": "tourism", "type": "typeCombo", "label": "Type"}, diff --git a/data/presets/fields/toilets/disposal.json b/data/presets/fields/toilets/disposal.json index 9658c7e6c..3e42ebec8 100644 --- a/data/presets/fields/toilets/disposal.json +++ b/data/presets/fields/toilets/disposal.json @@ -5,7 +5,7 @@ "strings": { "options": { "flush": "Flush", - "pitlatrine": "Pit/Latrine", + "pitlatrine": "Pit Latrine", "chemical": "Chemical", "bucket": "Bucket" } diff --git a/data/presets/fields/toilets/handwashing.json b/data/presets/fields/toilets/handwashing.json new file mode 100644 index 000000000..ce776f9e3 --- /dev/null +++ b/data/presets/fields/toilets/handwashing.json @@ -0,0 +1,5 @@ +{ + "key": "toilets:handwashing", + "type": "check", + "label": "Handwashing" +} diff --git a/data/presets/fields/toilets/position.json b/data/presets/fields/toilets/position.json new file mode 100644 index 000000000..7d56d21d7 --- /dev/null +++ b/data/presets/fields/toilets/position.json @@ -0,0 +1,5 @@ +{ + "key": "toilets:position", + "type": "semiCombo", + "label": "Positions" +} diff --git a/data/presets/presets.json b/data/presets/presets.json index abce48217..93b09449b 100644 --- a/data/presets/presets.json +++ b/data/presets/presets.json @@ -198,7 +198,9 @@ "amenity/telephone": {"icon": "maki-telephone", "fields": ["operator", "phone", "fee", "payment_multi", "booth"], "moreFields": ["covered", "indoor", "lit", "wheelchair"], "geometry": ["point", "vertex"], "tags": {"amenity": "telephone"}, "terms": ["phone"], "name": "Telephone"}, "amenity/theatre": {"icon": "maki-theatre", "fields": ["name", "operator", "address", "building_area"], "moreFields": ["air_conditioning", "internet_access", "internet_access/fee", "internet_access/ssid", "payment_multi", "website", "phone", "email", "fax", "wheelchair"], "geometry": ["point", "area"], "terms": ["theatre", "performance", "play", "musical"], "tags": {"amenity": "theatre"}, "name": "Theater"}, "amenity/theatre/type/amphi": {"icon": "maki-theatre", "fields": ["name", "operator", "address", "lit"], "geometry": ["point", "area"], "terms": ["open air", "outdoor", "greek", "ampi"], "tags": {"amenity": "theatre", "theatre:type": "amphi"}, "name": "Amphitheatre"}, - "amenity/toilets": {"icon": "maki-toilet", "fields": ["toilets/disposal", "building_area", "access_simple", "gender", "diaper", "wheelchair"], "moreFields": ["fee", "opening_hours", "operator", "payment_multi"], "geometry": ["point", "vertex", "area"], "terms": ["bathroom", "restroom", "outhouse", "privy", "head", "lavatory", "latrine", "water closet", "WC", "W.C."], "tags": {"amenity": "toilets"}, "name": "Toilets"}, + "amenity/toilets": {"icon": "maki-toilet", "fields": ["toilets/disposal", "access_simple", "gender", "toilets/handwashing", "diaper", "wheelchair", "building_area"], "moreFields": ["fee", "opening_hours", "operator", "payment_multi", "toilets/position"], "geometry": ["point", "vertex", "area"], "terms": ["bathroom", "restroom", "outhouse", "privy", "head", "lavatory", "latrine", "water closet", "WC", "W.C."], "tags": {"amenity": "toilets"}, "name": "Toilets"}, + "amenity/toilets/disposal/flush": {"icon": "fas-toilet", "fields": ["toilets/disposal", "{amenity/toilets}"], "moreFields": ["{amenity/toilets}"], "geometry": ["point", "vertex", "area"], "terms": ["bathroom", "head", "lavatory", "privy", "restroom", "water closet", "WC", "W.C."], "tags": {"amenity": "toilets", "toilets:disposal": "flush"}, "name": "Flush Toilets"}, + "amenity/toilets/disposal/pitlatrine": {"icon": "tnp-2009541", "fields": ["toilets/disposal", "{amenity/toilets}"], "moreFields": ["{amenity/toilets}"], "geometry": ["point", "vertex", "area"], "terms": ["head", "lavatory", "long drop", "outhouse", "pit toilet", "privy"], "tags": {"amenity": "toilets", "toilets:disposal": "pitlatrine"}, "name": "Pit Latrine"}, "amenity/townhall": {"icon": "maki-town-hall", "fields": ["name", "operator", "address", "building_area"], "moreFields": ["website", "phone", "email", "fax", "wheelchair"], "geometry": ["point", "area"], "terms": ["village", "city", "government", "courthouse", "municipal"], "tags": {"amenity": "townhall"}, "name": "Town Hall"}, "amenity/toy_library": {"icon": "fas-chess-knight", "fields": ["operator", "address", "building_area", "opening_hours"], "moreFields": ["website", "wheelchair"], "geometry": ["point", "area"], "terms": ["game", "toy"], "tags": {"amenity": "toy_library"}, "name": "Toy Library"}, "amenity/university": {"icon": "maki-college", "fields": ["{amenity/college}"], "moreFields": ["{amenity/college}"], "geometry": ["point", "area"], "terms": ["college", "graduate school", "PhD program", "master's degree program"], "tags": {"amenity": "university"}, "name": "University Grounds"}, diff --git a/data/presets/presets/amenity/toilets.json b/data/presets/presets/amenity/toilets.json index 7ec25aa0c..cffb0108e 100644 --- a/data/presets/presets/amenity/toilets.json +++ b/data/presets/presets/amenity/toilets.json @@ -2,17 +2,19 @@ "icon": "maki-toilet", "fields": [ "toilets/disposal", - "building_area", "access_simple", "gender", + "toilets/handwashing", "diaper", - "wheelchair" + "wheelchair", + "building_area" ], "moreFields": [ "fee", "opening_hours", "operator", - "payment_multi" + "payment_multi", + "toilets/position" ], "geometry": [ "point", diff --git a/data/presets/presets/amenity/toilets/disposal/flush.json b/data/presets/presets/amenity/toilets/disposal/flush.json new file mode 100644 index 000000000..9f04d59bb --- /dev/null +++ b/data/presets/presets/amenity/toilets/disposal/flush.json @@ -0,0 +1,30 @@ +{ + "icon": "fas-toilet", + "fields": [ + "toilets/disposal", + "{amenity/toilets}" + ], + "moreFields": [ + "{amenity/toilets}" + ], + "geometry": [ + "point", + "vertex", + "area" + ], + "terms": [ + "bathroom", + "head", + "lavatory", + "privy", + "restroom", + "water closet", + "WC", + "W.C." + ], + "tags": { + "amenity": "toilets", + "toilets:disposal": "flush" + }, + "name": "Flush Toilets" +} diff --git a/data/presets/presets/amenity/toilets/disposal/pitlatrine.json b/data/presets/presets/amenity/toilets/disposal/pitlatrine.json new file mode 100644 index 000000000..d56169eed --- /dev/null +++ b/data/presets/presets/amenity/toilets/disposal/pitlatrine.json @@ -0,0 +1,28 @@ +{ + "icon": "tnp-2009541", + "fields": [ + "toilets/disposal", + "{amenity/toilets}" + ], + "moreFields": [ + "{amenity/toilets}" + ], + "geometry": [ + "point", + "vertex", + "area" + ], + "terms": [ + "head", + "lavatory", + "long drop", + "outhouse", + "pit toilet", + "privy" + ], + "tags": { + "amenity": "toilets", + "toilets:disposal": "pitlatrine" + }, + "name": "Pit Latrine" +} diff --git a/data/taginfo.json b/data/taginfo.json index 4530f718e..8ee7015f7 100644 --- a/data/taginfo.json +++ b/data/taginfo.json @@ -196,6 +196,8 @@ {"key": "amenity", "value": "theatre", "description": "🄿 Theater", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/theatre-15.svg?sanitize=true"}, {"key": "theatre:type", "value": "amphi", "description": "🄿 Amphitheatre", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/theatre-15.svg?sanitize=true"}, {"key": "amenity", "value": "toilets", "description": "🄿 Toilets", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/toilet-15.svg?sanitize=true"}, + {"key": "toilets:disposal", "value": "flush", "description": "🄿 Flush Toilets, 🄵 Disposal", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-toilet.svg?sanitize=true"}, + {"key": "toilets:disposal", "value": "pitlatrine", "description": "🄿 Pit Latrine, 🄵 Disposal", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/the-noun-project/2009541.svg?sanitize=true"}, {"key": "amenity", "value": "townhall", "description": "🄿 Town Hall", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/town-hall-15.svg?sanitize=true"}, {"key": "amenity", "value": "toy_library", "description": "🄿 Toy Library", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-chess-knight.svg?sanitize=true"}, {"key": "amenity", "value": "university", "description": "🄿 University Grounds", "object_types": ["node", "area"], "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/college-15.svg?sanitize=true"}, @@ -1613,10 +1615,10 @@ {"key": "target", "description": "🄵 Target"}, {"key": "tidal", "description": "🄵 Tidal"}, {"key": "to", "description": "🄵 To"}, - {"key": "toilets:disposal", "value": "flush", "description": "🄵 Disposal"}, - {"key": "toilets:disposal", "value": "pitlatrine", "description": "🄵 Disposal"}, {"key": "toilets:disposal", "value": "chemical", "description": "🄵 Disposal"}, {"key": "toilets:disposal", "value": "bucket", "description": "🄵 Disposal"}, + {"key": "toilets:handwashing", "description": "🄵 Handwashing"}, + {"key": "toilets:position", "description": "🄵 Positions"}, {"key": "toll", "description": "🄵 Toll"}, {"key": "tomb", "description": "🄵 Type"}, {"key": "tower:construction", "description": "🄵 Construction"}, @@ -1812,6 +1814,8 @@ {"key": "sloped_curb", "value": "low", "description": "🄳 ➜ kerb=lowered"}, {"key": "sloped_curb", "value": "no", "description": "🄳 ➜ kerb=raised"}, {"key": "sloped_curb", "value": "yes", "description": "🄳 ➜ kerb=lowered"}, + {"key": "toilets:disposal", "value": "longdrop", "description": "🄳 ➜ toilets:disposal=pitlatrine"}, + {"key": "toilets:disposal", "value": "pit_latrine", "description": "🄳 ➜ toilets:disposal=pitlatrine"}, {"key": "tourism", "value": "bed_and_breakfast", "description": "🄳 ➜ tourism=guest_house"}, {"key": "type", "value": "broad_leaved", "description": "🄳 ➜ leaf_type=broadleaved"}, {"key": "type", "value": "conifer", "description": "🄳 ➜ leaf_type=needleleaved"}, diff --git a/dist/locales/en.json b/dist/locales/en.json index e96c51483..158a31b2a 100644 --- a/dist/locales/en.json +++ b/dist/locales/en.json @@ -3859,11 +3859,17 @@ "label": "Disposal", "options": { "flush": "Flush", - "pitlatrine": "Pit/Latrine", + "pitlatrine": "Pit Latrine", "chemical": "Chemical", "bucket": "Bucket" } }, + "toilets/handwashing": { + "label": "Handwashing" + }, + "toilets/position": { + "label": "Positions" + }, "toll": { "label": "Toll" }, @@ -4858,6 +4864,14 @@ "name": "Toilets", "terms": "bathroom,restroom,outhouse,privy,head,lavatory,latrine,water closet,WC,W.C." }, + "amenity/toilets/disposal/flush": { + "name": "Flush Toilets", + "terms": "bathroom,head,lavatory,privy,restroom,water closet,WC,W.C." + }, + "amenity/toilets/disposal/pitlatrine": { + "name": "Pit Latrine", + "terms": "head,lavatory,long drop,outhouse,pit toilet,privy" + }, "amenity/townhall": { "name": "Town Hall", "terms": "village,city,government,courthouse,municipal" diff --git a/package.json b/package.json index 4eda34080..f79a61664 100644 --- a/package.json +++ b/package.json @@ -54,10 +54,10 @@ "wmf-sitematrix": "0.1.4" }, "devDependencies": { - "@fortawesome/fontawesome-svg-core": "~1.2.16", - "@fortawesome/free-brands-svg-icons": "~5.8.0", - "@fortawesome/free-regular-svg-icons": "~5.8.0", - "@fortawesome/free-solid-svg-icons": "~5.8.0", + "@fortawesome/fontawesome-svg-core": "^1.2.17", + "@fortawesome/free-brands-svg-icons": "^5.8.1", + "@fortawesome/free-regular-svg-icons": "^5.8.1", + "@fortawesome/free-solid-svg-icons": "^5.8.1", "@mapbox/maki": "^6.0.0", "chai": "^4.1.0", "colors": "^1.1.2", @@ -65,17 +65,17 @@ "d3": "4.13.0", "ecstatic": "^3.0.0", "editor-layer-index": "github:osmlab/editor-layer-index#gh-pages", - "eslint": "^5.15.3", + "eslint": "^5.16.0", "gaze": "^1.1.1", "glob": "^7.1.0", "happen": "^0.3.1", - "js-yaml": "^3.9.0", + "js-yaml": "^3.13.1", "json-stringify-pretty-compact": "^1.1.0", "jsonschema": "^1.1.0", "mapillary-js": "2.18.0", - "mapillary_sprite_source": "^1.7.0", + "mapillary_sprite_source": "^1.8.0", "minimist": "^1.2.0", - "mocha": "^6.0.0", + "mocha": "^6.1.3", "mocha-phantomjs-core": "^2.1.0", "name-suggestion-index": "2.0.1", "npm-run-all": "^4.0.0", @@ -83,11 +83,11 @@ "phantomjs-prebuilt": "~2.1.11", "request": "^2.88.0", "rollup": "~1.9.0", - "rollup-plugin-commonjs": "^9.0.0", + "rollup-plugin-commonjs": "^9.3.4", "rollup-plugin-includepaths": "~0.2.3", "rollup-plugin-json": "^4.0.0", - "rollup-plugin-node-resolve": "^4.0.0", - "rollup-plugin-visualizer": "^1.1.0", + "rollup-plugin-node-resolve": "^4.2.3", + "rollup-plugin-visualizer": "^1.1.1", "shelljs": "^0.8.0", "shx": "^0.3.0", "sinon": "7.3.1", @@ -95,7 +95,7 @@ "smash": "0.0", "svg-sprite": "1.5.0", "temaki": "1.2.0", - "uglify-js": "^3.4.10" + "uglify-js": "^3.5.4" }, "greenkeeper": { "label": "chore-greenkeeper", diff --git a/svg/fontawesome/fas-toilet.svg b/svg/fontawesome/fas-toilet.svg new file mode 100644 index 000000000..e690fcb94 --- /dev/null +++ b/svg/fontawesome/fas-toilet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svg/the-noun-project/2009541.svg b/svg/the-noun-project/2009541.svg new file mode 100644 index 000000000..57fe651ad --- /dev/null +++ b/svg/the-noun-project/2009541.svg @@ -0,0 +1 @@ +Asset 490 \ No newline at end of file