diff --git a/build_data.js b/build_data.js index 512c497c2..7d80cac3a 100644 --- a/build_data.js +++ b/build_data.js @@ -533,7 +533,12 @@ function writeFaIcons(faIcons) { var prefix = key.substring(0, 3); // `fas`, `far`, `fab` var name = key.substring(4); var def = fontawesome.findIconDefinition({ prefix: prefix, iconName: name }); - writeFileProm('svg/fontawesome/' + key + '.svg', fontawesome.icon(def).html); + try { + writeFileProm('svg/fontawesome/' + key + '.svg', fontawesome.icon(def).html); + } catch (error) { + console.error('Error: No FontAwesome icon for ' + key); + throw(error); + } } } diff --git a/data/presets.yaml b/data/presets.yaml index 6a033d252..d35eede43 100644 --- a/data/presets.yaml +++ b/data/presets.yaml @@ -5254,6 +5254,11 @@ en: name: Downhill Piste/Ski Run # 'terms: ski,alpine,snowboard,downhill,piste' terms: '' + piste/downhill/halfpipe: + # 'piste:type=downhill, man_made=piste:halfpipe' + name: Halfpipe + # 'terms: ski,alpine,halfpipe,half pipe,snowboard,downhill,piste' + terms: '' piste/hike: # 'piste:type=hike' name: Snowshoeing or Winter Hiking Trail diff --git a/data/presets/presets.json b/data/presets/presets.json index 166265ca9..5e198c0a8 100644 --- a/data/presets/presets.json +++ b/data/presets/presets.json @@ -549,7 +549,7 @@ "leisure/golf_course": {"icon": "maki-golf", "fields": ["name", "operator", "address", "opening_hours"], "geometry": ["point", "area"], "terms": ["links"], "tags": {"leisure": "golf_course"}, "name": "Golf Course"}, "leisure/hackerspace": {"icon": "maki-commercial", "fields": ["name", "address", "building_area", "opening_hours", "website"], "geometry": ["point", "area"], "terms": ["makerspace", "hackspace", "hacklab"], "tags": {"leisure": "hackerspace"}, "name": "Hackerspace"}, "leisure/horse_riding": {"icon": "maki-horse-riding", "fields": ["name", "access_simple", "operator", "address", "building"], "geometry": ["point", "area"], "terms": ["equestrian", "stable"], "tags": {"leisure": "horse_riding"}, "name": "Horseback Riding Facility"}, - "leisure/ice_rink": {"icon": "maki-pitch", "fields": ["name", "seasonal", "sport_ice", "operator", "address", "building", "opening_hours"], "geometry": ["point", "area"], "terms": ["hockey", "skating", "curling"], "tags": {"leisure": "ice_rink"}, "name": "Ice Rink"}, + "leisure/ice_rink": {"icon": "fas-skating", "fields": ["name", "seasonal", "sport_ice", "operator", "address", "building", "opening_hours"], "geometry": ["point", "area"], "terms": ["hockey", "skating", "curling"], "tags": {"leisure": "ice_rink"}, "name": "Ice Rink"}, "leisure/marina": {"icon": "maki-harbor", "fields": ["name", "operator", "address", "capacity", "fee", "sanitary_dump_station", "power_supply", "internet_access", "internet_access/fee"], "moreFields": ["internet_access/ssid"], "geometry": ["point", "vertex", "area"], "terms": ["boat"], "tags": {"leisure": "marina"}, "name": "Marina"}, "leisure/miniature_golf": {"icon": "maki-golf", "fields": ["name", "operator", "address", "opening_hours"], "geometry": ["point", "area"], "terms": ["crazy golf", "mini golf", "putt-putt"], "tags": {"leisure": "miniature_golf"}, "name": "Miniature Golf"}, "leisure/nature_reserve": {"icon": "maki-park", "geometry": ["point", "area"], "fields": ["name"], "tags": {"leisure": "nature_reserve"}, "terms": ["protected", "wildlife"], "name": "Nature Reserve"}, @@ -704,14 +704,15 @@ "office/telecommunication": {"icon": "maki-telephone", "fields": ["name", "address", "building_area", "opening_hours"], "geometry": ["point", "area"], "tags": {"office": "telecommunication"}, "terms": ["communication", "internet", "phone", "voice"], "name": "Telecom Office"}, "office/therapist": {"icon": "maki-suitcase", "fields": ["name", "address", "building_area", "opening_hours"], "geometry": ["point", "area"], "tags": {"office": "therapist"}, "terms": ["therapy"], "name": "Therapist Office"}, "office/water_utility": {"icon": "maki-suitcase", "fields": ["name", "address", "building_area", "opening_hours", "operator"], "geometry": ["point", "area"], "tags": {"office": "water_utility"}, "terms": ["water board", "utility"], "name": "Water Utility Office"}, - "piste/downhill": {"icon": "maki-skiing", "fields": ["name", "piste/type", "piste/difficulty_downhill", "piste/grooming_downhill", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "alpine", "snowboard", "downhill", "piste"], "tags": {"piste:type": "downhill"}, "name": "Downhill Piste/Ski Run"}, - "piste/hike": {"icon": "fas-snowflake", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming_hike", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["hike", "winter hiking", "snowshoe", "snowshoeing", "piste", "ski"], "tags": {"piste:type": "hike"}, "name": "Snowshoeing or Winter Hiking Trail"}, - "piste/ice_skate": {"icon": "fas-snowflake", "fields": ["name", "piste/type", "sport_ice", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ice", "skating", "ski", "piste"], "tags": {"piste:type": "ice_skate"}, "name": "Ice Skating Piste"}, - "piste/nordic": {"icon": "maki-skiing", "fields": ["name", "piste/type", "piste/difficulty_nordic", "piste/grooming_nordic", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "nordic", "crosscountry", "skating", "piste"], "tags": {"piste:type": "nordic"}, "name": "Nordic or Crosscountry Piste/Ski Trail"}, - "piste/piste": {"icon": "maki-skiing", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "nordic", "crosscountry", "downhill", "alpine", "snowboard", "skitour", "ski touring", "sled", "luge", "sleigh", "sledge", "ski-joring", "husky", "horse", "winter hiking", "snowshoe", "snowshoeing", "ice", "skating"], "tags": {"piste:type": "*"}, "name": "Winter Sport Trails"}, - "piste/skitour": {"icon": "maki-skiing", "fields": ["name", "piste/type", "piste/difficulty_skitour", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "skitour", "crosscountry", "ski touring", "piste"], "tags": {"piste:type": "skitour"}, "name": "Ski Touring Trail"}, + "piste/downhill": {"icon": "fas-skiing", "fields": ["name", "piste/type", "piste/difficulty_downhill", "piste/grooming_downhill", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "alpine", "snowboard", "downhill", "piste"], "tags": {"piste:type": "downhill"}, "name": "Downhill Piste/Ski Run"}, + "piste/downhill/halfpipe": {"icon": "fas-snowboarding", "fields": ["name", "piste/type", "piste/difficulty_downhill", "piste/grooming_downhill", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "alpine", "halfpipe", "half pipe", "snowboard", "downhill", "piste"], "tags": {"piste:type": "downhill", "man_made": "piste:halfpipe"}, "name": "Halfpipe"}, + "piste/hike": {"icon": "fas-skating", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming_hike", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["hike", "winter hiking", "snowshoe", "snowshoeing", "piste", "ski"], "tags": {"piste:type": "hike"}, "name": "Snowshoeing or Winter Hiking Trail"}, + "piste/ice_skate": {"icon": "fas-skating", "fields": ["name", "piste/type", "sport_ice", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ice", "skating", "ski", "piste"], "tags": {"piste:type": "ice_skate"}, "name": "Ice Skating Piste"}, + "piste/nordic": {"icon": "fas-skiing-nordic", "fields": ["name", "piste/type", "piste/difficulty_nordic", "piste/grooming_nordic", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "nordic", "crosscountry", "skating", "piste"], "tags": {"piste:type": "nordic"}, "name": "Nordic or Crosscountry Piste/Ski Trail"}, + "piste/piste": {"icon": "fas-skiing", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "nordic", "crosscountry", "downhill", "alpine", "snowboard", "skitour", "ski touring", "sled", "luge", "sleigh", "sledge", "ski-joring", "husky", "horse", "winter hiking", "snowshoe", "snowshoeing", "ice", "skating"], "tags": {"piste:type": "*"}, "name": "Winter Sport Trails"}, + "piste/skitour": {"icon": "fas-skiing-nordic", "fields": ["name", "piste/type", "piste/difficulty_skitour", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "skitour", "crosscountry", "ski touring", "piste"], "tags": {"piste:type": "skitour"}, "name": "Ski Touring Trail"}, "piste/sled": {"icon": "fas-snowflake", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "sled", "luge", "sleigh", "sledge", "piste"], "tags": {"piste:type": "sled"}, "name": "Sled Piste"}, - "piste/sleigh": {"icon": "fas-snowflake", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "piste", "sled", "luge", "sleigh", "sledge", "ski-joring", "husky", "horse"], "tags": {"piste:type": "sleigh"}, "name": "Sleigh Piste"}, + "piste/sleigh": {"icon": "fas-sleigh", "fields": ["name", "piste/type", "piste/difficulty", "piste/grooming", "oneway", "lit"], "geometry": ["line", "area"], "terms": ["ski", "piste", "sled", "luge", "sleigh", "sledge", "ski-joring", "husky", "horse"], "tags": {"piste:type": "sleigh"}, "name": "Sleigh Piste"}, "place/farm": {"icon": "maki-farm", "geometry": ["point", "area"], "fields": ["name"], "tags": {"place": "farm"}, "name": "Farm", "searchable": false}, "place/city_block": {"icon": "maki-triangle-stroked", "fields": ["name"], "geometry": ["point", "area"], "tags": {"place": "city_block"}, "name": "City Block"}, "place/city": {"icon": "maki-city", "fields": ["name", "population"], "geometry": ["point", "area"], "tags": {"place": "city"}, "name": "City"}, diff --git a/data/presets/presets/leisure/ice_rink.json b/data/presets/presets/leisure/ice_rink.json index 84a715e64..567dd8ec0 100644 --- a/data/presets/presets/leisure/ice_rink.json +++ b/data/presets/presets/leisure/ice_rink.json @@ -1,5 +1,5 @@ { - "icon": "maki-pitch", + "icon": "fas-skating", "fields": [ "name", "seasonal", diff --git a/data/presets/presets/piste/downhill.json b/data/presets/presets/piste/downhill.json index c8e453def..454724ee5 100644 --- a/data/presets/presets/piste/downhill.json +++ b/data/presets/presets/piste/downhill.json @@ -1,5 +1,5 @@ { - "icon": "maki-skiing", + "icon": "fas-skiing", "fields": [ "name", "piste/type", diff --git a/data/presets/presets/piste/downhill/halfpipe.json b/data/presets/presets/piste/downhill/halfpipe.json new file mode 100644 index 000000000..da347d44d --- /dev/null +++ b/data/presets/presets/piste/downhill/halfpipe.json @@ -0,0 +1,29 @@ +{ + "icon": "fas-snowboarding", + "fields": [ + "name", + "piste/type", + "piste/difficulty_downhill", + "piste/grooming_downhill", + "oneway", + "lit" + ], + "geometry": [ + "line", + "area" + ], + "terms": [ + "ski", + "alpine", + "halfpipe", + "half pipe", + "snowboard", + "downhill", + "piste" + ], + "tags": { + "piste:type": "downhill", + "man_made": "piste:halfpipe" + }, + "name": "Halfpipe" +} diff --git a/data/presets/presets/piste/hike.json b/data/presets/presets/piste/hike.json index 79aaa6183..0801dec6f 100644 --- a/data/presets/presets/piste/hike.json +++ b/data/presets/presets/piste/hike.json @@ -1,5 +1,5 @@ { - "icon": "fas-snowflake", + "icon": "fas-skating", "fields": [ "name", "piste/type", diff --git a/data/presets/presets/piste/ice_skate.json b/data/presets/presets/piste/ice_skate.json index a64e4854c..c5f8650d7 100644 --- a/data/presets/presets/piste/ice_skate.json +++ b/data/presets/presets/piste/ice_skate.json @@ -1,5 +1,5 @@ { - "icon": "fas-snowflake", + "icon": "fas-skating", "fields": [ "name", "piste/type", diff --git a/data/presets/presets/piste/nordic.json b/data/presets/presets/piste/nordic.json index 99d4d17f2..5774c79c3 100644 --- a/data/presets/presets/piste/nordic.json +++ b/data/presets/presets/piste/nordic.json @@ -1,5 +1,5 @@ { - "icon": "maki-skiing", + "icon": "fas-skiing-nordic", "fields": [ "name", "piste/type", diff --git a/data/presets/presets/piste/piste.json b/data/presets/presets/piste/piste.json index c6c38f060..72b40659d 100644 --- a/data/presets/presets/piste/piste.json +++ b/data/presets/presets/piste/piste.json @@ -1,5 +1,5 @@ { - "icon": "maki-skiing", + "icon": "fas-skiing", "fields": [ "name", "piste/type", diff --git a/data/presets/presets/piste/skitour.json b/data/presets/presets/piste/skitour.json index 831b84fe9..aaaf5c7b4 100644 --- a/data/presets/presets/piste/skitour.json +++ b/data/presets/presets/piste/skitour.json @@ -1,5 +1,5 @@ { - "icon": "maki-skiing", + "icon": "fas-skiing-nordic", "fields": [ "name", "piste/type", diff --git a/data/presets/presets/piste/sleigh.json b/data/presets/presets/piste/sleigh.json index dc7c7cd28..061b4e412 100644 --- a/data/presets/presets/piste/sleigh.json +++ b/data/presets/presets/piste/sleigh.json @@ -1,5 +1,5 @@ { - "icon": "fas-snowflake", + "icon": "fas-sleigh", "fields": [ "name", "piste/type", diff --git a/data/taginfo.json b/data/taginfo.json index 22e6bf284..bbdea1d71 100644 --- a/data/taginfo.json +++ b/data/taginfo.json @@ -3678,7 +3678,7 @@ "value": "ice_rink", "description": "🄿 Ice Rink", "object_types": ["node", "area"], - "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/pitch-15.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skating.svg?sanitize=true" }, { "key": "leisure", @@ -4717,41 +4717,48 @@ "value": "downhill", "description": "🄿 Downhill Piste/Ski Run, 🄵 Type", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/skiing-15.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skiing.svg?sanitize=true" + }, + { + "key": "man_made", + "value": "piste:halfpipe", + "description": "🄿 Halfpipe", + "object_types": ["way", "area"], + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-snowboarding.svg?sanitize=true" }, { "key": "piste:type", "value": "hike", "description": "🄿 Snowshoeing or Winter Hiking Trail, 🄵 Type", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-snowflake.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skating.svg?sanitize=true" }, { "key": "piste:type", "value": "ice_skate", "description": "🄿 Ice Skating Piste, 🄵 Type", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-snowflake.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skating.svg?sanitize=true" }, { "key": "piste:type", "value": "nordic", "description": "🄿 Nordic or Crosscountry Piste/Ski Trail, 🄵 Type", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/skiing-15.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skiing-nordic.svg?sanitize=true" }, { "key": "piste:type", "description": "🄿 Winter Sport Trails", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/skiing-15.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skiing.svg?sanitize=true" }, { "key": "piste:type", "value": "skitour", "description": "🄿 Ski Touring Trail, 🄵 Type", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/mapbox/maki/master/icons/skiing-15.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-skiing-nordic.svg?sanitize=true" }, { "key": "piste:type", @@ -4765,7 +4772,7 @@ "value": "sleigh", "description": "🄿 Sleigh Piste, 🄵 Type", "object_types": ["way", "area"], - "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-snowflake.svg?sanitize=true" + "icon_url": "https://raw.githubusercontent.com/openstreetmap/iD/master/svg/fontawesome/fas-sleigh.svg?sanitize=true" }, { "key": "place", diff --git a/dist/locales/en.json b/dist/locales/en.json index 193b3ff19..9bc2d64a7 100644 --- a/dist/locales/en.json +++ b/dist/locales/en.json @@ -6039,6 +6039,10 @@ "name": "Downhill Piste/Ski Run", "terms": "ski,alpine,snowboard,downhill,piste" }, + "piste/downhill/halfpipe": { + "name": "Halfpipe", + "terms": "ski,alpine,halfpipe,half pipe,snowboard,downhill,piste" + }, "piste/hike": { "name": "Snowshoeing or Winter Hiking Trail", "terms": "hike,winter hiking,snowshoe,snowshoeing,piste,ski" diff --git a/package.json b/package.json index 927a8033f..233276883 100644 --- a/package.json +++ b/package.json @@ -49,10 +49,10 @@ "wmf-sitematrix": "0.1.4" }, "devDependencies": { - "@fortawesome/fontawesome-svg-core": "~1.2.9", - "@fortawesome/free-brands-svg-icons": "~5.6.0", - "@fortawesome/free-regular-svg-icons": "~5.6.0", - "@fortawesome/free-solid-svg-icons": "~5.6.0", + "@fortawesome/fontawesome-svg-core": "~1.2.12", + "@fortawesome/free-brands-svg-icons": "~5.6.3", + "@fortawesome/free-regular-svg-icons": "~5.6.3", + "@fortawesome/free-solid-svg-icons": "~5.6.3", "@mapbox/maki": "^6.0.0", "chai": "^4.1.0", "colors": "^1.1.2", diff --git a/svg/fontawesome/fas-skating.svg b/svg/fontawesome/fas-skating.svg new file mode 100644 index 000000000..aa80f7c2f --- /dev/null +++ b/svg/fontawesome/fas-skating.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svg/fontawesome/fas-skiing-nordic.svg b/svg/fontawesome/fas-skiing-nordic.svg new file mode 100644 index 000000000..efe3a9d59 --- /dev/null +++ b/svg/fontawesome/fas-skiing-nordic.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svg/fontawesome/fas-skiing.svg b/svg/fontawesome/fas-skiing.svg new file mode 100644 index 000000000..75422fa8f --- /dev/null +++ b/svg/fontawesome/fas-skiing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svg/fontawesome/fas-sleigh.svg b/svg/fontawesome/fas-sleigh.svg new file mode 100644 index 000000000..91ffea4e7 --- /dev/null +++ b/svg/fontawesome/fas-sleigh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/svg/fontawesome/fas-snowboarding.svg b/svg/fontawesome/fas-snowboarding.svg new file mode 100644 index 000000000..721620e03 --- /dev/null +++ b/svg/fontawesome/fas-snowboarding.svg @@ -0,0 +1 @@ + \ No newline at end of file