diff --git a/.forgejo/workflows/daily_data_maintenance.yml b/.forgejo/workflows/daily_data_maintenance.yml
new file mode 100644
index 0000000000..4bef6844e2
--- /dev/null
+++ b/.forgejo/workflows/daily_data_maintenance.yml
@@ -0,0 +1,32 @@
+on:
+ schedule:
+ - cron: "0 2 * * *"
+
+jobs:
+ deploy_on_hetzner_single:
+ runs-on: [ ubuntu-latest, hetzner-access ]
+ steps:
+ - uses: actions/checkout@v3
+
+ - name: Set up Node.js
+ uses: actions/setup-node@v3
+ with:
+ node-version: "20"
+ cache: "npm"
+ cache-dependency-path: package-lock.json
+
+ - name: install deps
+ run: npm ci
+ shell: bash
+
+ - name: create community index files
+ shell: bash
+ run: npm run download:community-index -- -- community-index/
+
+ - name: upload community index
+ shell: bash
+ run: |
+ zip community-index.zip community-index/*
+ scp community-index.zip hetzner:data/
+ ssh hetzner "cd data && rm -rf community-index/ && unzip community-index.zip && rm community-index.zip"
+
diff --git a/.forgejo/workflows/deploy_hosted.yml b/.forgejo/workflows/deploy_hosted.yml
index 53d2137dcb..7a9e1fa6b8 100644
--- a/.forgejo/workflows/deploy_hosted.yml
+++ b/.forgejo/workflows/deploy_hosted.yml
@@ -1,4 +1,3 @@
-name: Deploy develop on dev.mapcomplete.org
on:
push:
branches-ignore:
diff --git a/.forgejo/workflows/deploy_single_theme.yml b/.forgejo/workflows/deploy_single_theme.yml
index 2d7d662fbe..5858007ece 100644
--- a/.forgejo/workflows/deploy_single_theme.yml
+++ b/.forgejo/workflows/deploy_single_theme.yml
@@ -1,4 +1,3 @@
-name: Deploy develop on theme.mapcomplete.org
on:
push:
branches:
diff --git a/Docs/BuiltinIndex.md b/Docs/BuiltinIndex.md
index e7f25bfb6f..27048c3cd6 100644
--- a/Docs/BuiltinIndex.md
+++ b/Docs/BuiltinIndex.md
@@ -47,6 +47,7 @@
- dentist
- disaster_response
- doctors
+ - dog_toilet
- dogpark
- drinking_water
- dumpstations
@@ -145,6 +146,7 @@
- brothel
- cafe_pub
- car_rental
+ - childcare
- climbing_club
- climbing_gym
- dentist
@@ -152,7 +154,6 @@
- food
- food_courts
- ice_cream
- - kindergarten_childcare
- pharmacy
- police
- postoffices
@@ -198,6 +199,7 @@
- bike_themed_object
- cafe_pub
- car_rental
+ - childcare
- climbing_club
- climbing_gym
- cycle_highways
@@ -211,7 +213,6 @@
- food_courts
- governments
- hackerspace
- - kindergarten_childcare
- nature_reserve
- observation_tower
- outdoor_seating
@@ -237,6 +238,7 @@
- bike_themed_object
- cafe_pub
- car_rental
+ - childcare
- climbing_club
- climbing_gym
- dentist
@@ -246,7 +248,6 @@
- food_courts
- governments
- hackerspace
- - kindergarten_childcare
- physiotherapist
- recycling
- shops
@@ -264,6 +265,7 @@
- bike_themed_object
- cafe_pub
- car_rental
+ - childcare
- climbing_club
- climbing_gym
- dentist
@@ -272,7 +274,6 @@
- food
- governments
- hackerspace
- - kindergarten_childcare
- physiotherapist
- recycling
- shops
@@ -466,6 +467,7 @@
- cafe_pub
- food
+ - shops
- tourism_accomodation
### internet
@@ -756,4 +758,4 @@
-This document is autogenerated from [assets/layers/*.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/*.json)
+This document is autogenerated from [assets/layers/*.json](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/assets/layers/*.json)
diff --git a/Docs/BuiltinQuestions.md b/Docs/BuiltinQuestions.md
index 85754cf584..e8ec1fd659 100644
--- a/Docs/BuiltinQuestions.md
+++ b/Docs/BuiltinQuestions.md
@@ -611,4 +611,4 @@ The question is `What is the name of this place?`
-This document is autogenerated from [assets/layers/questions/questions.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/questions/questions.json)
+This document is autogenerated from [assets/layers/questions/questions.json](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/assets/layers/questions/questions.json)
diff --git a/Docs/CalculatedTags.md b/Docs/CalculatedTags.md
index bd611bfae2..41c657b3fd 100644
--- a/Docs/CalculatedTags.md
+++ b/Docs/CalculatedTags.md
@@ -5,36 +5,6 @@ Metatags are extra tags available, in order to display more data or to give bett
They are calculated automatically on every feature when the data arrives in the webbrowser. This document gives an overview of the available metatags.
**Hint:** when using metatags, add the [query parameter](URL_Parameters.md) `debug=true` to the URL. This will include a box in the popup for features which shows all the properties of the object
-## Table of contents
-
-1. [Metatags calculated by MapComplete](#metatags-calculated-by-mapcomplete)
- - [_lat, _lon](#_lat,-_lon)
- - [_layer](#_layer)
- - [_surface](#_surface)
- - [_surface:ha](#_surfaceha)
- - [_length, _length:km](#_length,-_lengthkm)
- - [Theme-defined keys](#theme-defined-keys)
- - [_country](#_country)
- - [_isOpen](#_isopen)
- - [_direction:numerical, _direction:leftright](#_directionnumerical,-_direction:leftright)
- - [_direction:centerpoint](#_directioncenterpoint)
- - [_now:date, _now:datetime](#_nowdate,-_now:datetime)
- - [_last_edit:contributor, _last_edit:contributor:uid, _last_edit:changeset, _last_edit:timestamp, _version_number, _backend](#_last_editcontributor,-_last_edit:contributor:uid,-_last_edit:changeset,-_last_edit:timestamp,-_version_number,-_backend)
- - [sidewalk:left, sidewalk:right, generic_key:left:property, generic_key:right:property](#sidewalkleft,-sidewalk:right,-generic_key:left:property,-generic_key:right:property)
- - [_geometry:type](#_geometrytype)
- - [_level](#_level)
- - [_referencing_ways](#_referencing_ways)
- - [_last_edit:passed_time](#_last_editpassed_time)
- - [_currency](#_currency)
-2. [ Calculating tags with Javascript ](#-calculating-tags-with-javascript-)
- - [distanceTo](#distanceto)
- - [overlapWith](#overlapwith)
- - [enclosingFeatures](#enclosingfeatures)
- - [intersectionsWith](#intersectionswith)
- - [closest](#closest)
- - [closestn](#closestn)
- - [get](#get)
-
## Metatags calculated by MapComplete
The following values are always calculated, by default, by MapComplete and are available automatically on all elements in every theme
@@ -234,4 +204,4 @@ Gets the property of the feature, parses it (as JSON) and returns it. Might retu
-This document is autogenerated from [src/Logic/SimpleMetaTagger.ts](https://github.com/pietervdvn/MapComplete/blob/develop/src/Logic/SimpleMetaTagger.ts), [src/Logic/ExtraFunctions.ts](https://github.com/pietervdvn/MapComplete/blob/develop/src/Logic/ExtraFunctions.ts)
+This document is autogenerated from [src/Logic/SimpleMetaTagger.ts](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/src/Logic/SimpleMetaTagger.ts), [src/Logic/ExtraFunctions.ts](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/src/Logic/ExtraFunctions.ts)
diff --git a/Docs/ChangesetMeta.md b/Docs/ChangesetMeta.md
index 9fe710d059..9e52492596 100644
--- a/Docs/ChangesetMeta.md
+++ b/Docs/ChangesetMeta.md
@@ -39,4 +39,4 @@ This might give a reason per modified node or way | DeleteAction |
-This document is autogenerated from [src/Logic/Osm/Changes.ts](https://github.com/pietervdvn/MapComplete/blob/develop/src/Logic/Osm/Changes.ts), [src/Logic/Osm/ChangesetHandler.ts](https://github.com/pietervdvn/MapComplete/blob/develop/src/Logic/Osm/ChangesetHandler.ts)
+This document is autogenerated from [src/Logic/Osm/Changes.ts](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/src/Logic/Osm/Changes.ts), [src/Logic/Osm/ChangesetHandler.ts](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/src/Logic/Osm/ChangesetHandler.ts)
diff --git a/Docs/ELI-overview.md b/Docs/ELI-overview.md
index a414fb2083..211245f23b 100644
--- a/Docs/ELI-overview.md
+++ b/Docs/ELI-overview.md
@@ -238,6 +238,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl
| ICGC-orto25c | ICGC - Ortofoto de Catalunya 1:2.500 vigent | photo | ⭐ | Institut Cartogràfic i Geològic de Catalunya |
| ICGC-topo | ICGC - Topogràfic de Catalunya | other | | Institut Cartogràfic i Geològic de Catalunya |
| PNOA-Spain-TMS | PNOA Spain | photo | ⭐ | PNOA |
+| SITNA-catastro | Catastro Navarra | other | | SITNA - Gobierno de Navarra / Nafarroako Gobernua |
| geoEuskadi-ORTO | geoEuskadiren Ortoargazkiak | photo | ⭐ | Eusko Jaurlaritza / Gobierno Vasco. geoEuskadi |
| IDEIB | IDEIB - Ortofoto més recent de les Illes Balears | photo | ⭐ | Infraestructura de Dades Espacials de les Illes Balears |
| hri-orto | Helsinki region orthophoto | photo | ⭐ | © Espoon, Helsingin ja Vantaan kaupungit, Kirkkonummen ja Nurmijärven kunnat sekä HSL ja HSY |
@@ -263,7 +264,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl
| Brest_2004 | Brest - 2004 | historicphoto | | Brest Métropole - 2004 |
| enedis | Enedis | photo | | Enedis 2018 |
| EMS-Orthophotographie-2022 | Eurométropole de Strasbourg - Orthophotographie 2022 | photo | ⭐ | Ville et eurométropole de Strasbourg - DataGrandEst 2022 |
-| Cadastre | Cadastre | map | | cadastre-dgi-fr source : Direction Générale des Impôts - Cadastre. Mise à jour : 2021 |
+| Cadastre | Cadastre | map | | cadastre-dgi-fr source : Direction Générale des Impôts - Cadastre. Mise à jour : 2022 |
| Geolittoral-Orthophotos2000 | Géolittoral - Orthophotos 2000 | historicphoto | | Ortho Littorale 2000 - Ministère en charge de l’environnement |
| GeolittoralV2-Orthophotos | Géolittoral V2 - Orthophotos 2011-2014 | historicphoto | | Ortho Littorale v2 - Ministère en charge de l’environnement |
| montauban_2020 | Grand Montauban 2020 | photo | | Grand Montauban 2020 |
@@ -448,9 +449,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl
| German-1944_Aerial | German Aerial Imagery (1944) | historicphoto | | © Simpals SRL, Bundesarchiv - Stabsbildabteilung |
| American-1966_Aerial | American Aerial Imagery (1966) | historicphoto | | © Simpals SRL, U.S. Geological Survey |
| Actueel_orthoHR_WMTS | PDOK aerial imagery Beeldmateriaal.nl 8cm (WMTS) latest | photo | ⭐ | Kadaster / Beeldmateriaal.nl, CC BY 4.0 |
-| kartverket-topo4 | Kartverket topo | map | | © Kartverket |
| kartverket-ok-1st | Kartverket Economic Maps (historic) | historicmap | | © Kartverket |
-| kartverket-sjokart | Kartverket Nautical Charts | map | | © Kartverket |
| geovekst-nib | Norway Orthophoto | photo | ⭐ | © Geovekst |
| geovekst-nib2 | Norway Orthophoto (more recent, less zoom) | photo | ⭐ | © Geovekst |
| geovekst-nib-historic | Norway Orthophoto (historic) | historicphoto | | © Geovekst |
@@ -692,6 +691,7 @@ This table gives a summary of ids, names and other metainformation. [See the onl
| Cook_IL_2021 | Cook County Orthoimagery 2021 | photo | | Cook County GIS |
| Cook_IL_2022 | Cook County Orthoimagery 2022 | photo | | Cook County GIS |
| Cook_IL_2023 | Cook County Orthoimagery 2023 | photo | | Cook County GIS |
+| Cook_IL_2024 | Cook County Orthoimagery 2024 | photo | | Cook County GIS |
| IN_2021 | Indiana Statewide Imagery Program (2021) | photo | | Indiana Geographic Information Office |
| IndianaMap_Latest | IndianaMap Orthoimagery - Latest Available | photo | | IndianaMap, Indiana Geographic Information Office |
| Kansas_NG911_2014 | Kansas NG911 Orthoimagery (2014) | historicphoto | | Kansas 911 Coordinating Council |
@@ -892,4 +892,4 @@ This table gives a summary of ids, names and other metainformation. [See the onl
-This document is autogenerated from [./public/assets/data/editor-layer-index.json](https://github.com/pietervdvn/MapComplete/blob/develop/./public/assets/data/editor-layer-index.json)
+This document is autogenerated from [./public/assets/data/editor-layer-index.json](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/./public/assets/data/editor-layer-index.json)
diff --git a/Docs/Hotkeys.md b/Docs/Hotkeys.md
index f9fa1a0477..bcf599de97 100644
--- a/Docs/Hotkeys.md
+++ b/Docs/Hotkeys.md
@@ -5,24 +5,13 @@ MapComplete supports the following keys:
| Key combination | Action |
-----|----- |
-| `1` | Select the POI which is closest to the map center (crosshair). Only when in keyboard navigation is used |
-| `2` | Select the POI which is second closest element to the map center (crosshair). Only when in keyboard navigation is used |
-| `3` | Select the POI which is third closest element to the map center (crosshair). Only when in keyboard navigation is used |
-| `4` | Select the POI which is the 4th closest element to the map center (crosshair). Only when in keyboard navigation is used |
-| `5` | Select the POI which is the 5th closest element to the map center (crosshair). Only when in keyboard navigation is used |
-| `6` | Select the POI which is the 6th closest element to the map center (crosshair). Only when in keyboard navigation is used |
-| `7` | Select the POI which is the 7th closest element to the map center (crosshair). Only when in keyboard navigation is used |
-| `8` | Select the POI which is the 8th closest element to the map center (crosshair). Only when in keyboard navigation is used |
| `B` | Opens the background layers panel |
-| `Escape` | Close the sidebar |
| `F` | Open the favourites page |
| `L` | Pan the map to the current location or zoom the map to the current location. Requests geopermission |
| `M` | Set the background to a map from external sources. Toggles between the two best, available layers |
| `O` | Set the background layer to on OpenStreetMap-based map (or disable the background raster layer) |
| `P` | Set the background to aerial or satellite imagery. Toggles between the two best, available layers |
| `S` | Opens the POI-layers and filter panel |
-| `Spacebar` | Select the POI which is closest to the map center (crosshair). Only when in keyboard navigation is used |
-| `ctrl+F` | Select the search bar to search locations |
| `shift+M` | Set the background to a map from external sources. Toggles between the two best, available layers |
| `shift+O` | Set the background layer to on OpenStreetMap-based map (or disable the background raster layer) |
| `shift+P` | Set the background to aerial or satellite imagery. Toggles between the two best, available layers |
@@ -30,4 +19,4 @@ MapComplete supports the following keys:
-This document is autogenerated from [src/UI/Base/Hotkeys.ts](https://github.com/pietervdvn/MapComplete/blob/develop/src/UI/Base/Hotkeys.ts)
+This document is autogenerated from [src/UI/Base/Hotkeys.ts](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/src/UI/Base/Hotkeys.ts)
diff --git a/Docs/Layers/bike_shop.md b/Docs/Layers/bike_shop.md
index f87fbe373e..d9d511d928 100644
--- a/Docs/Layers/bike_shop.md
+++ b/Docs/Layers/bike_shop.md
@@ -15,7 +15,6 @@ A shop specifically selling bicycles or related items
- [images](#images)
- [reviews](#reviews)
- [shops-name](#shops-name)
- - [shop_types](#shop_types)
- [brand](#brand)
- [second_hand](#second_hand)
- [opening_hours](#opening_hours)
@@ -34,18 +33,9 @@ A shop specifically selling bicycles or related items
- [bike_second_hand](#bike_second_hand)
- [repairs_bikes](#repairs_bikes)
- [bicycle_rental](#bicycle_rental)
- - [bicycle-types](#bicycle-types)
- - [rental-capacity-city_bike](#rental-capacity-city_bike)
- - [rental-capacity-ebike](#rental-capacity-ebike)
- - [rental-capacity-kid_bike](#rental-capacity-kid_bike)
- - [rental-capacity-bmx](#rental-capacity-bmx)
- - [rental-capacity-mtb](#rental-capacity-mtb)
- - [rental-capacity-bicycle_pannier](#rental-capacity-bicycle_pannier)
- - [rental-capacity-tandem_bicycle](#rental-capacity-tandem_bicycle)
- [bike_pump_service](#bike_pump_service)
- [bike_repair_tools](#bike_repair_tools)
- [bike_wash](#bike_wash)
- - [bike_cleaning-service_bicycle_cleaning_charge](#bike_cleaning-service_bicycle_cleaning_charge)
- [internet](#internet)
- [internet-fee](#internet-fee)
- [internet-ssid](#internet-ssid)
@@ -91,7 +81,6 @@ Elements must match **any** of the following expressions:
| attribute | type | values which are supported by this layer |
-----|-----|----- |
|
[name](https://wiki.openstreetmap.org/wiki/Key:name) | [string](../SpecialInputElements.md#string) | |
-|
[shop](https://wiki.openstreetmap.org/wiki/Key:shop) | [string](../SpecialInputElements.md#string) | [bicycle_rental](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbicycle_rental) [agrarian](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dagrarian) [alcohol](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dalcohol) [anime](https://wiki.openstreetmap.org/wiki/Tag:shop%3Danime) [antiques](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dantiques) [appliance](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dappliance) [art](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dart) [baby_goods](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbaby_goods) [bag](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbag) [bakery](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbakery) [bathroom_furnishing](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbathroom_furnishing) [beauty](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbeauty) [bed](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbed) [beverages](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbeverages) [bicycle](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbicycle) [boat](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dboat) [bookmaker](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbookmaker) [books](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbooks) [brewing_supplies](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbrewing_supplies) [butcher](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dbutcher) [camera](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcamera) [candles](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcandles) [cannabis](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcannabis) [car](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcar) [car_parts](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcar_parts) [car_repair](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcar_repair) [caravan](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcaravan) [carpet](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcarpet) [catalogue](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcatalogue) [charity](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcharity) [cheese](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcheese) [chemist](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dchemist) [chocolate](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dchocolate) [clothes](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dclothes) [coffee](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcoffee) [collector](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcollector) [computer](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcomputer) [confectionery](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dconfectionery) [convenience](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dconvenience) [copyshop](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcopyshop) [cosmetics](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcosmetics) [country_store](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcountry_store) [craft](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcraft) [curtain](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dcurtain) [dairy](https://wiki.openstreetmap.org/wiki/Tag:shop%3Ddairy) [deli](https://wiki.openstreetmap.org/wiki/Tag:shop%3Ddeli) [department_store](https://wiki.openstreetmap.org/wiki/Tag:shop%3Ddepartment_store) [doityourself](https://wiki.openstreetmap.org/wiki/Tag:shop%3Ddoityourself) [doors](https://wiki.openstreetmap.org/wiki/Tag:shop%3Ddoors) [dry_cleaning](https://wiki.openstreetmap.org/wiki/Tag:shop%3Ddry_cleaning) [e-cigarette](https://wiki.openstreetmap.org/wiki/Tag:shop%3De-cigarette) [electrical](https://wiki.openstreetmap.org/wiki/Tag:shop%3Delectrical) [electronics](https://wiki.openstreetmap.org/wiki/Tag:shop%3Delectronics) [erotic](https://wiki.openstreetmap.org/wiki/Tag:shop%3Derotic) [fabric](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfabric) [farm](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfarm) [fashion_accessories](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfashion_accessories) [fireplace](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfireplace) [fishing](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfishing) [flooring](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dflooring) [florist](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dflorist) [frame](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dframe) [frozen_food](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfrozen_food) [fuel](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfuel) [funeral_directors](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfuneral_directors) [furniture](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dfurniture) [games](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dgames) [garden_centre](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dgarden_centre) [gas](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dgas) [general](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dgeneral) [gift](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dgift) [greengrocer](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dgreengrocer) [hairdresser](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhairdresser) [hairdresser_supply](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhairdresser_supply) [hardware](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhardware) [health_food](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhealth_food) [hearing_aids](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhearing_aids) [herbalist](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dherbalist) [hifi](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhifi) [honey](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhoney) [household_linen](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhousehold_linen) [houseware](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhouseware) [hunting](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dhunting) [interior_decoration](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dinterior_decoration) [jewelry](https://wiki.openstreetmap.org/wiki/Tag:shop%3Djewelry) [kiosk](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dkiosk) [kitchen](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dkitchen) [laundry](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dlaundry) [leather](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dleather) [lighting](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dlighting) [locksmith](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dlocksmith) [lottery](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dlottery) [mall](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmall) [massage](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmassage) [medical_supply](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmedical_supply) [military_surplus](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmilitary_surplus) [mobile_phone](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmobile_phone) [model](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmodel) [money_lender](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmoney_lender) [motorcycle](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmotorcycle) [motorcycle_repair](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmotorcycle_repair) [music](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmusic) [musical_instrument](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dmusical_instrument) [newsagent](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dnewsagent) [nutrition_supplements](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dnutrition_supplements) [nuts](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dnuts) [optician](https://wiki.openstreetmap.org/wiki/Tag:shop%3Doptician) [outdoor](https://wiki.openstreetmap.org/wiki/Tag:shop%3Doutdoor) [outpost](https://wiki.openstreetmap.org/wiki/Tag:shop%3Doutpost) [paint](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpaint) [party](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dparty) [pasta](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpasta) [pastry](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpastry) [pawnbroker](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpawnbroker) [perfumery](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dperfumery) [pet](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpet) [pet_grooming](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpet_grooming) [photo](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dphoto) [pottery](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpottery) [printer_ink](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dprinter_ink) [psychic](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpsychic) [pyrotechnics](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dpyrotechnics) [radiotechnics](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dradiotechnics) [religion](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dreligion) [rental](https://wiki.openstreetmap.org/wiki/Tag:shop%3Drental) [repair](https://wiki.openstreetmap.org/wiki/Tag:shop%3Drepair) [rice](https://wiki.openstreetmap.org/wiki/Tag:shop%3Drice) [scuba_diving](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dscuba_diving) [seafood](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dseafood) [second_hand](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dsecond_hand) [sewing](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dsewing) [shoe_repair](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dshoe_repair) [shoes](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dshoes) [spices](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dspices) [sports](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dsports) [stationery](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dstationery) [storage_rental](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dstorage_rental) [supermarket](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dsupermarket) [swimming_pool](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dswimming_pool) [tailor](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtailor) [tattoo](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtattoo) [tea](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtea) [telecommunication](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtelecommunication) [ticket](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dticket) [tiles](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtiles) [tobacco](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtobacco) [tool_hire](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtool_hire) [toys](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtoys) [trade](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtrade) [travel_agency](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtravel_agency) [trophy](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtrophy) [tyres](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dtyres) [vacuum_cleaner](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dvacuum_cleaner) [variety_store](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dvariety_store) [video](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dvideo) [video_games](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dvideo_games) [watches](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwatches) [water](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwater) [water_sports](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwater_sports) [weapons](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dweapons) [wholesale](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwholesale) [wigs](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwigs) [window_blind](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwindow_blind) [wine](https://wiki.openstreetmap.org/wiki/Tag:shop%3Dwine) |
|
[brand](https://wiki.openstreetmap.org/wiki/Key:brand) | [string](../SpecialInputElements.md#string) | |
|
[second_hand](https://wiki.openstreetmap.org/wiki/Key:second_hand) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:second_hand%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:second_hand%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:second_hand%3Dno) |
|
[opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
@@ -105,18 +94,9 @@ Elements must match **any** of the following expressions:
|
[service:bicycle:second_hand](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:second_hand) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:second_hand%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:second_hand%3Dno) [only](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:second_hand%3Donly) |
|
[service:bicycle:repair](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:repair) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:repair%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:repair%3Dno) [only_sold](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:repair%3Donly_sold) [brand](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:repair%3Dbrand) |
|
[service:bicycle:rental](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:rental) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:rental%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:rental%3Dno) |
-|
[rental](https://wiki.openstreetmap.org/wiki/Key:rental) | [string](../SpecialInputElements.md#string) | [city_bike](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dcity_bike) [ebike](https://wiki.openstreetmap.org/wiki/Tag:rental%3Debike) [bmx](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dbmx) [mtb](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dmtb) [kid_bike](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dkid_bike) [tandem](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dtandem) [racebike](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dracebike) [bike_helmet](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dbike_helmet) [cargo_bike](https://wiki.openstreetmap.org/wiki/Tag:rental%3Dcargo_bike) |
-|
[capacity:city_bike](https://wiki.openstreetmap.org/wiki/Key:capacity:city_bike) | [pnat](../SpecialInputElements.md#pnat) | |
-|
[capacity:ebike](https://wiki.openstreetmap.org/wiki/Key:capacity:ebike) | [pnat](../SpecialInputElements.md#pnat) | |
-|
[capacity:kid_bike](https://wiki.openstreetmap.org/wiki/Key:capacity:kid_bike) | [pnat](../SpecialInputElements.md#pnat) | |
-|
[capacity:bmx](https://wiki.openstreetmap.org/wiki/Key:capacity:bmx) | [pnat](../SpecialInputElements.md#pnat) | |
-|
[capacity:mtb](https://wiki.openstreetmap.org/wiki/Key:capacity:mtb) | [pnat](../SpecialInputElements.md#pnat) | |
-|
[capacity:bicycle_pannier](https://wiki.openstreetmap.org/wiki/Key:capacity:bicycle_pannier) | [pnat](../SpecialInputElements.md#pnat) | |
-|
[capacity:tandem_bicycle](https://wiki.openstreetmap.org/wiki/Key:capacity:tandem_bicycle) | [pnat](../SpecialInputElements.md#pnat) | |
|
[service:bicycle:pump](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:pump) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:pump%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:pump%3Dno) [separate](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:pump%3Dseparate) |
|
[service:bicycle:diy](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:diy) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:diy%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:diy%3Dno) [only_sold](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:diy%3Donly_sold) |
|
[service:bicycle:cleaning](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Dyes) [diy](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Ddiy) [no](https://wiki.openstreetmap.org/wiki/Tag:service:bicycle:cleaning%3Dno) |
-|
[service:bicycle:cleaning:charge](https://wiki.openstreetmap.org/wiki/Key:service:bicycle:cleaning:charge) | [string](../SpecialInputElements.md#string) | |
|
[internet_access](https://wiki.openstreetmap.org/wiki/Key:internet_access) | Multiple choice | [wlan](https://wiki.openstreetmap.org/wiki/Tag:internet_access%3Dwlan) [no](https://wiki.openstreetmap.org/wiki/Tag:internet_access%3Dno) [terminal](https://wiki.openstreetmap.org/wiki/Tag:internet_access%3Dterminal) [wired](https://wiki.openstreetmap.org/wiki/Tag:internet_access%3Dwired) [terminal;wifi](https://wiki.openstreetmap.org/wiki/Tag:internet_access%3Dterminal;wifi) |
|
[internet_access:fee](https://wiki.openstreetmap.org/wiki/Key:internet_access:fee) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:internet_access:fee%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:internet_access:fee%3Dno) [customers](https://wiki.openstreetmap.org/wiki/Tag:internet_access:fee%3Dcustomers) |
|
[internet_access:ssid](https://wiki.openstreetmap.org/wiki/Key:internet_access:ssid) | [string](../SpecialInputElements.md#string) | [Telekom](https://wiki.openstreetmap.org/wiki/Tag:internet_access:ssid%3DTelekom) |
@@ -142,180 +122,6 @@ _This tagrendering has no question and is thus read-only_
The question is `What is the name of this shop?`
*This shop is called {name}* is shown if `name` is set
-### shop_types
-
-The question is `What kind of shop is this?`
-*This is a {shop}* is shown if `shop` is set
-
- -
*Bicycle rental shop* is shown if with shop=bicycle_rental
- -
*Farm Supply Shop* is shown if with shop=agrarian
- -
*Liquor Store* is shown if with shop=alcohol
- -
*Anime / Manga Shop* is shown if with shop=anime
- -
*Antique Shop* is shown if with shop=antiques
- -
*Appliance Store* is shown if with shop=appliance
- -
*Art Store* is shown if with shop=art
- -
*Baby Goods Store* is shown if with shop=baby_goods
- -
*Bag/Luggage Store* is shown if with shop=bag
- -
*Bakery* is shown if with shop=bakery
- -
*Bathroom Furnishing Store* is shown if with shop=bathroom_furnishing
- -
*Beauty Shop* is shown if with shop=beauty
- -
*Bedding/Mattress Store* is shown if with shop=bed
- -
*Beverage Store* is shown if with shop=beverages
- -
*Bicycle Shop* is shown if with shop=bicycle
- -
*Boat Store* is shown if with shop=boat
- -
*Bookmaker* is shown if with shop=bookmaker
- -
*Bookstore* is shown if with shop=books
- -
*Brewing Supply Store* is shown if with shop=brewing_supplies
- -
*Butcher* is shown if with shop=butcher
- -
*Camera Equipment Store* is shown if with shop=camera
- - *Candle Shop* is shown if with shop=candles
- -
*Cannabis Shop* is shown if with shop=cannabis
- - *Car Dealership* is shown if with shop=car
- -
*Car Parts Store* is shown if with shop=car_parts
- -
*Car Repair Shop* is shown if with shop=car_repair
- -
*RV Dealership* is shown if with shop=caravan
- -
*Carpet Store* is shown if with shop=carpet
- -
*Catalog Shop* is shown if with shop=catalogue
- -
*Charity Store* is shown if with shop=charity
- -
*Cheese Store* is shown if with shop=cheese
- - *Drugstore* is shown if with shop=chemist
- -
*Chocolate Store* is shown if with shop=chocolate
- -
*Clothing Store* is shown if with shop=clothes
- -
*Coffee Store* is shown if with shop=coffee
- - *Collectibles Shop* is shown if with shop=collector
- -
*Computer Store* is shown if with shop=computer
- -
*Candy Store* is shown if with shop=confectionery
- - *Convenience Store* is shown if with shop=convenience
- -
*Copy Store* is shown if with shop=copyshop
- -
*Cosmetics Store* is shown if with shop=cosmetics
- -
*Rural Supplies Store* is shown if with shop=country_store
- - *Arts & Crafts Store* is shown if with shop=craft
- -
*Curtain Store* is shown if with shop=curtain
- -
*Dairy Store* is shown if with shop=dairy
- -
*Delicatessen* is shown if with shop=deli
- -
*Department Store* is shown if with shop=department_store
- -
*DIY Store* is shown if with shop=doityourself
- -
*Door Shop* is shown if with shop=doors
- -
*Dry Cleaner* is shown if with shop=dry_cleaning
- -
*E-Cigarette Shop* is shown if with shop=e-cigarette
- -
*Electrical Equipment Store* is shown if with shop=electrical
- -
*Electronics Store* is shown if with shop=electronics
- -
*Erotic Store* is shown if with shop=erotic
- -
*Fabric Store* is shown if with shop=fabric
- - *Produce Stand* is shown if with shop=farm
- -
*Fashion Accessories Store* is shown if with shop=fashion_accessories
- -
*Fireplace Store* is shown if with shop=fireplace
- -
*Fishing Shop* is shown if with shop=fishing
- -
*Flooring Supply Shop* is shown if with shop=flooring
- -
*Florist* is shown if with shop=florist
- -
*Framing Shop* is shown if with shop=frame
- - *Frozen Food Store* is shown if with shop=frozen_food
- -
*Fuel Shop* is shown if with shop=fuel
- -
*Funeral Home* is shown if with shop=funeral_directors
- -
*Furniture Store* is shown if with shop=furniture
- -
*Tabletop Game Store* is shown if with shop=games
- -
*Garden Center* is shown if with shop=garden_centre
- -
*Bottled Gas Shop* is shown if with shop=gas
- -
*General Store* is shown if with shop=general
- -
*Gift Shop* is shown if with shop=gift
- -
*Greengrocer* is shown if with shop=greengrocer
- -
*Hairdresser* is shown if with shop=hairdresser
- -
*Hairdresser Supply Store* is shown if with shop=hairdresser_supply
- -
*Hardware Store* is shown if with shop=hardware
- -
*Health Food Store* is shown if with shop=health_food
- -
*Hearing Aids Store* is shown if with shop=hearing_aids
- -
*Herbalist* is shown if with shop=herbalist
- -
*Hifi Store* is shown if with shop=hifi
- -
*Honey Store* is shown if with shop=honey
- -
*Household Linen Shop* is shown if with shop=household_linen
- -
*Houseware Store* is shown if with shop=houseware
- -
*Hunting Shop* is shown if with shop=hunting
- -
*Interior Decoration Store* is shown if with shop=interior_decoration
- -
*Jewelry Store* is shown if with shop=jewelry
- -
*Kiosk* is shown if with shop=kiosk
- -
*Kitchen Design Store* is shown if with shop=kitchen
- -
*Laundry* is shown if with shop=laundry
- -
*Leather Store* is shown if with shop=leather
- -
*Lighting Store* is shown if with shop=lighting
- -
*Locksmith* is shown if with shop=locksmith
- - *Lottery Shop* is shown if with shop=lottery
- - *Mall* is shown if with shop=mall
- -
*Massage Shop* is shown if with shop=massage
- -
*Medical Supply Store* is shown if with shop=medical_supply
- -
*Military Surplus Store* is shown if with shop=military_surplus
- - *Mobile Phone Store* is shown if with shop=mobile_phone
- -
*Model Shop* is shown if with shop=model
- -
*Money Lender* is shown if with shop=money_lender
- -
*Motorcycle Dealership* is shown if with shop=motorcycle
- -
*Motorcycle Repair Shop* is shown if with shop=motorcycle_repair
- -
*Music Store* is shown if with shop=music
- -
*Musical Instrument Store* is shown if with shop=musical_instrument
- -
*Newsstand* is shown if with shop=newsagent
- -
*Nutrition Supplements Store* is shown if with shop=nutrition_supplements
- -
*Nuts Shop* is shown if with shop=nuts
- -
*Optician* is shown if with shop=optician
- -
*Outdoors Store* is shown if with shop=outdoor
- -
*Online Retailer Outpost* is shown if with shop=outpost
- -
*Paint Store* is shown if with shop=paint
- -
*Party Supply Store* is shown if with shop=party
- -
*Pasta Store* is shown if with shop=pasta
- -
*Pastry Shop* is shown if with shop=pastry
- -
*Pawnshop* is shown if with shop=pawnbroker
- -
*Perfume Store* is shown if with shop=perfumery
- -
*Pet Store* is shown if with shop=pet
- -
*Pet Groomer* is shown if with shop=pet_grooming
- -
*Photography Store* is shown if with shop=photo
- -
*Pottery Store* is shown if with shop=pottery
- -
*Printer Ink Store* is shown if with shop=printer_ink
- -
*Psychic* is shown if with shop=psychic
- -
*Fireworks Store* is shown if with shop=pyrotechnics
- -
*Radio/Electronic Component Store* is shown if with shop=radiotechnics
- -
*Religious Store* is shown if with shop=religion
- -
*Rental Shop* is shown if with shop=rental
- - *Repair Shop* is shown if with shop=repair
- -
*Rice Store* is shown if with shop=rice
- -
*Scuba Diving Shop* is shown if with shop=scuba_diving
- -
*Seafood Shop* is shown if with shop=seafood
- -
*Thrift Store* is shown if with shop=second_hand
- -
*Sewing Supply Shop* is shown if with shop=sewing
- -
*Shoe Repair Shop* is shown if with shop=shoe_repair
- -
*Shoe Store* is shown if with shop=shoes
- -
*Spice Shop* is shown if with shop=spices
- -
*Sporting Goods Store* is shown if with shop=sports
- -
*Stationery Store* is shown if with shop=stationery
- -
*Storage Rental* is shown if with shop=storage_rental
- -
*Supermarket* is shown if with shop=supermarket
- - *Pool Supply Store* is shown if with shop=swimming_pool
- -
*Tailor* is shown if with shop=tailor
- -
*Tattoo Parlor* is shown if with shop=tattoo
- -
*Tea Store* is shown if with shop=tea
- -
*Telecom Retail Store* is shown if with shop=telecommunication
- - *Ticket Seller* is shown if with shop=ticket
- -
*Tile Shop* is shown if with shop=tiles
- -
*Tobacco Shop* is shown if with shop=tobacco
- -
*Tool Rental* is shown if with shop=tool_hire
- -
*Toy Store* is shown if with shop=toys
- -
*Trade Shop* is shown if with shop=trade
- -
*Travel Agency* is shown if with shop=travel_agency
- -
*Trophy Shop* is shown if with shop=trophy
- -
*Tire Store* is shown if with shop=tyres
- -
*Vacuum Cleaner Store* is shown if with shop=vacuum_cleaner
- -
*Discount Store* is shown if with shop=variety_store
- -
*Video Store* is shown if with shop=video
- -
*Video Game Store* is shown if with shop=video_games
- -
*Watches Shop* is shown if with shop=watches
- -
*Drinking Water Shop* is shown if with shop=water
- - *Watersport/Swim Shop* is shown if with shop=water_sports
- -
*Weapon Shop* is shown if with shop=weapons
- -
*Wholesale Store* is shown if with shop=wholesale
- -
*Wig Shop* is shown if with shop=wigs
- -
*Window Blind Store* is shown if with shop=window_blind
- -
*Wine Shop* is shown if with shop=wine
- -
*This shop is no longer used. It is vacant* is shown if with disused:shop=
-
-This tagrendering has labels
-`description`
-
### brand
The question is `What is the brand of this shop?`
@@ -481,88 +287,6 @@ The question is `Does this shop rent out bikes?`
This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=sport | shop=sports | shop=bicycle_repair | shop=outdoor | shop=rental | service:bicycle:rental~.+
-### bicycle-types
-
-The question is `What kind of bicycles and accessories are rented here?`
-*{rental} is rented here* is shown if `rental` is set
-
- - *Normal city bikes can be rented here* is shown if with rental=city_bike
- - *Electrical bikes can be rented here* is shown if with rental=ebike
- - *BMX bikes can be rented here* is shown if with rental=bmx
- - *Mountainbikes can be rented here* is shown if with rental=mtb
- - *Bikes for children can be rented here* is shown if with rental=kid_bike
- - *Tandem bicycles can be rented here* is shown if with rental=tandem
- - *Race bicycles can be rented here* is shown if with rental=racebike
- - *Bike helmets can be rented here* is shown if with rental=bike_helmet
- - *Cargo bikes can be rented here* is shown if with rental=cargo_bike
-
-This tagrendering is only visible in the popup if the following condition is met: service:bicycle:rental=yes | bicycle_rental~.+
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-city_bike
-
-The question is `How many city bikes can be rented here?`
-*{capacity:city_bike} city bikes can be rented here* is shown if `capacity:city_bike` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*city_bike.*)$
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-ebike
-
-The question is `How many electrical bikes can be rented here?`
-*{capacity:ebike} electrical bikes can be rented here* is shown if `capacity:ebike` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*ebike.*)$
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-kid_bike
-
-The question is `How many bikes for children can be rented here?`
-*{capacity:kid_bike} bikes for children can be rented here* is shown if `capacity:kid_bike` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*kid_bike.*)$
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-bmx
-
-The question is `How many BMX bikes can be rented here?`
-*{capacity:bmx} BMX bikes can be rented here* is shown if `capacity:bmx` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*bmx.*)$
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-mtb
-
-The question is `How many mountainbikes can be rented here?`
-*{capacity:mtb} mountainbikes can be rented here* is shown if `capacity:mtb` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*mtb.*)$
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-bicycle_pannier
-
-The question is `How many bicycle panniers can be rented here?`
-*{capacity:bicycle_pannier} bicycle panniers can be rented here* is shown if `capacity:bicycle_pannier` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*bicycle_pannier.*)$
-This tagrendering has labels
-`bicycle_rental`
-
-### rental-capacity-tandem_bicycle
-
-The question is `How many tandem can be rented here?`
-*{capacity:tandem_bicycle} tandem can be rented here* is shown if `capacity:tandem_bicycle` is set
-
-This tagrendering is only visible in the popup if the following condition is met: (service:bicycle:rental=yes | bicycle_rental~.+) & rental~^(.*tandem_bicycle.*)$
-This tagrendering has labels
-`bicycle_rental`
-
### bike_pump_service
The question is `Does this shop offer a bike pump for use by anyone?`
@@ -593,16 +317,6 @@ The question is `Are bicycles washed here?`
This tagrendering is only visible in the popup if the following condition is met: shop=bicycle | shop=bicycle_repair | ^(service:bicycle:.*)$~~^(yes|only)$ | service:bicycle:cleaning~.+
-### bike_cleaning-service_bicycle_cleaning_charge
-
-The question is `How much does it cost to use the cleaning service?`
-*Using the cleaning service costs {service:bicycle:cleaning:charge}* is shown if `service:bicycle:cleaning:charge` is set
-
- - *The cleaning service is free to use* is shown if with service:bicycle:cleaning:fee=no
- - *Free to use* is shown if with service:bicycle:cleaning:fee=yes & service:bicycle:cleaning:charge=. _This option cannot be chosen as answer_
-
-This tagrendering is only visible in the popup if the following condition is met: amenity!=bicycle_wash & service:bicycle:cleaning!=no & service:bicycle:cleaning~.+
-
### internet
The question is `Does this place offer internet access?`
diff --git a/Docs/Layers/kindergarten_childcare.md b/Docs/Layers/childcare.md
similarity index 69%
rename from Docs/Layers/kindergarten_childcare.md
rename to Docs/Layers/childcare.md
index 7ea24a4189..5871bfd8ea 100644
--- a/Docs/Layers/kindergarten_childcare.md
+++ b/Docs/Layers/childcare.md
@@ -1,6 +1,6 @@
[//]: # (WARNING: this file is automatically generated. Please find the sources at the bottom and edit those sources)
-# kindergarten_childcare
+# childcare
Shows kindergartens and preschools. Both are grouped in one layer, as they are regularly confused with each other
@@ -12,7 +12,6 @@ Shows kindergartens and preschools. Both are grouped in one layer, as they are r
2. [Presets](#presets)
3. [Basic tags for this layer](#basic-tags-for-this-layer)
4. [Supported attributes](#supported-attributes)
- - [childcare-type](#childcare-type)
- [name](#name)
- [website](#website)
- [email](#email)
@@ -35,18 +34,13 @@ Shows kindergartens and preschools. Both are grouped in one layer, as they are r
The following options to create new points are included:
- - **a kindergarten** which has the following tags:amenity=kindergarten & isced:level=0 & isced:2011:level=early_childhood
- - **a childcare** which has the following tags:amenity=kindergarten
+ - **a childcare** which has the following tags:amenity=childcare
## Basic tags for this layer
-Elements must match **any** of the following expressions:
+Elements must match the expression **amenity=childcare**
- - amenity=childcare
- - amenity=kindergarten
- - isced:level:2011=early_childhood
-
-[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22childcare%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22amenity%22%3D%22kindergarten%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22isced%3Alevel%3A2011%22%3D%22early_childhood%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
+[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22childcare%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
## Supported attributes
@@ -54,7 +48,6 @@ Elements must match **any** of the following expressions:
| attribute | type | values which are supported by this layer |
-----|-----|----- |
-|
[amenity](https://wiki.openstreetmap.org/wiki/Key:amenity) | Multiple choice | [kindergarten](https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dkindergarten) [childcare](https://wiki.openstreetmap.org/wiki/Tag:amenity%3Dchildcare) |
|
[name](https://wiki.openstreetmap.org/wiki/Key:name) | [string](../SpecialInputElements.md#string) | |
|
[website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
[email](https://wiki.openstreetmap.org/wiki/Key:email) | [email](../SpecialInputElements.md#email) | |
@@ -62,13 +55,6 @@ Elements must match **any** of the following expressions:
|
[opening_hours](https://wiki.openstreetmap.org/wiki/Key:opening_hours) | [opening_hours](../SpecialInputElements.md#opening_hours) | |
|
[capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [pnat](../SpecialInputElements.md#pnat) | |
-### childcare-type
-
-The question is `What type of facility is this?`
-
- - *This is a kindergarten (also known as preschool) where small kids receive early education.* is shown if with amenity=kindergarten
- - *This is a childcare facility, such as a nursery or daycare where small kids are looked after. They do not offer an education and are ofter run as private businesses* is shown if with amenity=childcare
-
### name
The question is `What is the name of this facility?`
@@ -150,4 +136,4 @@ This tagrendering has labels
-This document is autogenerated from [assets/layers/kindergarten_childcare/kindergarten_childcare.json](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/assets/layers/kindergarten_childcare/kindergarten_childcare.json)
+This document is autogenerated from [assets/layers/childcare/childcare.json](https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/assets/layers/childcare/childcare.json)
diff --git a/Docs/Layers/maproulette.md b/Docs/Layers/maproulette.md
index 969ac6fb1e..a4c51efb43 100644
--- a/Docs/Layers/maproulette.md
+++ b/Docs/Layers/maproulette.md
@@ -11,22 +11,19 @@ This layer is loaded from an external source, namely
`https://maproulette.org/api/v2/tasks/box/{x_min}/{y_min}/{x_max}/{y_max}`
+No themes use this layer
+
## Table of contents
-1. [Themes using this layer](#themes-using-this-layer)
-2. [Basic tags for this layer](#basic-tags-for-this-layer)
-3. [Supported attributes](#supported-attributes)
+1. [Basic tags for this layer](#basic-tags-for-this-layer)
+2. [Supported attributes](#supported-attributes)
- [status](#status)
- [mark_fixed](#mark_fixed)
- [mark_duplicate](#mark_duplicate)
- [mark_too_hard](#mark_too_hard)
- [leftover-questions](#leftover-questions)
- [lod](#lod)
-4. [Filters](#filters)
-
-## Themes using this layer
-
- - [maproulette](https://mapcomplete.org/maproulette)
+3. [Filters](#filters)
## Basic tags for this layer
diff --git a/Docs/Layers/maproulette_challenge.md b/Docs/Layers/maproulette_challenge.md
index 81b56f9db5..3ee1689541 100644
--- a/Docs/Layers/maproulette_challenge.md
+++ b/Docs/Layers/maproulette_challenge.md
@@ -17,7 +17,6 @@ This layer is loaded from an external source, namely
1. [Themes using this layer](#themes-using-this-layer)
2. [Basic tags for this layer](#basic-tags-for-this-layer)
3. [Supported attributes](#supported-attributes)
- - [details](#details)
- [status](#status)
- [leftover-questions](#leftover-questions)
- [lod](#lod)
@@ -44,11 +43,6 @@ Elements must match the expression **mr_taskId~.+**
-----|-----|----- |
|
[mr_taskStatus](https://wiki.openstreetmap.org/wiki/Key:mr_taskStatus) | Multiple choice | [Created](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DCreated) [Fixed](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DFixed) [False positive](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DFalse positive) [Skipped](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DSkipped) [Deleted](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DDeleted) [Already fixed](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DAlready fixed) [Too hard](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DToo hard) [Disabled](https://wiki.openstreetmap.org/wiki/Tag:mr_taskStatus%3DDisabled) |
-### details
-
-_This tagrendering has no question and is thus read-only_
-*{maproulette_task()}*
-
### status
_This tagrendering has no question and is thus read-only_
diff --git a/Docs/Layers/osm_community_index.md b/Docs/Layers/osm_community_index.md
index 1120992abe..36b5ae0b2b 100644
--- a/Docs/Layers/osm_community_index.md
+++ b/Docs/Layers/osm_community_index.md
@@ -9,7 +9,7 @@ A layer showing the OpenStreetMap Communities
This layer is loaded from an external source, namely
-`https://raw.githubusercontent.com/pietervdvn/MapComplete-data/main/community_index/tile_{z}_{x}_{y}.geojson`
+`https://data.mapcomplete.org/community-index/tile_{z}_{x}_{y}.geojson`
## Table of contents
diff --git a/Docs/Layers/school.md b/Docs/Layers/school.md
index 3a808542cb..79e2be34a1 100644
--- a/Docs/Layers/school.md
+++ b/Docs/Layers/school.md
@@ -21,6 +21,7 @@ Schools giving primary and secondary education and post-secondary, non-tertiary
- [website](#website)
- [capacity](#capacity)
- [education-level-belgium](#education-level-belgium)
+ - [orientation_belgium](#orientation_belgium)
- [gender](#gender)
- [pedagogy](#pedagogy)
- [target-audience](#target-audience)
@@ -40,12 +41,16 @@ Schools giving primary and secondary education and post-secondary, non-tertiary
The following options to create new points are included:
- **a primary or secondary school** which has the following tags:amenity=school & fixme=Added with MapComplete, the precise geometry should still be drawn
+ - **a kindergarten** which has the following tags:amenity=kindergarten & school=kindergarten & isced:level=0
## Basic tags for this layer
-Elements must match the expression **amenity=school**
+Elements must match **any** of the following expressions:
-[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22school%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
+ - amenity=school
+ - amenity=kindergarten
+
+[Execute on overpass](http://overpass-turbo.eu/?Q=%5Bout%3Ajson%5D%5Btimeout%3A90%5D%3B%28%20%20%20%20nwr%5B%22amenity%22%3D%22school%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%20%20%20%20nwr%5B%22amenity%22%3D%22kindergarten%22%5D%28%7B%7Bbbox%7D%7D%29%3B%0A%29%3Bout%20body%3B%3E%3Bout%20skel%20qt%3B)
## Supported attributes
@@ -59,9 +64,10 @@ Elements must match the expression **
[website](https://wiki.openstreetmap.org/wiki/Key:website) | [url](../SpecialInputElements.md#url) | |
|
[capacity](https://wiki.openstreetmap.org/wiki/Key:capacity) | [pnat](../SpecialInputElements.md#pnat) | |
|
[school](https://wiki.openstreetmap.org/wiki/Key:school) | Multiple choice | [kindergarten](https://wiki.openstreetmap.org/wiki/Tag:school%3Dkindergarten) [primary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dprimary) [secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dsecondary) [lower_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dlower_secondary) [middle_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dmiddle_secondary) [upper_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dupper_secondary) [post_secondary](https://wiki.openstreetmap.org/wiki/Tag:school%3Dpost_secondary) |
+|
[school:orientation](https://wiki.openstreetmap.org/wiki/Key:school:orientation) | Multiple choice | [academic](https://wiki.openstreetmap.org/wiki/Tag:school:orientation%3Dacademic) [professional](https://wiki.openstreetmap.org/wiki/Tag:school:orientation%3Dprofessional) [vocational](https://wiki.openstreetmap.org/wiki/Tag:school:orientation%3Dvocational) |
|
[school:gender](https://wiki.openstreetmap.org/wiki/Key:school:gender) | Multiple choice | [mixed](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dmixed) [separated](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dseparated) [male](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dmale) [female](https://wiki.openstreetmap.org/wiki/Tag:school:gender%3Dfemale) |
|
[pedagogy](https://wiki.openstreetmap.org/wiki/Key:pedagogy) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dmainstream) [montessori](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dmontessori) [freinet](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dfreinet) [jenaplan](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Djenaplan) [waldorf](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dwaldorf) [dalton](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Ddalton) [outdoor](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Doutdoor) [reggio_emilia](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dreggio_emilia) [sudbury](https://wiki.openstreetmap.org/wiki/Tag:pedagogy%3Dsudbury) |
-|
[school:for](https://wiki.openstreetmap.org/wiki/Key:school:for) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dmainstream) [adults](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dadults) [autism](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dautism) [learning_disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dlearning_disabilities) [blind](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dblind) [deaf](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddeaf) [disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddisabilities) [special_needs](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dspecial_needs) |
+|
[school:for](https://wiki.openstreetmap.org/wiki/Key:school:for) | [string](../SpecialInputElements.md#string) | [mainstream](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dmainstream) [learning_disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dlearning_disabilities) [blind](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dblind) [deaf](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddeaf) [disabilities](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Ddisabilities) [special_needs](https://wiki.openstreetmap.org/wiki/Tag:school:for%3Dspecial_needs) |
### images
This block shows the known images which are linked with the `image`-keys, but also via `mapillary` and `wikidata` and shows the button to upload new images
@@ -123,6 +129,16 @@ The question is `What level of education is given on this school?`
This tagrendering is only visible in the popup if the following condition is met: _country=be
+### orientation_belgium
+
+The question is `What does this school train pupils for?`
+
+ - *Prepares for an academic study at university* is shown if with school:orientation=academic
+ - *Prepares for a professional study at a college* is shown if with school:orientation=professional
+ - *Prepares for a job* is shown if with school:orientation=vocational
+
+This tagrendering is only visible in the popup if the following condition is met: school~^((.+;)?upper_secondary(;.+)?)$ | school~^((.+;)?secondary(;.+)?)$
+
### gender
The question is `Which genders can enroll at this school?`
@@ -152,18 +168,13 @@ The question is `What educational theory is applied on this school?`
The question is `Does this school target students with a special need? Which structural facilities does this school have?`
*This school has facilities for students with {school:for}* is shown if `school:for` is set
- - *This is a school where students study skills at their age-adequate level.
`{questions(,)}`
+`{compare_data(,,)}`
-### add_new_point
+### conflate_button
-An element which allows to add a new point on the 'last_click'-location. Only makes sense in the layer `last_click`
+This button will modify the geometry of an existing OSM way to match the specified geometry. This can conflate OSM-ways with LineStrings and Polygons (only simple polygons with one single ring). An attempt is made to move points with special values to a decent new location (e.g. entrances)
-#### Example usage of add_new_point
+Note that the contributor must zoom to at least zoomlevel 18 to be able to use this functionality.
+ It is only functional in official themes, but can be tested in unoffical themes.
-`{add_new_point()}`
+#### Specifying which tags to copy or add
-### language_picker
+ The argument `tags` of the import button takes a `;`-seperated list of tags to add (or the name of a property which contains a JSON-list of properties).
-A component to set the language of the user interface
-
-#### Example usage of language_picker
-
-`{language_picker()}`
-
-### logout
-
-Shows a button where the user can log out
-
-#### Example usage of logout
-
-`{logout()}`
-
-### histogram
-
-Create a histogram for a list of given values, read from the properties.
-
-| name | default | description |
------|-----|----- |
-| key | _undefined_ | The key to be read and to generate a histogram from |
-| title | _empty string_ | This text will be placed above the texts (in the first column of the visulasition) |
-| countHeader | _empty string_ | This text will be placed above the bars |
-| colors* | _undefined_ | (Matches all resting arguments - optional) Matches a regex onto a color value, e.g. `3[a-zA-Z+-]*:#33cc33` |
-
-#### Example usage of histogram
-
-`{histogram('some_key')}` with properties being `{some_key: ["a","b","a","c"]} to create a histogram
-
-### steal
-
-Shows a tagRendering from a different object as if this was the object itself
-
-| name | default | description |
------|-----|----- |
-| featureId | _undefined_ | The key of the attribute which contains the id of the feature from which to use the tags |
-| tagRenderingId | _undefined_ | The layer-id and tagRenderingId to render. Can be multiple value if ';'-separated (in which case every value must also contain the layerId, e.g. `layerId.tagRendering0; layerId.tagRendering1`). Note: this can cause layer injection |
-
-#### Example usage of steal
-
-`{steal(,)}`
-
-### minimap
-
-A small map showing the selected feature.
-
-| name | default | description |
------|-----|----- |
-| zoomlevel | 18 | The (maximum) zoomlevel: the target zoomlevel after fitting the entire feature. The minimap will fit the entire feature, then zoom out to this zoom level. The higher, the more zoomed in with 1 being the entire world and 19 being really close |
-| idKey | id | (Matches all resting arguments) This argument should be the key of a property of the feature. The corresponding value is interpreted as either the id or the a list of ID's. The features with these ID's will be shown on this minimap. (Note: if the key is 'id', list interpration is disabled) |
-
-#### Example usage of minimap
-
-`{minimap()}`, `{minimap(17, id, _list_of_embedded_feature_ids_calculated_by_calculated_tag):height:10rem; border: 2px solid black}`
-
-### split_button
-
-Adds a button which allows to split a way
-
-#### Example usage of split_button
-
-`{split_button()}`
-
-### move_button
-
-Adds a button which allows to move the object to another location. The config will be read from the layer config
-
-#### Example usage of move_button
-
-`{move_button()}`
-
-### delete_button
-
-Adds a button which allows to delete the object at this location. The config will be read from the layer config
-
-#### Example usage of delete_button
-
-`{delete_button()}`
-
-### share_link
-
-Creates a link that (attempts to) open the native 'share'-screen
-
-| name | default | description |
------|-----|----- |
-| url | _undefined_ | The url to share (default: current URL) |
-| text | _undefined_ | The text to show on the button. If none is given, will act as a titleIcon |
-
-#### Example usage of share_link
-
-{share_link()} to share the current page, {share_link()} to share the given url
-
-### export_as_gpx
-
-Exports the selected feature as GPX-file
-
-#### Example usage of export_as_gpx
-
-`{export_as_gpx()}`
-
-### upload_to_osm
-
-Uploads the GPS-history as GPX to OpenStreetMap.org; clears the history afterwards. The actual feature is ignored.
-
-#### Example usage of upload_to_osm
-
-`{upload_to_osm()}`
-
-### multi_apply
-
-A button to apply the tagging of this object onto a list of other features. This is an advanced feature for which you'll need calculatedTags
-
-| name | default | description |
------|-----|----- |
-| feature_ids | _undefined_ | A JSON-serialized list of IDs of features to apply the tagging on |
-| keys | _undefined_ | One key (or multiple keys, seperated by ';') of the attribute that should be copied onto the other features. |
-| text | _undefined_ | The text to show on the button |
-| autoapply | _undefined_ | A boolean indicating wether this tagging should be applied automatically if the relevant tags on this object are changed. A visual element indicating the multi_apply is still shown |
-| overwrite | _undefined_ | If set to 'true', the tags on the other objects will always be overwritten. The default behaviour will be to only change the tags on other objects if they are either undefined or had the same value before the change |
-
-#### Example usage of multi_apply
-
-{multi_apply(_features_with_the_same_name_within_100m, name:etymology:wikidata;name:etymology, Apply etymology information on all nearby objects with the same name)}
-
-### add_note_comment
-
-A textfield to add a comment to a node (with the option to close the note).
-
-| name | default | description |
------|-----|----- |
-| Id-key | id | The property name where the ID of the note to close can be found |
-
-#### Example usage of add_note_comment
-
-`{add_note_comment(id)}`
-
-### open_note
-
-Creates a new map note on the given location. This options is placed in the 'last_click'-popup automatically if the 'notes'-layer is enabled
-
-#### Example usage of open_note
-
-`{open_note()}`
-
-### close_note
-
-Button to close a note. A predefined text can be defined to close the note with. If the note is already closed, will show a small text.
-
-| name | default | description |
------|-----|----- |
-| text | _undefined_ | Text to show on this button |
-| icon | checkmark.svg | Icon to show |
-| idkey | id | The property name where the ID of the note to close can be found |
-| comment | _undefined_ | Text to add onto the note when closing |
-| minZoom | _undefined_ | If set, only show the closenote button if zoomed in enough |
-| zoomButton | _undefined_ | Text to show if not zoomed in enough |
-
-#### Example usage of close_note
-
-`{close_note(,checkmark.svg,id,,,)}`
-
-### plantnet_detection
-
-Sends the images linked to the current object to plantnet.org and asks it what plant species is shown on it. The user can then select the correct species; the corresponding wikidata-identifier will then be added to the object (together with `source:species:wikidata=plantnet.org AI`).
-
-| name | default | description |
------|-----|----- |
-| image_key | image,mapillary,image,wikidata,wikimedia_commons,image,panoramax,image | The keys given to the images, e.g. if image is given, the first picture URL will be added as image, the second as image:0, the third as image:1, etc... Multiple values are allowed if ';'-separated |
-
-#### Example usage of plantnet_detection
-
-`{plantnet_detection(image,mapillary,image,wikidata,wikimedia_commons,image,panoramax,image)}`
-
-### tag_apply
-
-Shows a big button; clicking this button will apply certain tags onto the feature.
-
-The first argument takes a specification of which tags to add.
These can either be a tag to add, such as `amenity=fast_food` or can use a substitution, e.g. `addr:housenumber=$number`.
This new point will then have the tags `amenity=fast_food` and `addr:housenumber` with the value that was saved in `number` in the original feature.
@@ -357,18 +102,41 @@ Remark that the syntax is slightly different then expected; it uses '$' to note
Note that these values can be prepare with javascript in the theme by using a [calculatedTag](calculatedTags.md#calculating-tags-with-javascript)
+#### Importing a dataset into OpenStreetMap: requirements
+
+If you want to import a dataset, make sure that:
+
+1. The dataset to import has a suitable license
+2. The community has been informed of the import
+3. All other requirements of the [import guidelines](https://wiki.openstreetmap.org/wiki/Import/Guidelines) have been followed
+
+There are also some technicalities in your theme to keep in mind:
+
+1. The new feature will be added and will flow through the program as any other new point as if it came from OSM.
+ This means that there should be a layer which will match the new tags and which will display it.
+2. The original feature from your geojson layer will gain the tag '_imported=yes'.
+ This should be used to change the appearance or even to hide it (eg by changing the icon size to zero)
+3. There should be a way for the theme to detect previously imported points, even after reloading.
+ A reference number to the original dataset is an excellent way to do this
+4. When importing ways, the theme creator is also responsible of avoiding overlapping ways.
+
+#### Disabled in unofficial themes
+
+The import button can be tested in an unofficial theme by adding `test=true` or `backend=osm-test` as [URL-paramter](URL_Parameters.md).
+The import button will show up then. If in testmode, you can read the changeset-XML directly in the web console.
+In the case that MapComplete is pointed to the testing grounds, the edit will be made on https://master.apis.dev.openstreetmap.org
| name | default | description |
-----|-----|----- |
-| tags_to_apply | _undefined_ | A specification of the tags to apply. This is either hardcoded in the layer or the `$name` of a property containing the tags to apply. If redirected and the value of the linked property starts with `{`, the other property will be interpreted as a json object |
-| message | _undefined_ | The text to show to the contributor |
-| image | _undefined_ | An image to show to the contributor on the button |
-| id_of_object_to_apply_this_one | _undefined_ | If specified, applies the the tags onto _another_ object. The id will be read from properties[id_of_object_to_apply_this_one] of the selected object. The tags are still calculated based on the tags of the _selected_ element |
-| maproulette_id | _undefined_ | If specified, this maproulette-challenge will be closed when the tags are applied. This should be the ID of the task, _not_ the task_id. |
+| targetLayer | _undefined_ | The id of the layer where this point should end up. This is not very strict, it will simply result in checking that this layer is shown preventing possible duplicate elements |
+| tags | _undefined_ | The tags to add onto the new object - see specification above. If this is a key (a single word occuring in the properties of the object), the corresponding value is taken and expanded instead |
+| text | Import this data into OpenStreetMap | The text to show on the button |
+| icon | ./assets/svg/addSmall.svg | A nice icon to show in the button |
+| way_to_conflate | _undefined_ | The key, of which the corresponding value is the id of the OSM-way that must be conflated; typically a calculatedTag |
-#### Example usage of tag_apply
+#### Example usage of conflate_button
-`{tag_apply(survey_date=$_now:date, Surveyed today!)}`, `{tag_apply(addr:street=$addr:street, Apply the address, apply_icon.svg, _closest_osm_id)
+`{conflate_button(,,Import this data into OpenStreetMap,./assets/svg/addSmall.svg,)}`
### import_button
@@ -430,7 +198,7 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be
#### Example usage of import_button
-`{import_button(,,Import this data into OpenStreetMap,./assets/svg/addSmall.svg,,5,,,)}`
+`{import_button(,,Import this data into OpenStreetMap,./assets/svg/addSmall.svg,,5,,,)}`
### import_way_button
@@ -493,346 +261,23 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be
#### Example usage of import_way_button
-`{import_way_button(,,Import this data into OpenStreetMap,./assets/svg/addSmall.svg,,0.05,,0.05,,0.1)}`
+`{import_way_button(,,Import this data into OpenStreetMap,./assets/svg/addSmall.svg,,0.05,,0.05,,0.1)}`
-### conflate_button
+### linked_data_from_website
-This button will modify the geometry of an existing OSM way to match the specified geometry. This can conflate OSM-ways with LineStrings and Polygons (only simple polygons with one single ring). An attempt is made to move points with special values to a decent new location (e.g. entrances)
-
-Note that the contributor must zoom to at least zoomlevel 18 to be able to use this functionality.
- It is only functional in official themes, but can be tested in unoffical themes.
-
-#### Specifying which tags to copy or add
-
- The argument `tags` of the import button takes a `;`-seperated list of tags to add (or the name of a property which contains a JSON-list of properties).
-
-These can either be a tag to add, such as `amenity=fast_food` or can use a substitution, e.g. `addr:housenumber=$number`.
-This new point will then have the tags `amenity=fast_food` and `addr:housenumber` with the value that was saved in `number` in the original feature.
-
-If a value to substitute is undefined, empty string will be used instead.
-
-This supports multiple values, e.g. `ref=$source:geometry:type/$source:geometry:ref`
-
-Remark that the syntax is slightly different then expected; it uses '$' to note a value to copy, followed by a name (matched with `[a-zA-Z0-9_:]*`). Sadly, delimiting with `{}` as these already mark the boundaries of the special rendering...
-
-Note that these values can be prepare with javascript in the theme by using a [calculatedTag](calculatedTags.md#calculating-tags-with-javascript)
-
-#### Importing a dataset into OpenStreetMap: requirements
-
-If you want to import a dataset, make sure that:
-
-1. The dataset to import has a suitable license
-2. The community has been informed of the import
-3. All other requirements of the [import guidelines](https://wiki.openstreetmap.org/wiki/Import/Guidelines) have been followed
-
-There are also some technicalities in your theme to keep in mind:
-
-1. The new feature will be added and will flow through the program as any other new point as if it came from OSM.
- This means that there should be a layer which will match the new tags and which will display it.
-2. The original feature from your geojson layer will gain the tag '_imported=yes'.
- This should be used to change the appearance or even to hide it (eg by changing the icon size to zero)
-3. There should be a way for the theme to detect previously imported points, even after reloading.
- A reference number to the original dataset is an excellent way to do this
-4. When importing ways, the theme creator is also responsible of avoiding overlapping ways.
-
-#### Disabled in unofficial themes
-
-The import button can be tested in an unofficial theme by adding `test=true` or `backend=osm-test` as [URL-paramter](URL_Parameters.md).
-The import button will show up then. If in testmode, you can read the changeset-XML directly in the web console.
-In the case that MapComplete is pointed to the testing grounds, the edit will be made on https://master.apis.dev.openstreetmap.org
+Attempts to load (via a proxy) the specified website and parsed ld+json from there. Suitable data will be offered to import into OSM. Note: this element is added by default
| name | default | description |
-----|-----|----- |
-| targetLayer | _undefined_ | The id of the layer where this point should end up. This is not very strict, it will simply result in checking that this layer is shown preventing possible duplicate elements |
-| tags | _undefined_ | The tags to add onto the new object - see specification above. If this is a key (a single word occuring in the properties of the object), the corresponding value is taken and expanded instead |
-| text | Import this data into OpenStreetMap | The text to show on the button |
-| icon | ./assets/svg/addSmall.svg | A nice icon to show in the button |
-| way_to_conflate | _undefined_ | The key, of which the corresponding value is the id of the OSM-way that must be conflated; typically a calculatedTag |
+| key | website | Attempt to load ld+json from the specified URL. This can be in an embedded
-
+{#if !$isLoggedIn}
+
+{/if}
diff --git a/src/UI/Base/Popup.svelte b/src/UI/Base/Popup.svelte
index 728d92448e..b644bcbae4 100644
--- a/src/UI/Base/Popup.svelte
+++ b/src/UI/Base/Popup.svelte
@@ -9,7 +9,7 @@
export let fullscreen: boolean = false
export let bodyPadding = "p-4 md:p-5 "
export let shown: UIEventSource