Merge develop

This commit is contained in:
Pieter Vander Vennet 2025-01-12 13:33:38 +01:00
commit baa7379fbf
7880 changed files with 2079327 additions and 39792 deletions

View file

@ -61,7 +61,7 @@ jobs:
run: scp ${{ github.ref_name }}.zip hetzner:/root/staging/
- name: unzipping remote file
run: ssh hetzner "cd /root/staging && unzip ${{ github.ref_name }}.zip && rm -rf /root/public/${{ github.ref_name }} && mv /root/staging/${{ github.ref_name }}/ /root/public/ && rm ${{ github.ref_name }}.zip"
run: ssh hetzner "cd /root/staging && rm -rf ${{ github.ref_name }} && unzip ${{ github.ref_name }}.zip && rm -rf /root/public/${{ github.ref_name }} && mv /root/staging/${{ github.ref_name }}/ /root/public/ && rm ${{ github.ref_name }}.zip && /root/public/build_index.sh"

View file

@ -2,10 +2,10 @@
"recommendations": [
"esbenp.prettier-vscode",
"eamodio.gitlens",
"github.vscode-pull-request-github",
"svelte.svelte-vscode",
"bradlc.vscode-tailwindcss",
"editorconfig.editorconfig",
"dbaeumer.vscode-eslint"
"dbaeumer.vscode-eslint",
"robin-van-der-linde.mapcompletevscode"
]
}

@ -1 +1 @@
Subproject commit 917fe6a0f9ef67530f281d5603432f9c8daae0c7
Subproject commit 93aa4dd280541fd1946b5801577f1a39f5e0f291

View file

@ -14,6 +14,23 @@
"en": "Beehive",
"de": "Bienenstock"
},
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "circle",
"color": "white"
},
{
"icon": "./assets/layers/beehive/beehive.svg"
}
]
}
],
"presets": [
{
"title": {
@ -52,26 +69,9 @@
]
}
],
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "circle",
"color": "white"
},
{
"icon": "./assets/layers/beehive/beehive.svg"
}
]
}
],
"deletion": true,
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": true
},
"deletion": true
}
}

View file

@ -22,6 +22,7 @@
]
}
},
"minzoom": 13,
"title": {
"render": {
"en": "Bicycle counter",
@ -31,6 +32,39 @@
"nl": "Fietsteller"
}
},
"pointRendering": [
{
"marker": [
{
"icon": "pin",
"color": "#538EE8"
},
{
"icon": "./assets/layers/bicycle_counter/bicycle_monitoring_station.svg"
}
],
"location": [
"point",
"centroid"
],
"anchor": "bottom"
}
],
"presets": [
{
"title": {
"en": "a bicycle counter",
"cs": "počítadlo jízdních kol",
"de": "eine Fahrradzählstelle",
"es": "un contador de bicicletas",
"nl": "een fietsteller"
},
"tags": [
"man_made=monitoring_station",
"monitoring:bicycle=yes"
]
}
],
"tagRenderings": [
"images",
{
@ -237,42 +271,8 @@
}
}
],
"pointRendering": [
{
"marker": [
{
"icon": "pin",
"color": "#538EE8"
},
{
"icon": "./assets/layers/bicycle_counter/bicycle_monitoring_station.svg"
}
],
"location": [
"point",
"centroid"
],
"anchor": "bottom"
}
],
"minzoom": 13,
"deletion": true,
"allowMove": {
"enableImproveAccuracy": true
},
"deletion": true,
"presets": [
{
"title": {
"en": "a bicycle counter",
"cs": "počítadlo jízdních kol",
"de": "eine Fahrradzählstelle",
"es": "un contador de bicicletas",
"nl": "een fietsteller"
},
"tags": [
"man_made=monitoring_station",
"monitoring:bicycle=yes"
]
}
]
}

View file

@ -340,7 +340,6 @@
"tagRenderings": [
"shops.*"
],
"#filter": "no-auto",
"filter": [
{
"id": "sells_second-hand",
@ -390,6 +389,7 @@
},
"open_now"
],
"#filter": "no-auto",
"deletion": true,
"allowMove": true
}

View file

@ -0,0 +1,77 @@
{
"id": "charge_point",
"name": {
"en": "Charge points"
},
"description": {
"en": "Layer showing individual charge points within a charging station"
},
"source": {
"osmTags": "man_made=charge_point"
},
"minzoom": 18,
"title": {
"render": {
"en": "Charge point"
}
},
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "circle",
"color": "lightblue"
},
{
"icon": "./assets/themes/charging_stations/plug.svg"
}
],
"iconSize": "25,25"
}
],
"presets": [
{
"title": {
"en": "a charge point"
},
"tags": [
"man_made=charge_point"
],
"description": {
"en": "Add an individual charge point within a larger charging station"
}
}
],
"tagRenderings": [
"images",
{
"id": "ref",
"question": {
"en": "What is the reference number of this charge point?"
},
"freeform": {
"key": "ref",
"placeholder": {
"en": "Reference number of the charge point, e.g. 2126"
}
},
"render": {
"en": "The reference of this charge point is {ref}"
}
},
"charging_station.capacity",
"charging_station.Available_charging_stations (generated)",
"charging_station.plugs-amount",
"questions",
"charging_station.questions-technical",
"charging_station.technical"
],
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
}
}

View file

@ -8,7 +8,15 @@
"de": "Ladestationen",
"es": "Puntos de carga"
},
"minzoom": 10,
"description": {
"en": "A charging station",
"nl": "Oplaadpunten",
"ca": "Una estació de càrrega",
"cs": "Nabíjecí stanice",
"de": "Eine Ladestation",
"es": "Un punto de carga",
"fr": "Une station de recharge"
},
"source": {
"osmTags": {
"and": [
@ -23,6 +31,7 @@
]
}
},
"minzoom": 10,
"title": {
"render": {
"en": "Charging station",
@ -71,16 +80,114 @@
}
]
},
"description": {
"en": "A charging station",
"nl": "Oplaadpunten",
"ca": "Una estació de càrrega",
"cs": "Nabíjecí stanice",
"de": "Eine Ladestation",
"es": "Un punto de carga",
"fr": "Une station de recharge"
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "pin",
"color": "#fff"
},
"#": "no-question-hint-check",
{
"icon": {
"render": "./assets/themes/charging_stations/plug.svg",
"mappings": [
{
"if": "bicycle=yes",
"then": "./assets/themes/charging_stations/bicycle.svg"
},
{
"if": {
"or": [
"car=yes",
"motorcar=yes"
]
},
"then": "./assets/themes/charging_stations/car.svg"
}
]
}
}
],
"iconBadges": [
{
"if": {
"or": [
"disused:amenity=charging_station",
"operational_status=broken"
]
},
"then": "close:#c22;"
},
{
"if": {
"or": [
"proposed:amenity=charging_station",
"planned:amenity=charging_station"
]
},
"then": "./assets/layers/charging_station/under_construction.svg"
},
{
"if": {
"and": [
"bicycle=yes",
{
"or": [
"motorcar=yes",
"car=yes"
]
}
]
},
"then": "circle:#fff;./assets/themes/charging_stations/car.svg"
}
],
"anchor": "bottom",
"iconSize": "50,50"
}
],
"lineRendering": [
{
"color": "black",
"width": 2,
"fillColor": "#80808080"
}
],
"presets": [
{
"tags": [
"amenity=charging_station",
"motorcar=no",
"bicycle=yes"
],
"title": {
"en": "charging station for electrical bikes",
"nl": "oplaadpunt voor elektrische fietsen",
"cs": "nabíjecí stanice pro elektrokola",
"de": "Ladestation für Elektrofahrräder",
"es": "punto de carga para bicicletas eléctricas"
}
},
{
"tags": [
"amenity=charging_station",
"motorcar=yes",
"bicycle=no"
],
"title": {
"en": "charging station for cars",
"nl": "oplaadstation voor elektrische auto's",
"ca": "estació de càrrega per a cotxes",
"cs": "nabíjecí stanice pro auta",
"de": "Ladestation für Autos",
"es": "punto de carga para coches"
}
}
],
"tagRenderings": [
"images",
{
@ -2175,7 +2282,10 @@
"{{key}}~*",
"{{key}}!=0"
]
}
},
"labels": [
"plugs-amount"
]
},
{
"id": "voltage-{{id}}",
@ -2200,7 +2310,7 @@
"type": "pfloat"
},
"mappings": {
"if": "{{key}}:voltage={{commonVoltages}} V",
"if": "{{key}}:voltage={{commonVoltages}}",
"then": {
"en": "{{description}} outputs {{commonVoltages}} volt",
"nl": "{{description}} heeft een spanning van {{commonVoltages}} volt",
@ -2238,7 +2348,7 @@
"type": "pfloat"
},
"mappings": {
"if": "{{key}}:current={{commonCurrent}} A",
"if": "{{key}}:current={{commonCurrent}}",
"then": {
"en": "{{description}} outputs at most {{commonCurrent}} A",
"nl": "{{description}} levert een stroom van maximaal {{commonCurrent}} A",
@ -2277,10 +2387,10 @@
"mappings": {
"if": "{{key}}:output={{commonOutput}}",
"then": {
"en": "{{description}} outputs at most {{commonOutput}} A",
"nl": "{{description}} levert een vermogen van maximaal {{commonOutput}} A",
"de": "{{description}} liefert maximal {{commonOutput}} A",
"es": "{{description}} entrega como máximo {{commonOutput}} A"
"en": "{{description}} outputs at most {{commonOutput}}",
"nl": "{{description}} levert een vermogen van maximaal {{commonOutput}}",
"de": "{{description}} liefert maximal {{commonOutput}}",
"es": "{{description}} entrega como máximo {{commonOutput}}"
}
},
"condition": {
@ -2987,114 +3097,6 @@
}
}
],
"lineRendering": [
{
"color": "black",
"width": 2,
"fillColor": "#80808080"
}
],
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "pin",
"color": "#fff"
},
{
"icon": {
"render": "./assets/themes/charging_stations/plug.svg",
"mappings": [
{
"if": "bicycle=yes",
"then": "./assets/themes/charging_stations/bicycle.svg"
},
{
"if": {
"or": [
"car=yes",
"motorcar=yes"
]
},
"then": "./assets/themes/charging_stations/car.svg"
}
]
}
}
],
"iconBadges": [
{
"if": {
"or": [
"disused:amenity=charging_station",
"operational_status=broken"
]
},
"then": "close:#c22;"
},
{
"if": {
"or": [
"proposed:amenity=charging_station",
"planned:amenity=charging_station"
]
},
"then": "./assets/layers/charging_station/under_construction.svg"
},
{
"if": {
"and": [
"bicycle=yes",
{
"or": [
"motorcar=yes",
"car=yes"
]
}
]
},
"then": "circle:#fff;./assets/themes/charging_stations/car.svg"
}
],
"anchor": "bottom",
"iconSize": "50,50"
}
],
"presets": [
{
"tags": [
"amenity=charging_station",
"motorcar=no",
"bicycle=yes"
],
"title": {
"en": "charging station for electrical bikes",
"nl": "oplaadpunt voor elektrische fietsen",
"cs": "nabíjecí stanice pro elektrokola",
"de": "Ladestation für Elektrofahrräder",
"es": "punto de carga para bicicletas eléctricas"
}
},
{
"tags": [
"amenity=charging_station",
"motorcar=yes",
"bicycle=no"
],
"title": {
"en": "charging station for cars",
"nl": "oplaadstation voor elektrische auto's",
"ca": "estació de càrrega per a cotxes",
"cs": "nabíjecí stanice pro auta",
"de": "Ladestation für Autos",
"es": "punto de carga para coches"
}
}
],
"filter": [
{
"id": "vehicle-type",
@ -3382,6 +3384,19 @@
]
}
],
"deletion": {
"softDeletionTags": {
"and": [
"amenity=",
"disused:amenity=charging_station"
]
},
"neededChangesets": 10
},
"allowMove": {
"enableRelocation": false,
"enableImproveAccuracy": true
},
"units": [
{
"maxstay": {
@ -3576,17 +3591,5 @@
}
}
],
"allowMove": {
"enableRelocation": false,
"enableImproveAccuracy": true
},
"deletion": {
"softDeletionTags": {
"and": [
"amenity=",
"disused:amenity=charging_station"
]
},
"neededChangesets": 10
}
"#": "no-question-hint-check"
}

View file

@ -244,7 +244,10 @@
"{{key}}~*",
"{{key}}!=0"
]
}
},
"labels": [
"plugs-amount"
]
},
{
"id": "voltage-{{id}}",
@ -266,7 +269,7 @@
"type": "pfloat"
},
"mappings": {
"if": "{{key}}:voltage={{commonVoltages}} V",
"if": "{{key}}:voltage={{commonVoltages}}",
"then": {
"en": "{{description}} outputs {{commonVoltages}} volt",
"nl": "{{description}} heeft een spanning van {{commonVoltages}} volt",
@ -299,7 +302,7 @@
"type": "pfloat"
},
"mappings": {
"if": "{{key}}:current={{commonCurrent}} A",
"if": "{{key}}:current={{commonCurrent}}",
"then": {
"en": "{{description}} outputs at most {{commonCurrent}} A",
"nl": "{{description}} levert een stroom van maximaal {{commonCurrent}} A"
@ -332,8 +335,8 @@
"mappings": {
"if": "{{key}}:output={{commonOutput}}",
"then": {
"en": "{{description}} outputs at most {{commonOutput}} A",
"nl": "{{description}} levert een vermogen van maximaal {{commonOutput}} A"
"en": "{{description}} outputs at most {{commonOutput}} kW",
"nl": "{{description}} levert een vermogen van maximaal {{commonOutput}} kW"
}
},
"condition": {

View file

@ -36,6 +36,7 @@
]
}
},
"isCounted": false,
"minzoom": 18,
"title": {
"render": {
@ -163,6 +164,5 @@
"es": "una pared, un acantilado o una roca",
"cs": "zeď, útes nebo skála",
"nl": "een muur, klif of rots"
},
"isCounted": false
}
}

View file

@ -47,6 +47,9 @@
]
}
},
"calculatedTags": [
"width:= ! ! (feat.properties['width:carriageway']) ? feat.properties['width:carriageway'] : feat.properties['width'] "
],
"minzoom": 16,
"title": {
"render": {

View file

@ -1,5 +1,25 @@
{
"credits": "Robin van der Linde",
"id": "cyclist_waiting_aid",
"name": {
"en": "Cyclist Waiting Aids",
"de": "Radfahrer-Wartehilfen",
"es": "Ayudas a la espera de ciclistas"
},
"description": {
"en": "Various pieces of infrastructure that aid cyclists while they wait at a traffic light.",
"de": "Verschiedene Infrastruktureinrichtungen, die Radfahrern helfen, während sie an einer Ampel warten.",
"es": "Diversas infraestructuras que ayudan a los ciclistas mientras esperan en un semáforo."
},
"source": {
"osmTags": "highway=cyclist_waiting_aid"
},
"title": {
"render": {
"en": "Cyclist Waiting Aid",
"de": "Radfahrer-Wartehilfe",
"es": "Ayuda para ciclistas en espera"
}
},
"pointRendering": [
{
"location": [
@ -18,6 +38,32 @@
"anchor": "bottom"
}
],
"lineRendering": [
{
"width": 1,
"color": "blue"
}
],
"presets": [
{
"title": {
"en": "a cyclist waiting aid",
"de": "eine Radfahrer-Wartehilfe",
"es": "un ciclista espera ayuda"
},
"tags": [
"highway=cyclist_waiting_aid"
],
"description": {
"en": "A footrest, handrail or other aid, to improve comfort while waiting at traffic lights",
"de": "Eine Fußstütze, ein Handlauf oder ein anderes Hilfsmittel zur Verbesserung des Komforts beim Warten an der Ampel",
"es": "Reposapiés, pasamanos u otro tipo de ayuda para mejorar la comodidad durante la espera en los semáforos"
},
"snapToLayer": [
"cycleways_and_roads"
]
}
],
"tagRenderings": [
"images",
{
@ -111,34 +157,6 @@
}
}
],
"lineRendering": [
{
"width": 1,
"color": "blue"
}
],
"credits:uid": 5093765,
"id": "cyclist_waiting_aid",
"description": {
"en": "Various pieces of infrastructure that aid cyclists while they wait at a traffic light.",
"de": "Verschiedene Infrastruktureinrichtungen, die Radfahrern helfen, während sie an einer Ampel warten.",
"es": "Diversas infraestructuras que ayudan a los ciclistas mientras esperan en un semáforo."
},
"source": {
"osmTags": "highway=cyclist_waiting_aid"
},
"name": {
"en": "Cyclist Waiting Aids",
"de": "Radfahrer-Wartehilfen",
"es": "Ayudas a la espera de ciclistas"
},
"title": {
"render": {
"en": "Cyclist Waiting Aid",
"de": "Radfahrer-Wartehilfe",
"es": "Ayuda para ciclistas en espera"
}
},
"deletion": {
"softDeletionTags": {
"and": [
@ -155,24 +173,6 @@
}
},
"allowMove": false,
"presets": [
{
"title": {
"en": "a cyclist waiting aid",
"de": "eine Radfahrer-Wartehilfe",
"es": "un ciclista espera ayuda"
},
"tags": [
"highway=cyclist_waiting_aid"
],
"description": {
"en": "A footrest, handrail or other aid, to improve comfort while waiting at traffic lights",
"de": "Eine Fußstütze, ein Handlauf oder ein anderes Hilfsmittel zur Verbesserung des Komforts beim Warten an der Ampel",
"es": "Reposapiés, pasamanos u otro tipo de ayuda para mejorar la comodidad durante la espera en los semáforos"
},
"snapToLayer": [
"cycleways_and_roads"
]
}
]
"credits": "Robin van der Linde",
"credits:uid": 5093765
}

View file

@ -248,6 +248,38 @@
],
"id": "Still in use?"
},
{
"id": "fee",
"question": {
"en": "Is this drinking water point free to use?",
"nl": "Is dit drinkwaterpunt gratis te gebruiken?",
"de": "Kann diese Trinkwasserstelle kostenlos genutzt werden?",
"ca": "Aquest punt d'aigua potable és d'ús gratuït?",
"es": "¿Es de libre uso este punto de agua potable?"
},
"mappings": [
{
"if": "fee=no",
"then": {
"en": "Free to use",
"nl": "Gratis te gebruiken",
"de": "Die Nutzung ist kostenlos",
"ca": "D'us gratuït",
"es": "Libre de uso"
}
},
{
"if": "fee=yes",
"then": {
"en": "One needs to pay to use this drinking water point",
"nl": "Men moet betalen om dit drinkwaterpunt te gebruiken",
"de": "Die Nutzung ist kostenpflichtig",
"ca": "Cal pagar per utilitzar aquest punt d'aigua potable",
"es": "Hay que pagar para usar este punto de agua potable"
}
}
]
},
{
"id": "type",
"question": {
@ -355,33 +387,51 @@
"id": "Bottle refill"
},
{
"id": "fee",
"id": "temperature-cold",
"question": {
"en": "Is this drinking water point free to use?",
"nl": "Is dit drinkwaterpunt gratis te gebruiken?",
"de": "Kann diese Trinkwasserstelle kostenlos genutzt werden?",
"ca": "Aquest punt d'aigua potable és d'ús gratuït?",
"es": "¿Es de libre uso este punto de agua potable?"
"en": "Is cold water available here?",
"nl": "Is gekoeld water hier beschikbaar?"
},
"multiAnswer": true,
"mappings": [
{
"if": "fee=no",
"if": "iced_water=yes",
"ifnot": "iced_water=no",
"then": {
"en": "Free to use",
"nl": "Gratis te gebruiken",
"de": "Die Nutzung ist kostenlos",
"ca": "D'us gratuït",
"es": "Libre de uso"
"en": "Ice-cold water is provided here",
"nl": "Ijskoud water is hier beschikbaar"
}
},
{
"if": "fee=yes",
"if": "cold_water=yes",
"ifnot": "cold_water=no",
"then": {
"en": "One needs to pay to use this drinking water point",
"nl": "Men moet betalen om dit drinkwaterpunt te gebruiken",
"de": "Die Nutzung ist kostenpflichtig",
"ca": "Cal pagar per utilitzar aquest punt d'aigua potable",
"es": "Hay que pagar para usar este punto de agua potable"
"en": "Actively cooled water is available here",
"nl": "Afgekoeld water is hier beschikbaar"
}
},
{
"if": "room_temperature_water=yes",
"ifnot": "room_temperature_water=no",
"then": {
"en": "Ambient temperature water (without active cooling or heating) is available here",
"nl": "Water aan omgevingstemperatuur (zonder actieve koeling of opwarming) is hier beschikbaar"
}
},
{
"if": "warm_water=yes",
"ifnot": "warm_water=no",
"then": {
"en": "Warmed water is provided here; the water is not dangerously hot",
"nl": "Warm water is hier beschikbaar; het water is niet gevaarlijk heet"
}
},
{
"if": "hot_water=yes",
"ifnot": "hot_water=no",
"then": {
"en": "Hot water is provided here",
"nl": "Heet water is hier beschikbaar"
}
}
]

View file

@ -1,5 +1,6 @@
{
"#":"no-translations",
"#no-index": "yes",
"#dont-translate": "*",
"#filter": "no-auto",
"pointRendering": [

View file

@ -1,13 +1,9 @@
{
"id": "ghostsign",
"title": {
"render": {
"en": "Ghost Sign",
"name": {
"en": "Ghost Signs",
"de": "Geisterzeichen",
"es": "Letrero fantasma",
"ca": "Rètols fantasma",
"cs": "Nápisy na zdech"
}
"es": "Letreros fantasma"
},
"description": {
"en": "Layer showing disused signs on buildings",
@ -16,11 +12,6 @@
"ca": "Capa que mostra rètols en desús dels edificis",
"cs": "Vrstva zobrazující nepoužívané nápisy na budovách"
},
"name": {
"en": "Ghost Signs",
"de": "Geisterzeichen",
"es": "Letreros fantasma"
},
"source": {
"osmTags": {
"and": [
@ -30,11 +21,53 @@
}
},
"minzoom": 10,
"#allowMove": "Normally, a ghost sign is snapped to a wall, so moving won't be possible in most cases, but might still be useful e.g. to snap to a building",
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
"title": {
"render": {
"en": "Ghost Sign",
"de": "Geisterzeichen",
"es": "Letrero fantasma",
"ca": "Rètols fantasma",
"cs": "Nápisy na zdech"
}
},
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "./assets/themes/advertising/wall_painting.svg"
}
]
}
],
"lineRendering": [
{
"color": "blue",
"width": 2
}
],
"presets": [
{
"tags": [
"historic=advertising",
"advertising=wall_painting"
],
"title": {
"en": "a ghost sign",
"de": "ein Geisterzeichen",
"es": "un letrero fantasma",
"ca": "un rètol fantasma",
"cs": "nápis na zdi"
},
"snapToLayer": [
"walls_and_buildings"
],
"maxSnapDistance": 5
}
],
"tagRenderings": [
"images",
"advertising.historic",
@ -96,42 +129,9 @@
}
}
],
"lineRendering": [
{
"color": "blue",
"width": 2
}
],
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "./assets/themes/advertising/wall_painting.svg"
}
]
}
],
"presets": [
{
"tags": [
"historic=advertising",
"advertising=wall_painting"
],
"title": {
"en": "a ghost sign",
"de": "ein Geisterzeichen",
"es": "un letrero fantasma",
"ca": "un rètol fantasma",
"cs": "nápis na zdi"
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
},
"snapToLayer": [
"walls_and_buildings"
],
"maxSnapDistance": 5
}
]
"#allowMove": "Normally, a ghost sign is snapped to a wall, so moving won't be possible in most cases, but might still be useful e.g. to snap to a building"
}

View file

@ -17,6 +17,19 @@
"en": "Insect Hotel",
"nl": "Insectenhotel"
},
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "./assets/layers/insect_hotel/insect_hotel.svg"
}
]
}
],
"presets": [
{
"title": {
@ -31,22 +44,9 @@
"tagRenderings": [
"images"
],
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": "./assets/layers/insect_hotel/insect_hotel.svg"
}
]
}
],
"deletion": true,
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": true
},
"deletion": true
}
}

View file

@ -27,8 +27,8 @@
"_first_user_id:=get(feat)('comments')[0].uid",
"_is_import_note:=(() => {const lines = feat.properties['_first_comment'].split('\\n'); const matchesMapCompleteURL = lines.map(l => l.match(\".*https://mapcomplete.\\(osm.be|org\\)/\\([a-zA-Z_-]+\\)\\(.html\\).*#import\")); const matchedIndexes = matchesMapCompleteURL.map((doesMatch, i) => [doesMatch !== null, i]).filter(v => v[0]).map(v => v[1]); return matchedIndexes[0] })()"
],
"minzoom": 7,
"isShown": "_total_comments>0",
"minzoom": 7,
"title": {
"render": {
"en": "Note",

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -48,21 +48,6 @@
"cs": "Poštovní schránka"
}
},
"keywords": {
"en": [
"post",
"post box",
"letter",
"letterbox"
],
"nl": [
"brieven",
"post",
"brief",
"brievenbus",
"pakjes"
]
},
"pointRendering": [
{
"iconSize": {
@ -176,5 +161,20 @@
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
},
"keywords": {
"en": [
"post",
"post box",
"letter",
"letterbox"
],
"nl": [
"brieven",
"post",
"brief",
"brievenbus",
"pakjes"
]
}
}

View file

@ -0,0 +1,12 @@
[
{
"path": "scouting.svg",
"license": "CC-BY-SA-3.0",
"authors": [
"Daniel Lienert (Brucelie)"
],
"sources": [
"https://commons.wikimedia.org/wiki/File:Deutsche_Pfadfinderschaft_Sankt_Georg.png"
]
}
]

View file

@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<svg
version="1.0"
id="Layer_2"
x="0px"
y="0px"
width="200"
height="200"
viewBox="0 0 232.50928 236.52539"
enable-background="new 0 0 232.50928 236.52539"
xml:space="preserve"
sodipodi:version="0.32"
inkscape:version="1.3.2 (1:1.3.2+202311252150+091e20ef0f)"
sodipodi:docname="WikiProject_Scouting_fleur-de-lis_outline.svg"
inkscape:output_extension="org.inkscape.output.svg.inkscape"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:ns="http://ns.adobe.com/SaveForWeb/1.0/"><defs
id="defs24033"><inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 118.2627 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="232.50928 : 118.2627 : 1"
inkscape:persp3d-origin="116.25464 : 78.841797 : 1"
id="perspective24035" />
</defs><sodipodi:namedview
inkscape:window-height="1005"
inkscape:window-width="1920"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="1.5041679"
inkscape:cx="103.04701"
inkscape:cy="144.59822"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:current-layer="Layer_2"
inkscape:showpageshadow="2"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:window-maximized="1" />
<metadata
id="metadata24010">
<ns:sfw>
<ns:slices />
<ns:sliceSourceBounds
x="344.4126"
y="117.97492"
width="232.50928"
height="236.52509"
bottomLeftOrigin="true">
</ns:sliceSourceBounds>
</ns:sfw>
<rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata>
<path
d="m 36.606838,157.83553 c 0,0 -33.4615409,-10.40327 -33.4615409,-40.49081 0,-30.086597 21.3700739,-36.835542 28.9624039,-37.398112 7.591849,-0.561618 46.676714,2.531093 56.237568,55.956282 9.559892,53.42614 0,71.14093 -16.590604,71.70351 -7.229099,0.24631 -16.589652,-1.68772 -16.308367,-23.90116 0,0 27.928788,11.18627 25.869211,-21.08927 -0.549154,-8.60439 -4.076974,-25.30713 -22.495223,-26.1505 9e-6,-1e-5 -16.590123,-1.96853 -22.213448,21.37006 z"
id="path24014"
style="fill:#ffffff;stroke:#000000;stroke-width:2.36526" /><path
d="m 195.90292,157.83553 c 0,0 33.46106,-10.40327 33.46106,-40.49081 0,-30.086597 -21.37007,-36.835542 -28.9624,-37.398112 -7.59233,-0.561618 -46.6772,2.531093 -56.23709,55.956282 -9.56085,53.42614 0,71.14093 16.58965,71.70351 7.23198,0.24631 16.59061,-1.68772 16.30884,-23.90116 0,0 -27.92926,11.18627 -25.86874,-21.08927 0.54916,-8.60439 4.07698,-25.30713 22.49426,-26.1505 1e-5,-1e-5 16.59063,-1.96853 22.21442,21.37006 z"
id="path24016"
style="fill:#ffffff;stroke:#000000;stroke-width:2.36526" /><path
d="m 129.33157,163.46222 c 5.49442,-21.8119 11.46037,-44.47962 14.80226,-53.99064 C 151.4444,88.664077 175.99151,47.610207 116.94157,3.1828205 57.892571,47.610688 82.440659,88.664077 89.751223,109.47158 c 3.204845,9.12096 8.823852,30.34439 14.126597,51.30811 z"
id="path24024"
style="fill:#ffffff;stroke:#000000;stroke-width:2.36526;stroke-linecap:round;stroke-linejoin:round"
sodipodi:nodetypes="cccccc" /><path
d="m 129.67851,166.83381 c -0.11405,-1.10502 -0.23097,-2.2407 -0.34694,-3.3716 l -25.45375,-2.68253 c -0.21468,2.05574 -0.42648,4.0856 -0.62966,6.05413 -5.061233,48.92652 -18.558173,57.36224 -18.558173,57.36224 35.429583,21.37007 63.546693,-1.40596 63.546693,-1.40596 0,0 -13.49694,-7.02975 -18.55817,-55.95628 z"
id="path24026"
style="fill:#ffffff;stroke:#000000;stroke-width:2.36526;stroke-linecap:round;stroke-linejoin:round"
sodipodi:nodetypes="ccccccc" /><path
d="m 169.24257,164.11679 c 0,3.73195 -2.61831,6.76141 -5.84519,6.76141 H 70.486714 c -3.228801,0 -5.846149,-3.02945 -5.846149,-6.76141 v 0 c 0,-3.73482 2.617348,-6.76237 5.846149,-6.76237 h 92.910656 c 3.22689,0 5.8452,3.02754 5.8452,6.76237 z"
id="path24030"
style="fill:#ffffff;stroke:#000000;stroke-width:2.36526;stroke-linecap:round;stroke-linejoin:round" /></svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

View file

@ -0,0 +1,2 @@
SPDX-FileCopyrightText: Daniel Lienert (Brucelie)
SPDX-License-Identifier: CC-BY-SA-3.0

View file

@ -0,0 +1,93 @@
{
"id": "scouting_group",
"name": {
"en": "Scouting groups",
"de": "Pfadfinder:innenstämme"
},
"description": {
"en": "A map showing scouting groups."
},
"source": {
"osmTags": "club=scout"
},
"minzoom": 4,
"title": {
"render": {
"en": "{name}"
}
},
"pointRendering": [
{
"location": [
"point",
"centroid"
],
"marker": [
{
"icon": {
"builtin": "nsi_brand.icon",
"override": {
"render": "./assets/layers/scouting_group/scouting.svg"
}
}
}
]
}
],
"lineRendering": [
{
"width": 1,
"color": "blue"
}
],
"presets": [
{
"title": {
"en": "scouting group",
"de": "Pfadfinder:innenstamm"
},
"tags": [
"club=scout"
]
}
],
"tagRenderings": [
{
"question": {
"de": "Was ist der Stammesname?",
"en": "What is the name of this group?"
},
"render": {
"en": "The name of this group is {name}",
"de": "Dieser Stamm heißt {name}"
},
"freeform": {
"key": "name"
},
"id": "name"
},
{
"question": {
"de": "Zu welchem Verband/Bund gehört {name}",
"en": "To which scout association does {name} belong?"
},
"render": {
"en": "The scout association of this group is {brand}",
"de": "Dieser Stamm ist im Verband {brand}"
},
"freeform": {
"key": "brand"
},
"id": "association"
},
"contact",
"questions",
"mastodon"
],
"filter": [
"nsi_brand.brand"
],
"allowMove": true,
"credits": "Osmwithspace",
"credits:uid": 8770388
}

View file

@ -8,24 +8,6 @@
},
"source": "special",
"title": "{display_name}",
"tagRenderings": [
{
"id": "intro",
"render": {
"en": "Search result",
"de": "Suchergebnis",
"cs": "Výsledek hledání",
"es": "Resultado de búsqueda"
}
},
{
"id": "osm",
"render": {
"*": "<a href='https://openstreetmap.org/{osm_type}/{osm_id}'>On OpenStreetMap</a>"
}
},
"all_tags"
],
"pointRendering": [
{
"location": [
@ -68,5 +50,23 @@
"label": "{display_name}",
"labelCssClasses": "bg-white rounded p-2 no-wrap"
}
],
"tagRenderings": [
{
"id": "intro",
"render": {
"en": "Search result",
"de": "Suchergebnis",
"cs": "Výsledek hledání",
"es": "Resultado de búsqueda"
}
},
{
"id": "osm",
"render": {
"*": "<a href='https://openstreetmap.org/{osm_type}/{osm_id}'>On OpenStreetMap</a>"
}
},
"all_tags"
]
}

View file

@ -108,7 +108,7 @@
},
{
"icon": {
"builtin": "id_presets.shop_rendering",
"builtin": "nsi_brand.icon",
"override": {
"render": "./assets/layers/id_presets/maki-shop.svg",
"+mappings": [

View file

@ -315,6 +315,14 @@
"cs": "Toto je skatepark",
"es": "Este es un skatepark"
}
},
{
"if": "sport=equestrian",
"then": {
"en": "This is a horse riding arena",
"de": "Dies ist ein Reitplatz",
"es": "Esta es una pista ecuestre"
}
}
],
"id": "sport_pitch-sport",

View file

@ -11,29 +11,11 @@
"source": {
"osmTags": "information=tactile_map"
},
"minzoom": 10,
"title": {
"en": "Tactile Map",
"de": "Taktile Karte"
},
"presets": [
{
"tags": [
"tourism=information",
"information=tactile_map"
],
"title": {
"en": "a tactile map",
"de": "eine taktile Karte"
},
"description": {
"en": "A tactile map that can be read using touch. Unlike a tactile model, this is relatively flat and does not feature three-dimensional buildings and such.",
"de": "Eine taktile Karte, die durch Berühren gelesen werden kann. Im Gegensatz zu einem taktilen Modell ist diese Karte relativ flach und enthält keine dreidimensionalen Gebäude oder ähnliches."
}
}
],
"deletion": true,
"allowMove": true,
"minzoom": 10,
"pointRendering": [
{
"marker": [
@ -51,6 +33,22 @@
]
}
],
"presets": [
{
"tags": [
"tourism=information",
"information=tactile_map"
],
"title": {
"en": "a tactile map",
"de": "eine taktile Karte"
},
"description": {
"en": "A tactile map that can be read using touch. Unlike a tactile model, this is relatively flat and does not feature three-dimensional buildings and such.",
"de": "Eine taktile Karte, die durch Berühren gelesen werden kann. Im Gegensatz zu einem taktilen Modell ist diese Karte relativ flach und enthält keine dreidimensionalen Gebäude oder ähnliches."
}
}
],
"tagRenderings": [
"images",
{
@ -162,5 +160,7 @@
}
},
"website"
]
],
"deletion": true,
"allowMove": true
}

View file

@ -11,10 +11,24 @@
"source": {
"osmTags": "information=tactile_model"
},
"minzoom": 10,
"title": {
"en": "Tactile Model",
"de": "Taktiles Modell"
},
"pointRendering": [
{
"marker": [
{
"icon": "./assets/layers/tactile_model/tactile_model.svg"
}
],
"location": [
"point",
"centroid"
]
}
],
"presets": [
{
"tags": [
@ -31,22 +45,6 @@
}
}
],
"deletion": true,
"allowMove": true,
"minzoom": 10,
"pointRendering": [
{
"marker": [
{
"icon": "./assets/layers/tactile_model/tactile_model.svg"
}
],
"location": [
"point",
"centroid"
]
}
],
"tagRenderings": [
"images",
{
@ -176,5 +174,7 @@
}
},
"website"
]
],
"deletion": true,
"allowMove": true
}

View file

@ -186,6 +186,19 @@
],
"tagRenderings": [
"images",
{
"id": "toilet-reviews",
"render": {
"special": {
"type": "reviews",
"fallback": "toilet",
"question": {
"en": "How would you rate this toilet?",
"nl": "Hoe goed is deze toilet?"
}
}
}
},
"level",
{
"question": {

View file

@ -29,6 +29,7 @@
"calculatedTags": [
"_vending_count=feat.properties.vending.split(';').length"
],
"minzoom": 13,
"title": {
"render": {
"en": "Vending machine",

View file

@ -62,7 +62,7 @@
},
"icon": "./assets/themes/charging_stations/logo.svg",
"layers": [
"charging_station"
],
"widenFactor": 1.5
"charging_station",
"charge_point"
]
}

View file

@ -164,7 +164,7 @@
"pl": "<span class='subtle'><a href='#{_embedding_feature:id}'>Obiekt zawarty</a> stwierdza, że jest on</span> publicznie dostępny<br/>{_embedding_feature:access:description}",
"uk": "<span class='subtle'>У <a href='#{_embedding_feature:id}'>що містить об'єкт</a> зазначено, що це</span> загальнодоступне<br/>{_embedding_feature:access:description}",
"zh_Hant": "<span class='subtle'><a href='#{_embedding_feature:id}'>強調這邊</a>包含</span> 公共可及的圖徵<br/>{_embedding_feature:access:description}",
"ko": "<span class='subtle'>이<a href='#{_embedding_feature:id}'>포함된 요소</a>따르면, 이는</span>접근이 가능합니다<br/>{_embedding_feature:access:description"
"ko": "<span class='subtle'>이<a href='#{_embedding_feature:id}'>포함된 요소</a>따르면, 이는</span>접근이 가능합니다<br/>{_embedding_feature:access:description}"
}
},
{

View file

@ -9,15 +9,6 @@
"nl": "Wijzigingen gemaakt met MapComplete",
"ko": "MapComplete로 이루어진 변경 사항"
},
"shortDescription": {
"en": "Shows changes made by MapComplete",
"de": "Zeigt die von MapComplete vorgenommenen Änderungen an",
"cs": "Zobrazuje změny provedené nástrojem MapComplete",
"es": "Muestra los cambios realizados por MapComplete",
"fr": "Afficher les modifications faites avec MapComplete",
"nl": "Toont wijzigingen gemaakt met MapComplete",
"ko": "MapComplete를 통해 이루어진 변경 사항을 표시합니다"
},
"description": {
"en": "This maps shows all the changes made with MapComplete",
"de": "Diese Karte zeigt alle mit MapComplete vorgenommenen Änderungen",
@ -28,11 +19,17 @@
"nl": "Deze kaarten tonen alle wijzigingen die zijn gemaakt met MapComplete",
"ko": "이 지도는 MapComplete를 사용하여 이루어진 모든 변경 사항을 표시합니다"
},
"shortDescription": {
"en": "Shows changes made by MapComplete",
"de": "Zeigt die von MapComplete vorgenommenen Änderungen an",
"cs": "Zobrazuje změny provedené nástrojem MapComplete",
"es": "Muestra los cambios realizados por MapComplete",
"fr": "Afficher les modifications faites avec MapComplete",
"nl": "Toont wijzigingen gemaakt met MapComplete",
"ko": "MapComplete를 통해 이루어진 변경 사항을 표시합니다"
},
"icon": "./assets/svg/logo.svg",
"hideFromOverview": true,
"startLat": 0,
"startLon": 0,
"startZoom": 1,
"layers": [
{
"id": "mapcomplete-changes",
@ -494,6 +491,10 @@
"if": "theme=rainbow_crossings",
"then": "./assets/themes/rainbow_crossings/logo.svg"
},
{
"if": "theme=scouting",
"then": "./assets/layers/scouting_group/scouting.svg"
},
{
"if": "theme=shops",
"then": "./assets/themes/shops/shop.svg"

View file

@ -0,0 +1,14 @@
{
"id": "scouting",
"title": {
"en": "Scouting groups"
},
"description": {
"en": "A scouting group is a social youth movement with a heavy emphasis on the outdoors. Activities range from camping, hiking, aquatics, backpacking, exploring nature, ..."
},
"icon": "./assets/layers/scouting_group/scouting.svg",
"defaultBackgroundId": "protomaps.dark",
"layers": [
"scouting_group"
]
}

View file

@ -62,7 +62,10 @@
"override": {
"isCounted": false,
"name": null,
"minzoom": 18
"minzoom": 16,
"=filter": {
"sameAs": "vending_machine"
}
}
},
{
@ -70,7 +73,10 @@
"override": {
"isCounted": false,
"name": null,
"minzoom": 18
"minzoom": 13,
"=filter": {
"sameAs": "vending_machine"
}
}
},
{
@ -78,7 +84,10 @@
"override": {
"isCounted": false,
"name": null,
"minzoom": 18
"minzoom": 16,
"=filter": {
"sameAs": "vending_machine"
}
}
}
]

View file

@ -616,7 +616,28 @@
"title": "MapComplete"
},
"inspector": {
"menu": "Überprüfe einen Beitragenden"
"menu": "Überprüfe einen Beitragenden",
"backToIndex": "Zurück zur Kartenübersicht",
"createdBy": "Erstellt von {contributor}",
"images": "Erstellte Bilder",
"load": "Änderungen für Kartenbereich prüfen",
"mapView": "Karte",
"onlyGeometry": "Nur geometrische Veränderungen",
"previouslySpied": {
"remove": "Entfernen",
"time": "Zeitpunkt der letzten Überprüfung",
"title": "Zuvor geprüfte Beitragende",
"username": "Benutzername",
"allChanges": "Lade alle Änderungen für Benutzer mit diesem Label",
"addLabel": "Ein Label hinzufügen",
"label": "Label",
"noLabels": "Keine Labels"
},
"tableView": "Übersicht",
"answeredCountTimes": "{count} mal beantwortet",
"earlierInspected": "Sieh dir Mitwirkende an, die du bereits überprüft hast",
"title": "Überprüfe einen Mitwirkenden",
"aggregateView": "Zusammenfassen"
},
"move": {
"cancel": "Einen anderen Grund auswählen",

View file

@ -144,13 +144,13 @@
"import": {
"hasBeenImported": "이 객체는 추가되었습니다",
"howToTest": "테스트하려면 URL에 <b>test=true</b> 또는 <b>backend=osm-test</b>를 추가하세요. 변경사항은 콘솔에 출력됩니다. 실제로 가져오기 버튼을 활성화하려면 이 테마를 공식화하기 위한 PR을 열어주세요.",
"importTags": "이 요소는에 {tag}가 부여됩니다",
"importTags": "이 요소는에 {tags}가 부여됩니다",
"officialThemesOnly": "비공식 테마에서는 사고를 방지하기 위해 가져오기 버튼이 비활성화됩니다",
"wrongType": "이 요소는 경로나 길이 아니기 때문에 추가할 수 없습니다",
"wrongTypeToConflate": "이 요소는 경로나 길이 아니기 때문에, 통합할 수 없습니다",
"zoomInMore": "이 요소를 추가하기 위해서 확대하세요"
},
"importTags": "이 요소는에 {tag}가 부여됩니다",
"importTags": "이 요소는에 {tags}가 부여됩니다",
"intro": "데이터가 없는 영역을 클릭했습니다.<br/>",
"layerNotEnabled": "기능을 추가하려면 레이어 {layer}를 먼저 활성화해야 합니다",
"openLayerControl": "레이어 조정 상자 열기",

View file

@ -2732,7 +2732,7 @@
},
"3": {
"mappings": {
"then": "{{description}} liefert maximal {{commonOutput}} A"
"then": "{{description}} liefert maximal {{commonOutput}}"
},
"question": "Welche Leistung liefert ein einzelner Stecker des Typs {{description}}?",
"render": "{{description}} liefert maximal {canonical({{key}}:output)}"
@ -10194,6 +10194,9 @@
},
"6": {
"then": "Dies ist ein Skatepark"
},
"7": {
"then": "Dies ist ein Reitplatz"
}
},
"question": "Welche Sportarten können hier gespielt werden?",

View file

@ -2327,6 +2327,28 @@
"render": "Camper site {name}"
}
},
"charge_point": {
"description": "Layer showing individual charge points within a charging station",
"name": "Charge points",
"presets": {
"0": {
"description": "Add an individual charge point within a larger charging station",
"title": "a charge point"
}
},
"tagRenderings": {
"ref": {
"freeform": {
"placeholder": "Reference number of the charge point, e.g. 2126"
},
"question": "What is the reference number of this charge point?",
"render": "The reference of this charge point is {ref}"
}
},
"title": {
"render": "Charge point"
}
},
"charging_station": {
"description": "A charging station",
"filter": {
@ -2761,7 +2783,7 @@
},
"3": {
"mappings": {
"then": "{{description}} outputs at most {{commonOutput}} A"
"then": "{{description}} outputs at most {{commonOutput}}"
},
"question": "What power output does a single plug of type {{description}} offer?",
"render": "{{description}} outputs at most {canonical({{key}}:output)}"
@ -10308,6 +10330,9 @@
},
"6": {
"then": "This is a skatepark"
},
"7": {
"then": "This is a horse riding arena"
}
},
"question": "Which sport can be played here?",
@ -11561,6 +11586,13 @@
},
"question": "Does one have to bring their own toilet paper to this toilet?"
},
"toilet-reviews": {
"render": {
"special": {
"question": "How would you rate this toilet?"
}
}
},
"toilets-changing-table": {
"mappings": {
"0": {

View file

@ -2724,7 +2724,7 @@
},
"3": {
"mappings": {
"then": "{{description}} entrega como máximo {{commonOutput}} A"
"then": "{{description}} entrega como máximo {{commonOutput}}"
},
"question": "¿Qué potencia de salida ofrece un solo enchufe del tipo {{description}}?",
"render": "{{description}} entrega como máximo {canonical({{key}}:output)}"
@ -10159,6 +10159,9 @@
},
"6": {
"then": "Este es un skatepark"
},
"7": {
"then": "Esta es una pista ecuestre"
}
},
"question": "¿Qué deporte se puede practicar aquí?",

View file

@ -2728,7 +2728,7 @@
},
"3": {
"mappings": {
"then": "{{description}} levert een vermogen van maximaal {{commonOutput}} A"
"then": "{{description}} levert een vermogen van maximaal {{commonOutput}}"
},
"question": "Welk vermogen levert een enkele stekker van type {{description}}?",
"render": "{{description}} levert een vermogen van maximaal {canonical({{key}}:output)}"
@ -9419,6 +9419,13 @@
},
"question": "Moet je je eigen toiletpapier meenemen naar deze toilet?"
},
"toilet-reviews": {
"render": {
"special": {
"question": "Hoe goed is deze toilet?"
}
}
},
"toilets-changing-table": {
"mappings": {
"0": {

View file

@ -176,7 +176,7 @@
"0": {
"mappings": {
"0": {
"then": "<span class='subtle'>이<a href='#{_embedding_feature:id}'>포함된 요소</a>따르면, 이는</span>접근이 가능합니다<br/>{_embedding_feature:access:description"
"then": "<span class='subtle'>이<a href='#{_embedding_feature:id}'>포함된 요소</a>따르면, 이는</span>접근이 가능합니다<br/>{_embedding_feature:access:description}"
},
"1": {
"then": "<span class='subtle'>이 <a href='#{_embedding_feature:id}'>포함된 요소</a>에 따르면,</span>접근을 위한 허가가 필요합니다<br/>{_embedding_feature:access:description}"

View file

@ -34,6 +34,7 @@
},
"trees": {
"description": "Mapeie todas as árvores!",
"title": "Árvores"
"title": "Árvores",
"shortDescription": "Mapeie todas as árvores"
}
}

View file

@ -463,7 +463,8 @@
},
"maps": {
"shortDescription": "Ця тема показує всі (туристичні) мапи, які відомі OpenStreetMap",
"title": "Мапа мап"
"title": "Мапа мап",
"description": "На цій карті ви можете знайти всі карти, які знає OpenStreetMap - зазвичай це велика карта на інформаційному щиті, на якій показано місцевість, місто чи регіон, напр. туристична карта на зворотному боці рекламного щита, карта природного заповідника, карта велосипедних мереж регіону, ...) <br/><br/>Якщо карта відсутня, ви можете легко нанести на неї карту на OpenStreetMap."
},
"maxspeed": {
"shortDescription": "Ця мапа показує дозволену законом максимальну швидкість на кожній дорозі.",

View file

@ -351,23 +351,71 @@
"description": "單車街道是<b>機動車輛受限制,只允許單車通行</b>的道路。通常會有路標顯示特別的交通指標。單車街道通常在荷蘭、比利時看到,但德國與法國也有。 ",
"layers": {
"0": {
"name": "單車街道"
"name": "單車街道",
"description": "單車街道是機動車輛不被允許超車單車"
},
"1": {
"name": "將來的單車街道",
"title": {
"render": "將來的單車街道"
"render": "將來的單車街道",
"mappings": {
"0": {
"then": "{name} 不久會變成單車街道"
}
}
},
"description": "這條道路即將成為單車街道"
},
"2": {
"name": "所有道路",
"title": {
"render": "街道"
}
},
"description": "標記任何道路都是單車街道的圖層"
}
},
"shortDescription": "單車街道的地圖",
"title": "單車街道"
"title": "單車街道",
"overrideAll": {
"+tagRenderings": {
"0": {
"mappings": {
"4": {
"then": "這條道路即將成為單車街道"
},
"0": {
"then": "這條道路是單車街道 (而且有速限30km/h)"
},
"1": {
"then": "這條道路是單車街道"
},
"5": {
"then": "這條道路即將成為單車道路"
},
"6": {
"then": "這條道路並非單車街道"
}
},
"question": "這條道路<b>{name}</b>是單車街道嗎?"
},
"1": {
"mappings": {
"1": {
"then": "允許機動車輛通行"
},
"0": {
"then": "允許居民通行"
},
"2": {
"then": "允許機車通行"
},
"3": {
"then": "允許汽車通行"
}
}
}
}
}
},
"cyclofix": {
"description": "這份地圖的目的是為單車騎士能夠輕易顯示滿足他們需求的相關設施。<br><br>你可以追蹤你確切位置 (只有行動版),以及在左下角選擇相關的圖層。你可以使用這工具在地圖新增或編輯釘子,以及透過回答問題來提供更多資訊。<br><br>所有你的變動都會自動存在開放街圖這全球資料圖,並且能被任何人自由取用。<br><br>你可以到 <a href='https://cyclofix.osm.be/'>cyclofix.osm.be</a> 閱讀更多資訊。",

View file

@ -670,10 +670,27 @@
"anonymous": "Анонімний користувач",
"isClosed": "Це зауваження вирішено",
"reopenNote": "Повторно відкрити нотатку",
"reopenNoteAndComment": "Повторно відкрити нотатку та коментар"
"reopenNoteAndComment": "Повторно відкрити нотатку та коментар",
"createNoteTitle": "Створіть нову нотатку тут",
"creating": "Створення нотатки…",
"disableAllNoteFilters": "Вимкнути всі фільтри",
"isCreated": "Ваша нотатка створена!",
"loginToAddComment": "Увійдіть, щоб додати коментар",
"loginToClose": "Увійдіть, щоб закрити цю нотатку",
"noteLayerHasFilters": "Деякі нотатки можуть бути приховані фільтром",
"textNeeded": "Введіть описовий текст, щоб створити нотатку",
"typeText": "Введіть текст, щоб додати коментар",
"createNote": "Створити нову нотатку",
"noteLayerNotEnabled": "Шар з нотатками не увімкнено. Щоб додати нову нотатку, цей шар потрібно увімкнути",
"noteLayerDoEnable": "Увімкнення шару з нотатками",
"createNoteIntro": "Щось не так або чогось не вистачає на карті? Створіть нотатку тут. Вони будуть перевірені волонтерами.",
"warnAnonymous": "Ви не ввійшли в систему. Ми не зможемо зв'язатися з вами, щоб вирішити вашу проблему."
},
"plantDetection": {
"loadingWikidata": "Завантаження інформації про {species}…"
"loadingWikidata": "Завантаження інформації про {species}…",
"back": "Повернутися до огляду видів",
"button": "Автоматично визначайте види рослин за допомогою штучного інтелекту Plantnet.org",
"confirm": "Вибрати види"
},
"privacy": {
"editingIntro": "Коли ви вносите зміни до мапи, ці зміни записуються на OpenStreetMap і стають загальнодоступними для всіх. Набір змін, зроблених за допомогою MapComplete, містить наступні дані:",

27
package-lock.json generated
View file

@ -57,13 +57,12 @@
"jspdf": "^2.5.1",
"latlon2country": "^1.2.6",
"libphonenumber-js": "^1.10.8",
"lz-string": "^1.4.4",
"mangrove-reviews-typescript": "^1.1.0",
"maplibre-gl": "^4.1.1",
"marked": "^12.0.2",
"monaco-editor": "^0.46.0",
"mvt-to-geojson": "^0.0.5",
"name-suggestion-index": "^6.0.20240422",
"name-suggestion-index": "^6.0.20250105",
"npm": "^10.7.0",
"opening_hours": "^3.6.0",
"osm-auth": "^2.5.0",
@ -13776,13 +13775,6 @@
"yallist": "^3.0.2"
}
},
"node_modules/lz-string": {
"version": "1.4.4",
"license": "WTFPL",
"bin": {
"lz-string": "bin/bin.js"
}
},
"node_modules/magic-string": {
"version": "0.27.0",
"dev": true,
@ -14519,16 +14511,16 @@
}
},
"node_modules/name-suggestion-index": {
"version": "6.0.20240422",
"resolved": "https://registry.npmjs.org/name-suggestion-index/-/name-suggestion-index-6.0.20240422.tgz",
"integrity": "sha512-NP0QJfCGKkpduNruS6dM8U7uA//EjyH4Kw+lavUWuQxOl0QxhFVF9caMh3UPvDZgqdMOMpyi/z195rjieAAPyQ==",
"version": "6.0.20250105",
"resolved": "https://registry.npmjs.org/name-suggestion-index/-/name-suggestion-index-6.0.20250105.tgz",
"integrity": "sha512-L6QzLGxgLDKH4tcaHjwUxHm1V7tIWWTec9hzWz7THZwYvtJcK7GMU//JQMt2RcghrmTXRlXyWoSXyPaFaqUc1w==",
"dependencies": {
"diacritics": "^1.3.0",
"run-s": "^0.0.0",
"which-polygon": "^2.2.1"
},
"engines": {
"node": ">=18"
"node": "^18.20 || >=20.10"
}
},
"node_modules/nanoid": {
@ -32603,9 +32595,6 @@
"yallist": "^3.0.2"
}
},
"lz-string": {
"version": "1.4.4"
},
"magic-string": {
"version": "0.27.0",
"dev": true,
@ -33116,9 +33105,9 @@
}
},
"name-suggestion-index": {
"version": "6.0.20240422",
"resolved": "https://registry.npmjs.org/name-suggestion-index/-/name-suggestion-index-6.0.20240422.tgz",
"integrity": "sha512-NP0QJfCGKkpduNruS6dM8U7uA//EjyH4Kw+lavUWuQxOl0QxhFVF9caMh3UPvDZgqdMOMpyi/z195rjieAAPyQ==",
"version": "6.0.20250105",
"resolved": "https://registry.npmjs.org/name-suggestion-index/-/name-suggestion-index-6.0.20250105.tgz",
"integrity": "sha512-L6QzLGxgLDKH4tcaHjwUxHm1V7tIWWTec9hzWz7THZwYvtJcK7GMU//JQMt2RcghrmTXRlXyWoSXyPaFaqUc1w==",
"requires": {
"diacritics": "^1.3.0",
"run-s": "^0.0.0",

View file

@ -97,7 +97,7 @@
"reset:translations": "vite-node scripts/generateTranslations.ts -- --ignore-weblate",
"generate:layouts": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayouts.ts",
"generate:docs": "rm -rf Docs/Themes/* && rm -rf Docs/Layers/* && rm -rf Docs/TagInfo && mkdir Docs/TagInfo && export NODE_OPTIONS=\"--max-old-space-size=16000\" && vite-node scripts/generateDocs.ts && vite-node scripts/generateTaginfoProjectFiles.ts",
"generate:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts",
"generate:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=16000\" && vite-node scripts/generateLayerOverview.ts",
"generate:mapcomplete-changes-theme": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts -- --generate-change-map",
"refresh:layeroverview": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && vite-node scripts/generateLayerOverview.ts -- --force",
"generate:licenses": "vite-node scripts/generateLicenseInfo.ts -- --no-fail",
@ -116,7 +116,8 @@
"velopark:compare": "vite-node scripts/velopark/compare.ts -- velopark_nonsynced_.geojson ~/Projecten/OSM/Fietsberaad/2024-02-02\\ Fietsenstallingen_OSM_met_velopark_ref.geojson\n",
"velopark:download": "vite-node scripts/velopark/veloParkToGeojson.ts ",
"### 1": "CODE AND DATA MAINTAINENCE",
"download:nsi-logos": "vite-node scripts/downloadNsiLogos.ts || npm run downloadNsiLogos # This script crashes often without the possibility to correct - hence the auto retry with OR",
"download:nsi-logos": "vite-node scripts/downloadNsiLogos.ts || npm run download:nsi-logos # This script crashes often without the possibility to correct - hence the auto retry with OR",
"download:nsi": "npm i name-suggestion-index && vite-node scripts/generateStats.ts && npm run download:nsi-logos",
"download:editor-layer-index": "vite-node scripts/downloadEli.ts",
"download:stats": "vite-node scripts/GenerateSeries.ts",
"download:images": "vite-node scripts/generateImageAnalysis.ts -- ~/data/imgur-image-backup/",
@ -132,7 +133,7 @@
"optimize-images-scaledown-jpg": "cd assets/ && find . -regextype sed -regex \".*/.*.\\(jpg\\|JPG\\|JPEG\\|jpeg\\)\" -exec mogrify -resize 640x640\\> '{}' \\; && echo 'JPGs are optimized'",
"generate:schemas": "export NODE_OPTIONS=\"--max-old-space-size=8192\" && ts2json-schema -p src/Models/ThemeConfig/Json/ -o Docs/Schemas/ -t tsconfig.json -R . -m \".*ConfigJson\" && echo 'tsjson is done' && vite-node scripts/fixSchemas.ts ",
"reuse-compliance": "reuse lint",
"housekeeping": "export NODE_OPTIONS=\"--max-old-space-size=1200\" && git pull && npx update-browserslist-db@latest && npm run generate && npm run generate:docs && npm run generate:schemas && npm run generate:contributor-list && vite-node scripts/fetchLanguages.ts && vite-node scripts/generateSunnyUnlabeled.ts && npm run format && git add assets/ langs/ Docs/ **/*.ts Docs/* src/* && git commit -m 'chore: automated housekeeping...'",
"housekeeping": "export NODE_OPTIONS=\"--max-old-space-size=1200\" && git pull && npx update-browserslist-db@latest && npm run generate && npm run generate:docs && npm run generate:schemas && npm run generate:contributor-list && vite-node scripts/fetchLanguages.ts && download:nsi && vite-node scripts/generateSunnyUnlabeled.ts && npm run format && git add assets/ langs/ Docs/ **/*.ts Docs/* src/* && git commit -m 'chore: automated housekeeping...'",
"###": "MICROSERVICES AND SERVER MAINTAINENCE",
"release": "standard-version && git push --follow-tags",
"release:minor": "standard-version --release-as minor",
@ -212,13 +213,12 @@
"jspdf": "^2.5.1",
"latlon2country": "^1.2.6",
"libphonenumber-js": "^1.10.8",
"lz-string": "^1.4.4",
"mangrove-reviews-typescript": "^1.1.0",
"maplibre-gl": "^4.1.1",
"marked": "^12.0.2",
"monaco-editor": "^0.46.0",
"mvt-to-geojson": "^0.0.5",
"name-suggestion-index": "^6.0.20240422",
"name-suggestion-index": "^6.0.20250105",
"npm": "^10.7.0",
"opening_hours": "^3.6.0",
"osm-auth": "^2.5.0",

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

View file

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="536" height="490" version="1.0" xmlns="http://www.w3.org/2000/svg">
<path d="m1.2179 299.5 161.65-0.51173 105.44 74.759 105.19-74.778 161.32 0.53085-265.58 190.5-1.3696-0.0466zm-1.2179-299.5h103.26l164.83 116.06 164.89-116.06h103.02v250h-102v-139.35l-165.36 118.42-1.3431-0.51538-164.79-116.54-0.51369 137.98h-101.99z" fill="#0e6abc"/>
</svg>

After

Width:  |  Height:  |  Size: 395 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4 KiB

Some files were not shown because too many files have changed in this diff Show more