diff --git a/assets/layers/address/address.json b/assets/layers/address/address.json
index 519fe5266..92ee8cf22 100644
--- a/assets/layers/address/address.json
+++ b/assets/layers/address/address.json
@@ -263,7 +263,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"label": {
"render": "
{addr:housenumber}
",
@@ -294,7 +294,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": {
"render": "#00f",
diff --git a/assets/layers/advertising/advertising.json b/assets/layers/advertising/advertising.json
index 6b0a2ad7a..89380778e 100644
--- a/assets/layers/advertising/advertising.json
+++ b/assets/layers/advertising/advertising.json
@@ -934,138 +934,6 @@
}
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "./assets/themes/advertising/sign.svg",
- "mappings": [
- {
- "if": {
- "or": [
- "advertising=billboard"
- ]
- },
- "then": "./assets/themes/advertising/billboard.svg"
- },
- {
- "if": "advertising=board",
- "then": "./assets/themes/advertising/board.svg"
- },
- {
- "if": "advertising=column",
- "then": "./assets/themes/advertising/column.svg"
- },
- {
- "if": "advertising=flag",
- "then": "./assets/themes/advertising/flag.svg"
- },
- {
- "if": {
- "and": [
- "advertising=poster_box",
- "_referencing_ways=[\"way/-1\"]"
- ]
- },
- "then": "brick_wall_square;./assets/themes/advertising/poster_box_no_support.svg"
- },
- {
- "if": {
- "and": [
- "advertising=poster_box",
- "_referencing_ways~*"
- ]
- },
- "then": "./assets/themes/advertising/poster_box_no_support.svg"
- },
- {
- "if": "advertising=poster_box",
- "then": "./assets/themes/advertising/poster_box.svg"
- },
- {
- "if": {
- "and": [
- "advertising=screen",
- "_referencing_ways=[\"way/-1\"]"
- ]
- },
- "then": "brick_wall_square;./assets/themes/advertising/screen_no_support.svg"
- },
- {
- "if": {
- "and": [
- "advertising=screen",
- "_referencing_ways~*"
- ]
- },
- "then": "./assets/themes/advertising/screen_no_support.svg"
- },
- {
- "if": "advertising=screen",
- "then": "./assets/themes/advertising/screen.svg"
- },
- {
- "if": "advertising=sculpture",
- "then": "./assets/themes/advertising/sculpture.svg"
- },
- {
- "if": {
- "and": [
- "advertising=sign",
- "_referencing_ways=[\"way/-1\"]"
- ]
- },
- "then": "brick_wall_square;./assets/themes/advertising/sign.svg"
- },
- {
- "if": "advertising=sign",
- "then": "./assets/themes/advertising/sign.svg"
- },
- {
- "if": "advertising=tarp",
- "then": "./assets/themes/advertising/tarp.svg"
- },
- {
- "if": "advertising=totem",
- "then": "./assets/themes/advertising/totem.svg"
- },
- {
- "if": "advertising=wall_painting",
- "then": "./assets/themes/advertising/wall_painting.svg"
- }
- ]
- },
- "iconSize": {
- "render": "40,40",
- "mappings": [
- {
- "if": "advertising=flag",
- "then": "60,60"
- },
- {
- "if": "advertising=sculpture",
- "then": "50,50"
- }
- ]
- },
- "anchor": {
- "render": "bottom",
- "mappings": [
- {
- "if": "_referencing_ways~*",
- "then": "center"
- }
- ]
- }
- },
- {
- "width": "8",
- "color": "#00f"
- }
- ],
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
@@ -1403,5 +1271,139 @@
],
"maxSnapDistance": 5
}
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "./assets/themes/advertising/sign.svg",
+ "mappings": [
+ {
+ "if": {
+ "or": [
+ "advertising=billboard"
+ ]
+ },
+ "then": "./assets/themes/advertising/billboard.svg"
+ },
+ {
+ "if": "advertising=board",
+ "then": "./assets/themes/advertising/board.svg"
+ },
+ {
+ "if": "advertising=column",
+ "then": "./assets/themes/advertising/column.svg"
+ },
+ {
+ "if": "advertising=flag",
+ "then": "./assets/themes/advertising/flag.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "advertising=poster_box",
+ "_referencing_ways=[\"way/-1\"]"
+ ]
+ },
+ "then": "brick_wall_square;./assets/themes/advertising/poster_box_no_support.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "advertising=poster_box",
+ "_referencing_ways~*"
+ ]
+ },
+ "then": "./assets/themes/advertising/poster_box_no_support.svg"
+ },
+ {
+ "if": "advertising=poster_box",
+ "then": "./assets/themes/advertising/poster_box.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "advertising=screen",
+ "_referencing_ways=[\"way/-1\"]"
+ ]
+ },
+ "then": "brick_wall_square;./assets/themes/advertising/screen_no_support.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "advertising=screen",
+ "_referencing_ways~*"
+ ]
+ },
+ "then": "./assets/themes/advertising/screen_no_support.svg"
+ },
+ {
+ "if": "advertising=screen",
+ "then": "./assets/themes/advertising/screen.svg"
+ },
+ {
+ "if": "advertising=sculpture",
+ "then": "./assets/themes/advertising/sculpture.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "advertising=sign",
+ "_referencing_ways=[\"way/-1\"]"
+ ]
+ },
+ "then": "brick_wall_square;./assets/themes/advertising/sign.svg"
+ },
+ {
+ "if": "advertising=sign",
+ "then": "./assets/themes/advertising/sign.svg"
+ },
+ {
+ "if": "advertising=tarp",
+ "then": "./assets/themes/advertising/tarp.svg"
+ },
+ {
+ "if": "advertising=totem",
+ "then": "./assets/themes/advertising/totem.svg"
+ },
+ {
+ "if": "advertising=wall_painting",
+ "then": "./assets/themes/advertising/wall_painting.svg"
+ }
+ ]
+ },
+ "iconSize": {
+ "render": "40,40",
+ "mappings": [
+ {
+ "if": "advertising=flag",
+ "then": "60,60"
+ },
+ {
+ "if": "advertising=sculpture",
+ "then": "50,50"
+ }
+ ]
+ },
+ "anchor": {
+ "render": "bottom",
+ "mappings": [
+ {
+ "if": "_referencing_ways~*",
+ "then": "center"
+ }
+ ]
+ }
+ }
+ ],
+ "lineRendering": [
+ {
+ "width": "8",
+ "color": "#00f"
+ }
]
}
diff --git a/assets/layers/ambulancestation/ambulancestation.json b/assets/layers/ambulancestation/ambulancestation.json
index 2ff75d33b..18f5e6c13 100644
--- a/assets/layers/ambulancestation/ambulancestation.json
+++ b/assets/layers/ambulancestation/ambulancestation.json
@@ -376,7 +376,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/hailhydrant/Twemoji_1f691.svg",
"iconSize": "35,35",
@@ -385,7 +385,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#00f",
"width": "1"
diff --git a/assets/layers/artwork/artwork.json b/assets/layers/artwork/artwork.json
index 9b4a30540..d403b13c0 100644
--- a/assets/layers/artwork/artwork.json
+++ b/assets/layers/artwork/artwork.json
@@ -654,7 +654,6 @@
"ca": "Més informació a aquesta pàgina web"
}
}
-
},
"freeform": {
"key": "website",
@@ -782,20 +781,22 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "filter": [
+ "has_image"
+ ],
+ "pointRendering": [
{
"icon": "circle:white;./assets/themes/artwork/artwork.svg",
"location": [
"point",
"centroid"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#0000ff",
"width": "10"
}
- ],
- "filter": [
- "has_image"
]
}
diff --git a/assets/layers/atm/atm.json b/assets/layers/atm/atm.json
index 04e74522d..cec667bce 100644
--- a/assets/layers/atm/atm.json
+++ b/assets/layers/atm/atm.json
@@ -464,15 +464,6 @@
}
}
],
- "mapRendering": [
- {
- "icon": "circle:white;./assets/layers/atm/atm.svg",
- "location": [
- "point",
- "centroid"
- ]
- }
- ],
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
@@ -503,5 +494,15 @@
}
]
}
- ]
-}
\ No newline at end of file
+ ],
+ "pointRendering": [
+ {
+ "icon": "circle:white;./assets/layers/atm/atm.svg",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": []
+}
diff --git a/assets/layers/bank/bank.json b/assets/layers/bank/bank.json
index 5b51a0530..a1385804d 100644
--- a/assets/layers/bank/bank.json
+++ b/assets/layers/bank/bank.json
@@ -32,15 +32,6 @@
"source": {
"osmTags": "amenity=bank"
},
- "mapRendering": [
- {
- "icon": "circle:white;./assets/layers/bank/bank.svg",
- "location": [
- "point",
- "centroid"
- ]
- }
- ],
"tagRenderings": [
{
"id": "has_atm",
@@ -113,5 +104,15 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "icon": "circle:white;./assets/layers/bank/bank.svg",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/barrier/barrier.json b/assets/layers/barrier/barrier.json
index f0914fd21..0af9df297 100644
--- a/assets/layers/barrier/barrier.json
+++ b/assets/layers/barrier/barrier.json
@@ -578,17 +578,6 @@
"id": "Overlap (cyclebarrier)"
}
],
- "mapRendering": [
- {
- "icon": "./assets/layers/barrier/barrier.svg",
- "location": [
- "point"
- ]
- },
- {
- "width": "5"
- }
- ],
"deletion": {
"softDeletionTags": {
"and": [
@@ -612,5 +601,18 @@
"fixme="
]
}
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "./assets/layers/barrier/barrier.svg",
+ "location": [
+ "point"
+ ]
+ }
+ ],
+ "lineRendering": [
+ {
+ "width": "5"
+ }
+ ]
}
diff --git a/assets/layers/bench/bench.json b/assets/layers/bench/bench.json
index 0234018a9..30d3ca8e5 100644
--- a/assets/layers/bench/bench.json
+++ b/assets/layers/bench/bench.json
@@ -1039,23 +1039,6 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
- {
- "icon": "circle:#99bd54;./assets/layers/bench/bench.svg",
- "iconSize": "35,35",
- "iconBadges": [
- {
- "if": "tourism=artwork",
- "then": "circle:white;./assets/layers/artwork/artwork.svg"
- }
- ],
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- }
- ],
"filter": [
{
"id": "bench_is_memorial",
@@ -1123,5 +1106,23 @@
]
},
"has_image"
- ]
+ ],
+ "pointRendering": [
+ {
+ "icon": "circle:#99bd54;./assets/layers/bench/bench.svg",
+ "iconSize": "35,35",
+ "iconBadges": [
+ {
+ "if": "tourism=artwork",
+ "then": "circle:white;./assets/layers/artwork/artwork.svg"
+ }
+ ],
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json
index ebd0d2614..6a62c8d1e 100644
--- a/assets/layers/bench_at_pt/bench_at_pt.json
+++ b/assets/layers/bench_at_pt/bench_at_pt.json
@@ -206,20 +206,6 @@
]
}
],
- "mapRendering": [
- {
- "icon": "circle:white;./assets/themes/benches/bench_public_transport.svg",
- "iconSize": "35,35",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f",
- "width": "8"
- }
- ],
"deletion": {
"omitDefaultDeleteReasons": true,
"nonDeleteMappings": [
@@ -270,5 +256,21 @@
"ca": "Una capa que mostra totes les parades de transport públic que tenen bancs",
"pt": "Uma camada mostrando todas as paradas de transporte público que possuem um banco",
"pl": "Warstwa pokazująca wszystkie przystanki transportu publicznego, które mają ławki"
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "circle:white;./assets/themes/benches/bench_public_transport.svg",
+ "iconSize": "35,35",
+ "location": [
+ "point"
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#00f",
+ "width": "8"
+ }
+ ]
}
diff --git a/assets/layers/bicycle_library/bicycle_library.json b/assets/layers/bicycle_library/bicycle_library.json
index c4a03a7bb..3f54748c0 100644
--- a/assets/layers/bicycle_library/bicycle_library.json
+++ b/assets/layers/bicycle_library/bicycle_library.json
@@ -325,7 +325,8 @@
}
}
],
- "mapRendering": [
+ "deletion": true,
+ "pointRendering": [
{
"icon": "pin:#22ff55;./assets/layers/bicycle_library/bicycle_library.svg",
"iconBadges": [
@@ -344,11 +345,12 @@
"centroid"
],
"anchor": "bottom"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#c00",
"width": "1"
}
- ],
- "deletion": true
+ ]
}
diff --git a/assets/layers/bicycle_rental/bicycle_rental.json b/assets/layers/bicycle_rental/bicycle_rental.json
index ad87bd261..6ea1479fb 100644
--- a/assets/layers/bicycle_rental/bicycle_rental.json
+++ b/assets/layers/bicycle_rental/bicycle_rental.json
@@ -536,21 +536,6 @@
]
}
],
- "mapRendering": [
- {
- "icon": "./assets/themes/bicycle_rental/logo.svg",
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- },
- {
- "color": "#3333aa88",
- "width": "2"
- }
- ],
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": true
@@ -598,5 +583,22 @@
}
}
]
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "./assets/themes/bicycle_rental/logo.svg",
+ "iconSize": "40,40",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#3333aa88",
+ "width": "2"
+ }
+ ]
}
diff --git a/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json b/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json
index bff0c569a..ace7d11da 100644
--- a/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json
+++ b/assets/layers/bicycle_tube_vending_machine/bicycle_tube_vending_machine.json
@@ -288,7 +288,16 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing vending machines for bicycle tubes (either purpose-built bicycle tube vending machines or classical vending machines with bicycle tubes and optionally additional bicycle related objects such as lights, gloves, locks, …)",
+ "nl": "Een laag met verkoopsautomaten met binnenbanden voor fietsen (dit kan een automaat zijn met énkel fietsbanden, of een gewone automaat met fietsbanden en andere fietsaccessoires zoals lichten, handschoenen, sloten,...)",
+ "de": "Eine Ebene mit Automaten für Fahrradschläuche (entweder spezielle Fahrradschlauch-Automaten oder klassische Automaten mit Fahrradschläuchen und optional zusätzlichen fahrradbezogenen Gegenständen wie Lampen, Handschuhe, Schlösser, …)",
+ "da": "Et lag med automater til cykelslanger (enten specialbyggede cykelslangeautomater eller klassiske automater med cykelslanger og eventuelt andre cykelrelaterede genstande som f.eks. lys, handsker, låse, o.s.v)",
+ "fr": "Une couche affichant des distributeurs automatiques de chambre à air (que ce soit des distributeurs conçus spécifiquement pour les chambres à air ou des distributeurs classiques incluant des chambres à air ainsi des objets apparentés tels que de l'éclairage pour vélo, des gants, des cadenas, ...)",
+ "cs": "Vrstva zobrazující automaty na cyklistické duše (buď speciální automaty na cyklistické duše, nebo klasické automaty s cyklistickými dušemi a případně dalšími předměty souvisejícími s jízdními koly, jako jsou světla, rukavice, zámky, ...)",
+ "ca": "Una capa que mostra màquines expenedores per a tubs de bicicleta (ja siguin màquines expenedores de tubs de bicicleta o màquines expenedores clàssiques amb tubs de bicicleta i opcionalment objectes addicionals relacionats amb la bicicleta com ara llums, guants, panys, ...)"
+ },
+ "pointRendering": [
{
"icon": "pin:#ffffff;./assets/layers/bicycle_tube_vending_machine/pinIcon.svg",
"iconBadges": [
@@ -308,18 +317,11 @@
"centroid"
],
"anchor": "bottom"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#6bc4f7"
}
- ],
- "description": {
- "en": "A layer showing vending machines for bicycle tubes (either purpose-built bicycle tube vending machines or classical vending machines with bicycle tubes and optionally additional bicycle related objects such as lights, gloves, locks, …)",
- "nl": "Een laag met verkoopsautomaten met binnenbanden voor fietsen (dit kan een automaat zijn met énkel fietsbanden, of een gewone automaat met fietsbanden en andere fietsaccessoires zoals lichten, handschoenen, sloten,...)",
- "de": "Eine Ebene mit Automaten für Fahrradschläuche (entweder spezielle Fahrradschlauch-Automaten oder klassische Automaten mit Fahrradschläuchen und optional zusätzlichen fahrradbezogenen Gegenständen wie Lampen, Handschuhe, Schlösser, …)",
- "da": "Et lag med automater til cykelslanger (enten specialbyggede cykelslangeautomater eller klassiske automater med cykelslanger og eventuelt andre cykelrelaterede genstande som f.eks. lys, handsker, låse, o.s.v)",
- "fr": "Une couche affichant des distributeurs automatiques de chambre à air (que ce soit des distributeurs conçus spécifiquement pour les chambres à air ou des distributeurs classiques incluant des chambres à air ainsi des objets apparentés tels que de l'éclairage pour vélo, des gants, des cadenas, ...)",
- "cs": "Vrstva zobrazující automaty na cyklistické duše (buď speciální automaty na cyklistické duše, nebo klasické automaty s cyklistickými dušemi a případně dalšími předměty souvisejícími s jízdními koly, jako jsou světla, rukavice, zámky, ...)",
- "ca": "Una capa que mostra màquines expenedores per a tubs de bicicleta (ja siguin màquines expenedores de tubs de bicicleta o màquines expenedores clàssiques amb tubs de bicicleta i opcionalment objectes addicionals relacionats amb la bicicleta com ara llums, guants, panys, ...)"
- }
+ ]
}
diff --git a/assets/layers/bike_cafe/bike_cafe.json b/assets/layers/bike_cafe/bike_cafe.json
index d90821ded..1df713374 100644
--- a/assets/layers/bike_cafe/bike_cafe.json
+++ b/assets/layers/bike_cafe/bike_cafe.json
@@ -340,21 +340,6 @@
]
}
],
- "mapRendering": [
- {
- "icon": "pin:#684c2b;./assets/layers/bike_cafe/bike_cafe.svg",
- "iconSize": "50,50",
- "anchor": "bottom",
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": "#694E2D",
- "width": "2"
- }
- ],
"description": {
"en": "A bike café is a café geared towards cyclists, for example with services such as a pump, with lots of bicycle-related decoration, …",
"nl": "Een fietscafé is een café dat gericht is op fietsers, bijvoorbeeld omdat het een fietspomp heeft, fietsgerelateerde decoratie heeft enzovoorts.",
@@ -363,5 +348,22 @@
"fr": "Un vélo café est un café à destination des cyclistes avec, par exemple, des services tels qu’une pompe, et de nombreuses décorations liées aux vélos, etc.",
"cs": "Cyklokavárna je kavárna zaměřená na cyklisty, například se službami, jako je pumpa, se spoustou výzdoby související s jízdními koly, …",
"ca": "Un cafè ciclista és un cafè enfocat a ciclistes, per exemple, amb serveis com una manxa, amb molta decoració relacionada amb el ciclisme, …"
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "pin:#684c2b;./assets/layers/bike_cafe/bike_cafe.svg",
+ "iconSize": "50,50",
+ "anchor": "bottom",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#694E2D",
+ "width": "2"
+ }
+ ]
}
diff --git a/assets/layers/bike_cleaning/bike_cleaning.json b/assets/layers/bike_cleaning/bike_cleaning.json
index b58afda8d..e235da234 100644
--- a/assets/layers/bike_cleaning/bike_cleaning.json
+++ b/assets/layers/bike_cleaning/bike_cleaning.json
@@ -237,7 +237,17 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing facilities where one can clean their bike",
+ "nl": "Een laag die plaatsen toont waar je je fiets kunt wassen",
+ "de": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann",
+ "es": "Una capa que muestra instalaciones en las que uno puede limpiar su bici",
+ "da": "Et lag med faciliteter, hvor man kan rengøre sin cykel",
+ "fr": "Une couche affichant les lieux où l'on peut nettoyer son vélo",
+ "cs": "Vrstva zobrazující zařízení, kde si můžete umýt kolo",
+ "ca": "Una capa que mostra les instal·lacions on pots netejar la teva bicicleta"
+ },
+ "pointRendering": [
{
"icon": "./assets/layers/bike_cleaning/bike_cleaning.svg",
"iconBadges": [
@@ -263,14 +273,5 @@
"anchor": "bottom"
}
],
- "description": {
- "en": "A layer showing facilities where one can clean their bike",
- "nl": "Een laag die plaatsen toont waar je je fiets kunt wassen",
- "de": "Eine Ebene mit Einrichtungen, in denen man sein Fahrrad reinigen kann",
- "es": "Una capa que muestra instalaciones en las que uno puede limpiar su bici",
- "da": "Et lag med faciliteter, hvor man kan rengøre sin cykel",
- "fr": "Une couche affichant les lieux où l'on peut nettoyer son vélo",
- "cs": "Vrstva zobrazující zařízení, kde si můžete umýt kolo",
- "ca": "Una capa que mostra les instal·lacions on pots netejar la teva bicicleta"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json
index fc11aae6d..21f9c5d2f 100644
--- a/assets/layers/bike_parking/bike_parking.json
+++ b/assets/layers/bike_parking/bike_parking.json
@@ -703,21 +703,6 @@
"enableRelocation": false,
"enableImproveAccuracy": true
},
- "mapRendering": [
- {
- "icon": "pin:#5473de;./assets/layers/bike_parking/parking.svg",
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "bottom"
- },
- {
- "color": "#00f",
- "width": "1"
- }
- ],
"description": {
"en": "A layer showing where you can park your bike",
"nl": "Een laag die toont waar je je fiets kunt parkeren",
@@ -728,5 +713,22 @@
"cs": "Vrstva ukazující, kde můžete zaparkovat kolo",
"ca": "Una capa que mostra on pots aparcar la teva bicicleta",
"it": "Un livello che mostra dove puoi parcheggiare la tua bicicletta"
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "pin:#5473de;./assets/layers/bike_parking/parking.svg",
+ "iconSize": "40,40",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#00f",
+ "width": "1"
+ }
+ ]
}
diff --git a/assets/layers/bike_repair_station/bike_repair_station.json b/assets/layers/bike_repair_station/bike_repair_station.json
index e74afe320..011e6dc5e 100644
--- a/assets/layers/bike_repair_station/bike_repair_station.json
+++ b/assets/layers/bike_repair_station/bike_repair_station.json
@@ -987,7 +987,17 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing bicycle pumps and bicycle repair tool stands",
+ "nl": "Deze laag toont fietspompen en herstelpunten voor fietsen",
+ "de": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur",
+ "es": "Una capa que muestra bombas de bicicletas y puestos de herramientas de reparación de bicicletas",
+ "da": "Et lag med cykelpumper og cykelreværktøjsstativer",
+ "fr": "Une couche montrant les pompes à vélo et les centres de réparation",
+ "cs": "Vrstva zobrazující vzduchové kompresory na jízdní kola a stojany na nářadí pro opravu jízdních kol",
+ "ca": "Una capa que mostra bombes de bicicletes i suports d'eines de reparació de bicicletes"
+ },
+ "pointRendering": [
{
"icon": {
"render": "pin:#88d32c;./assets/layers/bike_repair_station/repair_station.svg",
@@ -1059,14 +1069,5 @@
"anchor": "bottom"
}
],
- "description": {
- "en": "A layer showing bicycle pumps and bicycle repair tool stands",
- "nl": "Deze laag toont fietspompen en herstelpunten voor fietsen",
- "de": "Eine Ebene mit Fahrradpumpen und Werkzeugständern für die Fahrradreparatur",
- "es": "Una capa que muestra bombas de bicicletas y puestos de herramientas de reparación de bicicletas",
- "da": "Et lag med cykelpumper og cykelreværktøjsstativer",
- "fr": "Une couche montrant les pompes à vélo et les centres de réparation",
- "cs": "Vrstva zobrazující vzduchové kompresory na jízdní kola a stojany na nářadí pro opravu jízdních kol",
- "ca": "Una capa que mostra bombes de bicicletes i suports d'eines de reparació de bicicletes"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/bike_shop/bike_shop.json b/assets/layers/bike_shop/bike_shop.json
index a3fe96b98..993b2194b 100644
--- a/assets/layers/bike_shop/bike_shop.json
+++ b/assets/layers/bike_shop/bike_shop.json
@@ -817,47 +817,6 @@
]
}
],
- "mapRendering": [
- {
- "icon": {
- "render": "pin:#f04c4c;./assets/layers/bike_shop/repair_shop.svg",
- "mappings": [
- {
- "if": "operator=De Fietsambassade Gent",
- "then": "./assets/themes/cyclofix/fietsambassade_gent_logo_small.svg"
- },
- {
- "if": "service:bicycle:retail=yes",
- "then": "pin:#353d57;./assets/layers/bike_shop/shop.svg"
- }
- ]
- },
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "icons.isOpen"
- },
- {
- "if": "service:bicycle:pump=yes",
- "then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg"
- },
- {
- "if": "service:bicycle:cleaning~*",
- "then": "./assets/layers/bike_cleaning/bike_cleaning_icon.svg"
- }
- ],
- "iconSize": "50,50",
- "anchor": "bottom",
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": "#c00",
- "width": "1"
- }
- ],
"filter": [
"open_now",
{
@@ -905,5 +864,48 @@
]
}
],
- "deletion": true
+ "deletion": true,
+ "pointRendering": [
+ {
+ "icon": {
+ "render": "pin:#f04c4c;./assets/layers/bike_shop/repair_shop.svg",
+ "mappings": [
+ {
+ "if": "operator=De Fietsambassade Gent",
+ "then": "./assets/themes/cyclofix/fietsambassade_gent_logo_small.svg"
+ },
+ {
+ "if": "service:bicycle:retail=yes",
+ "then": "pin:#353d57;./assets/layers/bike_shop/shop.svg"
+ }
+ ]
+ },
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "icons.isOpen"
+ },
+ {
+ "if": "service:bicycle:pump=yes",
+ "then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg"
+ },
+ {
+ "if": "service:bicycle:cleaning~*",
+ "then": "./assets/layers/bike_cleaning/bike_cleaning_icon.svg"
+ }
+ ],
+ "iconSize": "50,50",
+ "anchor": "bottom",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#c00",
+ "width": "1"
+ }
+ ]
}
diff --git a/assets/layers/bike_themed_object/bike_themed_object.json b/assets/layers/bike_themed_object/bike_themed_object.json
index 81075eddf..9d1e9eef9 100644
--- a/assets/layers/bike_themed_object/bike_themed_object.json
+++ b/assets/layers/bike_themed_object/bike_themed_object.json
@@ -72,21 +72,6 @@
"opening_hours"
],
"presets": [],
- "mapRendering": [
- {
- "icon": "./assets/layers/bike_themed_object/other_services.svg",
- "iconSize": "50,50",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "bottom"
- },
- {
- "color": "#AB76D5",
- "width": "2"
- }
- ],
"description": {
"en": "A layer with bike-themed objects but who don't match any other layer",
"nl": "Een laag met fietsgerelateerde diensten, die in geen enkele andere laag konden ondergebracht worden",
@@ -96,5 +81,22 @@
"da": "Et lag med objekter med cykeltema, men som ikke matcher noget andet lag",
"ca": "Una capa amb els objectes relacionats amb bicis però que no coinxideixen amb cap altra capa",
"cs": "Vrstva s objekty s tématikou jízdních kol, které však neodpovídají žádné jiné vrstvě"
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "./assets/layers/bike_themed_object/other_services.svg",
+ "iconSize": "50,50",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#AB76D5",
+ "width": "2"
+ }
+ ]
}
diff --git a/assets/layers/binocular/binocular.json b/assets/layers/binocular/binocular.json
index e791fb5da..15c2ec8f1 100644
--- a/assets/layers/binocular/binocular.json
+++ b/assets/layers/binocular/binocular.json
@@ -165,7 +165,7 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/binocular/telescope.svg",
"iconSize": "40,40",
@@ -173,7 +173,9 @@
"point"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#00f",
"width": "8"
diff --git a/assets/layers/birdhide/birdhide.json b/assets/layers/birdhide/birdhide.json
index 4c2618e92..f70a4346f 100644
--- a/assets/layers/birdhide/birdhide.json
+++ b/assets/layers/birdhide/birdhide.json
@@ -402,7 +402,7 @@
"enableRelocation": false,
"enableImproveAccuracy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "./assets/layers/birdhide/birdhide.svg",
@@ -424,5 +424,6 @@
"centroid"
]
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/cafe_pub/cafe_pub.json b/assets/layers/cafe_pub/cafe_pub.json
index c61d451e2..57676a4c8 100644
--- a/assets/layers/cafe_pub/cafe_pub.json
+++ b/assets/layers/cafe_pub/cafe_pub.json
@@ -321,7 +321,17 @@
]
},
"allowMove": true,
- "mapRendering": [
+ "description": {
+ "en": "A layer showing cafés and pubs where one can gather around a drink. The layer asks for some relevant questions",
+ "hu": "Egy olyan réteg, amely kávézókat és kocsmákat jelenít meg, ahol össze lehet gyűlni egy ital köré. A réteg néhány lényeges kérdést tesz fel",
+ "nl": "Een laag die kroegen en koffiehuizen toont waar je iets kunt drinken. De laag zal je enkele vragen stellen",
+ "de": "Eine Ebene mit Cafés und Kneipen, in denen man sich auf ein Getränk treffen kann. Die Ebene fragt nach einigen relevanten Eigenschaften",
+ "es": "Una capa que muestra cafeterías y bares donde uno se puede reunir con una bebida. La capa hace algunas preguntas relevantes",
+ "da": "Et lag med caféer og pubber, hvor man kan samles omkring en drink. Laget stiller nogle relevante spørgsmål",
+ "fr": "Une couche montrants les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférentes.",
+ "ca": "Una capa que mostra cafeteries i bars on un es pot reunir amb una beguda. La capa demana algunes preguntes rellevants"
+ },
+ "pointRendering": [
{
"icon": {
"render": "circle:white;./assets/layers/cafe_pub/pub.svg",
@@ -356,14 +366,5 @@
]
}
],
- "description": {
- "en": "A layer showing cafés and pubs where one can gather around a drink. The layer asks for some relevant questions",
- "hu": "Egy olyan réteg, amely kávézókat és kocsmákat jelenít meg, ahol össze lehet gyűlni egy ital köré. A réteg néhány lényeges kérdést tesz fel",
- "nl": "Een laag die kroegen en koffiehuizen toont waar je iets kunt drinken. De laag zal je enkele vragen stellen",
- "de": "Eine Ebene mit Cafés und Kneipen, in denen man sich auf ein Getränk treffen kann. Die Ebene fragt nach einigen relevanten Eigenschaften",
- "es": "Una capa que muestra cafeterías y bares donde uno se puede reunir con una bebida. La capa hace algunas preguntas relevantes",
- "da": "Et lag med caféer og pubber, hvor man kan samles omkring en drink. Laget stiller nogle relevante spørgsmål",
- "fr": "Une couche montrants les cafés et pubs où l’on peut prendre un verre. Cette couche pose des questions y afférentes.",
- "ca": "Una capa que mostra cafeteries i bars on un es pot reunir amb una beguda. La capa demana algunes preguntes rellevants"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/car_rental/car_rental.json b/assets/layers/car_rental/car_rental.json
index a0f33387d..b3b51198f 100644
--- a/assets/layers/car_rental/car_rental.json
+++ b/assets/layers/car_rental/car_rental.json
@@ -110,7 +110,13 @@
}
}
],
- "mapRendering": [
+ "allowMove": {
+ "enableImproveAccuracy": true
+ },
+ "filter": [
+ "open_now"
+ ],
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/car_rental/car_rental.svg",
"location": [
@@ -118,16 +124,12 @@
"centroid"
],
"label": "{name}
"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "darkblue",
"width": 2
}
- ],
- "allowMove": {
- "enableImproveAccuracy": true
- },
- "filter": [
- "open_now"
]
}
diff --git a/assets/layers/charging_station/charging_station.json b/assets/layers/charging_station/charging_station.json
index ef1ec1059..fdba2791e 100644
--- a/assets/layers/charging_station/charging_station.json
+++ b/assets/layers/charging_station/charging_station.json
@@ -4671,68 +4671,6 @@
}
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "pin:#fff;./assets/themes/charging_stations/plug.svg",
- "mappings": [
- {
- "if": "bicycle=yes",
- "then": "pin:#fff;./assets/themes/charging_stations/bicycle.svg"
- },
- {
- "if": {
- "or": [
- "car=yes",
- "motorcar=yes"
- ]
- },
- "then": "pin:#fff;./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": [
@@ -5284,5 +5222,68 @@
]
},
"neededChangesets": 10
- }
-}
\ No newline at end of file
+ },
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "pin:#fff;./assets/themes/charging_stations/plug.svg",
+ "mappings": [
+ {
+ "if": "bicycle=yes",
+ "then": "pin:#fff;./assets/themes/charging_stations/bicycle.svg"
+ },
+ {
+ "if": {
+ "or": [
+ "car=yes",
+ "motorcar=yes"
+ ]
+ },
+ "then": "pin:#fff;./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": []
+}
diff --git a/assets/layers/climbing_area/climbing_area.json b/assets/layers/climbing_area/climbing_area.json
index cb5ba7f42..b5a33be97 100644
--- a/assets/layers/climbing_area/climbing_area.json
+++ b/assets/layers/climbing_area/climbing_area.json
@@ -298,7 +298,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/climbing/climbing_no_rope.svg",
"iconSize": "40,40",
@@ -307,7 +307,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"dashArray": "8 16",
"lineCap": "square",
diff --git a/assets/layers/climbing_club/climbing_club.json b/assets/layers/climbing_club/climbing_club.json
index 52cc4ebd1..0d44d2907 100644
--- a/assets/layers/climbing_club/climbing_club.json
+++ b/assets/layers/climbing_club/climbing_club.json
@@ -159,7 +159,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/climbing/club.svg",
"iconBadges": [
@@ -183,5 +183,6 @@
},
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/climbing_gym/climbing_gym.json b/assets/layers/climbing_gym/climbing_gym.json
index 77f265b5e..fc969a609 100644
--- a/assets/layers/climbing_gym/climbing_gym.json
+++ b/assets/layers/climbing_gym/climbing_gym.json
@@ -466,7 +466,20 @@
"internet-fee",
"internet-ssid"
],
- "mapRendering": [
+ "presets": [
+ {
+ "title": {
+ "en": "Climbing gym",
+ "nl": "Klimzaal",
+ "de": "Kletterhalle"
+ },
+ "tags": [
+ "leisure=sports_centre",
+ "sport=climbing"
+ ]
+ }
+ ],
+ "pointRendering": [
{
"icon": "./assets/themes/climbing/climbing_gym.svg",
"iconBadges": [
@@ -491,17 +504,5 @@
"anchor": "center"
}
],
- "presets": [
- {
- "title": {
- "en": "Climbing gym",
- "nl": "Klimzaal",
- "de": "Kletterhalle"
- },
- "tags": [
- "leisure=sports_centre",
- "sport=climbing"
- ]
- }
- ]
+ "lineRendering": []
}
diff --git a/assets/layers/climbing_opportunity/climbing_opportunity.json b/assets/layers/climbing_opportunity/climbing_opportunity.json
index 45681904d..de070e4bf 100644
--- a/assets/layers/climbing_opportunity/climbing_opportunity.json
+++ b/assets/layers/climbing_opportunity/climbing_opportunity.json
@@ -120,14 +120,16 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/climbing/climbing_unknown.svg",
"location": [
"point",
"centroid"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#ddff55AA",
"width": "2"
diff --git a/assets/layers/climbing_route/climbing_route.json b/assets/layers/climbing_route/climbing_route.json
index 2183d5370..a3bd52c6a 100644
--- a/assets/layers/climbing_route/climbing_route.json
+++ b/assets/layers/climbing_route/climbing_route.json
@@ -219,7 +219,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/themes/climbing/climbing_route.svg",
"iconSize": "28,28",
@@ -245,7 +245,9 @@
]
},
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#0f0",
"width": "4"
diff --git a/assets/layers/clock/clock.json b/assets/layers/clock/clock.json
index 4361face2..3b94f800d 100644
--- a/assets/layers/clock/clock.json
+++ b/assets/layers/clock/clock.json
@@ -488,7 +488,7 @@
],
"allowMove": true,
"deletion": true,
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
@@ -513,5 +513,6 @@
]
}
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/conflation/conflation.json b/assets/layers/conflation/conflation.json
index 3af2b482d..0078fa1c8 100644
--- a/assets/layers/conflation/conflation.json
+++ b/assets/layers/conflation/conflation.json
@@ -5,7 +5,7 @@
"source": "special",
"name": "Conflation",
"title": "Conflation",
- "mapRendering": [
+ "pointRendering": [
{
"location": "point",
"icon": {
@@ -58,7 +58,9 @@
}
]
}
- },
+ }
+ ],
+ "lineRendering": [
{
"width": {
"render": "3",
diff --git a/assets/layers/crab_address/crab_address.json b/assets/layers/crab_address/crab_address.json
index a90bd2bd6..e76daf295 100644
--- a/assets/layers/crab_address/crab_address.json
+++ b/assets/layers/crab_address/crab_address.json
@@ -9,7 +9,18 @@
},
"name": "CRAB-addressen",
"title": "CRAB-adres",
- "mapRendering": [
+ "calculatedTags": [
+ "_HNRLABEL=(() => {const lbl = feat.properties.HNRLABEL?.split('-')?.map(l => Number(l))?.filter(i => !isNaN (i)) ;if(lbl?.length != 2) {return feat.properties.HNRLABEL}; const addresses = []; for(let i = lbl[0]; i <= lbl[1]; i += 1){addresses.push(''+i);}; return addresses.join(';') })()"
+ ],
+ "tagRenderings": [
+ {
+ "id": "render_crab",
+ "render": {
+ "nl": "Volgens het CRAB ligt hier {STRAATNM} {HUISNR} (label: {HNRLABEL})"
+ }
+ }
+ ],
+ "pointRendering": [
{
"location": [
"point",
@@ -21,15 +32,5 @@
"anchor": "center"
}
],
- "calculatedTags": [
- "_HNRLABEL=(() => {const lbl = feat.properties.HNRLABEL?.split('-')?.map(l => Number(l))?.filter(i => !isNaN (i)) ;if(lbl?.length != 2) {return feat.properties.HNRLABEL}; const addresses = []; for(let i = lbl[0]; i <= lbl[1]; i += 1){addresses.push(''+i);}; return addresses.join(';') })()"
- ],
- "tagRenderings": [
- {
- "id": "render_crab",
- "render": {
- "nl": "Volgens het CRAB ligt hier {STRAATNM} {HUISNR} (label: {HNRLABEL})"
- }
- }
- ]
+ "lineRendering": []
}
diff --git a/assets/layers/crossings/crossings.json b/assets/layers/crossings/crossings.json
index 012ee9576..21c81ccd5 100644
--- a/assets/layers/crossings/crossings.json
+++ b/assets/layers/crossings/crossings.json
@@ -633,7 +633,10 @@
]
}
],
- "mapRendering": [
+ "filter": [
+ "tactile_paving_advanced"
+ ],
+ "pointRendering": [
{
"icon": {
"render": "./assets/layers/crossings/pedestrian_crossing.svg",
@@ -652,12 +655,11 @@
"location": [
"point"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"width": "5"
}
- ],
- "filter": [
- "tactile_paving_advanced"
]
}
diff --git a/assets/layers/current_view/current_view.json b/assets/layers/current_view/current_view.json
index 42a1769a6..45c7142c0 100644
--- a/assets/layers/current_view/current_view.json
+++ b/assets/layers/current_view/current_view.json
@@ -6,7 +6,8 @@
"title": "Current View",
"tagRenderings": [],
"popupInFloatover": true,
- "mapRendering": [
+ "pointRendering": [],
+ "lineRendering": [
{
"color": "#cccc0088"
}
diff --git a/assets/layers/cycleways_and_roads/cycleways_and_roads.json b/assets/layers/cycleways_and_roads/cycleways_and_roads.json
index 8c233be87..8f013196a 100644
--- a/assets/layers/cycleways_and_roads/cycleways_and_roads.json
+++ b/assets/layers/cycleways_and_roads/cycleways_and_roads.json
@@ -1621,14 +1621,24 @@
}
],
"allowSplit": true,
- "mapRendering": [
+ "description": {
+ "en": "All infrastructure that someone can cycle over, accompanied with questions about this infrastructure",
+ "nl": "Alle infrastructuur waar je over kunt fietsen, met vragen over die infrastructuur",
+ "de": "Infrastruktur, die man mit dem Fahrrad befahren kann, begleitet von diesbezüglichen Fragen",
+ "es": "Toda la infraestructura sobre la que alguien puede ir en bici, acompañado de preguntas sobre esta infraestructura\"",
+ "fr": "Toutes les infrastructures sur lesquelles quelqu'un peut rouler, accompagnées de questions sur cette infrastructure",
+ "ca": "Totes les infraestructures per les quals algú pot ciclar, acompanyades de preguntes sobre aquesta infraestructura"
+ },
+ "pointRendering": [
{
"icon": "./assets/themes/cycle_infra/bicycleway.svg",
"iconSize": "40,40",
"location": [
"point"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": {
"render": "rgba(170, 170, 170, 0.7)",
@@ -1700,13 +1710,5 @@
]
}
}
- ],
- "description": {
- "en": "All infrastructure that someone can cycle over, accompanied with questions about this infrastructure",
- "nl": "Alle infrastructuur waar je over kunt fietsen, met vragen over die infrastructuur",
- "de": "Infrastruktur, die man mit dem Fahrrad befahren kann, begleitet von diesbezüglichen Fragen",
- "es": "Toda la infraestructura sobre la que alguien puede ir en bici, acompañado de preguntas sobre esta infraestructura\"",
- "fr": "Toutes les infrastructures sur lesquelles quelqu'un peut rouler, accompagnées de questions sur cette infrastructure",
- "ca": "Totes les infraestructures per les quals algú pot ciclar, acompanyades de preguntes sobre aquesta infraestructura"
- }
+ ]
}
diff --git a/assets/layers/defibrillator/defibrillator.json b/assets/layers/defibrillator/defibrillator.json
index ce75158f6..02160dc4b 100644
--- a/assets/layers/defibrillator/defibrillator.json
+++ b/assets/layers/defibrillator/defibrillator.json
@@ -684,7 +684,11 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "filter": [
+ "has_image",
+ "open_now"
+ ],
+ "pointRendering": [
{
"icon": {
"render": "square:#008754;./assets/layers/defibrillator/defibrillator.svg",
@@ -698,13 +702,11 @@
"location": [
"point"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#0000ff"
}
- ],
- "filter": [
- "has_image",
- "open_now"
]
}
diff --git a/assets/layers/dentist/dentist.json b/assets/layers/dentist/dentist.json
index 03d56c1b1..0096f75b1 100644
--- a/assets/layers/dentist/dentist.json
+++ b/assets/layers/dentist/dentist.json
@@ -69,7 +69,9 @@
"filter": [
"open_now"
],
- "mapRendering": [
+ "deletion": true,
+ "allowMove": true,
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/dentist/dentist.svg",
"iconSize": "40,40",
@@ -80,6 +82,5 @@
"anchor": "center"
}
],
- "deletion": true,
- "allowMove": true
+ "lineRendering": []
}
diff --git a/assets/layers/direction/direction.json b/assets/layers/direction/direction.json
index fde3e532e..eb27f3bb8 100644
--- a/assets/layers/direction/direction.json
+++ b/assets/layers/direction/direction.json
@@ -32,7 +32,7 @@
"tagRenderings": [],
"stroke": "0",
"presets": [],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "direction_gradient:var(--catch-detail-color)",
"iconSize": "200,200",
@@ -42,7 +42,9 @@
],
"rotation": "{_direction:numerical}deg",
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "--catch-detail-color"
}
diff --git a/assets/layers/doctors/doctors.json b/assets/layers/doctors/doctors.json
index c2fbea24f..95cc2440c 100644
--- a/assets/layers/doctors/doctors.json
+++ b/assets/layers/doctors/doctors.json
@@ -133,7 +133,9 @@
"filter": [
"open_now"
],
- "mapRendering": [
+ "deletion": true,
+ "allowMove": true,
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/doctors/doctors.svg",
"iconSize": "40,40",
@@ -144,6 +146,5 @@
"anchor": "center"
}
],
- "deletion": true,
- "allowMove": true
+ "lineRendering": []
}
diff --git a/assets/layers/dogpark/dogpark.json b/assets/layers/dogpark/dogpark.json
index f760088b2..c0b1fdb4a 100644
--- a/assets/layers/dogpark/dogpark.json
+++ b/assets/layers/dogpark/dogpark.json
@@ -61,29 +61,6 @@
}
]
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "./assets/layers/dogpark/dog-park.svg",
- "iconSize": "40,40",
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- },
- "anchor": "center"
- },
- {
- "color": "#ff0",
- "width": 5
- }
- ],
"tagRenderings": [
{
"id": "dogpark-fenced",
@@ -185,5 +162,30 @@
},
"reviews",
"images"
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "./assets/layers/dogpark/dog-park.svg",
+ "iconSize": "40,40",
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ },
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#ff0",
+ "width": 5
+ }
]
}
diff --git a/assets/layers/drinking_water/drinking_water.json b/assets/layers/drinking_water/drinking_water.json
index af1786914..1f02973eb 100644
--- a/assets/layers/drinking_water/drinking_water.json
+++ b/assets/layers/drinking_water/drinking_water.json
@@ -245,7 +245,16 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing drinking water fountains",
+ "nl": "Deze laag toont drinkwaterpunten",
+ "hu": "Ivóvizet adó kutakat megjelenítő réteg",
+ "de": "Eine Ebene mit Trinkwasserbrunnen",
+ "es": "Una capa que muestra fuentes de agua potable",
+ "fr": "Une couche montrant les fontaines d'eau potable",
+ "ca": "Una capa que mostra fonts d'aigua potable"
+ },
+ "pointRendering": [
{
"icon": "pin:#6BC4F7;./assets/layers/drinking_water/drips.svg",
"iconBadges": [
@@ -267,13 +276,5 @@
"anchor": "bottom"
}
],
- "description": {
- "en": "A layer showing drinking water fountains",
- "nl": "Deze laag toont drinkwaterpunten",
- "hu": "Ivóvizet adó kutakat megjelenítő réteg",
- "de": "Eine Ebene mit Trinkwasserbrunnen",
- "es": "Una capa que muestra fuentes de agua potable",
- "fr": "Une couche montrant les fontaines d'eau potable",
- "ca": "Una capa que mostra fonts d'aigua potable"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/elevator/elevator.json b/assets/layers/elevator/elevator.json
index fb453c3bd..3d991cc1a 100644
--- a/assets/layers/elevator/elevator.json
+++ b/assets/layers/elevator/elevator.json
@@ -151,20 +151,26 @@
}
},
"induction-loop",
-
- {"id": "tactile_writing_available",
- "question": {"en": "Has this elevator tactile writing?"},
-
- "mappings":[
- {"if":"tactile_writing:braille=yes",
- "then": {"en": "This elevator has tactile writing in Braille"}
+ {
+ "id": "tactile_writing_available",
+ "question": {
+ "en": "Has this elevator tactile writing?"
+ },
+ "mappings": [
+ {
+ "if": "tactile_writing:braille=yes",
+ "then": {
+ "en": "This elevator has tactile writing in Braille"
+ }
},
- {"if":"tactile_writing:braille=no",
- "then": {"en": "This elevator does not have tactile writing"}
+ {
+ "if": "tactile_writing:braille=no",
+ "then": {
+ "en": "This elevator does not have tactile writing"
+ }
}
]
},
-
{
"id": "tactile_writing_language",
"condition": "tactile_writing:braille=yes",
@@ -190,19 +196,29 @@
}
}
},
- {"id": "speech_output_available",
- "question": {"en": "Has this elevator speech output?"},
- "questionHint": {"en": "E.g. it announces the current floor"},
- "mappings":[
- {"if":"speech_output=yes",
- "then": {"en": "This elevator has speech output"}
+ {
+ "id": "speech_output_available",
+ "question": {
+ "en": "Has this elevator speech output?"
+ },
+ "questionHint": {
+ "en": "E.g. it announces the current floor"
+ },
+ "mappings": [
+ {
+ "if": "speech_output=yes",
+ "then": {
+ "en": "This elevator has speech output"
+ }
},
- {"if":"speech_output=no",
- "then": {"en": "This elevator does not have speech output"}
+ {
+ "if": "speech_output=no",
+ "then": {
+ "en": "This elevator does not have speech output"
+ }
}
]
},
-
{
"id": "speech_output",
"condition": "speech_output=yes",
@@ -229,28 +245,6 @@
}
}
],
- "mapRendering": [
- {
- "icon": "circle:white;./assets/layers/elevator/elevator_wheelchair.svg",
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "iconBadges": [
- {
- "if": {
- "or": [
- "operational_status=broken",
- "operational_status=closed"
- ]
- },
- "then": "close:#c33"
- }
- ],
- "anchor": "center"
- }
- ],
"presets": [
{
"title": {
@@ -276,8 +270,7 @@
"defaultInput": "cm",
"applicableUnits": [
{
- "canonicalDenomination": "m"
- ,
+ "canonicalDenomination": "m",
"alternativeDenomination": [
"meter"
],
@@ -308,5 +301,28 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "icon": "circle:white;./assets/layers/elevator/elevator_wheelchair.svg",
+ "iconSize": "40,40",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "iconBadges": [
+ {
+ "if": {
+ "or": [
+ "operational_status=broken",
+ "operational_status=closed"
+ ]
+ },
+ "then": "close:#c33"
+ }
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/elongated_coin/elongated_coin.json b/assets/layers/elongated_coin/elongated_coin.json
index 903493f4e..a2c60eedd 100644
--- a/assets/layers/elongated_coin/elongated_coin.json
+++ b/assets/layers/elongated_coin/elongated_coin.json
@@ -320,21 +320,6 @@
"level",
"check_date"
],
- "mapRendering": [
- {
- "icon": "circle:#FFFFFF00;./assets/themes/elongated_coin/penny.svg",
- "location": [
- "point",
- "centroid"
- ],
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "icons.isOpen"
- }
- ]
- }
- ],
"presets": [
{
"title": {
@@ -358,5 +343,21 @@
"open_now",
"accepts_debit_cards",
"accepts_credit_cards"
- ]
-}
\ No newline at end of file
+ ],
+ "pointRendering": [
+ {
+ "icon": "circle:#FFFFFF00;./assets/themes/elongated_coin/penny.svg",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "icons.isOpen"
+ }
+ ]
+ }
+ ],
+ "lineRendering": []
+}
diff --git a/assets/layers/entrance/entrance.json b/assets/layers/entrance/entrance.json
index bf01e0ebe..50ff079a5 100644
--- a/assets/layers/entrance/entrance.json
+++ b/assets/layers/entrance/entrance.json
@@ -442,23 +442,6 @@
]
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "circle:white;./assets/layers/entrance/entrance.svg",
- "mappings": [
- {
- "if": "entrance=emergency",
- "then": "circle:white;./assets/layers/entrance/emergency_door.svg"
- }
- ]
- }
- }
- ],
"presets": [
{
"title": {
@@ -529,5 +512,23 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "circle:white;./assets/layers/entrance/entrance.svg",
+ "mappings": [
+ {
+ "if": "entrance=emergency",
+ "then": "circle:white;./assets/layers/entrance/emergency_door.svg"
+ }
+ ]
+ }
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/etymology/etymology.json b/assets/layers/etymology/etymology.json
index c34022503..1fb800d52 100644
--- a/assets/layers/etymology/etymology.json
+++ b/assets/layers/etymology/etymology.json
@@ -260,7 +260,7 @@
"condition": "wikidata~*"
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "pin:#05d7fcaa",
@@ -281,7 +281,9 @@
"point"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": {
"render": "#05d7fcaa",
diff --git a/assets/layers/extinguisher/extinguisher.json b/assets/layers/extinguisher/extinguisher.json
index 53edc92a6..b36277b6f 100644
--- a/assets/layers/extinguisher/extinguisher.json
+++ b/assets/layers/extinguisher/extinguisher.json
@@ -162,7 +162,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/hailhydrant/Twemoji12_1f9ef.svg",
"iconSize": "20,20",
@@ -172,5 +172,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/fire_station/fire_station.json b/assets/layers/fire_station/fire_station.json
index 7a1ed4b89..c82e2aeba 100644
--- a/assets/layers/fire_station/fire_station.json
+++ b/assets/layers/fire_station/fire_station.json
@@ -295,7 +295,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/hailhydrant/Twemoji12_1f692.svg",
"iconSize": "35,35",
@@ -304,7 +304,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#c22",
"width": "1"
diff --git a/assets/layers/fitness_centre/fitness_centre.json b/assets/layers/fitness_centre/fitness_centre.json
index 095e355bf..7d8f39b4a 100644
--- a/assets/layers/fitness_centre/fitness_centre.json
+++ b/assets/layers/fitness_centre/fitness_centre.json
@@ -85,7 +85,10 @@
"icon": "./assets/layers/fitness_centre/gym.svg"
}
],
- "mapRendering": [
+ "filter": [
+ "open_now"
+ ],
+ "pointRendering": [
{
"location": [
"point",
@@ -103,7 +106,5 @@
"anchor": "center"
}
],
- "filter": [
- "open_now"
- ]
+ "lineRendering": []
}
diff --git a/assets/layers/fitness_station/fitness_station.json b/assets/layers/fitness_station/fitness_station.json
index 331f6a81f..06d3c7a47 100644
--- a/assets/layers/fitness_station/fitness_station.json
+++ b/assets/layers/fitness_station/fitness_station.json
@@ -386,7 +386,14 @@
"icon": "./assets/layers/fitness_station/fitness.svg"
}
],
- "mapRendering": [
+ "filter": [
+ "open_now"
+ ],
+ "allowMove": {
+ "enableRelocation": false,
+ "enableImproveAccuracy": true
+ },
+ "pointRendering": [
{
"location": [
"point",
@@ -408,11 +415,5 @@
"anchor": "center"
}
],
- "filter": [
- "open_now"
- ],
- "allowMove": {
- "enableRelocation": false,
- "enableImproveAccuracy": true
- }
+ "lineRendering": []
}
diff --git a/assets/layers/fixme/fixme.json b/assets/layers/fixme/fixme.json
index dc8fdb04e..f48051011 100644
--- a/assets/layers/fixme/fixme.json
+++ b/assets/layers/fixme/fixme.json
@@ -65,7 +65,7 @@
},
"all_tags"
],
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"centroid",
@@ -73,7 +73,9 @@
],
"icon": "./assets/svg/bug.svg",
"label": "{fixme}
"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#ff0000",
"dashArray": "5,5",
diff --git a/assets/layers/food/food.json b/assets/layers/food/food.json
index aefcd3b1b..2e78caf9e 100644
--- a/assets/layers/food/food.json
+++ b/assets/layers/food/food.json
@@ -1131,7 +1131,16 @@
]
},
"allowMove": true,
- "mapRendering": [
+ "description": {
+ "en": "A layer showing restaurants and fast-food amenities (with a special rendering for friteries)",
+ "nl": "Een laag die restaurants en fast food toont (met een speciale weergave van frituren)",
+ "de": "Eine Ebene mit Restaurants und Fast-Food-Einrichtungen (mit speziellem Rendering für Pommesbuden)",
+ "es": "Una capa mostrando restaurantes y locales de comida rápida (con un renderizado especial para friterías)",
+ "fr": "Un claque montrant les restaurants et les endroits de nourriture rapide (avec un rendu spécial pour les friteries)",
+ "ca": "Una capa que mostra restaurants i locals de menjar ràpid (amb un renderitzat especial per a fregiduries)",
+ "cs": "Vrstva zobrazující restaurace a zařízení rychlého občerstvení (se speciálním vykreslením pro fritézy)"
+ },
+ "pointRendering": [
{
"icon": {
"render": "circle:white;./assets/layers/food/restaurant.svg",
@@ -1193,13 +1202,5 @@
]
}
],
- "description": {
- "en": "A layer showing restaurants and fast-food amenities (with a special rendering for friteries)",
- "nl": "Een laag die restaurants en fast food toont (met een speciale weergave van frituren)",
- "de": "Eine Ebene mit Restaurants und Fast-Food-Einrichtungen (mit speziellem Rendering für Pommesbuden)",
- "es": "Una capa mostrando restaurantes y locales de comida rápida (con un renderizado especial para friterías)",
- "fr": "Un claque montrant les restaurants et les endroits de nourriture rapide (avec un rendu spécial pour les friteries)",
- "ca": "Una capa que mostra restaurants i locals de menjar ràpid (amb un renderitzat especial per a fregiduries)",
- "cs": "Vrstva zobrazující restaurace a zařízení rychlého občerstvení (se speciálním vykreslením pro fritézy)"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/ghost_bike/ghost_bike.json b/assets/layers/ghost_bike/ghost_bike.json
index 71ec9261f..66eba8edb 100644
--- a/assets/layers/ghost_bike/ghost_bike.json
+++ b/assets/layers/ghost_bike/ghost_bike.json
@@ -267,7 +267,14 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing memorials for cyclists, killed in road accidents",
+ "nl": "Een laag die herdenkingsplaatsen voor verongelukte fietsers toont",
+ "de": "Eine Ebene mit Gedenkstätten für Radfahrer, die bei Verkehrsunfällen ums Leben gekommen sind",
+ "fr": "Une couche affichant les mémoriaux en l'hommage de cyclistes tuées lors d'accidents de la route",
+ "pl": "Warstwa pokazujące miejsca upamiętnienia rowerzystów, którzy zginęli w wypadkach drogowych"
+ },
+ "pointRendering": [
{
"icon": "./assets/layers/ghost_bike/ghost_bike.svg",
"iconSize": "40,40",
@@ -278,11 +285,5 @@
"anchor": "bottom"
}
],
- "description": {
- "en": "A layer showing memorials for cyclists, killed in road accidents",
- "nl": "Een laag die herdenkingsplaatsen voor verongelukte fietsers toont",
- "de": "Eine Ebene mit Gedenkstätten für Radfahrer, die bei Verkehrsunfällen ums Leben gekommen sind",
- "fr": "Une couche affichant les mémoriaux en l'hommage de cyclistes tuées lors d'accidents de la route",
- "pl": "Warstwa pokazujące miejsca upamiętnienia rowerzystów, którzy zginęli w wypadkach drogowych"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/governments/governments.json b/assets/layers/governments/governments.json
index 074bdf65a..9ccf153a7 100644
--- a/assets/layers/governments/governments.json
+++ b/assets/layers/governments/governments.json
@@ -62,7 +62,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/governments/government.svg",
"iconSize": "40,40",
@@ -72,5 +72,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/gps_location/gps_location.json b/assets/layers/gps_location/gps_location.json
index 15740cbd8..f54b07561 100644
--- a/assets/layers/gps_location/gps_location.json
+++ b/assets/layers/gps_location/gps_location.json
@@ -3,7 +3,7 @@
"description": "Meta layer showing the current location of the user. Add this to your theme and override the icon to change the appearance of the current location. The object will always have `id=gps` and will have _all_ the properties included in the [`Coordinates`-object](https://developer.mozilla.org/en-US/docs/Web/API/GeolocationCoordinates) (except latitude and longitude) returned by the browser, such as `speed`, `altitude`, `heading`, ....",
"minzoom": 0,
"source": "special",
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "crosshair:var(--catch-detail-color)",
@@ -36,5 +36,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/gps_location_history/gps_location_history.json b/assets/layers/gps_location_history/gps_location_history.json
index ecde04534..1d9afb125 100644
--- a/assets/layers/gps_location_history/gps_location_history.json
+++ b/assets/layers/gps_location_history/gps_location_history.json
@@ -5,7 +5,7 @@
"name": null,
"source": "special",
"shownByDefault": false,
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
@@ -15,5 +15,6 @@
"iconSize": "5,5",
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/gps_track/gps_track.json b/assets/layers/gps_track/gps_track.json
index a3aa51814..600f20077 100644
--- a/assets/layers/gps_track/gps_track.json
+++ b/assets/layers/gps_track/gps_track.json
@@ -44,11 +44,12 @@
"da": "Dit tilbagelagte spor",
"ca": "La teva traça recorreguda"
},
- "mapRendering": [
+ "syncSelection": "global",
+ "pointRendering": [],
+ "lineRendering": [
{
"width": 3,
"color": "#bb000077"
}
- ],
- "syncSelection": "global"
+ ]
}
diff --git a/assets/layers/hackerspace/hackerspace.json b/assets/layers/hackerspace/hackerspace.json
index 2beb640e2..b297d8a69 100644
--- a/assets/layers/hackerspace/hackerspace.json
+++ b/assets/layers/hackerspace/hackerspace.json
@@ -320,7 +320,9 @@
]
}
},
- "mapRendering": [
+ "allowMove": true,
+ "deletion": true,
+ "pointRendering": [
{
"icon": {
"render": "./assets/themes/hackerspaces/glider.svg",
@@ -341,12 +343,12 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#00f",
"width": "8"
}
- ],
- "allowMove": true,
- "deletion": true
+ ]
}
diff --git a/assets/layers/home_location/home_location.json b/assets/layers/home_location/home_location.json
index d0ab06638..3a6177f32 100644
--- a/assets/layers/home_location/home_location.json
+++ b/assets/layers/home_location/home_location.json
@@ -3,7 +3,7 @@
"description": "Meta layer showing the home location of the user. The home location can be set in the [profile settings](https://www.openstreetmap.org/profile/edit) of OpenStreetMap.",
"minzoom": 0,
"source": "special",
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/svg/home.svg",
"iconSize": "20,20",
@@ -12,5 +12,6 @@
"centroid"
]
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/hospital/hospital.json b/assets/layers/hospital/hospital.json
index 3db72a174..43dcfae7c 100644
--- a/assets/layers/hospital/hospital.json
+++ b/assets/layers/hospital/hospital.json
@@ -110,7 +110,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/hospital/hospital.svg",
"iconSize": "40,40",
@@ -119,7 +119,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#fcd862",
"width": 1
diff --git a/assets/layers/hotel/hotel.json b/assets/layers/hotel/hotel.json
index e1909a0c7..d984b911e 100644
--- a/assets/layers/hotel/hotel.json
+++ b/assets/layers/hotel/hotel.json
@@ -53,17 +53,6 @@
]
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "circle:white;./assets/layers/hotel/hotel.svg",
- "iconSize": "40,40",
- "anchor": "center"
- }
- ],
"tagRenderings": [
"images",
"reviews",
@@ -105,5 +94,17 @@
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": true
- }
+ },
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "circle:white;./assets/layers/hotel/hotel.svg",
+ "iconSize": "40,40",
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/hydrant/hydrant.json b/assets/layers/hydrant/hydrant.json
index 6c46ab7d6..3e1a036ae 100644
--- a/assets/layers/hydrant/hydrant.json
+++ b/assets/layers/hydrant/hydrant.json
@@ -492,21 +492,6 @@
}
}
],
- "mapRendering": [
- {
- "icon": "./assets/themes/hailhydrant/hydrant.svg",
- "iconSize": "20,20",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f",
- "width": "8"
- }
- ],
"units": [
{
"applicableUnits": [
@@ -539,5 +524,22 @@
"fire_hydrant:diameter"
]
}
+ ],
+ "pointRendering": [
+ {
+ "icon": "./assets/themes/hailhydrant/hydrant.svg",
+ "iconSize": "20,20",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#00f",
+ "width": "8"
+ }
]
}
diff --git a/assets/layers/import_candidate/import_candidate.json b/assets/layers/import_candidate/import_candidate.json
index 99fb3f0b7..673eb9048 100644
--- a/assets/layers/import_candidate/import_candidate.json
+++ b/assets/layers/import_candidate/import_candidate.json
@@ -2,7 +2,14 @@
"id": "import_candidate",
"description": "Layer used as template in the importHelper",
"source": "special",
- "mapRendering": [
+ "title": "Import candidate",
+ "tagRenderings": [
+ {
+ "id": "all_tags",
+ "render": "{all_tags()}"
+ }
+ ],
+ "pointRendering": [
{
"location": [
"point",
@@ -13,11 +20,5 @@
"anchor": "center"
}
],
- "title": "Import candidate",
- "tagRenderings": [
- {
- "id": "all_tags",
- "render": "{all_tags()}"
- }
- ]
+ "lineRendering": []
}
diff --git a/assets/layers/indoors/indoors.json b/assets/layers/indoors/indoors.json
index 333314ae7..ec3e5ce0d 100644
--- a/assets/layers/indoors/indoors.json
+++ b/assets/layers/indoors/indoors.json
@@ -152,18 +152,7 @@
}
}
],
- "mapRendering": [
- {
- "color": "#d3d7d588",
- "width": "8",
- "offset": "-4",
- "fill": "no"
- },
- {
- "color": "#4f5551",
- "fill": "no",
- "width": "2"
- },
+ "pointRendering": [
{
"label": {
"render": "{name}
",
@@ -245,5 +234,18 @@
"iconSize": "15,15",
"anchor": "bottom"
}
+ ],
+ "lineRendering": [
+ {
+ "color": "#d3d7d588",
+ "width": "8",
+ "offset": "-4",
+ "fill": "no"
+ },
+ {
+ "color": "#4f5551",
+ "fill": "no",
+ "width": "2"
+ }
]
}
diff --git a/assets/layers/information_board/information_board.json b/assets/layers/information_board/information_board.json
index 44e19b58e..b99e3bc70 100644
--- a/assets/layers/information_board/information_board.json
+++ b/assets/layers/information_board/information_board.json
@@ -69,19 +69,6 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
- {
- "icon": "./assets/layers/information_board/board.svg",
- "iconSize": "40,40",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f"
- }
- ],
"description": {
"en": "A layer showing touristical, road side information boards (e.g. giving information about the landscape, a building, a feature, a map, …)",
"nl": "Deze laag toont informatieborden in de publieke ruimte die uitleg geven over een bezienswaardigheid (bv. uitleg over het landschap, een ruine, een kaart van de omgeving, ...)",
@@ -89,5 +76,20 @@
"es": "Una capa que muestra paneles informativos turísticos (ej. informan sobre el paisaje, una construcción, una característica, un mapa, ...)",
"ca": "Una capa que mostra panells informatius turístics (p.e. informen sobre el paissatge, una construcció, una característica, un mapa, …)",
"pl": "Warstwa pokazujące przydrożne tablice informacyjne dla turystów (np. informujące o krajobrazie, budynku, obiekcie, mapa, ...)"
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "./assets/layers/information_board/board.svg",
+ "iconSize": "40,40",
+ "location": [
+ "point"
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#00f"
+ }
+ ]
}
diff --git a/assets/layers/kerbs/kerbs.json b/assets/layers/kerbs/kerbs.json
index df03d77b2..43081f520 100644
--- a/assets/layers/kerbs/kerbs.json
+++ b/assets/layers/kerbs/kerbs.json
@@ -32,39 +32,6 @@
"pl": "Krawężnik"
}
},
- "mapRendering": [
- {
- "location": [
- "point"
- ],
- "icon": {
- "render": "./assets/layers/kerbs/KerbIcon.svg",
- "mappings": [
- {
- "if": "kerb=raised",
- "then": "./assets/layers/kerbs/raised.svg"
- },
- {
- "if": "kerb=lowered",
- "then": "./assets/layers/kerbs/lowered.svg"
- },
- {
- "if": "kerb=flush",
- "then": "./assets/layers/kerbs/flush.svg"
- },
- {
- "if": "kerb=no",
- "then": "./assets/layers/kerbs/no.svg"
- }
- ]
- }
- },
- {
- "color": "#f44e42",
- "fill": "no",
- "width": "8"
- }
- ],
"tagRenderings": [
"images",
{
@@ -409,5 +376,40 @@
"kerb:height"
]
}
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point"
+ ],
+ "icon": {
+ "render": "./assets/layers/kerbs/KerbIcon.svg",
+ "mappings": [
+ {
+ "if": "kerb=raised",
+ "then": "./assets/layers/kerbs/raised.svg"
+ },
+ {
+ "if": "kerb=lowered",
+ "then": "./assets/layers/kerbs/lowered.svg"
+ },
+ {
+ "if": "kerb=flush",
+ "then": "./assets/layers/kerbs/flush.svg"
+ },
+ {
+ "if": "kerb=no",
+ "then": "./assets/layers/kerbs/no.svg"
+ }
+ ]
+ }
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#f44e42",
+ "fill": "no",
+ "width": "8"
+ }
]
}
diff --git a/assets/layers/kindergarten_childcare/kindergarten_childcare.json b/assets/layers/kindergarten_childcare/kindergarten_childcare.json
index 638d16f99..c029bb749 100644
--- a/assets/layers/kindergarten_childcare/kindergarten_childcare.json
+++ b/assets/layers/kindergarten_childcare/kindergarten_childcare.json
@@ -166,7 +166,12 @@
]
}
],
- "mapRendering": [
+ "allowMove": {
+ "enableRelocation": true,
+ "enableImproveAccuracy": true
+ },
+ "deletion": true,
+ "pointRendering": [
{
"location": [
"point",
@@ -192,15 +197,12 @@
}
]
}
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#62fc6c",
"width": 1
}
- ],
- "allowMove": {
- "enableRelocation": true,
- "enableImproveAccuracy": true
- },
- "deletion": true
+ ]
}
diff --git a/assets/layers/last_click/last_click.json b/assets/layers/last_click/last_click.json
index 72af35943..9013811d9 100644
--- a/assets/layers/last_click/last_click.json
+++ b/assets/layers/last_click/last_click.json
@@ -69,7 +69,24 @@
}
}
],
- "mapRendering": [
+ "filter": [
+ {
+ "id": "action",
+ "options": [
+ {
+ "default": true,
+ "question": "only_if_action_is_possible",
+ "osmTags": {
+ "or": [
+ "has_note_layer=yes",
+ "has_presets=yes"
+ ]
+ }
+ }
+ ]
+ }
+ ],
+ "pointRendering": [
{
"icon": {
"mappings": [
@@ -160,21 +177,5 @@
}
}
],
- "filter": [
- {
- "id": "action",
- "options": [
- {
- "default": true,
- "question": "only_if_action_is_possible",
- "osmTags": {
- "or": [
- "has_note_layer=yes",
- "has_presets=yes"
- ]
- }
- }
- ]
- }
- ]
+ "lineRendering": []
}
diff --git a/assets/layers/map/map.json b/assets/layers/map/map.json
index 0e2879d34..f306d61be 100644
--- a/assets/layers/map/map.json
+++ b/assets/layers/map/map.json
@@ -329,7 +329,7 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "./assets/layers/map/map.svg",
@@ -368,7 +368,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#00f",
"width": "8"
diff --git a/assets/layers/maproulette/maproulette.json b/assets/layers/maproulette/maproulette.json
index 549318a1a..6c045e406 100644
--- a/assets/layers/maproulette/maproulette.json
+++ b/assets/layers/maproulette/maproulette.json
@@ -12,53 +12,6 @@
"ca": "Capa que mostra totes les tasques de MapRoulette",
"pl": "Warstwa pokazująca wszystkie zadania w MapRoulette"
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "./assets/layers/maproulette/logomark.svg",
- "mappings": [
- {
- "if": "status=0",
- "then": "pin:#959DFF"
- },
- {
- "if": "status=1",
- "then": "pin:#65D2DA"
- },
- {
- "if": "status=2",
- "then": "pin:#F7BB59"
- },
- {
- "if": "status=3",
- "then": "pin:#F7BB59"
- },
- {
- "if": "status=4",
- "then": "pin:#737373"
- },
- {
- "if": "status=5",
- "then": "pin:#CCB186"
- },
- {
- "if": "status=6",
- "then": "pin:#FF5E63"
- },
- {
- "if": "status=9",
- "then": "pin:#FF349C"
- }
- ]
- },
- "iconSize": "40,40",
- "anchor": "bottom"
- }
- ],
"tagRenderings": [
{
"id": "status",
@@ -335,5 +288,53 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "./assets/layers/maproulette/logomark.svg",
+ "mappings": [
+ {
+ "if": "status=0",
+ "then": "pin:#959DFF"
+ },
+ {
+ "if": "status=1",
+ "then": "pin:#65D2DA"
+ },
+ {
+ "if": "status=2",
+ "then": "pin:#F7BB59"
+ },
+ {
+ "if": "status=3",
+ "then": "pin:#F7BB59"
+ },
+ {
+ "if": "status=4",
+ "then": "pin:#737373"
+ },
+ {
+ "if": "status=5",
+ "then": "pin:#CCB186"
+ },
+ {
+ "if": "status=6",
+ "then": "pin:#FF5E63"
+ },
+ {
+ "if": "status=9",
+ "then": "pin:#FF349C"
+ }
+ ]
+ },
+ "iconSize": "40,40",
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/maproulette_challenge/maproulette_challenge.json b/assets/layers/maproulette_challenge/maproulette_challenge.json
index d110d78ca..e86f934f7 100644
--- a/assets/layers/maproulette_challenge/maproulette_challenge.json
+++ b/assets/layers/maproulette_challenge/maproulette_challenge.json
@@ -24,53 +24,6 @@
"render": "
"
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "./assets/layers/maproulette/logomark.svg",
- "mappings": [
- {
- "if": "mr_taskStatus=Created",
- "then": "pin:#959DFF"
- },
- {
- "if": "mr_taskStatus=Fixed",
- "then": "pin:#65D2DA"
- },
- {
- "if": "mr_taskStatus=False positive",
- "then": "pin:#F7BB59"
- },
- {
- "if": "mr_taskStatus=Skipped",
- "then": "pin:#F7BB59"
- },
- {
- "if": "mr_taskStatus=Deleted",
- "then": "pin:#737373"
- },
- {
- "if": "mr_taskStatus=Already fixed",
- "then": "pin:#CCB186"
- },
- {
- "if": "mr_taskStatus=Too hard",
- "then": "pin:#FF5E63"
- },
- {
- "if": "mr_taskStatus=Disabled",
- "then": "pin:#FF349C"
- }
- ]
- },
- "iconSize": "40,40",
- "anchor": "bottom"
- }
- ],
"tagRenderings": [
{
"id": "details",
@@ -226,5 +179,53 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "./assets/layers/maproulette/logomark.svg",
+ "mappings": [
+ {
+ "if": "mr_taskStatus=Created",
+ "then": "pin:#959DFF"
+ },
+ {
+ "if": "mr_taskStatus=Fixed",
+ "then": "pin:#65D2DA"
+ },
+ {
+ "if": "mr_taskStatus=False positive",
+ "then": "pin:#F7BB59"
+ },
+ {
+ "if": "mr_taskStatus=Skipped",
+ "then": "pin:#F7BB59"
+ },
+ {
+ "if": "mr_taskStatus=Deleted",
+ "then": "pin:#737373"
+ },
+ {
+ "if": "mr_taskStatus=Already fixed",
+ "then": "pin:#CCB186"
+ },
+ {
+ "if": "mr_taskStatus=Too hard",
+ "then": "pin:#FF5E63"
+ },
+ {
+ "if": "mr_taskStatus=Disabled",
+ "then": "pin:#FF349C"
+ }
+ ]
+ },
+ "iconSize": "40,40",
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/matchpoint/matchpoint.json b/assets/layers/matchpoint/matchpoint.json
index 16375a75a..80b520586 100644
--- a/assets/layers/matchpoint/matchpoint.json
+++ b/assets/layers/matchpoint/matchpoint.json
@@ -2,7 +2,7 @@
"id": "matchpoint",
"description": "The default rendering for a locationInput which snaps onto another object",
"source": "special",
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
@@ -10,5 +10,6 @@
],
"icon": "./assets/svg/crosshair-empty.svg"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/maxspeed/maxspeed.json b/assets/layers/maxspeed/maxspeed.json
index 114c788c1..2ecb53cb9 100644
--- a/assets/layers/maxspeed/maxspeed.json
+++ b/assets/layers/maxspeed/maxspeed.json
@@ -104,41 +104,6 @@
}
],
"allowSplit": true,
- "mapRendering": [
- {
- "icon": {
- "render": null,
- "mappings": [
- {
- "if": "maxspeed~[1-9]0|1[0-4]0",
- "then": "./assets/themes/maxspeed/maxspeed_{maxspeed} mph.svg"
- },
- {
- "if": "maxspeed~[1-9]0|1[0-4]0 mph",
- "then": "./assets/themes/maxspeed/maxspeed_{maxspeed}.svg"
- }
- ]
- },
- "iconSize": "32,32",
- "location": [
- "point",
- "projected_centerpoint"
- ],
- "anchor": "center"
- },
- {
- "color": {
- "render": "#000000",
- "mappings": [
- {
- "if": "maxspeed=",
- "then": "#ff0000"
- }
- ]
- },
- "width": "3"
- }
- ],
"units": [
{
"applicableUnits": [
@@ -205,5 +170,42 @@
"maxspeed"
]
}
+ ],
+ "pointRendering": [
+ {
+ "icon": {
+ "render": null,
+ "mappings": [
+ {
+ "if": "maxspeed~[1-9]0|1[0-4]0",
+ "then": "./assets/themes/maxspeed/maxspeed_{maxspeed} mph.svg"
+ },
+ {
+ "if": "maxspeed~[1-9]0|1[0-4]0 mph",
+ "then": "./assets/themes/maxspeed/maxspeed_{maxspeed}.svg"
+ }
+ ]
+ },
+ "iconSize": "32,32",
+ "location": [
+ "point",
+ "projected_centerpoint"
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": {
+ "render": "#000000",
+ "mappings": [
+ {
+ "if": "maxspeed=",
+ "then": "#ff0000"
+ }
+ ]
+ },
+ "width": "3"
+ }
]
}
diff --git a/assets/layers/memorial/memorial.json b/assets/layers/memorial/memorial.json
index 2a9dedca3..34fb1eea5 100644
--- a/assets/layers/memorial/memorial.json
+++ b/assets/layers/memorial/memorial.json
@@ -27,7 +27,12 @@
}
}
],
- "mapRendering": [
+ "deletion": true,
+ "allowMove": {
+ "enableImproveAccuracy": true,
+ "enableRelocation": false
+ },
+ "pointRendering": [
{
"location": [
"centroid",
@@ -36,9 +41,5 @@
"icon": "circle:white;./assets/layers/memorial/plaque.svg"
}
],
- "deletion": true,
- "allowMove": {
- "enableImproveAccuracy": true,
- "enableRelocation": false
- }
+ "lineRendering": []
}
diff --git a/assets/layers/named_streets/named_streets.json b/assets/layers/named_streets/named_streets.json
index 539acd577..49fef0c78 100644
--- a/assets/layers/named_streets/named_streets.json
+++ b/assets/layers/named_streets/named_streets.json
@@ -10,11 +10,12 @@
]
}
},
- "mapRendering": [
+ "shownByDefault": false,
+ "pointRendering": [],
+ "lineRendering": [
{
"color": "#ccc",
"width": "3"
}
- ],
- "shownByDefault": false
+ ]
}
diff --git a/assets/layers/nature_reserve/nature_reserve.json b/assets/layers/nature_reserve/nature_reserve.json
index 7e9ee0669..b3092dd64 100644
--- a/assets/layers/nature_reserve/nature_reserve.json
+++ b/assets/layers/nature_reserve/nature_reserve.json
@@ -518,7 +518,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/layers/nature_reserve/nature_reserve.svg",
"iconSize": "50,50",
@@ -527,7 +527,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#3c3",
"width": "1"
diff --git a/assets/layers/note/note.json b/assets/layers/note/note.json
index 8509ed685..b55615a10 100644
--- a/assets/layers/note/note.json
+++ b/assets/layers/note/note.json
@@ -100,35 +100,6 @@
}
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "note",
- "mappings": [
- {
- "if": "closed_at~*",
- "then": "resolved"
- }
- ]
- },
- "iconSize": "40,40",
- "iconBadges": [
- {
- "if": "_total_comments>1",
- "then": "circle:white;speech_bubble"
- },
- {
- "if": "_is_import_note~*",
- "then": "addSmall"
- }
- ],
- "anchor": "bottom"
- }
- ],
"filter": [
{
"id": "search",
@@ -344,5 +315,35 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "note",
+ "mappings": [
+ {
+ "if": "closed_at~*",
+ "then": "resolved"
+ }
+ ]
+ },
+ "iconSize": "40,40",
+ "iconBadges": [
+ {
+ "if": "_total_comments>1",
+ "then": "circle:white;speech_bubble"
+ },
+ {
+ "if": "_is_import_note~*",
+ "then": "addSmall"
+ }
+ ],
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/observation_tower/observation_tower.json b/assets/layers/observation_tower/observation_tower.json
index d5446b2d0..43d7d50cf 100644
--- a/assets/layers/observation_tower/observation_tower.json
+++ b/assets/layers/observation_tower/observation_tower.json
@@ -336,7 +336,7 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/observation_tower/Tower_observation.svg",
"iconSize": "40,40",
@@ -346,5 +346,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/osm_community_index/osm_community_index.json b/assets/layers/osm_community_index/osm_community_index.json
index 908e1d4ec..ed59f62f3 100644
--- a/assets/layers/osm_community_index/osm_community_index.json
+++ b/assets/layers/osm_community_index/osm_community_index.json
@@ -39,20 +39,6 @@
"description": "Community Links (Discord, meetups, Slack groups, IRC channels, mailing lists etc...)"
}
],
- "mapRendering": [
- {
- "icon": "pin:#6BC4F7;./assets/layers/osm_community_index/osm.svg",
- "iconSize": "40,40",
- "location": [
- "point"
- ],
- "anchor": "bottom"
- },
- {
- "color": "#444444",
- "width": "1"
- }
- ],
"filter": [
{
"id": "country",
@@ -165,5 +151,21 @@
"ca": "Una capa que mostra les comunitats d'OpenStreetMap",
"fr": "Une couche affichant les communautés OpenStreetMap",
"pl": "Warstwa pokazująca społeczności OpenStreetMap"
- }
+ },
+ "pointRendering": [
+ {
+ "icon": "pin:#6BC4F7;./assets/layers/osm_community_index/osm.svg",
+ "iconSize": "40,40",
+ "location": [
+ "point"
+ ],
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#444444",
+ "width": "1"
+ }
+ ]
}
diff --git a/assets/layers/parcel_lockers/parcel_lockers.json b/assets/layers/parcel_lockers/parcel_lockers.json
index 62d6c39b2..ae95cc9fc 100644
--- a/assets/layers/parcel_lockers/parcel_lockers.json
+++ b/assets/layers/parcel_lockers/parcel_lockers.json
@@ -302,7 +302,7 @@
"enableImproveAccuracy": true
},
"deletion": true,
- "mapRendering": [
+ "pointRendering": [
{
"icon": "square:white;./assets/layers/parcel_lockers/parcel_lockers.svg",
"iconBadges": [
@@ -318,5 +318,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/parking/parking.json b/assets/layers/parking/parking.json
index c61d92edb..fa689476e 100644
--- a/assets/layers/parking/parking.json
+++ b/assets/layers/parking/parking.json
@@ -272,7 +272,7 @@
"enableRelocation": false,
"enableImproveAccuracy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/layers/parking/parking.svg",
"iconSize": "36,36",
@@ -292,7 +292,9 @@
}
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"width": 2,
"color": "#ddcc00"
diff --git a/assets/layers/parking_spaces/parking_spaces.json b/assets/layers/parking_spaces/parking_spaces.json
index 4126a614c..b24934049 100644
--- a/assets/layers/parking_spaces/parking_spaces.json
+++ b/assets/layers/parking_spaces/parking_spaces.json
@@ -199,7 +199,7 @@
}
]
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "./assets/layers/parking_spaces/parking_space.svg",
@@ -216,7 +216,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#696969",
"width": "1"
diff --git a/assets/layers/parking_ticket_machine/parking_ticket_machine.json b/assets/layers/parking_ticket_machine/parking_ticket_machine.json
index 854a25729..3ef3ee0ec 100644
--- a/assets/layers/parking_ticket_machine/parking_ticket_machine.json
+++ b/assets/layers/parking_ticket_machine/parking_ticket_machine.json
@@ -83,7 +83,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
@@ -93,5 +93,6 @@
"iconSize": "20,20",
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/pedestrian_path/pedestrian_path.json b/assets/layers/pedestrian_path/pedestrian_path.json
index 0d238b7c1..1f5b9ab02 100644
--- a/assets/layers/pedestrian_path/pedestrian_path.json
+++ b/assets/layers/pedestrian_path/pedestrian_path.json
@@ -24,13 +24,15 @@
"de": "Fußgängerwege, insbesondere für die Navigation in Gebäuden und die Aufnahme von Eingängen in diese Ebene",
"fr": "Sentiers piétonniers, particulièrement utilisés pour la navigation intérieure et les entrées d'accrochage à cette couche"
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/svg/bug.svg",
"location": [
"point"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#b33",
"width": 4,
diff --git a/assets/layers/pharmacy/pharmacy.json b/assets/layers/pharmacy/pharmacy.json
index 1fd320d76..b782772c0 100644
--- a/assets/layers/pharmacy/pharmacy.json
+++ b/assets/layers/pharmacy/pharmacy.json
@@ -117,31 +117,6 @@
]
}
],
- "mapRendering": [
- {
- "icon": "./assets/layers/pharmacy/pharmacy.svg",
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "icons.isOpen"
- }
- ],
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- },
- "anchor": "bottom"
- }
- ],
"filter": [
{
"id": "drive-through",
@@ -187,5 +162,31 @@
}
],
"deletion": true,
- "allowMove": true
+ "allowMove": true,
+ "pointRendering": [
+ {
+ "icon": "./assets/layers/pharmacy/pharmacy.svg",
+ "iconSize": "40,40",
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "icons.isOpen"
+ }
+ ],
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ },
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/physiotherapist/physiotherapist.json b/assets/layers/physiotherapist/physiotherapist.json
index b63b9372f..99d95c5f3 100644
--- a/assets/layers/physiotherapist/physiotherapist.json
+++ b/assets/layers/physiotherapist/physiotherapist.json
@@ -60,7 +60,9 @@
"filter": [
"open_now"
],
- "mapRendering": [
+ "deletion": true,
+ "allowMove": true,
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/physiotherapist/doctors.svg",
"iconSize": "40,40",
@@ -71,6 +73,5 @@
"anchor": "center"
}
],
- "deletion": true,
- "allowMove": true
+ "lineRendering": []
}
diff --git a/assets/layers/picnic_table/picnic_table.json b/assets/layers/picnic_table/picnic_table.json
index 3d2ba4cee..3c10e7a24 100644
--- a/assets/layers/picnic_table/picnic_table.json
+++ b/assets/layers/picnic_table/picnic_table.json
@@ -129,7 +129,7 @@
"enableRelocation": false,
"enableImproveAccuraccy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:#e6cf39;./assets/layers/picnic_table/picnic_table.svg",
"iconSize": "35,35",
@@ -139,5 +139,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/play_forest/play_forest.json b/assets/layers/play_forest/play_forest.json
index 7ceaf32c7..1811170c5 100644
--- a/assets/layers/play_forest/play_forest.json
+++ b/assets/layers/play_forest/play_forest.json
@@ -106,7 +106,7 @@
"description": "Een zone in het bos, duidelijk gemarkeerd als speelzone met de overeenkomstige borden.
"
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/layers/play_forest/icon.svg",
"iconSize": "40,40",
@@ -115,7 +115,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#007055",
"width": "2"
diff --git a/assets/layers/playground/playground.json b/assets/layers/playground/playground.json
index 577667d9f..0d6c28796 100644
--- a/assets/layers/playground/playground.json
+++ b/assets/layers/playground/playground.json
@@ -594,7 +594,7 @@
]
}
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/playgrounds/playground.svg",
"iconBadges": [
@@ -633,7 +633,9 @@
"point",
"centroid"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#5dbaa9",
"width": "1"
diff --git a/assets/layers/postboxes/postboxes.json b/assets/layers/postboxes/postboxes.json
index d662fac72..d525351e3 100644
--- a/assets/layers/postboxes/postboxes.json
+++ b/assets/layers/postboxes/postboxes.json
@@ -77,7 +77,7 @@
]
}
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/layers/postboxes/postbox.svg",
"iconSize": "40,40",
@@ -86,7 +86,9 @@
"centroid"
],
"anchor": "bottom"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#DADADA",
"width": "1"
diff --git a/assets/layers/postoffices/postoffices.json b/assets/layers/postoffices/postoffices.json
index 0db761b05..ce3b8e85a 100644
--- a/assets/layers/postoffices/postoffices.json
+++ b/assets/layers/postoffices/postoffices.json
@@ -464,7 +464,7 @@
"filter": [
"open_now"
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "square:white;./assets/layers/postoffices/post_office.svg",
"iconBadges": [
@@ -483,7 +483,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#DADADA",
"width": "1"
diff --git a/assets/layers/public_bookcase/public_bookcase.json b/assets/layers/public_bookcase/public_bookcase.json
index 835a99e0a..9b1753874 100644
--- a/assets/layers/public_bookcase/public_bookcase.json
+++ b/assets/layers/public_bookcase/public_bookcase.json
@@ -544,7 +544,7 @@
},
"has_image"
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:#ffffff;./assets/themes/bookcases/bookcase.svg",
"label": {
@@ -559,7 +559,9 @@
"point",
"centroid"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#0000ff",
"width": "8"
diff --git a/assets/layers/railway_platforms/railway_platforms.json b/assets/layers/railway_platforms/railway_platforms.json
index 142097ebd..5d5d9a398 100644
--- a/assets/layers/railway_platforms/railway_platforms.json
+++ b/assets/layers/railway_platforms/railway_platforms.json
@@ -74,10 +74,7 @@
},
"level"
],
- "mapRendering": [
- {
- "color": "gray"
- },
+ "pointRendering": [
{
"icon": "./assets/themes/stations/rail-light.svg",
"location": [
@@ -93,5 +90,10 @@
]
}
}
+ ],
+ "lineRendering": [
+ {
+ "color": "gray"
+ }
]
}
diff --git a/assets/layers/rainbow_crossings/rainbow_crossings.json b/assets/layers/rainbow_crossings/rainbow_crossings.json
index e1dc3a028..559b1f818 100644
--- a/assets/layers/rainbow_crossings/rainbow_crossings.json
+++ b/assets/layers/rainbow_crossings/rainbow_crossings.json
@@ -109,7 +109,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "./assets/themes/rainbow_crossings/crossing.svg",
@@ -126,7 +126,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "red",
"width": "5",
@@ -134,4 +136,4 @@
"lineCap": "square"
}
]
-}
\ No newline at end of file
+}
diff --git a/assets/layers/range/range.json b/assets/layers/range/range.json
index a19ab32a4..aa985b8be 100644
--- a/assets/layers/range/range.json
+++ b/assets/layers/range/range.json
@@ -5,7 +5,8 @@
"source": "special",
"name": null,
"shownByDefault": false,
- "mapRendering": [
+ "pointRendering": [],
+ "lineRendering": [
{
"width": 3,
"fill": "no",
diff --git a/assets/layers/reception_desk/reception_desk.json b/assets/layers/reception_desk/reception_desk.json
index ca304abaa..40e9c8a77 100644
--- a/assets/layers/reception_desk/reception_desk.json
+++ b/assets/layers/reception_desk/reception_desk.json
@@ -23,17 +23,6 @@
"source": {
"osmTags": "amenity=reception_desk"
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "circle:white;./assets/layers/reception_desk/reception_desk.svg",
- "iconSize": "40,40",
- "anchor": "center"
- }
- ],
"tagRenderings": [
"images",
"level",
@@ -119,5 +108,17 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "circle:white;./assets/layers/reception_desk/reception_desk.svg",
+ "iconSize": "40,40",
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/recycling/recycling.json b/assets/layers/recycling/recycling.json
index f85b8abd6..5b6bb9faa 100644
--- a/assets/layers/recycling/recycling.json
+++ b/assets/layers/recycling/recycling.json
@@ -76,446 +76,6 @@
}
]
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "circle:white;./assets/layers/recycling/recycling-14.svg",
- "mappings": [
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:batteries=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/batteries.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:beverage_cartons=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/beverage_cartons.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:cans=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/cans.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:clothes=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/clothes.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:cooking_oil=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/cooking_oil.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:engine_oil=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/engine_oil.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:fluorescent_tubes=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/fluorescent_tubes.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:glass=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/glass.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:glass_bottles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/glass_bottles.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- {
- "or": [
- "recycling:green_waste=yes",
- "recycling:organic=yes"
- ]
- }
- ]
- },
- "then": "circle:white;./assets/layers/recycling/garden_waste.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:light_bulbs=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/light_bulbs.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:newspaper=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/newspaper.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:paper=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/paper.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:plastic_bottles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/plastic_bottles.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:plastic_packaging=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/plastic_packaging.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:plastic=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/plastic.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:printer_cartridges=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/printer_cartridges.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:scrap_metal=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/scrap_metal.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:shoes=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/shoes.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- {
- "or": [
- "recycling:small_appliances=yes",
- "recycling:small_electric_appliances=yes"
- ]
- }
- ]
- },
- "then": "circle:white;./assets/layers/recycling/small_electrical_appliances.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:waste=yes"
- ]
- },
- "then": "circle:white;./assets/layers/waste_disposal/waste_disposal.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount=1",
- "recycling:needles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/needles.svg"
- }
- ]
- },
- "iconBadges": [
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:batteries=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/batteries.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:beverage_cartons=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/beverage_cartons.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:cans=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/cans.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:clothes=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/clothes.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:cooking_oil=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/cooking_oil.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:engine_oil=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/engine_oil.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:fluorescent_tubes=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/fluorescent_tubes.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:glass=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/glass.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:glass_bottles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/glass_bottles.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- {
- "or": [
- "recycling:green_waste=yes",
- "recycling:organic=yes"
- ]
- }
- ]
- },
- "then": "circle:white;./assets/layers/recycling/garden_waste.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:light_bulbs=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/light_bulbs.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:newspaper=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/newspaper.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:paper=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/paper.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:plastic_bottles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/plastic_bottles.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:plastic_packaging=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/plastic_packaging.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:plastic=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/plastic.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:printer_cartridges=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/printer_cartridges.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:scrap_metal=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/scrap_metal.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:shoes=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/shoes.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- {
- "or": [
- "recycling:small_appliances=yes",
- "recycling:small_electrical_appliances=yes"
- ]
- }
- ]
- },
- "then": "circle:white;./assets/layers/recycling/small_electrical_appliances.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:waste=yes"
- ]
- },
- "then": "circle:white;./assets/layers/waste_disposal/waste_disposal.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:needles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/needles.svg"
- },
- {
- "if": {
- "and": [
- "_waste_amount>1",
- "recycling:bicycles=yes"
- ]
- },
- "then": "circle:white;./assets/layers/recycling/bicycles.svg"
- }
- ]
- }
- ],
"presets": [
{
"title": {
@@ -1568,5 +1128,446 @@
"allowMove": {
"enableRelocation": true,
"enableImproveAccuracy": true
- }
-}
\ No newline at end of file
+ },
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "circle:white;./assets/layers/recycling/recycling-14.svg",
+ "mappings": [
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:batteries=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/batteries.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:beverage_cartons=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/beverage_cartons.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:cans=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/cans.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:clothes=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/clothes.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:cooking_oil=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/cooking_oil.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:engine_oil=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/engine_oil.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:fluorescent_tubes=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/fluorescent_tubes.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:glass=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/glass.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:glass_bottles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/glass_bottles.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ {
+ "or": [
+ "recycling:green_waste=yes",
+ "recycling:organic=yes"
+ ]
+ }
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/garden_waste.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:light_bulbs=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/light_bulbs.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:newspaper=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/newspaper.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:paper=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/paper.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:plastic_bottles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/plastic_bottles.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:plastic_packaging=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/plastic_packaging.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:plastic=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/plastic.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:printer_cartridges=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/printer_cartridges.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:scrap_metal=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/scrap_metal.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:shoes=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/shoes.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ {
+ "or": [
+ "recycling:small_appliances=yes",
+ "recycling:small_electric_appliances=yes"
+ ]
+ }
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/small_electrical_appliances.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:waste=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/waste_disposal/waste_disposal.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount=1",
+ "recycling:needles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/needles.svg"
+ }
+ ]
+ },
+ "iconBadges": [
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:batteries=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/batteries.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:beverage_cartons=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/beverage_cartons.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:cans=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/cans.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:clothes=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/clothes.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:cooking_oil=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/cooking_oil.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:engine_oil=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/engine_oil.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:fluorescent_tubes=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/fluorescent_tubes.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:glass=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/glass.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:glass_bottles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/glass_bottles.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ {
+ "or": [
+ "recycling:green_waste=yes",
+ "recycling:organic=yes"
+ ]
+ }
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/garden_waste.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:light_bulbs=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/light_bulbs.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:newspaper=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/newspaper.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:paper=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/paper.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:plastic_bottles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/plastic_bottles.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:plastic_packaging=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/plastic_packaging.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:plastic=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/plastic.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:printer_cartridges=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/printer_cartridges.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:scrap_metal=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/scrap_metal.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:shoes=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/shoes.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ {
+ "or": [
+ "recycling:small_appliances=yes",
+ "recycling:small_electrical_appliances=yes"
+ ]
+ }
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/small_electrical_appliances.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:waste=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/waste_disposal/waste_disposal.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:needles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/needles.svg"
+ },
+ {
+ "if": {
+ "and": [
+ "_waste_amount>1",
+ "recycling:bicycles=yes"
+ ]
+ },
+ "then": "circle:white;./assets/layers/recycling/bicycles.svg"
+ }
+ ]
+ }
+ ],
+ "lineRendering": []
+}
diff --git a/assets/layers/school/school.json b/assets/layers/school/school.json
index dba58550d..69cd64a25 100644
--- a/assets/layers/school/school.json
+++ b/assets/layers/school/school.json
@@ -388,7 +388,7 @@
"source": {
"osmTags": "amenity=school"
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/school/school.svg",
"label": {
@@ -405,7 +405,9 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#fcd862",
"width": 1
diff --git a/assets/layers/selected_element/selected_element.json b/assets/layers/selected_element/selected_element.json
index 876d8ed66..f88785088 100644
--- a/assets/layers/selected_element/selected_element.json
+++ b/assets/layers/selected_element/selected_element.json
@@ -8,7 +8,7 @@
"ca": "Ressalta l'element seleccionat actualment. Anul·leu aquesta capa per tenir diferents colors"
},
"source": "special",
- "mapRendering": [
+ "pointRendering": [
{
"icon": "circle:red",
"iconSize": "1,1",
@@ -20,5 +20,6 @@
"cssClasses": "block relative rounded-full",
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/shelter/shelter.json b/assets/layers/shelter/shelter.json
index 130b390e3..f45df62b5 100644
--- a/assets/layers/shelter/shelter.json
+++ b/assets/layers/shelter/shelter.json
@@ -26,15 +26,6 @@
"nl": "Schuilplaats"
}
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "./assets/layers/shelter/shelter.svg"
- }
- ],
"tagRenderings": [
{
"id": "shelter-type",
@@ -101,5 +92,15 @@
"type": "string"
}
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "./assets/layers/shelter/shelter.svg"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/shops/shops.json b/assets/layers/shops/shops.json
index b66fe38b2..4f29bda8d 100644
--- a/assets/layers/shops/shops.json
+++ b/assets/layers/shops/shops.json
@@ -329,7 +329,55 @@
]
},
"allowMove": true,
- "mapRendering": [
+ "filter": [
+ "open_now",
+ {
+ "id": "shop-type",
+ "options": [
+ {
+ "fields": [
+ {
+ "name": "search",
+ "type": "string"
+ }
+ ],
+ "osmTags": "shop~i~.*{search}.*",
+ "question": {
+ "en": "Only show shops selling {search}",
+ "de": "Nur Geschäfte, die {search} verkaufen",
+ "nl": "Toon enkel winkels die {search} verkopen",
+ "es": "Solo mostrar tiendas que vendan {search}",
+ "fr": "N'afficher que les magasins vendant {search}"
+ }
+ }
+ ]
+ },
+ {
+ "id": "shop-name",
+ "options": [
+ {
+ "fields": [
+ {
+ "name": "search",
+ "type": "string"
+ }
+ ],
+ "osmTags": "name~i~.*{search}.*",
+ "question": {
+ "en": "Only show shops with name {search}",
+ "de": "Nur Geschäfte mit dem Namen {search} anzeigen",
+ "nl": "Toon enkel winkels met naam {search}",
+ "es": "Solo mostrar tiendas con nombre {search}",
+ "fr": "N'afficher que les magasins portant le nom {search}"
+ }
+ }
+ ]
+ },
+ "accepts_cash",
+ "accepts_cards",
+ "has_organic"
+ ],
+ "pointRendering": [
{
"icon": {
"builtin": "id_presets.shop_rendering",
@@ -386,58 +434,12 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#00f",
"width": "8"
}
- ],
- "filter": [
- "open_now",
- {
- "id": "shop-type",
- "options": [
- {
- "fields": [
- {
- "name": "search",
- "type": "string"
- }
- ],
- "osmTags": "shop~i~.*{search}.*",
- "question": {
- "en": "Only show shops selling {search}",
- "de": "Nur Geschäfte, die {search} verkaufen",
- "nl": "Toon enkel winkels die {search} verkopen",
- "es": "Solo mostrar tiendas que vendan {search}",
- "fr": "N'afficher que les magasins vendant {search}"
- }
- }
- ]
- },
- {
- "id": "shop-name",
- "options": [
- {
- "fields": [
- {
- "name": "search",
- "type": "string"
- }
- ],
- "osmTags": "name~i~.*{search}.*",
- "question": {
- "en": "Only show shops with name {search}",
- "de": "Nur Geschäfte mit dem Namen {search} anzeigen",
- "nl": "Toon enkel winkels met naam {search}",
- "es": "Solo mostrar tiendas con nombre {search}",
- "fr": "N'afficher que les magasins portant le nom {search}"
- }
- }
- ]
- },
- "accepts_cash",
- "accepts_cards",
- "has_organic"
]
}
diff --git a/assets/layers/shower/shower.json b/assets/layers/shower/shower.json
index a5cf68a6f..3993478bf 100644
--- a/assets/layers/shower/shower.json
+++ b/assets/layers/shower/shower.json
@@ -213,7 +213,12 @@
"enableImproveAccuracy": true,
"enableRelocation": false
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing (public) showers",
+ "de": "Eine Ebene mit (öffentlichen) Duschen",
+ "fr": "Une couche affichant les douches (publiques)"
+ },
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/shower/shower.svg",
"location": [
@@ -228,9 +233,5 @@
]
}
],
- "description": {
- "en": "A layer showing (public) showers",
- "de": "Eine Ebene mit (öffentlichen) Duschen",
- "fr": "Une couche affichant les douches (publiques)"
- }
-}
\ No newline at end of file
+ "lineRendering": []
+}
diff --git a/assets/layers/slow_roads/slow_roads.json b/assets/layers/slow_roads/slow_roads.json
index 67494e6ba..36699919c 100644
--- a/assets/layers/slow_roads/slow_roads.json
+++ b/assets/layers/slow_roads/slow_roads.json
@@ -248,13 +248,20 @@
}
],
"presets": [],
- "mapRendering": [
+ "description": {
+ "en": "All carfree roads",
+ "nl": "Alle verkeersvrije wegen",
+ "de": "Alle autofreien Straßen"
+ },
+ "pointRendering": [
{
"icon": "./assets/layers/slow_roads/slow_road.svg",
"location": [
"point"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#eaba2a",
"width": "7",
@@ -285,10 +292,5 @@
]
}
}
- ],
- "description": {
- "en": "All carfree roads",
- "nl": "Alle verkeersvrije wegen",
- "de": "Alle autofreien Straßen"
- }
+ ]
}
diff --git a/assets/layers/speed_camera/speed_camera.json b/assets/layers/speed_camera/speed_camera.json
index b563bcac9..897a8b1e1 100644
--- a/assets/layers/speed_camera/speed_camera.json
+++ b/assets/layers/speed_camera/speed_camera.json
@@ -81,15 +81,6 @@
"maxSnapDistance": 10
}
],
- "mapRendering": [
- {
- "icon": "square:white;./assets/layers/speed_camera/speed_camera.svg",
- "location": [
- "point",
- "centroid"
- ]
- }
- ],
"units": [
{
"appliesToKey": [
@@ -147,5 +138,15 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "icon": "square:white;./assets/layers/speed_camera/speed_camera.svg",
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/speed_display/speed_display.json b/assets/layers/speed_display/speed_display.json
index 2ecdfe701..25b25a7f3 100644
--- a/assets/layers/speed_display/speed_display.json
+++ b/assets/layers/speed_display/speed_display.json
@@ -84,15 +84,6 @@
]
}
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "./assets/layers/speed_display/speed_display.svg"
- }
- ],
"units": [
{
"appliesToKey": [
@@ -150,5 +141,15 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "./assets/layers/speed_display/speed_display.svg"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/split_point/split_point.json b/assets/layers/split_point/split_point.json
index e35006cb2..da3316cae 100644
--- a/assets/layers/split_point/split_point.json
+++ b/assets/layers/split_point/split_point.json
@@ -5,7 +5,7 @@
"source": "special",
"name": "Split point",
"title": "Split point",
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
@@ -15,5 +15,6 @@
"iconSize": "30,30",
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/split_road/split_road.json b/assets/layers/split_road/split_road.json
index 3fad3696c..3f3f5bfaf 100644
--- a/assets/layers/split_road/split_road.json
+++ b/assets/layers/split_road/split_road.json
@@ -5,7 +5,7 @@
"source": "special",
"name": null,
"title": null,
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point"
@@ -13,7 +13,9 @@
"icon": "bug",
"iconSize": "30,30",
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"width": "8",
"color": "black"
diff --git a/assets/layers/sport_pitch/sport_pitch.json b/assets/layers/sport_pitch/sport_pitch.json
index 900547099..c881b36bb 100644
--- a/assets/layers/sport_pitch/sport_pitch.json
+++ b/assets/layers/sport_pitch/sport_pitch.json
@@ -573,84 +573,6 @@
]
}
],
- "mapRendering": [
- {
- "icon": {
- "render": "circle:white;./assets/layers/sport_pitch/sport_pitch.svg",
- "mappings": [
- {
- "if": {
- "or": [
- "sport=baseball",
- "sport=basketball",
- "sport=beachvolleyball",
- "sport=boules",
- "sport=skateboard",
- "sport=soccer",
- "sport=table_tennis",
- "sport=tennis",
- "sport=volleyball",
- "sport=equestrian"
- ]
- },
- "then": "circle:white;./assets/layers/sport_pitch/{sport}.svg"
- }
- ]
- },
- "iconBadges": [
- {
- "if": {
- "and": [
- "opening_hours!=24/7",
- "opening_hours~*"
- ]
- },
- "then": "icons.isOpen"
- },
- {
- "if": {
- "or": [
- "access=customers",
- "access=private",
- "access=no"
- ]
- },
- "then": "circle:white;./assets/layers/sport_pitch/lock.svg"
- }
- ],
- "iconSize": {
- "render": "25,25,center",
- "mappings": [
- {
- "if": {
- "or": [
- "_size_classification=medium",
- "id~node/.*"
- ]
- },
- "then": "32,32,center"
- },
- {
- "if": "_size_classification=small",
- "then": "25,25,center"
- },
- {
- "if": "_size_classification=large",
- "then": "40,40,center"
- }
- ]
- },
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": "#00cc00",
- "width": "1",
- "fill": "false"
- }
- ],
"filter": [
{
"id": "accessibility",
@@ -722,5 +644,85 @@
]
},
"open_now"
+ ],
+ "pointRendering": [
+ {
+ "icon": {
+ "render": "circle:white;./assets/layers/sport_pitch/sport_pitch.svg",
+ "mappings": [
+ {
+ "if": {
+ "or": [
+ "sport=baseball",
+ "sport=basketball",
+ "sport=beachvolleyball",
+ "sport=boules",
+ "sport=skateboard",
+ "sport=soccer",
+ "sport=table_tennis",
+ "sport=tennis",
+ "sport=volleyball",
+ "sport=equestrian"
+ ]
+ },
+ "then": "circle:white;./assets/layers/sport_pitch/{sport}.svg"
+ }
+ ]
+ },
+ "iconBadges": [
+ {
+ "if": {
+ "and": [
+ "opening_hours!=24/7",
+ "opening_hours~*"
+ ]
+ },
+ "then": "icons.isOpen"
+ },
+ {
+ "if": {
+ "or": [
+ "access=customers",
+ "access=private",
+ "access=no"
+ ]
+ },
+ "then": "circle:white;./assets/layers/sport_pitch/lock.svg"
+ }
+ ],
+ "iconSize": {
+ "render": "25,25,center",
+ "mappings": [
+ {
+ "if": {
+ "or": [
+ "_size_classification=medium",
+ "id~node/.*"
+ ]
+ },
+ "then": "32,32,center"
+ },
+ {
+ "if": "_size_classification=small",
+ "then": "25,25,center"
+ },
+ {
+ "if": "_size_classification=large",
+ "then": "40,40,center"
+ }
+ ]
+ },
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#00cc00",
+ "width": "1",
+ "fill": "false"
+ }
]
}
diff --git a/assets/layers/sports_centre/sports_centre.json b/assets/layers/sports_centre/sports_centre.json
index 3e34be973..676a218d3 100644
--- a/assets/layers/sports_centre/sports_centre.json
+++ b/assets/layers/sports_centre/sports_centre.json
@@ -43,7 +43,13 @@
]
}
],
- "mapRendering": [
+ "allowMove": {
+ "enableImproveAccuracy": true
+ },
+ "filter": [
+ "open_now"
+ ],
+ "pointRendering": [
{
"icon": "circle:white;./assets/layers/sports_centre/sports_centre.svg",
"iconBadges": [
@@ -56,16 +62,12 @@
"point",
"centroid"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "darkgreen",
"fill": "no"
}
- ],
- "allowMove": {
- "enableImproveAccuracy": true
- },
- "filter": [
- "open_now"
]
}
diff --git a/assets/layers/stairs/stairs.json b/assets/layers/stairs/stairs.json
index 9d416752a..404c99c94 100644
--- a/assets/layers/stairs/stairs.json
+++ b/assets/layers/stairs/stairs.json
@@ -224,7 +224,8 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [],
+ "lineRendering": [
{
"color": "gray",
"width": 10,
diff --git a/assets/layers/street_lamps/street_lamps.json b/assets/layers/street_lamps/street_lamps.json
index 9c9ddef2c..ef34e78e7 100644
--- a/assets/layers/street_lamps/street_lamps.json
+++ b/assets/layers/street_lamps/street_lamps.json
@@ -30,23 +30,6 @@
}
]
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "./assets/layers/street_lamps/street_lamp.svg",
- "iconBadges": [
- {
- "if": "light:colour~*",
- "then": "circle:{light:colour}"
- }
- ],
- "iconSize": "40,40",
- "anchor": "bottom"
- }
- ],
"presets": [
{
"title": {
@@ -499,5 +482,23 @@
"nl": "Een laag die alle straatlantaarns toont",
"de": "Eine Ebene mit Straßenbeleuchtung",
"es": "Una capa que muestra luces callejeras"
- }
+ },
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "./assets/layers/street_lamps/street_lamp.svg",
+ "iconBadges": [
+ {
+ "if": "light:colour~*",
+ "then": "circle:{light:colour}"
+ }
+ ],
+ "iconSize": "40,40",
+ "anchor": "bottom"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/surveillance_camera/surveillance_camera.json b/assets/layers/surveillance_camera/surveillance_camera.json
index 2a23ceaed..570207d6b 100644
--- a/assets/layers/surveillance_camera/surveillance_camera.json
+++ b/assets/layers/surveillance_camera/surveillance_camera.json
@@ -599,7 +599,15 @@
]
}
],
- "mapRendering": [
+ "deletion": true,
+ "description": {
+ "en": "This layer shows surveillance cameras and allows a contributor to update information and add new cameras",
+ "nl": "Deze laag toont bewakingscamera's en laat toe om de informatie te verrijken en om nieuwe camera\"s toe te voegen",
+ "de": "Diese Ebene zeigt die Überwachungskameras an und ermöglicht es, Informationen zu aktualisieren und neue Kameras hinzuzufügen",
+ "es": "Esta capa muestra las cámaras de vigilancia y permite a quien colabora, actualizar la información y agregar nuevas cámaras",
+ "fr": "Cette couche affiche les caméras de surveillance et permet au contributeur de mettre à jour les informations et ajouter de nouvelles caméras"
+ },
+ "pointRendering": [
{
"icon": {
"render": "./assets/themes/surveillance/logo.svg",
@@ -649,18 +657,12 @@
}
]
}
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#f00",
"width": "8"
}
- ],
- "deletion": true,
- "description": {
- "en": "This layer shows surveillance cameras and allows a contributor to update information and add new cameras",
- "nl": "Deze laag toont bewakingscamera's en laat toe om de informatie te verrijken en om nieuwe camera\"s toe te voegen",
- "de": "Diese Ebene zeigt die Überwachungskameras an und ermöglicht es, Informationen zu aktualisieren und neue Kameras hinzuzufügen",
- "es": "Esta capa muestra las cámaras de vigilancia y permite a quien colabora, actualizar la información y agregar nuevas cámaras",
- "fr": "Cette couche affiche les caméras de surveillance et permet au contributeur de mettre à jour les informations et ajouter de nouvelles caméras"
- }
+ ]
}
diff --git a/assets/layers/tertiary_education/tertiary_education.json b/assets/layers/tertiary_education/tertiary_education.json
index c200bee47..4d0b741f9 100644
--- a/assets/layers/tertiary_education/tertiary_education.json
+++ b/assets/layers/tertiary_education/tertiary_education.json
@@ -163,29 +163,6 @@
"email",
"phone"
],
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "iconSize": "40,40",
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- },
- "icon": "circle:white;./assets/layers/school/college.svg",
- "anchor": "center"
- },
- {
- "color": "#22f1f4",
- "width": 1
- }
- ],
"presets": [
{
"title": {
@@ -206,5 +183,30 @@
"fixme=Added with MapComplete, geometry to be drawn"
]
}
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "iconSize": "40,40",
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ },
+ "icon": "circle:white;./assets/layers/school/college.svg",
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#22f1f4",
+ "width": 1
+ }
]
}
diff --git a/assets/layers/ticket_machine/ticket_machine.json b/assets/layers/ticket_machine/ticket_machine.json
index 2d4abc356..38fc54450 100644
--- a/assets/layers/ticket_machine/ticket_machine.json
+++ b/assets/layers/ticket_machine/ticket_machine.json
@@ -83,7 +83,9 @@
}
}
],
- "mapRendering": [
+ "allowMove": true,
+ "deletion": true,
+ "pointRendering": [
{
"icon": "square:lightblue;./assets/themes/stations/public_transport_tickets.svg",
"iconSize": "20,20",
@@ -94,6 +96,5 @@
"anchor": "center"
}
],
- "allowMove": true,
- "deletion": true
+ "lineRendering": []
}
diff --git a/assets/layers/ticket_validator/ticket_validator.json b/assets/layers/ticket_validator/ticket_validator.json
index 351d65b5b..9a67bde52 100644
--- a/assets/layers/ticket_validator/ticket_validator.json
+++ b/assets/layers/ticket_validator/ticket_validator.json
@@ -113,7 +113,9 @@
}
}
],
- "mapRendering": [
+ "allowMove": true,
+ "deletion": true,
+ "pointRendering": [
{
"icon": "square:green;./assets/themes/stations/public_transport_tickets.svg",
"iconSize": "20,20",
@@ -124,6 +126,5 @@
"anchor": "center"
}
],
- "allowMove": true,
- "deletion": true
+ "lineRendering": []
}
diff --git a/assets/layers/toilet/toilet.json b/assets/layers/toilet/toilet.json
index 2432bd198..61bb0d910 100644
--- a/assets/layers/toilet/toilet.json
+++ b/assets/layers/toilet/toilet.json
@@ -663,43 +663,6 @@
"enableRelocation": false,
"enableImproveAccuracy": true
},
- "mapRendering": [
- {
- "icon": {
- "render": "circle:#ffffff;./assets/layers/toilet/toilets.svg",
- "mappings": [
- {
- "if": {
- "or": [
- "wheelchair=yes",
- "wheelchair=designated"
- ]
- },
- "then": "circle:white;./assets/layers/toilet/wheelchair.svg"
- },
- {
- "if": {
- "or": [
- "toilets:position=urinals",
- "toilets:position=urinal"
- ]
- },
- "then": "./assets/layers/toilet/urinal.svg"
- }
- ]
- },
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "icons.isOpen"
- }
- ],
- "location": [
- "point",
- "centroid"
- ]
- }
- ],
"description": {
"en": "A layer showing (public) toilets",
"nl": "Een laag die publieke toiletten toont",
@@ -745,5 +708,43 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "icon": {
+ "render": "circle:#ffffff;./assets/layers/toilet/toilets.svg",
+ "mappings": [
+ {
+ "if": {
+ "or": [
+ "wheelchair=yes",
+ "wheelchair=designated"
+ ]
+ },
+ "then": "circle:white;./assets/layers/toilet/wheelchair.svg"
+ },
+ {
+ "if": {
+ "or": [
+ "toilets:position=urinals",
+ "toilets:position=urinal"
+ ]
+ },
+ "then": "./assets/layers/toilet/urinal.svg"
+ }
+ ]
+ },
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "icons.isOpen"
+ }
+ ],
+ "location": [
+ "point",
+ "centroid"
+ ]
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/toilet_at_amenity/toilet_at_amenity.json b/assets/layers/toilet_at_amenity/toilet_at_amenity.json
index bb99fab71..e41fedc29 100644
--- a/assets/layers/toilet_at_amenity/toilet_at_amenity.json
+++ b/assets/layers/toilet_at_amenity/toilet_at_amenity.json
@@ -342,7 +342,48 @@
},
"neededChangesets": 1
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing (public) toilets located at different places.",
+ "de": "Eine Ebene mit (öffentlichen) Toiletten an verschiedenen Orten.",
+ "nl": "Een laag die (publiek toegankelijke) toiletten toont in verschillende andere voorzieningen."
+ },
+ "units": [
+ {
+ "appliesToKey": [
+ "toilets:door:width"
+ ],
+ "applicableUnits": [
+ {
+ "canonicalDenomination": "m",
+ "alternativeDenomination": [
+ "meter"
+ ],
+ "human": {
+ "en": "meter",
+ "nl": "meter",
+ "fr": "mètre",
+ "de": "Meter",
+ "da": "meter"
+ }
+ },
+ {
+ "canonicalDenomination": "cm",
+ "alternativeDenomination": [
+ "centimeter",
+ "cms"
+ ],
+ "human": {
+ "en": "centimeter",
+ "nl": "centimeter",
+ "fr": "centimètre",
+ "de": "Zentimeter",
+ "da": "centimeter"
+ }
+ }
+ ]
+ }
+ ],
+ "pointRendering": [
{
"icon": {
"render": "circle:white;./assets/layers/toilet/toilets.svg",
@@ -423,45 +464,5 @@
]
}
],
- "description": {
- "en": "A layer showing (public) toilets located at different places.",
- "de": "Eine Ebene mit (öffentlichen) Toiletten an verschiedenen Orten.",
- "nl": "Een laag die (publiek toegankelijke) toiletten toont in verschillende andere voorzieningen."
- },
- "units": [
- {
- "appliesToKey": [
- "toilets:door:width"
- ],
- "applicableUnits": [
- {
- "canonicalDenomination": "m",
- "alternativeDenomination": [
- "meter"
- ],
- "human": {
- "en": "meter",
- "nl": "meter",
- "fr": "mètre",
- "de": "Meter",
- "da": "meter"
- }
- },
- {
- "canonicalDenomination": "cm",
- "alternativeDenomination": [
- "centimeter",
- "cms"
- ],
- "human": {
- "en": "centimeter",
- "nl": "centimeter",
- "fr": "centimètre",
- "de": "Zentimeter",
- "da": "centimeter"
- }
- }
- ]
- }
- ]
+ "lineRendering": []
}
diff --git a/assets/layers/trail/trail.json b/assets/layers/trail/trail.json
index 173f81d4c..5be0b22b7 100644
--- a/assets/layers/trail/trail.json
+++ b/assets/layers/trail/trail.json
@@ -207,7 +207,7 @@
"description": {
"nl": "Aangeduide wandeltochten"
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": {
"render": "./assets/layers/trail/trail.svg",
@@ -227,7 +227,9 @@
"point"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": {
"render": "#335D9F",
diff --git a/assets/layers/transit_routes/transit_routes.json b/assets/layers/transit_routes/transit_routes.json
index 358d50a15..330265da6 100644
--- a/assets/layers/transit_routes/transit_routes.json
+++ b/assets/layers/transit_routes/transit_routes.json
@@ -41,24 +41,6 @@
}
]
},
- "mapRendering": [
- {
- "color": {
- "render": {
- "en": "#ff0000",
- "de": "#ff0000",
- "da": "#ff0000",
- "nl": "#ff0000"
- },
- "mappings": [
- {
- "if": "colour~*",
- "then": "{colour}"
- }
- ]
- }
- }
- ],
"tagRenderings": [
{
"id": "name",
@@ -202,5 +184,24 @@
"da": "Hvilket selskab driver denne buslinje?"
}
}
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {
+ "color": {
+ "render": {
+ "en": "#ff0000",
+ "de": "#ff0000",
+ "da": "#ff0000",
+ "nl": "#ff0000"
+ },
+ "mappings": [
+ {
+ "if": "colour~*",
+ "then": "{colour}"
+ }
+ ]
+ }
+ }
]
}
diff --git a/assets/layers/transit_stops/transit_stops.json b/assets/layers/transit_stops/transit_stops.json
index e9a871a88..376c7b6bc 100644
--- a/assets/layers/transit_stops/transit_stops.json
+++ b/assets/layers/transit_stops/transit_stops.json
@@ -39,19 +39,6 @@
}
]
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "./assets/layers/transit_stops/bus_stop.svg",
- "mappings": []
- },
- "label": "{name}
"
- }
- ],
"calculatedTags": [
"_routes=feat.memberships()",
"_contained_routes_properties=feat.memberships().map(p => {return {id: p.relation.id, name: p.relation.properties.name} }).filter((v,i,a)=>a.findIndex(t=>(JSON.stringify(t) === JSON.stringify(v)))===i)",
@@ -436,5 +423,19 @@
},
"tactile_paving"
],
- "allowMove": false
+ "allowMove": false,
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": {
+ "render": "./assets/layers/transit_stops/bus_stop.svg",
+ "mappings": []
+ },
+ "label": "{name}
"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/tree_node/tree_node.json b/assets/layers/tree_node/tree_node.json
index 744cdc62d..864660eec 100644
--- a/assets/layers/tree_node/tree_node.json
+++ b/assets/layers/tree_node/tree_node.json
@@ -825,7 +825,15 @@
"deletion": {
"minNeededChangesets": 5
},
- "mapRendering": [
+ "description": {
+ "en": "A layer showing trees",
+ "nl": "Een laag die bomen toont",
+ "es": "Una capa que muestra árboles",
+ "de": "Eine Ebene, die Bäume zeigt",
+ "fr": "Une couche montrant les arbres",
+ "da": "Et lag, der viser træer"
+ },
+ "pointRendering": [
{
"icon": {
"render": "circle:#ffffff;./assets/layers/tree_node/unknown.svg",
@@ -856,12 +864,5 @@
"anchor": "bottom"
}
],
- "description": {
- "en": "A layer showing trees",
- "nl": "Een laag die bomen toont",
- "es": "Una capa que muestra árboles",
- "de": "Eine Ebene, die Bäume zeigt",
- "fr": "Une couche montrant les arbres",
- "da": "Et lag, der viser træer"
- }
+ "lineRendering": []
}
diff --git a/assets/layers/vending_machine/vending_machine.json b/assets/layers/vending_machine/vending_machine.json
index 6bb13589c..f52164a7d 100644
--- a/assets/layers/vending_machine/vending_machine.json
+++ b/assets/layers/vending_machine/vending_machine.json
@@ -340,7 +340,172 @@
]
}
],
- "mapRendering": [
+ "filter": [
+ "open_now",
+ {
+ "id": "vending",
+ "options": [
+ {
+ "question": {
+ "en": "All vending machines",
+ "nl": "Alle verkoopautomaten",
+ "de": "Alle Verkaufsautomaten",
+ "fr": "Tous les distributeurs"
+ }
+ },
+ {
+ "question": {
+ "en": "Sale of drinks",
+ "nl": "Verkoop van dranken",
+ "de": "Verkauf von Getränken",
+ "fr": "Vente de boissons"
+ },
+ "osmTags": "vending~i~.*drinks.*"
+ },
+ {
+ "question": {
+ "en": "Sale of sweets",
+ "nl": "Verkoop van snoep",
+ "de": "Verkauf von Süßigkeiten",
+ "fr": "Ventre de confiseries"
+ },
+ "osmTags": "vending~i~.*sweets.*"
+ },
+ {
+ "question": {
+ "en": "Sale of food",
+ "nl": "Verkoop van eten",
+ "de": "Verkauf von Lebensmitteln",
+ "fr": "Ventre de nourriture"
+ },
+ "osmTags": "vending~i~.*food.*"
+ },
+ {
+ "question": {
+ "en": "Sale of cigarettes",
+ "nl": "Verkoop van sigaretten",
+ "de": "Verkauf von Zigaretten",
+ "fr": "Vente de cigarettes"
+ },
+ "osmTags": "vending~i~.*cigarettes.*"
+ },
+ {
+ "question": {
+ "en": "Sale of condoms",
+ "nl": "Verkoop van condooms",
+ "de": "Verkauf von Kondomen",
+ "fr": "Vente de préservatifs"
+ },
+ "osmTags": "vending~i~.*condoms.*"
+ },
+ {
+ "question": {
+ "en": "Sale of coffee",
+ "nl": "Verkoop van koffie",
+ "de": "Verkauf von Kaffee",
+ "fr": "Vente de café"
+ },
+ "osmTags": "vending~i~.*coffee.*"
+ },
+ {
+ "question": {
+ "en": "Sale of water",
+ "nl": "Verkoop van water",
+ "de": "Verkauf von Trinkwasser",
+ "fr": "Vente d'eau"
+ },
+ "osmTags": "vending~i~.*water.*"
+ },
+ {
+ "question": {
+ "en": "Sale of newspapers",
+ "nl": "Verkoop van kranten",
+ "de": "Verkauf von Zeitungen",
+ "fr": "Vente de journaux"
+ },
+ "osmTags": "vending~i~.*newspapers.*"
+ },
+ {
+ "question": {
+ "en": "Sale of bicycle inner tubes",
+ "nl": "Verkoop van fietsbinnenbanden",
+ "de": "Verkauf von Fahrradschläuchen",
+ "fr": "Vente de chambres à air pour vélo"
+ },
+ "osmTags": "vending~i~.*bicycle_tube.*"
+ },
+ {
+ "question": {
+ "en": "Sale of milk",
+ "nl": "Verkoop van melk",
+ "de": "Verkauf von Milch",
+ "fr": "Vente de lait"
+ },
+ "osmTags": "vending~i~.*milk.*"
+ },
+ {
+ "question": {
+ "en": "Sale of bread",
+ "nl": "Verkoop van brood",
+ "de": "Verkauf von Brot",
+ "fr": "Vente de pain"
+ },
+ "osmTags": "vending~i~.*bread.*"
+ },
+ {
+ "question": {
+ "en": "Sale of eggs",
+ "nl": "Verkoop van eieren",
+ "de": "Verkauf von Eiern",
+ "fr": "Vente d'œufs"
+ },
+ "osmTags": "vending~i~.*eggs.*"
+ },
+ {
+ "question": {
+ "en": "Sale of cheese",
+ "nl": "Verkoop van kaas",
+ "de": "Verkauf von Käse",
+ "fr": "Vente de fromage"
+ },
+ "osmTags": "vending~i~.*cheese.*"
+ },
+ {
+ "question": {
+ "en": "Sale of honey",
+ "nl": "Verkoop van honing",
+ "de": "Verkauf von Honig",
+ "fr": "Vente de miel"
+ },
+ "osmTags": "vending~i~.*honey.*"
+ },
+ {
+ "question": {
+ "en": "Sale of potatoes",
+ "nl": "Verkoop van aardappelen",
+ "de": "Verkauf von Kartoffeln",
+ "fr": "Vente de pommes de terre"
+ },
+ "osmTags": "vending~i~.*potatoes.*"
+ },
+ {
+ "question": {
+ "en": "Sale of flowers",
+ "nl": "Verkoop van bloemen",
+ "de": "Verkauf von Blumen",
+ "fr": "Vente de fleurs"
+ },
+ "osmTags": "vending~i~.*flowers.*"
+ }
+ ]
+ }
+ ],
+ "allowMove": {
+ "enableImproveAccuracy": true,
+ "enableRelocation": true
+ },
+ "deletion": true,
+ "pointRendering": [
{
"icon": {
"render": "./assets/layers/vending_machine/vending_machine.svg",
@@ -568,169 +733,5 @@
]
}
],
- "filter": [
- "open_now",
- {
- "id": "vending",
- "options": [
- {
- "question": {
- "en": "All vending machines",
- "nl": "Alle verkoopautomaten",
- "de": "Alle Verkaufsautomaten",
- "fr": "Tous les distributeurs"
- }
- },
- {
- "question": {
- "en": "Sale of drinks",
- "nl": "Verkoop van dranken",
- "de": "Verkauf von Getränken",
- "fr": "Vente de boissons"
- },
- "osmTags": "vending~i~.*drinks.*"
- },
- {
- "question": {
- "en": "Sale of sweets",
- "nl": "Verkoop van snoep",
- "de": "Verkauf von Süßigkeiten",
- "fr": "Ventre de confiseries"
- },
- "osmTags": "vending~i~.*sweets.*"
- },
- {
- "question": {
- "en": "Sale of food",
- "nl": "Verkoop van eten",
- "de": "Verkauf von Lebensmitteln",
- "fr": "Ventre de nourriture"
- },
- "osmTags": "vending~i~.*food.*"
- },
- {
- "question": {
- "en": "Sale of cigarettes",
- "nl": "Verkoop van sigaretten",
- "de": "Verkauf von Zigaretten",
- "fr": "Vente de cigarettes"
- },
- "osmTags": "vending~i~.*cigarettes.*"
- },
- {
- "question": {
- "en": "Sale of condoms",
- "nl": "Verkoop van condooms",
- "de": "Verkauf von Kondomen",
- "fr": "Vente de préservatifs"
- },
- "osmTags": "vending~i~.*condoms.*"
- },
- {
- "question": {
- "en": "Sale of coffee",
- "nl": "Verkoop van koffie",
- "de": "Verkauf von Kaffee",
- "fr": "Vente de café"
- },
- "osmTags": "vending~i~.*coffee.*"
- },
- {
- "question": {
- "en": "Sale of water",
- "nl": "Verkoop van water",
- "de": "Verkauf von Trinkwasser",
- "fr": "Vente d'eau"
- },
- "osmTags": "vending~i~.*water.*"
- },
- {
- "question": {
- "en": "Sale of newspapers",
- "nl": "Verkoop van kranten",
- "de": "Verkauf von Zeitungen",
- "fr": "Vente de journaux"
- },
- "osmTags": "vending~i~.*newspapers.*"
- },
- {
- "question": {
- "en": "Sale of bicycle inner tubes",
- "nl": "Verkoop van fietsbinnenbanden",
- "de": "Verkauf von Fahrradschläuchen",
- "fr": "Vente de chambres à air pour vélo"
- },
- "osmTags": "vending~i~.*bicycle_tube.*"
- },
- {
- "question": {
- "en": "Sale of milk",
- "nl": "Verkoop van melk",
- "de": "Verkauf von Milch",
- "fr": "Vente de lait"
- },
- "osmTags": "vending~i~.*milk.*"
- },
- {
- "question": {
- "en": "Sale of bread",
- "nl": "Verkoop van brood",
- "de": "Verkauf von Brot",
- "fr": "Vente de pain"
- },
- "osmTags": "vending~i~.*bread.*"
- },
- {
- "question": {
- "en": "Sale of eggs",
- "nl": "Verkoop van eieren",
- "de": "Verkauf von Eiern",
- "fr": "Vente d'œufs"
- },
- "osmTags": "vending~i~.*eggs.*"
- },
- {
- "question": {
- "en": "Sale of cheese",
- "nl": "Verkoop van kaas",
- "de": "Verkauf von Käse",
- "fr": "Vente de fromage"
- },
- "osmTags": "vending~i~.*cheese.*"
- },
- {
- "question": {
- "en": "Sale of honey",
- "nl": "Verkoop van honing",
- "de": "Verkauf von Honig",
- "fr": "Vente de miel"
- },
- "osmTags": "vending~i~.*honey.*"
- },
- {
- "question": {
- "en": "Sale of potatoes",
- "nl": "Verkoop van aardappelen",
- "de": "Verkauf von Kartoffeln",
- "fr": "Vente de pommes de terre"
- },
- "osmTags": "vending~i~.*potatoes.*"
- },
- {
- "question": {
- "en": "Sale of flowers",
- "nl": "Verkoop van bloemen",
- "de": "Verkauf von Blumen",
- "fr": "Vente de fleurs"
- },
- "osmTags": "vending~i~.*flowers.*"
- }
- ]
- }
- ],
- "allowMove": {
- "enableImproveAccuracy": true,
- "enableRelocation": true
- },
- "deletion": true
-}
\ No newline at end of file
+ "lineRendering": []
+}
diff --git a/assets/layers/veterinary/veterinary.json b/assets/layers/veterinary/veterinary.json
index f0006470c..86b94c995 100644
--- a/assets/layers/veterinary/veterinary.json
+++ b/assets/layers/veterinary/veterinary.json
@@ -60,35 +60,6 @@
}
]
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "./assets/layers/veterinary/vet.svg",
- "iconSize": "30,40",
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- },
- "iconBadges": [
- {
- "if": "opening_hours~*",
- "then": "icons.isOpen"
- }
- ],
- "anchor": "center"
- },
- {
- "color": "#ff0",
- "width": 5
- }
- ],
"tagRenderings": [
"website",
"reviews",
@@ -116,5 +87,36 @@
},
"id": "vetName"
}
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "./assets/layers/veterinary/vet.svg",
+ "iconSize": "30,40",
+ "label": {
+ "mappings": [
+ {
+ "if": "name~*",
+ "then": "{name}
"
+ }
+ ]
+ },
+ "iconBadges": [
+ {
+ "if": "opening_hours~*",
+ "then": "icons.isOpen"
+ }
+ ],
+ "anchor": "center"
+ }
+ ],
+ "lineRendering": [
+ {
+ "color": "#ff0",
+ "width": 5
+ }
]
}
diff --git a/assets/layers/viewpoint/viewpoint.json b/assets/layers/viewpoint/viewpoint.json
index c7b0644fa..c622165a0 100644
--- a/assets/layers/viewpoint/viewpoint.json
+++ b/assets/layers/viewpoint/viewpoint.json
@@ -78,7 +78,7 @@
"id": "viewpoint-description"
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/layers/viewpoint/viewpoint.svg",
"iconSize": "20,20",
@@ -86,7 +86,9 @@
"point"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#ffffff",
"width": "5"
diff --git a/assets/layers/village_green/village_green.json b/assets/layers/village_green/village_green.json
index b191d9802..ccbc5d1b6 100644
--- a/assets/layers/village_green/village_green.json
+++ b/assets/layers/village_green/village_green.json
@@ -31,7 +31,13 @@
"render": "{reviews(name, landuse=village_green )}"
}
],
- "mapRendering": [
+ "description": {
+ "en": "A layer showing village-green (which are communal green areas, but not quite parks)",
+ "nl": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)",
+ "de": "Eine Ebene mit Dorfangern (kommunale Grünflächen, aber nicht wirklich Parks)",
+ "ca": "Una capa que mostra “village-green” (que són zones verdes comunals, però no parcs del tot)"
+ },
+ "pointRendering": [
{
"icon": "./assets/themes/playgrounds/playground.svg",
"iconSize": "40,40",
@@ -40,16 +46,12 @@
"centroid"
],
"anchor": "center"
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#937f20",
"width": "1"
}
- ],
- "description": {
- "en": "A layer showing village-green (which are communal green areas, but not quite parks)",
- "nl": "Een laag die dorpsgroen toont (gemeenschapsgroen, maar niet echt een park)",
- "de": "Eine Ebene mit Dorfangern (kommunale Grünflächen, aber nicht wirklich Parks)",
- "ca": "Una capa que mostra “village-green” (que són zones verdes comunals, però no parcs del tot)"
- }
+ ]
}
diff --git a/assets/layers/visitor_information_centre/visitor_information_centre.json b/assets/layers/visitor_information_centre/visitor_information_centre.json
index e45f3927d..293a5cff0 100644
--- a/assets/layers/visitor_information_centre/visitor_information_centre.json
+++ b/assets/layers/visitor_information_centre/visitor_information_centre.json
@@ -74,7 +74,7 @@
},
"tagRenderings": [],
"presets": [],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/layers/visitor_information_centre/information.svg",
"iconSize": "40,40",
@@ -84,5 +84,6 @@
],
"anchor": "center"
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/walls_and_buildings/walls_and_buildings.json b/assets/layers/walls_and_buildings/walls_and_buildings.json
index e391929b4..93a995ce5 100644
--- a/assets/layers/walls_and_buildings/walls_and_buildings.json
+++ b/assets/layers/walls_and_buildings/walls_and_buildings.json
@@ -33,18 +33,6 @@
},
"passAllFeatures": true,
"shownByDefault": false,
- "mapRendering": [
- {
- "color": "#fff",
- "fill": "no",
- "width": "3"
- },
- {
- "color": "#333",
- "fill": "no",
- "width": "2"
- }
- ],
"calculatedTags": [
"_entrance_properties=overlapWith(feat)('entrance')?.map(e => e.feat.properties)?.filter(p => p !== undefined && p.indoor !== 'door')",
"_entrance_properties_with_width=get(feat)('_entrance_properties')?.filter(p => p['width'] !== undefined)",
@@ -152,5 +140,18 @@
"render": "The entrance with the biggest width is {canonical(_biggest_width)} wide",
"condition": "_biggest_width_id~*"
}
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {
+ "color": "#fff",
+ "fill": "no",
+ "width": "3"
+ },
+ {
+ "color": "#333",
+ "fill": "no",
+ "width": "2"
+ }
]
}
diff --git a/assets/layers/waste_basket/waste_basket.json b/assets/layers/waste_basket/waste_basket.json
index 9088fbb2c..bf7163da7 100644
--- a/assets/layers/waste_basket/waste_basket.json
+++ b/assets/layers/waste_basket/waste_basket.json
@@ -374,7 +374,7 @@
"enableRelocation": false,
"enableImproveAccuracy": true
},
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/waste_basket/waste_basket.svg",
"iconSize": {
@@ -404,7 +404,9 @@
"location": [
"point"
]
- },
+ }
+ ],
+ "lineRendering": [
{
"color": "#00f",
"width": "8"
diff --git a/assets/layers/waste_disposal/waste_disposal.json b/assets/layers/waste_disposal/waste_disposal.json
index cdc6324a5..7f4aa3d04 100644
--- a/assets/layers/waste_disposal/waste_disposal.json
+++ b/assets/layers/waste_disposal/waste_disposal.json
@@ -33,16 +33,6 @@
"da": "Bortskaffelse af affald"
}
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": "circle:white;./assets/layers/waste_disposal/waste_disposal.svg",
- "iconSize": "20,20"
- }
- ],
"presets": [
{
"title": {
@@ -238,5 +228,16 @@
}
]
}
- ]
+ ],
+ "pointRendering": [
+ {
+ "location": [
+ "point",
+ "centroid"
+ ],
+ "icon": "circle:white;./assets/layers/waste_disposal/waste_disposal.svg",
+ "iconSize": "20,20"
+ }
+ ],
+ "lineRendering": []
}
diff --git a/assets/layers/windturbine/windturbine.json b/assets/layers/windturbine/windturbine.json
index 44c07a710..1a6dd79db 100644
--- a/assets/layers/windturbine/windturbine.json
+++ b/assets/layers/windturbine/windturbine.json
@@ -365,7 +365,7 @@
]
}
],
- "mapRendering": [
+ "pointRendering": [
{
"icon": "./assets/themes/openwindpowermap/wind_turbine.svg",
"label": {
@@ -383,5 +383,6 @@
"centroid"
]
}
- ]
+ ],
+ "lineRendering": []
}
diff --git a/assets/themes/advertising/advertising.json b/assets/themes/advertising/advertising.json
index 3614f9b9f..52f8d2314 100644
--- a/assets/themes/advertising/advertising.json
+++ b/assets/themes/advertising/advertising.json
@@ -46,4 +46,4 @@
"layers": [
"advertising"
]
-}
+}
\ No newline at end of file
diff --git a/assets/themes/atm/atm.json b/assets/themes/atm/atm.json
index 0034cceb2..6d9e827ec 100644
--- a/assets/themes/atm/atm.json
+++ b/assets/themes/atm/atm.json
@@ -172,4 +172,4 @@
}
}
]
-}
+}
\ No newline at end of file
diff --git a/assets/themes/bag/bag.json b/assets/themes/bag/bag.json
index 8f33320cb..7a9a66462 100644
--- a/assets/themes/bag/bag.json
+++ b/assets/themes/bag/bag.json
@@ -51,49 +51,6 @@
"calculatedTags": [
"_surface:strict:=feat(get)('_surface')"
],
- "mapRendering": [
- {
- "width": {
- "render": "2",
- "mappings": [
- {
- "if": "fixme~*",
- "then": "5"
- }
- ]
- },
- "color": {
- "render": "#00c",
- "mappings": [
- {
- "if": "fixme~*",
- "then": "#ff00ff"
- },
- {
- "if": "building=house",
- "then": "#a00"
- },
- {
- "if": "building=shed",
- "then": "#563e02"
- },
- {
- "if": {
- "or": [
- "building=garage",
- "building=garages"
- ]
- },
- "then": "#f9bfbb"
- },
- {
- "if": "building=yes",
- "then": "#0774f2"
- }
- ]
- }
- }
- ],
"tagRenderings": [
{
"id": "Reference",
@@ -135,6 +92,10 @@
"render": "This building is a {building}",
"question": "What kind of building is this?"
}
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -155,22 +116,9 @@
"maxCacheAge": 0
},
"minzoom": 19,
- "mapRendering": [
- {
- "label": {
- "render": "{addr:housenumber}
",
- "condition": "addr:housenumber~*"
- },
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "width": {
- "render": 1
- }
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -211,28 +159,6 @@
"_osm_obj:building=feat(get)('_overlaps_with_properties')?.building",
"_imported_osm_object_found:=Number(feat.properties.identificatie)==Number(feat(get)('_overlaps_with_properties')['ref:bag'])"
],
- "mapRendering": [
- {
- "width": {
- "render": 5,
- "mappings": [
- {
- "if": "_imported_osm_object_found=true",
- "then": "1"
- }
- ]
- },
- "color": {
- "render": "#00a",
- "mappings": [
- {
- "if": "_imported_osm_object_found=true",
- "then": "#0f0"
- }
- ]
- }
- }
- ],
"tagRenderings": [
{
"id": "Import button",
@@ -366,6 +292,10 @@
"id": "Buidling function",
"render": "The current function of the building is {gebruiksdoel}"
}
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -391,28 +321,6 @@
"_osm_obj:addr:street:=feat(get)('_closed_osm_addr')['addr:street']",
"_imported_osm_object_found:=(feat.properties.woonplaats==feat(get)('_closed_osm_addr')['addr:city'])&&(feat(get)('_bag_obj:addr:housenumber')==feat(get)('_closed_osm_addr')['addr:housenumber'])&&(feat.properties.postcode==feat(get)('_closed_osm_addr')['addr:postcode'])&&(feat.properties.openbare_ruimte==feat(get)('_closed_osm_addr')['addr:street'])"
],
- "mapRendering": [
- {
- "label": {
- "render": "{_bag_obj:addr:housenumber}
",
- "mappings": [
- {
- "if": "_imported_osm_object_found=true",
- "then": "{_bag_obj:addr:housenumber}
"
- }
- ]
- },
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "width": {
- "render": 1
- }
- }
- ],
"tagRenderings": [
{
"id": "Import button",
@@ -423,6 +331,10 @@
"id": "Address",
"render": "{openbare_ruimte} {_bag_obj:addr:housenumber}, {woonplaats} {postcode}"
}
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
],
diff --git a/assets/themes/buurtnatuur/buurtnatuur.json b/assets/themes/buurtnatuur/buurtnatuur.json
index f5394dcef..c58e3cf8f 100644
--- a/assets/themes/buurtnatuur/buurtnatuur.json
+++ b/assets/themes/buurtnatuur/buurtnatuur.json
@@ -89,45 +89,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "circle:#ffffff;./assets/themes/buurtnatuur/nature_reserve.svg",
- "iconSize": "50,50",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": {
- "render": "#3c3",
- "mappings": [
- {
- "if": {
- "and": [
- "name=",
- "noname=",
- "operator=",
- "access=",
- "access:description=",
- "leisure=park"
- ]
- },
- "then": "#cc1100"
- },
- {
- "if": {
- "and": [
- "name=",
- "noname="
- ]
- },
- "then": "#fccb37"
- }
- ]
- },
- "width": "5"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -196,32 +160,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "circle:#ffffff;./assets/themes/buurtnatuur/park.svg",
- "iconSize": "40,40",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": {
- "render": "#3c3",
- "mappings": [
- {
- "if": {
- "and": [
- "name=",
- "noname="
- ]
- },
- "then": "#fccb37"
- }
- ]
- },
- "width": "5"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -291,50 +232,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "circle:#ffffff;./assets/themes/buurtnatuur/forest.svg",
- "iconSize": "40,40",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": {
- "render": "#3a3",
- "mappings": [
- {
- "if": {
- "and": [
- "operator=",
- "access=",
- "access:description="
- ]
- },
- "then": "#cc1100"
- },
- {
- "if": {
- "and": [
- "operator="
- ]
- },
- "then": "#cccc00"
- },
- {
- "if": {
- "and": [
- "name=",
- "noname="
- ]
- },
- "then": "#fccb37"
- }
- ]
- },
- "width": "5"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
"viewpoint"
diff --git a/assets/themes/campersite/campersite.json b/assets/themes/campersite/campersite.json
index 43ed75b0f..46d7a311c 100644
--- a/assets/themes/campersite/campersite.json
+++ b/assets/themes/campersite/campersite.json
@@ -887,32 +887,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": {
- "render": "circle:white;./assets/themes/campersite/caravan.svg",
- "mappings": [
- {
- "if": {
- "and": [
- "fee=no"
- ]
- },
- "then": "circle:white;./assets/themes/campersite/caravan_green.svg"
- }
- ]
- },
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f",
- "width": "8"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -1486,19 +1463,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "circle:white;./assets/themes/campersite/sanitary_dump_station.svg",
- "iconSize": "32,32",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f",
- "width": "8"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
],
@@ -1607,4 +1574,4 @@
]
},
"credits": "joost schouppe"
-}
+}
\ No newline at end of file
diff --git a/assets/themes/climbing/climbing.json b/assets/themes/climbing/climbing.json
index 7e1072246..d8a797d64 100644
--- a/assets/themes/climbing/climbing.json
+++ b/assets/themes/climbing/climbing.json
@@ -461,7 +461,8 @@
]
}
},
- "drinking_water", "toilet"
+ "drinking_water",
+ "toilet"
],
"credits": "Christian Neumann "
-}
+}
\ No newline at end of file
diff --git a/assets/themes/cycle_highways/cycle_highways.json b/assets/themes/cycle_highways/cycle_highways.json
index 024b347ba..af9895e03 100644
--- a/assets/themes/cycle_highways/cycle_highways.json
+++ b/assets/themes/cycle_highways/cycle_highways.json
@@ -228,40 +228,9 @@
]
}
],
- "mapRendering": [
- {
- "color": {
- "render": "#ff7392",
- "mappings": [
- {
- "if": "state=",
- "then": "#00acfc"
- },
- {
- "if": "state=temporary",
- "then": "#00acfc"
- }
- ]
- },
- "width": "4",
- "dashArray": {
- "render": "",
- "mappings": [
- {
- "if": "state=temporary",
- "then": "12 10"
- },
- {
- "if": "note:state=has_highway_no",
- "then": "0 8"
- },
- {
- "if": "note:state=has_highway_under_construction",
- "then": "12 10"
- }
- ]
- }
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
],
diff --git a/assets/themes/cyclenodes/cyclenodes.json b/assets/themes/cyclenodes/cyclenodes.json
index 3562d6e07..dc69b1925 100644
--- a/assets/themes/cyclenodes/cyclenodes.json
+++ b/assets/themes/cyclenodes/cyclenodes.json
@@ -77,12 +77,6 @@
}
]
},
- "mapRendering": [
- {
- "width": "4",
- "color": "#00a703"
- }
- ],
"tagRenderings": [
{
"question": {
@@ -116,6 +110,10 @@
"id": "node2node-survey:date"
},
"export_as_gpx"
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -139,26 +137,6 @@
]
}
},
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "label": {
- "mappings": [
- {
- "if": "rcn_ref~*",
- "then": "{rcn_ref}
"
- },
- {
- "if": "rcn_ref=",
- "then": "?
"
- }
- ]
- }
- }
- ],
"minzoom": 12,
"title": {
"render": {
@@ -230,6 +208,10 @@
"id": "node-expected_rcn_route_relations"
},
"images"
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
],
diff --git a/assets/themes/cyclestreets/cyclestreets.json b/assets/themes/cyclestreets/cyclestreets.json
index 82872ec15..b8cce15eb 100644
--- a/assets/themes/cyclestreets/cyclestreets.json
+++ b/assets/themes/cyclestreets/cyclestreets.json
@@ -103,68 +103,9 @@
"tagRenderings": [
"images"
],
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/cyclestreets/F111.svg",
- "mappings": [
- {
- "if": "traffic_sign=DE:244.1,1020-30",
- "then": "./assets/themes/cyclestreets/Zeichen_244_1020-30.svg"
- },
- {
- "if": "traffic_sign=DE:244.1,1022-12,1024-10",
- "then": "./assets/themes/cyclestreets/Zeichen_244_KFZ_frei.svg"
- },
- {
- "if": "traffic_sign=DE:244.1,1022-12",
- "then": "./assets/themes/cyclestreets/Zeichen_244_1022-12.svg"
- },
- {
- "if": "traffic_sign=DE:244.1,1024-10",
- "then": "./assets/themes/cyclestreets/Zeichen_244_1024-10.svg"
- },
- {
- "if": "_country=de",
- "then": "./assets/themes/cyclestreets/Zeichen_244.svg"
- },
- {
- "if": "_country=fi",
- "then": "./assets/themes/cyclestreets/Finland_road_sign_E28.svg"
- }
- ]
- },
- "iconSize": {
- "render": "40,40,center",
- "mappings": [
- {
- "if": {
- "or": [
- "traffic_sign=DE:244.1,1020-30",
- "traffic_sign=DE:244.1,1022-12,1024-10"
- ]
- },
- "then": "40,62,center"
- },
- {
- "if": {
- "or": [
- "traffic_sign=DE:244.1,1022-12",
- "traffic_sign=DE:244.1,1024-10"
- ]
- },
- "then": "40,70,center"
- }
- ]
- },
- "location": [
- "projected_centerpoint"
- ]
- },
- {
- "color": "#0000ff",
- "width": "10"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -248,29 +189,9 @@
"tagRenderings": [
"images"
],
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/cyclestreets/F113.svg",
- "mappings": [
- {
- "if": "_country=de",
- "then": "./assets/themes/cyclestreets/Zeichen_244a.svg"
- },
- {
- "if": "_country=fi",
- "then": "./assets/themes/cyclestreets/Finland_road_sign_E29.svg"
- }
- ]
- },
- "location": [
- "projected_centerpoint"
- ]
- },
- {
- "color": "#09f9dd",
- "width": "5"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -347,39 +268,9 @@
"tagRenderings": [
"images"
],
- "mapRendering": [
- {
- "icon": "./assets/svg/pencil.svg",
- "location": [
- "projected_centerpoint"
- ]
- },
- {
- "color": {
- "render": "#aaaaaa",
- "mappings": [
- {
- "then": "#0000ff",
- "if": {
- "or": [
- "cyclestreet=yes",
- "bicycle_road=yes"
- ]
- }
- },
- {
- "then": "#09f9dd",
- "if": {
- "or": [
- "proposed:cyclestreet=yes",
- "proposed:bicycle_road=yes"
- ]
- }
- }
- ]
- },
- "width": "5"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
],
diff --git a/assets/themes/elongated_coin/elongated_coin.json b/assets/themes/elongated_coin/elongated_coin.json
index 6cb1ca911..4ac8f93a1 100644
--- a/assets/themes/elongated_coin/elongated_coin.json
+++ b/assets/themes/elongated_coin/elongated_coin.json
@@ -19,4 +19,4 @@
"startLat": 53.0565,
"startLon": 8.7492,
"startZoom": 11
-}
+}
\ No newline at end of file
diff --git a/assets/themes/etymology/etymology.json b/assets/themes/etymology/etymology.json
index 074b624fe..e901d7153 100644
--- a/assets/themes/etymology/etymology.json
+++ b/assets/themes/etymology/etymology.json
@@ -288,4 +288,4 @@
}
],
"hideFromOverview": false
-}
+}
\ No newline at end of file
diff --git a/assets/themes/facadegardens/facadegardens.json b/assets/themes/facadegardens/facadegardens.json
index d93dbbe74..3fd75497b 100644
--- a/assets/themes/facadegardens/facadegardens.json
+++ b/assets/themes/facadegardens/facadegardens.json
@@ -545,76 +545,15 @@
}
}
],
- "mapRendering": [
- {
- "icon": {
- "render": "circle:white;./assets/themes/facadegardens/geveltuin.svg",
- "mappings": [
- {
- "if": {
- "and": [
- "direct_sunlight=yes"
- ]
- },
- "then": "circle:white;./assets/themes/facadegardens/zon.svg"
- },
- {
- "if": {
- "and": [
- "direct_sunlight=partial"
- ]
- },
- "then": "circle:white;./assets/themes/facadegardens/halfzon.svg"
- },
- {
- "if": {
- "and": [
- "direct_sunlight=no"
- ]
- },
- "then": "circle:white;./assets/themes/facadegardens/schaduw.svg"
- }
- ]
- },
- "iconBadges": [
- {
- "if": "plant~.*vine.*",
- "then": "circle:white;./assets/themes/facadegardens/klimplant.svg"
- },
- {
- "if": "plant~.*groundcover.*",
- "then": "circle:white;./assets/themes/facadegardens/bodembedekker.svg"
- },
- {
- "if": "edible=true",
- "then": "circle:white;./assets/themes/facadegardens/eetbaar.svg"
- },
- {
- "if": "rain_barel=yes",
- "then": "circle:white;./assets/themes/facadegardens/gevelton.svg"
- },
- {
- "if": "plant~.*shrub.*",
- "then": "circle:white;./assets/themes/facadegardens/struik.svg"
- },
- {
- "if": "plant~.*flower.*",
- "then": "circle:white;./assets/themes/facadegardens/bloei.svg"
- }
- ],
- "iconSize": "50,50",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- }
- ],
"deletion": true,
"allowMove": {
"enableImproveAccuracy": true,
"enableRelocation": false
- }
+ },
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
}
],
"credits": "joost schouppe; stla"
diff --git a/assets/themes/fritures/fritures.json b/assets/themes/fritures/fritures.json
index 18804d332..64cf09969 100644
--- a/assets/themes/fritures/fritures.json
+++ b/assets/themes/fritures/fritures.json
@@ -69,4 +69,4 @@
}
}
]
-}
+}
\ No newline at end of file
diff --git a/assets/themes/fruit_trees/fruit_trees.json b/assets/themes/fruit_trees/fruit_trees.json
index 2c2b757ca..b58632b12 100644
--- a/assets/themes/fruit_trees/fruit_trees.json
+++ b/assets/themes/fruit_trees/fruit_trees.json
@@ -51,19 +51,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "./assets/themes/buurtnatuur/forest.svg",
- "iconSize": "40,40",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f",
- "width": "8"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -155,19 +145,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "./assets/themes/fruit_trees/fruit_tree.svg",
- "iconSize": "40,40",
- "location": [
- "point"
- ],
- "anchor": "center"
- },
- {
- "color": "#00f",
- "width": "8"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
]
diff --git a/assets/themes/grb/grb.json b/assets/themes/grb/grb.json
index b3931dcb1..e00c630c5 100644
--- a/assets/themes/grb/grb.json
+++ b/assets/themes/grb/grb.json
@@ -46,49 +46,6 @@
},
"maxCacheAge": 0
},
- "mapRendering": [
- {
- "width": {
- "render": "2",
- "mappings": [
- {
- "if": "fixme~*",
- "then": "5"
- }
- ]
- },
- "color": {
- "render": "#00c",
- "mappings": [
- {
- "if": "fixme~*",
- "then": "#ff00ff"
- },
- {
- "if": "building=house",
- "then": "#a00"
- },
- {
- "if": "building=shed",
- "then": "#563e02"
- },
- {
- "if": {
- "or": [
- "building=garage",
- "building=garages"
- ]
- },
- "then": "#f9bfbb"
- },
- {
- "if": "building=yes",
- "then": "#0774f2"
- }
- ]
- }
- }
- ],
"title": "OSM-gebouw",
"tagRenderings": [
{
@@ -272,6 +229,10 @@
}
]
}
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -477,60 +438,9 @@
"_imported_osm_still_fresh!=true"
]
},
- "mapRendering": [
- {
- "label": {
- "render": "{addr:housenumber}
",
- "condition": "addr:housenumber~*"
- },
- "iconSize": "50,50",
- "icon": {
- "mappings": [
- {
- "if": "_intersects_with_other_features~*",
- "then": "./assets/themes/grb/warning.svg"
- },
- {
- "if": "addr:housenumber~*",
- "then": "./assets/themes/grb/housenumber_blank.svg"
- }
- ]
- },
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- },
- {
- "width": {
- "render": 5,
- "mappings": [
- {
- "if": "_imported=yes",
- "then": "1"
- }
- ]
- },
- "color": {
- "render": "#00a",
- "mappings": [
- {
- "if": "_imported=yes",
- "then": "#00ff00"
- },
- {
- "if": {
- "and": [
- "_imported_osm_object_found=true",
- "_imported_osm_still_fresh=true"
- ]
- },
- "then": "#0f0"
- }
- ]
- }
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -540,14 +450,12 @@
"source": {
"osmTags": "highway=service"
},
- "mapRendering": [
- {
- "width": 4,
- "color": "#888888"
- }
- ],
"title": "Service road",
- "tagRenderings": []
+ "tagRenderings": [],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
},
{
"id": "generic_osm_object",
@@ -579,13 +487,6 @@
},
"maxCacheAge": 0
},
- "mapRendering": [
- {
- "color": "#ccc",
- "width": "1",
- "fill": "no"
- }
- ],
"title": {
"render": {
"*": "Other OSM-Object"
@@ -593,6 +494,10 @@
},
"tagRenderings": [
"all_tags"
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
"address",
diff --git a/assets/themes/grb_fixme/grb_fixme.json b/assets/themes/grb_fixme/grb_fixme.json
index 52c290236..4490ae23f 100644
--- a/assets/themes/grb_fixme/grb_fixme.json
+++ b/assets/themes/grb_fixme/grb_fixme.json
@@ -38,65 +38,6 @@
"calculatedTags": [
"_grbNumber=(feat.properties.fixme?.match(/GRB thinks that this has number ([0-9a-zA-Z;]+)/) ?? ['','none']) [1]"
],
- "mapRendering": [
- {
- "width": {
- "render": "2",
- "mappings": [
- {
- "if": "fixme~*",
- "then": "5"
- }
- ]
- },
- "color": {
- "render": "#00c",
- "mappings": [
- {
- "if": "fixme~*",
- "then": "#ff00ff"
- },
- {
- "if": "building=house",
- "then": "#a00"
- },
- {
- "if": "building=shed",
- "then": "#563e02"
- },
- {
- "if": {
- "or": [
- "building=garage",
- "building=garages"
- ]
- },
- "then": "#f9bfbb"
- },
- {
- "if": "building=yes",
- "then": "#0774f2"
- }
- ]
- }
- },
- {
- "location": [
- "point",
- "centroid"
- ],
- "label": {
- "mappings": [
- {
- "if": "addr:housenumber~*",
- "then": "{addr:housenumber}
"
- }
- ]
- },
- "iconSize": "40,40",
- "anchor": "center"
- }
- ],
"title": "OSM-gebouw",
"tagRenderings": [
{
@@ -280,7 +221,11 @@
},
"all_tags"
],
- "minzoom": 14
+ "minzoom": 14,
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
},
{
"builtin": "address",
diff --git a/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json b/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json
index efc28cb32..9d023860e 100644
--- a/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json
+++ b/assets/themes/kerbs_and_crossings/kerbs_and_crossings.json
@@ -68,7 +68,9 @@
"ca": "Creuament per vianants i/o ciclistes",
"pl": "Przejście dla pieszych i/lub przejazd dla rowerów"
},
- "snapToLayer": ["cycleways_and_roads"],
+ "snapToLayer": [
+ "cycleways_and_roads"
+ ],
"maxSnapDistance": 25
}
],
@@ -80,4 +82,4 @@
"kerbs"
],
"credits": "Robin van der Linde"
-}
+}
\ No newline at end of file
diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.json
index dabbec8e1..d30fa3e58 100644
--- a/assets/themes/mapcomplete-changes/mapcomplete-changes.json
+++ b/assets/themes/mapcomplete-changes/mapcomplete-changes.json
@@ -117,7 +117,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
diff --git a/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json b/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json
index fab5d5e31..11d3e3606 100644
--- a/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json
+++ b/assets/themes/mapcomplete-changes/mapcomplete-changes.proto.json
@@ -117,7 +117,7 @@
}
}
],
- "mapRendering": [
+ "pointRendering": [
{
"location": [
"point",
diff --git a/assets/themes/playgrounds/playgrounds.json b/assets/themes/playgrounds/playgrounds.json
index 50820e091..50fd8786d 100644
--- a/assets/themes/playgrounds/playgrounds.json
+++ b/assets/themes/playgrounds/playgrounds.json
@@ -71,4 +71,4 @@
}
}
]
-}
+}
\ No newline at end of file
diff --git a/assets/themes/postal_codes/postal_codes.json b/assets/themes/postal_codes/postal_codes.json
index 1c2760c36..031475010 100644
--- a/assets/themes/postal_codes/postal_codes.json
+++ b/assets/themes/postal_codes/postal_codes.json
@@ -129,22 +129,11 @@
]
}
},
- "mapRendering": [
- {
- "label": "{postal_code}
",
- "location": [
- "point",
- "centroid"
- ]
- },
- {
- "color": "#00f",
- "width": "4",
- "fill": "no",
- "dashArray": "8 8"
- }
- ],
- "isShown": "_country=be"
+ "isShown": "_country=be",
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
},
{
"id": "wrong_postal_code",
@@ -157,11 +146,9 @@
}
},
"title": "Boundary relation with addr:postcode={addr:postcode}",
- "mapRendering": [
- {
- "color": "#f00",
- "width": 1
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -215,18 +202,11 @@
]
}
},
- "mapRendering": [
- {
- "icon": "./assets/themes/postal_codes/townhall.svg",
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- }
- ],
- "isShown": "_country=be"
+ "isShown": "_country=be",
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
}
]
}
\ No newline at end of file
diff --git a/assets/themes/sidewalks/sidewalks.json b/assets/themes/sidewalks/sidewalks.json
index fb0d8719a..8efcd9f5c 100644
--- a/assets/themes/sidewalks/sidewalks.json
+++ b/assets/themes/sidewalks/sidewalks.json
@@ -249,81 +249,11 @@
]
}
],
- "mapRendering": [
- {
- "location": [
- "start",
- "end"
- ],
- "icon": "circle:#ccc",
- "iconSize": "3,3",
- "anchor": "center"
- },
- {
- "#": "The center line",
- "color": "#ffffff55",
- "width": 8,
- "lineCap": "butt"
- },
- {
- "#": "left",
- "color": "#888",
- "dashArray": {
- "render": "",
- "mappings": [
- {
- "if": "sidewalk:left=",
- "then": "1,12"
- }
- ]
- },
- "width": {
- "render": 6,
- "mappings": [
- {
- "if": {
- "or": [
- "sidewalk:left=no",
- "sidewalk:left=separate"
- ]
- },
- "then": 0
- }
- ]
- },
- "offset": -6,
- "lineCap": "butt"
- },
- {
- "color": "#888",
- "dashArray": {
- "render": "",
- "mappings": [
- {
- "if": "sidewalk:right=",
- "then": "1,12"
- }
- ]
- },
- "width": {
- "render": 6,
- "mappings": [
- {
- "if": {
- "or": [
- "sidewalk:right=no",
- "sidewalk:right=separate"
- ]
- },
- "then": 0
- }
- ]
- },
- "lineCap": "butt",
- "offset": 6
- }
- ],
- "allowSplit": true
+ "allowSplit": true,
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
}
]
}
\ No newline at end of file
diff --git a/assets/themes/speelplekken/speelplekken.json b/assets/themes/speelplekken/speelplekken.json
index be57a32c6..789c45bd5 100644
--- a/assets/themes/speelplekken/speelplekken.json
+++ b/assets/themes/speelplekken/speelplekken.json
@@ -37,11 +37,9 @@
"osmTags": "shadow=yes",
"isOsmCache": false
},
- "mapRendering": [
- {
- "color": "#444444",
- "width": "1"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -221,23 +219,9 @@
"questions",
"reviews"
],
- "mapRendering": [
- {
- "color": {
- "render": "#6d6",
- "mappings": [
- {
- "if": "color~*",
- "then": "{color}"
- },
- {
- "if": "colour~*",
- "then": "{colour}"
- }
- ]
- },
- "width": "9"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
],
diff --git a/assets/themes/stations/stations.json b/assets/themes/stations/stations.json
index b8bb2df4c..e96e390a9 100644
--- a/assets/themes/stations/stations.json
+++ b/assets/themes/stations/stations.json
@@ -97,25 +97,9 @@
"zh_Hant": "顯示火車站的圖層",
"pl": "Warstwa pokazująca stacje kolejowe"
},
- "mapRendering": [
- {
- "icon": "./assets/themes/stations/rail-light.svg",
- "location": [
- "point",
- "centroid"
- ],
- "label": {
- "mappings": [
- {
- "if": "name~*",
- "then": "{name}
"
- }
- ]
- }
- },
- {
- "color": "green"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
@@ -401,14 +385,9 @@
}
}
],
- "mapRendering": [
- {
- "icon": "./assets/themes/stations/departures_board.svg",
- "location": [
- "point",
- "centroid"
- ]
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
]
diff --git a/assets/themes/street_lighting/street_lighting.json b/assets/themes/street_lighting/street_lighting.json
index 0ba9c2ab4..799ac2d4c 100644
--- a/assets/themes/street_lighting/street_lighting.json
+++ b/assets/themes/street_lighting/street_lighting.json
@@ -90,11 +90,6 @@
}
]
},
- "mapRendering": [
- {
- "color": "#ff0"
- }
- ],
"tagRenderings": [
"images",
{
@@ -191,7 +186,11 @@
]
}
],
- "allowSplit": true
+ "allowSplit": true,
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
},
{
"id": "all_streets",
@@ -248,19 +247,6 @@
}
]
},
- "mapRendering": [
- {
- "color": {
- "render": "#a9a9a9",
- "mappings": [
- {
- "if": "lit=no",
- "then": "#303030"
- }
- ]
- }
- }
- ],
"tagRenderings": [
"images",
{
@@ -357,7 +343,11 @@
]
}
],
- "allowSplit": true
+ "allowSplit": true,
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
}
],
"credits": "Robin van der Linde"
diff --git a/assets/themes/street_lighting_assen/street_lighting_assen.json b/assets/themes/street_lighting_assen/street_lighting_assen.json
index 4b0031431..b3d030a47 100644
--- a/assets/themes/street_lighting_assen/street_lighting_assen.json
+++ b/assets/themes/street_lighting_assen/street_lighting_assen.json
@@ -28,27 +28,12 @@
"_has_closeby_feature=Number(feat.properties._closest_osm_street_lamp_distance) < 5 ? 'yes' : 'no'"
],
"title": "Straatlantaarn in dataset",
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "circle:red",
- "mappings": [
- {
- "if": "_has_closeby_feature=yes",
- "then": "circle:#008000aa"
- }
- ]
- },
- "iconSize": "20,20",
- "anchor": "center"
- }
- ],
"tagRenderings": [
"all_tags"
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
{
diff --git a/assets/themes/uk_addresses/uk_addresses.json b/assets/themes/uk_addresses/uk_addresses.json
index 619b0ee93..30b50b527 100644
--- a/assets/themes/uk_addresses/uk_addresses.json
+++ b/assets/themes/uk_addresses/uk_addresses.json
@@ -55,24 +55,14 @@
"calculatedTags": [
"_has_address=overlapWith(feat)('address').length > 0"
],
- "mapRendering": [
- {
- "width": 2,
- "color": {
- "render": "#00f",
- "mappings": [
- {
- "if": "_has_address=true",
- "then": "#0f0"
- }
- ]
- }
- }
- ],
"shownByDefault": false,
"name": {
"en": "Inspire polygons"
- }
+ },
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
},
{
"id": "to_import",
@@ -162,35 +152,11 @@
]
}
],
- "mapRendering": [
- {
- "icon": {
- "render": "./assets/themes/uk_addresses/housenumber_unknown.svg",
- "mappings": [
- {
- "if": {
- "and": [
- "_embedding_object:id~*",
- "_embedding_object:id!=false"
- ]
- },
- "then": "./assets/themes/uk_addresses/housenumber_unknown_small.svg"
- },
- {
- "if": "_imported=yes",
- "then": "./assets/themes/uk_addresses/housenumber_unknown_small.svg"
- }
- ]
- },
- "iconSize": "40,40",
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- }
- ],
- "description": "Alamat"
+ "description": "Alamat",
+ "pointRendering": [],
+ "lineRendering": [
+ {}
+ ]
},
{
"id": "address",
@@ -631,60 +597,9 @@
}
}
],
- "mapRendering": [
- {
- "label": {
- "render": "{addr:housenumber}
",
- "condition": "addr:housenumber~*"
- },
- "iconSize": "50,50",
- "icon": {
- "render": "./assets/layers/address/housenumber_blank.svg",
- "mappings": [
- {
- "if": {
- "or": [
- {
- "and": [
- "addr:housenumber=",
- "nohousenumber!=yes"
- ]
- },
- "addr:street="
- ]
- },
- "then": "./assets/themes/uk_addresses/housenumber_unknown.svg"
- }
- ]
- },
- "location": [
- "point",
- "centroid"
- ],
- "anchor": "center"
- },
- {
- "color": {
- "render": "#00f",
- "mappings": [
- {
- "if": {
- "or": [
- {
- "and": [
- "addr:housenumber=",
- "nohousenumber!=yes"
- ]
- },
- "addr:street="
- ]
- },
- "then": "#ff0"
- }
- ]
- },
- "width": "3"
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
"named_streets"
diff --git a/assets/themes/waste_assen/waste_assen.json b/assets/themes/waste_assen/waste_assen.json
index 0484d4ef8..b87b98420 100644
--- a/assets/themes/waste_assen/waste_assen.json
+++ b/assets/themes/waste_assen/waste_assen.json
@@ -32,27 +32,12 @@
"_has_closeby_feature=Number(feat.properties._closest_osm_waste_basket_distance) < 10 ? 'yes' : 'no'"
],
"title": "Afvalbak in dataset",
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "circle:red",
- "mappings": [
- {
- "if": "_has_closeby_feature=yes",
- "then": "circle:#008000aa"
- }
- ]
- },
- "iconSize": "20,20",
- "anchor": "center"
- }
- ],
"tagRenderings": [
"all_tags"
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
"recycling",
@@ -74,31 +59,12 @@
"_has_closeby_waste_disposal=Number(feat.properties._closest_osm_waste_disposal_distance) < 10 ? 'yes' : 'no'"
],
"title": "Recyclingcontainer in dataset",
- "mapRendering": [
- {
- "location": [
- "point",
- "centroid"
- ],
- "icon": {
- "render": "circle:red",
- "mappings": [
- {
- "if": "_has_closeby_recycling=yes",
- "then": "circle:#008000aa"
- },
- {
- "if": "_has_closeby_waste_disposal=yes",
- "then": "circle:#008000aa"
- }
- ]
- },
- "iconSize": "20,20",
- "anchor": "center"
- }
- ],
"tagRenderings": [
"all_tags"
+ ],
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
},
"waste_disposal"
diff --git a/assets/themes/width/width.json b/assets/themes/width/width.json
index 6f16d225e..c4e00a3a6 100644
--- a/assets/themes/width/width.json
+++ b/assets/themes/width/width.json
@@ -204,71 +204,10 @@
]
}
],
- "mapRendering": [
- {
- "location": [
- "point"
- ],
- "icon": "./assets/themes/width/icon.svg",
- "iconSize": "40,40",
- "anchor": "center"
- },
- {
- "width": "4",
- "color": {
- "render": "#00f",
- "mappings": [
- {
- "if": {
- "or": [
- "access=destination",
- "highway=pedestrian",
- "motor_vehicle=no",
- "motor_vehicle=destination"
- ]
- },
- "then": "lightgrey"
- },
- {
- "if": {
- "and": [
- "_width:difference!~-.*",
- "_width:difference:no_pedestrians~-.*"
- ]
- },
- "then": "orange"
- },
- {
- "if": "_width:difference~-.*",
- "then": "#0f0"
- },
- {
- "if": "_width:difference!~-.*",
- "then": "#f00"
- }
- ]
- },
- "dashArray": {
- "render": "",
- "mappings": [
- {
- "if": {
- "and": [
- "oneway=yes",
- {
- "or": [
- "oneway:bicycle=yes",
- "oneway:bicycle="
- ]
- }
- ]
- },
- "then": "5 6"
- }
- ]
- }
- }
+ "pointRendering": [],
+ "lineRendering": [
+ {}
]
}
]
-}
+}
\ No newline at end of file
diff --git a/scripts/generateLayerOverview.ts b/scripts/generateLayerOverview.ts
index ef0b91ef8..097019713 100644
--- a/scripts/generateLayerOverview.ts
+++ b/scripts/generateLayerOverview.ts
@@ -1,26 +1,26 @@
-import ScriptUtils from "./ScriptUtils";
-import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync } from "fs";
-import licenses from "../src/assets/generated/license_info.json";
-import { LayoutConfigJson } from "../src/Models/ThemeConfig/Json/LayoutConfigJson";
-import { LayerConfigJson } from "../src/Models/ThemeConfig/Json/LayerConfigJson";
-import Constants from "../src/Models/Constants";
+import ScriptUtils from "./ScriptUtils"
+import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync } from "fs"
+import licenses from "../src/assets/generated/license_info.json"
+import { LayoutConfigJson } from "../src/Models/ThemeConfig/Json/LayoutConfigJson"
+import { LayerConfigJson } from "../src/Models/ThemeConfig/Json/LayerConfigJson"
+import Constants from "../src/Models/Constants"
import {
DetectDuplicateFilters,
DoesImageExist,
PrevalidateTheme,
ValidateLayer,
- ValidateThemeAndLayers
-} from "../src/Models/ThemeConfig/Conversion/Validation";
-import { Translation } from "../src/UI/i18n/Translation";
-import { TagRenderingConfigJson } from "../src/Models/ThemeConfig/Json/TagRenderingConfigJson";
-import PointRenderingConfigJson from "../src/Models/ThemeConfig/Json/PointRenderingConfigJson";
-import { PrepareLayer } from "../src/Models/ThemeConfig/Conversion/PrepareLayer";
-import { PrepareTheme } from "../src/Models/ThemeConfig/Conversion/PrepareTheme";
-import { DesugaringContext } from "../src/Models/ThemeConfig/Conversion/Conversion";
-import { Utils } from "../src/Utils";
-import Script from "./Script";
-import { AllSharedLayers } from "../src/Customizations/AllSharedLayers";
-import {parse as parse_html} from "node-html-parser"
+ ValidateThemeAndLayers,
+} from "../src/Models/ThemeConfig/Conversion/Validation"
+import { Translation } from "../src/UI/i18n/Translation"
+import { TagRenderingConfigJson } from "../src/Models/ThemeConfig/Json/TagRenderingConfigJson"
+import PointRenderingConfigJson from "../src/Models/ThemeConfig/Json/PointRenderingConfigJson"
+import { PrepareLayer } from "../src/Models/ThemeConfig/Conversion/PrepareLayer"
+import { PrepareTheme } from "../src/Models/ThemeConfig/Conversion/PrepareTheme"
+import { DesugaringContext } from "../src/Models/ThemeConfig/Conversion/Conversion"
+import { Utils } from "../src/Utils"
+import Script from "./Script"
+import { AllSharedLayers } from "../src/Customizations/AllSharedLayers"
+import { parse as parse_html } from "node-html-parser"
// This scripts scans 'src/assets/layers/*.json' for layer definition files and 'src/assets/themes/*.json' for theme definition files.
// It spits out an overview of those to be used to load them
@@ -291,7 +291,7 @@ class LayerOverviewUtils extends Script {
const protolayer = (
proto.layers.filter((l) => l["id"] === "mapcomplete-changes")[0]
)
- const rendering = protolayer.mapRendering[0]
+ const rendering = protolayer.pointRendering[0]
rendering.icon["mappings"] = iconsPerTheme
writeFileSync(
"./assets/themes/mapcomplete-changes/mapcomplete-changes.json",
@@ -525,8 +525,7 @@ class LayerOverviewUtils extends Script {
t.shortDescription ??
new Translation(t.description)
.FirstSentence()
- .OnEveryLanguage(s => parse_html(s).innerText)
- .translations,
+ .OnEveryLanguage((s) => parse_html(s).innerText).translations,
mustHaveLanguage: t.mustHaveLanguage?.length > 0,
}
})
diff --git a/scripts/lint.ts b/scripts/lint.ts
index d3c8d0042..a144083df 100644
--- a/scripts/lint.ts
+++ b/scripts/lint.ts
@@ -3,10 +3,10 @@ import { writeFileSync } from "fs"
import {
FixLegacyTheme,
UpdateLegacyLayer,
-} from "../Models/ThemeConfig/Conversion/LegacyJsonConvert"
-import Translations from "../UI/i18n/Translations"
-import { Translation } from "../UI/i18n/Translation"
-import { LayerConfigJson } from "../Models/ThemeConfig/Json/LayerConfigJson"
+} from "../src/Models/ThemeConfig/Conversion/LegacyJsonConvert"
+import Translations from "../src/UI/i18n/Translations"
+import { Translation } from "../src/UI/i18n/Translation"
+import { LayerConfigJson } from "../src/Models/ThemeConfig/Json/LayerConfigJson"
/*
* This script reads all theme and layer files and reformats them inplace
diff --git a/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts b/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts
index 1fac78398..0c2b53479 100644
--- a/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts
+++ b/src/Models/ThemeConfig/Conversion/CreateNoteImportLayer.ts
@@ -2,7 +2,6 @@ import { Conversion } from "./Conversion"
import LayerConfig from "../LayerConfig"
import { LayerConfigJson } from "../Json/LayerConfigJson"
import Translations from "../../../UI/i18n/Translations"
-import PointRenderingConfigJson from "../Json/PointRenderingConfigJson"
import { Translation, TypedTranslation } from "../../../UI/i18n/Translation"
export default class CreateNoteImportLayer extends Conversion {
@@ -45,13 +44,6 @@ export default class CreateNoteImportLayer extends Conversion r !== null && r["location"] !== undefined
- )
- const firstRender = pointRenderings[0]
- if (firstRender === undefined) {
- throw `Layer ${layerJson.id} does not have a pointRendering: ` + context
- }
const title = layer.presets[0].title
const importButton = {}
@@ -186,7 +178,7 @@ export default class CreateNoteImportLayer extends Conversion 0) {
- config.mapRendering.push(lineRenderConfig)
+ config["mapRendering"].push(lineRenderConfig)
}
}
- if (config.mapRendering.length === 0) {
+ if (config["mapRendering"].length === 0) {
throw (
"Could not convert the legacy theme into a new theme: no renderings defined for layer " +
config.id
@@ -132,7 +132,7 @@ export class UpdateLegacyLayer extends DesugaringStep<
delete config["wayHandling"]
delete config["hideUnderlayingFeaturesMinPercentage"]
- for (const mapRenderingElement of config.mapRendering ?? []) {
+ for (const mapRenderingElement of config["mapRendering"] ?? []) {
if (mapRenderingElement["iconOverlays"] !== undefined) {
mapRenderingElement["iconBadges"] = mapRenderingElement["iconOverlays"]
}
@@ -144,13 +144,28 @@ export class UpdateLegacyLayer extends DesugaringStep<
}
}
- for (const rendering of config.mapRendering ?? []) {
- if (!rendering["iconSize"]) {
+ if (config["mapRendering"]) {
+ const pointRenderings: PointRenderingConfigJson[] = []
+ const lineRenderings: LineRenderingConfigJson[] = []
+ for (const mapRenderingElement of config["mapRendering"]) {
+ if (mapRenderingElement["location"]) {
+ // This is a pointRendering
+ pointRenderings.push(mapRenderingElement)
+ } else {
+ lineRenderings.push(mapRenderingElement)
+ }
+ }
+ config["pointRendering"] = pointRenderings
+ config["lineRendering"] = lineRenderings
+ delete config["mapRendering"]
+ }
+
+ for (const rendering of config.pointRendering ?? []) {
+ const pr = rendering
+ let iconSize = pr.iconSize
+ if (!iconSize) {
continue
}
- const pr = rendering
- let iconSize = pr.iconSize
- console.log("Iconsize is", iconSize)
if (Object.keys(pr.iconSize).length === 1 && pr.iconSize["render"] !== undefined) {
iconSize = pr.iconSize["render"]
@@ -164,7 +179,22 @@ export class UpdateLegacyLayer extends DesugaringStep<
}
}
- for (const rendering of config.mapRendering) {
+ for (const rendering of config.pointRendering) {
+ for (const key in rendering) {
+ if (!rendering[key]) {
+ continue
+ }
+ if (
+ typeof rendering[key]["render"] === "string" &&
+ Object.keys(rendering[key]).length === 1
+ ) {
+ console.log("Rewrite: ", rendering[key])
+ rendering[key] = rendering[key]["render"]
+ }
+ }
+ }
+
+ for (const rendering of config.lineRendering) {
for (const key in rendering) {
if (!rendering[key]) {
continue
diff --git a/src/Models/ThemeConfig/Json/LayerConfigJson.ts b/src/Models/ThemeConfig/Json/LayerConfigJson.ts
index 664c6662d..21cc3de91 100644
--- a/src/Models/ThemeConfig/Json/LayerConfigJson.ts
+++ b/src/Models/ThemeConfig/Json/LayerConfigJson.ts
@@ -9,6 +9,8 @@ import LineRenderingConfigJson from "./LineRenderingConfigJson"
import { QuestionableTagRenderingConfigJson } from "./QuestionableTagRenderingConfigJson"
import RewritableConfigJson from "./RewritableConfigJson"
import { Translatable } from "./Translatable"
+import { Point } from "geojson"
+import PointRenderingConfig from "../PointRenderingConfig"
type MapRendering = {}
@@ -238,12 +240,16 @@ export interface LayerConfigJson {
titleIcons?: (string | TagRenderingConfigJson)[] | ["defaults"]
/**
- * Visualisation of the items on the map
- * Set 'null' explicitly if you do not want a maprendering
+ * Creates points to render on the map.
+ * This can render points for point-objects, lineobjects or areaobjects; use 'location' to indicate where it should be rendered
* group: maprendering
- * types: PointRendering ; LineRendering
*/
- mapRendering?: (PointRenderingConfigJson | LineRenderingConfigJson)[]
+ pointRendering: PointRenderingConfigJson[]
+ /**
+ * Creates lines and areas to render on the map
+ * group: maprendering
+ */
+ lineRendering?: LineRenderingConfigJson[]
/**
* If set, this layer will pass all the features it receives onto the next layer.
diff --git a/src/Models/ThemeConfig/LayerConfig.ts b/src/Models/ThemeConfig/LayerConfig.ts
index 9f1b15638..740d92d4a 100644
--- a/src/Models/ThemeConfig/LayerConfig.ts
+++ b/src/Models/ThemeConfig/LayerConfig.ts
@@ -12,8 +12,6 @@ import MoveConfig from "./MoveConfig"
import PointRenderingConfig from "./PointRenderingConfig"
import WithContextLoader from "./WithContextLoader"
import LineRenderingConfig from "./LineRenderingConfig"
-import PointRenderingConfigJson from "./Json/PointRenderingConfigJson"
-import LineRenderingConfigJson from "./Json/LineRenderingConfigJson"
import { TagRenderingConfigJson } from "./Json/TagRenderingConfigJson"
import BaseUIElement from "../../UI/BaseUIElement"
import Combine from "../../UI/Base/Combine"
@@ -265,34 +263,27 @@ export default class LayerConfig extends WithContextLoader {
return config
})
- if (json.mapRendering === undefined) {
- throw "MapRendering is undefined in " + context
+ if (json.pointRendering === undefined && json.lineRendering === undefined) {
+ throw "Both pointRendering and lineRendering are undefined in " + context
}
- if (json.mapRendering === null) {
- this.mapRendering = []
- this.lineRendering = []
+ if (json.lineRendering) {
+ this.lineRendering = Utils.NoNull(json.lineRendering).map(
+ (r, i) => new LineRenderingConfig(r, `${context}[${i}]`)
+ )
} else {
- this.mapRendering = Utils.NoNull(json.mapRendering)
- .filter((r) => r["location"] !== undefined)
- .map(
- (r, i) =>
- new PointRenderingConfig(
- r,
- context + ".mapRendering[" + i + "]"
- )
- )
+ this.lineRendering = []
+ }
- this.lineRendering = Utils.NoNull(json.mapRendering)
- .filter((r) => r["location"] === undefined)
- .map(
- (r, i) =>
- new LineRenderingConfig(
- r,
- context + ".mapRendering[" + i + "]"
- )
- )
+ if (json.pointRendering) {
+ this.mapRendering = Utils.NoNull(json.pointRendering).map(
+ (r, i) => new PointRenderingConfig(r, `${context}[${i}]`)
+ )
+ } else {
+ this.mapRendering = []
+ }
+ {
const hasCenterRendering = this.mapRendering.some(
(r) =>
r.location.has("centroid") ||
@@ -301,16 +292,22 @@ export default class LayerConfig extends WithContextLoader {
r.location.has("end")
)
- if (this.lineRendering.length === 0 && this.mapRendering.length === 0) {
+ if (
+ json.pointRendering !== null &&
+ json.lineRendering !== null &&
+ this.lineRendering.length === 0 &&
+ this.mapRendering.length === 0
+ ) {
throw (
"The layer " +
this.id +
- " does not have any maprenderings defined and will thus not show up on the map at all. If this is intentional, set maprenderings to 'null' instead of '[]'"
+ " does not have any maprenderings defined and will thus not show up on the map at all. If this is intentional, set `pointRendering` and `lineRendering` to 'null' instead of '[]'"
)
} else if (
!hasCenterRendering &&
this.lineRendering.length === 0 &&
Constants.priviliged_layers.indexOf(this.id) < 0 &&
+ this.source !== null /*library layer*/ &&
!this.source?.geojsonSource?.startsWith(
"https://api.openstreetmap.org/api/0.6/notes.json"
)
diff --git a/src/UI/Map/ShowDataLayer.ts b/src/UI/Map/ShowDataLayer.ts
index 12f3f0e0d..5beb85452 100644
--- a/src/UI/Map/ShowDataLayer.ts
+++ b/src/UI/Map/ShowDataLayer.ts
@@ -404,7 +404,7 @@ class LineRenderingLayer {
export default class ShowDataLayer {
private static rangeLayer = new LayerConfig(
- range_layer,
+ range_layer,
"ShowDataLayer.ts:range.json"
)
private readonly _map: Store
diff --git a/src/UI/QueryParameterDocumentation.ts b/src/UI/QueryParameterDocumentation.ts
index 450d581e5..0bb2e115b 100644
--- a/src/UI/QueryParameterDocumentation.ts
+++ b/src/UI/QueryParameterDocumentation.ts
@@ -44,7 +44,13 @@ export default class QueryParameterDocumentation {
source: {
osmTags: "id~*",
},
- mapRendering: null,
+ lineRendering: [
+ {
+ color: "#000000",
+ width: 5,
+ },
+ ],
+ pointRendering: null,
},
],
})