Merge branch 'develop' into waste-theme

This commit is contained in:
Pieter Vander Vennet 2022-02-20 00:47:21 +01:00
commit 9b7a47136c
89 changed files with 2775 additions and 1151 deletions

View file

@ -246,41 +246,57 @@
{
"if": "cycle_barrier=single",
"then": {
"en": "Single, just two barriers with a space inbetween <img src='./assets/themes/cycle_infra/Cycle_barrier_single.png' style='width:8em'>",
"nl": "Enkelvoudig, slechts twee hekjes met ruimte ertussen <img src='./assets/themes/cycle_infra/Cycle_barrier_single.png' style='width:8em'>",
"de": "Einfach, nur zwei Barrieren mit einem Zwischenraum <img src='./assets/themes/cycle_infra/Cycle_barrier_single.png' style='width:8em'>",
"hu": "Egyszeres: csak két korlát, közöttük térköz <img src='./assets/themes/cycle_infra/Cycle_barrier_single.png' style='width:8em'>",
"fr": "Simple, deux barrières côte à côte <img src='./assets/themes/cycle_infra/Cycle_barrier_single.png' style='width:8em'>"
"en": "Single, just two barriers with a space inbetween",
"nl": "Enkelvoudig, slechts twee hekjes met ruimte ertussen",
"de": "Einfach, nur zwei Barrieren mit einem Zwischenraum",
"hu": "Egyszeres: csak két korlát, közöttük térköz",
"fr": "Simple, deux barrières côte à côte"
},
"icon": {
"path": "./assets/themes/cycle_infra/Cycle_barrier_single.png",
"class": "large"
}
},
{
"if": "cycle_barrier=double",
"then": {
"en": "Double, two barriers behind each other <img src='./assets/themes/cycle_infra/Cycle_barrier_double.svg' style='width:8em'>",
"nl": "Dubbel, twee hekjes achter elkaar <img src='./assets/themes/cycle_infra/Cycle_barrier_double.svg' style='width:8em'>",
"de": "Doppelt, zwei Barrieren hintereinander <img src='./assets/themes/cycle_infra/Cycle_barrier_double.svg' style='width:8em'>",
"hu": "Kétszeres: két, egymáshoz képest eltolt korlát egymás után <img src='./assets/themes/cycle_infra/Cycle_barrier_double.svg' style='width:8em'>",
"en": "Double, two barriers behind each other",
"nl": "Dubbel, twee hekjes achter elkaar",
"de": "Doppelt, zwei Barrieren hintereinander",
"hu": "Kétszeres: két, egymáshoz képest eltolt korlát egymás után",
"fr": "Double, deux barrières successives"
},
"icon": {
"path": "./assets/themes/cycle_infra/Cycle_barrier_double.svg",
"class": "large"
}
},
{
"if": "cycle_barrier=triple",
"then": {
"en": "Triple, three barriers behind each other <img src='./assets/themes/cycle_infra/Cycle_barrier_triple.png' style='width:8em'>",
"nl": "Drievoudig, drie hekjes achter elkaar <img src='./assets/themes/cycle_infra/Cycle_barrier_triple.png' style='width:8em'>",
"de": "Dreifach, drei Barrieren hintereinander <img src='./assets/themes/cycle_infra/Cycle_barrier_triple.png' style='width:8em'>",
"hu": "Háromszoros: három, egymáshoz képest eltolt korlát egymás után <img src='./assets/themes/cycle_infra/Cycle_barrier_triple.png' style='width:8em'>",
"fr": "Triple, trois barrières successives <img src='./assets/themes/cycle_infra/Cycle_barrier_triple.png' style='width:8em'>"
"en": "Triple, three barriers behind each other",
"nl": "Drievoudig, drie hekjes achter elkaar",
"de": "Dreifach, drei Barrieren hintereinander",
"hu": "Háromszoros: három, egymáshoz képest eltolt korlát egymás után",
"fr": "Triple, trois barrières successives"
},
"icon": {
"path": "./assets/themes/cycle_infra/Cycle_barrier_triple.png",
"class": "large"
}
},
{
"if": "cycle_barrier=squeeze",
"then": {
"en": "Squeeze gate, gap is smaller at top, than at the bottom <img src='./assets/themes/cycle_infra/Cycle_barrier_squeeze.png' style='width:8em'>",
"nl": "Knijppoort, ruimte is smaller aan de top, dan aan de bodem <img src='./assets/themes/cycle_infra/Cycle_barrier_squeeze.png' style='width:8em'>",
"de": "Eine Durchfahrtsbeschränkung, Durchfahrtsbreite ist oben kleiner als unten <img src='./assets/themes/cycle_infra/Cycle_barrier_squeeze.png' style='width:8em'>",
"hu": "Szűkítőkapu: a rés felül keskenyebb, mint alul <img src='./assets/themes/cycle_infra/Cycle_barrier_squeeze.png' style='width:8em'>",
"fr": "Poire, lespace en hauteur est plus faible quau sol <img src='./assets/themes/cycle_infra/Cycle_barrier_squeeze.png' style='width:8em'>"
"en": "Squeeze gate, gap is smaller at top, than at the bottom",
"nl": "Knijppoort, ruimte is smaller aan de top, dan aan de bodem",
"de": "Eine Durchfahrtsbeschränkung, Durchfahrtsbreite ist oben kleiner als unten",
"hu": "Szűkítőkapu: a rés felül keskenyebb, mint alul",
"fr": "Poire, lespace en hauteur est plus faible quau sol"
},
"icon": {
"path": "./assets/themes/cycle_infra/Cycle_barrier_squeeze.png",
"class": "large"
}
}
],

View file

@ -100,91 +100,119 @@
{
"if": "bicycle_parking=stands",
"then": {
"en": "Staple racks <img style='width: 25%' src='./assets/layers/bike_parking/staple.svg'>",
"nl": "Nietjes <img style='width: 25%'' src='./assets/layers/bike_parking/staple.svg'>",
"fr": "Arceaux <img style='width: 25%'' src='./assets/layers/bike_parking/staple.svg'>",
"gl": "De roda (Stands) <img style='width: 25%'' src='./assets/layers/bike_parking/staple.svg'>",
"de": "Fahrradbügel <img style='width: 25%'' src='./assets/layers/bike_parking/staple.svg'>",
"hu": "Korlát <img style='width: 25%' src='./assets/layers/bike_parking/staple.svg'>",
"it": "Archetti <img style='width: 25%' src='./assets/layers/bike_parking/staple.svg'>",
"zh_Hant": "單車架 <img style='width: 25%' src='./assets/layers/bike_parking/staple.svg'>"
"en": "Staple racks",
"nl": "Nietjes",
"fr": "Arceaux",
"gl": "De roda (Stands)",
"de": "Fahrradbügel",
"hu": "Korlát",
"it": "Archetti",
"zh_Hant": "單車架"
},
"icon": {
"path": "./assets/layers/bike_parking/staple.svg",
"class": "large"
}
},
{
"if": "bicycle_parking=wall_loops",
"then": {
"en": "Wheel rack/loops <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"nl": "Wielrek/lussen <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"fr": "Pinces-roues <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"gl": "Aros <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"de": "Metallgestänge <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"hu": "Kerékbefogó hurok <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"it": "Scolapiatti <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>",
"zh_Hant": "車輪架/圓圈 <img style='width: 25%'' src='./assets/layers/bike_parking/wall_loops.svg'>"
"en": "Wheel rack/loops",
"nl": "Wielrek/lussen",
"fr": "Pinces-roues",
"gl": "Aros",
"de": "Metallgestänge",
"hu": "Kerékbefogó hurok",
"it": "Scolapiatti",
"zh_Hant": "車輪架/圓圈"
},
"icon": {
"path": "./assets/layers/bike_parking/wall_loops.svg",
"class": "large"
}
},
{
"if": "bicycle_parking=handlebar_holder",
"then": {
"en": "Handlebar holder <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>",
"nl": "Stuurhouder <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>",
"fr": "Support guidon <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>",
"gl": "Cadeado para guiador <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>",
"de": "Halter für Fahrradlenker <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>",
"it": "Blocca manubrio <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>",
"zh_Hant": "車把架 <img style='width: 25%'' src='./assets/layers/bike_parking/handlebar_holder.svg'>"
"en": "Handlebar holder",
"nl": "Stuurhouder",
"fr": "Support guidon",
"gl": "Cadeado para guiador",
"de": "Halter für Fahrradlenker",
"it": "Blocca manubrio",
"zh_Hant": "車把架"
},
"icon": {
"path": "./assets/layers/bike_parking/handlebar_holder.svg",
"class": "large"
}
},
{
"if": "bicycle_parking=rack",
"then": {
"en": "Rack <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"nl": "Rek <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"fr": "Râtelier <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"gl": "Cremalleira <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"de": "Gestell <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"zh_Hant": "車架<img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"it": "Rastrelliera <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>",
"ru": "Стойка <img style='width: 25%'' src='./assets/layers/bike_parking/rack.svg'>"
"en": "Rack",
"nl": "Rek",
"fr": "Râtelier",
"gl": "Cremalleira",
"de": "Gestell",
"zh_Hant": "車架",
"it": "Rastrelliera",
"ru": "Стойка"
},
"icon": {
"path": "./assets/layers/bike_parking/rack.svg",
"class": "large"
}
},
{
"if": "bicycle_parking=two_tier",
"then": {
"en": "Two-tiered <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"nl": "Dubbel (twee verdiepingen) <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"fr": "Superposé <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"gl": "Dobre cremalleira <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"de": "Zweistufig <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"hu": "Kétszintű <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"zh_Hant": "兩層<img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"it": "A due piani <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>",
"ru": "Двухуровневая <img style='width: 25%'' src='./assets/layers/bike_parking/two_tier.svg'>"
"en": "Two-tiered",
"nl": "Dubbel (twee verdiepingen)",
"fr": "Superposé",
"gl": "Dobre cremalleira",
"de": "Zweistufig",
"hu": "Kétszintű",
"zh_Hant": "兩層",
"it": "A due piani",
"ru": "Двухуровневая"
},
"icon": {
"path": "./assets/layers/bike_parking/two_tier.svg",
"class": "large"
}
},
{
"if": "bicycle_parking=shed",
"then": {
"en": "Shed <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"nl": "Schuur <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"fr": "Abri <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"gl": "Abeiro <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"de": "Schuppen <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"hu": "Fészer <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"zh_Hant": "車棚 <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"it": "Rimessa <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>",
"ru": "Навес <img style='width: 25%'' src='./assets/layers/bike_parking/shed.svg'>"
"en": "Shed",
"nl": "Schuur",
"fr": "Abri",
"gl": "Abeiro",
"de": "Schuppen",
"hu": "Fészer",
"zh_Hant": "車棚",
"it": "Rimessa",
"ru": "Навес"
},
"icon": {
"path": "./assets/layers/bike_parking/shed.svg",
"class": "large"
}
},
{
"if": "bicycle_parking=bollard",
"then": {
"en": "Bollard <img style='width: 25%'' src='./assets/layers/bike_parking/bollard.svg'>",
"nl": "Paal met ring <img style='width: 25%'' src='./assets/layers/bike_parking/bollard.svg'>",
"fr": "Potelet <img style='width: 25%'' src='./assets/layers/bike_parking/bollard.svg'>",
"it": "Colonnina <img style='width: 25%'' src='./assets/layers/bike_parking/bollard.svg'>",
"de": "Poller <img style='width: 25%'' src='./assets/layers/bike_parking/bollard.svg'>",
"zh_Hant": "柱子 <img style='width: 25%'' src='./assets/layers/bike_parking/bollard.svg'>"
"en": "Bollard",
"nl": "Paal met ring",
"fr": "Potelet",
"it": "Colonnina",
"de": "Poller",
"zh_Hant": "柱子"
},
"icon": {
"path": "./assets/layers/bike_parking/bollard.svg",
"class": "large"
}
},
{

View file

@ -84,6 +84,20 @@
"https://osoc.be/editions/2020/cyclofix"
]
},
{
"path": "repair_station_broken_pump.svg",
"license": "CC-BY-SA",
"authors": [
"Pieter Fiers",
"Thibault Declercq",
"Pierre Barban",
"Joost Schouppe",
"Pieter Vander Vennet"
],
"sources": [
"https://osoc.be/editions/2020/cyclofix"
]
},
{
"path": "repair_station_example.jpg",
"license": "CC-BY-SA 4.0",

File diff suppressed because it is too large Load diff

View file

@ -764,7 +764,7 @@
"operational_status=broken"
]
},
"then": "cross:#c22;"
"then": "close:#c22;"
},
{
"if": {

View file

@ -72,13 +72,17 @@ function run(file, protojson) {
for (let i = 0; i < entries.length; i++) {
const e = entries[i];
const txt = {
en: `<div class='flex'><img class='w-12 mx-4' src='./assets/layers/charging_station/${e.image}'/> <span>${e.description.get("en")}</span></div>`,
nl: `<div class='flex'><img class='w-12 mx-4' src='./assets/layers/charging_station/${e.image}'/> <span>${e.description.get("nl")}</span></div>`
en: e.description.get("en"),
nl: e.description.get("nl")
}
const json = {
if: `${e.key}=1`,
ifnot: `${e.key}=`,
then: txt,
icon:{
path:"./assets/layers/charging_station/" + e.image,
class:"medium"
}
}
if (e.countryWhiteList.length > 0 && e.countryBlackList.length > 0) {
@ -125,7 +129,11 @@ function run(file, protojson) {
and:Utils.NoEmpty( [`${e.key}~*`, `${e.key}!=1`, ...e.extraVisualisationCondition.split(";")])
},
then: txt,
hideInAnswer: true
hideInAnswer: true,
icon:{
path: `./assets/layers/charging_station/${e.image}`,
class:"medium"
}
}
overview_question_answers.push(no_ask_json)
@ -170,8 +178,12 @@ function run(file, protojson) {
return {
if: `socket:${e.key}:voltage=${voltage} V`,
then: {
en: `${descrWithImage_en} outputs ${voltage} volt`,
nl: `${descrWithImage_nl} heeft een spanning van ${voltage} volt`
en: `${e.description.get("en")} outputs ${voltage} volt`,
nl: `${e.description.get("nl")} heeft een spanning van ${voltage} volt`
},
icon: {
path: `./assets/layers/charging_station/${e.image}`,
class:"medium"
}
}
}),
@ -200,8 +212,12 @@ function run(file, protojson) {
return {
if: `socket:${e.key}:current=${current} A`,
then: {
en: `${descrWithImage_en} outputs at most ${current} A`,
nl: `${descrWithImage_nl} levert een stroom van maximaal ${current} A`
en: `${e.description.get("en")} outputs at most ${current} A`,
nl: `${e.description.get("nl")} levert een stroom van maximaal ${current} A`
},
icon: {
path: `./assets/layers/charging_station/${e.image}`,
class:"medium"
}
}
}),
@ -230,8 +246,12 @@ function run(file, protojson) {
return {
if: `socket:${e.key}:output=${output}`,
then: {
en: `${descrWithImage_en} outputs at most ${output}`,
nl: `${descrWithImage_nl} levert een vermogen van maximaal ${output}`
en: `${e.description.get("en")} outputs at most ${output} A`,
nl: `${e.description.get("nl")} levert een vermogen van maximaal ${output} A`
},
icon: {
path: `./assets/layers/charging_station/${e.image}`,
class:"medium"
}
}
}),

View file

@ -306,11 +306,15 @@
{
"if": "red_turn:right:bicycle=yes",
"then": {
"en": "A cyclist can turn right if the light is red <img src='./assets/layers/crossings/Belgian_road_sign_B22.svg' style='width: 3em'>",
"nl": "Een fietser mag wel rechtsaf slaan als het licht rood is <img src='./assets/layers/crossings/Belgian_road_sign_B22.svg' style='width: 3em'>",
"de": "Ein Radfahrer kann bei roter Ampel rechts abbiegen <img src='./assets/layers/crossings/Belgian_road_sign_B22.svg' style='width: 3em'>"
"en": "A cyclist can turn right if the light is red",
"nl": "Een fietser mag wel rechtsaf slaan als het licht rood is",
"de": "Ein Radfahrer kann bei roter Ampel rechts abbiegen"
},
"hideInAnswer": "_country!=be"
"hideInAnswer": "_country!=be",
"icon": {
"path": "./assets/layers/crossings/Belgian_road_sign_B22.svg",
"class": "medium"
}
},
{
"if": "red_turn:right:bicycle=yes",
@ -343,11 +347,15 @@
{
"if": "red_turn:straight:bicycle=yes",
"then": {
"en": "A cyclist can go straight on if the light is red <img src='./assets/layers/crossings/Belgian_road_sign_B23.svg' style='width: 3em'>",
"nl": "Een fietser mag wel rechtdoor gaan als het licht rood is <img src='./assets/layers/crossings/Belgian_road_sign_B23.svg' style='width: 3em'>",
"de": "Ein Radfahrer kann bei roter Ampel geradeaus fahren <img src='./assets/layers/crossings/Belgian_road_sign_B23.svg' style='width: 3em'>"
"en": "A cyclist can go straight on if the light is red",
"nl": "Een fietser mag wel rechtdoor gaan als het licht rood is",
"de": "Ein Radfahrer kann bei roter Ampel geradeaus fahren"
},
"hideInAnswer": "_country!=be"
"hideInAnswer": "_country!=be",
"icon": {
"path": "./assets/layers/crossings/Belgian_road_sign_B23.svg",
"class": "medium"
}
},
{
"if": "red_turn:straight:bicycle=yes",

View file

@ -805,50 +805,66 @@
{
"if": "cycleway:traffic_sign=BE:D7",
"then": {
"en": "Compulsory cycleway <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"nl": "Verplicht fietspad <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"de": "Vorgeschriebener Radweg <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"id": "Jalur sepeda wajib <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>"
"en": "Compulsory cycleway",
"nl": "Verplicht fietspad",
"de": "Vorgeschriebener Radweg",
"id": "Jalur sepeda wajib"
},
"hideInAnswer": "_country!=be"
"hideInAnswer": "_country!=be",
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D07.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign~BE:D7;.*",
"then": {
"en": "Compulsory cycleway (with supplementary sign)<br><img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'> ",
"nl": "Verplicht fietspad (met onderbord)<br><img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"de": "Vorgeschriebener Radweg (mit Zusatzschild)<br><img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'> ",
"id": "Jalur sepeda wajib (dengan tanda tambahan)<br><img src ='./aset/tema/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'> "
"en": "Compulsory cycleway (with supplementary sign)<br>",
"nl": "Verplicht fietspad (met onderbord)<br>",
"de": "Vorgeschriebener Radweg (mit Zusatzschild)<br>",
"id": "Jalur sepeda wajib (dengan tanda tambahan)<br>"
},
"hideInAnswer": true
"hideInAnswer": true,
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D07.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D9",
"then": {
"en": "Segregated foot/cycleway <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>",
"nl": "Afgescheiden voet-/fietspad <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>",
"de": "Getrennter Fuß-/Radweg <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>",
"id": "Jalur pejalan kaki/sepeda terpisah <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>"
"en": "Segregated foot/cycleway",
"nl": "Afgescheiden voet-/fietspad",
"de": "Getrennter Fuß-/Radweg",
"id": "Jalur pejalan kaki/sepeda terpisah"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:foot=designated",
"cycleway:segregated=yes"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D09.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D10",
"then": {
"en": "Unsegregated foot/cycleway <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>",
"nl": "Gedeeld voet-/fietspad <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>",
"de": "Gemeinsamer Fuß-/Radweg <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>",
"id": "Jalur pejalan kaki/sepeda tidak terpisah <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>"
"en": "Unsegregated foot/cycleway",
"nl": "Gedeeld voet-/fietspad",
"de": "Gemeinsamer Fuß-/Radweg",
"id": "Jalur pejalan kaki/sepeda tidak terpisah"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:foot=designated",
"cycleway:segregated=no"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D10.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=none",
@ -878,10 +894,10 @@
{
"if": "traffic_sign=BE:D7",
"then": {
"en": "Compulsory cycleway <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"nl": "Verplicht fietspad <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"de": "Vorgeschriebener Radweg <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"id": "Jalur sepeda wajib <img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>"
"en": "Compulsory cycleway",
"nl": "Verplicht fietspad",
"de": "Vorgeschriebener Radweg",
"id": "Jalur sepeda wajib"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
@ -889,23 +905,31 @@
"mofa=designated",
"moped=yes",
"speed_pedelec=yes"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D07.svg",
"class": "medium"
}
},
{
"if": "traffic_sign~BE:D7;.*",
"then": {
"en": "Compulsory cycleway (with supplementary sign)<br><img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'> ",
"nl": "Verplicht fietspad (met onderbord)<br><img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'>",
"de": "Vorgeschriebener Radweg (mit Zusatzschild)<br><img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 3em'> "
"en": "Compulsory cycleway (with supplementary sign)<br>",
"nl": "Verplicht fietspad (met onderbord)<br>",
"de": "Vorgeschriebener Radweg (mit Zusatzschild)<br>"
},
"hideInAnswer": true
"hideInAnswer": true,
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D07.svg",
"class": "medium"
}
},
{
"if": "traffic_sign=BE:D9",
"then": {
"en": "Segregated foot/cycleway <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>",
"nl": "Afgescheiden voet-/fietspad <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>",
"de": "Getrennter Fuß-/Radweg <img src='./assets/themes/cycle_infra/Belgian_road_sign_D09.svg' style='width: 3em'>"
"en": "Segregated foot/cycleway",
"nl": "Afgescheiden voet-/fietspad",
"de": "Getrennter Fuß-/Radweg"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
@ -915,14 +939,18 @@
"moped=no",
"speed_pedelec=no",
"segregated=yes"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D09.svg",
"class": "medium"
}
},
{
"if": "traffic_sign=BE:D10",
"then": {
"en": "Unsegregated foot/cycleway <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>",
"nl": "Gedeeld voet-/fietspad <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>",
"de": "Gemeinsamer Fuß-/Radweg <img src='./assets/themes/cycle_infra/Belgian_road_sign_D10.svg' style='width: 3em'>"
"en": "Unsegregated foot/cycleway",
"nl": "Gedeeld voet-/fietspad",
"de": "Gemeinsamer Fuß-/Radweg"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
@ -932,7 +960,11 @@
"moped=no",
"speed_pedelec=no",
"segregated=no"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_road_sign_D10.svg",
"class": "medium"
}
},
{
"if": "traffic_sign=none",
@ -961,70 +993,94 @@
{
"if": "cycleway:traffic_sign=BE:D7;BE:M6",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M6.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M6.svg' style='width: 3em'>"
"en": "Mopeds must use the cycleway",
"nl": "Bromfiets Klass B verplicht op het fietspad"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:moped=designated"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_traffic_sign_M6.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D7;BE:M13",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M13.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M13.svg' style='width: 3em'>"
"en": "Speedpedelecs must use the cycleway",
"nl": "Speedpedelec (Bromfiets klasse P) verplicht op het fietspad"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:speed_pedelec=designated"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_traffic_sign_M13.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D7;BE:M14",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M14.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M14.svg' style='width: 3em'>"
"en": "Mopeds and speedpedelecs must use the cycleway",
"nl": "Bromfiets klasse B en speedpedelec (Klasse P) verplicht op het fietspad"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:moped=designated",
"cycleway:speed_pedelec=designated"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_traffic_sign_M14.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D7;BE:M7",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M7.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M7.svg' style='width: 3em'>"
"en": "Mopeds are not allowed",
"nl": "Bromfiets klasse B <b>verboden</b>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:moped=no"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_traffic_sign_M7.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D7;BE:M15",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M15.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M15.svg' style='width: 3em'>"
"en": "Speedpedelecs are not allowed",
"nl": "Speedpedelec (bromfiets klasse P) <b>verboden</b>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:speed_pedelec=no"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_traffic_sign_M15.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign=BE:D7;BE:M16",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M16.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M16.svg' style='width: 3em'>"
"en": "Mopeds and speedpedelecs are not allowed",
"nl": "Bromfiets klasse B en speedpedelec (klasse P) <b>verboden</b>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"cycleway:moped=designated",
"cycleway:speed_pedelec=no"
]
],
"icon": {
"path": "./assets/themes/cycle_infra/Belgian_traffic_sign_M16.svg",
"class": "medium"
}
},
{
"if": "cycleway:traffic_sign:supplementary=none",
@ -1036,99 +1092,6 @@
}
]
},
{
"id": "cycleway-traffic-signs-D7-supplementary",
"question": {
"en": "Does the traffic sign D7 (<img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 1.5em'>) have a supplementary sign?",
"nl": "Heeft het verkeersbord D7 (<img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 1.5em'>) een onderbord?",
"de": "Hat das Verkehrszeichen D7 (<img src='./assets/themes/cycle_infra/Belgian_road_sign_D07.svg' style='width: 1.5em'>) ein Zusatzzeichen?"
},
"condition": {
"or": [
"traffic_sign=BE:D7",
"traffic_sign~BE:D7;.*"
]
},
"mappings": [
{
"if": "traffic_sign=BE:D7;BE:M6",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M6.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M6.svg' style='width: 3em'>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"moped=designated"
]
},
{
"if": "traffic_sign=BE:D7;BE:M13",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M13.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M13.svg' style='width: 3em'>",
"de": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M13.svg' style='width: 3em'>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"speed_pedelec=designated"
]
},
{
"if": "traffic_sign=BE:D7;BE:M14",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M14.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M14.svg' style='width: 3em'>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"moped=designated",
"speed_pedelec=designated"
]
},
{
"if": "traffic_sign=BE:D7;BE:M7",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M7.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M7.svg' style='width: 3em'>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"moped=no"
]
},
{
"if": ":traffic_sign=BE:D7;BE:M15",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M15.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M15.svg' style='width: 3em'>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"speed_pedelec=no"
]
},
{
"if": "traffic_sign=BE:D7;BE:M16",
"then": {
"en": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M16.svg' style='width: 3em'>",
"nl": "<img src='./assets/themes/cycle_infra/Belgian_traffic_sign_M16.svg' style='width: 3em'>"
},
"hideInAnswer": "_country!=be",
"addExtraTags": [
"moped=designated",
"speed_pedelec=no"
]
},
{
"if": "traffic_sign:supplementary=none",
"then": {
"en": "No supplementary traffic sign present",
"nl": "Geen onderbord aanwezig",
"de": "Kein zusätzliches Verkehrszeichen vorhanden"
}
}
]
},
{
"render": {
"en": "The buffer besides this cycleway is {cycleway:buffer} m",

View file

@ -32,16 +32,7 @@
"presets": [],
"mapRendering": [
{
"icon": {
"render": "direction_gradient:var(--catch-detail-color)",
"#": "For some weird reason, showing the icon in the layer control panel breaks the svg-gradient (because the svg gradient has a global color or smthng) - so we use a different icon without gradient",
"mappings": [
{
"if": "id=node/-1",
"then": "direction:var(--catch-detail-color)"
}
]
},
"icon": "direction_gradient:var(--catch-detail-color)",
"iconSize": "200,200,center",
"location": [
"point",

View file

@ -157,11 +157,15 @@
]
},
"then": {
"en": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_pillar.svg\" /> Pillar type.",
"ja": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_pillar.svg\" /> ピラー型。",
"fr": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_pillar.svg\" /> Pilier.",
"de": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_pillar.svg\" /> Säulenart.",
"it": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_pillar.svg\" /> Soprasuolo."
"en": "Pillar type.",
"ja": "ピラー型。",
"fr": "Pilier.",
"de": "Säulenart.",
"it": "Soprasuolo."
},
"icon": {
"path": "./assets/themes/hailhydrant/hydrant_pillar.svg",
"class": "small"
}
},
{
@ -171,11 +175,15 @@
]
},
"then": {
"en": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Pipe type.",
"ja": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> パイプ型。",
"fr": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Tuyau.",
"de": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Rohrtyp.",
"it": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Tubo."
"en": "Pipe type.",
"ja": "パイプ型。",
"fr": "Tuyau.",
"de": "Rohrtyp.",
"it": "Tubo."
},
"icon": {
"path": "./assets/themes/hailhydrant/hydrant_unknown.svg",
"class": "small"
}
},
{
@ -185,13 +193,17 @@
]
},
"then": {
"en": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Wall type.",
"id": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Jenis dinding.",
"ru": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Тип стены.",
"ja": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> 壁型。",
"fr": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Mural.",
"de": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> Wandtyp.",
"it": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_unknown.svg\" /> A muro."
"en": "Wall type.",
"id": "Jenis dinding.",
"ru": "Тип стены.",
"ja": "壁型。",
"fr": "Mural.",
"de": "Wandtyp.",
"it": "A muro."
},
"icon": {
"path": "./assets/themes/hailhydrant/hydrant_unknown.svg",
"class": "small"
}
},
{
@ -201,11 +213,15 @@
]
},
"then": {
"en": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_underground.svg\" /> Underground type.",
"ja": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_underground.svg\" />地下式。",
"fr": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_underground.svg\" /> Enterré.",
"de": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_underground.svg\" /> Untergrundtyp.",
"it": "<img style=\"width:15px\" src=\"./assets/themes/hailhydrant/hydrant_underground.svg\" /> Sottosuolo."
"en": "Underground type.",
"ja": "地下式。",
"fr": "Enterré.",
"de": "Untergrundtyp.",
"it": "Sottosuolo."
},
"icon": {
"path": "./assets/themes/hailhydrant/hydrant_underground.svg",
"class": "small"
}
}
]

View file

@ -71,7 +71,11 @@
{
"if": "highway=living_street",
"then": {
"nl:": "<div class='flex'><img src='./assets/layers/slow_roads/woonerf.svg' style='width: 150px; height: auto; margin-right: 0.5em;' /> <div> Dit is een woonerf: <ul><li>Voetgangers mogen hier de volledige breedte van de straat gebruiken</li><li>Gemotoriseerd verkeer mag maximaal <b>20km/h</b> rijden</li></ul></div></div>"
"nl:": "<div> Dit is een woonerf: <ul><li>Voetgangers mogen hier de volledige breedte van de straat gebruiken</li><li>Gemotoriseerd verkeer mag maximaal <b>20km/h</b> rijden</li></ul></div>"
},
"icon": {
"path": "./assets/layers/slow_roads/woonerf.svg",
"class": "medium"
}
},
{

View file

@ -77,7 +77,11 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/Natuurpunt.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door Natuurpunt"
"nl": "Dit gebied wordt beheerd door Natuurpunt"
},
"icon": {
"path": "./assets/themes/buurtnatuur/Natuurpunt.jpg",
"class": "small"
}
},
{
@ -87,9 +91,13 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/Natuurpunt.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door {operator}"
"nl": "Dit gebied wordt beheerd door {operator}"
},
"hideInAnswer": true
"hideInAnswer": true,
"icon": {
"path": "./assets/themes/buurtnatuur/Natuurpunt.jpg",
"class": "small"
}
}
],
"id": "Operator tag"

View file

@ -146,7 +146,11 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/Natuurpunt.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door Natuurpunt"
"nl": "Dit gebied wordt beheerd door Natuurpunt"
},
"icon": {
"path": "./assets/themes/buurtnatuur/Natuurpunt.jpg",
"class": "small"
}
},
{
@ -156,9 +160,13 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/Natuurpunt.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door {operator}"
"nl": "Dit gebied wordt beheerd door {operator}"
},
"hideInAnswer": true
"hideInAnswer": true,
"icon": {
"path": "./assets/themes/buurtnatuur/Natuurpunt.jpg",
"class": "small"
}
}
],
"id": "Operator tag"

View file

@ -485,6 +485,48 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"isShown",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"isShown",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -753,6 +795,48 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"title",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"title",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -1014,6 +1098,48 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"titleIcons",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"titleIcons",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -1291,6 +1417,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"icon",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"icon",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -1585,6 +1755,52 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"iconBadges",
"then",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"iconBadges",
"then",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -1852,6 +2068,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"iconSize",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"iconSize",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -2116,6 +2376,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"rotation",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"rotation",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -2380,6 +2684,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"label",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"label",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -2651,6 +2999,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"color",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"color",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -2918,6 +3310,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"width",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"width",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -3182,6 +3618,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"dashArray",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"dashArray",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -3446,6 +3926,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"lineCap",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"lineCap",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -3714,6 +4238,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"fill",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"fill",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -3978,6 +4546,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"fillColor",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"fillColor",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -4242,6 +4854,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"mapRendering",
"offset",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"mapRendering",
"offset",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -4625,6 +5281,48 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"tagRenderings",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"tagRenderings",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -4871,6 +5569,50 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"layers",
"tagRenderings",
"renderings",
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"layers",
"tagRenderings",
"renderings",
"mappings",
"icon",
"class"
],
"type": "string"
},
{
@ -5160,6 +5902,13 @@
],
"type": "boolean"
},
{
"path": [
"layers",
"syncSelection"
],
"type": "string"
},
{
"path": [
"layers",

View file

@ -138,6 +138,44 @@
"icon"
],
"typeHint": "icon",
"type": [
{
"type": "object",
"properties": {
"path": {
"description": "The path to the icon\nType: icon",
"type": "string"
},
"class": {
"description": "A hint to mapcomplete on how to render this icon within the mapping.\nThis is translated to 'mapping-icon-<classtype>', so defining your own in combination with a custom CSS is possible (but discouraged)",
"type": "string"
}
},
"required": [
"class",
"path"
]
},
{
"type": "string"
}
]
},
{
"path": [
"mappings",
"icon",
"path"
],
"typeHint": "icon",
"type": "string"
},
{
"path": [
"mappings",
"icon",
"class"
],
"type": "string"
},
{

View file

@ -45,7 +45,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 1.5,
"socialImage": "",
"layers": [
"bench",
"bench_at_pt",

View file

@ -19,7 +19,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 0.05,
"socialImage": "",
"layers": [
"bicycle_rental"
]

View file

@ -33,7 +33,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 1.5,
"socialImage": "",
"layers": [
"binocular"
]

View file

@ -504,7 +504,8 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/Natuurpunt.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door Natuurpunt"
"nl": "Dit gebied wordt beheerd door Natuurpunt",
"icon": "./assets/themes/buurtnatuur/Natuurpunt.jpg"
}
},
{
@ -514,7 +515,8 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/Natuurpunt.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door {operator}"
"nl": "Dit gebied wordt beheerd door {operator}",
"icon": "./assets/themes/buurtnatuur/Natuurpunt.jpg"
},
"hideInAnswer": true
},
@ -525,7 +527,8 @@
]
},
"then": {
"nl": "<img src=\"./assets/themes/buurtnatuur/ANB.jpg\" style=\"width:1.5em\">Dit gebied wordt beheerd door het Agentschap Natuur en Bos"
"nl": "Dit gebied wordt beheerd door het Agentschap Natuur en Bos",
"icon": "./assets/themes/buurtnatuur/ANB.jpg"
}
},
{

View file

@ -22,7 +22,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 1.5,
"socialImage": "",
"layers": [
"cafe_pub"
]

View file

@ -42,7 +42,7 @@
"startLon": 3.14,
"startZoom": 14,
"widenFactor": 1.5,
"socialImage": "./assets/themes/campersite/Bar%C3%9Fel_Wohnmobilstellplatz.jpg",
"socialImage": "./assets/themes/campersite/social_image.jpg",
"layers": [
{
"id": "caravansites",

View file

@ -1,14 +1,4 @@
[
{
"path": "Barßel_Wohnmobilstellplatz.jpg",
"license": "CC-BY-SA 3.0",
"authors": [
"ES01"
],
"sources": [
"https://commons.wikimedia.org/wiki/File:Bar%C3%9Fel_Wohnmobilstellplatz.jpg"
]
},
{
"path": "caravan.svg",
"license": "CC0",
@ -41,5 +31,15 @@
"https://github.com/osmandapp/Osmand/blob/master/LICENSE",
"https://github.com/osmandapp/OsmAnd-resources/blob/16892d8b2fc00dd422abfb2fef967d5ccd05eeac/icons/svg/poi/sanitary_dump_station.svg"
]
},
{
"path": "social_image.jpg",
"license": "CC-BY-SA 3.0",
"authors": [
"ES01"
],
"sources": [
"https://commons.wikimedia.org/wiki/File:Bar%C3%9Fel_Wohnmobilstellplatz.jpg"
]
}
]

View file

Before

Width:  |  Height:  |  Size: 593 KiB

After

Width:  |  Height:  |  Size: 593 KiB

Before After
Before After

View file

@ -39,7 +39,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 1.5,
"socialImage": "",
"defaultBackgroundId": "CartoDB.Voyager",
"layers": [
"charging_station"

View file

@ -41,7 +41,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 1.5,
"socialImage": "",
"layers": [
{
"id": "climbing_club",

View file

@ -33,7 +33,7 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 2,
"socialImage": "assets/themes/cyclofix/logo.svg",
"socialImage": "./assets/themes/cyclofix/logo.svg",
"layers": [
"bike_cafe",
"bike_shop",

View file

@ -32,7 +32,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 2,
"socialImage": "",
"clustering": {
"maxZoom": 14,
"minNeededElements": 250

View file

@ -36,7 +36,6 @@
"startLon": 4.480705,
"startZoom": 15,
"widenFactor": 1.5,
"socialImage": "",
"layers": [
{
"id": "facadegardens",

View file

@ -20,7 +20,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 3,
"socialImage": "",
"layers": [
"food"
]

View file

@ -16,7 +16,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 3,
"socialImage": "",
"layers": [
{
"builtin": "food",

View file

@ -16,7 +16,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 2,
"socialImage": "",
"hideFromOverview": true,
"layers": [
{

View file

@ -11,14 +11,13 @@
"en": "This theme is an attempt to help automating the GRB import.",
"hu": "Ez a sablon a flandriai GRB épületimportálás automatizlását kívánja megkönnyíteni."
},
"maintainer": "",
"maintainer": "Pieter Vander Vennet",
"icon": "./assets/themes/grb_import/logo.svg",
"version": "0",
"startLat": 51.0249,
"startLon": 4.026489,
"startZoom": 9,
"widenFactor": 2,
"socialImage": "",
"clustering": {
"maxZoom": 15
},
@ -605,15 +604,14 @@
},
"iconSize": "50,50,center",
"icon": {
"render": "./assets/themes/grb_import/housenumber_blank.svg",
"mappings": [
{
"if": "_intersects_with_other_features~*",
"then": "./assets/themes/grb_import/warning.svg"
},
{
"if": "addr:housenumber=",
"then": ""
"if": "addr:housenumber~*",
"then": "./assets/themes/grb_import/housenumber_blank.svg"
}
]
},

View file

@ -16,7 +16,6 @@
"startLon": 3.231,
"startZoom": 14,
"widenFactor": 2,
"socialImage": "",
"clustering": {
"maxZoom": 15
},

View file

@ -16,7 +16,6 @@
"startLon": 4.026489,
"startZoom": 9,
"widenFactor": 2,
"socialImage": "",
"clustering": {
"maxZoom": 15
},

View file

@ -29,7 +29,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 5,
"socialImage": "",
"layers": [
{
"id": "hackerspaces",

View file

@ -37,7 +37,6 @@
"startLon": 121.6625,
"startZoom": 6,
"widenFactor": 3,
"socialImage": "",
"layers": [
"hydrant",
"extinguisher",

View file

@ -37,7 +37,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 5,
"socialImage": "",
"layers": [
"map"
]

View file

@ -19,7 +19,6 @@
"startLon": 3.22435,
"startZoom": 12,
"widenFactor": 2,
"socialImage": "",
"layers": [
"drinking_water",
"birdhide",

View file

@ -41,7 +41,6 @@
]
],
"widenFactor": 2,
"socialImage": "",
"defaultBackgroundId": "CartoDB.Positron",
"enablePdfDownload": true,
"enableDownload": false,

View file

@ -32,7 +32,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 5,
"socialImage": "",
"layers": [
"observation_tower"
]

View file

@ -17,7 +17,6 @@
"startZoom": 1,
"hideFromOverview": true,
"widenFactor": 3,
"socialImage": "",
"layers": [
"play_forest"
]

View file

@ -45,7 +45,6 @@
"startLon": 4.399,
"startZoom": 13,
"widenFactor": 5,
"socialImage": "",
"layers": [
"playground"
]

View file

@ -22,7 +22,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 0.05,
"socialImage": "",
"hideFromOverview": true,
"clustering": false,
"overpassTimeout": 180,

View file

@ -35,7 +35,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 3,
"socialImage": "",
"layers": [
"shops"
]

View file

@ -18,7 +18,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 0.05,
"socialImage": "",
"hideFromOverview": true,
"layers": [
{

View file

@ -39,7 +39,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 2,
"socialImage": "",
"layers": [
"sport_pitch"
]

View file

@ -39,7 +39,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 2,
"socialImage": "",
"defaultBackgroundId": "osm",
"layers": [
"direction",

View file

@ -24,7 +24,6 @@
"startLon": 51.52224,
"startZoom": 17,
"widenFactor": 1.01,
"socialImage": "",
"hideFromOverview": true,
"clustering": {
"minNeededFeatures": 25,
@ -240,6 +239,7 @@
},
"mappings": [
{
"#": "ignore-image-in-then",
"if": "addr:substreet~*",
"then": "<div>The envelope below shows the address that we have recorded. You can change this by answering any remaining questions above, or by clicking the pencil icons below. We do not need you to provide a recipient's name or any of the parts shown in <span style='color: #4e7ce8'>[blue]</span>.</div><div style='background: #f1d592; min-height: 270px; border-radius: 2px; padding: 1rem 1rem 2rem 7rem; margin: 1rem; box-shadow: 0 2px 5px 0px rgba(0,0,0,.6)' class='flex flex-col'><img src='./assets/themes/uk_addresses/stamp-outline.png' class='self-end w-16'/><div>{addr:unit} {addr:housename}</div><div>{addr:housenumber} {addr:substreet}</div><div>{addr:street}</div><div>{addr:parentstreet}</div><div style='color: #4e7ce8'>[Suburb]</div><div style='color: #4e7ce8'>[Town]</div><div style='color: #4e7ce8'>[Postal code]</div></div>"
}

View file

@ -32,7 +32,6 @@
"startLon": 0,
"startZoom": 1,
"widenFactor": 2,
"socialImage": "",
"layers": [
{
"builtin": "waste_basket",