diff --git a/assets/layers/address/address.json b/assets/layers/address/address.json index f13504867..6f36cdb20 100644 --- a/assets/layers/address/address.json +++ b/assets/layers/address/address.json @@ -23,43 +23,6 @@ "eu": "OSMko helbide ezagunak", "pl": "Znane adresy w OSM" }, - "minzoom": 18, - "source": { - "osmTags": { - "or": [ - "addr:housenumber~*", - "addr:street~*" - ] - } - }, - "calculatedTags": [ - "_closest_3_street_names=closestn(feat)('named_streets',3, 'name').map(f => f.feat.properties.name)", - "_closest_street:0:name=JSON.parse(feat.properties._closest_3_street_names)[0]", - "_closest_street:1:name=JSON.parse(feat.properties._closest_3_street_names)[1]", - "_closest_street:2:name=JSON.parse(feat.properties._closest_3_street_names)[2]" - ], - "title": { - "render": { - "en": "Known address", - "de": "Bekannte Adresse", - "hu": "Ismert cím", - "nl": "Bekend adres", - "fr": "Adresse connue", - "pl": "Znany adres", - "ru": "Известный адрес", - "es": "Domicilio conocido", - "zh_Hans": "已知的地址", - "id": "Alamat yang diketahui", - "nb_NO": "Kjent adresse", - "da": "Kendt adresse", - "cs": "Známá adresa", - "ca": "Adreça coneguda", - "pt": "Endereço conhecido", - "pt_BR": "Endereço conhecido", - "he": "כתובת ידועה", - "eu": "Helbide ezaguna" - } - }, "description": { "en": "Addresses", "nl": "Adressen", @@ -84,6 +47,104 @@ "he": "כתובות", "eu": "Helbideak" }, + "source": { + "osmTags": { + "or": [ + "addr:housenumber~*", + "addr:street~*" + ] + } + }, + "calculatedTags": [ + "_closest_3_street_names=closestn(feat)('named_streets',3, 'name').map(f => f.feat.properties.name)", + "_closest_street:0:name=JSON.parse(feat.properties._closest_3_street_names)[0]", + "_closest_street:1:name=JSON.parse(feat.properties._closest_3_street_names)[1]", + "_closest_street:2:name=JSON.parse(feat.properties._closest_3_street_names)[2]" + ], + "minzoom": 18, + "title": { + "render": { + "en": "Known address", + "de": "Bekannte Adresse", + "hu": "Ismert cím", + "nl": "Bekend adres", + "fr": "Adresse connue", + "pl": "Znany adres", + "ru": "Известный адрес", + "es": "Domicilio conocido", + "zh_Hans": "已知的地址", + "id": "Alamat yang diketahui", + "nb_NO": "Kjent adresse", + "da": "Kendt adresse", + "cs": "Známá adresa", + "ca": "Adreça coneguda", + "pt": "Endereço conhecido", + "pt_BR": "Endereço conhecido", + "he": "כתובת ידועה", + "eu": "Helbide ezaguna" + } + }, + "pointRendering": [ + { + "label": { + "render": "
{addr:housenumber}
", + "condition": "addr:housenumber~*" + }, + "iconSize": "50,50", + "marker": [ + { + "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" + } + ], + "lineRendering": [ + { + "color": { + "render": "#00f", + "mappings": [ + { + "if": { + "or": [ + { + "and": [ + "addr:housenumber=", + "nohousenumber!=yes" + ] + }, + "addr:street=" + ] + }, + "then": "#ff0" + } + ] + }, + "width": "8" + } + ], "tagRenderings": [ { "id": "housenumber", @@ -262,66 +323,5 @@ } ] } - ], - "pointRendering": [ - { - "label": { - "render": "
{addr:housenumber}
", - "condition": "addr:housenumber~*" - }, - "iconSize": "50,50", - "marker": [ - { - "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" - } - ], - "lineRendering": [ - { - "color": { - "render": "#00f", - "mappings": [ - { - "if": { - "or": [ - { - "and": [ - "addr:housenumber=", - "nohousenumber!=yes" - ] - }, - "addr:street=" - ] - }, - "then": "#ff0" - } - ] - }, - "width": "8" - } ] } diff --git a/assets/layers/advertising/advertising.json b/assets/layers/advertising/advertising.json index 50c383ba0..a3ef1ebcd 100644 --- a/assets/layers/advertising/advertising.json +++ b/assets/layers/advertising/advertising.json @@ -13,10 +13,21 @@ "pl": "Reklama", "pt_BR": "Anunciar" }, - "minzoom": 15, + "description": { + "ca": "Completarem les dades dels elements publicitaris amb referència, operador i il·luminació", + "es": "Completaremos los datos de los elementos publicitarios con referencia, operador y iluminación", + "en": "We will complete data from advertising features with reference, operator and lit", + "de": "Wir vervollständigen Daten von Werbeanlagen mit Referenz-, Betreiber- und Beleuchtungsdaten", + "cs": "Doplníme údaje z reklamních prvků s referencemi, provozovatelem a osvětlením", + "pt": "Iremos completar os dados das funcionalidades publicitárias com referência, operador e iluminado", + "eu": "Publizitate-ezaugarrien datuak osatuko ditugu erreferentziarekin, operadorearekin eta argiztatuarekin.", + "pl": "Uzupełnimy dane z obiektów reklamowych o referencję, operatora i oświetlenie", + "pt_BR": "Completaremos os dados das características de publicidade com referência, operador e iluminação" + }, "source": { "osmTags": "advertising~*" }, + "minzoom": 15, "title": { "render": { "*": "{advertising}" @@ -224,17 +235,484 @@ } ] }, - "description": { - "ca": "Completarem les dades dels elements publicitaris amb referència, operador i il·luminació", - "es": "Completaremos los datos de los elementos publicitarios con referencia, operador y iluminación", - "en": "We will complete data from advertising features with reference, operator and lit", - "de": "Wir vervollständigen Daten von Werbeanlagen mit Referenz-, Betreiber- und Beleuchtungsdaten", - "cs": "Doplníme údaje z reklamních prvků s referencemi, provozovatelem a osvětlením", - "pt": "Iremos completar os dados das funcionalidades publicitárias com referência, operador e iluminado", - "eu": "Publizitate-ezaugarrien datuak osatuko ditugu erreferentziarekin, operadorearekin eta argiztatuarekin.", - "pl": "Uzupełnimy dane z obiektów reklamowych o referencję, operatora i oświetlenie", - "pt_BR": "Completaremos os dados das características de publicidade com referência, operador e iluminação" - }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": { + "mappings": [ + { + "if": "_referencing_ways=[\"way/-1\"]", + "then": "brick_wall_square" + } + ] + } + }, + { + "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~*" + ] + }, + "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~*" + ] + }, + "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": "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" + } + ], + "presets": [ + { + "tags": [ + "advertising=billboard" + ], + "title": { + "en": "a billboard", + "ca": "una tanca publicitària", + "es": "una valla publicitària", + "de": "eine Werbetafel", + "cs": "billboard", + "pt": "um outdoor", + "fr": "un grand panneau", + "he": "שלט חוצות", + "eu": "iragarki panela", + "pl": "bilbord", + "pt_BR": "um outdoor" + }, + "description": { + "en": "A large outdoor advertising structure, typically found in high-traffic areas such as alongside busy roads", + "ca": "Una estructura publicitària gran a l'exterior, que normalment es troba a zones transitades com ara al costat de carreteres amb molta intensitat", + "es": "Una estructura publicitaria grande al aire libre, que normalmente se encuentra en áreas transitadas como carreteras con mucha intensidad", + "de": "Eine große Außenwerbung, die typischerweise in stark befahrenen Gebieten, z. B. entlang stark befahrener Straßen, zu finden ist", + "cs": "Velká venkovní reklamní konstrukce, která se obvykle nachází na místech s velkým provozem, například podél frekventovaných silnic", + "fr": "Un grand équipement extérieur, principalement disposé dans les zones à fort trafic comme une route", + "pt": "Uma grande estrutura de publicidade ao ar livre, normalmente encontrada em áreas de alto tráfego, como ao longo de estradas movimentadas", + "he": "מבנה פרסום חוצות גדול, שנמצא בדרך כלל באזורים עתירי תנועה כמו לצד כבישים סואנים", + "eu": "Atari zabaleko publizitate-egitura handia, trafiko handiko eremuetan egon ohi dena, adibidez errepideen ondoan", + "pl": "Duża struktura reklamowa na dworze, zwykle znajdująca się w obszarach z dużym ruchem, np. w pobliżu ruchliwych dróg", + "pt_BR": "Uma grande estrutura de publicidade outdoor, geralmente encontrada em áreas com alto tráfego, como ao longo de estradas movimentadas" + }, + "exampleImages": [ + "./assets/themes/advertising/KFC_Billboard.jpg", + "./assets/themes/advertising/LIDL_Billboard.jpg", + "./assets/themes/advertising/Repsol_Billboard.jpg" + ] + }, + { + "tags": [ + "advertising=poster_box" + ], + "title": { + "en": "a freestanding poster box", + "ca": "un mupi", + "es": "un mupi", + "de": "eine freistehende Posterbox", + "cs": "volně stojící plakátovací skříň", + "pt": "uma caixa de pôster independente", + "fr": "un panneau à affiches scellé au sol", + "pl": "wolnostojąca skrzynka plakatowa", + "pt_BR": "uma caixa expositora independente" + }, + "exampleImages": [ + "./assets/themes/advertising/Mupi_spain.jpg", + "./assets/themes/advertising/Mupi_Alcoi.jpg" + ] + }, + { + "tags": [ + "advertising=poster_box" + ], + "title": { + "en": "a poster box mounted on a wall", + "ca": "un mupi sobre la paret", + "es": "un mupi sobre la pared", + "de": "eine wandmontierte Posterbox", + "cs": "plakátovací skříň připevněná na stěnu", + "pt": "uma caixa de pôster montada em uma parede", + "fr": "un panneau à affiches monté sur un mur", + "pl": "skrzynka plakatowa montowana na ścianie", + "pt_BR": "uma caixa de pôster montada em uma parede" + }, + "snapToLayer": [ + "walls_and_buildings" + ] + }, + { + "tags": [ + "advertising=board" + ], + "title": { + "ca": "un tauló d'anunis", + "es": "un tablón de anuncios", + "en": "a board", + "de": "ein Anschlagbrett", + "cs": "billboard", + "nl": "een uithangbord", + "fr": "un petit panneau", + "pt": "a bordo", + "pl": "tablica", + "pt_BR": "um painel publicitário" + }, + "description": { + "en": "Small billboard for neighbourhood advertising, generally intended for pedestrians", + "es": "Un pequeño tablón de anuncios para anuncios del vecindario, normalmente destinado a peatones", + "ca": "Un xicotet tauló d'anuncics per a anuncis del veïnat, normalment destitat a peatons", + "de": "Kleines Anschlagbrett für Nachbarschaftswerbung, normalerweise an Fußgänger gerichtet", + "cs": "Malý billboard pro sousedskou reklamu, zpravidla určený pro chodce", + "fr": "Petit panneau pour l’affichage de proximité, généralement à destination des piétons", + "nl": "Een klein uithangbord voor buurtadvertenties, meestal gericht op voetgangers", + "pt": "Pequeno outdoor para publicidade de bairro, geralmente destinado a pedestres", + "pl": "Mały bilbord dla reklam lokalnych, przeznaczony głównie dla pieszych", + "pt_BR": "Pequeno outdoor para publicidade local, geralmente destinado a pedestres" + }, + "exampleImages": [ + "./assets/themes/advertising/local_Board.jpg", + "./assets/themes/advertising/FGV_Founding.jpg", + "./assets/themes/advertising/Small_Board.jpg" + ] + }, + { + "tags": [ + "advertising=column" + ], + "title": { + "ca": "una columna", + "es": "una columna", + "en": "a column", + "de": "eine Litfaßsäule", + "cs": "sloup", + "nl": "een aanplakzuil", + "fr": "une colonne", + "pt": "uma coluna", + "pl": "kolumna", + "pt_BR": "uma coluna" + }, + "description": { + "en": "A cylindrical outdoor structure which shows advertisements", + "es": "Una estructura cilíndrica exterior que muestra publicidad", + "ca": "Una extructura cilíndica exterior que mostra publicitat", + "de": "Eine zylindrische Struktur im Freien, die Werbung zeigt", + "cs": "Válcová venkovní konstrukce, která zobrazuje reklamy", + "fr": "Une structure extérieure cylindrique qui affiche de la publicité", + "nl": "Een cylindervormige structuur die buiten staat waarop advertenties staan", + "pt": "Uma estrutura exterior cilíndrica que mostra anúncios", + "pl": "Cylindryczna konstrukcja zewnętrzna, na której pokazywane są reklamy", + "pt_BR": "Uma estrutura cilíndrica ao ar livre que exibe anúncios" + }, + "exampleImages": [ + "./assets/themes/advertising/AdvertisingColumn_001.jpg", + "./assets/themes/advertising/AdvertisingColumn_003.jpg" + ] + }, + { + "tags": [ + "advertising=flag", + "man_made=pole" + ], + "title": { + "ca": "una bandera", + "es": "una bandera", + "en": "a flag", + "de": "eine Flagge", + "cs": "vlajka", + "nl": "een vlag", + "fr": "un drapeau", + "pt": "uma bandeira", + "pl": "flaga", + "pt_BR": "uma bandeira" + }, + "exampleImages": [ + "./assets/themes/advertising/Advertising_flag.jpg", + "./assets/themes/advertising/JR_Central.jpg" + ] + }, + { + "tags": [ + "advertising=screen" + ], + "title": { + "ca": "una pantalla", + "es": "una pantalla", + "en": "a screen", + "de": "einen Bildschirm", + "cs": "obrazovka", + "nl": "een scherm", + "fr": "un écran", + "pt": "uma tela", + "pl": "ekran", + "pt_BR": "uma tela" + }, + "exampleImages": [ + "./assets/themes/advertising/Screen_poster_box.jpg", + "./assets/themes/advertising/City-Light-Poster.jpg" + ] + }, + { + "tags": [ + "advertising=screen" + ], + "title": { + "ca": "una patalla sobre una paret", + "es": "una pantalla sobre una pared", + "en": "a screen mounted on a wall", + "de": "ein wandmontierter Bildschirm", + "cs": "obrazovka připevněná na stěnu", + "nl": "een scherm op een muur", + "fr": "un écran fixé au mur", + "pt": "uma tela montada em uma parede", + "pl": "ekran zamontowany na ścianie", + "pt_BR": "uma tela montada em uma parede" + }, + "exampleImages": [ + "./assets/themes/advertising/Subway_screen.jpg", + "./assets/themes/advertising/TV_media.jpg", + "./assets/themes/advertising/Times square.jpg" + ], + "snapToLayer": [ + "walls_and_buildings" + ], + "maxSnapDistance": 5 + }, + { + "tags": [ + "advertising=tarp" + ], + "title": { + "ca": "una lona", + "es": "una lona", + "en": "a tarp", + "de": "eine Plane", + "cs": "plachta", + "nl": "een spandoek", + "fr": "une bâche", + "pt": "uma lona", + "pl": "plandeka", + "pt_BR": "uma lona" + }, + "description": { + "en": "A piece of waterproof textile with a printed message, permanently anchored on a wall", + "ca": "Una peça de tèxtil impermeable amb un missatge imprès, fixada permanentment a una paret", + "es": "Una pieza de tela impermeable con un mensaje impreso, anclada permanentemente en una pared", + "de": "Ein wasserfestes Textil mit einer aufgedruckten Botschaft, das dauerhaft an einer Wand verankert ist", + "cs": "Kus nepromokavého textilu s natištěným vzkazem, trvale připevněný na stěnu", + "nl": "Een stuk groot, weerbestendig textiel met opgedrukte reclameboodschap die permanent aan de muur hangt", + "pt": "Uma peça de tecido impermeável com uma mensagem impressa, permanentemente ancorada na parede", + "fr": "Une pièce de textile imperméable avec un message imprimé, ancrée de façon permanente sur un mur.", + "pl": "Kawałek wodoodpornej tkaniny z nadrukowanym przesłaniem, trwale przymocowany do ściany", + "pt_BR": "Um pedaço de tecido impermeável com uma mensagem impressa, permanentemente fixado a uma parede" + }, + "exampleImages": [ + "./assets/themes/advertising/tarp_feder.jpg", + "./assets/themes/advertising/tarp_madrid.jpg" + ], + "snapToLayer": [ + "walls_and_buildings" + ], + "maxSnapDistance": 5 + }, + { + "tags": [ + "advertising=totem" + ], + "title": { + "ca": "un tòtem", + "es": "un tótem", + "en": "a totem", + "de": "ein Totem", + "cs": "totem", + "fr": "un totem", + "pt": "um totem", + "pl": "totem", + "pt_BR": "um totem" + }, + "exampleImages": [ + "./assets/themes/advertising/AdvertisingTotem_004.jpg", + "./assets/themes/advertising/AdvertisingTotem_003.jpg", + "./assets/themes/advertising/Lidl_totem.jpg" + ] + }, + { + "tags": [ + "advertising=sign" + ], + "title": { + "ca": "un lletrer", + "es": "un señal", + "en": "a sign", + "de": "ein Schild", + "cs": "cedule", + "fr": "une enseigne", + "pt": "um sinal", + "pt_BR": "uma placa", + "eu": "letrero bat", + "pl": "znak" + }, + "description": { + "en": "Used for advertising signs, neon signs, logos & institutional entrance signs", + "es": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales", + "ca": "S'utilitza per a cartells publicitaris, rètols de neó, logotips i cartells en entrades institucionals", + "de": "Verwendet für Werbeschilder, Leuchtreklamen, Logos und institutionelle Eingangsschilder", + "cs": "Používá se pro reklamní nápisy, neonové nápisy, loga a vstupní nápisy institucí", + "fr": "Désigne une enseigne publicitaire, une enseigne néon, les logos ou des indications d'entrées", + "pt": "Usado para sinais publicitários, sinais de néon, logotipos e sinais de entrada institucionais", + "eu": "Iragarki publizitarioetarako, neon-karteletarako, logotipoetarako eta erakundeen sarrera-seinaleetarako erabiltzen da", + "pl": "Używany do znaków reklamowych, neonów, logo i znaków wejściowych do instytucji", + "pt_BR": "Usado para placas de publicidade, letreiros de neon, logotipos e placas de entrada institucionais" + }, + "exampleImages": [ + "./assets/themes/advertising/Waitrose_sign.jpg", + "./assets/themes/advertising/sign_EOI.jpg", + "./assets/themes/advertising/farma_sign.jpg" + ], + "snapToLayer": [ + "walls_and_buildings" + ], + "maxSnapDistance": 5 + }, + { + "tags": [ + "advertising=sculpture" + ], + "title": { + "ca": "una escupltura", + "es": "una escultura", + "en": "a sculpture", + "de": "eine Skulptur", + "cs": "socha", + "fr": "une sculpture", + "pt": "uma escultura", + "eu": "eskultura bat", + "pl": "rzeźba", + "pt_BR": "uma escultura" + }, + "exampleImages": [ + "./assets/themes/advertising/Aircraft_Sculpture.jpg", + "./assets/themes/advertising/Mug.jpg", + "./assets/themes/advertising/BS.JPG" + ] + }, + { + "tags": [ + "advertising=wall_painting" + ], + "title": { + "ca": "una paret pintada", + "es": "una pared pintada", + "en": "a wall painting", + "de": "eine Wandmalerei", + "cs": "nástěnná malba", + "fr": "une peinture murale", + "pt": "uma pintura de parede", + "nl": "een muurschildering", + "eu": "pareta margotu bat", + "pl": "mural ścienny", + "pt_BR": "uma pintura mural" + }, + "exampleImages": [ + "./assets/themes/advertising/Capitol_wall.jpg", + "./assets/themes/advertising/clarke_wall.jpg" + ], + "snapToLayer": [ + "walls_and_buildings" + ], + "maxSnapDistance": 5 + } + ], "tagRenderings": [ "images", { @@ -986,487 +1464,9 @@ } } ], + "deletion": true, "allowMove": { "enableImproveAccuracy": true, "enableRelocation": false - }, - "deletion": true, - "presets": [ - { - "tags": [ - "advertising=billboard" - ], - "title": { - "en": "a billboard", - "ca": "una tanca publicitària", - "es": "una valla publicitària", - "de": "eine Werbetafel", - "cs": "billboard", - "pt": "um outdoor", - "fr": "un grand panneau", - "he": "שלט חוצות", - "eu": "iragarki panela", - "pl": "bilbord", - "pt_BR": "um outdoor" - }, - "description": { - "en": "A large outdoor advertising structure, typically found in high-traffic areas such as alongside busy roads", - "ca": "Una estructura publicitària gran a l'exterior, que normalment es troba a zones transitades com ara al costat de carreteres amb molta intensitat", - "es": "Una estructura publicitaria grande al aire libre, que normalmente se encuentra en áreas transitadas como carreteras con mucha intensidad", - "de": "Eine große Außenwerbung, die typischerweise in stark befahrenen Gebieten, z. B. entlang stark befahrener Straßen, zu finden ist", - "cs": "Velká venkovní reklamní konstrukce, která se obvykle nachází na místech s velkým provozem, například podél frekventovaných silnic", - "fr": "Un grand équipement extérieur, principalement disposé dans les zones à fort trafic comme une route", - "pt": "Uma grande estrutura de publicidade ao ar livre, normalmente encontrada em áreas de alto tráfego, como ao longo de estradas movimentadas", - "he": "מבנה פרסום חוצות גדול, שנמצא בדרך כלל באזורים עתירי תנועה כמו לצד כבישים סואנים", - "eu": "Atari zabaleko publizitate-egitura handia, trafiko handiko eremuetan egon ohi dena, adibidez errepideen ondoan", - "pl": "Duża struktura reklamowa na dworze, zwykle znajdująca się w obszarach z dużym ruchem, np. w pobliżu ruchliwych dróg", - "pt_BR": "Uma grande estrutura de publicidade outdoor, geralmente encontrada em áreas com alto tráfego, como ao longo de estradas movimentadas" - }, - "exampleImages": [ - "./assets/themes/advertising/KFC_Billboard.jpg", - "./assets/themes/advertising/LIDL_Billboard.jpg", - "./assets/themes/advertising/Repsol_Billboard.jpg" - ] - }, - { - "tags": [ - "advertising=poster_box" - ], - "title": { - "en": "a freestanding poster box", - "ca": "un mupi", - "es": "un mupi", - "de": "eine freistehende Posterbox", - "cs": "volně stojící plakátovací skříň", - "pt": "uma caixa de pôster independente", - "fr": "un panneau à affiches scellé au sol", - "pl": "wolnostojąca skrzynka plakatowa", - "pt_BR": "uma caixa expositora independente" - }, - "exampleImages": [ - "./assets/themes/advertising/Mupi_spain.jpg", - "./assets/themes/advertising/Mupi_Alcoi.jpg" - ] - }, - { - "tags": [ - "advertising=poster_box" - ], - "title": { - "en": "a poster box mounted on a wall", - "ca": "un mupi sobre la paret", - "es": "un mupi sobre la pared", - "de": "eine wandmontierte Posterbox", - "cs": "plakátovací skříň připevněná na stěnu", - "pt": "uma caixa de pôster montada em uma parede", - "fr": "un panneau à affiches monté sur un mur", - "pl": "skrzynka plakatowa montowana na ścianie", - "pt_BR": "uma caixa de pôster montada em uma parede" - }, - "snapToLayer": [ - "walls_and_buildings" - ] - }, - { - "tags": [ - "advertising=board" - ], - "title": { - "ca": "un tauló d'anunis", - "es": "un tablón de anuncios", - "en": "a board", - "de": "ein Anschlagbrett", - "cs": "billboard", - "nl": "een uithangbord", - "fr": "un petit panneau", - "pt": "a bordo", - "pl": "tablica", - "pt_BR": "um painel publicitário" - }, - "description": { - "en": "Small billboard for neighbourhood advertising, generally intended for pedestrians", - "es": "Un pequeño tablón de anuncios para anuncios del vecindario, normalmente destinado a peatones", - "ca": "Un xicotet tauló d'anuncics per a anuncis del veïnat, normalment destitat a peatons", - "de": "Kleines Anschlagbrett für Nachbarschaftswerbung, normalerweise an Fußgänger gerichtet", - "cs": "Malý billboard pro sousedskou reklamu, zpravidla určený pro chodce", - "fr": "Petit panneau pour l’affichage de proximité, généralement à destination des piétons", - "nl": "Een klein uithangbord voor buurtadvertenties, meestal gericht op voetgangers", - "pt": "Pequeno outdoor para publicidade de bairro, geralmente destinado a pedestres", - "pl": "Mały bilbord dla reklam lokalnych, przeznaczony głównie dla pieszych", - "pt_BR": "Pequeno outdoor para publicidade local, geralmente destinado a pedestres" - }, - "exampleImages": [ - "./assets/themes/advertising/local_Board.jpg", - "./assets/themes/advertising/FGV_Founding.jpg", - "./assets/themes/advertising/Small_Board.jpg" - ] - }, - { - "tags": [ - "advertising=column" - ], - "title": { - "ca": "una columna", - "es": "una columna", - "en": "a column", - "de": "eine Litfaßsäule", - "cs": "sloup", - "nl": "een aanplakzuil", - "fr": "une colonne", - "pt": "uma coluna", - "pl": "kolumna", - "pt_BR": "uma coluna" - }, - "description": { - "en": "A cylindrical outdoor structure which shows advertisements", - "es": "Una estructura cilíndrica exterior que muestra publicidad", - "ca": "Una extructura cilíndica exterior que mostra publicitat", - "de": "Eine zylindrische Struktur im Freien, die Werbung zeigt", - "cs": "Válcová venkovní konstrukce, která zobrazuje reklamy", - "fr": "Une structure extérieure cylindrique qui affiche de la publicité", - "nl": "Een cylindervormige structuur die buiten staat waarop advertenties staan", - "pt": "Uma estrutura exterior cilíndrica que mostra anúncios", - "pl": "Cylindryczna konstrukcja zewnętrzna, na której pokazywane są reklamy", - "pt_BR": "Uma estrutura cilíndrica ao ar livre que exibe anúncios" - }, - "exampleImages": [ - "./assets/themes/advertising/AdvertisingColumn_001.jpg", - "./assets/themes/advertising/AdvertisingColumn_003.jpg" - ] - }, - { - "tags": [ - "advertising=flag", - "man_made=pole" - ], - "title": { - "ca": "una bandera", - "es": "una bandera", - "en": "a flag", - "de": "eine Flagge", - "cs": "vlajka", - "nl": "een vlag", - "fr": "un drapeau", - "pt": "uma bandeira", - "pl": "flaga", - "pt_BR": "uma bandeira" - }, - "exampleImages": [ - "./assets/themes/advertising/Advertising_flag.jpg", - "./assets/themes/advertising/JR_Central.jpg" - ] - }, - { - "tags": [ - "advertising=screen" - ], - "title": { - "ca": "una pantalla", - "es": "una pantalla", - "en": "a screen", - "de": "einen Bildschirm", - "cs": "obrazovka", - "nl": "een scherm", - "fr": "un écran", - "pt": "uma tela", - "pl": "ekran", - "pt_BR": "uma tela" - }, - "exampleImages": [ - "./assets/themes/advertising/Screen_poster_box.jpg", - "./assets/themes/advertising/City-Light-Poster.jpg" - ] - }, - { - "tags": [ - "advertising=screen" - ], - "title": { - "ca": "una patalla sobre una paret", - "es": "una pantalla sobre una pared", - "en": "a screen mounted on a wall", - "de": "ein wandmontierter Bildschirm", - "cs": "obrazovka připevněná na stěnu", - "nl": "een scherm op een muur", - "fr": "un écran fixé au mur", - "pt": "uma tela montada em uma parede", - "pl": "ekran zamontowany na ścianie", - "pt_BR": "uma tela montada em uma parede" - }, - "exampleImages": [ - "./assets/themes/advertising/Subway_screen.jpg", - "./assets/themes/advertising/TV_media.jpg", - "./assets/themes/advertising/Times square.jpg" - ], - "snapToLayer": [ - "walls_and_buildings" - ], - "maxSnapDistance": 5 - }, - { - "tags": [ - "advertising=tarp" - ], - "title": { - "ca": "una lona", - "es": "una lona", - "en": "a tarp", - "de": "eine Plane", - "cs": "plachta", - "nl": "een spandoek", - "fr": "une bâche", - "pt": "uma lona", - "pl": "plandeka", - "pt_BR": "uma lona" - }, - "description": { - "en": "A piece of waterproof textile with a printed message, permanently anchored on a wall", - "ca": "Una peça de tèxtil impermeable amb un missatge imprès, fixada permanentment a una paret", - "es": "Una pieza de tela impermeable con un mensaje impreso, anclada permanentemente en una pared", - "de": "Ein wasserfestes Textil mit einer aufgedruckten Botschaft, das dauerhaft an einer Wand verankert ist", - "cs": "Kus nepromokavého textilu s natištěným vzkazem, trvale připevněný na stěnu", - "nl": "Een stuk groot, weerbestendig textiel met opgedrukte reclameboodschap die permanent aan de muur hangt", - "pt": "Uma peça de tecido impermeável com uma mensagem impressa, permanentemente ancorada na parede", - "fr": "Une pièce de textile imperméable avec un message imprimé, ancrée de façon permanente sur un mur.", - "pl": "Kawałek wodoodpornej tkaniny z nadrukowanym przesłaniem, trwale przymocowany do ściany", - "pt_BR": "Um pedaço de tecido impermeável com uma mensagem impressa, permanentemente fixado a uma parede" - }, - "exampleImages": [ - "./assets/themes/advertising/tarp_feder.jpg", - "./assets/themes/advertising/tarp_madrid.jpg" - ], - "snapToLayer": [ - "walls_and_buildings" - ], - "maxSnapDistance": 5 - }, - { - "tags": [ - "advertising=totem" - ], - "title": { - "ca": "un tòtem", - "es": "un tótem", - "en": "a totem", - "de": "ein Totem", - "cs": "totem", - "fr": "un totem", - "pt": "um totem", - "pl": "totem", - "pt_BR": "um totem" - }, - "exampleImages": [ - "./assets/themes/advertising/AdvertisingTotem_004.jpg", - "./assets/themes/advertising/AdvertisingTotem_003.jpg", - "./assets/themes/advertising/Lidl_totem.jpg" - ] - }, - { - "tags": [ - "advertising=sign" - ], - "title": { - "ca": "un lletrer", - "es": "un señal", - "en": "a sign", - "de": "ein Schild", - "cs": "cedule", - "fr": "une enseigne", - "pt": "um sinal", - "pt_BR": "uma placa", - "eu": "letrero bat", - "pl": "znak" - }, - "description": { - "en": "Used for advertising signs, neon signs, logos & institutional entrance signs", - "es": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales", - "ca": "S'utilitza per a cartells publicitaris, rètols de neó, logotips i cartells en entrades institucionals", - "de": "Verwendet für Werbeschilder, Leuchtreklamen, Logos und institutionelle Eingangsschilder", - "cs": "Používá se pro reklamní nápisy, neonové nápisy, loga a vstupní nápisy institucí", - "fr": "Désigne une enseigne publicitaire, une enseigne néon, les logos ou des indications d'entrées", - "pt": "Usado para sinais publicitários, sinais de néon, logotipos e sinais de entrada institucionais", - "eu": "Iragarki publizitarioetarako, neon-karteletarako, logotipoetarako eta erakundeen sarrera-seinaleetarako erabiltzen da", - "pl": "Używany do znaków reklamowych, neonów, logo i znaków wejściowych do instytucji", - "pt_BR": "Usado para placas de publicidade, letreiros de neon, logotipos e placas de entrada institucionais" - }, - "exampleImages": [ - "./assets/themes/advertising/Waitrose_sign.jpg", - "./assets/themes/advertising/sign_EOI.jpg", - "./assets/themes/advertising/farma_sign.jpg" - ], - "snapToLayer": [ - "walls_and_buildings" - ], - "maxSnapDistance": 5 - }, - { - "tags": [ - "advertising=sculpture" - ], - "title": { - "ca": "una escupltura", - "es": "una escultura", - "en": "a sculpture", - "de": "eine Skulptur", - "cs": "socha", - "fr": "une sculpture", - "pt": "uma escultura", - "eu": "eskultura bat", - "pl": "rzeźba", - "pt_BR": "uma escultura" - }, - "exampleImages": [ - "./assets/themes/advertising/Aircraft_Sculpture.jpg", - "./assets/themes/advertising/Mug.jpg", - "./assets/themes/advertising/BS.JPG" - ] - }, - { - "tags": [ - "advertising=wall_painting" - ], - "title": { - "ca": "una paret pintada", - "es": "una pared pintada", - "en": "a wall painting", - "de": "eine Wandmalerei", - "cs": "nástěnná malba", - "fr": "une peinture murale", - "pt": "uma pintura de parede", - "nl": "een muurschildering", - "eu": "pareta margotu bat", - "pl": "mural ścienny", - "pt_BR": "uma pintura mural" - }, - "exampleImages": [ - "./assets/themes/advertising/Capitol_wall.jpg", - "./assets/themes/advertising/clarke_wall.jpg" - ], - "snapToLayer": [ - "walls_and_buildings" - ], - "maxSnapDistance": 5 - } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": { - "mappings": [ - { - "if": "_referencing_ways=[\"way/-1\"]", - "then": "brick_wall_square" - } - ] - } - }, - { - "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~*" - ] - }, - "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~*" - ] - }, - "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": "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 f2a411561..e51eb5ba0 100644 --- a/assets/layers/ambulancestation/ambulancestation.json +++ b/assets/layers/ambulancestation/ambulancestation.json @@ -20,7 +20,23 @@ "pl": "Mapa stacji pogotowia ratunkowego", "pt_BR": "Mapa de estações de ambulância" }, - "minzoom": 12, + "description": { + "en": "An ambulance station is an area for storage of ambulance vehicles, medical equipment, personal protective equipment, and other medical supplies.", + "ja": "救急ステーションは、救急車、医療機器、個人用保護具、およびその他の医療用品を保管する場所です。", + "fr": "Une station d’ambulance est un lieu où sont stockés les véhicules d’urgence ainsi que de l’équipement médical.", + "de": "Eine Rettungswache ist ein Ort, an dem Rettungsfahrzeuge, medizinische Ausrüstung, persönliche Schutzausrüstung und anderes medizinisches Material untergebracht sind.", + "it": "La stazione delle ambulanze è un’area per lo stoccaggio delle ambulanze, dell’equipaggiamento medico, dei dispositivi di protezione individuale e di altre forniture medicali.", + "hu": "A mentőállomás olyan terület, ahol mentőautókat, orvosi felszereléseket, egyéni védőfelszereléseket és egyéb orvosi felszereléseket tárolnak.", + "ru": "Станция скорой помощи это полигон для хранения транспорта, медицинского оборудования, средств индивидуальной защиты и других медицинских принадлежностей.", + "nl": "Een ambulancestation is een plaats waar ambulances, medisch materiaal, persoonlijk beschermingsmateriaal en aanverwanten worden bewaard.", + "es": "Una estación de ambulancias es una zona para almacenar vehículos de ambulancia, equipamiento médico, equipos de protección personal y otros suministros médicos.", + "da": "En ambulancestation er et område til opbevaring af ambulancekøretøjer, medicinsk udstyr, personlige værnemidler og andre medicinske forsyninger.", + "cs": "Stanice záchranné služby je prostor pro umístění sanitních vozidel, zdravotnického vybavení, osobních ochranných prostředků a dalšího zdravotnického materiálu.", + "ca": "Una estició d'abulàncies és una àrea per a emmagatzemar ambulàncies, equipament mèdic, equips de protecció personal i altres subministraments mèdics.", + "he": "תחנת אמבולנס היא אזור לאחסון רכבי אמבולנס, ציוד רפואי, ציוד מגן אישי וציוד רפואי אחר.", + "pl": "Stacja pogotowia ratunkowego to miejsce przechowywania pojazdów ambulansów, sprzętu medycznego, środków ochrony osobistej i innych artykułów medycznych.", + "pt_BR": "Uma estação de ambulância é uma área de armazenamento de veículos de ambulância, equipamentos médicos, equipamentos de proteção pessoal e outros suprimentos médicos." + }, "source": { "osmTags": { "and": [ @@ -28,6 +44,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Ambulance Station", @@ -48,23 +65,73 @@ "pt_BR": "Estação de Ambulância" } }, - "description": { - "en": "An ambulance station is an area for storage of ambulance vehicles, medical equipment, personal protective equipment, and other medical supplies.", - "ja": "救急ステーションは、救急車、医療機器、個人用保護具、およびその他の医療用品を保管する場所です。", - "fr": "Une station d’ambulance est un lieu où sont stockés les véhicules d’urgence ainsi que de l’équipement médical.", - "de": "Eine Rettungswache ist ein Ort, an dem Rettungsfahrzeuge, medizinische Ausrüstung, persönliche Schutzausrüstung und anderes medizinisches Material untergebracht sind.", - "it": "La stazione delle ambulanze è un’area per lo stoccaggio delle ambulanze, dell’equipaggiamento medico, dei dispositivi di protezione individuale e di altre forniture medicali.", - "hu": "A mentőállomás olyan terület, ahol mentőautókat, orvosi felszereléseket, egyéni védőfelszereléseket és egyéb orvosi felszereléseket tárolnak.", - "ru": "Станция скорой помощи это полигон для хранения транспорта, медицинского оборудования, средств индивидуальной защиты и других медицинских принадлежностей.", - "nl": "Een ambulancestation is een plaats waar ambulances, medisch materiaal, persoonlijk beschermingsmateriaal en aanverwanten worden bewaard.", - "es": "Una estación de ambulancias es una zona para almacenar vehículos de ambulancia, equipamiento médico, equipos de protección personal y otros suministros médicos.", - "da": "En ambulancestation er et område til opbevaring af ambulancekøretøjer, medicinsk udstyr, personlige værnemidler og andre medicinske forsyninger.", - "cs": "Stanice záchranné služby je prostor pro umístění sanitních vozidel, zdravotnického vybavení, osobních ochranných prostředků a dalšího zdravotnického materiálu.", - "ca": "Una estició d'abulàncies és una àrea per a emmagatzemar ambulàncies, equipament mèdic, equips de protecció personal i altres subministraments mèdics.", - "he": "תחנת אמבולנס היא אזור לאחסון רכבי אמבולנס, ציוד רפואי, ציוד מגן אישי וציוד רפואי אחר.", - "pl": "Stacja pogotowia ratunkowego to miejsce przechowywania pojazdów ambulansów, sprzętu medycznego, środków ochrony osobistej i innych artykułów medycznych.", - "pt_BR": "Uma estação de ambulância é uma área de armazenamento de veículos de ambulância, equipamentos médicos, equipamentos de proteção pessoal e outros suprimentos médicos." - }, + "pointRendering": [ + { + "iconSize": "35,35", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/hailhydrant/Twemoji_1f691.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "1" + } + ], + "presets": [ + { + "tags": [ + "emergency=ambulance_station" + ], + "title": { + "en": "an ambulance station", + "ru": "Станция скорой помощи", + "ja": "救急ステーション(消防署)", + "fr": "une station d’ambulances", + "de": "eine Rettungswache", + "it": "una stazione delle ambulanze", + "hu": "Mentőállomás", + "nl": "een ambulancestation", + "zh_Hans": "救护车站", + "id": "Stasiun ambulans", + "es": "una estación de ambulancias", + "nb_NO": "en ambulansestasjon", + "da": "en ambulancestation", + "cs": "stanice rychlé záchranné služby", + "ca": "una estació d'ambulàncies", + "pl": "stacja pogotowia ratunkowego", + "pt_BR": "uma estação de ambulância" + }, + "description": { + "en": "Add an ambulance station to the map", + "ja": "救急ステーション(消防署)をマップに追加する", + "ru": "Добавить станцию скорой помощи на карту", + "fr": "Ajouter une station d’ambulances à la carte", + "de": "Eine Rettungsstation der Karte hinzufügen", + "it": "Aggiungi una stazione delle ambulanza alla mappa", + "hu": "Mentőállomás hozzáadása a térképhez", + "nl": "Voeg een ambulancestation toe aan de kaart", + "zh_Hans": "向地图中添加一个救护车站", + "id": "Tambahkan stasiun ambulans ke peta", + "es": "Añadir una estación de ambulancias al mapa", + "nb_NO": "Legg til en ambulansestasjon på kartet", + "da": "Tilføj en ambulancestation til kortet", + "cs": "Přidat na mapu stanici záchranné služby", + "ca": "Afegeix una estació d'ambulàncies al mapa", + "he": "הוספת תחנת אמבולנס למפה", + "pl": "Dodaj stację pogotowia ratunkowego do mapy", + "pt_BR": "Adicionar uma estação de ambulância ao mapa" + } + } + ], "tagRenderings": [ { "id": "ambulance-name", @@ -363,72 +430,5 @@ ] }, "images" - ], - "presets": [ - { - "tags": [ - "emergency=ambulance_station" - ], - "title": { - "en": "an ambulance station", - "ru": "Станция скорой помощи", - "ja": "救急ステーション(消防署)", - "fr": "une station d’ambulances", - "de": "eine Rettungswache", - "it": "una stazione delle ambulanze", - "hu": "Mentőállomás", - "nl": "een ambulancestation", - "zh_Hans": "救护车站", - "id": "Stasiun ambulans", - "es": "una estación de ambulancias", - "nb_NO": "en ambulansestasjon", - "da": "en ambulancestation", - "cs": "stanice rychlé záchranné služby", - "ca": "una estació d'ambulàncies", - "pl": "stacja pogotowia ratunkowego", - "pt_BR": "uma estação de ambulância" - }, - "description": { - "en": "Add an ambulance station to the map", - "ja": "救急ステーション(消防署)をマップに追加する", - "ru": "Добавить станцию скорой помощи на карту", - "fr": "Ajouter une station d’ambulances à la carte", - "de": "Eine Rettungsstation der Karte hinzufügen", - "it": "Aggiungi una stazione delle ambulanza alla mappa", - "hu": "Mentőállomás hozzáadása a térképhez", - "nl": "Voeg een ambulancestation toe aan de kaart", - "zh_Hans": "向地图中添加一个救护车站", - "id": "Tambahkan stasiun ambulans ke peta", - "es": "Añadir una estación de ambulancias al mapa", - "nb_NO": "Legg til en ambulansestasjon på kartet", - "da": "Tilføj en ambulancestation til kortet", - "cs": "Přidat na mapu stanici záchranné služby", - "ca": "Afegeix una estació d'ambulàncies al mapa", - "he": "הוספת תחנת אמבולנס למפה", - "pl": "Dodaj stację pogotowia ratunkowego do mapy", - "pt_BR": "Adicionar uma estação de ambulância ao mapa" - } - } - ], - "pointRendering": [ - { - "iconSize": "35,35", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/hailhydrant/Twemoji_1f691.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "1" - } ] } diff --git a/assets/layers/animal_shelter/animal_shelter.json b/assets/layers/animal_shelter/animal_shelter.json index ca212bed7..9407643fd 100644 --- a/assets/layers/animal_shelter/animal_shelter.json +++ b/assets/layers/animal_shelter/animal_shelter.json @@ -1,26 +1,27 @@ { "id": "animal_shelter", - "credits": "Pieter Vander Vennet", + "name": { + "en": "Animal shelters" + }, + "description": { + "en": "An animal shelter is a facility where animals in trouble are brought and facility's staff (volunteers or not) feeds them and cares of them, rehabilitating and healing them if necessary. This definition includes kennels for abandoned dogs, catteries for abandoned cats, shelters for other abandoned pets and wildlife recovery centres. " + }, "source": { "osmTags": "amenity=animal_shelter" }, - "presets": [ - { - "title": { - "en": "an animal shelter" - }, - "tags": [ - "amenity=animal_shelter" - ] - } - ], - "lineRendering": [ - { - "width": "1", - "lineCap": "square", - "color": "#b5835a" - } - ], + "title": { + "render": { + "en": "Animal shelter" + }, + "mappings": [ + { + "if": "name~*", + "then": { + "en": "{name}" + } + } + ] + }, "pointRendering": [ { "location": [ @@ -38,19 +39,23 @@ ] } ], - "title": { - "render": { - "en": "Animal shelter" - }, - "mappings": [ - { - "if": "name~*", - "then": { - "en": "{name}" - } - } - ] - }, + "lineRendering": [ + { + "width": "1", + "lineCap": "square", + "color": "#b5835a" + } + ], + "presets": [ + { + "title": { + "en": "an animal shelter" + }, + "tags": [ + "amenity=animal_shelter" + ] + } + ], "tagRenderings": [ "images", "reviews", @@ -112,10 +117,5 @@ ], "deletion": true, "allowMove": true, - "name": { - "en": "Animal shelters" - }, - "description": { - "en": "An animal shelter is a facility where animals in trouble are brought and facility's staff (volunteers or not) feeds them and cares of them, rehabilitating and healing them if necessary. This definition includes kennels for abandoned dogs, catteries for abandoned cats, shelters for other abandoned pets and wildlife recovery centres. " - } + "credits": "Pieter Vander Vennet" } diff --git a/assets/layers/artwork/artwork.json b/assets/layers/artwork/artwork.json index 4fd8c565e..f09ee8d6b 100644 --- a/assets/layers/artwork/artwork.json +++ b/assets/layers/artwork/artwork.json @@ -23,9 +23,36 @@ "eu": "Artelanak", "pt_BR": "Obras de arte" }, + "description": { + "en": "An open map of statues, busts, graffitis and other artwork all over the world", + "nl": "Een vrije kaart met standbeelden, bustes, graffiti en andere kunstwerken van over de hele wereld", + "fr": "Une carte ouverte de statues, bustes, graffitis et autres œuvres d'art de par le monde", + "de": "Eine freie Karte mit Statuen, Büsten, Graffitis und anderen Kunstwerken auf der ganzen Welt", + "it": "Diverse opere d’arte", + "ru": "Разнообразные произведения искусства", + "es": "Un mapa abierto de Estatuas, bustos, Graffitis y otras Obras de Arte en todo el mundo", + "ja": "多様な作品", + "zh_Hant": "顯示全世界的雕像、半身像、塗鴉以及其他類型的藝術品的地圖", + "id": "Peta terbuka patung, grafiti, dan karya seni lainnya di seluruh dunia", + "pt": "Diversas obras de arte", + "hu": "Szobrok, mellszobrok, graffitik és egyéb műalkotások nyílt világtérképe", + "da": "Et åbent kort over statuer, buster, graffitis og andre kunstværker over hele verden", + "ca": "Un mapa obert d'estàtues, busts, grafitis i altres obres d'art del tot el món", + "cs": "Otevřená mapa soch, bust, graffiti a dalších uměleckých děl po celém světě", + "zh_Hans": "一个雕塑、半身像、涂鸦和其他全球艺术品的地图", + "nb_NO": "Statuer, byster, graffiti, og andre kunstverk verden over", + "zgh": "ⵢⴰⵜ ⵜⴽⴰⵕⴹⴰ ⵉⵕⵥⵎⵏ ⵅⴼ ⵉⵙⴼⵔⵉⵙⵏ, ⵉⵖⵔⴰⵙⵏ ⴷ ⵜⵡⵓⵔⵉⵡⵉⵏ ⵜⵉⵏⴰⵥⵓⵕⵉⵏ ⵢⴰⴹⵏⵉⵏ ⴳ ⵓⵎⴰⴹⴰⵍ", + "eu": "Estatuen, bustoen, graffitien eta mundu osoko beste artelan batzuen mapa irekia", + "pl": "Otwarta mapa posągów, popiersi, graffiti i innych dzieł sztuki z całego świata", + "pt_BR": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo" + }, "source": { "osmTags": "tourism=artwork" }, + "calculatedTags": [ + "website:=feat.properties.website ?? feat.properties.url" + ], + "minzoom": 12, "title": { "render": { "en": "Artwork", @@ -83,30 +110,29 @@ } ] }, - "description": { - "en": "An open map of statues, busts, graffitis and other artwork all over the world", - "nl": "Een vrije kaart met standbeelden, bustes, graffiti en andere kunstwerken van over de hele wereld", - "fr": "Une carte ouverte de statues, bustes, graffitis et autres œuvres d'art de par le monde", - "de": "Eine freie Karte mit Statuen, Büsten, Graffitis und anderen Kunstwerken auf der ganzen Welt", - "it": "Diverse opere d’arte", - "ru": "Разнообразные произведения искусства", - "es": "Un mapa abierto de Estatuas, bustos, Graffitis y otras Obras de Arte en todo el mundo", - "ja": "多様な作品", - "zh_Hant": "顯示全世界的雕像、半身像、塗鴉以及其他類型的藝術品的地圖", - "id": "Peta terbuka patung, grafiti, dan karya seni lainnya di seluruh dunia", - "pt": "Diversas obras de arte", - "hu": "Szobrok, mellszobrok, graffitik és egyéb műalkotások nyílt világtérképe", - "da": "Et åbent kort over statuer, buster, graffitis og andre kunstværker over hele verden", - "ca": "Un mapa obert d'estàtues, busts, grafitis i altres obres d'art del tot el món", - "cs": "Otevřená mapa soch, bust, graffiti a dalších uměleckých děl po celém světě", - "zh_Hans": "一个雕塑、半身像、涂鸦和其他全球艺术品的地图", - "nb_NO": "Statuer, byster, graffiti, og andre kunstverk verden over", - "zgh": "ⵢⴰⵜ ⵜⴽⴰⵕⴹⴰ ⵉⵕⵥⵎⵏ ⵅⴼ ⵉⵙⴼⵔⵉⵙⵏ, ⵉⵖⵔⴰⵙⵏ ⴷ ⵜⵡⵓⵔⵉⵡⵉⵏ ⵜⵉⵏⴰⵥⵓⵕⵉⵏ ⵢⴰⴹⵏⵉⵏ ⴳ ⵓⵎⴰⴹⴰⵍ", - "eu": "Estatuen, bustoen, graffitien eta mundu osoko beste artelan batzuen mapa irekia", - "pl": "Otwarta mapa posągów, popiersi, graffiti i innych dzieł sztuki z całego świata", - "pt_BR": "Um mapa aberto de estátuas, bustos, grafites e outras obras de arte em todo o mundo" - }, - "minzoom": 12, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/themes/artwork/artwork.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "lineRendering": [ + { + "color": "#0000ff", + "width": "10" + } + ], "presets": [ { "tags": [ @@ -156,9 +182,6 @@ ] } ], - "calculatedTags": [ - "website:=feat.properties.website ?? feat.properties.url" - ], "tagRenderings": [ "images", { @@ -806,6 +829,9 @@ } } ], + "filter": [ + "has_image" + ], "deletion": { "softDeletionTags": { "and": [ @@ -818,31 +844,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "filter": [ - "has_image" - ], - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/themes/artwork/artwork.svg" - } - ], - "location": [ - "point", - "centroid" - ] - } - ], - "lineRendering": [ - { - "color": "#0000ff", - "width": "10" - } - ] + } } diff --git a/assets/layers/atm/atm.json b/assets/layers/atm/atm.json index 58535d43f..09b0a5e86 100644 --- a/assets/layers/atm/atm.json +++ b/assets/layers/atm/atm.json @@ -26,6 +26,10 @@ "pl": "Bankomaty do wypłacania pieniędzy", "pt_BR": "Caixas eletrônicos para sacar dinheiro" }, + "source": { + "osmTags": "amenity=atm" + }, + "minzoom": 13, "title": { "render": { "en": "ATM", @@ -58,10 +62,24 @@ } ] }, - "source": { - "osmTags": "amenity=atm" - }, - "minzoom": 13, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/atm/atm.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "lineRendering": [], "presets": [ { "tags": [ @@ -500,35 +518,6 @@ } } ], - "allowMove": { - "enableImproveAccuracy": true, - "enableRelocation": false - }, - "deletion": { - "softDeletionTags": { - "and": [ - "disused:amenity=atm", - "amenity=" - ] - } - }, - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/atm/atm.svg" - } - ], - "location": [ - "point", - "centroid" - ] - } - ], "filter": [ "open_now", { @@ -549,5 +538,16 @@ ] } ], - "lineRendering": [] + "deletion": { + "softDeletionTags": { + "and": [ + "disused:amenity=atm", + "amenity=" + ] + } + }, + "allowMove": { + "enableImproveAccuracy": true, + "enableRelocation": false + } } diff --git a/assets/layers/bank/bank.json b/assets/layers/bank/bank.json index 2a9d0f7fc..9658f4b6d 100644 --- a/assets/layers/bank/bank.json +++ b/assets/layers/bank/bank.json @@ -1,15 +1,5 @@ { "id": "bank", - "description": { - "en": "A financial institution to deposit money", - "de": "Ein Finanzinstitut, um Geld einzuzahlen", - "nl": "Een financiële instelling waar je geld kunt", - "ca": "Una institució financera per a dipositar diners", - "cs": "Finanční instituce pro ukládání peněz", - "he": "מוסד פיננסי להפקדת כסף", - "pl": "Instytucja finansowa pozwalająca wpłacić pieniądze", - "pt_BR": "Um instituição financeira para depositar dinheiro" - }, "name": { "en": "Banks", "de": "Banken", @@ -22,6 +12,19 @@ "pl": "Banki", "pt_BR": "Bancos" }, + "description": { + "en": "A financial institution to deposit money", + "de": "Ein Finanzinstitut, um Geld einzuzahlen", + "nl": "Een financiële instelling waar je geld kunt", + "ca": "Una institució financera per a dipositar diners", + "cs": "Finanční instituce pro ukládání peněz", + "he": "מוסד פיננסי להפקדת כסף", + "pl": "Instytucja finansowa pozwalająca wpłacić pieniądze", + "pt_BR": "Um instituição financeira para depositar dinheiro" + }, + "source": { + "osmTags": "amenity=bank" + }, "title": { "render": "Bank", "mappings": [ @@ -31,9 +34,24 @@ } ] }, - "source": { - "osmTags": "amenity=bank" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/bank/bank.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "lineRendering": [], "tagRenderings": [ { "id": "has_atm", @@ -111,23 +129,5 @@ } ] } - ], - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/bank/bank.svg" - } - ], - "location": [ - "point", - "centroid" - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/barrier/barrier.json b/assets/layers/barrier/barrier.json index 397c896d0..a6a19de20 100644 --- a/assets/layers/barrier/barrier.json +++ b/assets/layers/barrier/barrier.json @@ -90,6 +90,23 @@ } ] }, + "pointRendering": [ + { + "marker": [ + { + "icon": "./assets/layers/barrier/barrier.svg" + } + ], + "location": [ + "point" + ] + } + ], + "lineRendering": [ + { + "width": "5" + } + ], "presets": [ { "title": { @@ -634,22 +651,5 @@ "fixme=" ] } - }, - "pointRendering": [ - { - "marker": [ - { - "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 e0b89cbb0..0c6906799 100644 --- a/assets/layers/bench/bench.json +++ b/assets/layers/bench/bench.json @@ -24,10 +24,22 @@ "he": "ספסלים", "eu": "Bankuak" }, - "minzoom": 14, + "description": { + "nl": "Een zitbank is een houten, metalen, stenen, … oppervlak waar een mens kan zitten. Deze laag toont ze en stelt er enkele vragen over.", + "en": "A bench is a wooden, metal, stone, … surface where a human can sit. This layers visualises them and asks a few questions about them.", + "fr": "Un banc est une surface en bois, métal, pierre… sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", + "de": "Diese Karte stellt Sitzbänke aus Holz, Metall, Stein, … dar und stellt ein paar Fragen, um weitere Informationen zu ergänzen.", + "es": "Un banco es una superficie de madera, metal, piedra, ... donde un humano se puede sentar. Estas capas los visualizan y hacen algunas preguntas sobre ellos.", + "da": "En bænk er en træ-, metal-, sten-, ... overflade, hvor et menneske kan sidde. Dette lag visualiserer dem og stiller et par spørgsmål om dem.", + "cs": "Lavička je dřevěná, kovová, kamenná, ... plocha, na které může člověk sedět. Tato vrstva je vizualizuje a klade si o nich několik otázek.", + "ca": "Un banc és una superfície de madera, metall, pedra, … on un humà s’hi pot sentar. Aquesta capa els mostra i fa algunes preguntes sobre ells.", + "he": "ספסל הוא משטח עץ, מתכת, אבן, ... בו אדם יכול לשבת. השכבות הללו מדמות אותן ושואלות עליהן מספר שאלות.", + "pt_BR": "Um banco é uma superfície de madeira, metal, pedra, etc., onde uma pessoa pode se sentar. Essa camada os visualiza e faz algumas perguntas sobre eles." + }, "source": { "osmTags": "amenity=bench" }, + "minzoom": 14, "title": { "render": { "en": "Bench", @@ -54,18 +66,62 @@ "eu": "Bankua" } }, - "description": { - "nl": "Een zitbank is een houten, metalen, stenen, … oppervlak waar een mens kan zitten. Deze laag toont ze en stelt er enkele vragen over.", - "en": "A bench is a wooden, metal, stone, … surface where a human can sit. This layers visualises them and asks a few questions about them.", - "fr": "Un banc est une surface en bois, métal, pierre… sur laquelle un humain peut s'asseoir. Cette couche permet de les visualiser et pose des questions à leur sujet.", - "de": "Diese Karte stellt Sitzbänke aus Holz, Metall, Stein, … dar und stellt ein paar Fragen, um weitere Informationen zu ergänzen.", - "es": "Un banco es una superficie de madera, metal, piedra, ... donde un humano se puede sentar. Estas capas los visualizan y hacen algunas preguntas sobre ellos.", - "da": "En bænk er en træ-, metal-, sten-, ... overflade, hvor et menneske kan sidde. Dette lag visualiserer dem og stiller et par spørgsmål om dem.", - "cs": "Lavička je dřevěná, kovová, kamenná, ... plocha, na které může člověk sedět. Tato vrstva je vizualizuje a klade si o nich několik otázek.", - "ca": "Un banc és una superfície de madera, metall, pedra, … on un humà s’hi pot sentar. Aquesta capa els mostra i fa algunes preguntes sobre ells.", - "he": "ספסל הוא משטח עץ, מתכת, אבן, ... בו אדם יכול לשבת. השכבות הללו מדמות אותן ושואלות עליהן מספר שאלות.", - "pt_BR": "Um banco é uma superfície de madeira, metal, pedra, etc., onde uma pessoa pode se sentar. Essa camada os visualiza e faz algumas perguntas sobre eles." - }, + "pointRendering": [ + { + "iconSize": "35,35", + "iconBadges": [ + { + "if": "tourism=artwork", + "then": "circle:white;./assets/layers/artwork/artwork.svg" + } + ], + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "#99bd54" + }, + { + "icon": "./assets/layers/bench/bench.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=bench" + ], + "title": { + "en": "a bench", + "de": "eine Sitzbank", + "fr": "une banc", + "nl": "een zitbank", + "es": "una banco", + "it": "una panchina", + "ru": "cкамейка", + "id": "bangku", + "zh_Hans": "长椅", + "nb_NO": "en benk", + "zh_Hant": "長椅", + "pt_BR": "um banco", + "fi": "penkki", + "pl": "Ławka", + "pt": "uma banco", + "ca": "un banc", + "da": "en bænk", + "cs": "lavička" + }, + "presiceInput": { + "preferredBackground": "photo" + } + } + ], "tagRenderings": [ "images", { @@ -1030,49 +1086,6 @@ } } ], - "presets": [ - { - "tags": [ - "amenity=bench" - ], - "title": { - "en": "a bench", - "de": "eine Sitzbank", - "fr": "une banc", - "nl": "een zitbank", - "es": "una banco", - "it": "una panchina", - "ru": "cкамейка", - "id": "bangku", - "zh_Hans": "长椅", - "nb_NO": "en benk", - "zh_Hant": "長椅", - "pt_BR": "um banco", - "fi": "penkki", - "pl": "Ławka", - "pt": "uma banco", - "ca": "un banc", - "da": "en bænk", - "cs": "lavička" - }, - "presiceInput": { - "preferredBackground": "photo" - } - } - ], - "deletion": { - "softDeletionTags": { - "and": [ - "disused:amenity=bench", - "amenity=" - ] - }, - "neededChangesets": 1 - }, - "allowMove": { - "enableRelocation": false, - "enableImproveAccuraccy": true - }, "filter": [ { "id": "bench_is_memorial", @@ -1145,30 +1158,17 @@ }, "has_image" ], - "pointRendering": [ - { - "iconSize": "35,35", - "iconBadges": [ - { - "if": "tourism=artwork", - "then": "circle:white;./assets/layers/artwork/artwork.svg" - } - ], - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "#99bd54" - }, - { - "icon": "./assets/layers/bench/bench.svg" - } + "deletion": { + "softDeletionTags": { + "and": [ + "disused:amenity=bench", + "amenity=" ] - } - ], - "lineRendering": [] + }, + "neededChangesets": 1 + }, + "allowMove": { + "enableRelocation": false, + "enableImproveAccuraccy": true + } } diff --git a/assets/layers/bench_at_pt/bench_at_pt.json b/assets/layers/bench_at_pt/bench_at_pt.json index 96b011372..1c9f8bc4b 100644 --- a/assets/layers/bench_at_pt/bench_at_pt.json +++ b/assets/layers/bench_at_pt/bench_at_pt.json @@ -19,7 +19,19 @@ "cs": "Lavičky na zastávkách veřejné dopravy", "ca": "Bancs en una parada de transport públic" }, - "minzoom": 14, + "description": { + "en": "A layer showing all public-transport-stops which do have a bench", + "es": "Una capa que muestra todas las paradas de transporte público que tienen bancos", + "nl": "Een laag die stopplaatsen van openbaar vervoer toont waar er een zitbank is", + "fr": "Une couche montrant tous les arrêts de transports publics qui ont un banc", + "de": "Eine Ebene mit allen Haltestellen des öffentlichen Nahverkehrs, die über eine Sitzbank verfügen", + "da": "Et lag, der viser alle offentlige stoppesteder, som har en bænk", + "cs": "Vrstva zobrazující všechny zastávky veřejné dopravy, které mají lavičku", + "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", + "pt_BR": "Uma camada mostrando todas as paradas de transporte público que têm um banco" + }, "source": { "osmTags": { "and": [ @@ -33,6 +45,7 @@ ] } }, + "minzoom": 14, "title": { "render": { "en": "Bench", @@ -114,6 +127,30 @@ } ] }, + "pointRendering": [ + { + "iconSize": "35,35", + "location": [ + "point" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/themes/benches/bench_public_transport.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], "tagRenderings": [ "images", { @@ -250,42 +287,5 @@ "bench=no" ] } - }, - "description": { - "en": "A layer showing all public-transport-stops which do have a bench", - "es": "Una capa que muestra todas las paradas de transporte público que tienen bancos", - "nl": "Een laag die stopplaatsen van openbaar vervoer toont waar er een zitbank is", - "fr": "Une couche montrant tous les arrêts de transports publics qui ont un banc", - "de": "Eine Ebene mit allen Haltestellen des öffentlichen Nahverkehrs, die über eine Sitzbank verfügen", - "da": "Et lag, der viser alle offentlige stoppesteder, som har en bænk", - "cs": "Vrstva zobrazující všechny zastávky veřejné dopravy, které mají lavičku", - "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", - "pt_BR": "Uma camada mostrando todas as paradas de transporte público que têm um banco" - }, - "pointRendering": [ - { - "iconSize": "35,35", - "location": [ - "point" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/themes/benches/bench_public_transport.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } - ] + } } diff --git a/assets/layers/bicycle_library/bicycle_library.json b/assets/layers/bicycle_library/bicycle_library.json index 217c7e67f..014e037e7 100644 --- a/assets/layers/bicycle_library/bicycle_library.json +++ b/assets/layers/bicycle_library/bicycle_library.json @@ -15,10 +15,27 @@ "da": "Cykel bibliotek", "cs": "Půjčovna kol" }, - "minzoom": 8, + "description": { + "en": "A facility where bicycles can be lent for longer period of times", + "nl": "Een plaats waar men voor langere tijd een fiets kan lenen", + "fr": "Un lieu où des vélos peuvent être empruntés pour un temps plus long", + "hu": "Létesítmény, ahonnan kerékpár kölcsönözhető hosszabb időre", + "it": "Una struttura dove le biciclette possono essere prestate per periodi di tempo più lunghi", + "de": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können", + "ru": "Учреждение, где велосипед может быть арендован на более длительный срок", + "zh_Hant": "能夠長期租用單車的設施", + "pt_BR": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", + "pl": "Obiekt, w którym rowery można wypożyczyć na dłuższy okres", + "pt": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", + "es": "Una instalación donde se pueden alquilar bicicletas durante largos periodos de tiempo", + "da": "En facilitet, hvor cykler kan lånes i længere perioder", + "cs": "Zařízení, kde si lze půjčit jízdní kola na delší dobu", + "ca": "Una instal·lació on es poden cedir bicicletes per llargs períodes de temps" + }, "source": { "osmTags": "amenity=bicycle_library" }, + "minzoom": 8, "title": { "render": { "en": "Bicycle library", @@ -54,23 +71,79 @@ }, "icons.defaults" ], - "description": { - "en": "A facility where bicycles can be lent for longer period of times", - "nl": "Een plaats waar men voor langere tijd een fiets kan lenen", - "fr": "Un lieu où des vélos peuvent être empruntés pour un temps plus long", - "hu": "Létesítmény, ahonnan kerékpár kölcsönözhető hosszabb időre", - "it": "Una struttura dove le biciclette possono essere prestate per periodi di tempo più lunghi", - "de": "Eine Einrichtung, in der Fahrräder für längere Zeit geliehen werden können", - "ru": "Учреждение, где велосипед может быть арендован на более длительный срок", - "zh_Hant": "能夠長期租用單車的設施", - "pt_BR": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", - "pl": "Obiekt, w którym rowery można wypożyczyć na dłuższy okres", - "pt": "Uma instalação onde as bicicletas podem ser emprestadas por períodos mais longos", - "es": "Una instalación donde se pueden alquilar bicicletas durante largos periodos de tiempo", - "da": "En facilitet, hvor cykler kan lånes i længere perioder", - "cs": "Zařízení, kde si lze půjčit jízdní kola na delší dobu", - "ca": "Una instal·lació on es poden cedir bicicletes per llargs períodes de temps" - }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + }, + { + "if": "service:bicycle:pump=yes", + "then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg" + } + ], + "iconSize": "50,50", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "pin", + "color": "#22ff55" + }, + { + "icon": "./assets/layers/bicycle_library/bicycle_library.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#c00", + "width": "1" + } + ], + "presets": [ + { + "title": { + "nl": "een fietsbibliotheek", + "en": "a bicycle library", + "ru": "Велосипедная библиотека", + "zh_Hant": "自行車圖書館 ( Fietsbibliotheek)", + "it": "una bici in prestito", + "fr": "une vélothèque", + "pt_BR": "uma biblioteca de bicicletas", + "de": "eine Fahrradbibliothek", + "pt": "uma biblioteca de bicicletas", + "eo": "Fietsbibliotheek", + "da": "et cykelbibliotek", + "es": "una biblioteca de bicicletas", + "cs": "půjčovna kol", + "ca": "una biblioteca de bicicletes" + }, + "tags": [ + "amenity=bicycle_library" + ], + "description": { + "nl": "Een fietsbieb heeft een collectie fietsen die leden mogen lenen", + "en": "A bicycle library has a collection of bikes which can be lent", + "fr": "Une vélothèque a une flotte de vélos qui peuvent être empruntés", + "it": "Una ciclo-teca o «bici in prestito» ha una collezione di bici che possno essere prestate", + "ru": "В велосипедной библиотеке есть велосипеды для аренды", + "zh_Hant": "單車圖書館有一大批單車供人租借", + "de": "Eine Fahrradbibliothek verfügt über eine Sammlung von Fahrrädern, die ausgeliehen werden können", + "es": "Una biblioteca de bicicletas tiene una colección de bicicletas que se pueden prestar", + "da": "Et cykelbibliotek har en samling cykler, som kan lånes", + "cs": "Cyklistická půjčovna má k dispozici sbírku kol, která lze zapůjčit", + "ca": "Una biblioteca de bicicletes té una col·lecció de bicicletes que es poden cedir", + "pt": "Uma \"biblioteca de bicicletas\" tem uma coleção de bicicletas que podem ser emprestadas", + "pt_BR": "Uma biblioteca de bicicletas tem uma coleção de bicicletas que podem ser emprestadas" + } + } + ], "tagRenderings": [ "images", { @@ -288,78 +361,5 @@ }, "description" ], - "presets": [ - { - "title": { - "nl": "een fietsbibliotheek", - "en": "a bicycle library", - "ru": "Велосипедная библиотека", - "zh_Hant": "自行車圖書館 ( Fietsbibliotheek)", - "it": "una bici in prestito", - "fr": "une vélothèque", - "pt_BR": "uma biblioteca de bicicletas", - "de": "eine Fahrradbibliothek", - "pt": "uma biblioteca de bicicletas", - "eo": "Fietsbibliotheek", - "da": "et cykelbibliotek", - "es": "una biblioteca de bicicletas", - "cs": "půjčovna kol", - "ca": "una biblioteca de bicicletes" - }, - "tags": [ - "amenity=bicycle_library" - ], - "description": { - "nl": "Een fietsbieb heeft een collectie fietsen die leden mogen lenen", - "en": "A bicycle library has a collection of bikes which can be lent", - "fr": "Une vélothèque a une flotte de vélos qui peuvent être empruntés", - "it": "Una ciclo-teca o «bici in prestito» ha una collezione di bici che possno essere prestate", - "ru": "В велосипедной библиотеке есть велосипеды для аренды", - "zh_Hant": "單車圖書館有一大批單車供人租借", - "de": "Eine Fahrradbibliothek verfügt über eine Sammlung von Fahrrädern, die ausgeliehen werden können", - "es": "Una biblioteca de bicicletas tiene una colección de bicicletas que se pueden prestar", - "da": "Et cykelbibliotek har en samling cykler, som kan lånes", - "cs": "Cyklistická půjčovna má k dispozici sbírku kol, která lze zapůjčit", - "ca": "Una biblioteca de bicicletes té una col·lecció de bicicletes que es poden cedir", - "pt": "Uma \"biblioteca de bicicletas\" tem uma coleção de bicicletas que podem ser emprestadas", - "pt_BR": "Uma biblioteca de bicicletas tem uma coleção de bicicletas que podem ser emprestadas" - } - } - ], - "deletion": true, - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - }, - { - "if": "service:bicycle:pump=yes", - "then": "circle:#e2783d;./assets/layers/bike_repair_station/pump.svg" - } - ], - "iconSize": "50,50", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "pin", - "color": "#22ff55" - }, - { - "icon": "./assets/layers/bicycle_library/bicycle_library.svg" - } - ] - } - ], - "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 bce5741ac..ed3709a9f 100644 --- a/assets/layers/bicycle_rental/bicycle_rental.json +++ b/assets/layers/bicycle_rental/bicycle_rental.json @@ -11,6 +11,18 @@ "ca": "Lloguer de bicicletes", "pt_BR": "Aluguel de bicicletas" }, + "description": { + "en": "Bicycle rental stations", + "nl": "Fietsverhuurstations", + "fr": "Stations de location de vélo", + "de": "Fahrradverleihstationen", + "es": "Estaciones de alquiler de bicicletas", + "da": "Stationer til udlejning af cykler", + "cs": "Půjčovny jízdních kol", + "ca": "Estacions de lloguer de bicicletes", + "pl": "Stacje wypożyczania rowerów", + "pt_BR": "Estações de aluguel de bicicletas" + }, "source": { "osmTags": { "and": [ @@ -62,18 +74,73 @@ } ] }, - "description": { - "en": "Bicycle rental stations", - "nl": "Fietsverhuurstations", - "fr": "Stations de location de vélo", - "de": "Fahrradverleihstationen", - "es": "Estaciones de alquiler de bicicletas", - "da": "Stationer til udlejning af cykler", - "cs": "Půjčovny jízdních kol", - "ca": "Estacions de lloguer de bicicletes", - "pl": "Stacje wypożyczania rowerów", - "pt_BR": "Estações de aluguel de bicicletas" - }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/bicycle_rental/logo.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#3333aa88", + "width": "2" + } + ], + "presets": [ + { + "title": { + "en": "a bicycle rental shop", + "nl": "een fietsverhuurzaak", + "fr": "un magasin de location de vélos", + "de": "ein Geschäft mit Fahrradverleih", + "es": "una tienda de alquiler de bicicletas", + "da": "en cykeludlejningsforretning", + "cs": "půjčovna jízdních kol", + "ca": "una botiga de lloguer de bicicletes", + "pt_BR": "uma loja de aluguel de bicicletas" + }, + "tags": [ + "amenity=bicycle_rental", + "bicycle_rental=shop" + ], + "description": { + "en": "A manned shop which focuses on bicycle rental", + "nl": "Een bemande winkel die focust op fietsverhuur", + "fr": "Un magasin qui priorise la location de vélos", + "de": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert", + "da": "En bemandet butik, der fokuserer på cykeludlejning", + "es": "Una tienda atendida que se centra en el alquiler de bicicletas", + "cs": "Obsluhovaný obchod zaměřený na půjčování jízdních kol", + "ca": "Una botiga atesa que es centra en el lloguer de bicicletes", + "pt_BR": "Uma loja com atendimento pessoal que foca no aluguel de bicicletas" + } + }, + { + "title": { + "en": "a bicycle rental", + "nl": "een fietsverhuur", + "de": "eine Fahrradleihstation", + "da": "cykeludlejning", + "es": "un alquiler de bicicletas", + "fr": "une location de vélos", + "cs": "půjčovna kol", + "ca": "un lloguer de bicicletes", + "pt_BR": "um aluguel de bicicletas" + }, + "tags": [ + "amenity=bicycle_rental" + ] + } + ], "tagRenderings": [ "images", { @@ -524,56 +591,6 @@ ] } ], - "presets": [ - { - "title": { - "en": "a bicycle rental shop", - "nl": "een fietsverhuurzaak", - "fr": "un magasin de location de vélos", - "de": "ein Geschäft mit Fahrradverleih", - "es": "una tienda de alquiler de bicicletas", - "da": "en cykeludlejningsforretning", - "cs": "půjčovna jízdních kol", - "ca": "una botiga de lloguer de bicicletes", - "pt_BR": "uma loja de aluguel de bicicletas" - }, - "tags": [ - "amenity=bicycle_rental", - "bicycle_rental=shop" - ], - "description": { - "en": "A manned shop which focuses on bicycle rental", - "nl": "Een bemande winkel die focust op fietsverhuur", - "fr": "Un magasin qui priorise la location de vélos", - "de": "Ein Geschäft, das sich auf den Fahrradverleih konzentriert", - "da": "En bemandet butik, der fokuserer på cykeludlejning", - "es": "Una tienda atendida que se centra en el alquiler de bicicletas", - "cs": "Obsluhovaný obchod zaměřený na půjčování jízdních kol", - "ca": "Una botiga atesa que es centra en el lloguer de bicicletes", - "pt_BR": "Uma loja com atendimento pessoal que foca no aluguel de bicicletas" - } - }, - { - "title": { - "en": "a bicycle rental", - "nl": "een fietsverhuur", - "de": "eine Fahrradleihstation", - "da": "cykeludlejning", - "es": "un alquiler de bicicletas", - "fr": "une location de vélos", - "cs": "půjčovna kol", - "ca": "un lloguer de bicicletes", - "pt_BR": "um aluguel de bicicletas" - }, - "tags": [ - "amenity=bicycle_rental" - ] - } - ], - "allowMove": { - "enableImproveAccuracy": true, - "enableRelocation": true - }, "deletion": { "softDeletionTags": { "and": [ @@ -620,25 +637,8 @@ } ] }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/bicycle_rental/logo.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#3333aa88", - "width": "2" - } - ] + "allowMove": { + "enableImproveAccuracy": true, + "enableRelocation": true + } } 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 f91614e2f..559b314dc 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 @@ -14,6 +14,25 @@ "cs": "Automat na cyklistické duše", "ca": "Màquina expenedora de tubs de bicicleta" }, + "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, ...)", + "pt_BR": "Uma camada que mostra máquinas de venda de câmaras de ar de bicicleta (sejam máquinas de venda de câmaras de ar de bicicleta específicas ou máquinas de venda clássicas com câmaras de ar de bicicleta e opcionalmente objetos relacionados a bicicletas, como luzes, luvas, travas, ...)" + }, + "source": { + "osmTags": { + "and": [ + "amenity=vending_machine", + "vending~.*bicycle_tube.*" + ] + } + }, + "minzoom": 13, "title": { "render": { "en": "Bicycle tube vending machine", @@ -50,15 +69,41 @@ }, "icons.defaults" ], - "source": { - "osmTags": { - "and": [ - "amenity=vending_machine", - "vending~.*bicycle_tube.*" + "pointRendering": [ + { + "iconBadges": [ + { + "if": { + "or": [ + "operational_status=broken", + "operational_status=closed" + ] + }, + "then": "close:#c33" + } + ], + "iconSize": "50,50", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "pin", + "color": "#ffffff" + }, + { + "icon": "./assets/layers/bicycle_tube_vending_machine/pinIcon.svg" + } ] } - }, - "minzoom": 13, + ], + "lineRendering": [ + { + "color": "#6bc4f7" + } + ], "presets": [ { "title": { @@ -383,50 +428,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "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, ...)", - "pt_BR": "Uma camada que mostra máquinas de venda de câmaras de ar de bicicleta (sejam máquinas de venda de câmaras de ar de bicicleta específicas ou máquinas de venda clássicas com câmaras de ar de bicicleta e opcionalmente objetos relacionados a bicicletas, como luzes, luvas, travas, ...)" - }, - "pointRendering": [ - { - "iconBadges": [ - { - "if": { - "or": [ - "operational_status=broken", - "operational_status=closed" - ] - }, - "then": "close:#c33" - } - ], - "iconSize": "50,50", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "pin", - "color": "#ffffff" - }, - { - "icon": "./assets/layers/bicycle_tube_vending_machine/pinIcon.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#6bc4f7" - } - ] + } } diff --git a/assets/layers/bike_cafe/bike_cafe.json b/assets/layers/bike_cafe/bike_cafe.json index e14e688e0..d87b439d6 100644 --- a/assets/layers/bike_cafe/bike_cafe.json +++ b/assets/layers/bike_cafe/bike_cafe.json @@ -16,7 +16,16 @@ "da": "Cykelcafé", "cs": "Cyklokavárna" }, - "minzoom": 13, + "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.", + "de": "Ein Fahrradcafé ist ein Café, das auf Radfahrer ausgerichtet ist, zum Beispiel mit Dienstleistungen wie einer Pumpe, mit viel fahrradbezogener Dekoration, …", + "da": "En cykelcafé er en café rettet mod cyklister, for eksempel med tjenester som en pumpe, med masser af cykelrelateret dekoration, o.s.v", + "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, …", + "pt_BR": "Um café para ciclistas é um café direcionado aos ciclistas, por exemplo, com serviços como uma bomba de ar, muita decoração relacionada a bicicletas, …" + }, "source": { "osmTags": { "and": [ @@ -41,6 +50,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "en": "Bike cafe", @@ -80,6 +90,55 @@ } ] }, + "pointRendering": [ + { + "iconSize": "50,50", + "anchor": "bottom", + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "pin", + "color": "#684c2b" + }, + { + "icon": "./assets/layers/bike_cafe/bike_cafe.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#694E2D", + "width": "2" + } + ], + "presets": [ + { + "title": { + "en": "a bike cafe", + "nl": "een fietscafé", + "fr": "une café vélo", + "gl": "Café de ciclistas", + "de": "ein Fahrrad-Café", + "it": "un cafè per ciclisti", + "zh_Hans": "自行车咖啡", + "zh_Hant": "單車咖啡廳", + "ru": "Велосипедное кафе", + "pt_BR": "uma café de bicicleta", + "pt": "uma café de bicicleta", + "da": "en cykelcafé", + "cs": "kavárna pro cyklisty", + "ca": "un cafè ciclista" + }, + "tags": [ + "amenity=pub", + "pub=cycling" + ] + } + ], "tagRenderings": [ "images", { @@ -319,64 +378,5 @@ } } ], - "presets": [ - { - "title": { - "en": "a bike cafe", - "nl": "een fietscafé", - "fr": "une café vélo", - "gl": "Café de ciclistas", - "de": "ein Fahrrad-Café", - "it": "un cafè per ciclisti", - "zh_Hans": "自行车咖啡", - "zh_Hant": "單車咖啡廳", - "ru": "Велосипедное кафе", - "pt_BR": "uma café de bicicleta", - "pt": "uma café de bicicleta", - "da": "en cykelcafé", - "cs": "kavárna pro cyklisty", - "ca": "un cafè ciclista" - }, - "tags": [ - "amenity=pub", - "pub=cycling" - ] - } - ], - "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.", - "de": "Ein Fahrradcafé ist ein Café, das auf Radfahrer ausgerichtet ist, zum Beispiel mit Dienstleistungen wie einer Pumpe, mit viel fahrradbezogener Dekoration, …", - "da": "En cykelcafé er en café rettet mod cyklister, for eksempel med tjenester som en pumpe, med masser af cykelrelateret dekoration, o.s.v", - "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, …", - "pt_BR": "Um café para ciclistas é um café direcionado aos ciclistas, por exemplo, com serviços como uma bomba de ar, muita decoração relacionada a bicicletas, …" - }, - "pointRendering": [ - { - "iconSize": "50,50", - "anchor": "bottom", - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "pin", - "color": "#684c2b" - }, - { - "icon": "./assets/layers/bike_cafe/bike_cafe.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#694E2D", - "width": "2" - } - ], "deletion": true } diff --git a/assets/layers/bike_cleaning/bike_cleaning.json b/assets/layers/bike_cleaning/bike_cleaning.json index 5ff581475..af9737757 100644 --- a/assets/layers/bike_cleaning/bike_cleaning.json +++ b/assets/layers/bike_cleaning/bike_cleaning.json @@ -15,6 +15,28 @@ "cs": "Služba mytí jízdních kol", "ca": "Servei de neteja de bicicletes" }, + "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", + "pt_BR": "Uma camada que mostra instalações onde é possível limpar a sua bicicleta" + }, + "source": { + "osmTags": { + "or": [ + "service:bicycle:cleaning=yes", + "service:bicycle:cleaning=diy", + "amenity=bicycle_wash", + "amenity=bike_wash" + ] + } + }, + "minzoom": 13, "title": { "render": { "en": "Bike cleaning service", @@ -51,17 +73,37 @@ } ] }, - "source": { - "osmTags": { - "or": [ - "service:bicycle:cleaning=yes", - "service:bicycle:cleaning=diy", - "amenity=bicycle_wash", - "amenity=bike_wash" + "pointRendering": [ + { + "iconBadges": [ + { + "if": { + "and": [ + "service:bicycle:cleaning~*", + "amenity!=bike_wash", + "amenity!=bicycle_wash" + ] + }, + "then": { + "render": "./assets/layers/bike_cleaning/bike_cleaning_icon.svg", + "roaming": true + } + } + ], + "iconSize": "50,50", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "./assets/layers/bike_cleaning/bike_cleaning.svg" + } ] } - }, - "minzoom": 13, + ], + "lineRendering": [], "presets": [ { "title": { @@ -244,47 +286,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "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", - "pt_BR": "Uma camada que mostra instalações onde é possível limpar a sua bicicleta" - }, - "pointRendering": [ - { - "iconBadges": [ - { - "if": { - "and": [ - "service:bicycle:cleaning~*", - "amenity!=bike_wash", - "amenity!=bicycle_wash" - ] - }, - "then": { - "render": "./assets/layers/bike_cleaning/bike_cleaning_icon.svg", - "roaming": true - } - } - ], - "iconSize": "50,50", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "./assets/layers/bike_cleaning/bike_cleaning.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json index 44607c8dc..47f32b3d3 100644 --- a/assets/layers/bike_parking/bike_parking.json +++ b/assets/layers/bike_parking/bike_parking.json @@ -18,7 +18,18 @@ "da": "Cykelparkering", "cs": "Parkování kol" }, - "minzoom": 17, + "description": { + "en": "A layer showing where you can park your bike", + "nl": "Een laag die toont waar je je fiets kunt parkeren", + "de": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können", + "es": "Una capa que muestra donde puedes aparcar tu bici", + "da": "Et lag, der viser, hvor man kan parkere sin cykel", + "fr": "Une couche montrant où stationner son vélo", + "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", + "pt_BR": "Uma camada mostrado onde você pode estacionar sua bicicleta" + }, "source": { "osmTags": { "and": [ @@ -26,6 +37,52 @@ ] } }, + "minzoom": 17, + "title": { + "render": { + "en": "Bike parking", + "nl": "Fietsparking", + "fr": "Parking à vélo", + "gl": "Aparcadoiro de bicicletas", + "de": "Fahrrad-Parkplätze", + "hu": "Kerékpártároló", + "it": "Parcheggio bici", + "zh_Hant": "單車停車場", + "ru": "Велосипедная парковка", + "pl": "Parking dla rowerów", + "pt_BR": "Estacionamento de bicicletas", + "pt": "Estacionamento de bicicletas", + "ca": "Aparcament per a bicicletes", + "es": "Aparcamiento de bicis", + "da": "Cykelparkering", + "cs": "Parkování kol" + } + }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "pin", + "color": "#5473de" + }, + { + "icon": "./assets/layers/bike_parking/parking.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "1" + } + ], "presets": [ { "title": { @@ -51,26 +108,6 @@ ] } ], - "title": { - "render": { - "en": "Bike parking", - "nl": "Fietsparking", - "fr": "Parking à vélo", - "gl": "Aparcadoiro de bicicletas", - "de": "Fahrrad-Parkplätze", - "hu": "Kerékpártároló", - "it": "Parcheggio bici", - "zh_Hant": "單車停車場", - "ru": "Велосипедная парковка", - "pl": "Parking dla rowerów", - "pt_BR": "Estacionamento de bicicletas", - "pt": "Estacionamento de bicicletas", - "ca": "Aparcament per a bicicletes", - "es": "Aparcamiento de bicis", - "da": "Cykelparkering", - "cs": "Parkování kol" - } - }, "tagRenderings": [ "images", { @@ -711,42 +748,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuracy": true - }, - "description": { - "en": "A layer showing where you can park your bike", - "nl": "Een laag die toont waar je je fiets kunt parkeren", - "de": "Eine Ebene, die anzeigt, wo Sie Ihr Fahrrad abstellen können", - "es": "Una capa que muestra donde puedes aparcar tu bici", - "da": "Et lag, der viser, hvor man kan parkere sin cykel", - "fr": "Une couche montrant où stationner son vélo", - "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", - "pt_BR": "Uma camada mostrado onde você pode estacionar sua bicicleta" - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "pin", - "color": "#5473de" - }, - { - "icon": "./assets/layers/bike_parking/parking.svg" - } - ] - } - ], - "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 f6583cb2d..52c89c353 100644 --- a/assets/layers/bike_repair_station/bike_repair_station.json +++ b/assets/layers/bike_repair_station/bike_repair_station.json @@ -14,7 +14,17 @@ "cs": "Vzduchový kompresor a opravy jízdních kol", "ca": "Manxa i reparació de bicicletes" }, - "minzoom": 13, + "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", + "pt_BR": "Uma camada que mostra bombas de ar para bicicletas e suportes com ferramentas de reparo para bicicletas" + }, "source": { "osmTags": { "and": [ @@ -22,6 +32,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "en": "Bike station (pump & repair)", @@ -170,6 +181,243 @@ }, "icons.defaults" ], + "pointRendering": [ + { + "marker": [ + { + "icon": "pin", + "color": { + "render": "#88d32c", + "mappings": [ + { + "if": { + "and": [ + "service:bicycle:pump=yes", + "service:bicycle:tools=yes", + "service:bicycle:pump:operational_status=broken" + ] + }, + "then": "#88d32c" + }, + { + "if": { + "and": [ + "service:bicycle:pump=yes", + "service:bicycle:tools=yes" + ] + }, + "then": "#30abf0" + }, + { + "if": { + "and": [ + "service:bicycle:pump:operational_status=broken", + "service:bicycle:tools=no" + ] + }, + "then": "black" + }, + { + "if": { + "and": [ + "service:bicycle:pump=yes", + { + "or": [ + "service:bicycle:tools=no", + "service:bicycle:tools=" + ] + } + ] + }, + "then": "#e1783a" + } + ] + } + }, + { + "icon": { + "render": "./assets/layers/bike_repair_station/repair_station.svg", + "mappings": [ + { + "if": { + "and": [ + "service:bicycle:pump=yes", + "service:bicycle:tools=yes", + "service:bicycle:pump:operational_status=broken" + ] + }, + "then": "./assets/layers/bike_repair_station/repair_station_broken_pump.svg" + }, + { + "if": { + "and": [ + "service:bicycle:pump=yes", + "service:bicycle:tools=yes" + ] + }, + "then": "./assets/layers/bike_repair_station/repair_station_pump.svg" + }, + { + "if": { + "and": [ + "service:bicycle:pump:operational_status=broken", + "service:bicycle:tools=no" + ] + }, + "then": "./assets/layers/bike_repair_station/broken_pump.svg" + }, + { + "if": { + "and": [ + "service:bicycle:pump=yes", + { + "or": [ + "service:bicycle:tools=no", + "service:bicycle:tools=" + ] + } + ] + }, + "then": "./assets/layers/bike_repair_station/pump.svg" + } + ] + } + } + ], + "iconBadges": [ + { + "if": "operator=De Fietsambassade Gent", + "then": "./assets/themes/cyclofix/fietsambassade_gent_logo_small.svg" + }, + { + "if": { + "or": [ + "access=no", + "access=private" + ] + }, + "then": "invalid" + } + ], + "iconSize": "50,50", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom" + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a bike pump", + "nl": "een fietspomp", + "fr": "une pompe à vélo", + "gl": "bomba de ar", + "de": "eine Fahrradpumpe", + "it": "una pompa per bici", + "ru": "bелосипедный насос", + "fi": "pyöräpumppu", + "pl": "pompka do roweru", + "pt_BR": "uma bomba de bicicleta", + "es": "una bomba de bicicletas", + "da": "en cykelpumpe", + "cs": "pumpa na kolo", + "ca": "una manxa per a bicicletes" + }, + "tags": [ + "amenity=bicycle_repair_station", + "service:bicycle:tools=no", + "service:bicycle:pump=yes" + ], + "description": { + "en": "A device to inflate your tires on a fixed location in the public space.", + "nl": "Een fietspomp in de publieke ruimte zonder extra gereedschap. De fietspomp in je kelder telt dus niet.", + "it": "Un dispositivo per gonfiare le proprie gomme in un luogo fisso pubblicamente accessibile.", + "fr": "Un dispositif pour gonfler vos pneus sur un emplacement fixe dans l'espace public.", + "de": "Ein Gerät zum Aufpumpen von Reifen an einem festen Standort im öffentlichen Raum.", + "pl": "Urządzenie do pompowania opon w stałym miejscu w przestrzeni publicznej.", + "pt_BR": "Um dispositivo para encher seus pneus em um local fixa no espaço público.", + "pt": "Um aparelho para encher os seus pneus num local fixa no espaço público.", + "es": "Un dispositivo para inflar tus ruedas en una posición fija en el espacio público.", + "da": "En anordning til at fylde dine dæk op på et fast sted i det offentlige rum.", + "cs": "Zařízení pro huštění pneumatik na pevném místě na veřejném místě.", + "ca": "Un dispositiu per a unflar les teues rodes en una posició fixa a l'espai públic." + }, + "exampleImages": [ + "./assets/layers/bike_repair_station/pump_example_round.jpg", + "./assets/layers/bike_repair_station/pump_example.png", + "./assets/layers/bike_repair_station/pump_example_manual.jpg" + ] + }, + { + "title": { + "en": "a bike repair station and pump", + "nl": "een herstelpunt en pomp", + "fr": "une point de réparation vélo avec pompe", + "gl": "estación de arranxo de bicicletas con bomba de ar", + "de": "eine Fahrrad-Reparaturstation mit Pumpe", + "it": "una stazione di riparazione bici e pompa", + "pl": "stacja naprawy rowerów i pompka", + "es": "En estación de reparación de bicicletas y bomba", + "da": "en cykelreparationsstation og pumpe", + "cs": "opravna kol a vzduchový kompresor", + "ca": "una estació de reparació de bicicletes i una bomba" + }, + "tags": [ + "amenity=bicycle_repair_station", + "service:bicycle:tools=yes", + "service:bicycle:pump=yes" + ], + "description": { + "en": "A bicycle pump and tools to repair your bike in the public space. The tools are often secured with chains against theft.", + "nl": "Een fietspomp en gereedschap om je fiets te herstellen in de publieke ruimte. Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", + "fr": "Un dispositif avec des outils pour réparer votre vélo combiné à une pompe a un emplacement fixe. Les outils sont souvent attachés par une chaîne pour empêcher le vol.", + "it": "Un dispositivo con attrezzi per riparare la tua bici e una pompa in un luogo fisso. Gli attrezzi sono spesso attaccati ad una catena per prevenire il furto.", + "de": "Ein Gerät mit Werkzeugen zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Die Werkzeuge sind oft mit Ketten gegen Diebstahl gesichert.", + "es": "Una bomba de bicicletas y herramientas para reparar tu bicicleta en el espacio público. Las herramientas habitualmente están aseguradas con cadenas contra el robo.", + "da": "En cykelpumpe og værktøj til at reparere din cykel i det offentlige rum. Værktøjet er ofte sikret med kæder mod tyveri.", + "cs": "Vzduchový kompresor na kolo a nářadí na opravu kola na veřejném místě. Nářadí je často zajištěno řetězy proti krádeži.", + "ca": "Una bomba per a bicicletes i eines per a reparar la teva bicicleta a l'espai públic. Les eines sovint estan assegurades amb cadenes contra robatoris.", + "pt_BR": "Uma bomba de ar para bicicletas e ferramentas para reparar sua bicicleta em espaço público. As ferramentas geralmente são protegidas com correntes contra furtos." + }, + "exampleImages": [ + "./assets/layers/bike_repair_station/repair_station_example_2.jpg", + "./assets/layers/bike_repair_station/repair_station_example_3.jpg" + ] + }, + { + "title": { + "en": "a bike repair station without pump", + "nl": "een herstelpunt zonder pomp", + "fr": "une point de réparation vélo sans pompe", + "gl": "estación de arranxo de bicicletas sin bomba de ar", + "de": "eine Fahrrad-Reparaturstation ohne Pumpe", + "it": "una stazione di riparazione bici senza pompa", + "ru": "Станция обслуживания велосипедов без накачки (насоса)", + "es": "una estación de reparación de bicicletas sin bomba", + "da": "en cykelreparationsstation uden pumpe", + "cs": "opravna kol bez vzduchového kompresoru", + "ca": "una estació de reparació de bicicletes sense bomba" + }, + "tags": [ + "amenity=bicycle_repair_station", + "service:bicycle:tools=yes", + "service:bicycle:pump=no" + ], + "description": { + "en": "Tools to repair your bike in the public space (without pump). The tools are secured against theft.", + "nl": "Gereedschap om je fiets te herstellen in de publieke ruimte (zonder pomp). Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", + "de": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert.", + "es": "Herramientas para reparar tu bici en el espacio público (sin bomba).Las herramientas están aseguradas contra el robo.", + "da": "Værktøj til at reparere din cykel i det offentlige rum (uden pumpe). Værktøjet er sikret mod tyveri.", + "fr": "Des outils pour réparer les vélos dans l’espace public (sans pompe). Les outils sont sécurisés contre le vol.", + "cs": "nářadí pro opravu kola na veřejném místě (bez vzduchového kompresoru) Nářadí je zabezpečeno proti krádeži.", + "ca": "Eines per reparar la teva bicicleta a l'espai públic (sense bomba). Les eines estan assegurades contra robatoris." + } + } + ], "tagRenderings": [ "images", { @@ -865,116 +1113,6 @@ }, "level" ], - "presets": [ - { - "title": { - "en": "a bike pump", - "nl": "een fietspomp", - "fr": "une pompe à vélo", - "gl": "bomba de ar", - "de": "eine Fahrradpumpe", - "it": "una pompa per bici", - "ru": "bелосипедный насос", - "fi": "pyöräpumppu", - "pl": "pompka do roweru", - "pt_BR": "uma bomba de bicicleta", - "es": "una bomba de bicicletas", - "da": "en cykelpumpe", - "cs": "pumpa na kolo", - "ca": "una manxa per a bicicletes" - }, - "tags": [ - "amenity=bicycle_repair_station", - "service:bicycle:tools=no", - "service:bicycle:pump=yes" - ], - "description": { - "en": "A device to inflate your tires on a fixed location in the public space.", - "nl": "Een fietspomp in de publieke ruimte zonder extra gereedschap. De fietspomp in je kelder telt dus niet.", - "it": "Un dispositivo per gonfiare le proprie gomme in un luogo fisso pubblicamente accessibile.", - "fr": "Un dispositif pour gonfler vos pneus sur un emplacement fixe dans l'espace public.", - "de": "Ein Gerät zum Aufpumpen von Reifen an einem festen Standort im öffentlichen Raum.", - "pl": "Urządzenie do pompowania opon w stałym miejscu w przestrzeni publicznej.", - "pt_BR": "Um dispositivo para encher seus pneus em um local fixa no espaço público.", - "pt": "Um aparelho para encher os seus pneus num local fixa no espaço público.", - "es": "Un dispositivo para inflar tus ruedas en una posición fija en el espacio público.", - "da": "En anordning til at fylde dine dæk op på et fast sted i det offentlige rum.", - "cs": "Zařízení pro huštění pneumatik na pevném místě na veřejném místě.", - "ca": "Un dispositiu per a unflar les teues rodes en una posició fixa a l'espai públic." - }, - "exampleImages": [ - "./assets/layers/bike_repair_station/pump_example_round.jpg", - "./assets/layers/bike_repair_station/pump_example.png", - "./assets/layers/bike_repair_station/pump_example_manual.jpg" - ] - }, - { - "title": { - "en": "a bike repair station and pump", - "nl": "een herstelpunt en pomp", - "fr": "une point de réparation vélo avec pompe", - "gl": "estación de arranxo de bicicletas con bomba de ar", - "de": "eine Fahrrad-Reparaturstation mit Pumpe", - "it": "una stazione di riparazione bici e pompa", - "pl": "stacja naprawy rowerów i pompka", - "es": "En estación de reparación de bicicletas y bomba", - "da": "en cykelreparationsstation og pumpe", - "cs": "opravna kol a vzduchový kompresor", - "ca": "una estació de reparació de bicicletes i una bomba" - }, - "tags": [ - "amenity=bicycle_repair_station", - "service:bicycle:tools=yes", - "service:bicycle:pump=yes" - ], - "description": { - "en": "A bicycle pump and tools to repair your bike in the public space. The tools are often secured with chains against theft.", - "nl": "Een fietspomp en gereedschap om je fiets te herstellen in de publieke ruimte. Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", - "fr": "Un dispositif avec des outils pour réparer votre vélo combiné à une pompe a un emplacement fixe. Les outils sont souvent attachés par une chaîne pour empêcher le vol.", - "it": "Un dispositivo con attrezzi per riparare la tua bici e una pompa in un luogo fisso. Gli attrezzi sono spesso attaccati ad una catena per prevenire il furto.", - "de": "Ein Gerät mit Werkzeugen zur Reparatur von Fahrrädern kombiniert mit einer Pumpe an einem festen Standort. Die Werkzeuge sind oft mit Ketten gegen Diebstahl gesichert.", - "es": "Una bomba de bicicletas y herramientas para reparar tu bicicleta en el espacio público. Las herramientas habitualmente están aseguradas con cadenas contra el robo.", - "da": "En cykelpumpe og værktøj til at reparere din cykel i det offentlige rum. Værktøjet er ofte sikret med kæder mod tyveri.", - "cs": "Vzduchový kompresor na kolo a nářadí na opravu kola na veřejném místě. Nářadí je často zajištěno řetězy proti krádeži.", - "ca": "Una bomba per a bicicletes i eines per a reparar la teva bicicleta a l'espai públic. Les eines sovint estan assegurades amb cadenes contra robatoris.", - "pt_BR": "Uma bomba de ar para bicicletas e ferramentas para reparar sua bicicleta em espaço público. As ferramentas geralmente são protegidas com correntes contra furtos." - }, - "exampleImages": [ - "./assets/layers/bike_repair_station/repair_station_example_2.jpg", - "./assets/layers/bike_repair_station/repair_station_example_3.jpg" - ] - }, - { - "title": { - "en": "a bike repair station without pump", - "nl": "een herstelpunt zonder pomp", - "fr": "une point de réparation vélo sans pompe", - "gl": "estación de arranxo de bicicletas sin bomba de ar", - "de": "eine Fahrrad-Reparaturstation ohne Pumpe", - "it": "una stazione di riparazione bici senza pompa", - "ru": "Станция обслуживания велосипедов без накачки (насоса)", - "es": "una estación de reparación de bicicletas sin bomba", - "da": "en cykelreparationsstation uden pumpe", - "cs": "opravna kol bez vzduchového kompresoru", - "ca": "una estació de reparació de bicicletes sense bomba" - }, - "tags": [ - "amenity=bicycle_repair_station", - "service:bicycle:tools=yes", - "service:bicycle:pump=no" - ], - "description": { - "en": "Tools to repair your bike in the public space (without pump). The tools are secured against theft.", - "nl": "Gereedschap om je fiets te herstellen in de publieke ruimte (zonder pomp). Deze zijn op een vastgemaakt, bijvoorbeeld aan een paal.", - "de": "Werkzeug, um Ihr Fahrrad im öffentlichen Raum zu reparieren (ohne Pumpe). Die Werkzeuge sind gegen Diebstahl gesichert.", - "es": "Herramientas para reparar tu bici en el espacio público (sin bomba).Las herramientas están aseguradas contra el robo.", - "da": "Værktøj til at reparere din cykel i det offentlige rum (uden pumpe). Værktøjet er sikret mod tyveri.", - "fr": "Des outils pour réparer les vélos dans l’espace public (sans pompe). Les outils sont sécurisés contre le vol.", - "cs": "nářadí pro opravu kola na veřejném místě (bez vzduchového kompresoru) Nářadí je zabezpečeno proti krádeži.", - "ca": "Eines per reparar la teva bicicleta a l'espai públic (sense bomba). Les eines estan assegurades contra robatoris." - } - } - ], "deletion": { "softDeletionTags": { "and": [ @@ -987,143 +1125,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "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", - "pt_BR": "Uma camada que mostra bombas de ar para bicicletas e suportes com ferramentas de reparo para bicicletas" - }, - "pointRendering": [ - { - "marker": [ - { - "icon": "pin", - "color": { - "render": "#88d32c", - "mappings": [ - { - "if": { - "and": [ - "service:bicycle:pump=yes", - "service:bicycle:tools=yes", - "service:bicycle:pump:operational_status=broken" - ] - }, - "then": "#88d32c" - }, - { - "if": { - "and": [ - "service:bicycle:pump=yes", - "service:bicycle:tools=yes" - ] - }, - "then": "#30abf0" - }, - { - "if": { - "and": [ - "service:bicycle:pump:operational_status=broken", - "service:bicycle:tools=no" - ] - }, - "then": "black" - }, - { - "if": { - "and": [ - "service:bicycle:pump=yes", - { - "or": [ - "service:bicycle:tools=no", - "service:bicycle:tools=" - ] - } - ] - }, - "then": "#e1783a" - } - ] - } - }, - { - "icon": { - "render": "./assets/layers/bike_repair_station/repair_station.svg", - "mappings": [ - { - "if": { - "and": [ - "service:bicycle:pump=yes", - "service:bicycle:tools=yes", - "service:bicycle:pump:operational_status=broken" - ] - }, - "then": "./assets/layers/bike_repair_station/repair_station_broken_pump.svg" - }, - { - "if": { - "and": [ - "service:bicycle:pump=yes", - "service:bicycle:tools=yes" - ] - }, - "then": "./assets/layers/bike_repair_station/repair_station_pump.svg" - }, - { - "if": { - "and": [ - "service:bicycle:pump:operational_status=broken", - "service:bicycle:tools=no" - ] - }, - "then": "./assets/layers/bike_repair_station/broken_pump.svg" - }, - { - "if": { - "and": [ - "service:bicycle:pump=yes", - { - "or": [ - "service:bicycle:tools=no", - "service:bicycle:tools=" - ] - } - ] - }, - "then": "./assets/layers/bike_repair_station/pump.svg" - } - ] - } - } - ], - "iconBadges": [ - { - "if": "operator=De Fietsambassade Gent", - "then": "./assets/themes/cyclofix/fietsambassade_gent_logo_small.svg" - }, - { - "if": { - "or": [ - "access=no", - "access=private" - ] - }, - "then": "invalid" - } - ], - "iconSize": "50,50", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom" - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/bike_shop/bike_shop.json b/assets/layers/bike_shop/bike_shop.json index 8980a2312..340c48722 100644 --- a/assets/layers/bike_shop/bike_shop.json +++ b/assets/layers/bike_shop/bike_shop.json @@ -15,8 +15,20 @@ "da": "Cykelreparation/butik", "cs": "Opravna/obchod s jízdními koly" }, - "minzoom": 13, - "allowMove": true, + "description": { + "en": "A shop specifically selling bicycles or related items", + "nl": "Een winkel die hoofdzakelijk fietsen en fietstoebehoren verkoopt", + "fr": "Un magasin vendant spécifiquement des vélos ou des objets en lien", + "it": "Un negozio che vende specificatamente biciclette o articoli similari", + "ru": "Магазин, специализирующийся на продаже велосипедов или сопутствующих товаров", + "pt_BR": "Uma loja que vende especificamente bicicletas ou itens relacionados", + "de": "Ein Geschäft, das speziell Fahrräder oder verwandte Artikel verkauft", + "pt": "Uma loja que vende especificamente bicicletas ou itens relacionados", + "es": "Una tiene que vende específicamente bicis u objetos relacionados", + "da": "En butik, der specifikt sælger cykler eller relaterede varer", + "ca": "Una botiga que ven específicament bicicletes o articles relacionats", + "cs": "Obchod zaměřený na prodej jízdních kol nebo souvisejících předmětů" + }, "source": { "osmTags": { "#": "We select all bicycle shops, sports shops (but we try to weed out non-bicycle related shops), and any shop with a bicycle related tag", @@ -41,6 +53,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "en": "Bike repair/shop", @@ -214,20 +227,97 @@ }, "icons.defaults" ], - "description": { - "en": "A shop specifically selling bicycles or related items", - "nl": "Een winkel die hoofdzakelijk fietsen en fietstoebehoren verkoopt", - "fr": "Un magasin vendant spécifiquement des vélos ou des objets en lien", - "it": "Un negozio che vende specificatamente biciclette o articoli similari", - "ru": "Магазин, специализирующийся на продаже велосипедов или сопутствующих товаров", - "pt_BR": "Uma loja que vende especificamente bicicletas ou itens relacionados", - "de": "Ein Geschäft, das speziell Fahrräder oder verwandte Artikel verkauft", - "pt": "Uma loja que vende especificamente bicicletas ou itens relacionados", - "es": "Una tiene que vende específicamente bicis u objetos relacionados", - "da": "En butik, der specifikt sælger cykler eller relaterede varer", - "ca": "Una botiga que ven específicament bicicletes o articles relacionats", - "cs": "Obchod zaměřený na prodej jízdních kol nebo souvisejících předmětů" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "pin", + "mappings": [ + { + "if": "operator=De Fietsambassade Gent", + "then": null + } + ] + }, + "color": { + "render": "#f04c4c", + "mappings": [ + { + "if": "operator=De Fietsambassade Gent", + "then": null + }, + { + "if": "service:bicycle:retail=yes", + "then": "#353d57" + } + ] + } + }, + { + "icon": { + "render": "./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": "./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" + } + ], + "presets": [ + { + "title": { + "en": "a bike repair/shop", + "nl": "een fietszaak", + "fr": "une magasin et réparateur de vélo", + "gl": "Tenda/arranxo de bicicletas", + "de": "eine Fahrradwerkstatt bzw. ein Fahrradgeschäft", + "it": "una negozio/riparatore di bici", + "ru": "Обслуживание велосипедов/магазин", + "es": "un taller/tienda de bicis", + "da": "en cykelværksted/butik", + "ca": "una botiga/reparació de bicicletes", + "cs": "opravna/obchod s jízdními koly" + }, + "tags": [ + "shop=bicycle" + ] + } + ], "tagRenderings": [ "images", { @@ -797,26 +887,6 @@ "bike_cleaning.bike_cleaning-service:bicycle:cleaning:charge", "description" ], - "presets": [ - { - "title": { - "en": "a bike repair/shop", - "nl": "een fietszaak", - "fr": "une magasin et réparateur de vélo", - "gl": "Tenda/arranxo de bicicletas", - "de": "eine Fahrradwerkstatt bzw. ein Fahrradgeschäft", - "it": "una negozio/riparatore di bici", - "ru": "Обслуживание велосипедов/магазин", - "es": "un taller/tienda de bicis", - "da": "en cykelværksted/butik", - "ca": "una botiga/reparació de bicicletes", - "cs": "opravna/obchod s jízdními koly" - }, - "tags": [ - "shop=bicycle" - ] - } - ], "filter": [ "open_now", { @@ -865,75 +935,5 @@ } ], "deletion": true, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "pin", - "mappings": [ - { - "if": "operator=De Fietsambassade Gent", - "then": null - } - ] - }, - "color": { - "render": "#f04c4c", - "mappings": [ - { - "if": "operator=De Fietsambassade Gent", - "then": null - }, - { - "if": "service:bicycle:retail=yes", - "then": "#353d57" - } - ] - } - }, - { - "icon": { - "render": "./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": "./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" - } - ] + "allowMove": true } diff --git a/assets/layers/bike_themed_object/bike_themed_object.json b/assets/layers/bike_themed_object/bike_themed_object.json index 3ce62cf79..d6e7472fe 100644 --- a/assets/layers/bike_themed_object/bike_themed_object.json +++ b/assets/layers/bike_themed_object/bike_themed_object.json @@ -12,7 +12,16 @@ "cs": "Objekt související s jízdním kolem", "pl": "Obiekt związany z rowerami" }, - "minzoom": 13, + "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", + "de": "Eine Ebene mit Objekten zum Thema Fahrrad, die zu keiner anderen Ebene passen", + "es": "Una capa con los objetos relacionados con bicis pero que no coinciden con ninguna otra capa", + "fr": "Une couche sur le thème des vélos mais qui ne correspondent à aucune autre couche", + "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ě" + }, "source": { "osmTags": { "or": [ @@ -28,6 +37,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "en": "Bike-related object", @@ -63,25 +73,6 @@ } ] }, - "tagRenderings": [ - "images", - "description", - "website", - "email", - "phone", - "opening_hours" - ], - "presets": [], - "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", - "de": "Eine Ebene mit Objekten zum Thema Fahrrad, die zu keiner anderen Ebene passen", - "es": "Una capa con los objetos relacionados con bicis pero que no coinciden con ninguna otra capa", - "fr": "Une couche sur le thème des vélos mais qui ne correspondent à aucune autre couche", - "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": [ { "iconSize": "50,50", @@ -102,5 +93,14 @@ "color": "#AB76D5", "width": "2" } + ], + "presets": [], + "tagRenderings": [ + "images", + "description", + "website", + "email", + "phone", + "opening_hours" ] } diff --git a/assets/layers/binocular/binocular.json b/assets/layers/binocular/binocular.json index 552cc1d62..574298c92 100644 --- a/assets/layers/binocular/binocular.json +++ b/assets/layers/binocular/binocular.json @@ -13,6 +13,26 @@ "cs": "Dalekohledy", "eu": "Prismatikoak" }, + "description": { + "en": "Binoculars", + "nl": "Verrekijkers", + "de": "Ferngläser", + "ru": "Бинокли", + "ca": "Prismàtics", + "da": "Kikkerter", + "es": "Prismáticos", + "fr": "Jumelles", + "pa_PK": "بائینوکولر", + "cs": "Dalekohledy", + "eu": "Prismatikoak" + }, + "source": { + "osmTags": { + "and": [ + "amenity=binoculars" + ] + } + }, "minzoom": 0, "title": { "render": { @@ -29,19 +49,58 @@ "cs": "Dalekohledy" } }, - "description": { - "en": "Binoculars", - "nl": "Verrekijkers", - "de": "Ferngläser", - "ru": "Бинокли", - "ca": "Prismàtics", - "da": "Kikkerter", - "es": "Prismáticos", - "fr": "Jumelles", - "pa_PK": "بائینوکولر", - "cs": "Dalekohledy", - "eu": "Prismatikoak" - }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/binocular/telescope.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "amenity=binoculars" + ], + "title": { + "en": "a binocular", + "nl": "een verrekijker", + "de": "ein Fernglas", + "ru": "бинокль", + "ca": "uns prismàtics", + "da": "en kikkert", + "es": "unos prismáticos", + "fr": "des jumelles", + "cs": "dalekohled" + }, + "description": { + "en": "A telescope or pair of binoculars mounted on a pole, available to the public to look around. ", + "nl": "Een telescoop of verrekijker die op een vaste plaats gemonteerd staat waar iedereen door mag kijken. ", + "de": "Ein fest installiertes Teleskop oder Fernglas, für die öffentliche Nutzung. ", + "fr": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs. ", + "da": "Et teleskop eller en kikkert monteret på en stang, som offentligheden kan se sig omkring med. ", + "es": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. ", + "ca": "Un telescopi o un parell de prismàtics muntats en un pal, a disposició del públic per mirar al seu voltant. ", + "cs": "Jednooký teleskop nebo dalekohled umístěný na stožáru, který je k dispozici veřejnosti k prohlídce. " + } + } + ], "tagRenderings": [ "images", { @@ -121,41 +180,6 @@ "id": "binocular-direction" } ], - "presets": [ - { - "tags": [ - "amenity=binoculars" - ], - "title": { - "en": "a binocular", - "nl": "een verrekijker", - "de": "ein Fernglas", - "ru": "бинокль", - "ca": "uns prismàtics", - "da": "en kikkert", - "es": "unos prismáticos", - "fr": "des jumelles", - "cs": "dalekohled" - }, - "description": { - "en": "A telescope or pair of binoculars mounted on a pole, available to the public to look around. ", - "nl": "Een telescoop of verrekijker die op een vaste plaats gemonteerd staat waar iedereen door mag kijken. ", - "de": "Ein fest installiertes Teleskop oder Fernglas, für die öffentliche Nutzung. ", - "fr": "Une longue-vue ou une paire de jumelles montée sur un poteau, disponible au public pour scruter les environs. ", - "da": "Et teleskop eller en kikkert monteret på en stang, som offentligheden kan se sig omkring med. ", - "es": "Un telescopio o unos prismáticos montados en un poste, disponible para que el público mire alrededor. ", - "ca": "Un telescopi o un parell de prismàtics muntats en un pal, a disposició del públic per mirar al seu voltant. ", - "cs": "Jednooký teleskop nebo dalekohled umístěný na stožáru, který je k dispozici veřejnosti k prohlídce. " - } - } - ], - "source": { - "osmTags": { - "and": [ - "amenity=binoculars" - ] - } - }, "deletion": { "softDeletionTags": { "and": [ @@ -168,29 +192,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/binocular/telescope.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } - ] + } } diff --git a/assets/layers/birdhide/birdhide.json b/assets/layers/birdhide/birdhide.json index 320fc873a..bd78e30b8 100644 --- a/assets/layers/birdhide/birdhide.json +++ b/assets/layers/birdhide/birdhide.json @@ -11,7 +11,15 @@ "pl": "Miejsca do obserwacji ptaków", "cs": "Místa pro pozorování ptáků" }, - "minzoom": 14, + "description": { + "en": "A birdhide", + "nl": "Een vogelkijkhut", + "da": "Et fugleskjul", + "de": "Ein Vogelbeobachtungsturm", + "fr": "Un observatoire ornithologique", + "ca": "Un observatori d'ocells", + "cs": "Pozorovatelna" + }, "source": { "osmTags": { "and": [ @@ -19,6 +27,7 @@ ] } }, + "minzoom": 14, "title": { "render": { "en": "Bird watching place", @@ -81,15 +90,88 @@ } ] }, - "description": { - "en": "A birdhide", - "nl": "Een vogelkijkhut", - "da": "Et fugleskjul", - "de": "Ein Vogelbeobachtungsturm", - "fr": "Un observatoire ornithologique", - "ca": "Un observatori d'ocells", - "cs": "Pozorovatelna" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/layers/birdhide/birdhide.svg", + "mappings": [ + { + "if": { + "or": [ + "building=yes", + "shelter=yes", + "amenity=shelter" + ] + }, + "then": "./assets/layers/birdhide/birdshelter.svg" + } + ] + } + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "leisure=bird_hide", + "building=yes", + "shelter=yes", + "amenity=shelter" + ], + "title": { + "en": "a birdhide", + "nl": "een vogelkijkhut", + "da": "et fugleskjul", + "de": "ein Gebäude zur Vogelbeobachtung", + "fr": "un observatoire ornithologique", + "ca": "un observatori d'ocells", + "cs": "pozorovatelna" + }, + "description": { + "en": "A covered shelter where one can watch birds comfortably", + "nl": "Een overdekte hut waarbinnen er warm en droog naar vogels gekeken kan worden", + "de": "Ein überdachter Unterstand, in dem man bequem Vögel beobachten kann", + "es": "Un refugio cubierto donde se pueden ver pájaros confortablemente", + "da": "Et overdækket ly, hvor man kan se fugle i ro og mag", + "fr": "Un abris couvert pour observer les oiseaux confortablement", + "ca": "Un refugi cobert on es poden veure ocells confortablement", + "cs": "Krytý přístřešek, kde lze pohodlně pozorovat ptáky" + } + }, + { + "tags": [ + "leisure=bird_hide", + "building=no", + "shelter=no" + ], + "title": { + "en": "a bird blind", + "nl": "een vogelkijkwand", + "de": "einen Sichtschutz zur Vogelbeobachtung", + "fr": "un camouflage d’observation ornithologique", + "da": "et fugletårn", + "ca": "un observatori d'ocells" + }, + "description": { + "en": "A screen or wall with openings to watch birds", + "nl": "Een vogelkijkwand waarachter men kan staan om vogels te kijken", + "es": "Una pantalla o pared con aperturas para ver pájaros", + "da": "En skærm eller væg med åbninger til at se på fugle", + "de": "Ein Schirm oder eine Wand mit Öffnungen zum Beobachten von Vögeln", + "fr": "Un écran ou un mur avec des ouvertures pour observer les oiseaux", + "ca": "Una pantalla o paret amb obertures per a observar ocells", + "cs": "Obrazovka nebo stěna s otvory pro sledování ptáků" + } + } + ], "tagRenderings": [ "images", { @@ -311,60 +393,6 @@ "id": "birdhide-operator" } ], - "presets": [ - { - "tags": [ - "leisure=bird_hide", - "building=yes", - "shelter=yes", - "amenity=shelter" - ], - "title": { - "en": "a birdhide", - "nl": "een vogelkijkhut", - "da": "et fugleskjul", - "de": "ein Gebäude zur Vogelbeobachtung", - "fr": "un observatoire ornithologique", - "ca": "un observatori d'ocells", - "cs": "pozorovatelna" - }, - "description": { - "en": "A covered shelter where one can watch birds comfortably", - "nl": "Een overdekte hut waarbinnen er warm en droog naar vogels gekeken kan worden", - "de": "Ein überdachter Unterstand, in dem man bequem Vögel beobachten kann", - "es": "Un refugio cubierto donde se pueden ver pájaros confortablemente", - "da": "Et overdækket ly, hvor man kan se fugle i ro og mag", - "fr": "Un abris couvert pour observer les oiseaux confortablement", - "ca": "Un refugi cobert on es poden veure ocells confortablement", - "cs": "Krytý přístřešek, kde lze pohodlně pozorovat ptáky" - } - }, - { - "tags": [ - "leisure=bird_hide", - "building=no", - "shelter=no" - ], - "title": { - "en": "a bird blind", - "nl": "een vogelkijkwand", - "de": "einen Sichtschutz zur Vogelbeobachtung", - "fr": "un camouflage d’observation ornithologique", - "da": "et fugletårn", - "ca": "un observatori d'ocells" - }, - "description": { - "en": "A screen or wall with openings to watch birds", - "nl": "Een vogelkijkwand waarachter men kan staan om vogels te kijken", - "es": "Una pantalla o pared con aperturas para ver pájaros", - "da": "En skærm eller væg med åbninger til at se på fugle", - "de": "Ein Schirm oder eine Wand mit Öffnungen zum Beobachten von Vögeln", - "fr": "Un écran ou un mur avec des ouvertures pour observer les oiseaux", - "ca": "Una pantalla o paret amb obertures per a observar ocells", - "cs": "Obrazovka nebo stěna s otvory pro sledování ptáků" - } - } - ], "filter": [ { "id": "wheelchair", @@ -429,33 +457,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuracy": true - }, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/layers/birdhide/birdhide.svg", - "mappings": [ - { - "if": { - "or": [ - "building=yes", - "shelter=yes", - "amenity=shelter" - ] - }, - "then": "./assets/layers/birdhide/birdshelter.svg" - } - ] - } - } - ], - "location": [ - "point", - "centroid" - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/cafe_pub/cafe_pub.json b/assets/layers/cafe_pub/cafe_pub.json index 0229a036f..9eae9e1b0 100644 --- a/assets/layers/cafe_pub/cafe_pub.json +++ b/assets/layers/cafe_pub/cafe_pub.json @@ -13,6 +13,17 @@ "pl": "Kawiarnie i puby", "cs": "Kavárny a hospody" }, + "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", + "cs": "Vrstva s kavárnami a hospodami, kde se můžete sejít u skleničky. Vrstva se ptá na několik důležitých otázek" + }, "source": { "osmTags": { "or": [ @@ -24,6 +35,87 @@ ] } }, + "minzoom": 12, + "title": { + "render": { + "en": "Pub", + "nl": "Café", + "ca": "Bar", + "de": "Kneipe", + "da": "Pub", + "es": "Bar", + "fr": "Bar", + "pa_PK": "پب", + "eu": "Edaritegia", + "pl": "Pub", + "cs": "Hospoda" + }, + "mappings": [ + { + "if": { + "and": [ + "name~*" + ] + }, + "then": { + "nl": "{name}", + "en": "{name}", + "de": "{name}", + "ru": "{name}", + "ca": "{name}", + "da": "{name}", + "es": "{name}", + "fr": "{name}", + "eu": "{name}", + "cs": "{name}" + } + } + ] + }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
{name}
" + } + ] + }, + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/cafe_pub/pub.svg", + "mappings": [ + { + "if": "amenity=cafe", + "then": "./assets/layers/cafe_pub/cafe.svg" + }, + { + "if": "amenity=nightclub", + "then": "./assets/layers/cafe_pub/nightclub.svg" + } + ] + } + } + ] + } + ], + "lineRendering": [], "presets": [ { "tags": [ @@ -136,42 +228,6 @@ } } ], - "title": { - "render": { - "en": "Pub", - "nl": "Café", - "ca": "Bar", - "de": "Kneipe", - "da": "Pub", - "es": "Bar", - "fr": "Bar", - "pa_PK": "پب", - "eu": "Edaritegia", - "pl": "Pub", - "cs": "Hospoda" - }, - "mappings": [ - { - "if": { - "and": [ - "name~*" - ] - }, - "then": { - "nl": "{name}", - "en": "{name}", - "de": "{name}", - "ru": "{name}", - "ca": "{name}", - "da": "{name}", - "es": "{name}", - "fr": "{name}", - "eu": "{name}", - "cs": "{name}" - } - } - ] - }, "tagRenderings": [ "images", "level", @@ -313,7 +369,6 @@ "internet-ssid", "reviews" ], - "minzoom": 12, "filter": [ "open_now", "accepts_cash", @@ -344,60 +399,5 @@ } ] }, - "allowMove": true, - "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", - "cs": "Vrstva s kavárnami a hospodami, kde se můžete sejít u skleničky. Vrstva se ptá na několik důležitých otázek" - }, - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
{name}
" - } - ] - }, - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/cafe_pub/pub.svg", - "mappings": [ - { - "if": "amenity=cafe", - "then": "./assets/layers/cafe_pub/cafe.svg" - }, - { - "if": "amenity=nightclub", - "then": "./assets/layers/cafe_pub/nightclub.svg" - } - ] - } - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/car_rental/car_rental.json b/assets/layers/car_rental/car_rental.json index 69aaad9a0..6055726d1 100644 --- a/assets/layers/car_rental/car_rental.json +++ b/assets/layers/car_rental/car_rental.json @@ -9,6 +9,15 @@ "pl": "Wypożyczalnia samochodów", "cs": "Půjčovna aut" }, + "description": { + "en": "Places where you can rent a car", + "nl": "Plaatsen waar je een auto kunt huren", + "de": "Orte, an denen Sie ein Auto mieten können", + "fr": "Lieu où vous pouvez louer une voiture", + "ca": "Llocs on pots llogar un cotxe", + "pl": "Miejsca, w których można wypożyczyć samochód", + "cs": "Místa, kde si můžete pronajmout auto" + }, "source": { "osmTags": "amenity=car_rental" }, @@ -30,15 +39,55 @@ } ] }, - "description": { - "en": "Places where you can rent a car", - "nl": "Plaatsen waar je een auto kunt huren", - "de": "Orte, an denen Sie ein Auto mieten können", - "fr": "Lieu où vous pouvez louer une voiture", - "ca": "Llocs on pots llogar un cotxe", - "pl": "Miejsca, w których można wypożyczyć samochód", - "cs": "Místa, kde si můžete pronajmout auto" - }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "label": "
{name}
", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/car_rental/car_rental.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "darkblue", + "width": 2 + } + ], + "presets": [ + { + "tags": [ + "amenity=car_rental" + ], + "title": { + "en": "a car rental", + "nl": "een autoverhuur", + "de": "eine Autovermietung", + "fr": "Une société de location de véhicules", + "ca": "un lloguer de cotxes", + "pl": "wypożyczalnia samochodów", + "cs": "půjčovna aut" + }, + "description": { + "en": "A place where you can rent a car", + "nl": "Een plaats waar je een auto kunt huren", + "de": "Ein Ort, an dem Sie ein Auto mieten können", + "fr": "Un lieu où vous pouvez louer une voiture", + "ca": "Un lloc on pots llogar un cotxe", + "pl": "Miejsce, w którym można wypożyczyć samochód", + "cs": "Místo, kde si můžete pronajmout auto" + } + } + ], "tagRenderings": [ "images", { @@ -94,59 +143,10 @@ "phone", "opening_hours" ], - "presets": [ - { - "tags": [ - "amenity=car_rental" - ], - "title": { - "en": "a car rental", - "nl": "een autoverhuur", - "de": "eine Autovermietung", - "fr": "Une société de location de véhicules", - "ca": "un lloguer de cotxes", - "pl": "wypożyczalnia samochodów", - "cs": "půjčovna aut" - }, - "description": { - "en": "A place where you can rent a car", - "nl": "Een plaats waar je een auto kunt huren", - "de": "Ein Ort, an dem Sie ein Auto mieten können", - "fr": "Un lieu où vous pouvez louer une voiture", - "ca": "Un lloc on pots llogar un cotxe", - "pl": "Miejsce, w którym można wypożyczyć samochód", - "cs": "Místo, kde si můžete pronajmout auto" - } - } - ], - "allowMove": { - "enableImproveAccuracy": true - }, "filter": [ "open_now" ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "label": "
{name}
", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/car_rental/car_rental.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "darkblue", - "width": 2 - } - ] + "allowMove": { + "enableImproveAccuracy": true + } } diff --git a/assets/layers/charging_station/charging_station.json b/assets/layers/charging_station/charging_station.json index 1878f1ffe..1f77c30fc 100644 --- a/assets/layers/charging_station/charging_station.json +++ b/assets/layers/charging_station/charging_station.json @@ -10,7 +10,17 @@ "es": "Estaciones de carga", "pl": "Stacje ładowania" }, - "minzoom": 10, + "description": { + "en": "A charging station", + "nl": "Oplaadpunten", + "ca": "Una estació de càrrega", + "cs": "Nabíjecí stanice", + "da": "En ladestation", + "de": "Eine Ladestation", + "es": "Una estación de carga", + "fr": "Une station de recharge", + "pl": "Stacja ładowania" + }, "source": { "osmTags": { "and": [ @@ -25,6 +35,7 @@ ] } }, + "minzoom": 10, "title": { "render": { "en": "Charging station", @@ -80,18 +91,113 @@ } ] }, - "description": { - "en": "A charging station", - "nl": "Oplaadpunten", - "ca": "Una estació de càrrega", - "cs": "Nabíjecí stanice", - "da": "En ladestation", - "de": "Eine Ladestation", - "es": "Una estación de carga", - "fr": "Une station de recharge", - "pl": "Stacja ładowania" - }, - "#": "no-question-hint-check", + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "pin", + "color": "#fff" + }, + { + "icon": { + "render": "./assets/themes/charging_stations/plug.svg", + "mappings": [ + { + "if": "bicycle=yes", + "then": "./assets/themes/charging_stations/bicycle.svg" + }, + { + "if": { + "or": [ + "car=yes", + "motorcar=yes" + ] + }, + "then": "./assets/themes/charging_stations/car.svg" + } + ] + } + } + ], + "iconBadges": [ + { + "if": { + "or": [ + "disused:amenity=charging_station", + "operational_status=broken" + ] + }, + "then": "close:#c22;" + }, + { + "if": { + "or": [ + "proposed:amenity=charging_station", + "planned:amenity=charging_station" + ] + }, + "then": "./assets/layers/charging_station/under_construction.svg" + }, + { + "if": { + "and": [ + "bicycle=yes", + { + "or": [ + "motorcar=yes", + "car=yes" + ] + } + ] + }, + "then": "circle:#fff;./assets/themes/charging_stations/car.svg" + } + ], + "anchor": "bottom", + "iconSize": "50,50" + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=charging_station", + "motorcar=no", + "bicycle=yes", + "socket:typee=1" + ], + "title": { + "en": "a charging station for electrical bikes with a normal european wall plug (meant to charge electrical bikes)", + "nl": "een oplaadpunt voor elektrische fietsen met een gewoon Europees stopcontact (speciaal bedoeld voor fietsen)", + "ca": "una estació de càrrega per a bicicletes elèctriques amb un endoll de paret europeu normal (destinat a carregar bicicletes elèctriques)", + "cs": "nabíjecí stanice pro elektrokola s běžnou evropskou zástrčkou (určeno k nabíjení elektrických kol)", + "da": "en ladestation til elektriske cykler med et normalt europæisk vægstik (beregnet til opladning af elektriske cykler)", + "de": "eine Ladestation für Elektrofahrräder mit einer normalen europäischen Steckdose (zum Laden von Elektrofahrrädern)", + "es": "una estación de carga para bicicletas eléctricas con un enchufe de pared europeo normal (pensado para cargar bicicletas eléctricas)" + } + }, + { + "tags": [ + "amenity=charging_station", + "motorcar=yes", + "bicycle=no" + ], + "title": { + "en": "a charging station for cars", + "nl": "een oplaadstation voor elektrische auto's", + "ca": "una estació de càrrega per a cotxes", + "cs": "nabíjecí stanice pro automobily", + "da": "en ladestation til biler", + "de": "Eine Ladestation für Elektrofahrzeuge", + "es": "una estación de carga para coches", + "pl": "stacja ładowania dla samochodów" + } + } + ], "tagRenderings": [ "images", { @@ -5026,113 +5132,6 @@ } } ], - "lineRendering": [], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "pin", - "color": "#fff" - }, - { - "icon": { - "render": "./assets/themes/charging_stations/plug.svg", - "mappings": [ - { - "if": "bicycle=yes", - "then": "./assets/themes/charging_stations/bicycle.svg" - }, - { - "if": { - "or": [ - "car=yes", - "motorcar=yes" - ] - }, - "then": "./assets/themes/charging_stations/car.svg" - } - ] - } - } - ], - "iconBadges": [ - { - "if": { - "or": [ - "disused:amenity=charging_station", - "operational_status=broken" - ] - }, - "then": "close:#c22;" - }, - { - "if": { - "or": [ - "proposed:amenity=charging_station", - "planned:amenity=charging_station" - ] - }, - "then": "./assets/layers/charging_station/under_construction.svg" - }, - { - "if": { - "and": [ - "bicycle=yes", - { - "or": [ - "motorcar=yes", - "car=yes" - ] - } - ] - }, - "then": "circle:#fff;./assets/themes/charging_stations/car.svg" - } - ], - "anchor": "bottom", - "iconSize": "50,50" - } - ], - "presets": [ - { - "tags": [ - "amenity=charging_station", - "motorcar=no", - "bicycle=yes", - "socket:typee=1" - ], - "title": { - "en": "a charging station for electrical bikes with a normal european wall plug (meant to charge electrical bikes)", - "nl": "een oplaadpunt voor elektrische fietsen met een gewoon Europees stopcontact (speciaal bedoeld voor fietsen)", - "ca": "una estació de càrrega per a bicicletes elèctriques amb un endoll de paret europeu normal (destinat a carregar bicicletes elèctriques)", - "cs": "nabíjecí stanice pro elektrokola s běžnou evropskou zástrčkou (určeno k nabíjení elektrických kol)", - "da": "en ladestation til elektriske cykler med et normalt europæisk vægstik (beregnet til opladning af elektriske cykler)", - "de": "eine Ladestation für Elektrofahrräder mit einer normalen europäischen Steckdose (zum Laden von Elektrofahrrädern)", - "es": "una estación de carga para bicicletas eléctricas con un enchufe de pared europeo normal (pensado para cargar bicicletas eléctricas)" - } - }, - { - "tags": [ - "amenity=charging_station", - "motorcar=yes", - "bicycle=no" - ], - "title": { - "en": "a charging station for cars", - "nl": "een oplaadstation voor elektrische auto's", - "ca": "una estació de càrrega per a cotxes", - "cs": "nabíjecí stanice pro automobily", - "da": "en ladestation til biler", - "de": "Eine Ladestation für Elektrofahrzeuge", - "es": "una estación de carga para coches", - "pl": "stacja ładowania dla samochodów" - } - } - ], "filter": [ { "id": "vehicle-type", @@ -5420,6 +5419,19 @@ ] } ], + "deletion": { + "softDeletionTags": { + "and": [ + "amenity=", + "disused:amenity=charging_station" + ] + }, + "neededChangesets": 10 + }, + "allowMove": { + "enableRelocation": false, + "enableImproveAccuracy": true + }, "units": [ { "appliesToKey": [ @@ -5669,17 +5681,5 @@ "eraseInvalidValues": true } ], - "allowMove": { - "enableRelocation": false, - "enableImproveAccuracy": true - }, - "deletion": { - "softDeletionTags": { - "and": [ - "amenity=", - "disused:amenity=charging_station" - ] - }, - "neededChangesets": 10 - } -} \ No newline at end of file + "#": "no-question-hint-check" +} diff --git a/assets/layers/climbing/climbing.json b/assets/layers/climbing/climbing.json index c841c8789..1f7d1bed9 100644 --- a/assets/layers/climbing/climbing.json +++ b/assets/layers/climbing/climbing.json @@ -1,6 +1,5 @@ { "id": "climbing", - "title": null, "description": { "en": "A dummy layer which contains tagrenderings, shared among the climbing layers", "nl": "Een dummy-laag die tagrenderings bevat, gedeeld over de verschillende klimsport lagen", @@ -8,8 +7,11 @@ "cs": "Falešná vrstva, která obsahuje tagrenderingy sdílené mezi lezeckými vrstvami", "ca": "Una capa fictícia que conté renderització d'etiquetes compartides entre les capes d'escalada" }, - "minzoom": 18, "source": "special:library", + "minzoom": 18, + "title": null, + "pointRendering": null, + "lineRendering": null, "tagRenderings": [ { "id": "website", @@ -442,7 +444,5 @@ } ] } - ], - "lineRendering": null, - "pointRendering": null + ] } diff --git a/assets/layers/climbing_area/climbing_area.json b/assets/layers/climbing_area/climbing_area.json index c956fb593..4e77dfac7 100644 --- a/assets/layers/climbing_area/climbing_area.json +++ b/assets/layers/climbing_area/climbing_area.json @@ -17,7 +17,6 @@ "ca": "Una àrea on l'escalada és possible, p.e. una penya, lloc, bloc, … Conté l'agregació de rutes", "cs": "Oblast, kde je možné lezení, např. skalisko, místo, balvan, … Obsahuje agregaci cest" }, - "minzoom": 10, "source": { "osmTags": { "and": [ @@ -29,6 +28,22 @@ ] } }, + "calculatedTags": [ + "_contained_climbing_routes_properties=overlapWith(feat)('climbing_route').map(f => f.feat.properties).map(p => {return {id: p.id, name: p.name, 'climbing:grade:french': p['climbing:grade:french'], 'climbing:length': p['climbing:length']} })", + "_contained_climbing_routes=get(feat)('_contained_climbing_routes_properties')?.map(p => `
  • ${p.name ?? 'climbing route'} (${p['climbing:grade:french'] ?? 'unknown difficulty'}, ${p['climbing:length'] ?? 'unkown length'} meter)
  • `).join('')", + "_contained_climbing_route_ids=get(feat)('_contained_climbing_routes_properties')?.map(p => p.id)", + "_difficulty_hist=get(feat)('_contained_climbing_routes_properties')?.map(p => p['climbing:grade:french'])?.filter(p => (p ?? null) !== null)?.sort()", + "_difficulty_max=get(feat)('_difficulty_hist')?.at(-1)", + "_difficulty_min=get(feat)('_difficulty_hist')?.at(0)", + "_length_hist=get(feat)('_contained_climbing_routes_properties')?.map(p => p['climbing:length'])?.filter(p => (p ?? null) !== null)?.sort()", + "_length_max=get(feat)('_length_hist')?.at(-1)", + "_length_min=get(feat)('_length_hist')?.at(0)", + "_bolts_hist=get(feat)('_contained_climbing_routes_properties')?.map(p => p['climbing:bolts'])?.filter(p => (p ?? null) !== null)?.sort()", + "_bolts_max=get(feat)('_bolts_hist')?.at(-1)", + "_bolts_min=get(feat)('_bolts_hist')?.at(0)", + "_contained_climbing_routes_count=get(feat)('_contained_climbing_routes_properties')?.length" + ], + "minzoom": 10, "title": { "render": { "en": "Climbing opportunity", @@ -105,20 +120,58 @@ } ] }, - "calculatedTags": [ - "_contained_climbing_routes_properties=overlapWith(feat)('climbing_route').map(f => f.feat.properties).map(p => {return {id: p.id, name: p.name, 'climbing:grade:french': p['climbing:grade:french'], 'climbing:length': p['climbing:length']} })", - "_contained_climbing_routes=get(feat)('_contained_climbing_routes_properties')?.map(p => `
  • ${p.name ?? 'climbing route'} (${p['climbing:grade:french'] ?? 'unknown difficulty'}, ${p['climbing:length'] ?? 'unkown length'} meter)
  • `).join('')", - "_contained_climbing_route_ids=get(feat)('_contained_climbing_routes_properties')?.map(p => p.id)", - "_difficulty_hist=get(feat)('_contained_climbing_routes_properties')?.map(p => p['climbing:grade:french'])?.filter(p => (p ?? null) !== null)?.sort()", - "_difficulty_max=get(feat)('_difficulty_hist')?.at(-1)", - "_difficulty_min=get(feat)('_difficulty_hist')?.at(0)", - "_length_hist=get(feat)('_contained_climbing_routes_properties')?.map(p => p['climbing:length'])?.filter(p => (p ?? null) !== null)?.sort()", - "_length_max=get(feat)('_length_hist')?.at(-1)", - "_length_min=get(feat)('_length_hist')?.at(0)", - "_bolts_hist=get(feat)('_contained_climbing_routes_properties')?.map(p => p['climbing:bolts'])?.filter(p => (p ?? null) !== null)?.sort()", - "_bolts_max=get(feat)('_bolts_hist')?.at(-1)", - "_bolts_min=get(feat)('_bolts_hist')?.at(0)", - "_contained_climbing_routes_count=get(feat)('_contained_climbing_routes_properties')?.length" + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/climbing/climbing_no_rope.svg" + } + ] + } + ], + "lineRendering": [ + { + "dashArray": "8 16", + "lineCap": "square", + "color": "#d38d5fAA", + "fill": "no", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "sport=climbing" + ], + "title": { + "en": "a climbing opportunity", + "nl": "een klimgelegenheid", + "de": "eine Klettereinrichtung", + "ja": "登坂教室", + "nb_NO": "en klatremulighet", + "fr": "une opportunité d’escalade", + "it": "una opportunità di arrampicata", + "ca": "una oportuinitat d'escalada", + "cs": "lezecká příležitost" + }, + "description": { + "nl": "Een klimgelegenheid", + "de": "Eine Klettereinrichtung", + "en": "A climbing opportunity", + "ja": "登坂教室", + "nb_NO": "En klatremulighet", + "fr": "Opportunité d’escalade", + "it": "Un’opportunità di arrampicata", + "ca": "Una oportunitat d'escalada", + "cs": "Lezecká příležitost" + } + } ], "tagRenderings": [ "images", @@ -298,58 +351,5 @@ "climbing.bouldering" ] } - ], - "presets": [ - { - "tags": [ - "sport=climbing" - ], - "title": { - "en": "a climbing opportunity", - "nl": "een klimgelegenheid", - "de": "eine Klettereinrichtung", - "ja": "登坂教室", - "nb_NO": "en klatremulighet", - "fr": "une opportunité d’escalade", - "it": "una opportunità di arrampicata", - "ca": "una oportuinitat d'escalada", - "cs": "lezecká příležitost" - }, - "description": { - "nl": "Een klimgelegenheid", - "de": "Eine Klettereinrichtung", - "en": "A climbing opportunity", - "ja": "登坂教室", - "nb_NO": "En klatremulighet", - "fr": "Opportunité d’escalade", - "it": "Un’opportunità di arrampicata", - "ca": "Una oportunitat d'escalada", - "cs": "Lezecká příležitost" - } - } - ], - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/climbing/climbing_no_rope.svg" - } - ] - } - ], - "lineRendering": [ - { - "dashArray": "8 16", - "lineCap": "square", - "color": "#d38d5fAA", - "fill": "no", - "width": "8" - } ] } diff --git a/assets/layers/climbing_club/climbing_club.json b/assets/layers/climbing_club/climbing_club.json index 77b3495c2..2a8ce131f 100644 --- a/assets/layers/climbing_club/climbing_club.json +++ b/assets/layers/climbing_club/climbing_club.json @@ -14,7 +14,19 @@ "ca": "Club d'escalada", "cs": "Lezecký klub" }, - "minzoom": 10, + "description": { + "de": "Ein Kletterverein oder -organisation", + "nl": "Een klimclub of organisatie", + "en": "A climbing club or organisation", + "ja": "クライミングクラブや団体", + "zh_Hant": "攀岩社團或組織", + "nb_NO": "En klatreklubb eller organisasjoner", + "fr": "Club ou association d’escalade", + "it": "Un club o associazione di arrampacata", + "hu": "Mászóegyesület vagy -szervezet", + "ca": "Un club d'escalada o organització", + "cs": "Lezecký klub nebo organizace" + }, "source": { "osmTags": { "or": [ @@ -33,6 +45,7 @@ ] } }, + "minzoom": 10, "title": { "render": { "en": "Climbing club", @@ -64,55 +77,36 @@ } ] }, - "description": { - "de": "Ein Kletterverein oder -organisation", - "nl": "Een klimclub of organisatie", - "en": "A climbing club or organisation", - "ja": "クライミングクラブや団体", - "zh_Hant": "攀岩社團或組織", - "nb_NO": "En klatreklubb eller organisasjoner", - "fr": "Club ou association d’escalade", - "it": "Un club o associazione di arrampacata", - "hu": "Mászóegyesület vagy -szervezet", - "ca": "Un club d'escalada o organització", - "cs": "Lezecký klub nebo organizace" - }, - "tagRenderings": [ + "pointRendering": [ { - "render": { - "en": "{name}", - "nl": "{name}", - "de": "{name}", - "ca": "{name}", - "fr": "{name}", - "id": "{name}", - "ru": "{name}", - "ja": "{name}", - "zh_Hant": "{name}", - "it": "{name}", - "hu": "{name}", - "cs": "{name}" + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] }, - "question": { - "en": "What is the name of this climbing club or NGO?", - "de": "Wie lautet der Name dieses Vereins oder Organisation?", - "nl": "Wat is de naam van deze klimclub?", - "ja": "この登山クラブやNGOの名前は何ですか?", - "fr": "Quel est le nom du club ou de l’association ?", - "it": "Qual è il nome di questo club o associazione di arrampicata?", - "hu": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?", - "cs": "Jak se jmenuje tento lezecký klub nebo nevládní organizace?" - }, - "freeform": { - "key": "name" - }, - "id": "climbing_club-name" - }, - "website", - "email", - "phone", - "opening_hours" + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/climbing/club.svg" + } + ] + } ], + "lineRendering": [], "presets": [ { "tags": [ @@ -173,34 +167,40 @@ } } ], - "pointRendering": [ + "tagRenderings": [ { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] + "render": { + "en": "{name}", + "nl": "{name}", + "de": "{name}", + "ca": "{name}", + "fr": "{name}", + "id": "{name}", + "ru": "{name}", + "ja": "{name}", + "zh_Hant": "{name}", + "it": "{name}", + "hu": "{name}", + "cs": "{name}" }, - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/climbing/club.svg" - } - ] - } - ], - "lineRendering": [] + "question": { + "en": "What is the name of this climbing club or NGO?", + "de": "Wie lautet der Name dieses Vereins oder Organisation?", + "nl": "Wat is de naam van deze klimclub?", + "ja": "この登山クラブやNGOの名前は何ですか?", + "fr": "Quel est le nom du club ou de l’association ?", + "it": "Qual è il nome di questo club o associazione di arrampicata?", + "hu": "Mi a neve ennek a mászóegyesületnek vagy szervezetnek?", + "cs": "Jak se jmenuje tento lezecký klub nebo nevládní organizace?" + }, + "freeform": { + "key": "name" + }, + "id": "climbing_club-name" + }, + "website", + "email", + "phone", + "opening_hours" + ] } diff --git a/assets/layers/climbing_gym/climbing_gym.json b/assets/layers/climbing_gym/climbing_gym.json index cec26ed96..476845d0d 100644 --- a/assets/layers/climbing_gym/climbing_gym.json +++ b/assets/layers/climbing_gym/climbing_gym.json @@ -11,7 +11,17 @@ "ca": "Gimnasos d'escalada", "cs": "Lezecké tělocvičny" }, - "minzoom": 10, + "description": { + "de": "Eine Kletterhalle", + "en": "A climbing gym", + "ja": "クライミングジム", + "nl": "Een klimzaal", + "fr": "Une salle d’escalade", + "it": "Una palestra di arrampicata", + "ru": "Комплекс скалолазания", + "ca": "Un gimnàs d'escalada", + "cs": "Lezecká tělocvična" + }, "source": { "osmTags": { "and": [ @@ -20,6 +30,7 @@ ] } }, + "minzoom": 10, "title": { "render": { "nl": "Klimzaal", @@ -46,17 +57,50 @@ } ] }, - "description": { - "de": "Eine Kletterhalle", - "en": "A climbing gym", - "ja": "クライミングジム", - "nl": "Een klimzaal", - "fr": "Une salle d’escalade", - "it": "Una palestra di arrampicata", - "ru": "Комплекс скалолазания", - "ca": "Un gimnàs d'escalada", - "cs": "Lezecká tělocvična" - }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/climbing/climbing_gym.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "Climbing gym", + "nl": "Klimzaal", + "de": "Kletterhalle", + "cs": "Lezecká tělocvična" + }, + "tags": [ + "leisure=sports_centre", + "sport=climbing" + ] + } + ], "tagRenderings": [ "images", { @@ -495,49 +539,5 @@ "internet", "internet-fee", "internet-ssid" - ], - "presets": [ - { - "title": { - "en": "Climbing gym", - "nl": "Klimzaal", - "de": "Kletterhalle", - "cs": "Lezecká tělocvična" - }, - "tags": [ - "leisure=sports_centre", - "sport=climbing" - ] - } - ], - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/climbing/climbing_gym.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/climbing_opportunity/climbing_opportunity.json b/assets/layers/climbing_opportunity/climbing_opportunity.json index a83da0597..89fd5d679 100644 --- a/assets/layers/climbing_opportunity/climbing_opportunity.json +++ b/assets/layers/climbing_opportunity/climbing_opportunity.json @@ -16,7 +16,6 @@ "nl": "Laag met plaatsen waar klimmen _misschien_ mogelijk is. Deze wordt geladen als je ver inzoomt, om te voorkomen dat je per ongeluk dubbels maakt", "cs": "Záložní vrstva s předměty, na které je _možné_ lézt. Načítá se při velkém přiblížení, aby se zabránilo přidávání duplicitních položek" }, - "minzoom": 19, "source": { "osmTags": { "and": [ @@ -34,6 +33,7 @@ ] } }, + "minzoom": 19, "title": { "render": { "en": "Climbing opportunity?", @@ -46,6 +46,25 @@ "cs": "Lezecká příležitost?" } }, + "pointRendering": [ + { + "marker": [ + { + "icon": "./assets/themes/climbing/climbing_unknown.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "lineRendering": [ + { + "color": "#ddff55AA", + "width": "2" + } + ], "tagRenderings": [ { "id": "climbing-opportunity-name", @@ -127,24 +146,5 @@ } ] } - ], - "pointRendering": [ - { - "marker": [ - { - "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 fec5a003d..1015dcb32 100644 --- a/assets/layers/climbing_route/climbing_route.json +++ b/assets/layers/climbing_route/climbing_route.json @@ -18,7 +18,6 @@ "fr": "Une seule voie d'escalade et ses propriétés. Certaines propriétés sont dérivées des objets qui les contiennent", "cs": "Jedna lezecká cesta a její vlastnosti. Některé vlastnosti jsou odvozeny z obsahujících prvků" }, - "minzoom": 18, "source": { "osmTags": { "and": [ @@ -26,6 +25,7 @@ ] } }, + "minzoom": 18, "title": { "render": { "de": "Kleterroute", @@ -56,6 +56,68 @@ } ] }, + "pointRendering": [ + { + "iconSize": "28,28", + "location": [ + "point", + "centroid" + ], + "label": { + "mappings": [ + { + "if": { + "and": [ + "climbing:grade:french~*", + "name~*" + ] + }, + "then": "
    {name} {climbing:grade:french}
    " + }, + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/themes/climbing/climbing_route.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#0f0", + "width": "4" + } + ], + "presets": [ + { + "title": { + "en": "a climbing route", + "nl": "een klimroute", + "fr": "une voie d’escalade", + "de": "eine Kletterroute", + "it": "una via di arrampicata", + "ca": "una ruta d'escalada", + "cs": "lezecká trasa" + }, + "snapToLayer": [ + "climbing_opportunity" + ], + "tags": [ + "sport=climbing", + "climbing=route" + ] + } + ], "tagRenderings": [ "images", { @@ -220,67 +282,5 @@ "key": "_embedding_features_with_rock:rock" } } - ], - "presets": [ - { - "title": { - "en": "a climbing route", - "nl": "een klimroute", - "fr": "une voie d’escalade", - "de": "eine Kletterroute", - "it": "una via di arrampicata", - "ca": "una ruta d'escalada", - "cs": "lezecká trasa" - }, - "snapToLayer": [ - "climbing_opportunity" - ], - "tags": [ - "sport=climbing", - "climbing=route" - ] - } - ], - "pointRendering": [ - { - "iconSize": "28,28", - "location": [ - "point", - "centroid" - ], - "label": { - "mappings": [ - { - "if": { - "and": [ - "climbing:grade:french~*", - "name~*" - ] - }, - "then": "
    {name} {climbing:grade:french}
    " - }, - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/themes/climbing/climbing_route.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#0f0", - "width": "4" - } ] } diff --git a/assets/layers/clock/clock.json b/assets/layers/clock/clock.json index 462c18473..09423842b 100644 --- a/assets/layers/clock/clock.json +++ b/assets/layers/clock/clock.json @@ -17,6 +17,10 @@ "cs": "Vrstva s veřejnými hodinami", "pl": "Warstwa z zegarami publicznymi" }, + "source": { + "osmTags": "amenity=clock" + }, + "minzoom": 13, "title": { "render": { "en": "Clock", @@ -28,10 +32,88 @@ "cs": "Hodiny" } }, - "source": { - "osmTags": "amenity=clock" - }, - "minzoom": 13, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": { + "render": "./assets/layers/clock/clock.svg", + "mappings": [ + { + "if": "display=digital", + "then": "./assets/layers/clock/clock_digital.svg" + } + ] + } + } + ], + "iconSize": { + "render": "40,40,center", + "mappings": [ + { + "if": "display=digital", + "then": "50,20,center" + } + ] + } + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=clock" + ], + "title": { + "en": "a clock", + "nl": "een klok", + "de": "eine Uhr", + "ca": "un rellotge", + "fr": "une horloge", + "pl": "zegar", + "cs": "hodiny" + }, + "description": { + "en": "A publicly visible clock", + "nl": "Een publiekelijk zichtbare klok", + "de": "Eine öffentlich sichtbare Uhr", + "ca": "Un rellotge visible públicament", + "fr": "Une horloge visible de l'espace public", + "cs": "Veřejně viditelné hodiny" + } + }, + { + "tags": [ + "amenity=clock", + "support=wall_mounted" + ], + "title": { + "en": "a wall-mounted clock", + "nl": "een klok aan een muur", + "de": "eine an der Wand montierte Uhr", + "ca": "un rellotge muntat en un paret", + "fr": "une horloge fixée au mur", + "pl": "zegar na ścianie", + "cs": "hodiny na stěně" + }, + "description": { + "en": "A publicly visible clock mounted on a wall", + "nl": "Een publiekelijk zichtbare klok aan een muur", + "de": "Eine öffentlich sichtbare Uhr an einer Wand", + "ca": "Un rellotge visible públicament muntat en una paret", + "fr": "Une horloge publique fixée sur un mur", + "pl": "Publicznie widoczny zegar zamontowany na ścianie", + "cs": "Veřejně viditelné hodiny umístěné na stěně" + }, + "snapToLayer": [ + "walls_and_buildings" + ] + } + ], "tagRenderings": [ "images", { @@ -479,88 +561,6 @@ ] } ], - "presets": [ - { - "tags": [ - "amenity=clock" - ], - "title": { - "en": "a clock", - "nl": "een klok", - "de": "eine Uhr", - "ca": "un rellotge", - "fr": "une horloge", - "pl": "zegar", - "cs": "hodiny" - }, - "description": { - "en": "A publicly visible clock", - "nl": "Een publiekelijk zichtbare klok", - "de": "Eine öffentlich sichtbare Uhr", - "ca": "Un rellotge visible públicament", - "fr": "Une horloge visible de l'espace public", - "cs": "Veřejně viditelné hodiny" - } - }, - { - "tags": [ - "amenity=clock", - "support=wall_mounted" - ], - "title": { - "en": "a wall-mounted clock", - "nl": "een klok aan een muur", - "de": "eine an der Wand montierte Uhr", - "ca": "un rellotge muntat en un paret", - "fr": "une horloge fixée au mur", - "pl": "zegar na ścianie", - "cs": "hodiny na stěně" - }, - "description": { - "en": "A publicly visible clock mounted on a wall", - "nl": "Een publiekelijk zichtbare klok aan een muur", - "de": "Eine öffentlich sichtbare Uhr an einer Wand", - "ca": "Un rellotge visible públicament muntat en una paret", - "fr": "Une horloge publique fixée sur un mur", - "pl": "Publicznie widoczny zegar zamontowany na ścianie", - "cs": "Veřejně viditelné hodiny umístěné na stěně" - }, - "snapToLayer": [ - "walls_and_buildings" - ] - } - ], - "allowMove": true, "deletion": true, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": { - "render": "./assets/layers/clock/clock.svg", - "mappings": [ - { - "if": "display=digital", - "then": "./assets/layers/clock/clock_digital.svg" - } - ] - } - } - ], - "iconSize": { - "render": "40,40,center", - "mappings": [ - { - "if": "display=digital", - "then": "50,20,center" - } - ] - } - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/conflation/conflation.json b/assets/layers/conflation/conflation.json index e66d6e0b1..f21b5f715 100644 --- a/assets/layers/conflation/conflation.json +++ b/assets/layers/conflation/conflation.json @@ -1,9 +1,9 @@ { "id": "conflation", - "description": "If the import-button moves OSM points, the imported way points or conflates, a preview is shown. This layer defines how this preview is rendered. This layer cannot be included in a theme.", - "minzoom": 1, - "source": "special", "name": "Conflation", + "description": "If the import-button moves OSM points, the imported way points or conflates, a preview is shown. This layer defines how this preview is rendered. This layer cannot be included in a theme.", + "source": "special", + "minzoom": 1, "title": "Conflation", "pointRendering": [ { diff --git a/assets/layers/crab_address/crab_address.json b/assets/layers/crab_address/crab_address.json index d8403b5c5..d9f56e0e8 100644 --- a/assets/layers/crab_address/crab_address.json +++ b/assets/layers/crab_address/crab_address.json @@ -1,5 +1,6 @@ { "id": "crab_address", + "name": "CRAB-addressen", "description": "Address data for Flanders by the governement, suited for import into OpenStreetMap. Datadump from 2021-10-26. This layer contains only visualisation logic. Import buttons should be added via an override. Note that HNRLABEL contains the original value, whereas _HNRLABEL contains a slightly cleaned version", "source": { "osmTags": "HUISNR~*", @@ -7,19 +8,10 @@ "geoJsonZoomLevel": 18, "maxCacheAge": 0 }, - "name": "CRAB-addressen", - "title": "CRAB-adres", "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})" - } - } - ], + "title": "CRAB-adres", "pointRendering": [ { "location": [ @@ -36,5 +28,13 @@ ] } ], - "lineRendering": [] + "lineRendering": [], + "tagRenderings": [ + { + "id": "render_crab", + "render": { + "nl": "Volgens het CRAB ligt hier {STRAATNM} {HUISNR} (label: {HNRLABEL})" + } + } + ] } diff --git a/assets/layers/crossings/crossings.json b/assets/layers/crossings/crossings.json index 4c65c6eb8..760d2be5b 100644 --- a/assets/layers/crossings/crossings.json +++ b/assets/layers/crossings/crossings.json @@ -69,6 +69,36 @@ } ] }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/layers/crossings/pedestrian_crossing.svg", + "mappings": [ + { + "if": { + "or": [ + "highway=traffic_signals", + "crossing=traffic_signals" + ] + }, + "then": "./assets/layers/crossings/traffic_lights.svg" + } + ] + } + } + ], + "location": [ + "point" + ] + } + ], + "lineRendering": [ + { + "width": "5" + } + ], "presets": [ { "title": { @@ -696,35 +726,5 @@ ], "filter": [ "tactile_paving_advanced" - ], - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/layers/crossings/pedestrian_crossing.svg", - "mappings": [ - { - "if": { - "or": [ - "highway=traffic_signals", - "crossing=traffic_signals" - ] - }, - "then": "./assets/layers/crossings/traffic_lights.svg" - } - ] - } - } - ], - "location": [ - "point" - ] - } - ], - "lineRendering": [ - { - "width": "5" - } ] } diff --git a/assets/layers/current_view/current_view.json b/assets/layers/current_view/current_view.json index 45c7142c0..70b0b5e83 100644 --- a/assets/layers/current_view/current_view.json +++ b/assets/layers/current_view/current_view.json @@ -4,12 +4,12 @@ "source": "special", "shownByDefault": false, "title": "Current View", - "tagRenderings": [], "popupInFloatover": true, "pointRendering": [], "lineRendering": [ { "color": "#cccc0088" } - ] + ], + "tagRenderings": [] } diff --git a/assets/layers/cycleways_and_roads/cycleways_and_roads.json b/assets/layers/cycleways_and_roads/cycleways_and_roads.json index 6191c3b59..e27cb0579 100644 --- a/assets/layers/cycleways_and_roads/cycleways_and_roads.json +++ b/assets/layers/cycleways_and_roads/cycleways_and_roads.json @@ -9,7 +9,15 @@ "ca": "Vies ciclistes i carreteres", "cs": "Cyklostezky a silnice" }, - "minzoom": 16, + "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", + "cs": "Veškerá infrastruktura, kterou může někdo projet na kole, doplněná o otázky týkající se této infrastruktury" + }, "source": { "osmTags": { "or": [ @@ -39,6 +47,7 @@ ] } }, + "minzoom": 16, "title": { "render": { "en": "Way", @@ -207,6 +216,92 @@ } ] }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point" + ], + "marker": [ + { + "icon": "./assets/themes/cycle_infra/bicycleway.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": { + "render": "rgba(170, 170, 170, 0.7)", + "mappings": [ + { + "if": "highway=cycleway", + "then": "rgba(0, 189, 141, 0.7)" + }, + { + "if": "highway=path", + "then": "rgba(204, 74, 207, 0.7)" + }, + { + "if": "cycleway=track", + "then": "rgba(113, 3, 200, 0.7)" + }, + { + "if": "cycleway=shared_lane", + "then": "rgba(74, 59, 247, 0.7)" + }, + { + "if": "cycleway=lane", + "then": "rgba(254, 155, 6, 0.9)" + }, + { + "if": "cyclestreet=yes", + "then": "rgba(57, 159, 191, 0.7)" + }, + { + "if": "cycleway=no", + "then": "rgba(0, 0, 0, 0.7)" + } + ] + }, + "width": "8", + "dashArray": { + "render": "", + "mappings": [ + { + "if": { + "or": [ + "oneway=yes", + { + "or": [ + "highway=cycleway", + "highway=path" + ] + } + ] + }, + "then": "" + }, + { + "if": "cycleway=track", + "then": "" + }, + { + "if": "cycleway=shared_lane", + "then": "15 30" + }, + { + "if": "cycleway=lane", + "then": "25 15 15 15 25" + }, + { + "if": "cyclestreet=yes", + "then": "" + } + ] + } + } + ], "tagRenderings": [ { "question": { @@ -1807,100 +1902,5 @@ ] } ], - "allowSplit": true, - "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", - "cs": "Veškerá infrastruktura, kterou může někdo projet na kole, doplněná o otázky týkající se této infrastruktury" - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point" - ], - "marker": [ - { - "icon": "./assets/themes/cycle_infra/bicycleway.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": { - "render": "rgba(170, 170, 170, 0.7)", - "mappings": [ - { - "if": "highway=cycleway", - "then": "rgba(0, 189, 141, 0.7)" - }, - { - "if": "highway=path", - "then": "rgba(204, 74, 207, 0.7)" - }, - { - "if": "cycleway=track", - "then": "rgba(113, 3, 200, 0.7)" - }, - { - "if": "cycleway=shared_lane", - "then": "rgba(74, 59, 247, 0.7)" - }, - { - "if": "cycleway=lane", - "then": "rgba(254, 155, 6, 0.9)" - }, - { - "if": "cyclestreet=yes", - "then": "rgba(57, 159, 191, 0.7)" - }, - { - "if": "cycleway=no", - "then": "rgba(0, 0, 0, 0.7)" - } - ] - }, - "width": "8", - "dashArray": { - "render": "", - "mappings": [ - { - "if": { - "or": [ - "oneway=yes", - { - "or": [ - "highway=cycleway", - "highway=path" - ] - } - ] - }, - "then": "" - }, - { - "if": "cycleway=track", - "then": "" - }, - { - "if": "cycleway=shared_lane", - "then": "15 30" - }, - { - "if": "cycleway=lane", - "then": "25 15 15 15 25" - }, - { - "if": "cyclestreet=yes", - "then": "" - } - ] - } - } - ] + "allowSplit": true } diff --git a/assets/layers/defibrillator/defibrillator.json b/assets/layers/defibrillator/defibrillator.json index 9f39b3504..07a4ea92c 100644 --- a/assets/layers/defibrillator/defibrillator.json +++ b/assets/layers/defibrillator/defibrillator.json @@ -46,6 +46,35 @@ "cs": "Defibrilátor" } }, + "pointRendering": [ + { + "marker": [ + { + "icon": "square", + "color": { + "render": "#008754", + "mappings": [ + { + "if": "_recently_surveyed=true", + "then": "#28ba3d" + } + ] + } + }, + { + "icon": "./assets/layers/defibrillator/defibrillator.svg" + } + ], + "location": [ + "point" + ] + } + ], + "lineRendering": [ + { + "color": "#0000ff" + } + ], "presets": [ { "title": { @@ -716,6 +745,10 @@ "id": "defibrillator-fixme" } ], + "filter": [ + "has_image", + "open_now" + ], "deletion": { "softDeletionTags": { "and": [ @@ -728,38 +761,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuracy": true - }, - "filter": [ - "has_image", - "open_now" - ], - "pointRendering": [ - { - "marker": [ - { - "icon": "square", - "color": { - "render": "#008754", - "mappings": [ - { - "if": "_recently_surveyed=true", - "then": "#28ba3d" - } - ] - } - }, - { - "icon": "./assets/layers/defibrillator/defibrillator.svg" - } - ], - "location": [ - "point" - ] - } - ], - "lineRendering": [ - { - "color": "#0000ff" - } - ] + } } diff --git a/assets/layers/dentist/dentist.json b/assets/layers/dentist/dentist.json index 6eb01b2ee..ef880f296 100644 --- a/assets/layers/dentist/dentist.json +++ b/assets/layers/dentist/dentist.json @@ -20,6 +20,7 @@ "source": { "osmTags": "amenity=dentist" }, + "minzoom": 13, "title": { "render": { "en": "Dentist Office {name}", @@ -30,7 +31,41 @@ "cs": "Zubní ordinace {name}" } }, - "minzoom": 13, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/dentist/dentist.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a dentists office", + "de": "eine Zahnarztpraxis", + "nl": "een tandartspraktijk", + "fr": "un cabinet de dentistes", + "ca": "una clínica dental", + "cs": "zubní ordinace" + }, + "tags": [ + "amenity=dentist" + ] + } + ], "tagRenderings": [ "images", "opening_hours", @@ -60,44 +95,9 @@ "id": "name" } ], - "presets": [ - { - "title": { - "en": "a dentists office", - "de": "eine Zahnarztpraxis", - "nl": "een tandartspraktijk", - "fr": "un cabinet de dentistes", - "ca": "una clínica dental", - "cs": "zubní ordinace" - }, - "tags": [ - "amenity=dentist" - ] - } - ], "filter": [ "open_now" ], "deletion": true, - "allowMove": true, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/dentist/dentist.svg" - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/direction/direction.json b/assets/layers/direction/direction.json index 2ff9d63bd..ae6138c44 100644 --- a/assets/layers/direction/direction.json +++ b/assets/layers/direction/direction.json @@ -10,18 +10,6 @@ "ca": "Direcció de la visualització", "cs": "Vizualizace směru" }, - "minzoom": 16, - "source": { - "osmTags": { - "or": [ - "camera:direction~*", - "direction~*" - ] - } - }, - "doNotDownload": true, - "passAllFeatures": true, - "title": null, "description": { "en": "This layer visualizes directions", "nl": "Deze laag toont de oriëntatie van een object", @@ -32,9 +20,16 @@ "ca": "Aquesta capa visualitza direccions", "cs": "Tato vrstva zobrazuje směry" }, - "tagRenderings": [], - "stroke": "0", - "presets": [], + "source": { + "osmTags": { + "or": [ + "camera:direction~*", + "direction~*" + ] + } + }, + "minzoom": 16, + "title": null, "pointRendering": [ { "iconSize": "200,200", @@ -56,5 +51,10 @@ { "color": "--catch-detail-color" } - ] + ], + "passAllFeatures": true, + "doNotDownload": true, + "presets": [], + "tagRenderings": [], + "stroke": "0" } diff --git a/assets/layers/doctors/doctors.json b/assets/layers/doctors/doctors.json index ae7be7cc9..199dbfc74 100644 --- a/assets/layers/doctors/doctors.json +++ b/assets/layers/doctors/doctors.json @@ -21,6 +21,7 @@ "source": { "osmTags": "amenity=doctors" }, + "minzoom": 13, "title": { "render": { "en": "Doctors Office {name}", @@ -31,7 +32,41 @@ "cs": "Lékařská ordinace {name}" } }, - "minzoom": 13, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/doctors/doctors.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a doctors office", + "de": "eine Arztpraxis", + "nl": "een dokterspraktijk", + "fr": "un cabinet médical", + "ca": "un consultori mèdic", + "cs": "lékařská ordinace" + }, + "tags": [ + "amenity=doctors" + ] + } + ], "tagRenderings": [ "images", { @@ -137,44 +172,9 @@ ] } ], - "presets": [ - { - "title": { - "en": "a doctors office", - "de": "eine Arztpraxis", - "nl": "een dokterspraktijk", - "fr": "un cabinet médical", - "ca": "un consultori mèdic", - "cs": "lékařská ordinace" - }, - "tags": [ - "amenity=doctors" - ] - } - ], "filter": [ "open_now" ], "deletion": true, - "allowMove": true, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/doctors/doctors.svg" - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/dogpark/dogpark.json b/assets/layers/dogpark/dogpark.json index 6e9ee36a5..441df8a2e 100644 --- a/assets/layers/dogpark/dogpark.json +++ b/assets/layers/dogpark/dogpark.json @@ -1,5 +1,14 @@ { "id": "dogpark", + "name": { + "en": "dog parks", + "da": "hundeskove", + "de": "Hundeparks", + "es": "parques de perros", + "nl": "hondenweides", + "ca": "parcs de gossos", + "cs": "psí parky" + }, "description": "A layer showing dogparks, which are areas where dog are allowed to run without a leash", "source": { "osmTags": { @@ -15,6 +24,54 @@ } }, "minzoom": 10, + "title": { + "render": { + "en": "dog park", + "da": "hundeskov", + "de": "Hundepark", + "es": "parque para perros", + "nl": "hondenweide", + "ca": "parc per a gossos", + "cs": "psí park" + }, + "mappings": [ + { + "if": "name~*", + "then": { + "*": "{name}" + } + } + ] + }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "40,40", + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "anchor": "center", + "marker": [ + { + "icon": "./assets/layers/dogpark/dog-park.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#ff0", + "width": 5 + } + ], "presets": [ { "title": { @@ -40,34 +97,6 @@ } } ], - "name": { - "en": "dog parks", - "da": "hundeskove", - "de": "Hundeparks", - "es": "parques de perros", - "nl": "hondenweides", - "ca": "parcs de gossos", - "cs": "psí parky" - }, - "title": { - "render": { - "en": "dog park", - "da": "hundeskov", - "de": "Hundepark", - "es": "parque para perros", - "nl": "hondenweide", - "ca": "parc per a gossos", - "cs": "psí park" - }, - "mappings": [ - { - "if": "name~*", - "then": { - "*": "{name}" - } - } - ] - }, "tagRenderings": [ { "id": "dogpark-fenced", @@ -183,34 +212,5 @@ }, "reviews", "images" - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "40,40", - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "anchor": "center", - "marker": [ - { - "icon": "./assets/layers/dogpark/dog-park.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#ff0", - "width": 5 - } ] } diff --git a/assets/layers/drinking_water/drinking_water.json b/assets/layers/drinking_water/drinking_water.json index 326769185..f02d90815 100644 --- a/assets/layers/drinking_water/drinking_water.json +++ b/assets/layers/drinking_water/drinking_water.json @@ -14,21 +14,15 @@ "es": "Agua potable", "cs": "Pitná voda" }, - "title": { - "render": { - "en": "Drinking water", - "nl": "Drinkbaar water", - "fr": "Eau potable", - "gl": "Auga potábel", - "de": "Trinkwasserstelle", - "it": "Acqua potabile", - "ru": "Питьевая вода", - "id": "Air minum", - "hu": "Ivóvíz", - "ca": "Aigua potable", - "es": "Agua potable", - "cs": "Pitná voda" - } + "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", + "cs": "Vrstva zobrazující fontány s pitnou vodou" }, "source": { "osmTags": { @@ -50,6 +44,53 @@ "_closest_other_drinking_water_id=get(feat)('_closest_other_drinking_water')?.id", "_closest_other_drinking_water_distance=Math.floor(Number(get(feat)('_closest_other_drinking_water')?.distance))" ], + "title": { + "render": { + "en": "Drinking water", + "nl": "Drinkbaar water", + "fr": "Eau potable", + "gl": "Auga potábel", + "de": "Trinkwasserstelle", + "it": "Acqua potabile", + "ru": "Питьевая вода", + "id": "Air minum", + "hu": "Ivóvíz", + "ca": "Aigua potable", + "es": "Agua potable", + "cs": "Pitná voda" + } + }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": { + "or": [ + "operational_status=broken", + "operational_status=closed" + ] + }, + "then": "close:#c33" + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "pin", + "color": "#6BC4F7" + }, + { + "icon": "./assets/layers/drinking_water/drips.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -256,46 +297,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "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", - "cs": "Vrstva zobrazující fontány s pitnou vodou" - }, - "pointRendering": [ - { - "iconBadges": [ - { - "if": { - "or": [ - "operational_status=broken", - "operational_status=closed" - ] - }, - "then": "close:#c33" - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "pin", - "color": "#6BC4F7" - }, - { - "icon": "./assets/layers/drinking_water/drips.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/elevator/elevator.json b/assets/layers/elevator/elevator.json index 805ca5c2d..0d59e125d 100644 --- a/assets/layers/elevator/elevator.json +++ b/assets/layers/elevator/elevator.json @@ -10,10 +10,6 @@ "pl": "Winda", "cs": "Výtah" }, - "source": { - "osmTags": "highway=elevator" - }, - "minzoom": 13, "description": { "en": "This layer show elevators and asks for operational status and elevator dimensions. Useful for wheelchair accessibility information", "fr": "Ce calque montre les ascenseurs et demande l'état opérationnel et les dimensions de l'ascenseur. Utile pour les informations sur l'accessibilité en fauteuil roulant", @@ -22,6 +18,10 @@ "ca": "Aquesta capa mostra ascensors i demana l'estat operatiu i les dimensions de l'ascensor. Útil per obtenir informació sobre l'accessibilitat en cadira de rodes", "cs": "Tato vrstva zobrazuje výtahy a ptá se na provozní stav a rozměry výtahu. Užitečné pro informace o bezbariérovém přístupu" }, + "source": { + "osmTags": "highway=elevator" + }, + "minzoom": 13, "title": { "render": { "en": "Elevator", @@ -34,6 +34,53 @@ "cs": "Výtah" } }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": { + "or": [ + "operational_status=broken", + "operational_status=closed" + ] + }, + "then": "close:#c33" + } + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/elevator/elevator_wheelchair.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "an elevator", + "nl": "een lift", + "fr": "un ascenseur", + "de": "einen Aufzug", + "ca": "un ascensor", + "pl": "winda", + "cs": "výtah" + }, + "tags": [ + "highway=elevator" + ] + } + ], "tagRenderings": [ "images", "multilevels", @@ -300,22 +347,6 @@ } } ], - "presets": [ - { - "title": { - "en": "an elevator", - "nl": "een lift", - "fr": "un ascenseur", - "de": "einen Aufzug", - "ca": "un ascensor", - "pl": "winda", - "cs": "výtah" - }, - "tags": [ - "highway=elevator" - ] - } - ], "units": [ { "appliesToKey": [ @@ -361,36 +392,5 @@ } ] } - ], - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": { - "or": [ - "operational_status=broken", - "operational_status=closed" - ] - }, - "then": "close:#c33" - } - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/elevator/elevator_wheelchair.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/elongated_coin/elongated_coin.json b/assets/layers/elongated_coin/elongated_coin.json index 73c887090..41e2e5b87 100644 --- a/assets/layers/elongated_coin/elongated_coin.json +++ b/assets/layers/elongated_coin/elongated_coin.json @@ -31,6 +31,46 @@ "cs": "Ražba mincí" } }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "marker": [ + { + "icon": "circle", + "color": "#FFFFFF00" + }, + { + "icon": "./assets/themes/elongated_coin/penny.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a penny press", + "de": "Einen Münzprägeautomaten", + "es": "una prensa de centavo", + "ca": "una premsa de cèntim", + "cs": "ražba mincí" + }, + "tags": [ + "amenity=vending_machine", + "vending=elongated_coin", + "payment:coins=yes" + ] + } + ], "tagRenderings": [ "images", "opening_hours_24_7", @@ -394,54 +434,14 @@ "level", "check_date" ], - "presets": [ - { - "title": { - "en": "a penny press", - "de": "Einen Münzprägeautomaten", - "es": "una prensa de centavo", - "ca": "una premsa de cèntim", - "cs": "ražba mincí" - }, - "tags": [ - "amenity=vending_machine", - "vending=elongated_coin", - "payment:coins=yes" - ] - } - ], - "allowMove": { - "enableImproveAccuracy": true, - "enableRelocation": true - }, - "deletion": true, "filter": [ "open_now", "accepts_debit_cards", "accepts_credit_cards" ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "marker": [ - { - "icon": "circle", - "color": "#FFFFFF00" - }, - { - "icon": "./assets/themes/elongated_coin/penny.svg" - } - ] - } - ], - "lineRendering": [] + "deletion": true, + "allowMove": { + "enableImproveAccuracy": true, + "enableRelocation": true + } } diff --git a/assets/layers/entrance/entrance.json b/assets/layers/entrance/entrance.json index 6e499586f..3d5f77edc 100644 --- a/assets/layers/entrance/entrance.json +++ b/assets/layers/entrance/entrance.json @@ -43,6 +43,66 @@ "cs": "Vchod" } }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/entrance/entrance.svg", + "mappings": [ + { + "if": "entrance=emergency", + "then": "./assets/layers/entrance/emergency_door.svg" + } + ] + } + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "an entrance", + "fr": "une entrée", + "de": "einen Eingang", + "nl": "een toegang", + "ca": "una entrada", + "cs": "vchod" + }, + "tags": [ + "entrance=yes" + ], + "snapToLayer": [ + "walls_and_buildings", + "pedestrian_path" + ] + }, + { + "title": { + "en": "an indoor door", + "de": "eine Innentür", + "nl": "een binnendeur", + "ca": "una porta interior", + "cs": "vnitřní dveře" + }, + "tags": [ + "indoor=door" + ], + "snapToLayer": [ + "indoors" + ] + } + ], "tagRenderings": [ "images", "level", @@ -505,40 +565,6 @@ ] } ], - "presets": [ - { - "title": { - "en": "an entrance", - "fr": "une entrée", - "de": "einen Eingang", - "nl": "een toegang", - "ca": "una entrada", - "cs": "vchod" - }, - "tags": [ - "entrance=yes" - ], - "snapToLayer": [ - "walls_and_buildings", - "pedestrian_path" - ] - }, - { - "title": { - "en": "an indoor door", - "de": "eine Innentür", - "nl": "een binnendeur", - "ca": "una porta interior", - "cs": "vnitřní dveře" - }, - "tags": [ - "indoor=door" - ], - "snapToLayer": [ - "indoors" - ] - } - ], "units": [ { "appliesToKey": [ @@ -583,31 +609,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/entrance/entrance.svg", - "mappings": [ - { - "if": "entrance=emergency", - "then": "./assets/layers/entrance/emergency_door.svg" - } - ] - } - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/etymology/etymology.json b/assets/layers/etymology/etymology.json index 65894aece..aefe8f6ed 100644 --- a/assets/layers/etymology/etymology.json +++ b/assets/layers/etymology/etymology.json @@ -1,6 +1,5 @@ { "id": "etymology", - "#": "A layer showing all objects having etymology info (either via `name:etymology:wikidata` or `name:etymology`. The intention is that this layer is reused for a certain category to also _ask_ for information", "name": { "en": "Has etymology", "nl": "Heeft etymology info", @@ -9,7 +8,15 @@ "ca": "Té etimologia", "cs": "Má etymologii" }, - "minzoom": 12, + "description": { + "en": "All objects which have an etymology known", + "nl": "Alle lagen met een gelinkt etymology", + "de": "Alle Objekte, die eine bekannte Namensherkunft haben", + "hu": "Minden olyan objektum, amelynél ismert a nevének az eredete", + "fr": "Tous les objets dont l’étymologie est connue", + "ca": "Tots els objectes que tenen una etimologia coneguda", + "cs": "Všechny objekty, které mají známou etymologii" + }, "source": { "osmTags": { "and": [ @@ -22,22 +29,70 @@ ] } }, + "calculatedTags": [ + "_same_name_ids=closestn(feat)('*', 250, undefined, 5000)?.filter(f => f.feat.properties.name === feat.properties.name)?.map(f => f.feat.properties.id)??[]" + ], + "minzoom": 12, "title": { "render": { "*": "{name}" } }, - "description": { - "en": "All objects which have an etymology known", - "nl": "Alle lagen met een gelinkt etymology", - "de": "Alle Objekte, die eine bekannte Namensherkunft haben", - "hu": "Minden olyan objektum, amelynél ismert a nevének az eredete", - "fr": "Tous les objets dont l’étymologie est connue", - "ca": "Tots els objectes que tenen una etimologia coneguda", - "cs": "Všechny objekty, které mají známou etymologii" - }, - "calculatedTags": [ - "_same_name_ids=closestn(feat)('*', 250, undefined, 5000)?.filter(f => f.feat.properties.name === feat.properties.name)?.map(f => f.feat.properties.id)??[]" + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point" + ], + "anchor": "center", + "marker": [ + { + "icon": "pin", + "color": { + "render": "#05d7fcaa", + "mappings": [ + { + "if": { + "and": [ + "name:etymology=", + "name:etymology:wikidata=" + ] + }, + "then": "#fcca05aa" + } + ] + } + } + ] + } + ], + "lineRendering": [ + { + "color": { + "render": "#05d7fcaa", + "mappings": [ + { + "if": { + "and": [ + "name:etymology=", + "name:etymology:wikidata=" + ] + }, + "then": "#fcca05aa" + } + ] + }, + "fill": "no", + "width": { + "render": "8", + "mappings": [ + { + "if": "_geometry:type=Polygon", + "then": "16" + } + ] + } + } ], "tagRenderings": [ { @@ -277,60 +332,5 @@ "condition": "wikidata~*" } ], - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point" - ], - "anchor": "center", - "marker": [ - { - "icon": "pin", - "color": { - "render": "#05d7fcaa", - "mappings": [ - { - "if": { - "and": [ - "name:etymology=", - "name:etymology:wikidata=" - ] - }, - "then": "#fcca05aa" - } - ] - } - } - ] - } - ], - "lineRendering": [ - { - "color": { - "render": "#05d7fcaa", - "mappings": [ - { - "if": { - "and": [ - "name:etymology=", - "name:etymology:wikidata=" - ] - }, - "then": "#fcca05aa" - } - ] - }, - "fill": "no", - "width": { - "render": "8", - "mappings": [ - { - "if": "_geometry:type=Polygon", - "then": "16" - } - ] - } - } - ] + "#": "A layer showing all objects having etymology info (either via `name:etymology:wikidata` or `name:etymology`. The intention is that this layer is reused for a certain category to also _ask_ for information" } diff --git a/assets/layers/extinguisher/extinguisher.json b/assets/layers/extinguisher/extinguisher.json index c52a33dcd..57c5b6c8a 100644 --- a/assets/layers/extinguisher/extinguisher.json +++ b/assets/layers/extinguisher/extinguisher.json @@ -14,30 +14,6 @@ "pl": "Mapa gaśnic", "cs": "Mapa hasicích přístrojů" }, - "minzoom": 14, - "source": { - "osmTags": { - "and": [ - "emergency=fire_extinguisher" - ] - } - }, - "title": { - "render": { - "en": "Extinguishers", - "ru": "Огнетушители", - "ja": "消火器", - "nb_NO": "Brannslokkere", - "fr": "Exctincteurs", - "de": "Feuerlöscher", - "it": "Estintori", - "nl": "Brandblussers", - "ca": "Extintors", - "es": "Extintores", - "pl": "Gaśnice", - "cs": "Hasicí přístroje" - } - }, "description": { "en": "Map layer to show fire extinguishers.", "ja": "消火栓を表示するマップレイヤ。", @@ -54,6 +30,82 @@ "pl": "Warstwa mapy pokazująca gaśnice.", "cs": "Mapová vrstva pro zobrazení hasicích přístrojů." }, + "source": { + "osmTags": { + "and": [ + "emergency=fire_extinguisher" + ] + } + }, + "minzoom": 14, + "title": { + "render": { + "en": "Extinguishers", + "ru": "Огнетушители", + "ja": "消火器", + "nb_NO": "Brannslokkere", + "fr": "Exctincteurs", + "de": "Feuerlöscher", + "it": "Estintori", + "nl": "Brandblussers", + "ca": "Extintors", + "es": "Extintores", + "pl": "Gaśnice", + "cs": "Hasicí přístroje" + } + }, + "pointRendering": [ + { + "iconSize": "20,20", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/hailhydrant/Twemoji12_1f9ef.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "emergency=fire_extinguisher" + ], + "title": { + "en": "a fire extinguisher", + "ja": "消火器", + "nb_NO": "en brannslukker", + "ru": "огнетушитель", + "fr": "une extincteur", + "de": "einen Feuerlöscher", + "it": "una estintore", + "nl": "een brandblusser", + "da": "en ildslukker", + "es": "un extintor", + "ca": "un extintor", + "pl": "gaśnica", + "cs": "hasicí přístroj" + }, + "description": { + "en": "A fire extinguisher is a small, portable device used to stop a fire", + "ja": "消火器は、火災を止めるために使用される小型で携帯可能な装置である", + "ru": "Огнетушитель - небольшое переносное устройство для тушения огня", + "fr": "Un extincteur est un appareil portatif servant à éteindre un feu", + "de": "Ein Feuerlöscher ist ein kleines, tragbares Gerät, das dazu dient, ein Feuer zu löschen", + "it": "Un estintore è un dispositivo portatile di piccole dimensioni usato per spegnere un incendio", + "nl": "Een brandblusser is een klein, draagbaar apparaat om een brand te blussen", + "da": "En ildslukker er en lille, bærbar beholder, der bruges til at stoppe en brand", + "es": "Un extintor es un dispositivo pequeño y portátil utilizado para parar un fuego", + "ca": "Un extintor és un dispositiu petit i portàtil utilitzat per a para un foc", + "pl": "Gaśnica to małe, przenośne urządzenie do gaszenia ognia", + "cs": "Hasicí přístroj je malé přenosné zařízení používané k zastavení požáru" + } + } + ], "tagRenderings": [ { "id": "extinguisher-location", @@ -134,57 +186,5 @@ } }, "images" - ], - "presets": [ - { - "tags": [ - "emergency=fire_extinguisher" - ], - "title": { - "en": "a fire extinguisher", - "ja": "消火器", - "nb_NO": "en brannslukker", - "ru": "огнетушитель", - "fr": "une extincteur", - "de": "einen Feuerlöscher", - "it": "una estintore", - "nl": "een brandblusser", - "da": "en ildslukker", - "es": "un extintor", - "ca": "un extintor", - "pl": "gaśnica", - "cs": "hasicí přístroj" - }, - "description": { - "en": "A fire extinguisher is a small, portable device used to stop a fire", - "ja": "消火器は、火災を止めるために使用される小型で携帯可能な装置である", - "ru": "Огнетушитель - небольшое переносное устройство для тушения огня", - "fr": "Un extincteur est un appareil portatif servant à éteindre un feu", - "de": "Ein Feuerlöscher ist ein kleines, tragbares Gerät, das dazu dient, ein Feuer zu löschen", - "it": "Un estintore è un dispositivo portatile di piccole dimensioni usato per spegnere un incendio", - "nl": "Een brandblusser is een klein, draagbaar apparaat om een brand te blussen", - "da": "En ildslukker er en lille, bærbar beholder, der bruges til at stoppe en brand", - "es": "Un extintor es un dispositivo pequeño y portátil utilizado para parar un fuego", - "ca": "Un extintor és un dispositiu petit i portàtil utilitzat per a para un foc", - "pl": "Gaśnica to małe, przenośne urządzenie do gaszenia ognia", - "cs": "Hasicí přístroj je malé přenosné zařízení používané k zastavení požáru" - } - } - ], - "pointRendering": [ - { - "iconSize": "20,20", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/hailhydrant/Twemoji12_1f9ef.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/filters/filters.json b/assets/layers/filters/filters.json index 3e6e86ef1..20173e4eb 100644 --- a/assets/layers/filters/filters.json +++ b/assets/layers/filters/filters.json @@ -1,9 +1,9 @@ { "id": "filters", "description": "This layer acts as library for common filters", - "lineRendering": null, - "pointRendering": null, "source": "special:library", + "pointRendering": null, + "lineRendering": null, "filter": [ { "id": "open_now", diff --git a/assets/layers/fire_station/fire_station.json b/assets/layers/fire_station/fire_station.json index 05a554e57..399841191 100644 --- a/assets/layers/fire_station/fire_station.json +++ b/assets/layers/fire_station/fire_station.json @@ -13,7 +13,18 @@ "ca": "Mapa de parcs de bombers", "cs": "Mapa požárních stanic" }, - "minzoom": 12, + "description": { + "en": "Map layer to show fire stations.", + "ja": "消防署を表示するためのマップレイヤ。", + "it": "Livello che mostra le caserme dei vigili del fuoco.", + "ru": "Слой карты, отображающий пожарные части.", + "fr": "Couche des stations de pompiers.", + "de": "Kartenebene zur Darstellung von Feuerwachen.", + "nl": "Kaartlaag die de brandweerstations toont.", + "es": "Capa del mapa que muestra parques de bomberos.", + "ca": "Capa del mapa que mostra els parcs de bombers.", + "cs": "Vrstva mapy zobrazující požární stanice." + }, "source": { "osmTags": { "and": [ @@ -21,6 +32,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Fire Station", @@ -36,18 +48,58 @@ "cs": "Hasičská stanice" } }, - "description": { - "en": "Map layer to show fire stations.", - "ja": "消防署を表示するためのマップレイヤ。", - "it": "Livello che mostra le caserme dei vigili del fuoco.", - "ru": "Слой карты, отображающий пожарные части.", - "fr": "Couche des stations de pompiers.", - "de": "Kartenebene zur Darstellung von Feuerwachen.", - "nl": "Kaartlaag die de brandweerstations toont.", - "es": "Capa del mapa que muestra parques de bomberos.", - "ca": "Capa del mapa que mostra els parcs de bombers.", - "cs": "Vrstva mapy zobrazující požární stanice." - }, + "pointRendering": [ + { + "iconSize": "35,35", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/hailhydrant/Twemoji12_1f692.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#c22", + "width": "1" + } + ], + "presets": [ + { + "tags": [ + "amenity=fire_station" + ], + "title": { + "en": "a fire station", + "ja": "消防署", + "ru": "пожарная часть", + "fr": "une caserne de pompiers", + "de": "eine Feuerwache", + "it": "una caserma dei vigili del fuoco", + "nb_NO": "en brannstasjon", + "nl": "een brandweerstation", + "es": "un parque de bomberos", + "ca": "un parc de bombers", + "cs": "požární stanice" + }, + "description": { + "en": "A fire station is a place where the fire trucks and firefighters are located when not in operation.", + "ja": "消防署は、運転していないときに消防車や消防士がいる場所です。", + "fr": "Une caserne de pompiers est un lieu où les pompiers et leur équipements sont situés en dehors des missions.", + "de": "Eine Feuerwache ist ein Ort, an dem Feuerwehrfahrzeuge und Feuerwehrleute untergebracht sind, wenn sie nicht im Einsatz sind.", + "it": "Una caserma dei pompieri è un luogo dove si trovano i mezzi antincendio e i pompieri tra una missione e l’altra.", + "nl": "Een brandweerstation is een plaats waar brandweerwagens en brandweerlieden gebaseerd zijn.", + "es": "Un parque de bomberos es donde los bomberos y los camiones de incendios se encuentran cuando no están en uso.", + "ca": "Un parc de bombers és on els bombers i els camions es troben quan no estan en ús.", + "cs": "Hasičská zbrojnice je místo, kde se nacházejí hasičská vozidla a hasiči." + } + } + ], "tagRenderings": [ { "id": "station-name", @@ -283,57 +335,5 @@ ] }, "images" - ], - "presets": [ - { - "tags": [ - "amenity=fire_station" - ], - "title": { - "en": "a fire station", - "ja": "消防署", - "ru": "пожарная часть", - "fr": "une caserne de pompiers", - "de": "eine Feuerwache", - "it": "una caserma dei vigili del fuoco", - "nb_NO": "en brannstasjon", - "nl": "een brandweerstation", - "es": "un parque de bomberos", - "ca": "un parc de bombers", - "cs": "požární stanice" - }, - "description": { - "en": "A fire station is a place where the fire trucks and firefighters are located when not in operation.", - "ja": "消防署は、運転していないときに消防車や消防士がいる場所です。", - "fr": "Une caserne de pompiers est un lieu où les pompiers et leur équipements sont situés en dehors des missions.", - "de": "Eine Feuerwache ist ein Ort, an dem Feuerwehrfahrzeuge und Feuerwehrleute untergebracht sind, wenn sie nicht im Einsatz sind.", - "it": "Una caserma dei pompieri è un luogo dove si trovano i mezzi antincendio e i pompieri tra una missione e l’altra.", - "nl": "Een brandweerstation is een plaats waar brandweerwagens en brandweerlieden gebaseerd zijn.", - "es": "Un parque de bomberos es donde los bomberos y los camiones de incendios se encuentran cuando no están en uso.", - "ca": "Un parc de bombers és on els bombers i els camions es troben quan no estan en ús.", - "cs": "Hasičská zbrojnice je místo, kde se nacházejí hasičská vozidla a hasiči." - } - } - ], - "pointRendering": [ - { - "iconSize": "35,35", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/hailhydrant/Twemoji12_1f692.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#c22", - "width": "1" - } ] } diff --git a/assets/layers/fitness_centre/fitness_centre.json b/assets/layers/fitness_centre/fitness_centre.json index 2fc9baf75..9a49bfd6c 100644 --- a/assets/layers/fitness_centre/fitness_centre.json +++ b/assets/layers/fitness_centre/fitness_centre.json @@ -33,6 +33,48 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "40,40", + "label": "
    {name}
    ", + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/fitness_centre/gym.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "leisure=fitness_centre" + ], + "title": { + "en": "a fitness centre", + "de": "ein Fitnessstudio", + "nl": "een fitness-centrum", + "ca": "un centre de fitness", + "cs": "fitness centra" + }, + "icon": "./assets/layers/fitness_centre/gym.svg" + } + ], "tagRenderings": [ { "id": "name", @@ -83,49 +125,7 @@ "level", "reviews" ], - "presets": [ - { - "tags": [ - "leisure=fitness_centre" - ], - "title": { - "en": "a fitness centre", - "de": "ein Fitnessstudio", - "nl": "een fitness-centrum", - "ca": "un centre de fitness", - "cs": "fitness centra" - }, - "icon": "./assets/layers/fitness_centre/gym.svg" - } - ], "filter": [ "open_now" - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "40,40", - "label": "
    {name}
    ", - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/fitness_centre/gym.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/fitness_station/fitness_station.json b/assets/layers/fitness_station/fitness_station.json index 69d49b7de..f13d6d47e 100644 --- a/assets/layers/fitness_station/fitness_station.json +++ b/assets/layers/fitness_station/fitness_station.json @@ -37,6 +37,53 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "40,40", + "iconBadges": [ + { + "if": { + "and": [ + "opening_hours!=24/7", + "opening_hours~*" + ] + }, + "then": "icons.isOpen" + } + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/fitness_station/fitness.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "leisure=fitness_station", + "sport=fitness" + ], + "title": { + "en": "a fitness station", + "de": "eine Fitness-Station", + "nl": "een fitness-toestel", + "ca": "una estació de fitness", + "cs": "fitness stanice" + }, + "icon": "./assets/layers/fitness_station/fitness.svg" + } + ], "tagRenderings": [ "images", { @@ -434,58 +481,11 @@ }, "opening_hours_24_7" ], - "presets": [ - { - "tags": [ - "leisure=fitness_station", - "sport=fitness" - ], - "title": { - "en": "a fitness station", - "de": "eine Fitness-Station", - "nl": "een fitness-toestel", - "ca": "una estació de fitness", - "cs": "fitness stanice" - }, - "icon": "./assets/layers/fitness_station/fitness.svg" - } - ], "filter": [ "open_now" ], "allowMove": { "enableRelocation": false, "enableImproveAccuracy": true - }, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "40,40", - "iconBadges": [ - { - "if": { - "and": [ - "opening_hours!=24/7", - "opening_hours~*" - ] - }, - "then": "icons.isOpen" - } - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/fitness_station/fitness.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/fixme/fixme.json b/assets/layers/fixme/fixme.json index 00e8e211e..c02eafbe6 100644 --- a/assets/layers/fixme/fixme.json +++ b/assets/layers/fixme/fixme.json @@ -7,14 +7,12 @@ "ca": "Objectes d'OSM amb etiquetes FIXME", "cs": "Objekty OSM se značkami FIXME" }, - "minzoom": 16, "description": { "en": "OSM objects that likely need to be fixed, based on a FIXME tag.", "de": "OSM-Objekte, die wahrscheinlich korrigiert werden müssen, basierend auf einem FIXME-Tag.", "ca": "Objectes OSM que probablement s'han de solucionar, basats en una etiqueta FIXME.", "cs": "Objekty OSM, které je pravděpodobně nutné opravit na základě značky FIXME." }, - "syncSelection": "theme-only", "source": { "osmTags": { "or": [ @@ -23,6 +21,7 @@ ] } }, + "minzoom": 16, "title": { "render": { "en": "OSM object with FIXME tag", @@ -32,6 +31,27 @@ "cs": "Objekt OSM s tagem FIXME" } }, + "pointRendering": [ + { + "location": [ + "centroid", + "point" + ], + "label": "
    {fixme}
    ", + "marker": [ + { + "icon": "./assets/svg/bug.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#ff0000", + "dashArray": "5,5", + "width": 2 + } + ], "tagRenderings": [ { "id": "fixme", @@ -79,25 +99,5 @@ }, "all_tags" ], - "pointRendering": [ - { - "location": [ - "centroid", - "point" - ], - "label": "
    {fixme}
    ", - "marker": [ - { - "icon": "./assets/svg/bug.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#ff0000", - "dashArray": "5,5", - "width": 2 - } - ] + "syncSelection": "theme-only" } diff --git a/assets/layers/food/food.json b/assets/layers/food/food.json index 81ef0f794..e3dcfa814 100644 --- a/assets/layers/food/food.json +++ b/assets/layers/food/food.json @@ -11,6 +11,16 @@ "pl": "Restauracje i fast-foody", "cs": "Restaurace a rychlé občerstvení" }, + "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)", + "pl": "Warstwa przedstawiająca restauracje i obiekty typu fast-food (ze specjalnym renderowaniem dla frytek)" + }, "source": { "osmTags": { "or": [ @@ -20,6 +30,143 @@ } }, "minzoom": 12, + "title": { + "render": { + "en": "Restaurant", + "nl": "Eetgelegenheid", + "ca": "Restaurant", + "de": "Restaurant", + "es": "Restaurante", + "fr": "Restaurant", + "pa_PK": "بھون آلہ", + "pl": "Restauracja", + "cs": "Restaurace" + }, + "mappings": [ + { + "if": { + "and": [ + "name~*", + "amenity=restaurant" + ] + }, + "then": { + "nl": "Restaurant {name}", + "en": "Restaurant {name}", + "de": "Restaurant {name}", + "ca": "Restaurant {name}", + "es": "Restaurante {name}", + "fr": "Restaurant {name}", + "pl": "Restauracja {name}", + "cs": "Restaurace {name}" + } + }, + { + "if": { + "and": [ + "name~*", + "amenity=fast_food" + ] + }, + "then": { + "nl": "Fastfood-zaak {name}", + "en": "Fastfood {name}", + "de": "Schnellimbiss {name}", + "ca": "Lloc de menjar ràpid {name}", + "es": "Comida rápida {name}", + "fr": "Fast-food {name}", + "cs": "Rychlé občerstvení {name}" + } + }, + { + "if": { + "and": [ + "amenity=fast_food" + ] + }, + "then": { + "nl": "Fastfood-zaak", + "en": "Fastfood", + "de": "Schnellimbiss", + "ca": "Menjar ràpid", + "es": "Comida rápida", + "fr": "Fast-food", + "cs": "Rychlé občerstvení" + } + } + ] + }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + }, + { + "if": { + "or": [ + "diet:vegetarian=yes", + "diet:vegan=yes" + ] + }, + "then": { + "render": "circle:white;./assets/layers/food/Vegetarian-mark.svg" + } + }, + { + "if": { + "or": [ + "organic=yes", + "organic=only" + ] + }, + "then": { + "render": "./assets/layers/food/organic.svg" + } + } + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/food/restaurant.svg", + "mappings": [ + { + "if": { + "and": [ + "amenity=fast_food", + "cuisine=friture" + ] + }, + "then": "./assets/layers/food/fries.svg" + }, + { + "if": "amenity=fast_food", + "then": "./assets/layers/food/fastfood.svg" + } + ] + } + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -93,72 +240,6 @@ } } ], - "title": { - "render": { - "en": "Restaurant", - "nl": "Eetgelegenheid", - "ca": "Restaurant", - "de": "Restaurant", - "es": "Restaurante", - "fr": "Restaurant", - "pa_PK": "بھون آلہ", - "pl": "Restauracja", - "cs": "Restaurace" - }, - "mappings": [ - { - "if": { - "and": [ - "name~*", - "amenity=restaurant" - ] - }, - "then": { - "nl": "Restaurant {name}", - "en": "Restaurant {name}", - "de": "Restaurant {name}", - "ca": "Restaurant {name}", - "es": "Restaurante {name}", - "fr": "Restaurant {name}", - "pl": "Restauracja {name}", - "cs": "Restaurace {name}" - } - }, - { - "if": { - "and": [ - "name~*", - "amenity=fast_food" - ] - }, - "then": { - "nl": "Fastfood-zaak {name}", - "en": "Fastfood {name}", - "de": "Schnellimbiss {name}", - "ca": "Lloc de menjar ràpid {name}", - "es": "Comida rápida {name}", - "fr": "Fast-food {name}", - "cs": "Rychlé občerstvení {name}" - } - }, - { - "if": { - "and": [ - "amenity=fast_food" - ] - }, - "then": { - "nl": "Fastfood-zaak", - "en": "Fastfood", - "de": "Schnellimbiss", - "ca": "Menjar ràpid", - "es": "Comida rápida", - "fr": "Fast-food", - "cs": "Rychlé občerstvení" - } - } - ] - }, "tagRenderings": [ "images", { @@ -1257,86 +1338,5 @@ } ] }, - "allowMove": true, - "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)", - "pl": "Warstwa przedstawiająca restauracje i obiekty typu fast-food (ze specjalnym renderowaniem dla frytek)" - }, - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - }, - { - "if": { - "or": [ - "diet:vegetarian=yes", - "diet:vegan=yes" - ] - }, - "then": { - "render": "circle:white;./assets/layers/food/Vegetarian-mark.svg" - } - }, - { - "if": { - "or": [ - "organic=yes", - "organic=only" - ] - }, - "then": { - "render": "./assets/layers/food/organic.svg" - } - } - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/food/restaurant.svg", - "mappings": [ - { - "if": { - "and": [ - "amenity=fast_food", - "cuisine=friture" - ] - }, - "then": "./assets/layers/food/fries.svg" - }, - { - "if": "amenity=fast_food", - "then": "./assets/layers/food/fastfood.svg" - } - ] - } - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/ghost_bike/ghost_bike.json b/assets/layers/ghost_bike/ghost_bike.json index dcf37030d..c1ffc2e77 100644 --- a/assets/layers/ghost_bike/ghost_bike.json +++ b/assets/layers/ghost_bike/ghost_bike.json @@ -22,6 +22,15 @@ "ca": "Bicicleta fantasma", "cs": "Kola duchů" }, + "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", + "ca": "Una capa que mostra monuments commemoratius als ciclistes morts en accidents de trànsit", + "cs": "Vrstva zobrazující pomníky pro cyklisty zabité při dopravních nehodách" + }, "source": { "osmTags": "memorial=ghost_bike" }, @@ -76,6 +85,22 @@ } ] }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "./assets/layers/ghost_bike/ghost_bike.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -289,30 +314,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "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", - "ca": "Una capa que mostra monuments commemoratius als ciclistes morts en accidents de trànsit", - "cs": "Vrstva zobrazující pomníky pro cyklisty zabité při dopravních nehodách" - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "./assets/layers/ghost_bike/ghost_bike.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/governments/governments.json b/assets/layers/governments/governments.json index 9df9153db..376da3802 100644 --- a/assets/layers/governments/governments.json +++ b/assets/layers/governments/governments.json @@ -22,6 +22,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "en": "Governmental Office {name}", @@ -31,7 +32,40 @@ "cs": "Vládní úřad {name}" } }, - "minzoom": 13, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/governments/government.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a Governmental Office", + "de": "ein Büro der öffentlichen Verwaltung", + "nl": "een overheidsdienst", + "ca": "una oficina Governamental", + "cs": "vládní úřad" + }, + "tags": [ + "office=government" + ] + } + ], "tagRenderings": [ "images", "phone", @@ -57,39 +91,5 @@ }, "id": "name" } - ], - "presets": [ - { - "title": { - "en": "a Governmental Office", - "de": "ein Büro der öffentlichen Verwaltung", - "nl": "een overheidsdienst", - "ca": "una oficina Governamental", - "cs": "vládní úřad" - }, - "tags": [ - "office=government" - ] - } - ], - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/governments/government.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/gps_location/gps_location.json b/assets/layers/gps_location/gps_location.json index e693fc4ba..0a4a689bd 100644 --- a/assets/layers/gps_location/gps_location.json +++ b/assets/layers/gps_location/gps_location.json @@ -1,8 +1,8 @@ { "id": "gps_location", "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", + "minzoom": 0, "pointRendering": [ { "marker": [ diff --git a/assets/layers/gps_location_history/gps_location_history.json b/assets/layers/gps_location_history/gps_location_history.json index 387ca4836..686b17d9b 100644 --- a/assets/layers/gps_location_history/gps_location_history.json +++ b/assets/layers/gps_location_history/gps_location_history.json @@ -1,9 +1,9 @@ { "id": "gps_location_history", - "description": "Meta layer which contains the previous locations of the user as single points. This is mainly for technical reasons, e.g. to keep match the distance to the modified object", - "minzoom": 1, "name": null, + "description": "Meta layer which contains the previous locations of the user as single points. This is mainly for technical reasons, e.g. to keep match the distance to the modified object", "source": "special", + "minzoom": 1, "shownByDefault": false, "pointRendering": [ { diff --git a/assets/layers/gps_track/gps_track.json b/assets/layers/gps_track/gps_track.json index b7b38e211..d3797f616 100644 --- a/assets/layers/gps_track/gps_track.json +++ b/assets/layers/gps_track/gps_track.json @@ -1,8 +1,18 @@ { "id": "gps_track", + "name": { + "en": "Your travelled track", + "nl": "Jouw afgelegde route", + "de": "Zurückgelegte Strecke", + "fr": "Votre chemin parcouru", + "da": "Dit tilbagelagte spor", + "ca": "La teva traça recorreguda", + "cs": "Vaše procestovaná trasa" + }, "description": "Meta layer showing the previous locations of the user as single line with controls, e.g. to erase, upload or download this track. Add this to your theme and override the maprendering to change the appearance of the travelled track.", - "minzoom": 0, "source": "special", + "minzoom": 0, + "shownByDefault": false, "title": { "render": { "en": "Your travelled path", @@ -13,7 +23,13 @@ "cs": "Ujetá cesta" } }, - "shownByDefault": false, + "pointRendering": [], + "lineRendering": [ + { + "width": 3, + "color": "#bb000077" + } + ], "tagRenderings": [ { "id": "Privacy notice", @@ -38,21 +54,5 @@ "render": "{clear_location_history()}" } ], - "name": { - "en": "Your travelled track", - "nl": "Jouw afgelegde route", - "de": "Zurückgelegte Strecke", - "fr": "Votre chemin parcouru", - "da": "Dit tilbagelagte spor", - "ca": "La teva traça recorreguda", - "cs": "Vaše procestovaná trasa" - }, - "syncSelection": "global", - "pointRendering": [], - "lineRendering": [ - { - "width": 3, - "color": "#bb000077" - } - ] + "syncSelection": "global" } diff --git a/assets/layers/guidepost/guidepost.json b/assets/layers/guidepost/guidepost.json index 4491676bc..f96f0a53a 100644 --- a/assets/layers/guidepost/guidepost.json +++ b/assets/layers/guidepost/guidepost.json @@ -1,10 +1,5 @@ { "id": "guidepost", - "title": { - "en": "Guideposts", - "cs": "Rozcestník", - "de": "Wegweiser" - }, "name": { "en": "Guideposts", "cs": "Rozcestníky", @@ -19,6 +14,25 @@ "osmTags": "information=guidepost" }, "minzoom": 14, + "title": { + "en": "Guideposts", + "cs": "Rozcestník", + "de": "Wegweiser" + }, + "pointRendering": [ + { + "location": [ + "centroid", + "point" + ], + "marker": [ + { + "icon": "./assets/layers/guidepost/guidepost.svg" + } + ], + "anchor": "bottom" + } + ], "presets": [ { "title": { @@ -40,25 +54,6 @@ ] } ], - "deletion": true, - "allowMove": { - "enableImproveAccuracy": true, - "enableRelocation": false - }, - "pointRendering": [ - { - "location": [ - "centroid", - "point" - ], - "marker": [ - { - "icon": "./assets/layers/guidepost/guidepost.svg" - } - ], - "anchor": "bottom" - } - ], "tagRenderings": [ "images", { @@ -105,5 +100,10 @@ } ] } - ] + ], + "deletion": true, + "allowMove": { + "enableImproveAccuracy": true, + "enableRelocation": false + } } diff --git a/assets/layers/hackerspace/hackerspace.json b/assets/layers/hackerspace/hackerspace.json index 3e26cdff5..92ded04d6 100644 --- a/assets/layers/hackerspace/hackerspace.json +++ b/assets/layers/hackerspace/hackerspace.json @@ -12,6 +12,25 @@ "ca": "Espai hacker", "cs": "Hackerspace" }, + "description": { + "en": "Hackerspace", + "de": "Hackerspace", + "ru": "Хакерспейс", + "zh_Hant": "駭客空間", + "hu": "Hackerspace", + "es": "Espacio hacker", + "nl": "Hackerspace", + "pa_PK": "ہیکر دا تھاں", + "ca": "Espai hacker", + "cs": "Hackerspace" + }, + "source": { + "osmTags": { + "and": [ + "leisure=hackerspace" + ] + } + }, "minzoom": 8, "title": { "render": { @@ -46,18 +65,92 @@ } ] }, - "description": { - "en": "Hackerspace", - "de": "Hackerspace", - "ru": "Хакерспейс", - "zh_Hant": "駭客空間", - "hu": "Hackerspace", - "es": "Espacio hacker", - "nl": "Hackerspace", - "pa_PK": "ہیکر دا تھاں", - "ca": "Espai hacker", - "cs": "Hackerspace" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/themes/hackerspaces/glider.svg", + "mappings": [ + { + "if": { + "and": [ + "hackerspace=makerspace" + ] + }, + "then": "./assets/themes/hackerspaces/led.png" + } + ] + } + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center" + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "leisure=hackerspace" + ], + "title": { + "en": "a hackerspace", + "de": "einen Hackerspace", + "ru": "Хакерспейс", + "zh_Hant": "駭客空間", + "hu": "Hackerspace", + "es": "un espacio hacker", + "nl": "een hackerspace", + "ca": "un espai hacker", + "cs": "hackerspace" + }, + "description": { + "en": "A hackerspace is an area where people interested in software gather", + "de": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren", + "zh_Hant": "駭客空間是對軟體有興趣的人聚集的地方", + "hu": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak", + "es": "Un espacio hacker es un lugar en el que gente interesada en software se reúne", + "nl": "Een hackerspace is een ruimte waar mensen met een interesse in software samenkomen", + "ca": "Un espai hacker és un lloc on la gent interesada en el software es reuneix", + "cs": "Hackerspace je oblast, kde se shromažďují lidé se zájmem o software" + } + }, + { + "tags": [ + "leisure=hackerspace", + "hackerspace=makerspace" + ], + "title": { + "en": "a makerspace", + "de": "einen Makerspace", + "zh_Hant": "創客空間", + "hu": "Makerspace", + "es": "un espacio maker", + "nl": "een makerspace", + "ca": "un espai maker" + }, + "description": { + "en": "A makerspace is a place where DIY-enthusiasts gather to experiment with electronics such as arduino, LEDstrips, …", + "de": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, …", + "zh_Hant": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...", + "hu": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips…", + "es": "Un espacio maker es un lugar donde entusiastas del DIY se reúnen para experimentar con electrónica, como arduino, …", + "nl": "Een makerspace is een ruimte waar makers en creatievelingen samenkomen om met electronica te experimenteren en te bouwen, bv. met Arduino, LED-strips, 3D-printers, lasercutters, …", + "ca": "Un espai maker és un lloc on entusiastes del DIY es reuneixen per a experimentar amb electrònica com arudino, tires LED, …", + "cs": "Makerspace je místo, kde se scházejí kutilové, aby experimentovali s elektronikou, jako je arduino, LED pásky,…" + } + } + ], "tagRenderings": [ "images", { @@ -310,99 +403,6 @@ "questions", "reviews" ], - "presets": [ - { - "tags": [ - "leisure=hackerspace" - ], - "title": { - "en": "a hackerspace", - "de": "einen Hackerspace", - "ru": "Хакерспейс", - "zh_Hant": "駭客空間", - "hu": "Hackerspace", - "es": "un espacio hacker", - "nl": "een hackerspace", - "ca": "un espai hacker", - "cs": "hackerspace" - }, - "description": { - "en": "A hackerspace is an area where people interested in software gather", - "de": "Ein Hackerspace ist ein Ort, an dem sich Menschen treffen, die sich für Software interessieren", - "zh_Hant": "駭客空間是對軟體有興趣的人聚集的地方", - "hu": "A hackerspace egy olyan hely, ahol szoftverek iránt érdeklő emberek találkoznak", - "es": "Un espacio hacker es un lugar en el que gente interesada en software se reúne", - "nl": "Een hackerspace is een ruimte waar mensen met een interesse in software samenkomen", - "ca": "Un espai hacker és un lloc on la gent interesada en el software es reuneix", - "cs": "Hackerspace je oblast, kde se shromažďují lidé se zájmem o software" - } - }, - { - "tags": [ - "leisure=hackerspace", - "hackerspace=makerspace" - ], - "title": { - "en": "a makerspace", - "de": "einen Makerspace", - "zh_Hant": "創客空間", - "hu": "Makerspace", - "es": "un espacio maker", - "nl": "een makerspace", - "ca": "un espai maker" - }, - "description": { - "en": "A makerspace is a place where DIY-enthusiasts gather to experiment with electronics such as arduino, LEDstrips, …", - "de": "Ein Makerspace ist ein Ort, an dem Heimwerker-Enthusiasten zusammenkommen, um mit Elektronik zu experimentieren, wie Arduino, LED-Strips, …", - "zh_Hant": "創客空間是 DIY 愛好者聚集在一起弄電子零件實驗,例如用 arduino、LEDstrips 等...", - "hu": "A makerspace olyan hely, ahol a barkácsolás szerelmesei találkoznak, hogy olyan elektronikai eszközökkel kísérletezzenek, mint például az Arduino vagy a LEDstrips…", - "es": "Un espacio maker es un lugar donde entusiastas del DIY se reúnen para experimentar con electrónica, como arduino, …", - "nl": "Een makerspace is een ruimte waar makers en creatievelingen samenkomen om met electronica te experimenteren en te bouwen, bv. met Arduino, LED-strips, 3D-printers, lasercutters, …", - "ca": "Un espai maker és un lloc on entusiastes del DIY es reuneixen per a experimentar amb electrònica com arudino, tires LED, …", - "cs": "Makerspace je místo, kde se scházejí kutilové, aby experimentovali s elektronikou, jako je arduino, LED pásky,…" - } - } - ], - "source": { - "osmTags": { - "and": [ - "leisure=hackerspace" - ] - } - }, - "allowMove": true, "deletion": true, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/themes/hackerspaces/glider.svg", - "mappings": [ - { - "if": { - "and": [ - "hackerspace=makerspace" - ] - }, - "then": "./assets/themes/hackerspaces/led.png" - } - ] - } - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center" - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } - ] + "allowMove": true } diff --git a/assets/layers/home_location/home_location.json b/assets/layers/home_location/home_location.json index 9a60b4d1d..8b7d23b56 100644 --- a/assets/layers/home_location/home_location.json +++ b/assets/layers/home_location/home_location.json @@ -1,8 +1,8 @@ { "id": "home_location", "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", + "minzoom": 0, "pointRendering": [ { "iconSize": "20,20", diff --git a/assets/layers/hospital/hospital.json b/assets/layers/hospital/hospital.json index 0fffd23ca..030ee7f12 100644 --- a/assets/layers/hospital/hospital.json +++ b/assets/layers/hospital/hospital.json @@ -9,6 +9,22 @@ "ru": "Больницы", "cs": "Nemocnice" }, + "description": { + "en": "A layer showing hospital grounds", + "de": "Eine Ebene mit Krankenhäusern", + "nl": "Een laag die ziekehuizen toont", + "ca": "Una capa que mostra els terrenys de l'hospital", + "cs": "Vrstva zobrazující areál nemocnice" + }, + "source": { + "osmTags": { + "or": [ + "amenity=hospital", + "amenity=clinic" + ] + } + }, + "minzoom": 12, "title": { "render": { "en": "Hospital", @@ -26,22 +42,31 @@ } ] }, - "description": { - "en": "A layer showing hospital grounds", - "de": "Eine Ebene mit Krankenhäusern", - "nl": "Een laag die ziekehuizen toont", - "ca": "Una capa que mostra els terrenys de l'hospital", - "cs": "Vrstva zobrazující areál nemocnice" - }, - "minzoom": 12, - "source": { - "osmTags": { - "or": [ - "amenity=hospital", - "amenity=clinic" + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/hospital/hospital.svg" + } ] } - }, + ], + "lineRendering": [ + { + "color": "#fcd862", + "width": 1 + } + ], "tagRenderings": [ { "id": "name", @@ -126,30 +151,5 @@ "cs": "

    Otevírací doba pro návštěvníky

    Běžným návštěvníkům je vstup povolen v následujících časech: {opening_hours_table(opening_hours:visitors)}

    Některá oddělení mohou mít jinou otevírací dobu. Mnohé nemocnice povolují návštěvy i v době pohotovosti.

    " } } - ], - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/hospital/hospital.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#fcd862", - "width": 1 - } ] } diff --git a/assets/layers/hotel/hotel.json b/assets/layers/hotel/hotel.json index 04e04712c..e5b3f1dd6 100644 --- a/assets/layers/hotel/hotel.json +++ b/assets/layers/hotel/hotel.json @@ -46,6 +46,26 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "40,40", + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/hotel/hotel.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -108,25 +128,5 @@ "allowMove": { "enableImproveAccuracy": true, "enableRelocation": true - }, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "40,40", - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/hotel/hotel.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/hydrant/hydrant.json b/assets/layers/hydrant/hydrant.json index a9d53701c..9049ee9e9 100644 --- a/assets/layers/hydrant/hydrant.json +++ b/assets/layers/hydrant/hydrant.json @@ -14,7 +14,20 @@ "ca": "Mapa d'hidrants", "cs": "Mapa hydrantů" }, - "minzoom": 14, + "description": { + "en": "Map layer to show fire hydrants.", + "ja": "消火栓を表示するマップレイヤ。", + "zh_Hant": "顯示消防栓的地圖圖層。", + "nb_NO": "Kartlag for å vise brannhydranter.", + "ru": "Слой карты, отображающий пожарные гидранты.", + "fr": "Couche des bornes incendie.", + "de": "Kartenebene zur Anzeige von Hydranten.", + "it": "Livello della mappa che mostra gli idranti antincendio.", + "nl": "Kaartlaag met brandkranen.", + "es": "Un mapa que muestra bocas de incendios.", + "ca": "Una capa que mostra hidrants.", + "cs": "Mapová vrstva zobrazující požární hydranty." + }, "source": { "osmTags": { "and": [ @@ -22,6 +35,7 @@ ] } }, + "minzoom": 14, "title": { "render": { "en": "Hydrant", @@ -38,20 +52,59 @@ "cs": "Hydrant" } }, - "description": { - "en": "Map layer to show fire hydrants.", - "ja": "消火栓を表示するマップレイヤ。", - "zh_Hant": "顯示消防栓的地圖圖層。", - "nb_NO": "Kartlag for å vise brannhydranter.", - "ru": "Слой карты, отображающий пожарные гидранты.", - "fr": "Couche des bornes incendie.", - "de": "Kartenebene zur Anzeige von Hydranten.", - "it": "Livello della mappa che mostra gli idranti antincendio.", - "nl": "Kaartlaag met brandkranen.", - "es": "Un mapa que muestra bocas de incendios.", - "ca": "Una capa que mostra hidrants.", - "cs": "Mapová vrstva zobrazující požární hydranty." - }, + "pointRendering": [ + { + "iconSize": "20,20", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/themes/hailhydrant/hydrant.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "emergency=fire_hydrant" + ], + "title": { + "en": "a fire hydrant", + "ru": "Пожарный гидрант", + "ja": "消火栓", + "nb_NO": "en brannhydrant", + "fr": "une borne incendie", + "de": "einen Hydranten", + "it": "una idrante antincendio", + "nl": "een brandkraan", + "es": "una boca de incendios", + "ca": "un hidrant", + "cs": "požární hydrant" + }, + "description": { + "en": "A hydrant is a connection point where firefighters can tap water. It might be located underground.", + "ja": "消火栓は消防士が水を汲み上げることができる接続点です。地下にあるかもしれません。", + "fr": "Une borne incendie est un point où les pompiers peuvent s’alimenter en eau. Elle peut être enterrée.", + "de": "Ein Hydrant ist ein Anschlusspunkt, an dem die Feuerwehr Wasser zapfen kann. Er kann sich unterirdisch befinden.", + "it": "Un idrante è un punto di collegamento dove i pompieri possono estrarre acqua. Potrebbe trovarsi sottoterra.", + "nl": "Een brandkraan is een kraan waar brandweerlieden een brandslang kunnen aansluiten. Soms zit deze ondergronds.", + "es": "Una boca de incendios es un punto de conexión en el que los bomberos pueden conseguir agua. Puede situarse bajo tierra.", + "ca": "Un hidrant és un punt de connexió on els bombers poden aconseguir aigua. Pot estar baix terra.", + "ru": "Гидрант – приспособление, с помощью которого пожарные могут подключаться к водопроводу. Гидранты могут быть под землёй.", + "cs": "Hydrant je přípojné místo, odkud mohou hasiči čerpat vodu. Může být umístěn pod zemí." + } + } + ], "tagRenderings": [ { "id": "hydrant-color", @@ -494,38 +547,6 @@ }, "images" ], - "presets": [ - { - "tags": [ - "emergency=fire_hydrant" - ], - "title": { - "en": "a fire hydrant", - "ru": "Пожарный гидрант", - "ja": "消火栓", - "nb_NO": "en brannhydrant", - "fr": "une borne incendie", - "de": "einen Hydranten", - "it": "una idrante antincendio", - "nl": "een brandkraan", - "es": "una boca de incendios", - "ca": "un hidrant", - "cs": "požární hydrant" - }, - "description": { - "en": "A hydrant is a connection point where firefighters can tap water. It might be located underground.", - "ja": "消火栓は消防士が水を汲み上げることができる接続点です。地下にあるかもしれません。", - "fr": "Une borne incendie est un point où les pompiers peuvent s’alimenter en eau. Elle peut être enterrée.", - "de": "Ein Hydrant ist ein Anschlusspunkt, an dem die Feuerwehr Wasser zapfen kann. Er kann sich unterirdisch befinden.", - "it": "Un idrante è un punto di collegamento dove i pompieri possono estrarre acqua. Potrebbe trovarsi sottoterra.", - "nl": "Een brandkraan is een kraan waar brandweerlieden een brandslang kunnen aansluiten. Soms zit deze ondergronds.", - "es": "Una boca de incendios es un punto de conexión en el que los bomberos pueden conseguir agua. Puede situarse bajo tierra.", - "ca": "Un hidrant és un punt de connexió on els bombers poden aconseguir aigua. Pot estar baix terra.", - "ru": "Гидрант – приспособление, с помощью которого пожарные могут подключаться к водопроводу. Гидранты могут быть под землёй.", - "cs": "Hydrant je přípojné místo, odkud mohou hasiči čerpat vodu. Může být umístěn pod zemí." - } - } - ], "units": [ { "applicableUnits": [ @@ -560,26 +581,5 @@ "fire_hydrant:diameter" ] } - ], - "pointRendering": [ - { - "iconSize": "20,20", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/themes/hailhydrant/hydrant.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } ] } diff --git a/assets/layers/ice_cream/ice_cream.json b/assets/layers/ice_cream/ice_cream.json index a005d83fb..da26f3656 100644 --- a/assets/layers/ice_cream/ice_cream.json +++ b/assets/layers/ice_cream/ice_cream.json @@ -1,7 +1,27 @@ { - "credits": [ - "Pieter Vander Vennet" - ], + "id": "ice_cream", + "name": { + "en": "Ice cream parlors" + }, + "description": { + "en": "A place where ice cream is sold over the counter" + }, + "source": { + "osmTags": "amenity=ice_cream" + }, + "title": { + "render": { + "en": "Ice cream parlor" + }, + "mappings": [ + { + "if": "name~*", + "then": { + "en": "{name}" + } + } + ] + }, "pointRendering": [ { "location": [ @@ -25,16 +45,6 @@ "color": "blue" } ], - "id": "ice_cream", - "name": { - "en": "Ice cream parlors" - }, - "description": { - "en": "A place where ice cream is sold over the counter" - }, - "source": { - "osmTags": "amenity=ice_cream" - }, "presets": [ { "title": { @@ -48,19 +58,6 @@ } } ], - "title": { - "render": { - "en": "Ice cream parlor" - }, - "mappings": [ - { - "if": "name~*", - "then": { - "en": "{name}" - } - } - ] - }, "tagRenderings": [ "images", { @@ -82,5 +79,8 @@ "diets", "payment-options", "wheelchair-access" + ], + "credits": [ + "Pieter Vander Vennet" ] } diff --git a/assets/layers/icons/icons.json b/assets/layers/icons/icons.json index 9bc535b95..88e112b99 100644 --- a/assets/layers/icons/icons.json +++ b/assets/layers/icons/icons.json @@ -8,6 +8,8 @@ }, "source": "special:library", "title": null, + "pointRendering": null, + "lineRendering": null, "tagRenderings": [ { "id": "wikipedialink", @@ -194,7 +196,5 @@ }, "render": "{rating()}" } - ], - "lineRendering": null, - "pointRendering": null + ] } diff --git a/assets/layers/id_presets/id_presets.json b/assets/layers/id_presets/id_presets.json index 04b12d9a5..541bca7b9 100644 --- a/assets/layers/id_presets/id_presets.json +++ b/assets/layers/id_presets/id_presets.json @@ -3,11 +3,10 @@ "description": { "en": "Layer containing various presets and questions generated by ID. These are meant to be reused in other layers by importing the tagRenderings with `id_preset." }, - "#dont-translate": "*", "source": "special:library", "title": null, - "lineRendering": null, "pointRendering": null, + "lineRendering": null, "tagRenderings": [ { "id": "shop_types", @@ -23570,5 +23569,6 @@ } ] } - ] + ], + "#dont-translate": "*" } diff --git a/assets/layers/import_candidate/import_candidate.json b/assets/layers/import_candidate/import_candidate.json index 360396d25..b315f20f1 100644 --- a/assets/layers/import_candidate/import_candidate.json +++ b/assets/layers/import_candidate/import_candidate.json @@ -3,12 +3,6 @@ "description": "Layer used as template in the importHelper", "source": "special", "title": "Import candidate", - "tagRenderings": [ - { - "id": "all_tags", - "render": "{all_tags()}" - } - ], "pointRendering": [ { "location": [ @@ -25,5 +19,11 @@ ] } ], - "lineRendering": [] + "lineRendering": [], + "tagRenderings": [ + { + "id": "all_tags", + "render": "{all_tags()}" + } + ] } diff --git a/assets/layers/indoors/indoors.json b/assets/layers/indoors/indoors.json index 1cf487697..61b168bfe 100644 --- a/assets/layers/indoors/indoors.json +++ b/assets/layers/indoors/indoors.json @@ -27,6 +27,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "en": "Indoor area {name}", @@ -116,7 +117,106 @@ ] } ], - "minzoom": 13, + "pointRendering": [ + { + "label": { + "render": "
    {name}
    ", + "condition": "name~*", + "mappings": [ + { + "if": { + "or": [ + "room=administration", + "room=auditorium", + "room=bedroom", + "room=chapel", + "room=class", + "room=computer", + "room=conference", + "room=crypt", + "room=kitchen", + "room=laboratory", + "room=library", + "room=locker", + "room=nursery", + "room=office", + "room=prison_cell", + "room=restaurant", + "room=security_check", + "room=sport", + "room=storage", + "room=technical", + "room=toilet", + "room=toilets", + "room=waiting" + ] + }, + "then": "
    {name}
    " + } + ] + }, + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": { + "mappings": [ + { + "if": { + "or": [ + "room=administration", + "room=auditorium", + "room=bedroom", + "room=chapel", + "room=class", + "room=computer", + "room=conference", + "room=crypt", + "room=kitchen", + "room=laboratory", + "room=library", + "room=locker", + "room=nursery", + "room=office", + "room=prison_cell", + "room=restaurant", + "room=security_check", + "room=sport", + "room=storage", + "room=technical", + "room=toilets", + "room=waiting" + ] + }, + "then": "./assets/layers/indoors/room_{room}.svg" + }, + { + "if": "room=toilet", + "then": "./assets/layers/indoors/room_toilets.svg" + } + ] + } + } + ], + "iconSize": "15,15", + "anchor": "bottom" + } + ], + "lineRendering": [ + { + "color": "#d3d7d588", + "width": "8", + "offset": "-4", + "fill": "no" + }, + { + "color": "#4f5551", + "fill": "no", + "width": "2" + } + ], "tagRenderings": [ "images", "level", @@ -473,105 +573,5 @@ } } } - ], - "pointRendering": [ - { - "label": { - "render": "
    {name}
    ", - "condition": "name~*", - "mappings": [ - { - "if": { - "or": [ - "room=administration", - "room=auditorium", - "room=bedroom", - "room=chapel", - "room=class", - "room=computer", - "room=conference", - "room=crypt", - "room=kitchen", - "room=laboratory", - "room=library", - "room=locker", - "room=nursery", - "room=office", - "room=prison_cell", - "room=restaurant", - "room=security_check", - "room=sport", - "room=storage", - "room=technical", - "room=toilet", - "room=toilets", - "room=waiting" - ] - }, - "then": "
    {name}
    " - } - ] - }, - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": { - "mappings": [ - { - "if": { - "or": [ - "room=administration", - "room=auditorium", - "room=bedroom", - "room=chapel", - "room=class", - "room=computer", - "room=conference", - "room=crypt", - "room=kitchen", - "room=laboratory", - "room=library", - "room=locker", - "room=nursery", - "room=office", - "room=prison_cell", - "room=restaurant", - "room=security_check", - "room=sport", - "room=storage", - "room=technical", - "room=toilets", - "room=waiting" - ] - }, - "then": "./assets/layers/indoors/room_{room}.svg" - }, - { - "if": "room=toilet", - "then": "./assets/layers/indoors/room_toilets.svg" - } - ] - } - } - ], - "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 2bea375a1..90ce2612b 100644 --- a/assets/layers/information_board/information_board.json +++ b/assets/layers/information_board/information_board.json @@ -12,7 +12,15 @@ "pl": "Tablice informacyjne", "cs": "Informační tabule" }, - "minzoom": 12, + "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, ...)", + "de": "Eine Ebene mit touristischen, straßenseitigen Informationstafeln (z. B. mit Informationen über die Landschaft, ein Gebäude, ein Merkmal, eine Karte, …)", + "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, ...)", + "cs": "Vrstva zobrazující turistické informační tabule u silnice (např. informace o krajině, budově, objektu, mapě, ...)" + }, "source": { "osmTags": { "and": [ @@ -20,6 +28,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "nl": "Informatiebord", @@ -34,8 +43,24 @@ "cs": "Informační tabule" } }, - "tagRenderings": [ - "images" + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/layers/information_board/board.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f" + } ], "presets": [ { @@ -57,6 +82,9 @@ } } ], + "tagRenderings": [ + "images" + ], "deletion": { "softDeletionTags": { "and": [ @@ -71,33 +99,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "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, ...)", - "de": "Eine Ebene mit touristischen, straßenseitigen Informationstafeln (z. B. mit Informationen über die Landschaft, ein Gebäude, ein Merkmal, eine Karte, …)", - "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, ...)", - "cs": "Vrstva zobrazující turistické informační tabule u silnice (např. informace o krajině, budově, objektu, mapě, ...)" - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/layers/information_board/board.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#00f" - } - ] + } } diff --git a/assets/layers/kerbs/kerbs.json b/assets/layers/kerbs/kerbs.json index 4eab2ef2d..a2200d543 100644 --- a/assets/layers/kerbs/kerbs.json +++ b/assets/layers/kerbs/kerbs.json @@ -38,6 +38,74 @@ "cs": "Obrubník" } }, + "pointRendering": [ + { + "location": [ + "point" + ], + "marker": [ + { + "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" + } + ], + "presets": [ + { + "title": { + "en": "a kerb", + "nl": "een stoeprand", + "de": "einen Bordstein", + "fr": "une bordure", + "ru": "бордюр", + "pl": "krawężnik", + "ca": "una vorada", + "cs": "obrubník" + }, + "tags": [ + "barrier=kerb" + ], + "description": { + "en": "Kerb in a footway", + "nl": "Stoeprand in een voetpad", + "de": "Bordstein in einem Fußweg", + "fr": "Bordure dans un trottoir", + "cs": "Obrubník na chodníku" + }, + "snapToLayer": [ + "cycleways_and_roads", + "kerbs" + ], + "maxSnapDistance": 10 + } + ], "tagRenderings": [ "images", { @@ -242,35 +310,6 @@ ] } ], - "presets": [ - { - "title": { - "en": "a kerb", - "nl": "een stoeprand", - "de": "einen Bordstein", - "fr": "une bordure", - "ru": "бордюр", - "pl": "krawężnik", - "ca": "una vorada", - "cs": "obrubník" - }, - "tags": [ - "barrier=kerb" - ], - "description": { - "en": "Kerb in a footway", - "nl": "Stoeprand in een voetpad", - "de": "Bordstein in einem Fußweg", - "fr": "Bordure dans un trottoir", - "cs": "Obrubník na chodníku" - }, - "snapToLayer": [ - "cycleways_and_roads", - "kerbs" - ], - "maxSnapDistance": 10 - } - ], "filter": [ { "id": "kerb-type", @@ -419,44 +458,5 @@ "kerb:height" ] } - ], - "pointRendering": [ - { - "location": [ - "point" - ], - "marker": [ - { - "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 339ba1445..da586630c 100644 --- a/assets/layers/kindergarten_childcare/kindergarten_childcare.json +++ b/assets/layers/kindergarten_childcare/kindergarten_childcare.json @@ -9,7 +9,6 @@ "cs": "Mateřské školky a péče o děti" }, "description": "Shows kindergartens and preschools. Both are grouped in one layer, as they are regularly confused with each other", - "minzoom": 12, "source": { "osmTags": { "or": [ @@ -19,6 +18,7 @@ ] } }, + "minzoom": 12, "title": { "mappings": [ { @@ -43,6 +43,81 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "mappings": [ + { + "if": "amenity=kindergarten", + "then": "./assets/layers/kindergarten_childcare/kindergarten.svg" + }, + { + "if": "amenity=childcare", + "then": "./assets/layers/kindergarten_childcare/childcare.svg" + } + ] + } + } + ] + } + ], + "lineRendering": [ + { + "color": "#62fc6c", + "width": 1 + } + ], + "presets": [ + { + "title": { + "en": "a kindergarten", + "nl": "een kleuterschool", + "de": "einen Kindergarten", + "ru": "детский сад", + "ca": "una llar d'infants", + "pl": "przedszkole", + "cs": "mateřská školka" + }, + "description": "A kindergarten (also known as preschool) is a school where small kids receive early education.", + "tags": [ + "amenity=kindergarten", + "isced:level=0", + "isced:2011:level=early_childhood" + ] + }, + { + "title": { + "en": "a childcare", + "nl": "een kinderopvang", + "de": "eine Kinderkrippe", + "ca": "una guarderia", + "pl": "żłobek", + "cs": "péče o děti" + }, + "description": "A childcare (also known as a nursery or daycare) is a facility which looks after small kids, but does not offer them an education program.", + "tags": [ + "amenity=kindergarten" + ] + } + ], "tagRenderings": [ { "id": "childcare-type", @@ -147,84 +222,9 @@ } } ], - "presets": [ - { - "title": { - "en": "a kindergarten", - "nl": "een kleuterschool", - "de": "einen Kindergarten", - "ru": "детский сад", - "ca": "una llar d'infants", - "pl": "przedszkole", - "cs": "mateřská školka" - }, - "description": "A kindergarten (also known as preschool) is a school where small kids receive early education.", - "tags": [ - "amenity=kindergarten", - "isced:level=0", - "isced:2011:level=early_childhood" - ] - }, - { - "title": { - "en": "a childcare", - "nl": "een kinderopvang", - "de": "eine Kinderkrippe", - "ca": "una guarderia", - "pl": "żłobek", - "cs": "péče o děti" - }, - "description": "A childcare (also known as a nursery or daycare) is a facility which looks after small kids, but does not offer them an education program.", - "tags": [ - "amenity=kindergarten" - ] - } - ], + "deletion": true, "allowMove": { "enableRelocation": true, "enableImproveAccuracy": true - }, - "deletion": true, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "mappings": [ - { - "if": "amenity=kindergarten", - "then": "./assets/layers/kindergarten_childcare/kindergarten.svg" - }, - { - "if": "amenity=childcare", - "then": "./assets/layers/kindergarten_childcare/childcare.svg" - } - ] - } - } - ] - } - ], - "lineRendering": [ - { - "color": "#62fc6c", - "width": 1 - } - ] + } } diff --git a/assets/layers/last_click/last_click.json b/assets/layers/last_click/last_click.json index 0a29282d0..1712bd3f3 100644 --- a/assets/layers/last_click/last_click.json +++ b/assets/layers/last_click/last_click.json @@ -1,5 +1,6 @@ { "id": "last_click", + "name": null, "description": "This layer defines how to render the 'last click'-location. By default, it will show a marker with the possibility to add a new point (if there are some presets) and/or to add a new note (if the 'note' layer attribute is set). If none are possible, this layer won't show up", "source": "special", "isShown": { @@ -8,9 +9,6 @@ "has_note_layer=yes" ] }, - "name": null, - "titleIcons": [], - "popupInFloatover": true, "title": { "mappings": [ { @@ -56,39 +54,8 @@ } ] }, - "tagRenderings": [ - { - "id": "add_new", - "condition": "has_presets=yes", - "render": { - "*": "{add_new_point()}" - } - }, - { - "id": "add_note", - "condition": "has_note_layer=yes", - "render": { - "*": "{open_note()}" - } - } - ], - "filter": [ - { - "id": "action", - "options": [ - { - "default": true, - "question": "only_if_action_is_possible", - "osmTags": { - "or": [ - "has_note_layer=yes", - "has_presets=yes" - ] - } - } - ] - } - ], + "popupInFloatover": true, + "titleIcons": [], "pointRendering": [ { "marker": [ @@ -185,5 +152,38 @@ } } ], - "lineRendering": [] + "lineRendering": [], + "tagRenderings": [ + { + "id": "add_new", + "condition": "has_presets=yes", + "render": { + "*": "{add_new_point()}" + } + }, + { + "id": "add_note", + "condition": "has_note_layer=yes", + "render": { + "*": "{open_note()}" + } + } + ], + "filter": [ + { + "id": "action", + "options": [ + { + "default": true, + "question": "only_if_action_is_possible", + "osmTags": { + "or": [ + "has_note_layer=yes", + "has_presets=yes" + ] + } + } + ] + } + ] } diff --git a/assets/layers/map/map.json b/assets/layers/map/map.json index cf4ea604d..1c68c68bc 100644 --- a/assets/layers/map/map.json +++ b/assets/layers/map/map.json @@ -13,7 +13,17 @@ "pl": "Mapy", "cs": "Mapy" }, - "minzoom": 12, + "description": { + "en": "A map, meant for tourists which is permanently installed in the public space", + "nl": "Een permantent geinstalleerde kaart", + "it": "Una mappa, destinata ai turisti e che è sistemata in maniera permanente in uno spazio pubblico", + "fr": "Une carte, destinée aux touristes, installée en permanence dans l'espace public", + "de": "Eine Karte, die für Touristen gedacht ist und dauerhaft im öffentlichen Raum aufgestellt ist", + "es": "Un mapa, pensado para turistas y que está instalado de manera permanente en un espacio público", + "pl": "Mapa, przeznaczona dla turystów, która jest zainstalowana w przestrzeni publicznej na stałe", + "ca": "Un mapa", + "cs": "Mapa určená pro turisty, která je trvale instalována na veřejném prostranství" + }, "source": { "osmTags": { "or": [ @@ -22,6 +32,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Map", @@ -37,17 +48,89 @@ "cs": "Mapa" } }, - "description": { - "en": "A map, meant for tourists which is permanently installed in the public space", - "nl": "Een permantent geinstalleerde kaart", - "it": "Una mappa, destinata ai turisti e che è sistemata in maniera permanente in uno spazio pubblico", - "fr": "Une carte, destinée aux touristes, installée en permanence dans l'espace public", - "de": "Eine Karte, die für Touristen gedacht ist und dauerhaft im öffentlichen Raum aufgestellt ist", - "es": "Un mapa, pensado para turistas y que está instalado de manera permanente en un espacio público", - "pl": "Mapa, przeznaczona dla turystów, która jest zainstalowana w przestrzeni publicznej na stałe", - "ca": "Un mapa", - "cs": "Mapa určená pro turisty, která je trvale instalována na veřejném prostranství" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/layers/map/map.svg", + "mappings": [ + { + "if": { + "and": [ + "map_source=OpenStreetMap", + "map_source:attribution=sticker" + ] + }, + "then": "./assets/layers/map/map-stickered.svg" + }, + { + "if": { + "and": [ + "map_source=OpenStreetMap", + "map_source:attribution=yes" + ] + }, + "then": "./assets/layers/map/osm-logo-white-bg.svg" + }, + { + "if": { + "and": [ + "map_source=OpenStreetMap" + ] + }, + "then": "./assets/layers/map/osm-logo-buggy-attr.svg" + } + ] + } + } + ], + "iconSize": "50,50", + "location": [ + "point", + "centroid" + ], + "anchor": "center" + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "tourism=information", + "information=map" + ], + "title": { + "en": "a map", + "nl": "een kaart", + "it": "una mappa", + "ru": "Карта", + "fr": "une carte", + "de": "eine Karte", + "ca": "un mapa", + "es": "un mapa", + "pl": "mapa", + "cs": "mapa" + }, + "description": { + "en": "Add a missing map", + "nl": "Voeg een ontbrekende kaart toe", + "it": "Aggiungi una mappa mancante", + "fr": "Ajouter une carte manquante", + "de": "Fehlende Karte hinzufügen", + "ru": "Добавить отсутствующую карту", + "es": "Añadir un mapa que falta", + "ca": "Afegeix un mapa que falta", + "pl": "Dodaj brakującą mapę", + "cs": "Přidat chybějící mapu" + } + } + ], "tagRenderings": [ "images", { @@ -328,38 +411,6 @@ } } ], - "presets": [ - { - "tags": [ - "tourism=information", - "information=map" - ], - "title": { - "en": "a map", - "nl": "een kaart", - "it": "una mappa", - "ru": "Карта", - "fr": "une carte", - "de": "eine Karte", - "ca": "un mapa", - "es": "un mapa", - "pl": "mapa", - "cs": "mapa" - }, - "description": { - "en": "Add a missing map", - "nl": "Voeg een ontbrekende kaart toe", - "it": "Aggiungi una mappa mancante", - "fr": "Ajouter une carte manquante", - "de": "Fehlende Karte hinzufügen", - "ru": "Добавить отсутствующую карту", - "es": "Añadir un mapa que falta", - "ca": "Afegeix un mapa que falta", - "pl": "Dodaj brakującą mapę", - "cs": "Přidat chybějící mapu" - } - } - ], "deletion": { "softDeletionTags": { "and": [ @@ -372,56 +423,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/layers/map/map.svg", - "mappings": [ - { - "if": { - "and": [ - "map_source=OpenStreetMap", - "map_source:attribution=sticker" - ] - }, - "then": "./assets/layers/map/map-stickered.svg" - }, - { - "if": { - "and": [ - "map_source=OpenStreetMap", - "map_source:attribution=yes" - ] - }, - "then": "./assets/layers/map/osm-logo-white-bg.svg" - }, - { - "if": { - "and": [ - "map_source=OpenStreetMap" - ] - }, - "then": "./assets/layers/map/osm-logo-buggy-attr.svg" - } - ] - } - } - ], - "iconSize": "50,50", - "location": [ - "point", - "centroid" - ], - "anchor": "center" - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } - ] + } } diff --git a/assets/layers/maproulette/maproulette.json b/assets/layers/maproulette/maproulette.json index f604260bd..9c5a24c71 100644 --- a/assets/layers/maproulette/maproulette.json +++ b/assets/layers/maproulette/maproulette.json @@ -1,9 +1,12 @@ { "id": "maproulette", - "source": { - "geoJson": "https://maproulette.org/api/v2/tasks/box/{x_min}/{y_min}/{x_max}/{y_max}", - "geoJsonZoomLevel": 16, - "osmTags": "title~*" + "name": { + "en": "MapRoulette Tasks", + "de": "MapRoulette-Aufgaben", + "nl": "MapRoulette Taken", + "pl": "Zadania MapRoulette", + "ca": "Tasques de MapRoulette", + "cs": "Úkoly MapRoulette" }, "description": { "en": "Layer showing all tasks in MapRoulette", @@ -13,6 +16,80 @@ "pl": "Warstwa pokazująca wszystkie zadania w MapRoulette", "cs": "Vrstva zobrazující všechny úlohy v MapRoulette" }, + "source": { + "geoJson": "https://maproulette.org/api/v2/tasks/box/{x_min}/{y_min}/{x_max}/{y_max}", + "geoJsonZoomLevel": 16, + "osmTags": "title~*" + }, + "minzoom": 15, + "title": { + "render": { + "en": "MapRoulette Item: {parentName}", + "de": "MapRoulette-Element: {parentName}", + "nl": "MapRoulette Item: {parentName}", + "pl": "Obiekt MapRoulette: {parentName}", + "cs": "Položka MapRoulette: {parentName}" + } + }, + "titleIcons": [ + { + "id": "maproulette", + "render": "" + } + ], + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "pin", + "color": { + "render": "#00", + "mappings": [ + { + "if": "status=0", + "then": "#959DFF" + }, + { + "if": "status=1", + "then": "#65D2DA" + }, + { + "if": "status=2", + "then": "#F7BB59" + }, + { + "if": "status=3", + "then": "#F7BB59" + }, + { + "if": "status=4", + "then": "#737373" + }, + { + "if": "status=5", + "then": "#CCB186" + }, + { + "if": "status=6", + "then": "#FF5E63" + }, + { + "if": "status=9", + "then": "#FF349C" + } + ] + } + } + ], + "iconSize": "40,40", + "anchor": "bottom" + } + ], + "lineRendering": [], "tagRenderings": [ { "id": "status", @@ -166,30 +243,6 @@ } } ], - "minzoom": 15, - "name": { - "en": "MapRoulette Tasks", - "de": "MapRoulette-Aufgaben", - "nl": "MapRoulette Taken", - "pl": "Zadania MapRoulette", - "ca": "Tasques de MapRoulette", - "cs": "Úkoly MapRoulette" - }, - "title": { - "render": { - "en": "MapRoulette Item: {parentName}", - "de": "MapRoulette-Element: {parentName}", - "nl": "MapRoulette Item: {parentName}", - "pl": "Obiekt MapRoulette: {parentName}", - "cs": "Položka MapRoulette: {parentName}" - } - }, - "titleIcons": [ - { - "id": "maproulette", - "render": "" - } - ], "filter": [ { "id": "status", @@ -336,58 +389,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "pin", - "color": { - "render": "#00", - "mappings": [ - { - "if": "status=0", - "then": "#959DFF" - }, - { - "if": "status=1", - "then": "#65D2DA" - }, - { - "if": "status=2", - "then": "#F7BB59" - }, - { - "if": "status=3", - "then": "#F7BB59" - }, - { - "if": "status=4", - "then": "#737373" - }, - { - "if": "status=5", - "then": "#CCB186" - }, - { - "if": "status=6", - "then": "#FF5E63" - }, - { - "if": "status=9", - "then": "#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 fc79029e3..2f192ebd8 100644 --- a/assets/layers/maproulette_challenge/maproulette_challenge.json +++ b/assets/layers/maproulette_challenge/maproulette_challenge.json @@ -28,6 +28,78 @@ "render": "" } ], + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "color": { + "mappings": [ + { + "if": "mr_taskStatus=Created", + "then": "#959DFF" + }, + { + "if": "mr_taskStatus=Fixed", + "then": "#65D2DA" + }, + { + "if": "mr_taskStatus=False positive", + "then": "#F7BB59" + }, + { + "if": "mr_taskStatus=Skipped", + "then": "#F7BB59" + }, + { + "if": "mr_taskStatus=Deleted", + "then": "#737373" + }, + { + "if": "mr_taskStatus=Already fixed", + "then": "#CCB186" + }, + { + "if": "mr_taskStatus=Too hard", + "then": "#FF5E63" + }, + { + "if": "mr_taskStatus=Disabled", + "then": "#FF349C" + } + ] + }, + "icon": { + "render": "./assets/layers/maproulette/logomark.svg", + "mappings": [ + { + "if": { + "or": [ + "mr_taskStatus=Created", + "mr_taskStatus=Fixed", + "mr_taskStatus=False positive", + "mr_taskStatus=Skipped", + "mr_taskStatus=Deleted", + "mr_taskStatus=Already fixed", + "mr_taskStatus=Already fixed", + "mr_taskStatus=Disabled", + "mr_taskStatus=Too hard" + ] + }, + "then": "pin" + } + ] + } + } + ], + "iconSize": "40,40", + "anchor": "bottom" + } + ], + "lineRendering": [], "tagRenderings": [ { "id": "details", @@ -217,77 +289,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "color": { - "mappings": [ - { - "if": "mr_taskStatus=Created", - "then": "#959DFF" - }, - { - "if": "mr_taskStatus=Fixed", - "then": "#65D2DA" - }, - { - "if": "mr_taskStatus=False positive", - "then": "#F7BB59" - }, - { - "if": "mr_taskStatus=Skipped", - "then": "#F7BB59" - }, - { - "if": "mr_taskStatus=Deleted", - "then": "#737373" - }, - { - "if": "mr_taskStatus=Already fixed", - "then": "#CCB186" - }, - { - "if": "mr_taskStatus=Too hard", - "then": "#FF5E63" - }, - { - "if": "mr_taskStatus=Disabled", - "then": "#FF349C" - } - ] - }, - "icon": { - "render": "./assets/layers/maproulette/logomark.svg", - "mappings": [ - { - "if": { - "or": [ - "mr_taskStatus=Created", - "mr_taskStatus=Fixed", - "mr_taskStatus=False positive", - "mr_taskStatus=Skipped", - "mr_taskStatus=Deleted", - "mr_taskStatus=Already fixed", - "mr_taskStatus=Already fixed", - "mr_taskStatus=Disabled", - "mr_taskStatus=Too hard" - ] - }, - "then": "pin" - } - ] - } - } - ], - "iconSize": "40,40", - "anchor": "bottom" - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/maxspeed/maxspeed.json b/assets/layers/maxspeed/maxspeed.json index 40d35324f..6ce88e50b 100644 --- a/assets/layers/maxspeed/maxspeed.json +++ b/assets/layers/maxspeed/maxspeed.json @@ -10,6 +10,15 @@ "fr": "Vitesse maximale", "cs": "Maximální rychlost" }, + "description": { + "en": "Shows the allowed speed for every road", + "de": "Zeigt die zulässige Geschwindigkeit für jede Straße an", + "nl": "Toont de toegestane snelheid voor elke weg", + "cs": "Zobrazuje povolenou rychlost pro každou silnici", + "ca": "Mostra la velocitat permesa per a cada carretera", + "fr": "Affiche les vitesses autorisées sur toutes les routes", + "pl": "Pokazuje dozwoloną prędkość na każdej drodze" + }, "source": { "osmTags": { "and": [ @@ -55,15 +64,47 @@ } ] }, - "description": { - "en": "Shows the allowed speed for every road", - "de": "Zeigt die zulässige Geschwindigkeit für jede Straße an", - "nl": "Toont de toegestane snelheid voor elke weg", - "cs": "Zobrazuje povolenou rychlost pro každou silnici", - "ca": "Mostra la velocitat permesa per a cada carretera", - "fr": "Affiche les vitesses autorisées sur toutes les routes", - "pl": "Pokazuje dozwoloną prędkość na każdej drodze" - }, + "pointRendering": [ + { + "marker": [ + { + "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" + } + ], "tagRenderings": [ { "render": { @@ -182,46 +223,5 @@ "maxspeed" ] } - ], - "pointRendering": [ - { - "marker": [ - { - "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 724d1defd..c49171f44 100644 --- a/assets/layers/memorial/memorial.json +++ b/assets/layers/memorial/memorial.json @@ -12,6 +12,24 @@ "cs": "Pamětní deska" } }, + "pointRendering": [ + { + "location": [ + "centroid", + "point" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/memorial/plaque.svg" + } + ] + } + ], + "lineRendering": [], "tagRenderings": [ { "id": "inscription", @@ -37,23 +55,5 @@ "allowMove": { "enableImproveAccuracy": true, "enableRelocation": false - }, - "pointRendering": [ - { - "location": [ - "centroid", - "point" - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/memorial/plaque.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/named_streets/named_streets.json b/assets/layers/named_streets/named_streets.json index 49fef0c78..9c2a3c1ba 100644 --- a/assets/layers/named_streets/named_streets.json +++ b/assets/layers/named_streets/named_streets.json @@ -1,7 +1,6 @@ { "id": "named_streets", "description": "Hidden layer with all streets which have a name. Useful to detect addresses", - "minzoom": 18, "source": { "osmTags": { "and": [ @@ -10,6 +9,7 @@ ] } }, + "minzoom": 18, "shownByDefault": false, "pointRendering": [], "lineRendering": [ diff --git a/assets/layers/nature_reserve/nature_reserve.json b/assets/layers/nature_reserve/nature_reserve.json index 2a0d22572..76196cf8b 100644 --- a/assets/layers/nature_reserve/nature_reserve.json +++ b/assets/layers/nature_reserve/nature_reserve.json @@ -8,7 +8,13 @@ "ca": "Reserva Natural", "cs": "Přírodní rezervace" }, - "minzoom": 12, + "description": { + "en": "A nature reserve is an area where nature can take its course", + "nl": "Een natuurgebied is een gebied waar actief ruimte gemaakt word voor de natuur. Typisch zijn deze in beheer van Natuurpunt of het Agentschap Natuur en Bos of zijn deze erkend door de overheid.", + "de": "Ein Naturschutzgebiet ist ein Gebiet, das der Natur überlassen wurde", + "ca": "Una reserva natural és una zona on la natura pot seguir el seu curs", + "cs": "Přírodní rezervace je území, kde se příroda může rozvíjet" + }, "source": { "osmTags": { "and": [ @@ -26,6 +32,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "nl": "Natuurgebied", @@ -48,13 +55,49 @@ } ] }, - "description": { - "en": "A nature reserve is an area where nature can take its course", - "nl": "Een natuurgebied is een gebied waar actief ruimte gemaakt word voor de natuur. Typisch zijn deze in beheer van Natuurpunt of het Agentschap Natuur en Bos of zijn deze erkend door de overheid.", - "de": "Ein Naturschutzgebiet ist ein Gebiet, das der Natur überlassen wurde", - "ca": "Una reserva natural és una zona on la natura pot seguir el seu curs", - "cs": "Přírodní rezervace je území, kde se příroda může rozvíjet" - }, + "pointRendering": [ + { + "iconSize": "50,50", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/layers/nature_reserve/nature_reserve.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#3c3", + "width": "1" + } + ], + "presets": [ + { + "tags": [ + "leisure=nature_reserve", + "fixme=Toegevoegd met MapComplete, geometry nog uit te tekenen" + ], + "title": { + "en": "a nature reserve", + "nl": "een natuurreservaat", + "de": "ein Schutzgebiet", + "ca": "una reserva natural", + "cs": "přírodní rezervace" + }, + "description": { + "en": "Add a missing nature reserve", + "nl": "Voeg een ontbrekend, erkend natuurreservaat toe, bv. een gebied dat beheerd wordt door het ANB of natuurpunt", + "de": "Ein fehlendes Naturschutzgebiet hinzufügen", + "ca": "Afegeix una reserva natural que falta", + "cs": "Přidat chybějící přírodní rezervaci" + } + } + ], "tagRenderings": [ "images", { @@ -497,28 +540,6 @@ }, "wikipedia" ], - "presets": [ - { - "tags": [ - "leisure=nature_reserve", - "fixme=Toegevoegd met MapComplete, geometry nog uit te tekenen" - ], - "title": { - "en": "a nature reserve", - "nl": "een natuurreservaat", - "de": "ein Schutzgebiet", - "ca": "una reserva natural", - "cs": "přírodní rezervace" - }, - "description": { - "en": "Add a missing nature reserve", - "nl": "Voeg een ontbrekend, erkend natuurreservaat toe, bv. een gebied dat beheerd wordt door het ANB of natuurpunt", - "de": "Ein fehlendes Naturschutzgebiet hinzufügen", - "ca": "Afegeix una reserva natural que falta", - "cs": "Přidat chybějící přírodní rezervaci" - } - } - ], "filter": [ { "id": "access", @@ -574,26 +595,5 @@ } ] } - ], - "pointRendering": [ - { - "iconSize": "50,50", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/layers/nature_reserve/nature_reserve.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#3c3", - "width": "1" - } ] } diff --git a/assets/layers/note/note.json b/assets/layers/note/note.json index a37ddf76b..cbf752842 100644 --- a/assets/layers/note/note.json +++ b/assets/layers/note/note.json @@ -16,6 +16,15 @@ "maxCacheAge": 0, "isOsmCache": false }, + "calculatedTags": [ + "_total_comments:=get(feat)('comments').length", + "_first_comment:=get(feat)('comments')[0].text", + "_opened_by_anonymous_user:=get(feat)('comments')[0].user === undefined", + "_first_user:=get(feat)('comments')[0].user", + "_last_user:=(() => {const comms = get(feat)('comments'); return comms[comms.length - 1].user})()", + "_first_user_id:=get(feat)('comments')[0].uid", + "_is_import_note:=(() => {const lines = feat.properties['_first_comment'].split('\\n'); const matchesMapCompleteURL = lines.map(l => l.match(\".*https://mapcomplete.\\(osm.be|org\\)/\\([a-zA-Z_-]+\\)\\(.html\\).*#import\")); const matchedIndexes = matchesMapCompleteURL.map((doesMatch, i) => [doesMatch !== null, i]).filter(v => v[0]).map(v => v[1]); return matchedIndexes[0] })()" + ], "minzoom": 10, "title": { "render": { @@ -43,20 +52,45 @@ } ] }, - "calculatedTags": [ - "_total_comments:=get(feat)('comments').length", - "_first_comment:=get(feat)('comments')[0].text", - "_opened_by_anonymous_user:=get(feat)('comments')[0].user === undefined", - "_first_user:=get(feat)('comments')[0].user", - "_last_user:=(() => {const comms = get(feat)('comments'); return comms[comms.length - 1].user})()", - "_first_user_id:=get(feat)('comments')[0].uid", - "_is_import_note:=(() => {const lines = feat.properties['_first_comment'].split('\\n'); const matchesMapCompleteURL = lines.map(l => l.match(\".*https://mapcomplete.\\(osm.be|org\\)/\\([a-zA-Z_-]+\\)\\(.html\\).*#import\")); const matchedIndexes = matchesMapCompleteURL.map((doesMatch, i) => [doesMatch !== null, i]).filter(v => v[0]).map(v => v[1]); return matchedIndexes[0] })()" - ], "titleIcons": [ { "render": "" } ], + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "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": [], "tagRenderings": [ { "id": "conversation", @@ -352,39 +386,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "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 b08977f6f..0a71f60e8 100644 --- a/assets/layers/observation_tower/observation_tower.json +++ b/assets/layers/observation_tower/observation_tower.json @@ -10,6 +10,22 @@ "pl": "Wieże obserwacyjne", "cs": "Rozhledny" }, + "description": { + "en": "Towers with a panoramic view", + "nl": "Torens om van het uitzicht te genieten", + "de": "Türme zur Aussicht auf die umgebende Landschaft", + "es": "Torres con vista panorámica", + "pl": "Wieże z panoramicznym widokiem", + "ca": "Torres amb vista panoràmica", + "cs": "Věže s panoramatickým výhledem" + }, + "source": { + "osmTags": { + "and": [ + "tower:type=observation" + ] + } + }, "minzoom": 8, "title": { "render": { @@ -38,15 +54,26 @@ } ] }, - "description": { - "en": "Towers with a panoramic view", - "nl": "Torens om van het uitzicht te genieten", - "de": "Türme zur Aussicht auf die umgebende Landschaft", - "es": "Torres con vista panorámica", - "pl": "Wieże z panoramicznym widokiem", - "ca": "Torres amb vista panoràmica", - "cs": "Věže s panoramatickým výhledem" - }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/observation_tower/Tower_observation.svg" + } + ] + } + ], + "lineRendering": [], "tagRenderings": [ "images", { @@ -329,12 +356,9 @@ }, "wikipedia" ], - "source": { - "osmTags": { - "and": [ - "tower:type=observation" - ] - } + "allowMove": { + "enableRelocation": false, + "enableImproveAccuraccy": true }, "units": [ { @@ -362,29 +386,5 @@ ], "eraseInvalidValues": true } - ], - "allowMove": { - "enableRelocation": false, - "enableImproveAccuraccy": true - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/observation_tower/Tower_observation.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/osm_community_index/osm_community_index.json b/assets/layers/osm_community_index/osm_community_index.json index f48f1b27f..cde21addc 100644 --- a/assets/layers/osm_community_index/osm_community_index.json +++ b/assets/layers/osm_community_index/osm_community_index.json @@ -8,6 +8,23 @@ "pl": "Indeks społeczności OSM", "cs": "OSM Community Index" }, + "description": { + "en": "A layer showing the OpenStreetMap Communities", + "de": "Eine Ebene aller OpenStreetMap-Communities", + "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", + "cs": "Vrstva zobrazující komunity OpenStreetMap" + }, + "source": { + "geoJson": "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/community_index/tile_{z}_{x}_{y}.geojson", + "geoJsonZoomLevel": 6, + "osmTags": "resources~*", + "isOsmCache": false + }, + "calculatedTags": [ + "_community_links=Object.values(JSON.parse(feat.properties.resources || '{}')).map(value =>{return value.resolved.nameHTML + '
     ' + value.resolved.descriptionHTML}).join('
    ')" + ], "title": { "render": { "en": "OSM Community Index", @@ -18,14 +35,29 @@ "cs": "OSM Community Index" } }, - "source": { - "geoJson": "https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/community_index/tile_{z}_{x}_{y}.geojson", - "geoJsonZoomLevel": 6, - "osmTags": "resources~*", - "isOsmCache": false - }, - "calculatedTags": [ - "_community_links=Object.values(JSON.parse(feat.properties.resources || '{}')).map(value =>{return value.resolved.nameHTML + '
     ' + value.resolved.descriptionHTML}).join('
    ')" + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point" + ], + "anchor": "bottom", + "marker": [ + { + "icon": "pin", + "color": "#6BC4F7" + }, + { + "icon": "./assets/layers/osm_community_index/osm.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#444444", + "width": "1" + } ], "tagRenderings": [ { @@ -153,37 +185,5 @@ } ] } - ], - "description": { - "en": "A layer showing the OpenStreetMap Communities", - "de": "Eine Ebene aller OpenStreetMap-Communities", - "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", - "cs": "Vrstva zobrazující komunity OpenStreetMap" - }, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point" - ], - "anchor": "bottom", - "marker": [ - { - "icon": "pin", - "color": "#6BC4F7" - }, - { - "icon": "./assets/layers/osm_community_index/osm.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#444444", - "width": "1" - } ] } diff --git a/assets/layers/parcel_lockers/parcel_lockers.json b/assets/layers/parcel_lockers/parcel_lockers.json index f6b72b867..812d2b501 100644 --- a/assets/layers/parcel_lockers/parcel_lockers.json +++ b/assets/layers/parcel_lockers/parcel_lockers.json @@ -18,7 +18,6 @@ "pl": "Warstwa pokazująca paczkomaty umożliwiające odbieranie i wysyłanie przesyłek.", "cs": "Vrstva se schránkami na balíky pro vyzvedávání a odesílání balíků." }, - "minzoom": 12, "source": { "osmTags": { "or": [ @@ -32,22 +31,7 @@ ] } }, - "presets": [ - { - "title": { - "en": "a parcel locker", - "nl": "een pakketautomaat", - "de": "ein Paketschließfach", - "ca": "una bústia intel·ligent", - "fr": "un casier à colis", - "pl": "paczkomat", - "cs": "schránky na balíky" - }, - "tags": [ - "amenity=parcel_locker" - ] - } - ], + "minzoom": 12, "title": { "render": { "en": "Parcel Locker", @@ -73,6 +57,48 @@ } ] }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "square", + "color": "white" + }, + { + "icon": "./assets/layers/parcel_lockers/parcel_lockers.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a parcel locker", + "nl": "een pakketautomaat", + "de": "ein Paketschließfach", + "ca": "una bústia intel·ligent", + "fr": "un casier à colis", + "pl": "paczkomat", + "cs": "schránky na balíky" + }, + "tags": [ + "amenity=parcel_locker" + ] + } + ], "tagRenderings": [ "images", { @@ -322,34 +348,8 @@ "filter": [ "open_now" ], + "deletion": true, "allowMove": { "enableImproveAccuracy": true - }, - "deletion": true, - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "square", - "color": "white" - }, - { - "icon": "./assets/layers/parcel_lockers/parcel_lockers.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/parking/parking.json b/assets/layers/parking/parking.json index bd4af6b06..fc5958597 100644 --- a/assets/layers/parking/parking.json +++ b/assets/layers/parking/parking.json @@ -11,10 +11,20 @@ "pl": "Parking", "cs": "Parkoviště" }, - "minzoom": 12, + "description": { + "en": "A layer showing car parkings", + "nl": "Deze laag toont autoparkings", + "de": "Eine Ebene mit Parkplätzen", + "es": "Una capa que muestra aparcamientos para coches", + "fr": "Un calque montrant les parkings", + "ca": "Una capa que mostra aparcaments per a cotxes", + "pl": "Warstwa pokazująca parkingi samochodowe", + "cs": "Vrstva zobrazující parkoviště" + }, "source": { "osmTags": "amenity=parking" }, + "minzoom": 12, "title": { "render": { "nl": "Parking voor auto's", @@ -27,16 +37,55 @@ "cs": "Parkování" } }, - "description": { - "en": "A layer showing car parkings", - "nl": "Deze laag toont autoparkings", - "de": "Eine Ebene mit Parkplätzen", - "es": "Una capa que muestra aparcamientos para coches", - "fr": "Un calque montrant les parkings", - "ca": "Una capa que mostra aparcaments per a cotxes", - "pl": "Warstwa pokazująca parkingi samochodowe", - "cs": "Vrstva zobrazující parkoviště" - }, + "pointRendering": [ + { + "iconSize": "36,36", + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": { + "or": [ + "capacity:disabled>0", + "capacity:disabled=yes" + ] + }, + "then": "circle:white;./assets/layers/toilet/wheelchair.svg" + } + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/layers/parking/parking.svg" + } + ] + } + ], + "lineRendering": [ + { + "width": 2, + "color": "#ddcc00" + } + ], + "presets": [ + { + "tags": [ + "amenity=parking" + ], + "title": { + "nl": "een parking voor auto's", + "en": "a car parking", + "de": "einen Parkplatz", + "es": "un aparcamiento de coches", + "fr": "un lieu de stationnement pour voitures", + "ca": "un aparcament per a cotxes", + "pl": "parking samochodowy", + "cs": "parkoviště" + } + } + ], "tagRenderings": [ "images", "level", @@ -272,23 +321,6 @@ } } ], - "presets": [ - { - "tags": [ - "amenity=parking" - ], - "title": { - "nl": "een parking voor auto's", - "en": "a car parking", - "de": "einen Parkplatz", - "es": "un aparcamiento de coches", - "fr": "un lieu de stationnement pour voitures", - "ca": "un aparcament per a cotxes", - "pl": "parking samochodowy", - "cs": "parkoviště" - } - } - ], "deletion": { "softDeletionTags": { "and": [ @@ -301,37 +333,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuracy": true - }, - "pointRendering": [ - { - "iconSize": "36,36", - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": { - "or": [ - "capacity:disabled>0", - "capacity:disabled=yes" - ] - }, - "then": "circle:white;./assets/layers/toilet/wheelchair.svg" - } - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/layers/parking/parking.svg" - } - ] - } - ], - "lineRendering": [ - { - "width": 2, - "color": "#ddcc00" - } - ] + } } diff --git a/assets/layers/parking_spaces/parking_spaces.json b/assets/layers/parking_spaces/parking_spaces.json index 018aecd7a..ab10f4bf4 100644 --- a/assets/layers/parking_spaces/parking_spaces.json +++ b/assets/layers/parking_spaces/parking_spaces.json @@ -16,10 +16,59 @@ "ca": "Capa que mostra aparcaments de cotxes individuals.", "cs": "Vrstva zobrazující jednotlivá parkovací místa." }, - "minzoom": 18, "source": { "osmTags": "amenity=parking_space" }, + "minzoom": 18, + "title": { + "render": { + "en": "Parking Space", + "de": "Stellplatz", + "nl": "Parkeerplek", + "ca": "Espai d'aparcament", + "cs": "Parkovací místo" + }, + "mappings": [ + { + "if": "parking_space=disabled", + "then": { + "en": "Disabled Parking Space", + "nl": "Parkeerplek voor gehandicapten", + "de": "Behindertenparkplatz", + "cs": "Parkovací místo pro osoby se zdravotním postižením" + } + } + ] + }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/layers/parking_spaces/parking_space.svg", + "mappings": [ + { + "if": "parking_space=disabled", + "then": "./assets/layers/toilet/wheelchair.svg" + } + ] + } + } + ], + "iconSize": "20,20", + "location": [ + "point", + "centroid" + ], + "anchor": "center" + } + ], + "lineRendering": [ + { + "color": "#696969", + "width": "1" + } + ], "tagRenderings": [ "images", { @@ -214,54 +263,5 @@ } ] } - ], - "title": { - "render": { - "en": "Parking Space", - "de": "Stellplatz", - "nl": "Parkeerplek", - "ca": "Espai d'aparcament", - "cs": "Parkovací místo" - }, - "mappings": [ - { - "if": "parking_space=disabled", - "then": { - "en": "Disabled Parking Space", - "nl": "Parkeerplek voor gehandicapten", - "de": "Behindertenparkplatz", - "cs": "Parkovací místo pro osoby se zdravotním postižením" - } - } - ] - }, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/layers/parking_spaces/parking_space.svg", - "mappings": [ - { - "if": "parking_space=disabled", - "then": "./assets/layers/toilet/wheelchair.svg" - } - ] - } - } - ], - "iconSize": "20,20", - "location": [ - "point", - "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 8dee4fda1..bc28714ab 100644 --- a/assets/layers/parking_ticket_machine/parking_ticket_machine.json +++ b/assets/layers/parking_ticket_machine/parking_ticket_machine.json @@ -14,15 +14,6 @@ "ca": "Capa amb màquines de bitllets d'aparcament per pagar l'aparcament.", "cs": "Vrstva s parkovacími automaty pro placení parkovného." }, - "title": { - "render": { - "en": "Parking Ticket Machine", - "nl": "Parkeerkaartautomaat", - "de": "Parkscheinautomat", - "ca": "Màquina de bitllets d'aparcament", - "cs": "Parkovací automat" - } - }, "source": { "osmTags": { "and": [ @@ -32,6 +23,35 @@ } }, "minzoom": 16, + "title": { + "render": { + "en": "Parking Ticket Machine", + "nl": "Parkeerkaartautomaat", + "de": "Parkscheinautomat", + "ca": "Màquina de bitllets d'aparcament", + "cs": "Parkovací automat" + } + }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "20,20", + "anchor": "center", + "marker": [ + { + "icon": "square", + "color": "white" + }, + { + "icon": "./assets/layers/parking_ticket_machine/parking_tickets.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "tags": [ @@ -93,25 +113,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "20,20", - "anchor": "center", - "marker": [ - { - "icon": "square", - "color": "white" - }, - { - "icon": "./assets/layers/parking_ticket_machine/parking_tickets.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/pedestrian_path/pedestrian_path.json b/assets/layers/pedestrian_path/pedestrian_path.json index 411e830e8..87c84cf43 100644 --- a/assets/layers/pedestrian_path/pedestrian_path.json +++ b/assets/layers/pedestrian_path/pedestrian_path.json @@ -8,7 +8,14 @@ "ca": "Camins per a vianants", "cs": "Cesty pro chodce" }, - "minzoom": 18, + "description": { + "en": "Pedestrian footpaths, especially used for indoor navigation and snapping entrances to this layer", + "nl": "Pad voor voetgangers, in het bijzonder gebruikt voor navigatie binnen gebouwen en om aan toegangen vast te klikken in deze laag", + "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", + "ca": "Senderes per a vianants, especialment utilitzades per a la navegació interior i les entrades ràpides a aquesta capa", + "cs": "Chodníky pro pěší, používané zejména pro navigaci v interiéru a zachycení vstupů do této vrstvy" + }, "source": { "osmTags": { "or": [ @@ -19,14 +26,7 @@ ] } }, - "description": { - "en": "Pedestrian footpaths, especially used for indoor navigation and snapping entrances to this layer", - "nl": "Pad voor voetgangers, in het bijzonder gebruikt voor navigatie binnen gebouwen en om aan toegangen vast te klikken in deze laag", - "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", - "ca": "Senderes per a vianants, especialment utilitzades per a la navegació interior i les entrades ràpides a aquesta capa", - "cs": "Chodníky pro pěší, používané zejména pro navigaci v interiéru a zachycení vstupů do této vrstvy" - }, + "minzoom": 18, "pointRendering": [ { "location": [ diff --git a/assets/layers/pharmacy/pharmacy.json b/assets/layers/pharmacy/pharmacy.json index ab6d0cb42..5357ba9a4 100644 --- a/assets/layers/pharmacy/pharmacy.json +++ b/assets/layers/pharmacy/pharmacy.json @@ -17,6 +17,14 @@ "ca": "Una capa que mostra les farmàcies, que (probablement) distribueixen medicaments amb recepta", "cs": "Vrstva zobrazující lékárny, které (pravděpodobně) vydávají léky na předpis" }, + "source": { + "osmTags": { + "and": [ + "amenity=pharmacy" + ] + } + }, + "minzoom": 13, "title": { "render": { "en": "{name}", @@ -41,14 +49,51 @@ } ] }, - "source": { - "osmTags": { - "and": [ - "amenity=pharmacy" + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "anchor": "bottom", + "marker": [ + { + "icon": "./assets/layers/pharmacy/pharmacy.svg" + } ] } - }, - "minzoom": 13, + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=pharmacy" + ], + "title": { + "en": "a pharmacy", + "nl": "een apotheek", + "de": "eine Apotheke", + "fr": "une pharmacie", + "ca": "una farmàcia", + "cs": "lékárna" + } + } + ], "tagRenderings": [ "images", "reviews", @@ -169,51 +214,6 @@ }, "open_now" ], - "presets": [ - { - "tags": [ - "amenity=pharmacy" - ], - "title": { - "en": "a pharmacy", - "nl": "een apotheek", - "de": "eine Apotheke", - "fr": "une pharmacie", - "ca": "una farmàcia", - "cs": "lékárna" - } - } - ], "deletion": true, - "allowMove": true, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "anchor": "bottom", - "marker": [ - { - "icon": "./assets/layers/pharmacy/pharmacy.svg" - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/physiotherapist/physiotherapist.json b/assets/layers/physiotherapist/physiotherapist.json index 8a8f6b90c..9d95f68b8 100644 --- a/assets/layers/physiotherapist/physiotherapist.json +++ b/assets/layers/physiotherapist/physiotherapist.json @@ -17,6 +17,7 @@ "source": { "osmTags": "healthcare=physiotherapist" }, + "minzoom": 13, "title": { "render": { "en": "Physiotherapist {name}", @@ -26,7 +27,41 @@ "cs": "Fyzioterapeut {name}" } }, - "minzoom": 13, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/physiotherapist/doctors.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a physiotherapists office", + "de": "Praxis eines Physiotherapeuten", + "nl": "een fysiotherapeutenpraktijk", + "fr": "un cabinet de kinésithérapeutes", + "ca": "una consulta fisioterapèutica", + "cs": "ordinace fyzioterapeuta" + }, + "tags": [ + "healthcare=physiotherapist" + ] + } + ], "tagRenderings": [ "images", { @@ -54,44 +89,9 @@ "email", "website" ], - "presets": [ - { - "title": { - "en": "a physiotherapists office", - "de": "Praxis eines Physiotherapeuten", - "nl": "een fysiotherapeutenpraktijk", - "fr": "un cabinet de kinésithérapeutes", - "ca": "una consulta fisioterapèutica", - "cs": "ordinace fyzioterapeuta" - }, - "tags": [ - "healthcare=physiotherapist" - ] - } - ], "filter": [ "open_now" ], "deletion": true, - "allowMove": true, - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/physiotherapist/doctors.svg" - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/picnic_table/picnic_table.json b/assets/layers/picnic_table/picnic_table.json index ace635314..170f2caf3 100644 --- a/assets/layers/picnic_table/picnic_table.json +++ b/assets/layers/picnic_table/picnic_table.json @@ -11,10 +11,21 @@ "es": "Mesas de pícnic", "cs": "Piknikové stoly" }, - "minzoom": 12, + "description": { + "en": "The layer showing picnic tables", + "nl": "Deze laag toont picknicktafels", + "it": "Il livello che mostra i tavoli da picnic", + "fr": "La couche montrant les tables de pique-nique", + "ru": "Слой, отображающий столы для пикника", + "de": "Die Ebene zeigt Picknicktische an", + "es": "Una capa que muestra mesas de pícnic", + "ca": "La capa mostra taules de pícnic", + "cs": "Vrstva zobrazující piknikové stoly" + }, "source": { "osmTags": "leisure=picnic_table" }, + "minzoom": 12, "title": { "render": { "en": "Picnic table", @@ -28,17 +39,44 @@ "cs": "Piknikový stůl" } }, - "description": { - "en": "The layer showing picnic tables", - "nl": "Deze laag toont picknicktafels", - "it": "Il livello che mostra i tavoli da picnic", - "fr": "La couche montrant les tables de pique-nique", - "ru": "Слой, отображающий столы для пикника", - "de": "Die Ebene zeigt Picknicktische an", - "es": "Una capa que muestra mesas de pícnic", - "ca": "La capa mostra taules de pícnic", - "cs": "Vrstva zobrazující piknikové stoly" - }, + "pointRendering": [ + { + "iconSize": "35,35", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "#e6cf39" + }, + { + "icon": "./assets/layers/picnic_table/picnic_table.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "leisure=picnic_table" + ], + "title": { + "en": "a picnic table", + "nl": "een picknicktafel", + "it": "una tavolo da picnic", + "ru": "стол для пикника", + "de": "einen Picknick-Tisch", + "fr": "une table de pique-nique", + "es": "una mesa de pícnic", + "ca": "una taula de pícnic", + "cs": "piknikový stůl" + } + } + ], "tagRenderings": [ "images", "level", @@ -113,24 +151,6 @@ "id": "picnic_table-material" } ], - "presets": [ - { - "tags": [ - "leisure=picnic_table" - ], - "title": { - "en": "a picnic table", - "nl": "een picknicktafel", - "it": "una tavolo da picnic", - "ru": "стол для пикника", - "de": "einen Picknick-Tisch", - "fr": "une table de pique-nique", - "es": "una mesa de pícnic", - "ca": "una taula de pícnic", - "cs": "piknikový stůl" - } - } - ], "deletion": { "softDeletionTags": { "and": [ @@ -143,25 +163,5 @@ "allowMove": { "enableRelocation": false, "enableImproveAccuraccy": true - }, - "pointRendering": [ - { - "iconSize": "35,35", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "#e6cf39" - }, - { - "icon": "./assets/layers/picnic_table/picnic_table.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/play_forest/play_forest.json b/assets/layers/play_forest/play_forest.json index 7bc37de70..5a81c3feb 100644 --- a/assets/layers/play_forest/play_forest.json +++ b/assets/layers/play_forest/play_forest.json @@ -3,7 +3,9 @@ "name": { "nl": "Speelbossen" }, - "minzoom": 13, + "description": { + "nl": "Een speelbos is een vrij toegankelijke zone in een bos" + }, "source": { "osmTags": { "and": [ @@ -11,6 +13,7 @@ ] } }, + "minzoom": 13, "title": { "render": { "nl": "Speelbos" @@ -30,9 +33,40 @@ } ] }, - "description": { - "nl": "Een speelbos is een vrij toegankelijke zone in een bos" - }, + "pointRendering": [ + { + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/layers/play_forest/icon.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#007055", + "width": "2" + } + ], + "presets": [ + { + "title": { + "*": "Speelbos" + }, + "tags": [ + "leisure=playground", + "playground=forest", + "fixme=Toegevoegd met MapComplete, geometry nog uit te tekenen" + ], + "description": "Een zone in het bos, duidelijk gemarkeerd als speelzone met de overeenkomstige borden.
    " + } + ], "tagRenderings": [ "images", { @@ -92,39 +126,5 @@ "render": "{reviews(name, play_forest)}" } ], - "hideFromOverview": false, - "presets": [ - { - "title": { - "*": "Speelbos" - }, - "tags": [ - "leisure=playground", - "playground=forest", - "fixme=Toegevoegd met MapComplete, geometry nog uit te tekenen" - ], - "description": "Een zone in het bos, duidelijk gemarkeerd als speelzone met de overeenkomstige borden.
    " - } - ], - "pointRendering": [ - { - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/layers/play_forest/icon.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#007055", - "width": "2" - } - ] + "hideFromOverview": false } diff --git a/assets/layers/playground/playground.json b/assets/layers/playground/playground.json index 922dcf099..c29fcdee5 100644 --- a/assets/layers/playground/playground.json +++ b/assets/layers/playground/playground.json @@ -11,18 +11,6 @@ "pa_PK": "کھید دے میدان", "cs": "Dětská hřiště" }, - "minzoom": 13, - "source": { - "osmTags": { - "and": [ - "leisure=playground", - "playground!=forest" - ] - } - }, - "calculatedTags": [ - "_size_classification=Number(feat.properties._surface) < 10 ? 'small' : (Number(feat.properties._surface) < 100 ? 'medium' : 'large') " - ], "description": { "nl": "Speeltuinen", "en": "Playgrounds", @@ -34,6 +22,18 @@ "pa_PK": "کھید دے میدان", "cs": "Dětská hřiště" }, + "source": { + "osmTags": { + "and": [ + "leisure=playground", + "playground!=forest" + ] + } + }, + "calculatedTags": [ + "_size_classification=Number(feat.properties._surface) < 10 ? 'small' : (Number(feat.properties._surface) < 100 ? 'medium' : 'large') " + ], + "minzoom": 13, "title": { "render": { "nl": "Speeltuin", @@ -62,6 +62,74 @@ } ] }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": { + "and": [ + "opening_hours!=24/7", + "opening_hours~*" + ] + }, + "then": "icons.isOpen" + } + ], + "iconSize": { + "render": "40,40,center", + "mappings": [ + { + "if": "id~node/.*", + "then": "40,40,center" + }, + { + "if": "_size_classification=small", + "then": "25,25,center" + }, + { + "if": "_size_classification=medium", + "then": "40,40,center" + }, + { + "if": "_size_classification=large", + "then": "60,60,center" + } + ] + }, + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "./assets/themes/playgrounds/playground.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#5dbaa9", + "width": "1" + } + ], + "presets": [ + { + "tags": [ + "leisure=playground" + ], + "title": { + "nl": "een speeltuin", + "en": "a playground", + "ru": "Детская площадка", + "fr": "une terrain de jeux", + "it": "una campetto", + "de": "einen Spielplatz", + "ca": "un parc infantil", + "cs": "hřiště" + } + } + ], "tagRenderings": [ "images", { @@ -607,23 +675,6 @@ "render": "{reviews(name, playground)}" } ], - "presets": [ - { - "tags": [ - "leisure=playground" - ], - "title": { - "nl": "een speeltuin", - "en": "a playground", - "ru": "Детская площадка", - "fr": "une terrain de jeux", - "it": "una campetto", - "de": "einen Spielplatz", - "ca": "un parc infantil", - "cs": "hřiště" - } - } - ], "deletion": { "nonDeleteMappings": [ { @@ -643,56 +694,5 @@ "leisure=" ] } - }, - "pointRendering": [ - { - "iconBadges": [ - { - "if": { - "and": [ - "opening_hours!=24/7", - "opening_hours~*" - ] - }, - "then": "icons.isOpen" - } - ], - "iconSize": { - "render": "40,40,center", - "mappings": [ - { - "if": "id~node/.*", - "then": "40,40,center" - }, - { - "if": "_size_classification=small", - "then": "25,25,center" - }, - { - "if": "_size_classification=medium", - "then": "40,40,center" - }, - { - "if": "_size_classification=large", - "then": "60,60,center" - } - ] - }, - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "./assets/themes/playgrounds/playground.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#5dbaa9", - "width": "1" - } - ] + } } diff --git a/assets/layers/postboxes/postboxes.json b/assets/layers/postboxes/postboxes.json index 4c14ed1a9..ea67f8518 100644 --- a/assets/layers/postboxes/postboxes.json +++ b/assets/layers/postboxes/postboxes.json @@ -14,10 +14,23 @@ "fr": "Boîtes à lettres", "cs": "Poštovní schránky" }, - "minzoom": 12, + "description": { + "en": "The layer showing postboxes.", + "de": "Die Ebene zeigt Briefkästen.", + "zh_Hant": "這圖層顯示郵筒。", + "id": "Layer yang memperlihatkan kotak pos.", + "hu": "Postaládákat megjelenítő réteg.", + "nl": "Deze laag toont brievenbussen.", + "es": "La capa que mostrando buzones de correo.", + "fr": "Le calque montrant les boîtes à lettres.", + "ca": "La capa que mostra bústies de correus.", + "cs": "Vrstva zobrazující poštovní schránky.", + "pl": "Warstwa pokazująca skrzynki pocztowe." + }, "source": { "osmTags": "amenity=post_box" }, + "minzoom": 12, "title": { "render": { "en": "Postbox", @@ -34,54 +47,6 @@ "cs": "Poštovní schránka" } }, - "description": { - "en": "The layer showing postboxes.", - "de": "Die Ebene zeigt Briefkästen.", - "zh_Hant": "這圖層顯示郵筒。", - "id": "Layer yang memperlihatkan kotak pos.", - "hu": "Postaládákat megjelenítő réteg.", - "nl": "Deze laag toont brievenbussen.", - "es": "La capa que mostrando buzones de correo.", - "fr": "Le calque montrant les boîtes à lettres.", - "ca": "La capa que mostra bústies de correus.", - "cs": "Vrstva zobrazující poštovní schránky.", - "pl": "Warstwa pokazująca skrzynki pocztowe." - }, - "tagRenderings": [ - "images", - { - "id": "minimap", - "render": "{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }" - } - ], - "presets": [ - { - "tags": [ - "amenity=post_box" - ], - "title": { - "en": "a postbox", - "de": "ein Briefkasten", - "ru": "почтовый ящик", - "zh_Hant": "郵筒", - "id": "kotak pos", - "hu": "postaláda", - "nl": "een brievenbus", - "ca": "una bústia", - "es": "un buzón de correo", - "fr": "une boîte à lettres", - "cs": "poštovní schránka" - } - } - ], - "deletion": { - "softDeletionTags": { - "and": [ - "amenity=", - "razed:amenity=post_box" - ] - } - }, "pointRendering": [ { "iconSize": "40,40", @@ -102,5 +67,40 @@ "color": "#DADADA", "width": "1" } - ] + ], + "presets": [ + { + "tags": [ + "amenity=post_box" + ], + "title": { + "en": "a postbox", + "de": "ein Briefkasten", + "ru": "почтовый ящик", + "zh_Hant": "郵筒", + "id": "kotak pos", + "hu": "postaláda", + "nl": "een brievenbus", + "ca": "una bústia", + "es": "un buzón de correo", + "fr": "une boîte à lettres", + "cs": "poštovní schránka" + } + } + ], + "tagRenderings": [ + "images", + { + "id": "minimap", + "render": "{minimap(18): height: 5rem; overflow: hidden; border-radius:3rem; }" + } + ], + "deletion": { + "softDeletionTags": { + "and": [ + "amenity=", + "razed:amenity=post_box" + ] + } + } } diff --git a/assets/layers/postoffices/postoffices.json b/assets/layers/postoffices/postoffices.json index bb1af7c21..826b68ca2 100644 --- a/assets/layers/postoffices/postoffices.json +++ b/assets/layers/postoffices/postoffices.json @@ -14,7 +14,19 @@ "nb_NO": "Postkontor", "cs": "Pošty" }, - "minzoom": 12, + "description": { + "en": "A layer showing post offices.", + "de": "Eine Ebene mit Postämtern.", + "zh_Hant": "圖層顯示郵局。", + "id": "Layer yang menunjukkan kantor pos.", + "hu": "Postákat megjelenítő réteg.", + "nl": "Een laag die postkantoren toont.", + "es": "Una capa que muestra oficinas postales.", + "fr": "Un claque montrant les bureaux de poste.", + "nb_NO": "Et lag som viser postkontor.", + "ca": "Una capa que mostra oficines postals.", + "cs": "Vrstva zobrazující pošty." + }, "source": { "osmTags": { "or": [ @@ -23,6 +35,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Post Office", @@ -69,19 +82,62 @@ } ] }, - "description": { - "en": "A layer showing post offices.", - "de": "Eine Ebene mit Postämtern.", - "zh_Hant": "圖層顯示郵局。", - "id": "Layer yang menunjukkan kantor pos.", - "hu": "Postákat megjelenítő réteg.", - "nl": "Een laag die postkantoren toont.", - "es": "Una capa que muestra oficinas postales.", - "fr": "Un claque montrant les bureaux de poste.", - "nb_NO": "Et lag som viser postkontor.", - "ca": "Una capa que mostra oficines postals.", - "cs": "Vrstva zobrazující pošty." - }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + }, + { + "if": "shop~*", + "then": "./assets/themes/shops/shop.svg" + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "square", + "color": "white" + }, + { + "icon": "./assets/layers/postoffices/post_office.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#DADADA", + "width": "1" + } + ], + "presets": [ + { + "tags": [ + "amenity=post_office" + ], + "title": { + "en": "a post office", + "de": "eine Poststelle", + "ru": "Почтовое отделение", + "zh_Hant": "郵局", + "id": "Kantor Pos", + "hu": "Posta", + "nl": "een postkantoor", + "ca": "una oficina de correus", + "es": "una oficina de correo", + "nb_NO": "et postkontor", + "fr": "un bureau de poste", + "cs": "pošta" + } + } + ], "tagRenderings": [ "images", { @@ -495,63 +551,7 @@ ] } ], - "presets": [ - { - "tags": [ - "amenity=post_office" - ], - "title": { - "en": "a post office", - "de": "eine Poststelle", - "ru": "Почтовое отделение", - "zh_Hant": "郵局", - "id": "Kantor Pos", - "hu": "Posta", - "nl": "een postkantoor", - "ca": "una oficina de correus", - "es": "una oficina de correo", - "nb_NO": "et postkontor", - "fr": "un bureau de poste", - "cs": "pošta" - } - } - ], "filter": [ "open_now" - ], - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - }, - { - "if": "shop~*", - "then": "./assets/themes/shops/shop.svg" - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "square", - "color": "white" - }, - { - "icon": "./assets/layers/postoffices/post_office.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#DADADA", - "width": "1" - } ] } diff --git a/assets/layers/public_bookcase/public_bookcase.json b/assets/layers/public_bookcase/public_bookcase.json index 43dcf8397..72025489a 100644 --- a/assets/layers/public_bookcase/public_bookcase.json +++ b/assets/layers/public_bookcase/public_bookcase.json @@ -55,6 +55,37 @@ } ] }, + "pointRendering": [ + { + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "circle", + "color": "#ffffff" + }, + { + "icon": "./assets/themes/bookcases/bookcase.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#0000ff", + "width": "8" + } + ], "presets": [ { "title": { @@ -524,16 +555,6 @@ "id": "public_bookcase-website" } ], - "allowMove": true, - "deletion": { - "softDeletionTags": { - "and": [ - "disused:amenity=public_bookcase", - "amenity=" - ] - }, - "neededChangesets": 5 - }, "filter": [ { "id": "kid-books", @@ -608,35 +629,14 @@ }, "has_image" ], - "pointRendering": [ - { - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "circle", - "color": "#ffffff" - }, - { - "icon": "./assets/themes/bookcases/bookcase.svg" - } + "deletion": { + "softDeletionTags": { + "and": [ + "disused:amenity=public_bookcase", + "amenity=" ] - } - ], - "lineRendering": [ - { - "color": "#0000ff", - "width": "8" - } - ] + }, + "neededChangesets": 5 + }, + "allowMove": true } diff --git a/assets/layers/questions/questions.json b/assets/layers/questions/questions.json index 954460f30..2c4bb5dba 100644 --- a/assets/layers/questions/questions.json +++ b/assets/layers/questions/questions.json @@ -2,8 +2,8 @@ "id": "questions", "description": "Special library layer which does not need a '.questions'-prefix before being imported", "source": "special:library", - "lineRendering": null, "pointRendering": null, + "lineRendering": null, "tagRenderings": [ { "id": "questions", diff --git a/assets/layers/railway_platforms/railway_platforms.json b/assets/layers/railway_platforms/railway_platforms.json index 4dedd556d..2be319b5c 100644 --- a/assets/layers/railway_platforms/railway_platforms.json +++ b/assets/layers/railway_platforms/railway_platforms.json @@ -16,6 +16,14 @@ "ca": "Trobeu totes les andanes de l'estació i les rutes de tren que les fan servir.", "cs": "Najděte všechna nástupiště ve stanici a vlakové trasy, které je používají." }, + "source": { + "osmTags": { + "or": [ + "railway=platform" + ] + } + }, + "minzoom": 18, "title": { "render": { "en": "Platform", @@ -39,14 +47,32 @@ } ] }, - "source": { - "osmTags": { - "or": [ - "railway=platform" + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "label": { + "mappings": [ + { + "if": "ref~*", + "then": "
    {ref}
    " + } + ] + }, + "marker": [ + { + "icon": "./assets/themes/stations/rail-light.svg" + } ] } - }, - "minzoom": 18, + ], + "lineRendering": [ + { + "color": "gray" + } + ], "tagRenderings": [ { "id": "ref", @@ -80,31 +106,5 @@ } }, "level" - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "label": { - "mappings": [ - { - "if": "ref~*", - "then": "
    {ref}
    " - } - ] - }, - "marker": [ - { - "icon": "./assets/themes/stations/rail-light.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "gray" - } ] } diff --git a/assets/layers/rainbow_crossings/rainbow_crossings.json b/assets/layers/rainbow_crossings/rainbow_crossings.json index e4039ea20..ba7d92e27 100644 --- a/assets/layers/rainbow_crossings/rainbow_crossings.json +++ b/assets/layers/rainbow_crossings/rainbow_crossings.json @@ -41,6 +41,37 @@ "cs": "Přechod" } }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/themes/rainbow_crossings/crossing.svg", + "mappings": [ + { + "if": "surface:colour=rainbow", + "then": "./assets/themes/rainbow_crossings/logo.svg" + } + ] + } + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center" + } + ], + "lineRendering": [ + { + "color": "red", + "width": "5", + "dashArray": "10 2", + "lineCap": "square" + } + ], "presets": [ { "title": { @@ -120,36 +151,5 @@ } ] } - ], - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/themes/rainbow_crossings/crossing.svg", - "mappings": [ - { - "if": "surface:colour=rainbow", - "then": "./assets/themes/rainbow_crossings/logo.svg" - } - ] - } - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center" - } - ], - "lineRendering": [ - { - "color": "red", - "width": "5", - "dashArray": "10 2", - "lineCap": "square" - } ] } diff --git a/assets/layers/range/range.json b/assets/layers/range/range.json index aa985b8be..ae92cb021 100644 --- a/assets/layers/range/range.json +++ b/assets/layers/range/range.json @@ -1,10 +1,10 @@ { "id": "range", - "description": "Meta-layer, simply showing a bbox in red", - "title": null, - "source": "special", "name": null, + "description": "Meta-layer, simply showing a bbox in red", + "source": "special", "shownByDefault": false, + "title": null, "pointRendering": [], "lineRendering": [ { diff --git a/assets/layers/reception_desk/reception_desk.json b/assets/layers/reception_desk/reception_desk.json index 3eb1fc431..b8e017a87 100644 --- a/assets/layers/reception_desk/reception_desk.json +++ b/assets/layers/reception_desk/reception_desk.json @@ -14,6 +14,9 @@ "ca": "Una capa que mostra on es troben els mostradors de recepció i que demana informació d'accessibilitat", "cs": "Vrstva, která ukazuje, kde se nacházejí recepce, a která se ptá na některé informace o přístupnosti" }, + "source": { + "osmTags": "amenity=reception_desk" + }, "title": { "render": { "en": "Reception desk", @@ -23,9 +26,40 @@ "cs": "Recepční pult" } }, - "source": { - "osmTags": "amenity=reception_desk" - }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "40,40", + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/reception_desk/reception_desk.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=reception_desk" + ], + "title": { + "en": "a reception desk", + "fr": "un bureau d'accueil", + "de": "einen Empfangstresen", + "ca": "una recepció", + "cs": "recepční pult" + } + } + ], "tagRenderings": [ "images", "level", @@ -62,20 +96,6 @@ }, "induction-loop" ], - "presets": [ - { - "tags": [ - "amenity=reception_desk" - ], - "title": { - "en": "a reception desk", - "fr": "un bureau d'accueil", - "de": "einen Empfangstresen", - "ca": "una recepció", - "cs": "recepční pult" - } - } - ], "units": [ { "appliesToKey": [ @@ -117,25 +137,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "40,40", - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/reception_desk/reception_desk.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/recycling/recycling.json b/assets/layers/recycling/recycling.json index 0899b9e7c..ab0859032 100644 --- a/assets/layers/recycling/recycling.json +++ b/assets/layers/recycling/recycling.json @@ -82,6 +82,455 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:batteries=yes" + ] + }, + "then": "./assets/layers/recycling/batteries.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:beverage_cartons=yes" + ] + }, + "then": "./assets/layers/recycling/beverage_cartons.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:cans=yes" + ] + }, + "then": "./assets/layers/recycling/cans.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:clothes=yes" + ] + }, + "then": "./assets/layers/recycling/clothes.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:cooking_oil=yes" + ] + }, + "then": "./assets/layers/recycling/cooking_oil.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:engine_oil=yes" + ] + }, + "then": "./assets/layers/recycling/engine_oil.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:fluorescent_tubes=yes" + ] + }, + "then": "./assets/layers/recycling/fluorescent_tubes.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:glass=yes" + ] + }, + "then": "./assets/layers/recycling/glass.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:glass_bottles=yes" + ] + }, + "then": "./assets/layers/recycling/glass_bottles.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + { + "or": [ + "recycling:green_waste=yes", + "recycling:organic=yes" + ] + } + ] + }, + "then": "./assets/layers/recycling/garden_waste.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:light_bulbs=yes" + ] + }, + "then": "./assets/layers/recycling/light_bulbs.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:newspaper=yes" + ] + }, + "then": "./assets/layers/recycling/newspaper.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:paper=yes" + ] + }, + "then": "./assets/layers/recycling/paper.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:plastic_bottles=yes" + ] + }, + "then": "./assets/layers/recycling/plastic_bottles.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:plastic_packaging=yes" + ] + }, + "then": "./assets/layers/recycling/plastic_packaging.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:plastic=yes" + ] + }, + "then": "./assets/layers/recycling/plastic.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:printer_cartridges=yes" + ] + }, + "then": "./assets/layers/recycling/printer_cartridges.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:scrap_metal=yes" + ] + }, + "then": "./assets/layers/recycling/scrap_metal.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:shoes=yes" + ] + }, + "then": "./assets/layers/recycling/shoes.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + { + "or": [ + "recycling:small_appliances=yes", + "recycling:small_electrical_appliances=yes" + ] + } + ] + }, + "then": "./assets/layers/recycling/small_electrical_appliances.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:waste=yes" + ] + }, + "then": "./assets/layers/waste_disposal/waste_disposal.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:needles=yes" + ] + }, + "then": "./assets/layers/recycling/needles.svg" + }, + { + "if": { + "and": [ + "_waste_amount>1", + "recycling:bicycles=yes" + ] + }, + "then": "./assets/layers/recycling/bicycles.svg" + } + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/recycling/recycling-14.svg", + "mappings": [ + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:batteries=yes" + ] + }, + "then": "./assets/layers/recycling/batteries.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:beverage_cartons=yes" + ] + }, + "then": "./assets/layers/recycling/beverage_cartons.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:cans=yes" + ] + }, + "then": "./assets/layers/recycling/cans.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:clothes=yes" + ] + }, + "then": "./assets/layers/recycling/clothes.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:cooking_oil=yes" + ] + }, + "then": "./assets/layers/recycling/cooking_oil.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:engine_oil=yes" + ] + }, + "then": "./assets/layers/recycling/engine_oil.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:fluorescent_tubes=yes" + ] + }, + "then": "./assets/layers/recycling/fluorescent_tubes.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:glass=yes" + ] + }, + "then": "./assets/layers/recycling/glass.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:glass_bottles=yes" + ] + }, + "then": "./assets/layers/recycling/glass_bottles.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + { + "or": [ + "recycling:green_waste=yes", + "recycling:organic=yes" + ] + } + ] + }, + "then": "./assets/layers/recycling/garden_waste.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:light_bulbs=yes" + ] + }, + "then": "./assets/layers/recycling/light_bulbs.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:newspaper=yes" + ] + }, + "then": "./assets/layers/recycling/newspaper.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:paper=yes" + ] + }, + "then": "./assets/layers/recycling/paper.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:plastic_bottles=yes" + ] + }, + "then": "./assets/layers/recycling/plastic_bottles.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:plastic_packaging=yes" + ] + }, + "then": "./assets/layers/recycling/plastic_packaging.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:plastic=yes" + ] + }, + "then": "./assets/layers/recycling/plastic.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:printer_cartridges=yes" + ] + }, + "then": "./assets/layers/recycling/printer_cartridges.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:scrap_metal=yes" + ] + }, + "then": "./assets/layers/recycling/scrap_metal.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:shoes=yes" + ] + }, + "then": "./assets/layers/recycling/shoes.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + { + "or": [ + "recycling:small_appliances=yes", + "recycling:small_electric_appliances=yes" + ] + } + ] + }, + "then": "./assets/layers/recycling/small_electrical_appliances.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:waste=yes" + ] + }, + "then": "./assets/layers/waste_disposal/waste_disposal.svg" + }, + { + "if": { + "and": [ + "_waste_amount=1", + "recycling:needles=yes" + ] + }, + "then": "./assets/layers/recycling/needles.svg" + } + ] + } + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -1206,454 +1655,5 @@ "allowMove": { "enableRelocation": true, "enableImproveAccuracy": true - }, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:batteries=yes" - ] - }, - "then": "./assets/layers/recycling/batteries.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:beverage_cartons=yes" - ] - }, - "then": "./assets/layers/recycling/beverage_cartons.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:cans=yes" - ] - }, - "then": "./assets/layers/recycling/cans.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:clothes=yes" - ] - }, - "then": "./assets/layers/recycling/clothes.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:cooking_oil=yes" - ] - }, - "then": "./assets/layers/recycling/cooking_oil.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:engine_oil=yes" - ] - }, - "then": "./assets/layers/recycling/engine_oil.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:fluorescent_tubes=yes" - ] - }, - "then": "./assets/layers/recycling/fluorescent_tubes.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:glass=yes" - ] - }, - "then": "./assets/layers/recycling/glass.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:glass_bottles=yes" - ] - }, - "then": "./assets/layers/recycling/glass_bottles.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - { - "or": [ - "recycling:green_waste=yes", - "recycling:organic=yes" - ] - } - ] - }, - "then": "./assets/layers/recycling/garden_waste.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:light_bulbs=yes" - ] - }, - "then": "./assets/layers/recycling/light_bulbs.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:newspaper=yes" - ] - }, - "then": "./assets/layers/recycling/newspaper.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:paper=yes" - ] - }, - "then": "./assets/layers/recycling/paper.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:plastic_bottles=yes" - ] - }, - "then": "./assets/layers/recycling/plastic_bottles.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:plastic_packaging=yes" - ] - }, - "then": "./assets/layers/recycling/plastic_packaging.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:plastic=yes" - ] - }, - "then": "./assets/layers/recycling/plastic.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:printer_cartridges=yes" - ] - }, - "then": "./assets/layers/recycling/printer_cartridges.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:scrap_metal=yes" - ] - }, - "then": "./assets/layers/recycling/scrap_metal.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:shoes=yes" - ] - }, - "then": "./assets/layers/recycling/shoes.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - { - "or": [ - "recycling:small_appliances=yes", - "recycling:small_electrical_appliances=yes" - ] - } - ] - }, - "then": "./assets/layers/recycling/small_electrical_appliances.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:waste=yes" - ] - }, - "then": "./assets/layers/waste_disposal/waste_disposal.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:needles=yes" - ] - }, - "then": "./assets/layers/recycling/needles.svg" - }, - { - "if": { - "and": [ - "_waste_amount>1", - "recycling:bicycles=yes" - ] - }, - "then": "./assets/layers/recycling/bicycles.svg" - } - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/recycling/recycling-14.svg", - "mappings": [ - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:batteries=yes" - ] - }, - "then": "./assets/layers/recycling/batteries.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:beverage_cartons=yes" - ] - }, - "then": "./assets/layers/recycling/beverage_cartons.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:cans=yes" - ] - }, - "then": "./assets/layers/recycling/cans.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:clothes=yes" - ] - }, - "then": "./assets/layers/recycling/clothes.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:cooking_oil=yes" - ] - }, - "then": "./assets/layers/recycling/cooking_oil.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:engine_oil=yes" - ] - }, - "then": "./assets/layers/recycling/engine_oil.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:fluorescent_tubes=yes" - ] - }, - "then": "./assets/layers/recycling/fluorescent_tubes.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:glass=yes" - ] - }, - "then": "./assets/layers/recycling/glass.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:glass_bottles=yes" - ] - }, - "then": "./assets/layers/recycling/glass_bottles.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - { - "or": [ - "recycling:green_waste=yes", - "recycling:organic=yes" - ] - } - ] - }, - "then": "./assets/layers/recycling/garden_waste.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:light_bulbs=yes" - ] - }, - "then": "./assets/layers/recycling/light_bulbs.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:newspaper=yes" - ] - }, - "then": "./assets/layers/recycling/newspaper.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:paper=yes" - ] - }, - "then": "./assets/layers/recycling/paper.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:plastic_bottles=yes" - ] - }, - "then": "./assets/layers/recycling/plastic_bottles.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:plastic_packaging=yes" - ] - }, - "then": "./assets/layers/recycling/plastic_packaging.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:plastic=yes" - ] - }, - "then": "./assets/layers/recycling/plastic.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:printer_cartridges=yes" - ] - }, - "then": "./assets/layers/recycling/printer_cartridges.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:scrap_metal=yes" - ] - }, - "then": "./assets/layers/recycling/scrap_metal.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:shoes=yes" - ] - }, - "then": "./assets/layers/recycling/shoes.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - { - "or": [ - "recycling:small_appliances=yes", - "recycling:small_electric_appliances=yes" - ] - } - ] - }, - "then": "./assets/layers/recycling/small_electrical_appliances.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:waste=yes" - ] - }, - "then": "./assets/layers/waste_disposal/waste_disposal.svg" - }, - { - "if": { - "and": [ - "_waste_amount=1", - "recycling:needles=yes" - ] - }, - "then": "./assets/layers/recycling/needles.svg" - } - ] - } - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/route_marker/route_marker.json b/assets/layers/route_marker/route_marker.json index e954a89fb..379c9b310 100644 --- a/assets/layers/route_marker/route_marker.json +++ b/assets/layers/route_marker/route_marker.json @@ -10,29 +10,6 @@ "osmTags": "information=route_marker" }, "minzoom": 14, - "presets": [ - { - "title": { - "en": "a route marker" - }, - "tags": [ - "tourism=information", - "information=route_marker" - ], - "description": { - "en": "A route marker is a small marker often found along official hiking/cycling/riding/skiing routes to indicate the direction of the route." - }, - "exampleImages": [ - "./assets/layers/route_marker/bicycle_route_marker.jpg", - "./assets/layers/route_marker/walking_route_marker.jpg" - ] - } - ], - "deletion": true, - "allowMove": { - "enableImproveAccuracy": true, - "enableRelocation": false - }, "title": { "render": { "en": "Route marker" @@ -51,6 +28,24 @@ ] } ], + "presets": [ + { + "title": { + "en": "a route marker" + }, + "tags": [ + "tourism=information", + "information=route_marker" + ], + "description": { + "en": "A route marker is a small marker often found along official hiking/cycling/riding/skiing routes to indicate the direction of the route." + }, + "exampleImages": [ + "./assets/layers/route_marker/bicycle_route_marker.jpg", + "./assets/layers/route_marker/walking_route_marker.jpg" + ] + } + ], "tagRenderings": [ "images", { @@ -97,5 +92,10 @@ } ] } - ] + ], + "deletion": true, + "allowMove": { + "enableImproveAccuracy": true, + "enableRelocation": false + } } diff --git a/assets/layers/school/school.json b/assets/layers/school/school.json index 4da2dba23..f7d15b347 100644 --- a/assets/layers/school/school.json +++ b/assets/layers/school/school.json @@ -9,6 +9,19 @@ "cs": "Základní a střední školy" }, "description": "Schools giving primary and secondary education and post-secondary, non-tertiary education. Note that this level of education does not imply an age of the pupiles", + "source": { + "osmTags": "amenity=school" + }, + "calculatedTags": [ + "_enclosing=enclosingFeatures(feat)('school').map(f => f.feat.properties.id)", + "_is_enclosed=feat.properties._enclosing != '[]'" + ], + "isShown": { + "or": [ + "building=", + "_is_enclosed!=true" + ] + }, "minzoom": 12, "title": { "render": { @@ -21,16 +34,55 @@ "cs": "Škola {name}" } }, - "calculatedTags": [ - "_enclosing=enclosingFeatures(feat)('school').map(f => f.feat.properties.id)", - "_is_enclosed=feat.properties._enclosing != '[]'" + "pointRendering": [ + { + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/school/school.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#fcd862", + "width": 1 + } + ], + "presets": [ + { + "tags": [ + "amenity=school", + "fixme=Added with MapComplete, the precise geometry should still be drawn" + ], + "title": { + "en": "a primary or secondary school", + "nl": "een lagere of middelbare school", + "de": "eine Grundschule oder weiterführende Schule", + "fr": "une école primaire ou secondaire", + "ca": "una escola de primària o secundària", + "cs": "základní nebo střední škola" + } + } ], - "isShown": { - "or": [ - "building=", - "_is_enclosed!=true" - ] - }, "tagRenderings": [ { "render": { @@ -409,57 +461,5 @@ } } } - ], - "presets": [ - { - "tags": [ - "amenity=school", - "fixme=Added with MapComplete, the precise geometry should still be drawn" - ], - "title": { - "en": "a primary or secondary school", - "nl": "een lagere of middelbare school", - "de": "eine Grundschule oder weiterführende Schule", - "fr": "une école primaire ou secondaire", - "ca": "una escola de primària o secundària", - "cs": "základní nebo střední škola" - } - } - ], - "source": { - "osmTags": "amenity=school" - }, - "pointRendering": [ - { - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/school/school.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#fcd862", - "width": 1 - } ] } diff --git a/assets/layers/shelter/shelter.json b/assets/layers/shelter/shelter.json index ae69b841f..5b2f7a77a 100644 --- a/assets/layers/shelter/shelter.json +++ b/assets/layers/shelter/shelter.json @@ -30,6 +30,20 @@ "cs": "Přístřešek" } }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "./assets/layers/shelter/shelter.svg" + } + ] + } + ], + "lineRendering": [], "tagRenderings": [ { "id": "shelter-type", @@ -106,19 +120,5 @@ "type": "string" } } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "./assets/layers/shelter/shelter.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/shops/shops.json b/assets/layers/shops/shops.json index 2445c5831..ffafde01d 100644 --- a/assets/layers/shops/shops.json +++ b/assets/layers/shops/shops.json @@ -13,7 +13,19 @@ "pa_PK": "دکان", "cs": "Obchod" }, - "minzoom": 12, + "description": { + "en": "A shop", + "fr": "Un magasin", + "ja": "ショップ", + "nl": "Een winkel", + "ru": "Магазин", + "de": "Ein Geschäft", + "eo": "Butiko", + "hu": "Egy bolt", + "es": "Una tienda", + "ca": "Una botiga", + "cs": "Obchod" + }, "source": { "osmTags": { "and": [ @@ -28,6 +40,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Shop", @@ -83,19 +96,115 @@ } ] }, - "description": { - "en": "A shop", - "fr": "Un magasin", - "ja": "ショップ", - "nl": "Een winkel", - "ru": "Магазин", - "de": "Ein Geschäft", - "eo": "Butiko", - "hu": "Egy bolt", - "es": "Una tienda", - "ca": "Una botiga", - "cs": "Obchod" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "builtin": "id_presets.shop_rendering", + "override": { + "render": "./assets/layers/id_presets/maki-shop.svg", + "+mappings": [ + { + "#": "Layer icon rendering", + "if": "id=", + "then": "./assets/layers/id_presets/maki-shop.svg" + }, + { + "if": { + "or": [ + "shop=vacant", + "shop=disused", + "disused:shop=yes" + ] + }, + "then": "./assets/layers/shops/shop-disused.svg" + }, + { + "if": "craft=shoemaker", + "then": "./assets/layers/id_presets/temaki-hammer_shoe.svg" + }, + { + "if": "craft=key_cutter", + "then": "./assets/layers/id_presets/fas-key.svg" + } + ] + } + } + } + ], + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + }, + { + "if": { + "or": [ + "organic=yes", + "organic=only" + ] + }, + "then": "./assets/layers/food/organic.svg" + } + ], + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "center" + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "shop=yes" + ], + "title": { + "en": "a shop", + "fr": "une magasin", + "ru": "Магазин", + "ja": "店", + "nl": "een winkel", + "de": "ein Geschäft", + "eo": "Butiko", + "es": "una tienda", + "ca": "una botiga", + "cs": "obchod" + }, + "description": { + "en": "Add a new shop", + "fr": "Ajouter un nouveau magasin", + "ru": "Добавить новый магазин", + "ja": "新しい店を追加する", + "nl": "Voeg een nieuwe winkel toe", + "de": "Ein neues Geschäft hinzufügen", + "eo": "Enmeti novan butikon", + "es": "Añadir una nueva tienda", + "ca": "Afegir una botiga nova", + "cs": "Přidat nový obchod" + } + } + ], "tagRenderings": [ "images", { @@ -422,60 +531,6 @@ "questions", "reviews" ], - "presets": [ - { - "tags": [ - "shop=yes" - ], - "title": { - "en": "a shop", - "fr": "une magasin", - "ru": "Магазин", - "ja": "店", - "nl": "een winkel", - "de": "ein Geschäft", - "eo": "Butiko", - "es": "una tienda", - "ca": "una botiga", - "cs": "obchod" - }, - "description": { - "en": "Add a new shop", - "fr": "Ajouter un nouveau magasin", - "ru": "Добавить новый магазин", - "ja": "新しい店を追加する", - "nl": "Voeg een nieuwe winkel toe", - "de": "Ein neues Geschäft hinzufügen", - "eo": "Enmeti novan butikon", - "es": "Añadir una nueva tienda", - "ca": "Afegir una botiga nova", - "cs": "Přidat nový obchod" - } - } - ], - "deletion": { - "softDeletionTags": { - "and": [ - "shop=", - "disused:shop:={shop}" - ] - }, - "extraDeleteReasons": [ - { - "explanation": { - "nl": "{title()} is permanent gestopt", - "en": "{title()} has closed down permanently", - "de": "{title()} wurde dauerhaft geschlossen", - "es": "{title()} ha cerrado permanentemente", - "fr": "{title()} a fermé définitivement", - "ca": "{title()} ha tancat permanentment", - "cs": "{title()} je trvale uzavřen" - }, - "changesetMessage": "shop_closed" - } - ] - }, - "allowMove": true, "filter": [ "open_now", { @@ -550,82 +605,27 @@ "gluten_free", "lactose_free" ], - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" + "deletion": { + "softDeletionTags": { + "and": [ + "shop=", + "disused:shop:={shop}" + ] + }, + "extraDeleteReasons": [ + { + "explanation": { + "nl": "{title()} is permanent gestopt", + "en": "{title()} has closed down permanently", + "de": "{title()} wurde dauerhaft geschlossen", + "es": "{title()} ha cerrado permanentemente", + "fr": "{title()} a fermé définitivement", + "ca": "{title()} ha tancat permanentment", + "cs": "{title()} je trvale uzavřen" }, - { - "icon": { - "builtin": "id_presets.shop_rendering", - "override": { - "render": "./assets/layers/id_presets/maki-shop.svg", - "+mappings": [ - { - "#": "Layer icon rendering", - "if": "id=", - "then": "./assets/layers/id_presets/maki-shop.svg" - }, - { - "if": { - "or": [ - "shop=vacant", - "shop=disused", - "disused:shop=yes" - ] - }, - "then": "./assets/layers/shops/shop-disused.svg" - }, - { - "if": "craft=shoemaker", - "then": "./assets/layers/id_presets/temaki-hammer_shoe.svg" - }, - { - "if": "craft=key_cutter", - "then": "./assets/layers/id_presets/fas-key.svg" - } - ] - } - } - } - ], - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - }, - { - "if": { - "or": [ - "organic=yes", - "organic=only" - ] - }, - "then": "./assets/layers/food/organic.svg" - } - ], - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "center" - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } - ] + "changesetMessage": "shop_closed" + } + ] + }, + "allowMove": true } diff --git a/assets/layers/shower/shower.json b/assets/layers/shower/shower.json index 6ea1b7386..759004606 100644 --- a/assets/layers/shower/shower.json +++ b/assets/layers/shower/shower.json @@ -7,10 +7,17 @@ "ca": "Dutxa", "cs": "Sprcha" }, - "minzoom": 12, + "description": { + "en": "A layer showing (public) showers", + "de": "Eine Ebene mit (öffentlichen) Duschen", + "fr": "Une couche affichant les douches (publiques)", + "ca": "Una capa que mostra dutxes (públiques)", + "cs": "Vrstva zobrazující (veřejné) sprchy" + }, "source": { "osmTags": "amenity=shower" }, + "minzoom": 12, "title": { "render": { "en": "Shower", @@ -20,6 +27,30 @@ "cs": "Sprcha" } }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/shower/shower.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -241,36 +272,5 @@ "allowMove": { "enableImproveAccuracy": true, "enableRelocation": false - }, - "description": { - "en": "A layer showing (public) showers", - "de": "Eine Ebene mit (öffentlichen) Duschen", - "fr": "Une couche affichant les douches (publiques)", - "ca": "Una capa que mostra dutxes (públiques)", - "cs": "Vrstva zobrazující (veřejné) sprchy" - }, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/shower/shower.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/slow_roads/slow_roads.json b/assets/layers/slow_roads/slow_roads.json index 66754e906..3b617b0a3 100644 --- a/assets/layers/slow_roads/slow_roads.json +++ b/assets/layers/slow_roads/slow_roads.json @@ -3,7 +3,12 @@ "name": { "nl": "Paadjes, trage wegen en autoluwe straten" }, - "minzoom": 16, + "description": { + "en": "All carfree roads", + "nl": "Alle verkeersvrije wegen", + "de": "Alle autofreien Straßen", + "ca": "Totes les carreteres sense cotxe" + }, "source": { "osmTags": { "and": [ @@ -22,6 +27,7 @@ ] } }, + "minzoom": 16, "title": { "render": { "nl": "Trage weg" @@ -63,6 +69,51 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point" + ], + "marker": [ + { + "icon": "./assets/layers/slow_roads/slow_road.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#eaba2a", + "width": "7", + "dashArray": { + "render": "", + "mappings": [ + { + "if": "highway=cycleway", + "then": "" + }, + { + "if": "highway=path", + "then": "0 12" + }, + { + "if": { + "or": [ + "highway=footway", + "highway=pedestrian" + ] + }, + "then": "12 18" + }, + { + "if": "highway=living_street", + "then": "12 12 0 12" + } + ] + } + } + ], + "presets": [], "tagRenderings": [ "images", { @@ -260,56 +311,5 @@ } ] } - ], - "presets": [], - "description": { - "en": "All carfree roads", - "nl": "Alle verkeersvrije wegen", - "de": "Alle autofreien Straßen", - "ca": "Totes les carreteres sense cotxe" - }, - "pointRendering": [ - { - "location": [ - "point" - ], - "marker": [ - { - "icon": "./assets/layers/slow_roads/slow_road.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#eaba2a", - "width": "7", - "dashArray": { - "render": "", - "mappings": [ - { - "if": "highway=cycleway", - "then": "" - }, - { - "if": "highway=path", - "then": "0 12" - }, - { - "if": { - "or": [ - "highway=footway", - "highway=pedestrian" - ] - }, - "then": "12 18" - }, - { - "if": "highway=living_street", - "then": "12 12 0 12" - } - ] - } - } ] } diff --git a/assets/layers/speed_camera/speed_camera.json b/assets/layers/speed_camera/speed_camera.json index e75928aef..046cc7d16 100644 --- a/assets/layers/speed_camera/speed_camera.json +++ b/assets/layers/speed_camera/speed_camera.json @@ -16,6 +16,10 @@ "ca": "Capa que mostra càmeres de velocitat", "cs": "Vrstva zobrazující rychlostní radary" }, + "source": { + "osmTags": "highway=speed_camera" + }, + "minzoom": 12, "title": { "render": { "en": "Speed Camera", @@ -26,10 +30,43 @@ "cs": "Rychlostní radar" } }, - "minzoom": 12, - "source": { - "osmTags": "highway=speed_camera" - }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "square", + "color": "white" + }, + { + "icon": "./assets/layers/speed_camera/speed_camera.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "highway=speed_camera" + ], + "title": { + "en": "a speed camera", + "de": "einen Blitzer", + "nl": "een flitspaal", + "es": "una cámara de velocidad", + "ca": "una càmera de velocitat", + "cs": "rychlostní radar" + }, + "snapToLayer": [ + "maxspeed" + ], + "maxSnapDistance": 10 + } + ], "tagRenderings": [ { "id": "maxspeed", @@ -77,25 +114,6 @@ "condition": "ref~*" } ], - "presets": [ - { - "tags": [ - "highway=speed_camera" - ], - "title": { - "en": "a speed camera", - "de": "einen Blitzer", - "nl": "een flitspaal", - "es": "una cámara de velocidad", - "ca": "una càmera de velocitat", - "cs": "rychlostní radar" - }, - "snapToLayer": [ - "maxspeed" - ], - "maxSnapDistance": 10 - } - ], "units": [ { "appliesToKey": [ @@ -157,23 +175,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "square", - "color": "white" - }, - { - "icon": "./assets/layers/speed_camera/speed_camera.svg" - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/speed_display/speed_display.json b/assets/layers/speed_display/speed_display.json index 3df3601aa..a29fed538 100644 --- a/assets/layers/speed_display/speed_display.json +++ b/assets/layers/speed_display/speed_display.json @@ -14,6 +14,10 @@ "ca": "Capa que mostra radars pedagògics que alerten als conductors de la seva velocitat.", "cs": "Vrstva zobrazující ukazatele rychlosti, které řidiče upozorňují na jejich rychlost." }, + "source": { + "osmTags": "highway=speed_display" + }, + "minzoom": 12, "title": { "render": { "en": "Speed Display", @@ -22,10 +26,34 @@ "cs": "Ukazatel rychlosti" } }, - "minzoom": 12, - "source": { - "osmTags": "highway=speed_display" - }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "./assets/layers/speed_display/speed_display.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a speed display", + "de": "eine Geschwindigkeitsanzeige", + "nl": "een snelheidsdisplay", + "ca": "un radar pedagògic", + "cs": "ukazatel rychlosti" + }, + "tags": [ + "highway=speed_display" + ] + } + ], "tagRenderings": [ { "id": "maxspeed", @@ -85,20 +113,6 @@ } } ], - "presets": [ - { - "title": { - "en": "a speed display", - "de": "eine Geschwindigkeitsanzeige", - "nl": "een snelheidsdisplay", - "ca": "un radar pedagògic", - "cs": "ukazatel rychlosti" - }, - "tags": [ - "highway=speed_display" - ] - } - ], "units": [ { "appliesToKey": [ @@ -160,19 +174,5 @@ } ] } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "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 26927e552..c43c0921d 100644 --- a/assets/layers/split_point/split_point.json +++ b/assets/layers/split_point/split_point.json @@ -1,9 +1,9 @@ { "id": "split_point", - "description": "Layer rendering the little scissors for the minimap in the 'splitRoadWizard'", - "minzoom": 1, - "source": "special", "name": "Split point", + "description": "Layer rendering the little scissors for the minimap in the 'splitRoadWizard'", + "source": "special", + "minzoom": 1, "title": "Split point", "pointRendering": [ { diff --git a/assets/layers/split_road/split_road.json b/assets/layers/split_road/split_road.json index 25c36b9ee..13a6d3cfc 100644 --- a/assets/layers/split_road/split_road.json +++ b/assets/layers/split_road/split_road.json @@ -1,9 +1,9 @@ { "id": "split_road", - "description": "Layer rendering the way to split in the 'splitRoadWizard'. This one is used instead of the variable rendering by the themes themselves, as they might not always be very visible", - "minzoom": 1, - "source": "special", "name": null, + "description": "Layer rendering the way to split in the 'splitRoadWizard'. This one is used instead of the variable rendering by the themes themselves, as they might not always be very visible", + "source": "special", + "minzoom": 1, "title": null, "pointRendering": [ { diff --git a/assets/layers/sport_pitch/sport_pitch.json b/assets/layers/sport_pitch/sport_pitch.json index 2953cb590..3ac8d36a4 100644 --- a/assets/layers/sport_pitch/sport_pitch.json +++ b/assets/layers/sport_pitch/sport_pitch.json @@ -11,7 +11,16 @@ "es": "Pistas de deportes", "cs": "Sportovní hřiště" }, - "minzoom": 12, + "description": { + "nl": "Een sportterrein", + "fr": "Un terrain de sport", + "en": "A sport pitch", + "it": "Un campo sportivo", + "ru": "Спортивная площадка", + "de": "Ein Sportplatz", + "es": "Una pista de deportes", + "cs": "Sportovní hřiště" + }, "source": { "osmTags": { "and": [ @@ -22,6 +31,7 @@ "calculatedTags": [ "_size_classification=Number(feat.properties._surface) < 200 ? 'small' : (Number(feat.properties._surface) < 750 ? 'medium' : 'large') " ], + "minzoom": 12, "title": { "render": { "nl": "Sportterrein", @@ -35,16 +45,128 @@ "cs": "Sportovní hřiště" } }, - "description": { - "nl": "Een sportterrein", - "fr": "Un terrain de sport", - "en": "A sport pitch", - "it": "Un campo sportivo", - "ru": "Спортивная площадка", - "de": "Ein Sportplatz", - "es": "Una pista de deportes", - "cs": "Sportovní hřiště" - }, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./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": "./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" + } + ], + "presets": [ + { + "title": { + "nl": "een ping-pong tafel", + "fr": "une table de ping-pong", + "en": "a tabletennis table", + "it": "una tavolo da tennistavolo", + "ru": "Стол для настольного тенниса", + "de": "eine Tischtennisplatte", + "cs": "stůl na stolní tenis" + }, + "tags": [ + "leisure=pitch", + "sport=table_tennis" + ] + }, + { + "title": { + "nl": "een sportterrein", + "fr": "une terrain de sport", + "en": "a sport pitch", + "ru": "Спортивная площадка", + "it": "una campo sportivo", + "de": "einen Sportplatz", + "es": "una pista de deportes", + "ca": "una pista d'esports", + "cs": "sportovní hřiště" + }, + "tags": [ + "leisure=pitch", + "fixme=Toegevoegd met MapComplete, geometry nog uit te tekenen" + ] + } + ], "tagRenderings": [ "images", { @@ -587,40 +709,6 @@ "render": "{reviews(name, sportpitch)}" } ], - "presets": [ - { - "title": { - "nl": "een ping-pong tafel", - "fr": "une table de ping-pong", - "en": "a tabletennis table", - "it": "una tavolo da tennistavolo", - "ru": "Стол для настольного тенниса", - "de": "eine Tischtennisplatte", - "cs": "stůl na stolní tenis" - }, - "tags": [ - "leisure=pitch", - "sport=table_tennis" - ] - }, - { - "title": { - "nl": "een sportterrein", - "fr": "une terrain de sport", - "en": "a sport pitch", - "ru": "Спортивная площадка", - "it": "una campo sportivo", - "de": "einen Sportplatz", - "es": "una pista de deportes", - "ca": "una pista d'esports", - "cs": "sportovní hřiště" - }, - "tags": [ - "leisure=pitch", - "fixme=Toegevoegd met MapComplete, geometry nog uit te tekenen" - ] - } - ], "filter": [ { "id": "accessibility", @@ -707,93 +795,5 @@ ] }, "open_now" - ], - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./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": "./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 7bf968314..ff1cbb60c 100644 --- a/assets/layers/sports_centre/sports_centre.json +++ b/assets/layers/sports_centre/sports_centre.json @@ -12,10 +12,10 @@ "ca": "En aquesta capa es poden trobar centres esportius interiors i exteriors", "cs": "Na této vrstvě najdete krytá a venkovní sportovní centra" }, - "minzoom": 12, "source": { "osmTags": "leisure=sports_centre" }, + "minzoom": 12, "title": { "render": { "en": "Sports centre", @@ -30,33 +30,6 @@ } ] }, - "tagRenderings": [ - "images", - "opening_hours", - "phone", - "website", - "email", - "wheelchair-access" - ], - "presets": [ - { - "title": { - "en": "a sports centre", - "de": "ein Sportzentrum", - "ca": "un centre esportiu", - "cs": "sportovní centra" - }, - "tags": [ - "leisure=sports_centre" - ] - } - ], - "allowMove": { - "enableImproveAccuracy": true - }, - "filter": [ - "open_now" - ], "pointRendering": [ { "iconBadges": [ @@ -85,5 +58,32 @@ "color": "darkgreen", "fill": "no" } - ] + ], + "presets": [ + { + "title": { + "en": "a sports centre", + "de": "ein Sportzentrum", + "ca": "un centre esportiu", + "cs": "sportovní centra" + }, + "tags": [ + "leisure=sports_centre" + ] + } + ], + "tagRenderings": [ + "images", + "opening_hours", + "phone", + "website", + "email", + "wheelchair-access" + ], + "filter": [ + "open_now" + ], + "allowMove": { + "enableImproveAccuracy": true + } } diff --git a/assets/layers/stairs/stairs.json b/assets/layers/stairs/stairs.json index 709208fde..cb7561a70 100644 --- a/assets/layers/stairs/stairs.json +++ b/assets/layers/stairs/stairs.json @@ -14,6 +14,10 @@ "ca": "Capa que mostra escales i escales mecàniques", "cs": "Vrstva zobrazující schody a eskalátory" }, + "source": { + "osmTags": "highway=steps" + }, + "minzoom": 17, "title": { "render": { "en": "Stairs", @@ -35,10 +39,14 @@ } ] }, - "minzoom": 17, - "source": { - "osmTags": "highway=steps" - }, + "pointRendering": [], + "lineRendering": [ + { + "color": "gray", + "width": 10, + "dashArray": "6 12" + } + ], "tagRenderings": [ "images", { @@ -260,13 +268,5 @@ } ] } - ], - "pointRendering": [], - "lineRendering": [ - { - "color": "gray", - "width": 10, - "dashArray": "6 12" - } ] } diff --git a/assets/layers/street_lamps/street_lamps.json b/assets/layers/street_lamps/street_lamps.json index 070c7d730..673064166 100644 --- a/assets/layers/street_lamps/street_lamps.json +++ b/assets/layers/street_lamps/street_lamps.json @@ -8,6 +8,14 @@ "ca": "Fanals", "cs": "Pouliční Lampy" }, + "description": { + "en": "A layer showing street lights", + "nl": "Een laag die alle straatlantaarns toont", + "de": "Eine Ebene mit Straßenbeleuchtung", + "es": "Una capa que muestra luces callejeras", + "ca": "Una capa que mostra els llums del carrer", + "cs": "Vrstva zobrazující pouliční osvětlení" + }, "source": { "osmTags": "highway=street_lamp" }, @@ -35,6 +43,28 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": "light:colour~*", + "then": "circle:{light:colour}" + } + ], + "iconSize": "40,40", + "anchor": "bottom", + "marker": [ + { + "icon": "./assets/layers/street_lamps/street_lamp.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -534,35 +564,5 @@ "allowMove": { "enableImproveAccuracy": true, "enableRelocation": false - }, - "description": { - "en": "A layer showing street lights", - "nl": "Een laag die alle straatlantaarns toont", - "de": "Eine Ebene mit Straßenbeleuchtung", - "es": "Una capa que muestra luces callejeras", - "ca": "Una capa que mostra els llums del carrer", - "cs": "Vrstva zobrazující pouliční osvětlení" - }, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": "light:colour~*", - "then": "circle:{light:colour}" - } - ], - "iconSize": "40,40", - "anchor": "bottom", - "marker": [ - { - "icon": "./assets/layers/street_lamps/street_lamp.svg" - } - ] - } - ], - "lineRendering": [] + } } diff --git a/assets/layers/surveillance_camera/surveillance_camera.json b/assets/layers/surveillance_camera/surveillance_camera.json index 5e548dc33..049962d33 100644 --- a/assets/layers/surveillance_camera/surveillance_camera.json +++ b/assets/layers/surveillance_camera/surveillance_camera.json @@ -11,7 +11,15 @@ "es": "Cámaras de vigilancia", "cs": "Bezpečnostní kamery" }, - "minzoom": 12, + "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", + "ca": "Aquesta capa mostra les càmeres de vigilància i permet a qui col·labora, actualitzar la informació i afegir noves càmeres", + "cs": "Tato vrstva zobrazuje sledovací kamery a umožňuje přispěvateli aktualizovat informace a přidávat nové kamery" + }, "source": { "osmTags": { "and": [ @@ -26,6 +34,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Surveillance Camera", @@ -40,6 +49,163 @@ "cs": "Bezpečnostní kamera" } }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/themes/surveillance/logo.svg", + "mappings": [ + { + "if": "surveillance:type=ALPR", + "then": "./assets/layers/surveillance_camera/ALPR.svg" + }, + { + "if": "camera:type=dome", + "then": "./assets/themes/surveillance/dome.svg" + }, + { + "if": "_direction:leftright=right", + "then": "./assets/themes/surveillance/cam_right.svg" + }, + { + "if": "_direction:leftright=left", + "then": "./assets/themes/surveillance/cam_left.svg" + } + ] + } + } + ], + "iconSize": { + "mappings": [ + { + "if": { + "and": [ + "camera:type=fixed", + "surveillance:type=camera", + "_direction:leftright~*" + ] + }, + "then": "100,35,center" + } + ], + "render": "35,35,center" + }, + "location": [ + "point", + "centroid" + ], + "rotation": { + "#": "Note: {camera:direction} is substituted by a number, giving the string 'calc(123deg + 90deg)' ; it is this string that is used as css property, which interprets the calc", + "render": "calc({_direction:numerical}deg + 90deg)", + "mappings": [ + { + "if": { + "or": [ + "camera:type=dome", + "surveillance:type=ALPR" + ] + }, + "then": "0" + }, + { + "if": "_direction:leftright=right", + "then": "calc({_direction:numerical}deg - 90deg)" + } + ] + } + } + ], + "lineRendering": [ + { + "color": "#f00", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "man_made=surveillance", + "surveillance:type=camera" + ], + "title": { + "en": "a surveillance camera", + "nl": "een bewakingscamera", + "de": "eine Überwachungskamera", + "es": "una cámara de vigilancia", + "fr": "une caméra de surveillance", + "ca": "una càmera de vigilància", + "cs": "bezpečnostní kamera" + } + }, + { + "tags": [ + "man_made=surveillance", + "surveillance:type=camera", + "camera:mount=wall" + ], + "title": { + "en": "a surveillance camera mounted on a wall", + "nl": "een bewakingscamera gemonteerd op een muur", + "de": "eine an einer Wand montierte Überwachungskamera", + "es": "una cámara de vigilancia montada en una pared", + "fr": "une caméra de surveillance fixée au mur", + "ca": "una càmera de vigilància muntada en una paret", + "cs": "sledovací kamera namontovaná na zdi" + }, + "snapToLayer": [ + "walls_and_buildings" + ] + }, + { + "tags": [ + "man_made=surveillance", + "surveillance:type=ALPR" + ], + "title": { + "en": "an ALPR camera (Automatic Number Plate Reader)", + "ca": "una càmera ALPR (lector automàtic de matrícules, per les seves sigles en anglès)", + "de": "Eine Kamera zur automatischen Nummernschilderkennung", + "cs": "kamera ALPR (automatická čtečka registračních značek)" + }, + "description": { + "en": "An ALPR typically has two lenses and an array of infrared lights.", + "ca": "Un ALPR normalment té dues lents i una sèrie de llums infrarojes.", + "de": "Eine automatische Nummernschilderkennung hat üblicherweise zwei Linsen und ein Reihe aus Infrarotlichtern.", + "cs": "ALPR má obvykle dvě čočky a pole infračervených světel." + }, + "exampleImages": [ + "./assets/layers/surveillance_camera/ALPR_Example.jpg", + "./assets/layers/surveillance_camera/ALPR_Example2.jpg" + ] + }, + { + "tags": [ + "man_made=surveillance", + "surveillance:type=ALPR", + "camera:mount=wall" + ], + "title": { + "en": "an ALPR camera (Automatic Number Plate Reader) mounted on a wall", + "ca": "una càmera ALPR (lector automàtic de matrícules) muntada a la paret", + "de": "eine Kamera zur Nummernschilderkennung, die an einer Wand befestigt ist", + "cs": "kamera ALPR (Automatická čtečka registračních značek) namontovaná na zdi" + }, + "description": { + "en": "An ALPR typically has two lenses and an array of infrared lights.", + "ca": "Un ALPR normalment té dues lents i una sèrie de llums infrarojes.", + "de": "Eine automatische Nummernschilderkennung hat üblicherweise zwei Linsen und ein Reihe aus Infrarotlichtern.", + "cs": "ALPR má obvykle dvě čočky a pole infračervených světel." + }, + "exampleImages": [ + "./assets/layers/surveillance_camera/ALPR_Example.jpg", + "./assets/layers/surveillance_camera/ALPR_Example2.jpg" + ], + "snapToLayer": [ + "walls_and_buildings" + ] + } + ], "tagRenderings": [ "images", { @@ -642,171 +808,5 @@ "id": "camera:mount" } ], - "presets": [ - { - "tags": [ - "man_made=surveillance", - "surveillance:type=camera" - ], - "title": { - "en": "a surveillance camera", - "nl": "een bewakingscamera", - "de": "eine Überwachungskamera", - "es": "una cámara de vigilancia", - "fr": "une caméra de surveillance", - "ca": "una càmera de vigilància", - "cs": "bezpečnostní kamera" - } - }, - { - "tags": [ - "man_made=surveillance", - "surveillance:type=camera", - "camera:mount=wall" - ], - "title": { - "en": "a surveillance camera mounted on a wall", - "nl": "een bewakingscamera gemonteerd op een muur", - "de": "eine an einer Wand montierte Überwachungskamera", - "es": "una cámara de vigilancia montada en una pared", - "fr": "une caméra de surveillance fixée au mur", - "ca": "una càmera de vigilància muntada en una paret", - "cs": "sledovací kamera namontovaná na zdi" - }, - "snapToLayer": [ - "walls_and_buildings" - ] - }, - { - "tags": [ - "man_made=surveillance", - "surveillance:type=ALPR" - ], - "title": { - "en": "an ALPR camera (Automatic Number Plate Reader)", - "ca": "una càmera ALPR (lector automàtic de matrícules, per les seves sigles en anglès)", - "de": "Eine Kamera zur automatischen Nummernschilderkennung", - "cs": "kamera ALPR (automatická čtečka registračních značek)" - }, - "description": { - "en": "An ALPR typically has two lenses and an array of infrared lights.", - "ca": "Un ALPR normalment té dues lents i una sèrie de llums infrarojes.", - "de": "Eine automatische Nummernschilderkennung hat üblicherweise zwei Linsen und ein Reihe aus Infrarotlichtern.", - "cs": "ALPR má obvykle dvě čočky a pole infračervených světel." - }, - "exampleImages": [ - "./assets/layers/surveillance_camera/ALPR_Example.jpg", - "./assets/layers/surveillance_camera/ALPR_Example2.jpg" - ] - }, - { - "tags": [ - "man_made=surveillance", - "surveillance:type=ALPR", - "camera:mount=wall" - ], - "title": { - "en": "an ALPR camera (Automatic Number Plate Reader) mounted on a wall", - "ca": "una càmera ALPR (lector automàtic de matrícules) muntada a la paret", - "de": "eine Kamera zur Nummernschilderkennung, die an einer Wand befestigt ist", - "cs": "kamera ALPR (Automatická čtečka registračních značek) namontovaná na zdi" - }, - "description": { - "en": "An ALPR typically has two lenses and an array of infrared lights.", - "ca": "Un ALPR normalment té dues lents i una sèrie de llums infrarojes.", - "de": "Eine automatische Nummernschilderkennung hat üblicherweise zwei Linsen und ein Reihe aus Infrarotlichtern.", - "cs": "ALPR má obvykle dvě čočky a pole infračervených světel." - }, - "exampleImages": [ - "./assets/layers/surveillance_camera/ALPR_Example.jpg", - "./assets/layers/surveillance_camera/ALPR_Example2.jpg" - ], - "snapToLayer": [ - "walls_and_buildings" - ] - } - ], - "deletion": true, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/themes/surveillance/logo.svg", - "mappings": [ - { - "if": "surveillance:type=ALPR", - "then": "./assets/layers/surveillance_camera/ALPR.svg" - }, - { - "if": "camera:type=dome", - "then": "./assets/themes/surveillance/dome.svg" - }, - { - "if": "_direction:leftright=right", - "then": "./assets/themes/surveillance/cam_right.svg" - }, - { - "if": "_direction:leftright=left", - "then": "./assets/themes/surveillance/cam_left.svg" - } - ] - } - } - ], - "iconSize": { - "mappings": [ - { - "if": { - "and": [ - "camera:type=fixed", - "surveillance:type=camera", - "_direction:leftright~*" - ] - }, - "then": "100,35,center" - } - ], - "render": "35,35,center" - }, - "location": [ - "point", - "centroid" - ], - "rotation": { - "#": "Note: {camera:direction} is substituted by a number, giving the string 'calc(123deg + 90deg)' ; it is this string that is used as css property, which interprets the calc", - "render": "calc({_direction:numerical}deg + 90deg)", - "mappings": [ - { - "if": { - "or": [ - "camera:type=dome", - "surveillance:type=ALPR" - ] - }, - "then": "0" - }, - { - "if": "_direction:leftright=right", - "then": "calc({_direction:numerical}deg - 90deg)" - } - ] - } - } - ], - "lineRendering": [ - { - "color": "#f00", - "width": "8" - } - ], - "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", - "ca": "Aquesta capa mostra les càmeres de vigilància i permet a qui col·labora, actualitzar la informació i afegir noves càmeres", - "cs": "Tato vrstva zobrazuje sledovací kamery a umožňuje přispěvateli aktualizovat informace a přidávat nové kamery" - } + "deletion": true } diff --git a/assets/layers/tertiary_education/tertiary_education.json b/assets/layers/tertiary_education/tertiary_education.json index db4899cf1..69aae353d 100644 --- a/assets/layers/tertiary_education/tertiary_education.json +++ b/assets/layers/tertiary_education/tertiary_education.json @@ -76,6 +76,64 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "40,40", + "label": { + "mappings": [ + { + "if": "name~*", + "then": "
    {name}
    " + } + ] + }, + "anchor": "center", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/school/college.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#22f1f4", + "width": 1 + } + ], + "presets": [ + { + "title": { + "en": "a university", + "nl": "een universiteit", + "de": "eine Universität", + "fr": "une université", + "da": "et universitet", + "ca": "una universitat", + "cs": "univerzita" + }, + "description": { + "en": "An institute where tertiary education is given (at the level equivalent of a bachelors degree or higher). A single point per campus is enough - buildings and faculties should not be mapped with different university points.", + "nl": "Een onderwijsinstelling waar tertiair onderwijs wordt gegeven - dit is onderwijs waarvan het niveau overeenkomt met een bachelor of hoger is. Eén enkel punt per campus is genoeg - gebouwen en faculteiten worden hier niet op aangeduid.", + "de": "Eine Einrichtung, an der tertiäre Bildung vermittelt wird (auf dem Niveau eines Bachelor-Abschlusses oder höher). Ein einziger Punkt pro Campus ist ausreichend - Gebäude und Fakultäten sollten nicht mit Universitätspunkten gekennzeichnet werden.", + "fr": "Un institut où l'on dispense un enseignement supérieur (au niveau équivalent à un bachelor ou plus). Un simple point par campus est suffisant - les bâtiments et les facultés ne doivent pas être cartographiés avec différents points d'université.", + "ca": "Un institut on s'imparteix ensenyament terciari (al nivell equivalent de batxillerat o superior). N'hi ha prou amb un únic punt per campus: els edificis i les facultats no s'han de cartografiar amb diferents punts universitaris.", + "cs": "Institut, kde se poskytuje terciární vzdělání (na úrovni odpovídající bakalářskému titulu nebo vyšší). Stačí jeden bod na kampus - budovy a fakulty by neměly být mapovány s různými univerzitními body." + }, + "tags": [ + "amenity=university", + "fixme=Added with MapComplete, geometry to be drawn" + ] + } + ], "tagRenderings": [ { "id": "institution-kind", @@ -179,63 +237,5 @@ "website", "email", "phone" - ], - "presets": [ - { - "title": { - "en": "a university", - "nl": "een universiteit", - "de": "eine Universität", - "fr": "une université", - "da": "et universitet", - "ca": "una universitat", - "cs": "univerzita" - }, - "description": { - "en": "An institute where tertiary education is given (at the level equivalent of a bachelors degree or higher). A single point per campus is enough - buildings and faculties should not be mapped with different university points.", - "nl": "Een onderwijsinstelling waar tertiair onderwijs wordt gegeven - dit is onderwijs waarvan het niveau overeenkomt met een bachelor of hoger is. Eén enkel punt per campus is genoeg - gebouwen en faculteiten worden hier niet op aangeduid.", - "de": "Eine Einrichtung, an der tertiäre Bildung vermittelt wird (auf dem Niveau eines Bachelor-Abschlusses oder höher). Ein einziger Punkt pro Campus ist ausreichend - Gebäude und Fakultäten sollten nicht mit Universitätspunkten gekennzeichnet werden.", - "fr": "Un institut où l'on dispense un enseignement supérieur (au niveau équivalent à un bachelor ou plus). Un simple point par campus est suffisant - les bâtiments et les facultés ne doivent pas être cartographiés avec différents points d'université.", - "ca": "Un institut on s'imparteix ensenyament terciari (al nivell equivalent de batxillerat o superior). N'hi ha prou amb un únic punt per campus: els edificis i les facultats no s'han de cartografiar amb diferents punts universitaris.", - "cs": "Institut, kde se poskytuje terciární vzdělání (na úrovni odpovídající bakalářskému titulu nebo vyšší). Stačí jeden bod na kampus - budovy a fakulty by neměly být mapovány s různými univerzitními body." - }, - "tags": [ - "amenity=university", - "fixme=Added with MapComplete, geometry to be drawn" - ] - } - ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "40,40", - "label": { - "mappings": [ - { - "if": "name~*", - "then": "
    {name}
    " - } - ] - }, - "anchor": "center", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/school/college.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#22f1f4", - "width": 1 - } ] } diff --git a/assets/layers/ticket_machine/ticket_machine.json b/assets/layers/ticket_machine/ticket_machine.json index 4865fe5ae..aa9318126 100644 --- a/assets/layers/ticket_machine/ticket_machine.json +++ b/assets/layers/ticket_machine/ticket_machine.json @@ -32,6 +32,41 @@ "cs": "Automat na jízdenky" } }, + "pointRendering": [ + { + "iconSize": "20,20", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "square", + "color": "lightblue" + }, + { + "icon": "./assets/themes/stations/public_transport_tickets.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=vending_machine", + "vending=public_transport_tickets" + ], + "title": { + "en": "a ticket machine", + "de": "einen Fahrkartenautomat", + "nl": "een kaartautomaat", + "ca": "una màquina de bitllets", + "cs": "automat na jízdenky" + } + } + ], "tagRenderings": [ "images", "level", @@ -83,41 +118,6 @@ "denominations-coins", "denominations-notes" ], - "presets": [ - { - "tags": [ - "amenity=vending_machine", - "vending=public_transport_tickets" - ], - "title": { - "en": "a ticket machine", - "de": "einen Fahrkartenautomat", - "nl": "een kaartautomaat", - "ca": "una màquina de bitllets", - "cs": "automat na jízdenky" - } - } - ], - "allowMove": true, "deletion": true, - "pointRendering": [ - { - "iconSize": "20,20", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "square", - "color": "lightblue" - }, - { - "icon": "./assets/themes/stations/public_transport_tickets.svg" - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/ticket_validator/ticket_validator.json b/assets/layers/ticket_validator/ticket_validator.json index db069ad39..c8dd109a6 100644 --- a/assets/layers/ticket_validator/ticket_validator.json +++ b/assets/layers/ticket_validator/ticket_validator.json @@ -24,6 +24,45 @@ "cs": "Validátor jízdenek" } }, + "pointRendering": [ + { + "iconSize": "20,20", + "location": [ + "point", + "centroid" + ], + "anchor": "center", + "marker": [ + { + "icon": "square", + "color": "green" + }, + { + "icon": "./assets/themes/stations/public_transport_tickets.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "amenity=ticket_validator" + ], + "title": { + "en": "a ticket validator", + "de": "einen Fahrkartenentwerter", + "ca": "un validador de bitllets", + "cs": "validátor jízdenek" + }, + "description": { + "en": "A ticket validator to validate a public transport ticket. This can be either a digital reader, reading a card or ticket, or a machine stamping or punching a ticket.", + "de": "Ein Fahrkartenentwerter zur Entwertung einer Fahrkarte für öffentliche Verkehrsmittel. Dabei kann es sich entweder um ein digitales Lesegerät handeln, das eine Karte oder einen Fahrschein liest, oder um eine Maschine, die einen Fahrschein stempelt oder locht.", + "ca": "Un validador de bitllets per validar un bitllet de transport públic. Pot ser un lector digital, llegir una targeta o un bitllet, o una màquina que estampa o perfora un bitllet.", + "cs": "Ověřovač jízdenek k ověření platnosti jízdenky na veřejnou dopravu. Může to být buď digitální čtečka, která čte kartu nebo jízdenku, nebo stroj, který jízdenku orazítkuje nebo vyrazí." + } + } + ], "tagRenderings": [ "images", "level", @@ -120,45 +159,6 @@ } } ], - "presets": [ - { - "tags": [ - "amenity=ticket_validator" - ], - "title": { - "en": "a ticket validator", - "de": "einen Fahrkartenentwerter", - "ca": "un validador de bitllets", - "cs": "validátor jízdenek" - }, - "description": { - "en": "A ticket validator to validate a public transport ticket. This can be either a digital reader, reading a card or ticket, or a machine stamping or punching a ticket.", - "de": "Ein Fahrkartenentwerter zur Entwertung einer Fahrkarte für öffentliche Verkehrsmittel. Dabei kann es sich entweder um ein digitales Lesegerät handeln, das eine Karte oder einen Fahrschein liest, oder um eine Maschine, die einen Fahrschein stempelt oder locht.", - "ca": "Un validador de bitllets per validar un bitllet de transport públic. Pot ser un lector digital, llegir una targeta o un bitllet, o una màquina que estampa o perfora un bitllet.", - "cs": "Ověřovač jízdenek k ověření platnosti jízdenky na veřejnou dopravu. Může to být buď digitální čtečka, která čte kartu nebo jízdenku, nebo stroj, který jízdenku orazítkuje nebo vyrazí." - } - } - ], - "allowMove": true, "deletion": true, - "pointRendering": [ - { - "iconSize": "20,20", - "location": [ - "point", - "centroid" - ], - "anchor": "center", - "marker": [ - { - "icon": "square", - "color": "green" - }, - { - "icon": "./assets/themes/stations/public_transport_tickets.svg" - } - ] - } - ], - "lineRendering": [] + "allowMove": true } diff --git a/assets/layers/toilet/toilet.json b/assets/layers/toilet/toilet.json index 3d990784b..22bb4f1fb 100644 --- a/assets/layers/toilet/toilet.json +++ b/assets/layers/toilet/toilet.json @@ -13,10 +13,20 @@ "pa_PK": "ٹوئیلٹاں", "cs": "Toalety" }, - "minzoom": 12, + "description": { + "en": "A layer showing (public) toilets", + "nl": "Een laag die publieke toiletten toont", + "de": "Eine Ebene mit (öffentlichen) Toiletten", + "es": "Una capa que muestra baños (públicos)", + "fr": "Un calque montrant les toilettes (publiques)", + "da": "Et lag, der viser (offentlige) toiletter", + "ca": "Una capa que mostra banys (publics)", + "cs": "Vrstva zobrazující (veřejné) toalety" + }, "source": { "osmTags": "amenity=toilets" }, + "minzoom": 12, "title": { "render": { "en": "Toilet", @@ -32,6 +42,52 @@ "cs": "Toaleta" } }, + "pointRendering": [ + { + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + } + ], + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/toilet/toilets.svg", + "mappings": [ + { + "if": { + "or": [ + "wheelchair=yes", + "wheelchair=designated" + ] + }, + "then": "./assets/layers/toilet/wheelchair.svg" + }, + { + "if": { + "or": [ + "toilets:position=urinals", + "toilets:position=urinal" + ] + }, + "then": "./assets/layers/toilet/urinal.svg" + } + ] + } + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -783,16 +839,6 @@ "enableRelocation": false, "enableImproveAccuracy": true }, - "description": { - "en": "A layer showing (public) toilets", - "nl": "Een laag die publieke toiletten toont", - "de": "Eine Ebene mit (öffentlichen) Toiletten", - "es": "Una capa que muestra baños (públicos)", - "fr": "Un calque montrant les toilettes (publiques)", - "da": "Et lag, der viser (offentlige) toiletter", - "ca": "Una capa que mostra banys (publics)", - "cs": "Vrstva zobrazující (veřejné) toalety" - }, "units": [ { "appliesToKey": [ @@ -834,51 +880,5 @@ } ] } - ], - "pointRendering": [ - { - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - } - ], - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/toilet/toilets.svg", - "mappings": [ - { - "if": { - "or": [ - "wheelchair=yes", - "wheelchair=designated" - ] - }, - "then": "./assets/layers/toilet/wheelchair.svg" - }, - { - "if": { - "or": [ - "toilets:position=urinals", - "toilets:position=urinal" - ] - }, - "then": "./assets/layers/toilet/urinal.svg" - } - ] - } - } - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/toilet_at_amenity/toilet_at_amenity.json b/assets/layers/toilet_at_amenity/toilet_at_amenity.json index 950d5b2cd..011c92881 100644 --- a/assets/layers/toilet_at_amenity/toilet_at_amenity.json +++ b/assets/layers/toilet_at_amenity/toilet_at_amenity.json @@ -7,10 +7,17 @@ "ca": "Lavabos a altres instal·lacions", "cs": "Toalety u ostatního vybavení" }, - "minzoom": 12, + "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.", + "ca": "Una capa que mostra banys (públics) ubicats en diferents llocs.", + "cs": "Vrstva zobrazující (veřejné) toalety umístěné na různých místech." + }, "source": { "osmTags": "toilets=yes" }, + "minzoom": 12, "title": { "render": { "en": "Toilet at amenity", @@ -32,6 +39,96 @@ } ] }, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/toilet/toilets.svg", + "mappings": [ + { + "if": { + "or": [ + "toilets:wheelchair=yes", + "toilets:wheelchair=designated" + ] + }, + "then": "./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" + }, + { + "if": "shop~*", + "then": "./assets/themes/shops/shop.svg" + }, + { + "if": "amenity=restaurant", + "then": "circle:white;./assets/layers/food/restaurant.svg" + }, + { + "if": { + "and": [ + "amenity=fast_food", + "cuisine=friture" + ] + }, + "then": "circle:white;./assets/layers/food/fries.svg" + }, + { + "if": { + "and": [ + "amenity=fast_food", + "cuisine!=friture" + ] + }, + "then": "circle:white;./assets/layers/food/fastfood.svg" + }, + { + "if": { + "or": [ + "amenity=bar", + "amenity=pub", + "amenity=biergarten" + ] + }, + "then": "circle:white;./assets/layers/cafe_pub/pub.svg" + }, + { + "if": "amenity=cafe", + "then": "circle:white;./assets/layers/cafe_pub/cafe.svg" + }, + { + "if": "amenity=nightclub", + "then": "circle:white;./assets/layers/cafe_pub/nightclub.svg" + } + ], + "location": [ + "point", + "centroid" + ] + } + ], + "lineRendering": [], "tagRenderings": [ "images", "level", @@ -381,13 +478,6 @@ }, "neededChangesets": 1 }, - "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.", - "ca": "Una capa que mostra banys (públics) ubicats en diferents llocs.", - "cs": "Vrstva zobrazující (veřejné) toalety umístěné na různých místech." - }, "units": [ { "appliesToKey": [ @@ -427,95 +517,5 @@ } ] } - ], - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/toilet/toilets.svg", - "mappings": [ - { - "if": { - "or": [ - "toilets:wheelchair=yes", - "toilets:wheelchair=designated" - ] - }, - "then": "./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" - }, - { - "if": "shop~*", - "then": "./assets/themes/shops/shop.svg" - }, - { - "if": "amenity=restaurant", - "then": "circle:white;./assets/layers/food/restaurant.svg" - }, - { - "if": { - "and": [ - "amenity=fast_food", - "cuisine=friture" - ] - }, - "then": "circle:white;./assets/layers/food/fries.svg" - }, - { - "if": { - "and": [ - "amenity=fast_food", - "cuisine!=friture" - ] - }, - "then": "circle:white;./assets/layers/food/fastfood.svg" - }, - { - "if": { - "or": [ - "amenity=bar", - "amenity=pub", - "amenity=biergarten" - ] - }, - "then": "circle:white;./assets/layers/cafe_pub/pub.svg" - }, - { - "if": "amenity=cafe", - "then": "circle:white;./assets/layers/cafe_pub/cafe.svg" - }, - { - "if": "amenity=nightclub", - "then": "circle:white;./assets/layers/cafe_pub/nightclub.svg" - } - ], - "location": [ - "point", - "centroid" - ] - } - ], - "lineRendering": [] + ] } diff --git a/assets/layers/trail/trail.json b/assets/layers/trail/trail.json index 84013c9b7..50972d578 100644 --- a/assets/layers/trail/trail.json +++ b/assets/layers/trail/trail.json @@ -10,7 +10,9 @@ "da": "Stier", "cs": "Stezky" }, - "minzoom": 12, + "description": { + "nl": "Aangeduide wandeltochten" + }, "source": { "osmTags": { "and": [ @@ -25,6 +27,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "en": "Trail", @@ -43,6 +46,47 @@ } ] }, + "pointRendering": [ + { + "marker": [ + { + "icon": { + "render": "./assets/layers/trail/trail.svg", + "mappings": [ + { + "if": "wheelchair=yes", + "then": "./assets/layers/trail/wheelchair.svg" + }, + { + "if": "pushchair=yes", + "then": "./assets/layers/trail/pushchair.svg" + } + ] + } + } + ], + "iconSize": "35,35", + "location": [ + "point" + ], + "anchor": "center" + } + ], + "lineRendering": [ + { + "color": { + "render": "#335D9F", + "mappings": [ + { + "if": "colour~*", + "then": "{colour}" + } + ] + }, + "width": "3", + "dashArray": "5 5" + } + ], "tagRenderings": [ "images", { @@ -215,49 +259,5 @@ ], "id": "pushchair access" } - ], - "description": { - "nl": "Aangeduide wandeltochten" - }, - "pointRendering": [ - { - "marker": [ - { - "icon": { - "render": "./assets/layers/trail/trail.svg", - "mappings": [ - { - "if": "wheelchair=yes", - "then": "./assets/layers/trail/wheelchair.svg" - }, - { - "if": "pushchair=yes", - "then": "./assets/layers/trail/pushchair.svg" - } - ] - } - } - ], - "iconSize": "35,35", - "location": [ - "point" - ], - "anchor": "center" - } - ], - "lineRendering": [ - { - "color": { - "render": "#335D9F", - "mappings": [ - { - "if": "colour~*", - "then": "{colour}" - } - ] - }, - "width": "3", - "dashArray": "5 5" - } ] } diff --git a/assets/layers/transit_routes/transit_routes.json b/assets/layers/transit_routes/transit_routes.json index a3e4e4a81..45163fdb4 100644 --- a/assets/layers/transit_routes/transit_routes.json +++ b/assets/layers/transit_routes/transit_routes.json @@ -24,6 +24,9 @@ ] } }, + "calculatedTags": [ + "_numeric_id=feat.properties.id.split('/')[1]" + ], "minzoom": 15, "title": { "render": { @@ -48,6 +51,32 @@ } ] }, + "titleIcons": [ + { + "condition": { + "and": [ + "id~relation/[0-9]+", + "_numeric_id~*" + ] + }, + "render": "on relatify" + }, + "icons.defaults" + ], + "pointRendering": [], + "lineRendering": [ + { + "color": { + "render": "#ff0000", + "mappings": [ + { + "if": "colour~*", + "then": "{colour}" + } + ] + } + } + ], "tagRenderings": [ { "id": "name", @@ -208,35 +237,6 @@ } } ], - "pointRendering": [], - "lineRendering": [ - { - "color": { - "render": "#ff0000", - "mappings": [ - { - "if": "colour~*", - "then": "{colour}" - } - ] - } - } - ], - "titleIcons": [ - { - "condition": { - "and": [ - "id~relation/[0-9]+", - "_numeric_id~*" - ] - }, - "render": "on relatify" - }, - "icons.defaults" - ], - "calculatedTags": [ - "_numeric_id=feat.properties.id.split('/')[1]" - ], "cs": { "0": { "color": { diff --git a/assets/layers/transit_stops/transit_stops.json b/assets/layers/transit_stops/transit_stops.json index 8c266e999..3ab512ab9 100644 --- a/assets/layers/transit_stops/transit_stops.json +++ b/assets/layers/transit_stops/transit_stops.json @@ -46,6 +46,24 @@ } ] }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "label": "
    {name}
    ", + "marker": [ + { + "icon": { + "render": "./assets/layers/transit_stops/bus_stop.svg", + "mappings": [] + } + } + ] + } + ], + "lineRendering": [], "tagRenderings": [ { "id": "stop_name", @@ -464,23 +482,5 @@ }, "tactile_paving" ], - "allowMove": false, - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "label": "
    {name}
    ", - "marker": [ - { - "icon": { - "render": "./assets/layers/transit_stops/bus_stop.svg", - "mappings": [] - } - } - ] - } - ], - "lineRendering": [] + "allowMove": false } diff --git a/assets/layers/tree_node/tree_node.json b/assets/layers/tree_node/tree_node.json index 5c5dd319a..85e6bbabd 100644 --- a/assets/layers/tree_node/tree_node.json +++ b/assets/layers/tree_node/tree_node.json @@ -13,7 +13,16 @@ "pt_BR": "Árvore", "cs": "Strom" }, - "minzoom": 16, + "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", + "ca": "Una capa que mostra arbres", + "cs": "Vrstva zobrazující stromy" + }, "source": { "osmTags": { "and": [ @@ -21,6 +30,7 @@ ] } }, + "minzoom": 16, "title": { "render": { "nl": "Boom", @@ -72,6 +82,141 @@ } ] }, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "#ffffff" + }, + { + "icon": { + "render": "./assets/layers/tree_node/unknown.svg", + "mappings": [ + { + "if": { + "and": [ + "leaf_type=broadleaved" + ] + }, + "then": "./assets/layers/tree_node/broadleaved.svg" + }, + { + "if": { + "and": [ + "leaf_type=needleleaved" + ] + }, + "then": "./assets/layers/tree_node/needleleaved.svg" + } + ] + } + } + ], + "iconSize": "40,40", + "location": [ + "point", + "centroid" + ], + "anchor": "bottom" + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "natural=tree", + "leaf_type=broadleaved" + ], + "title": { + "nl": "een loofboom", + "en": "a broadleaved tree", + "it": "una albero latifoglia", + "fr": "une arbre feuillu", + "ru": "Лиственное дерево", + "de": "ein Laubbaum", + "es": "árbol de hoja ancha", + "da": "et løvtræ", + "pt": "uma árvore de folhas largas", + "ca": "un arbre de fulla ampla", + "cs": "listnatý strom" + }, + "description": { + "nl": "Een boom van een soort die blaadjes heeft, bijvoorbeeld eik of populier.", + "en": "A tree of a species with leaves, such as oak or populus.", + "it": "Un albero di una specie con foglie larghe come la quercia o il pioppo.", + "fr": "Un arbre d'une espèce avec de larges feuilles, comme le chêne ou le peuplier.", + "de": "Ein Baum mit Blättern, z. B. Eiche oder Buche.", + "es": "Un árbol de hojas como el Roble o el Álamo.", + "pt": "Uma árvore de uma espécie com folhas, como carvalho ou populus.", + "ca": "Arbre d'una espècie amb fulles, com el roure o el pollancre.", + "cs": "Strom s listy, například dub nebo topol." + } + }, + { + "tags": [ + "natural=tree", + "leaf_type=needleleaved" + ], + "title": { + "nl": "een naaldboom", + "en": "a needleleaved tree", + "it": "una albero aghifoglia", + "ru": "Хвойное дерево", + "fr": "une arbre résineux", + "de": "ein Nadelbaum", + "es": "Árbol tipo Conífera", + "da": "et nåletræ", + "pt": "uma árvore com folhas de agulha", + "ca": "un arbre amb fulles d'agulla", + "cs": "jehličnatý strom" + }, + "description": { + "nl": "Een boom van een soort met naalden, bijvoorbeeld den of spar.", + "en": "A tree of a species with needles, such as pine or spruce.", + "it": "Un albero di una specie con aghi come il pino o l’abete.", + "ru": "Дерево с хвоей (иглами), например, сосна или ель.", + "fr": "Une espèce d’arbre avec des épines comme le pin ou l’épicéa.", + "de": "Ein Baum mit Nadeln, z. B. Kiefer oder Fichte.", + "es": "Un árbol de hojas agujas, como el Pino o el Abeto.", + "da": "Et træ af en art med nåle, såsom fyr eller gran.", + "ca": "Arbre d'una espècie amb agulles, com el pi o l'avet.", + "cs": "Strom s jehlicemi, například borovice nebo smrk." + } + }, + { + "tags": [ + "natural=tree" + ], + "title": { + "nl": "een boom", + "en": "a tree", + "it": "una albero", + "ru": "Дерево", + "fr": "une arbre", + "id": "Pohon", + "de": "ein Baum", + "ca": "un arbre", + "es": "un árbol", + "da": "et træ", + "pt": "uma árvore", + "pt_BR": "uma árvore", + "cs": "strom" + }, + "description": { + "nl": "Wanneer je niet zeker bent of het nu een loof- of naaldboom is.", + "en": "If you're not sure whether it's a broadleaved or needleleaved tree.", + "it": "Qualora non si sia sicuri se si tratta di un albero latifoglia o aghifoglia.", + "fr": "Si vous n'êtes pas sûr(e) de savoir s'il s'agit d'un arbre à feuilles larges ou à aiguilles.", + "ru": "Если вы не уверены в том, лиственное это дерево или хвойное.", + "de": "Wenn Sie nicht sicher sind, ob es sich um einen Laubbaum oder einen Nadelbaum handelt.", + "es": "Si no estás seguro de si es un árbol de hoja ancha o de hoja de aguja.", + "da": "Hvis du ikke er sikker på, om det er et løv- eller nåletræ.", + "ca": "Si no esteu segur de si es tracta d'un arbre amb fulles amples o amb fulles d'agulles.", + "cs": "Pokud si nejste jisti, zda se jedná o listnatý nebo jehličnatý strom." + } + } + ], "tagRenderings": [ "images", { @@ -798,156 +943,11 @@ "id": "tree_node-wikidata" } ], - "presets": [ - { - "tags": [ - "natural=tree", - "leaf_type=broadleaved" - ], - "title": { - "nl": "een loofboom", - "en": "a broadleaved tree", - "it": "una albero latifoglia", - "fr": "une arbre feuillu", - "ru": "Лиственное дерево", - "de": "ein Laubbaum", - "es": "árbol de hoja ancha", - "da": "et løvtræ", - "pt": "uma árvore de folhas largas", - "ca": "un arbre de fulla ampla", - "cs": "listnatý strom" - }, - "description": { - "nl": "Een boom van een soort die blaadjes heeft, bijvoorbeeld eik of populier.", - "en": "A tree of a species with leaves, such as oak or populus.", - "it": "Un albero di una specie con foglie larghe come la quercia o il pioppo.", - "fr": "Un arbre d'une espèce avec de larges feuilles, comme le chêne ou le peuplier.", - "de": "Ein Baum mit Blättern, z. B. Eiche oder Buche.", - "es": "Un árbol de hojas como el Roble o el Álamo.", - "pt": "Uma árvore de uma espécie com folhas, como carvalho ou populus.", - "ca": "Arbre d'una espècie amb fulles, com el roure o el pollancre.", - "cs": "Strom s listy, například dub nebo topol." - } - }, - { - "tags": [ - "natural=tree", - "leaf_type=needleleaved" - ], - "title": { - "nl": "een naaldboom", - "en": "a needleleaved tree", - "it": "una albero aghifoglia", - "ru": "Хвойное дерево", - "fr": "une arbre résineux", - "de": "ein Nadelbaum", - "es": "Árbol tipo Conífera", - "da": "et nåletræ", - "pt": "uma árvore com folhas de agulha", - "ca": "un arbre amb fulles d'agulla", - "cs": "jehličnatý strom" - }, - "description": { - "nl": "Een boom van een soort met naalden, bijvoorbeeld den of spar.", - "en": "A tree of a species with needles, such as pine or spruce.", - "it": "Un albero di una specie con aghi come il pino o l’abete.", - "ru": "Дерево с хвоей (иглами), например, сосна или ель.", - "fr": "Une espèce d’arbre avec des épines comme le pin ou l’épicéa.", - "de": "Ein Baum mit Nadeln, z. B. Kiefer oder Fichte.", - "es": "Un árbol de hojas agujas, como el Pino o el Abeto.", - "da": "Et træ af en art med nåle, såsom fyr eller gran.", - "ca": "Arbre d'una espècie amb agulles, com el pi o l'avet.", - "cs": "Strom s jehlicemi, například borovice nebo smrk." - } - }, - { - "tags": [ - "natural=tree" - ], - "title": { - "nl": "een boom", - "en": "a tree", - "it": "una albero", - "ru": "Дерево", - "fr": "une arbre", - "id": "Pohon", - "de": "ein Baum", - "ca": "un arbre", - "es": "un árbol", - "da": "et træ", - "pt": "uma árvore", - "pt_BR": "uma árvore", - "cs": "strom" - }, - "description": { - "nl": "Wanneer je niet zeker bent of het nu een loof- of naaldboom is.", - "en": "If you're not sure whether it's a broadleaved or needleleaved tree.", - "it": "Qualora non si sia sicuri se si tratta di un albero latifoglia o aghifoglia.", - "fr": "Si vous n'êtes pas sûr(e) de savoir s'il s'agit d'un arbre à feuilles larges ou à aiguilles.", - "ru": "Если вы не уверены в том, лиственное это дерево или хвойное.", - "de": "Wenn Sie nicht sicher sind, ob es sich um einen Laubbaum oder einen Nadelbaum handelt.", - "es": "Si no estás seguro de si es un árbol de hoja ancha o de hoja de aguja.", - "da": "Hvis du ikke er sikker på, om det er et løv- eller nåletræ.", - "ca": "Si no esteu segur de si es tracta d'un arbre amb fulles amples o amb fulles d'agulles.", - "cs": "Pokud si nejste jisti, zda se jedná o listnatý nebo jehličnatý strom." - } - } - ], - "allowMove": { - "enableRelocation": false, - "enableImproveAccuraccy": true - }, "deletion": { "minNeededChangesets": 5 }, - "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", - "ca": "Una capa que mostra arbres", - "cs": "Vrstva zobrazující stromy" - }, - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "#ffffff" - }, - { - "icon": { - "render": "./assets/layers/tree_node/unknown.svg", - "mappings": [ - { - "if": { - "and": [ - "leaf_type=broadleaved" - ] - }, - "then": "./assets/layers/tree_node/broadleaved.svg" - }, - { - "if": { - "and": [ - "leaf_type=needleleaved" - ] - }, - "then": "./assets/layers/tree_node/needleleaved.svg" - } - ] - } - } - ], - "iconSize": "40,40", - "location": [ - "point", - "centroid" - ], - "anchor": "bottom" - } - ], - "lineRendering": [] + "allowMove": { + "enableRelocation": false, + "enableImproveAccuraccy": true + } } diff --git a/assets/layers/usersettings/usersettings.json b/assets/layers/usersettings/usersettings.json index 8b62866b0..082cc5ab0 100644 --- a/assets/layers/usersettings/usersettings.json +++ b/assets/layers/usersettings/usersettings.json @@ -8,6 +8,15 @@ "ca": "Una capa especial que no està pensada per mostrar-se en un mapa, però que s'utilitza per configurar la configuració de l'usuari", "cs": "Speciální vrstva, která není určena k zobrazení na mapě, ale slouží k nastavení uživatelských nastavení" }, + "source": "special", + "calculatedTags": [ + "_mastodon_candidate_md=feat.properties._description.match(/\\[[^\\]]*\\]\\((.*(mastodon|en.osm.town).*)\\).*/)?.at(1)", + "_d=feat.properties._description?.replace(/</g,'<')?.replace(/>/g,'>') ?? ''", + "_mastodon_candidate_a=(feat => {const e = document.createElement('div');e.innerHTML = feat.properties._d;return Array.from(e.getElementsByTagName(\"a\")).filter(a => a.href.match(/mastodon|en.osm.town/) !== null)[0]?.href }) (feat) ", + "_mastodon_link=(feat => {const e = document.createElement('div');e.innerHTML = feat.properties._d;return Array.from(e.getElementsByTagName(\"a\")).filter(a => a.getAttribute(\"rel\")?.indexOf('me') >= 0)[0]?.href})(feat) ", + "_mastodon_candidate=feat.properties._mastodon_candidate_md ?? feat.properties._mastodon_candidate_a", + "__current_background:='initial_value'" + ], "title": { "render": { "en": "Settings", @@ -19,15 +28,8 @@ "cs": "Nastavení" } }, - "source": "special", - "calculatedTags": [ - "_mastodon_candidate_md=feat.properties._description.match(/\\[[^\\]]*\\]\\((.*(mastodon|en.osm.town).*)\\).*/)?.at(1)", - "_d=feat.properties._description?.replace(/</g,'<')?.replace(/>/g,'>') ?? ''", - "_mastodon_candidate_a=(feat => {const e = document.createElement('div');e.innerHTML = feat.properties._d;return Array.from(e.getElementsByTagName(\"a\")).filter(a => a.href.match(/mastodon|en.osm.town/) !== null)[0]?.href }) (feat) ", - "_mastodon_link=(feat => {const e = document.createElement('div');e.innerHTML = feat.properties._d;return Array.from(e.getElementsByTagName(\"a\")).filter(a => a.getAttribute(\"rel\")?.indexOf('me') >= 0)[0]?.href})(feat) ", - "_mastodon_candidate=feat.properties._mastodon_candidate_md ?? feat.properties._mastodon_candidate_a", - "__current_background:='initial_value'" - ], + "pointRendering": null, + "lineRendering": null, "tagRenderings": [ { "id": "profile", @@ -723,7 +725,5 @@ "condition": "mapcomplete-show_debug=yes", "render": "{all_tags()}" } - ], - "lineRendering": null, - "pointRendering": null + ] } diff --git a/assets/layers/vending_machine/vending_machine.json b/assets/layers/vending_machine/vending_machine.json index 3942d96d1..456a16943 100644 --- a/assets/layers/vending_machine/vending_machine.json +++ b/assets/layers/vending_machine/vending_machine.json @@ -24,6 +24,9 @@ ] } }, + "calculatedTags": [ + "_vending_count=feat.properties.vending.split(';').length" + ], "title": { "render": { "en": "Vending machine", @@ -58,6 +61,301 @@ } ] }, + "pointRendering": [ + { + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": { + "render": "./assets/layers/vending_machine/vending_machine.svg", + "mappings": [ + { + "if": "vending=drinks", + "then": "./assets/layers/id_presets/temaki-bottles.svg" + }, + { + "if": "vending=sweets", + "then": "./assets/layers/id_presets/maki-confectionery.svg" + }, + { + "if": "vending=food", + "then": "./assets/layers/vending_machine/utensils.svg" + }, + { + "if": "vending=cigarettes", + "then": "./assets/layers/vending_machine/smoking.svg" + }, + { + "if": "vending=coffee", + "then": "./assets/layers/vending_machine/mug-saucer.svg" + }, + { + "if": "vending=water", + "then": "./assets/layers/id_presets/temaki-water_bottle.svg" + }, + { + "if": "vending=newspapers", + "then": "./assets/layers/id_presets/fas-newspaper.svg" + }, + { + "if": "vending=milk", + "then": "./assets/layers/vending_machine/cow.svg" + }, + { + "if": "vending=bread", + "then": "./assets/layers/id_presets/maki-bakery.svg" + }, + { + "if": "vending=eggs", + "then": "./assets/layers/vending_machine/egg.svg" + }, + { + "if": "vending=cheese", + "then": "./assets/layers/id_presets/fas-cheese.svg" + }, + { + "if": "vending=honey", + "then": "./assets/layers/vending_machine/honey.svg" + }, + { + "if": "vending=potatoes", + "then": "./assets/layers/vending_machine/potato.svg" + }, + { + "if": "vending=meat", + "then": "./assets/layers/id_presets/temaki-meat.svg" + }, + { + "if": "vending=fruit", + "then": "./assets/layers/vending_machine/fruits.svg" + }, + { + "if": "vending=strawberries", + "then": "./assets/layers/vending_machine/strawberry.svg" + }, + { + "if": "vending=flowers", + "then": "./assets/layers/id_presets/maki-florist.svg" + }, + { + "if": "vending=condoms", + "then": "./assets/layers/vending_machine/condom.svg" + } + ] + } + } + ], + "location": [ + "point", + "centroid" + ], + "iconBadges": [ + { + "if": "opening_hours~*", + "then": "icons.isOpen" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*drinks.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/temaki-bottles.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*sweets.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/maki-confectionery.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*food.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/utensils.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*cigarettes.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/smoking.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*coffee.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/mug-saucer.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*water.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/temaki-water_bottle.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*newspapers.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/fas-newspaper.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*milk.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/cow.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*bread.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/maki-bakery.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*eggs.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/egg.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*cheese.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/fas-cheese.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*honey.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/honey.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*potatoes.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/potato.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*meat.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/temaki-meat.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*fruit.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/fruits.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*strawberries.*" + ] + }, + "then": "circle:white;./assets/layers/vending_machine/strawberry.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*flowers.*" + ] + }, + "then": "circle:white;./assets/layers/id_presets/maki-florist.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*parking_tickets.*" + ] + }, + "then": "circle:white;./assets/layers/parking_ticket_machine/parking_tickets.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*elongated_coin.*" + ] + }, + "then": "circle:white;./assets/themes/elongated_coin/penny.svg" + }, + { + "if": { + "and": [ + "_vending_count>1", + "vending~.*public_transport_tickets.*" + ] + }, + "then": "circle:white;./assets/themes/stations/public_transport_tickets.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "title": { + "en": "a vending machine", + "nl": "een verkoopautomaat", + "de": "ein Verkaufsautomat", + "fr": "un distributeur", + "ca": "una màquina expenedora", + "cs": "prodejní automat" + }, + "tags": [ + "amenity=vending_machine" + ] + } + ], "tagRenderings": [ "images", { @@ -488,303 +786,6 @@ }, "website" ], - "calculatedTags": [ - "_vending_count=feat.properties.vending.split(';').length" - ], - "presets": [ - { - "title": { - "en": "a vending machine", - "nl": "een verkoopautomaat", - "de": "ein Verkaufsautomat", - "fr": "un distributeur", - "ca": "una màquina expenedora", - "cs": "prodejní automat" - }, - "tags": [ - "amenity=vending_machine" - ] - } - ], - "pointRendering": [ - { - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": { - "render": "./assets/layers/vending_machine/vending_machine.svg", - "mappings": [ - { - "if": "vending=drinks", - "then": "./assets/layers/id_presets/temaki-bottles.svg" - }, - { - "if": "vending=sweets", - "then": "./assets/layers/id_presets/maki-confectionery.svg" - }, - { - "if": "vending=food", - "then": "./assets/layers/vending_machine/utensils.svg" - }, - { - "if": "vending=cigarettes", - "then": "./assets/layers/vending_machine/smoking.svg" - }, - { - "if": "vending=coffee", - "then": "./assets/layers/vending_machine/mug-saucer.svg" - }, - { - "if": "vending=water", - "then": "./assets/layers/id_presets/temaki-water_bottle.svg" - }, - { - "if": "vending=newspapers", - "then": "./assets/layers/id_presets/fas-newspaper.svg" - }, - { - "if": "vending=milk", - "then": "./assets/layers/vending_machine/cow.svg" - }, - { - "if": "vending=bread", - "then": "./assets/layers/id_presets/maki-bakery.svg" - }, - { - "if": "vending=eggs", - "then": "./assets/layers/vending_machine/egg.svg" - }, - { - "if": "vending=cheese", - "then": "./assets/layers/id_presets/fas-cheese.svg" - }, - { - "if": "vending=honey", - "then": "./assets/layers/vending_machine/honey.svg" - }, - { - "if": "vending=potatoes", - "then": "./assets/layers/vending_machine/potato.svg" - }, - { - "if": "vending=meat", - "then": "./assets/layers/id_presets/temaki-meat.svg" - }, - { - "if": "vending=fruit", - "then": "./assets/layers/vending_machine/fruits.svg" - }, - { - "if": "vending=strawberries", - "then": "./assets/layers/vending_machine/strawberry.svg" - }, - { - "if": "vending=flowers", - "then": "./assets/layers/id_presets/maki-florist.svg" - }, - { - "if": "vending=condoms", - "then": "./assets/layers/vending_machine/condom.svg" - } - ] - } - } - ], - "location": [ - "point", - "centroid" - ], - "iconBadges": [ - { - "if": "opening_hours~*", - "then": "icons.isOpen" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*drinks.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/temaki-bottles.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*sweets.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/maki-confectionery.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*food.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/utensils.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*cigarettes.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/smoking.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*coffee.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/mug-saucer.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*water.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/temaki-water_bottle.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*newspapers.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/fas-newspaper.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*milk.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/cow.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*bread.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/maki-bakery.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*eggs.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/egg.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*cheese.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/fas-cheese.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*honey.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/honey.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*potatoes.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/potato.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*meat.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/temaki-meat.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*fruit.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/fruits.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*strawberries.*" - ] - }, - "then": "circle:white;./assets/layers/vending_machine/strawberry.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*flowers.*" - ] - }, - "then": "circle:white;./assets/layers/id_presets/maki-florist.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*parking_tickets.*" - ] - }, - "then": "circle:white;./assets/layers/parking_ticket_machine/parking_tickets.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*elongated_coin.*" - ] - }, - "then": "circle:white;./assets/themes/elongated_coin/penny.svg" - }, - { - "if": { - "and": [ - "_vending_count>1", - "vending~.*public_transport_tickets.*" - ] - }, - "then": "circle:white;./assets/themes/stations/public_transport_tickets.svg" - } - ] - } - ], "filter": [ "open_now", { @@ -1081,10 +1082,9 @@ ] } ], + "deletion": true, "allowMove": { "enableImproveAccuracy": true, "enableRelocation": true - }, - "deletion": true, - "lineRendering": [] + } } diff --git a/assets/layers/veterinary/veterinary.json b/assets/layers/veterinary/veterinary.json index 2591aa31b..fb6c6a2c5 100644 --- a/assets/layers/veterinary/veterinary.json +++ b/assets/layers/veterinary/veterinary.json @@ -1,42 +1,5 @@ { "id": "veterinary", - "description": "A layer showing veterinarians", - "source": { - "osmTags": { - "or": [ - "amenity=veterinary" - ] - } - }, - "minzoom": 10, - "presets": [ - { - "title": { - "en": "a veterianarian", - "da": "en dyrlæge", - "de": "ein Tierarzt", - "es": "un veterinario", - "nl": "een dierenarts", - "fr": "un vétérinaire", - "ca": "un veterinari", - "cs": "veterinář" - }, - "tags": [ - "amenity=veterinary", - "pet=dog" - ], - "description": { - "en": "a veterianarian, that treats dogs", - "da": "En dyrlæge, der behandler hunde", - "de": "ein Tierarzt, der Hunde behandelt", - "es": "un veterinario, que trata a perros", - "nl": "een dierenarts die honden verzorgt", - "fr": "un vétérinaire, qui soigne les chiens", - "ca": "un veterinari, que tracta gossos", - "cs": "veterinář, který léčí psy" - } - } - ], "name": { "en": "veterinary", "da": "dyrlæge", @@ -47,6 +10,15 @@ "ca": "Veterinari", "cs": "veterinář" }, + "description": "A layer showing veterinarians", + "source": { + "osmTags": { + "or": [ + "amenity=veterinary" + ] + } + }, + "minzoom": 10, "title": { "render": { "en": "Veterinary", @@ -67,38 +39,6 @@ } ] }, - "tagRenderings": [ - "website", - "reviews", - "phone", - "opening_hours", - { - "question": { - "en": "What is the name of this veterinarian?", - "da": "Hvad hedder denne dyrlæ?", - "de": "Wie lautet der Name dieses Tierarztes?", - "es": "¿Cual es el nombre de este veterinario?", - "nl": "Wat is de naam van deze dierenartspraktijk?", - "fr": "Quel est le nom de ce vétérinaire ?", - "ca": "Qui és el nom d'aquest veterinari?", - "cs": "Jak se jmenuje tento veterinář?" - }, - "render": { - "en": "The name of this veterinarian is {name}", - "de": "Denne dyrlæ hedder {name}", - "es": "El nombre de este veterinario es {name}", - "nl": "Deze dierenartspraktijk heet {name}", - "da": "Navnet på denne dyrlæge er {name}", - "fr": "Le nom de ce vétérinaire est {name}", - "ca": "El nom d'aquest veterinari és {name}", - "cs": "Jméno tohoto veterináře je {name}" - }, - "freeform": { - "key": "name" - }, - "id": "vetName" - } - ], "pointRendering": [ { "location": [ @@ -133,5 +73,65 @@ "color": "#ff0", "width": 5 } + ], + "presets": [ + { + "title": { + "en": "a veterianarian", + "da": "en dyrlæge", + "de": "ein Tierarzt", + "es": "un veterinario", + "nl": "een dierenarts", + "fr": "un vétérinaire", + "ca": "un veterinari", + "cs": "veterinář" + }, + "tags": [ + "amenity=veterinary", + "pet=dog" + ], + "description": { + "en": "a veterianarian, that treats dogs", + "da": "En dyrlæge, der behandler hunde", + "de": "ein Tierarzt, der Hunde behandelt", + "es": "un veterinario, que trata a perros", + "nl": "een dierenarts die honden verzorgt", + "fr": "un vétérinaire, qui soigne les chiens", + "ca": "un veterinari, que tracta gossos", + "cs": "veterinář, který léčí psy" + } + } + ], + "tagRenderings": [ + "website", + "reviews", + "phone", + "opening_hours", + { + "question": { + "en": "What is the name of this veterinarian?", + "da": "Hvad hedder denne dyrlæ?", + "de": "Wie lautet der Name dieses Tierarztes?", + "es": "¿Cual es el nombre de este veterinario?", + "nl": "Wat is de naam van deze dierenartspraktijk?", + "fr": "Quel est le nom de ce vétérinaire ?", + "ca": "Qui és el nom d'aquest veterinari?", + "cs": "Jak se jmenuje tento veterinář?" + }, + "render": { + "en": "The name of this veterinarian is {name}", + "de": "Denne dyrlæ hedder {name}", + "es": "El nombre de este veterinario es {name}", + "nl": "Deze dierenartspraktijk heet {name}", + "da": "Navnet på denne dyrlæge er {name}", + "fr": "Le nom de ce vétérinaire est {name}", + "ca": "El nom d'aquest veterinari és {name}", + "cs": "Jméno tohoto veterináře je {name}" + }, + "freeform": { + "key": "name" + }, + "id": "vetName" + } ] } diff --git a/assets/layers/viewpoint/viewpoint.json b/assets/layers/viewpoint/viewpoint.json index c7f0b8ad6..40e2dce63 100644 --- a/assets/layers/viewpoint/viewpoint.json +++ b/assets/layers/viewpoint/viewpoint.json @@ -28,7 +28,41 @@ "osmTags": "tourism=viewpoint" }, "minzoom": 14, - "wayhandling": 2, + "title": { + "render": { + "en": "Viewpoint", + "nl": "Uitzicht", + "de": "Aussichtspunkt", + "fr": "Point de vue", + "ru": "Смотровая площадка", + "it": "Punto panoramico", + "id": "Sudut pandang", + "eo": "Vidpunkto", + "ca": "Mirador", + "da": "Udsigtspunkt", + "cs": "Vyhlídka" + } + }, + "pointRendering": [ + { + "iconSize": "20,20", + "location": [ + "point" + ], + "anchor": "center", + "marker": [ + { + "icon": "./assets/layers/viewpoint/viewpoint.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#ffffff", + "width": "5" + } + ], "presets": [ { "title": { @@ -47,21 +81,6 @@ ] } ], - "title": { - "render": { - "en": "Viewpoint", - "nl": "Uitzicht", - "de": "Aussichtspunkt", - "fr": "Point de vue", - "ru": "Смотровая площадка", - "it": "Punto panoramico", - "id": "Sudut pandang", - "eo": "Vidpunkto", - "ca": "Mirador", - "da": "Udsigtspunkt", - "cs": "Vyhlídka" - } - }, "tagRenderings": [ "images", { @@ -85,24 +104,5 @@ "id": "viewpoint-description" } ], - "pointRendering": [ - { - "iconSize": "20,20", - "location": [ - "point" - ], - "anchor": "center", - "marker": [ - { - "icon": "./assets/layers/viewpoint/viewpoint.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#ffffff", - "width": "5" - } - ] + "wayhandling": 2 } diff --git a/assets/layers/village_green/village_green.json b/assets/layers/village_green/village_green.json index b65373283..4b79bd6a0 100644 --- a/assets/layers/village_green/village_green.json +++ b/assets/layers/village_green/village_green.json @@ -3,6 +3,13 @@ "name": { "nl": "Speelweide" }, + "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)", + "cs": "Vrstva zobrazující městskou zeleň (což jsou společné zelené plochy, ale ne tak docela parky)" + }, "source": { "osmTags": "landuse=village_green" }, @@ -20,24 +27,6 @@ } ] }, - "tagRenderings": [ - "images", - { - "id": "village_green-explanation", - "render": "Dit is een klein stukje openbaar groen waar je mag spelen, picnicken, zitten, ..." - }, - { - "id": "village_green-reviews", - "render": "{reviews(name, landuse=village_green )}" - } - ], - "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)", - "cs": "Vrstva zobrazující městskou zeleň (což jsou společné zelené plochy, ale ne tak docela parky)" - }, "pointRendering": [ { "iconSize": "40,40", @@ -58,5 +47,16 @@ "color": "#937f20", "width": "1" } + ], + "tagRenderings": [ + "images", + { + "id": "village_green-explanation", + "render": "Dit is een klein stukje openbaar groen waar je mag spelen, picnicken, zitten, ..." + }, + { + "id": "village_green-reviews", + "render": "{reviews(name, landuse=village_green )}" + } ] } diff --git a/assets/layers/visitor_information_centre/visitor_information_centre.json b/assets/layers/visitor_information_centre/visitor_information_centre.json index a5b22bbce..a68f472c7 100644 --- a/assets/layers/visitor_information_centre/visitor_information_centre.json +++ b/assets/layers/visitor_information_centre/visitor_information_centre.json @@ -10,7 +10,14 @@ "ca": "Centre d'Informació al Visitant", "cs": "Turistické informační centrum" }, - "minzoom": 12, + "description": { + "en": "A visitor center offers information about a specific attraction or place of interest where it is located.", + "nl": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.", + "de": "Ein Besucherzentrum bietet Informationen über eine bestimmte Attraktion oder Sehenswürdigkeit, an der es sich befindet.", + "es": "Un centro de visitantes ofrece información sobre una atracción específica o lugar de interese donde se sitúa.", + "ca": "Un centre de visitants ofereix informació sobre una atracció o lloc d'interès específic on es troba.", + "cs": "Turistické centrum nabízí informace o konkrétní atrakci nebo zajímavém místě, kde se nachází." + }, "source": { "osmTags": { "and": [ @@ -23,6 +30,7 @@ ] } }, + "minzoom": 12, "title": { "render": { "nl": "{name}", @@ -70,16 +78,6 @@ } ] }, - "description": { - "en": "A visitor center offers information about a specific attraction or place of interest where it is located.", - "nl": "Een bezoekerscentrum biedt informatie over een specifieke attractie of bezienswaardigheid waar het is gevestigd.", - "de": "Ein Besucherzentrum bietet Informationen über eine bestimmte Attraktion oder Sehenswürdigkeit, an der es sich befindet.", - "es": "Un centro de visitantes ofrece información sobre una atracción específica o lugar de interese donde se sitúa.", - "ca": "Un centre de visitants ofereix informació sobre una atracció o lloc d'interès específic on es troba.", - "cs": "Turistické centrum nabízí informace o konkrétní atrakci nebo zajímavém místě, kde se nachází." - }, - "tagRenderings": [], - "presets": [], "pointRendering": [ { "iconSize": "40,40", @@ -95,5 +93,7 @@ ] } ], - "lineRendering": [] + "lineRendering": [], + "presets": [], + "tagRenderings": [] } diff --git a/assets/layers/walls_and_buildings/walls_and_buildings.json b/assets/layers/walls_and_buildings/walls_and_buildings.json index 76871b4d5..9745070f3 100644 --- a/assets/layers/walls_and_buildings/walls_and_buildings.json +++ b/assets/layers/walls_and_buildings/walls_and_buildings.json @@ -1,18 +1,5 @@ { "id": "walls_and_buildings", - "minzoom": 18, - "title": { - "render": { - "en": "Wall or building", - "nl": "Muur of gebouw", - "de": "Wand oder Gebäude", - "es": "Pared o edificio", - "fr": "Mur ou bâtiment", - "da": "Mur eller bygning", - "ca": "Paret o edifici", - "cs": "Zeď nebo budova" - } - }, "description": { "en": "Special builtin layer providing all walls and buildings. This layer is useful in presets for objects which can be placed against walls (e.g. AEDs, postboxes, entrances, addresses, surveillance cameras, …). This layer is invisible by default and not toggleable by the user.", "nl": "Speciale ingebouwde laag voor alle muren en gebouwen. Deze laag is nuttig in voorkeuzen voor objecten die tegen muren geplaatst kunnen worden (bv. AEDs, brievenbussen, ingangen, adressen, beveiligingscamera's,…). Deze laag is standaard onzichtbaar en niet in te schakelen door de gebruiker.", @@ -33,8 +20,6 @@ ] } }, - "passAllFeatures": true, - "shownByDefault": false, "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)", @@ -44,49 +29,34 @@ "_biggest_width_properties= /* Can be a list! */ get(feat)('_entrance_properties').filter(p => p.width === get(feat)('_biggest_width'))", "_biggest_width_id=get(feat)('_biggest_width_properties').id" ], - "units": [ + "minzoom": 18, + "shownByDefault": false, + "title": { + "render": { + "en": "Wall or building", + "nl": "Muur of gebouw", + "de": "Wand oder Gebäude", + "es": "Pared o edificio", + "fr": "Mur ou bâtiment", + "da": "Mur eller bygning", + "ca": "Paret o edifici", + "cs": "Zeď nebo budova" + } + }, + "pointRendering": [], + "lineRendering": [ { - "appliesToKey": [ - "width", - "_biggest_width" - ], - "defaultUnit": "cm", - "applicableUnits": [ - { - "useIfNoUnitGiven": true, - "canonicalDenomination": "m", - "alternativeDenomination": [ - "meter" - ], - "human": { - "en": "meter", - "fr": "mètre", - "de": "Meter", - "da": "meter", - "nl": "meter", - "ca": "metre", - "cs": "metr" - } - }, - { - "canonicalDenomination": "cm", - "alternativeDenomination": [ - "centimeter", - "cms" - ], - "human": { - "en": "centimeter", - "fr": "centimètre", - "de": "Zentimeter", - "da": "centimeter", - "nl": "centimeter", - "ca": "centimetre", - "cs": "centimetr" - } - } - ] + "color": "#fff", + "fill": "no", + "width": "3" + }, + { + "color": "#333", + "fill": "no", + "width": "2" } ], + "passAllFeatures": true, "tagRenderings": [ { "id": "entrance_info", @@ -151,17 +121,47 @@ "condition": "_biggest_width_id~*" } ], - "pointRendering": [], - "lineRendering": [ + "units": [ { - "color": "#fff", - "fill": "no", - "width": "3" - }, - { - "color": "#333", - "fill": "no", - "width": "2" + "appliesToKey": [ + "width", + "_biggest_width" + ], + "defaultUnit": "cm", + "applicableUnits": [ + { + "useIfNoUnitGiven": true, + "canonicalDenomination": "m", + "alternativeDenomination": [ + "meter" + ], + "human": { + "en": "meter", + "fr": "mètre", + "de": "Meter", + "da": "meter", + "nl": "meter", + "ca": "metre", + "cs": "metr" + } + }, + { + "canonicalDenomination": "cm", + "alternativeDenomination": [ + "centimeter", + "cms" + ], + "human": { + "en": "centimeter", + "fr": "centimètre", + "de": "Zentimeter", + "da": "centimeter", + "nl": "centimeter", + "ca": "centimetre", + "cs": "centimetr" + } + } + ] } ] } diff --git a/assets/layers/waste_basket/waste_basket.json b/assets/layers/waste_basket/waste_basket.json index d5e6e3739..2c572b62e 100644 --- a/assets/layers/waste_basket/waste_basket.json +++ b/assets/layers/waste_basket/waste_basket.json @@ -13,7 +13,18 @@ "fr": "Poubelle", "cs": "Odpadkový koš" }, - "minzoom": 17, + "description": { + "en": "This is a public waste basket, thrash can, where you can throw away your thrash.", + "nl": "Dit is een publieke vuilnisbak waar je je afval kan weggooien.", + "de": "Dies ist ein öffentlicher Abfalleimer, in den Sie Ihren Müll entsorgen können.", + "hu": "Ez egy nyilvános szemétkosár vagy kuka, ahová kidobhatod a szemetedet.", + "it": "Questo è un cestino dei rifiuti pubblico, un bidone della spazzatura, dove puoi buttare via la tua spazzatura", + "es": "Esta es una papelera pública, donde puedes tirar tu basura.", + "da": "Dette er en offentlig affaldskurv, en skraldespand, hvor du kan smide dit affald.", + "fr": "C'est une poubelle dans laquelle vous pouvez jeter vos mégots.", + "ca": "Es tracta d'una paperera pública, una paperera, on pots llençar la teva paperera.", + "cs": "Jedná se o veřejný odpadkový koš, odpadkový koš, kam můžete vyhodit odpadky." + }, "source": { "osmTags": { "and": [ @@ -21,6 +32,7 @@ ] } }, + "minzoom": 17, "title": { "render": { "en": "Waste Basket", @@ -35,18 +47,49 @@ "cs": "Odpadkový koš" } }, - "description": { - "en": "This is a public waste basket, thrash can, where you can throw away your thrash.", - "nl": "Dit is een publieke vuilnisbak waar je je afval kan weggooien.", - "de": "Dies ist ein öffentlicher Abfalleimer, in den Sie Ihren Müll entsorgen können.", - "hu": "Ez egy nyilvános szemétkosár vagy kuka, ahová kidobhatod a szemetedet.", - "it": "Questo è un cestino dei rifiuti pubblico, un bidone della spazzatura, dove puoi buttare via la tua spazzatura", - "es": "Esta es una papelera pública, donde puedes tirar tu basura.", - "da": "Dette er en offentlig affaldskurv, en skraldespand, hvor du kan smide dit affald.", - "fr": "C'est une poubelle dans laquelle vous pouvez jeter vos mégots.", - "ca": "Es tracta d'una paperera pública, una paperera, on pots llençar la teva paperera.", - "cs": "Jedná se o veřejný odpadkový koš, odpadkový koš, kam můžete vyhodit odpadky." - }, + "pointRendering": [ + { + "iconSize": "40,40", + "anchor": "center", + "location": [ + "point" + ], + "marker": [ + { + "icon": "./assets/themes/waste_basket/waste_basket.svg" + } + ] + } + ], + "lineRendering": [ + { + "color": "#00f", + "width": "8" + } + ], + "presets": [ + { + "tags": [ + "amenity=waste_basket" + ], + "title": { + "en": "a waste basket", + "nl": "een vuilnisbak", + "ru": "Контейнер для мусора", + "de": "einen Abfalleimer", + "eo": "Rubujo", + "it": "un cestino dei rifiuti", + "id": "sebuah keranjang sampah", + "da": "en affaldskurv", + "ca": "una paperera", + "fr": "une poubelle", + "cs": "odpadkový koš" + }, + "presiceInput": { + "preferredBackground": "photo" + } + } + ], "tagRenderings": [ "images", { @@ -256,29 +299,6 @@ ] } ], - "presets": [ - { - "tags": [ - "amenity=waste_basket" - ], - "title": { - "en": "a waste basket", - "nl": "een vuilnisbak", - "ru": "Контейнер для мусора", - "de": "einen Abfalleimer", - "eo": "Rubujo", - "it": "un cestino dei rifiuti", - "id": "sebuah keranjang sampah", - "da": "en affaldskurv", - "ca": "una paperera", - "fr": "une poubelle", - "cs": "odpadkový koš" - }, - "presiceInput": { - "preferredBackground": "photo" - } - } - ], "filter": [ { "id": "waste-type", @@ -413,26 +433,6 @@ "enableRelocation": false, "enableImproveAccuracy": true }, - "pointRendering": [ - { - "iconSize": "40,40", - "anchor": "center", - "location": [ - "point" - ], - "marker": [ - { - "icon": "./assets/themes/waste_basket/waste_basket.svg" - } - ] - } - ], - "lineRendering": [ - { - "color": "#00f", - "width": "8" - } - ], "cs": { "0": { "iconSize": { diff --git a/assets/layers/waste_disposal/waste_disposal.json b/assets/layers/waste_disposal/waste_disposal.json index 0ea3114e1..a088f949a 100644 --- a/assets/layers/waste_disposal/waste_disposal.json +++ b/assets/layers/waste_disposal/waste_disposal.json @@ -38,6 +38,25 @@ "cs": "Nakládání s odpady" } }, + "pointRendering": [ + { + "location": [ + "point", + "centroid" + ], + "iconSize": "20,20", + "marker": [ + { + "icon": "circle", + "color": "white" + }, + { + "icon": "./assets/layers/waste_disposal/waste_disposal.svg" + } + ] + } + ], + "lineRendering": [], "presets": [ { "title": { @@ -234,11 +253,6 @@ ] } ], - "allowMove": { - "enableImproveAccuracy": true, - "enableRelocation": true - }, - "deletion": true, "filter": [ { "#": "ignore-possible-duplicate", @@ -260,23 +274,9 @@ ] } ], - "pointRendering": [ - { - "location": [ - "point", - "centroid" - ], - "iconSize": "20,20", - "marker": [ - { - "icon": "circle", - "color": "white" - }, - { - "icon": "./assets/layers/waste_disposal/waste_disposal.svg" - } - ] - } - ], - "lineRendering": [] + "deletion": true, + "allowMove": { + "enableImproveAccuracy": true, + "enableRelocation": true + } } diff --git a/assets/layers/windturbine/windturbine.json b/assets/layers/windturbine/windturbine.json index 8947472bf..82e2787cc 100644 --- a/assets/layers/windturbine/windturbine.json +++ b/assets/layers/windturbine/windturbine.json @@ -61,6 +61,50 @@ } ] }, + "pointRendering": [ + { + "label": { + "mappings": [ + { + "if": "generator:output:electricity~^[0-9]+.*[W]$", + "then": "
    {generator:output:electricity}
    " + } + ] + }, + "iconSize": "40, 40", + "anchor": "bottom", + "location": [ + "point", + "centroid" + ], + "marker": [ + { + "icon": "./assets/themes/openwindpowermap/wind_turbine.svg" + } + ] + } + ], + "lineRendering": [], + "presets": [ + { + "tags": [ + "power=generator", + "generator:source=wind" + ], + "title": { + "en": "a wind turbine", + "nl": "een windturbine", + "fr": "une éolienne", + "de": "ein Windrad", + "it": "una pala eolica", + "zh_Hant": "風機", + "hu": "Szélerőmű", + "da": "en vindmølle", + "ca": "una turbina eòlica", + "cs": "větrná turbína" + } + } + ], "tagRenderings": [ { "id": "turbine-output", @@ -254,26 +298,6 @@ }, "images" ], - "presets": [ - { - "tags": [ - "power=generator", - "generator:source=wind" - ], - "title": { - "en": "a wind turbine", - "nl": "een windturbine", - "fr": "une éolienne", - "de": "ein Windrad", - "it": "una pala eolica", - "zh_Hant": "風機", - "hu": "Szélerőmű", - "da": "en vindmølle", - "ca": "una turbina eòlica", - "cs": "větrná turbína" - } - } - ], "units": [ { "appliesToKey": [ @@ -401,29 +425,5 @@ } ] } - ], - "pointRendering": [ - { - "label": { - "mappings": [ - { - "if": "generator:output:electricity~^[0-9]+.*[W]$", - "then": "
    {generator:output:electricity}
    " - } - ] - }, - "iconSize": "40, 40", - "anchor": "bottom", - "location": [ - "point", - "centroid" - ], - "marker": [ - { - "icon": "./assets/themes/openwindpowermap/wind_turbine.svg" - } - ] - } - ], - "lineRendering": [] + ] }