diff --git a/.vscode/settings.json b/.vscode/settings.json
index 0eedd1323..aa73d8edf 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -53,8 +53,5 @@
"[svelte]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
- "editor.formatOnSave": true,
- "files.associations": {
- "*.protojson": "json"
- }
+ "editor.formatOnSave": true
}
diff --git a/assets/layers/cafe_pub/cafe_pub.json b/assets/layers/cafe_pub/cafe_pub.json
index df6bab66f..1811e3982 100644
--- a/assets/layers/cafe_pub/cafe_pub.json
+++ b/assets/layers/cafe_pub/cafe_pub.json
@@ -401,6 +401,7 @@
"wheelchair-access",
"smoking",
"service:electricity",
+ "seating",
"dog-access",
"internet",
"internet-fee",
@@ -412,7 +413,9 @@
"accepts_cash",
"accepts_cards",
"has_internet",
- "has_electricity"
+ "has_electricity",
+ "outdoor_seating",
+ "indoor_seating"
],
"deletion": {
"softDeletionTags": {
@@ -439,4 +442,4 @@
]
},
"allowMove": true
-}
+}
\ No newline at end of file
diff --git a/assets/layers/charging_station/charging_station.json b/assets/layers/charging_station/charging_station.json
index 10f138099..fb09a0f9c 100644
--- a/assets/layers/charging_station/charging_station.json
+++ b/assets/layers/charging_station/charging_station.json
@@ -1790,9 +1790,9 @@
{
"en": "Tesla Supercharger",
"nl": "Tesla Supercharger",
+ "cs": "Tesla Supercharger",
"de": "Tesla Supercharger",
- "es": "Tesla Supercharger",
- "cs": "Tesla Supercharger"
+ "es": "Tesla Supercharger"
},
"Tesla-hpwc-model-s.svg",
[
@@ -2530,43 +2530,15 @@
},
{
"id": "maxstay",
- "question": {
- "en": "What is the maximum amount of time one is allowed to stay here?",
- "nl": "Hoelang mag een voertuig hier blijven staan?",
- "ca": "Quina és la quantitat màxima de temps que es permet permaneixer aquí?",
- "de": "Wie lange darf man hier maximal parken?",
- "es": "¿Cuál es el tiempo máximo que se permite permanecer aquí?"
- },
- "freeform": {
- "key": "maxstay",
- "type": "pfloat"
- },
- "render": {
- "en": "One can stay at most {canonical(maxstay)}",
- "nl": "De maximale parkeertijd hier is {canonical(maxstay)}",
- "ca": "Un pot quedar-se com a màxim {canonical(maxstay)}",
- "de": "Die maximale Parkdauer beträgt {canonical(maxstay)}",
- "es": "Se puede permanecer como máximo {canonical(maxstay)}"
- },
- "mappings": [
- {
- "if": "maxstay=unlimited",
- "then": {
- "en": "No timelimit on leaving your vehicle here",
- "nl": "Geen maximum parkeertijd",
- "ca": "No hi ha límit de temps per a deixar el teu vehicle aquí",
- "de": "Keine Höchstparkdauer",
- "es": "Sin límite de tiempo para dejar tu vehículo aquí"
- }
+ "builtin": "maxstay",
+ "override": {
+ "condition": {
+ "or": [
+ "motorcar=yes",
+ "hgv=yes",
+ "bus=yes"
+ ]
}
- ],
- "condition": {
- "or": [
- "maxstay~*",
- "motorcar=yes",
- "hgv=yes",
- "bus=yes"
- ]
}
},
{
@@ -2584,11 +2556,11 @@
"en": "Is this charging station part of a network?",
"nl": "Is dit oplaadpunt deel van een groter netwerk?",
"ca": "Aquesta estació de càrrega forma part d'una xarxa?",
+ "cs": "Je tato nabíjecí stanice součástí sítě?",
"de": "Ist diese Ladestation Teil eines Netzwerks?",
"es": "¿Este punto de carga forma parte de una red?",
"pl": "Czy ta stacja ładowania jest częścią sieci?",
- "uk": "Чи є ця зарядна станція частиною мережі?",
- "cs": "Je tato nabíjecí stanice součástí sítě?"
+ "uk": "Чи є ця зарядна станція частиною мережі?"
},
"freeform": {
"key": "network"
@@ -2609,11 +2581,11 @@
"then": {
"en": "Not part of a bigger network",
"nl": "Maakt geen deel uit van een groter netwerk",
+ "cs": "Není součástí větší sítě",
"de": "Nicht Teil eines größeren Netzwerks",
"es": "No forma parte de una red mayor",
"pl": "Nie jest częścią większej sieci",
- "uk": "Не є частиною великої мережі",
- "cs": "Není součástí větší sítě"
+ "uk": "Не є частиною великої мережі"
},
"hideInAnswer": true
},
@@ -3062,11 +3034,11 @@
"en": "All vehicle types",
"nl": "Alle voertuigen",
"ca": "Tots els tipus de vehicles",
+ "cs": "Všechny typy vozidel",
"de": "Ladestationen für alle Fahrzeugtypen",
"es": "Todos los tipos de vehículos",
"fr": "Tous les types de véhicules",
- "it": "Tutti i tipi di veicoli",
- "cs": "Všechny typy vozidel"
+ "it": "Tutti i tipi di veicoli"
}
},
{
@@ -3074,11 +3046,11 @@
"en": "Charging station for bicycles",
"nl": "Oplaadpunten voor fietsen",
"ca": "Punt de recàrrega per a bicicletes",
+ "cs": "Nabíjecí stanice pro kola",
"de": "Ladestationen für Fahrräder",
"es": "Punto de carga para bicicletas",
"fr": "Station de recharge pour vélos",
- "it": "Stazione di ricarica per biciclette",
- "cs": "Nabíjecí stanice pro kola"
+ "it": "Stazione di ricarica per biciclette"
},
"osmTags": "bicycle=yes"
},
@@ -3087,11 +3059,11 @@
"en": "Charging station for cars",
"nl": "Oplaadpunten voor auto's",
"ca": "Estació de càrrega per a cotxes",
+ "cs": "Nabíjecí stanice pro auta",
"de": "Ladestationen für Autos",
"es": "Punto de carga para coches",
"fr": "Station de recharge pour voitures",
- "it": "Stazione di ricarica per auto",
- "cs": "Nabíjecí stanice pro auta"
+ "it": "Stazione di ricarica per auto"
},
"osmTags": {
"or": [
@@ -3110,11 +3082,11 @@
"en": "Only working charging stations",
"nl": "Enkel werkende oplaadpunten",
"ca": "Només estacions de recàrrega en funcionament",
+ "cs": "Pouze funkční nabíjecí stanice",
"de": "Nur Ladestationen in Betrieb",
"es": "Solo puntos de carga en funcionamiento",
"fr": "Seulement les stations de recharge qui fonctionnent",
- "it": "Solo stazioni di ricarica funzionanti",
- "cs": "Pouze funkční nabíjecí stanice"
+ "it": "Solo stazioni di ricarica funzionanti"
},
"osmTags": {
"and": [
@@ -3133,10 +3105,10 @@
"en": "All connectors",
"nl": "Alle types",
"ca": "Tots els connectors",
+ "cs": "Všechny konektory",
"de": "Alle Anschlüsse",
"es": "Todos los conectores",
- "it": "Tutti i connettori",
- "cs": "Všechny konektory"
+ "it": "Tutti i connettori"
}
},
{
diff --git a/assets/layers/charging_station/charging_station.proto.json b/assets/layers/charging_station/charging_station.proto.json
index 12cbcadf3..8329088bb 100644
--- a/assets/layers/charging_station/charging_station.proto.json
+++ b/assets/layers/charging_station/charging_station.proto.json
@@ -559,34 +559,15 @@
},
{
"id": "maxstay",
- "question": {
- "en": "What is the maximum amount of time one is allowed to stay here?",
- "nl": "Hoelang mag een voertuig hier blijven staan?"
- },
- "freeform": {
- "key": "maxstay",
- "type": "pfloat"
- },
- "render": {
- "en": "One can stay at most {canonical(maxstay)}",
- "nl": "De maximale parkeertijd hier is {canonical(maxstay)}"
- },
- "mappings": [
- {
- "if": "maxstay=unlimited",
- "then": {
- "en": "No timelimit on leaving your vehicle here",
- "nl": "Geen maximum parkeertijd"
- }
+ "builtin": "maxstay",
+ "override": {
+ "condition": {
+ "or": [
+ "motorcar=yes",
+ "hgv=yes",
+ "bus=yes"
+ ]
}
- ],
- "condition": {
- "or": [
- "maxstay~*",
- "motorcar=yes",
- "hgv=yes",
- "bus=yes"
- ]
}
},
{
@@ -1050,4 +1031,4 @@
},
"neededChangesets": 10
}
-}
+}
\ No newline at end of file
diff --git a/assets/layers/filters/filters.json b/assets/layers/filters/filters.json
index c2ef1a5c6..ffdddd3b1 100644
--- a/assets/layers/filters/filters.json
+++ b/assets/layers/filters/filters.json
@@ -418,7 +418,30 @@
}
}
]
+ },
+ {
+ "id": "outdoor_seating",
+ "options": [
+ {
+ "question": {
+ "en": "Has outdoor seating"
+ },
+ "icon": "./assets/layers/outdoor_seating.svg",
+ "osmTags": "outdoor_seating=yes"
+ }
+ ]
+ },
+ {
+ "id": "indoor_seating",
+ "options": [
+ {
+ "question": {
+ "en": "Has indoor seating"
+ },
+ "osmTags": "indoor_seating=yes"
+ }
+ ]
}
],
"allowMove": false
-}
+}
\ No newline at end of file
diff --git a/assets/layers/food/food.json b/assets/layers/food/food.json
index 77d776907..bc81032fa 100644
--- a/assets/layers/food/food.json
+++ b/assets/layers/food/food.json
@@ -804,6 +804,55 @@
}
]
},
+ {
+ "id": "drive-through",
+ "condition": "amenity=fast_food",
+ "question": {
+ "en": "Does this fast-food restaurant have a drive-through?",
+ "nl": "Heeft dit fastfoodrestaurant een drive-through?"
+ },
+ "mappings": [
+ {
+ "if": "drive_through=yes",
+ "then": {
+ "en": "This fast-food restaurant has a drive-through",
+ "nl": "Dit fastfoodrestaurant heeft een drive-through"
+ }
+ },
+ {
+ "if": "drive_through=no",
+ "then": {
+ "en": "This fast-food restaurant does not have a drive-through",
+ "nl": "Dit fastfoodrestaurant heeft geen drive-through"
+ }
+ }
+ ]
+ },
+ {
+ "id": "drive-through-opening_hours",
+ "condition": "drive_through=yes",
+ "question": {
+ "en": "What are the opening hours of the drive-through?",
+ "nl": "Wat zijn de openingsuren van de drive-through?"
+ },
+ "freeform": {
+ "key": "opening_hours:drive_through",
+ "type": "opening_hours"
+ },
+ "mappings": [
+ {
+ "if": "opening_hours:drive_through=",
+ "then": {
+ "en": "The opening hours of the drive-through are the same as the restaurant",
+ "nl": "De openingsuren van de drive-through zijn dezelfde als die van het restaurant"
+ }
+ }
+ ],
+ "render": {
+ "en": "
{opening_hours_table(opening_hours:drive_through)}"
+ }
+ },
{
"question": {
"nl": "Heeft deze eetgelegenheid een vegetarische optie?",
@@ -1341,6 +1390,7 @@
"lactose_free",
"smoking",
"service:electricity",
+ "seating",
"dog-access",
"internet",
"internet-fee",
@@ -1488,6 +1538,8 @@
"filters.sugar_free",
"filters.gluten_free",
"filters.lactose_free",
+ "outdoor_seating",
+ "indoor_seating",
"accepts_cash",
"accepts_cards",
"dogs"
@@ -1545,4 +1597,4 @@
]
},
"allowMove": true
-}
+}
\ No newline at end of file
diff --git a/assets/layers/parking/parking.json b/assets/layers/parking/parking.json
index d00150365..2cbaeb2f0 100644
--- a/assets/layers/parking/parking.json
+++ b/assets/layers/parking/parking.json
@@ -350,7 +350,8 @@
"cs": "Počet parkovacích míst {capacity}",
"es": "Hay {capacity} plazas de aparcamiento"
}
- }
+ },
+ "maxstay"
],
"deletion": {
"softDeletionTags": {
@@ -365,4 +366,4 @@
"enableRelocation": false,
"enableImproveAccuracy": true
}
-}
+}
\ No newline at end of file
diff --git a/assets/layers/questions/questions.json b/assets/layers/questions/questions.json
index fdc3b6d9a..964643eac 100644
--- a/assets/layers/questions/questions.json
+++ b/assets/layers/questions/questions.json
@@ -3181,7 +3181,70 @@
}
}
]
+ },
+ {
+ "id": "seating",
+ "question": {
+ "en": "What kind of seating does {title()} have?",
+ "nl": "Wat voor zitplaatsen heeft {title()}?"
+ },
+ "mappings": [
+ {
+ "if": "outdoor_seating=yes",
+ "ifnot": "outdoor_seating=no",
+ "then": {
+ "en": "This place has outdoor seating",
+ "nl": "Deze plaats heeft zitplaatsen buiten"
+ },
+ "icon": "./assets/layers/outdoor_seating/outdoor_seating.svg"
+ },
+ {
+ "if": "indoor_seating=yes",
+ "ifnot": "indoor_seating=no",
+ "then": {
+ "en": "This place has indoor seating",
+ "nl": "Deze plaats heeft zitplaatsen binnen"
+ }
+ }
+ ],
+ "multiAnswer": true
+ },
+ {
+ "id": "maxstay",
+ "question": {
+ "en": "What is the maximum amount of time one is allowed to stay here?",
+ "nl": "Wat is de maximale tijd die je hier mag blijven?"
+ },
+ "freeform": {
+ "key": "maxstay",
+ "type": "pfloat"
+ },
+ "render": {
+ "en": "One can stay at most {canonical(maxstay)}",
+ "nl": "Je mag hier maximaal {canonical(maxstay)} blijven"
+ },
+ "mappings": [
+ {
+ "if": "maxstay=unlimited",
+ "then": {
+ "en": "There is no limit to the amount of time one can stay here",
+ "nl": "Er is geen limiet aan de tijd die je hier mag blijven"
+ }
+ }
+ ]
}
],
- "allowMove": false
-}
+ "allowMove": false,
+ "units": [
+ {
+ "maxstay": {
+ "quantity": "duration",
+ "denominations": [
+ "minutes",
+ "hours",
+ "days"
+ ]
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/layers/recycling/recycling.json b/assets/layers/recycling/recycling.json
index 17d336cec..a7dbb58fb 100644
--- a/assets/layers/recycling/recycling.json
+++ b/assets/layers/recycling/recycling.json
@@ -1292,8 +1292,7 @@
"icon": {
"path": "./assets/layers/waste_disposal/waste_disposal.svg",
"class": "medium"
- },
- "hideInAnswer": "recycling_type=container"
+ }
},
{
"if": "recycling:bicycles=yes",
@@ -1795,4 +1794,4 @@
"enableRelocation": true,
"enableImproveAccuracy": true
}
-}
+}
\ No newline at end of file
diff --git a/assets/layers/stairs/escalator.svg b/assets/layers/stairs/escalator.svg
new file mode 100644
index 000000000..454a4656a
--- /dev/null
+++ b/assets/layers/stairs/escalator.svg
@@ -0,0 +1,6 @@
+
+
\ No newline at end of file
diff --git a/assets/layers/stairs/escalator.svg.license b/assets/layers/stairs/escalator.svg.license
new file mode 100644
index 000000000..22d0b4478
--- /dev/null
+++ b/assets/layers/stairs/escalator.svg.license
@@ -0,0 +1,2 @@
+SPDX-FileCopyrightText: AIGA
+SPDX-License-Identifier: Public Domain
\ No newline at end of file
diff --git a/assets/layers/stairs/license_info.json b/assets/layers/stairs/license_info.json
index 6e638d37d..6a6547bcf 100644
--- a/assets/layers/stairs/license_info.json
+++ b/assets/layers/stairs/license_info.json
@@ -7,11 +7,21 @@
],
"sources": []
},
+ {
+ "path": "escalator.svg",
+ "license": "Public Domain",
+ "authors": [
+ "AIGA"
+ ],
+ "sources": [
+ "https://commons.wikimedia.org/wiki/File:Aiga_escalator.svg"
+ ]
+ },
{
"path": "stairs.svg",
"license": "CC-BY SA 4.0",
"authors": [
- " \tFont Awesome"
+ "Font Awesome"
],
"sources": [
"https://commons.wikimedia.org/wiki/File:Stairs-solid.svg"
diff --git a/assets/layers/stairs/stairs.json b/assets/layers/stairs/stairs.json
index ceda4c28b..3accb9c0e 100644
--- a/assets/layers/stairs/stairs.json
+++ b/assets/layers/stairs/stairs.json
@@ -33,7 +33,14 @@
},
"mappings": [
{
- "if": "conveying=yes",
+ "if": {
+ "or": [
+ "conveying=yes",
+ "conveying=forward",
+ "conveying=backward",
+ "conveying=reversible"
+ ]
+ },
"then": {
"en": "Escalator",
"nl": "Roltrap",
@@ -53,7 +60,22 @@
"color": "white"
},
{
- "icon": "./assets/layers/stairs/stairs.svg"
+ "icon": {
+ "render": "./assets/layers/stairs/stairs.svg",
+ "mappings": [
+ {
+ "if": {
+ "or": [
+ "conveying=yes",
+ "conveying=forward",
+ "conveying=backward",
+ "conveying=reversible"
+ ]
+ },
+ "then": "./assets/layers/stairs/escalator.svg"
+ }
+ ]
+ }
}
],
"location": [
@@ -63,9 +85,51 @@
],
"lineRendering": [
{
- "color": "gray",
+ "color": {
+ "render": "gray",
+ "mappings": [
+ {
+ "if": {
+ "or": [
+ "conveying=yes",
+ "conveying=forward",
+ "conveying=backward",
+ "conveying=reversible"
+ ]
+ },
+ "then": "blue"
+ }
+ ]
+ },
"width": 10,
- "dashArray": "1 1"
+ "dashArray": "1 2",
+ "imageAlongWay": [
+ {
+ "if": {
+ "or": [
+ "conveying=yes",
+ "conveying=forward"
+ ]
+ },
+ "then": "./assets/png/oneway.png"
+ },
+ {
+ "if": {
+ "or": [
+ "conveying=backward"
+ ]
+ },
+ "then": "./assets/png/oneway_reversed.png"
+ },
+ {
+ "if": {
+ "or": [
+ "conveying=reversible"
+ ]
+ },
+ "then": "./assets/png/twoway.png"
+ }
+ ]
}
],
"tagRenderings": [
@@ -106,6 +170,26 @@
"es": "Esta es una escalera mecánica"
}
},
+ {
+ "if": {
+ "or": [
+ "conveying=forward",
+ "conveying=backward"
+ ]
+ },
+ "then": {
+ "en": "This is an escalator moving in the direction of the arrows",
+ "nl": "Dit is een roltrap die beweegt in de richting van de pijlen"
+ },
+ "hideInAnswer": true
+ },
+ {
+ "if": "conveying=reversible",
+ "then": {
+ "en": "This is a reversible escalator",
+ "nl": "Dit is een roltrap die van richting kan veranderen"
+ }
+ },
{
"if": "conveying=no",
"then": {
@@ -131,7 +215,11 @@
},
"hideInAnswer": true
}
- ]
+ ],
+ "question": {
+ "en": "Is this an escalator?",
+ "nl": "Is dit een roltrap?"
+ }
},
{
"id": "handrail",
@@ -372,4 +460,4 @@
"enableImproveAccuracy": true,
"enableRelocation": false
}
-}
+}
\ No newline at end of file
diff --git a/assets/layers/stairs/stairs.svg.license b/assets/layers/stairs/stairs.svg.license
index 64535f156..969eb44c1 100644
--- a/assets/layers/stairs/stairs.svg.license
+++ b/assets/layers/stairs/stairs.svg.license
@@ -1,2 +1,2 @@
-SPDX-FileCopyrightText: Font Awesome
+SPDX-FileCopyrightText: Font Awesome
SPDX-License-Identifier: CC-BY SA 4.0
\ No newline at end of file
diff --git a/assets/png/license_info.json b/assets/png/license_info.json
index 548e52793..60faccb28 100644
--- a/assets/png/license_info.json
+++ b/assets/png/license_info.json
@@ -15,6 +15,14 @@
],
"sources": []
},
+ {
+ "path": "oneway_reversed.png",
+ "license": "CC0-1.0",
+ "authors": [
+ "Pieter Vander Vennet"
+ ],
+ "sources": []
+ },
{
"path": "twoway.png",
"license": "CC0-1.0",
diff --git a/assets/png/oneway_reversed.png b/assets/png/oneway_reversed.png
new file mode 100644
index 000000000..38fc0911a
Binary files /dev/null and b/assets/png/oneway_reversed.png differ
diff --git a/assets/png/oneway_reversed.png.license b/assets/png/oneway_reversed.png.license
new file mode 100644
index 000000000..ed0288300
--- /dev/null
+++ b/assets/png/oneway_reversed.png.license
@@ -0,0 +1,2 @@
+SPDX-FileCopyrightText: Pieter Vander Vennet
+SPDX-License-Identifier: CC0-1.0
\ No newline at end of file
diff --git a/langs/layers/ca.json b/langs/layers/ca.json
index 5f81d5b33..4c871f3b2 100644
--- a/langs/layers/ca.json
+++ b/langs/layers/ca.json
@@ -2137,15 +2137,6 @@
},
"question": "Hi ha que pagar per utilitzar aquest punt de càrrega?"
},
- "maxstay": {
- "mappings": {
- "0": {
- "then": "No hi ha límit de temps per a deixar el teu vehicle aquí"
- }
- },
- "question": "Quina és la quantitat màxima de temps que es permet permaneixer aquí?",
- "render": "Un pot quedar-se com a màxim {canonical(maxstay)}"
- },
"phone": {
"question": "A quin número es pot cridar si hi ha algun problema amb aquest punt de càrrega?",
"render": "En cas de problemes, truqueu a {phone}"
@@ -7597,10 +7588,10 @@
"0": {
"then": "Açò és una escala mecànica"
},
- "1": {
+ "3": {
"then": "Açò no és una escala mecànica"
},
- "2": {
+ "4": {
"then": "Això no és una escala mecànica"
}
}
diff --git a/langs/layers/cs.json b/langs/layers/cs.json
index 896c19722..016cc47cf 100644
--- a/langs/layers/cs.json
+++ b/langs/layers/cs.json
@@ -8510,10 +8510,10 @@
"0": {
"then": "Jedná se o eskalátor"
},
- "1": {
+ "3": {
"then": "Nejedná se o eskalátor"
},
- "2": {
+ "4": {
"then": "Nejedná se o eskalátor"
}
}
diff --git a/langs/layers/de.json b/langs/layers/de.json
index 241782ae7..31196d58a 100644
--- a/langs/layers/de.json
+++ b/langs/layers/de.json
@@ -2691,15 +2691,6 @@
},
"question": "Muss man für die Nutzung dieser Ladestation bezahlen?"
},
- "maxstay": {
- "mappings": {
- "0": {
- "then": "Keine Höchstparkdauer"
- }
- },
- "question": "Wie lange darf man hier maximal parken?",
- "render": "Die maximale Parkdauer beträgt {canonical(maxstay)}"
- },
"phone": {
"question": "Welche Nummer kann man anrufen, wenn es ein Problem mit dieser Ladestation gibt?",
"render": "Bei Problemen, anrufen unter {phone}"
@@ -10226,10 +10217,10 @@
"0": {
"then": "Das ist eine Rolltreppe"
},
- "1": {
+ "3": {
"then": "Das ist keine Rolltreppe"
},
- "2": {
+ "4": {
"then": "Das ist keine Rolltreppe"
}
}
diff --git a/langs/layers/en.json b/langs/layers/en.json
index b48b9e4bd..d697c01ab 100644
--- a/langs/layers/en.json
+++ b/langs/layers/en.json
@@ -2691,15 +2691,6 @@
},
"question": "Does one have to pay to use this charging station?"
},
- "maxstay": {
- "mappings": {
- "0": {
- "then": "No timelimit on leaving your vehicle here"
- }
- },
- "question": "What is the maximum amount of time one is allowed to stay here?",
- "render": "One can stay at most {canonical(maxstay)}"
- },
"phone": {
"question": "What number can one call if there is a problem with this charging station?",
"render": "In case of problems, call {phone}"
@@ -4963,6 +4954,20 @@
}
}
},
+ "16": {
+ "options": {
+ "0": {
+ "question": "Has outdoor seating"
+ }
+ }
+ },
+ "17": {
+ "options": {
+ "0": {
+ "question": "Has indoor seating"
+ }
+ }
+ },
"2": {
"options": {
"0": {
@@ -5541,6 +5546,26 @@
},
"question": "Does {title()} deliver food to your home?"
},
+ "drive-through": {
+ "mappings": {
+ "0": {
+ "then": "This fast-food restaurant has a drive-through"
+ },
+ "1": {
+ "then": "This fast-food restaurant does not have a drive-through"
+ }
+ },
+ "question": "Does this fast-food restaurant have a drive-through?"
+ },
+ "drive-through-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "The opening hours of the drive-through are the same as the restaurant"
+ }
+ },
+ "question": "What are the opening hours of the drive-through?",
+ "render": "
Drive-through opening hours
{opening_hours_table(opening_hours:drive_through)}"
+ },
"friture-oil": {
"mappings": {
"0": {
@@ -8642,6 +8667,15 @@
"mastodon": {
"question": "What is the Mastodon-handle of {title()}?"
},
+ "maxstay": {
+ "mappings": {
+ "0": {
+ "then": "There is no limit to the amount of time one can stay here"
+ }
+ },
+ "question": "What is the maximum amount of time one is allowed to stay here?",
+ "render": "One can stay at most {canonical(maxstay)}"
+ },
"multilevels": {
"override": {
"question": "What levels does this elevator go to?",
@@ -8755,6 +8789,17 @@
},
"question": "Is {title()} available all around the year?"
},
+ "seating": {
+ "mappings": {
+ "0": {
+ "then": "This place has outdoor seating"
+ },
+ "1": {
+ "then": "This place has indoor seating"
+ }
+ },
+ "question": "What kind of seating does {title()} have?"
+ },
"service:electricity": {
"mappings": {
"0": {
@@ -10619,12 +10664,19 @@
"then": "This is an escalator"
},
"1": {
- "then": "This is not an escalator"
+ "then": "This is an escalator moving in the direction of the arrows"
},
"2": {
+ "then": "This is a reversible escalator"
+ },
+ "3": {
+ "then": "This is not an escalator"
+ },
+ "4": {
"then": "This is not an escalator"
}
- }
+ },
+ "question": "Is this an escalator?"
},
"handrail": {
"mappings": {
diff --git a/langs/layers/es.json b/langs/layers/es.json
index aa9ceab25..6d8a6bb84 100644
--- a/langs/layers/es.json
+++ b/langs/layers/es.json
@@ -2691,15 +2691,6 @@
},
"question": "¿Hay que pagar para usar este punto de carga?"
},
- "maxstay": {
- "mappings": {
- "0": {
- "then": "Sin límite de tiempo para dejar tu vehículo aquí"
- }
- },
- "question": "¿Cuál es el tiempo máximo que se permite permanecer aquí?",
- "render": "Se puede permanecer como máximo {canonical(maxstay)}"
- },
"phone": {
"question": "¿A qué número se puede llamar si hay un problema con este punto de carga?",
"render": "En caso de problemas, llama a {phone}"
@@ -10192,10 +10183,10 @@
"0": {
"then": "Esta es una escalera mecánica"
},
- "1": {
+ "3": {
"then": "Esta no es una escalera mecánica"
},
- "2": {
+ "4": {
"then": "Esta no es una escalera mecánica"
}
}
diff --git a/langs/layers/id.json b/langs/layers/id.json
index a9705aa62..50d033e46 100644
--- a/langs/layers/id.json
+++ b/langs/layers/id.json
@@ -719,10 +719,10 @@
"0": {
"then": "Ini adalah eskalator"
},
- "1": {
+ "3": {
"then": "Ini bukan eskalator"
},
- "2": {
+ "4": {
"then": "Ini bukan eskalator"
}
}
diff --git a/langs/layers/nl.json b/langs/layers/nl.json
index 0c92a9f6f..d9bd072d3 100644
--- a/langs/layers/nl.json
+++ b/langs/layers/nl.json
@@ -1733,6 +1733,9 @@
},
"title": {
"mappings": {
+ "0": {
+ "then": "{name}"
+ },
"1": {
"then": "Vogelkijkhut {name}"
},
@@ -2349,15 +2352,6 @@
},
"question": "Moet men betalen om dit oplaadpunt te gebruiken?"
},
- "maxstay": {
- "mappings": {
- "0": {
- "then": "Geen maximum parkeertijd"
- }
- },
- "question": "Hoelang mag een voertuig hier blijven staan?",
- "render": "De maximale parkeertijd hier is {canonical(maxstay)}"
- },
"phone": {
"question": "Wat is het telefoonnummer van de beheerder van dit oplaadpunt?",
"render": "Bij problemen, bel naar {phone}"
@@ -4721,6 +4715,26 @@
},
"question": "Levert {title()} aan huis?"
},
+ "drive-through": {
+ "mappings": {
+ "0": {
+ "then": "Dit fastfoodrestaurant heeft een drive-through"
+ },
+ "1": {
+ "then": "Dit fastfoodrestaurant heeft geen drive-through"
+ }
+ },
+ "question": "Heeft dit fastfoodrestaurant een drive-through?"
+ },
+ "drive-through-opening_hours": {
+ "mappings": {
+ "0": {
+ "then": "De openingsuren van de drive-through zijn dezelfde als die van het restaurant"
+ }
+ },
+ "question": "Wat zijn de openingsuren van de drive-through?",
+ "render": "
Openingsuren van de drive-through
{opening_hours_table(opening_hours:drive_through)}"
+ },
"friture-oil": {
"mappings": {
"0": {
@@ -5810,6 +5824,11 @@
}
},
"title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
"render": "Natuurgebied"
}
},
@@ -6341,6 +6360,21 @@
"render": "Picknicktafel"
}
},
+ "play_forest": {
+ "description": "Een speelbos is een vrij toegankelijke zone in een bos",
+ "name": "Speelbossen",
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ },
+ "1": {
+ "then": "Speelbos {name}"
+ }
+ },
+ "render": "Speelbos"
+ }
+ },
"playground": {
"deletion": {
"nonDeleteMappings": {
@@ -6997,6 +7031,15 @@
}
}
},
+ "maxstay": {
+ "mappings": {
+ "0": {
+ "then": "Er is geen limiet aan de tijd die je hier mag blijven"
+ }
+ },
+ "question": "Wat is de maximale tijd die je hier mag blijven?",
+ "render": "Je mag hier maximaal {canonical(maxstay)} blijven"
+ },
"multilevels": {
"override": {
"question": "Naar welke verdiepingen gaat deze lift?",
@@ -7110,6 +7153,17 @@
},
"question": "Is {title()} heel het jaar beschikbaar?"
},
+ "seating": {
+ "mappings": {
+ "0": {
+ "then": "Deze plaats heeft zitplaatsen buiten"
+ },
+ "1": {
+ "then": "Deze plaats heeft zitplaatsen binnen"
+ }
+ },
+ "question": "Wat voor zitplaatsen heeft {title()}?"
+ },
"service:electricity": {
"mappings": {
"0": {
@@ -7875,6 +7929,9 @@
},
"title": {
"mappings": {
+ "0": {
+ "then": "{name}"
+ },
"1": {
"then": "Voetpad"
},
@@ -8094,12 +8151,19 @@
"then": "Dit is een roltrap"
},
"1": {
- "then": "Dit is geen roltrap"
+ "then": "Dit is een roltrap die beweegt in de richting van de pijlen"
},
"2": {
+ "then": "Dit is een roltrap die van richting kan veranderen"
+ },
+ "3": {
+ "then": "Dit is geen roltrap"
+ },
+ "4": {
"then": "Dit is geen roltrap"
}
- }
+ },
+ "question": "Is dit een roltrap?"
},
"handrail": {
"mappings": {
@@ -9887,13 +9951,25 @@
}
},
"village_green": {
- "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)"
+ "description": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)",
+ "name": "Speelweide",
+ "title": {
+ "mappings": {
+ "0": {
+ "then": "{name}"
+ }
+ },
+ "render": "Speelweide"
+ }
},
"visitor_information_centre": {
"description": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.",
"name": "Bezoekerscentrum",
"title": {
"mappings": {
+ "0": {
+ "then": "{name:nl}"
+ },
"1": {
"then": "{name}"
}
@@ -10123,4 +10199,4 @@
"render": "windturbine"
}
}
-}
+}
\ No newline at end of file