diff --git a/Docs/BuiltinIndex.md b/Docs/BuiltinIndex.md index 13ed450b2..20939dddb 100644 --- a/Docs/BuiltinIndex.md +++ b/Docs/BuiltinIndex.md @@ -72,6 +72,8 @@ + [toilet.toilet-changing_table:location](#toilettoilet-changing_table:location) + [toilet.toilet-handwashing](#toilettoilet-handwashing) + [toilet.toilet-has-paper](#toilettoilet-has-paper) + + [toilet.menstrual_products](#toiletmenstrual_products) + + [toilet.menstrual_products_location](#toiletmenstrual_products_location) @@ -1099,6 +1101,28 @@ + - toilet_at_amenity + + + + +### toilet.menstrual_products + + + + + + - toilet_at_amenity + + + + +### toilet.menstrual_products_location + + + + + - toilet_at_amenity diff --git a/Docs/Layers/banks_with_atm.md b/Docs/Layers/banks_with_atm.md index 5436146aa..c5f5062fe 100644 --- a/Docs/Layers/banks_with_atm.md +++ b/Docs/Layers/banks_with_atm.md @@ -15,7 +15,6 @@ A financial institution to deposit money - This layer is shown at zoomlevel **14** and higher - - Not visible in the layer selection by default. If you want to make this layer toggable, override `name` diff --git a/Docs/Layers/bicycle_rental_non_docking.md b/Docs/Layers/bicycle_rental_non_docking.md index 246e51550..9cc0fd715 100644 --- a/Docs/Layers/bicycle_rental_non_docking.md +++ b/Docs/Layers/bicycle_rental_non_docking.md @@ -15,7 +15,6 @@ Bicycle rental stations - This layer is shown at zoomlevel **14** and higher - - Not visible in the layer selection by default. If you want to make this layer toggable, override `name` diff --git a/Docs/Layers/ghost_bike.md b/Docs/Layers/ghost_bike.md index aa05d6355..c14349e66 100644 --- a/Docs/Layers/ghost_bike.md +++ b/Docs/Layers/ghost_bike.md @@ -154,6 +154,18 @@ This rendering asks information about the property [start_date](https://wiki.op +### wikidata + + + +This tagrendering has no question and is thus read-only + + + +This tagrendering is only visible in the popup if the following condition is met: `subject:wikidata~.+` + + + ### leftover-questions diff --git a/Docs/Layers/toilet.md b/Docs/Layers/toilet.md index 042b069c3..19460db3e 100644 --- a/Docs/Layers/toilet.md +++ b/Docs/Layers/toilet.md @@ -68,6 +68,9 @@ attribute | type | values which are supported by this layer [](https://taginfo.openstreetmap.org/keys/wheelchair#values) [wheelchair](https://wiki.openstreetmap.org/wiki/Key:wheelchair) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Dno) [designated](https://wiki.openstreetmap.org/wiki/Tag:wheelchair%3Ddesignated) [](https://taginfo.openstreetmap.org/keys/door:width#values) [door:width](https://wiki.openstreetmap.org/wiki/Key:door:width) | [pfloat](../SpecialInputElements.md#pfloat) | [](https://taginfo.openstreetmap.org/keys/toilets:position#values) [toilets:position](https://wiki.openstreetmap.org/wiki/Key:toilets:position) | Multiple choice | [seated](https://wiki.openstreetmap.org/wiki/Tag:toilets:position%3Dseated) [urinal](https://wiki.openstreetmap.org/wiki/Tag:toilets:position%3Durinal) [squat](https://wiki.openstreetmap.org/wiki/Tag:toilets:position%3Dsquat) [seated;urinal](https://wiki.openstreetmap.org/wiki/Tag:toilets:position%3Dseated;urinal) +[](https://taginfo.openstreetmap.org/keys/gender_segregated#values) [gender_segregated](https://wiki.openstreetmap.org/wiki/Key:gender_segregated) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:gender_segregated%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:gender_segregated%3Dno) +[](https://taginfo.openstreetmap.org/keys/toilets:menstrual_products#values) [toilets:menstrual_products](https://wiki.openstreetmap.org/wiki/Key:toilets:menstrual_products) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products%3Dno) +[](https://taginfo.openstreetmap.org/keys/toilets:menstrual_products:location#values) [toilets:menstrual_products:location](https://wiki.openstreetmap.org/wiki/Key:toilets:menstrual_products:location) | [string](../SpecialInputElements.md#string) | [female_toilet](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products:location%3Dfemale_toilet) [male_toilet](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products:location%3Dmale_toilet) [wheelchair_toilet](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products:location%3Dwheelchair_toilet) [](https://taginfo.openstreetmap.org/keys/changing_table#values) [changing_table](https://wiki.openstreetmap.org/wiki/Key:changing_table) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:changing_table%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:changing_table%3Dno) [](https://taginfo.openstreetmap.org/keys/changing_table:location#values) [changing_table:location](https://wiki.openstreetmap.org/wiki/Key:changing_table:location) | [string](../SpecialInputElements.md#string) | [female_toilet](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Dfemale_toilet) [male_toilet](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Dmale_toilet) [wheelchair_toilet](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Dwheelchair_toilet) [dedicated_room](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Ddedicated_room) [](https://taginfo.openstreetmap.org/keys/toilets:handwashing#values) [toilets:handwashing](https://wiki.openstreetmap.org/wiki/Key:toilets:handwashing) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:toilets:handwashing%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:toilets:handwashing%3Dno) @@ -305,6 +308,58 @@ This tagrendering has labels `relevant-questions` +### gender_segregated + + + +The question is *Are these toilets gender-segregated?* + + + + + + - *There is a separate, signposted area for men and women* corresponds with gender_segregated=yes + - *There is no separate, signposted area for men and women* corresponds with gender_segregated=no + + + + +### menstrual_products + + + +The question is *Are free, menstrual products distributed here?* + + + + + + - *Free menstrual products are available to all visitors of these toilets* corresponds with toilets:menstrual_products=yes + - *Free menstrual products are available to some visitors of these toilets* corresponds with toilets:menstrual_products=limited + - *No free menstrual products are available here* corresponds with toilets:menstrual_products=no + + + + +### menstrual_products_location + + + +The question is *Where are the free menstrual products located?* + +This rendering asks information about the property [toilets:menstrual_products:location](https://wiki.openstreetmap.org/wiki/Key:toilets:menstrual_products:location) This is rendered with `The menstrual products are located in {toilets:menstrual_products:location}` + + + + - *The free, menstrual products are located in the toilet for women* corresponds with toilets:menstrual_products:location=female_toilet + - *The free, menstrual products are located in the toilet for men* corresponds with toilets:menstrual_products:location=male_toilet + - *The free, menstrual products are located in the toilet for wheelchair users* corresponds with toilets:menstrual_products:location=wheelchair_toilet + + +This tagrendering is only visible in the popup if the following condition is met: `toilets:menstrual_products=limited | toilets:menstrual_products:location~.+` + + + ### toilets-changing-table diff --git a/Docs/Layers/toilet_at_amenity.md b/Docs/Layers/toilet_at_amenity.md index e90f7f9a8..37708c0fd 100644 --- a/Docs/Layers/toilet_at_amenity.md +++ b/Docs/Layers/toilet_at_amenity.md @@ -68,6 +68,8 @@ attribute | type | values which are supported by this layer [](https://taginfo.openstreetmap.org/keys/changing_table:location#values) [changing_table:location](https://wiki.openstreetmap.org/wiki/Key:changing_table:location) | [string](../SpecialInputElements.md#string) | [female_toilet](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Dfemale_toilet) [male_toilet](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Dmale_toilet) [wheelchair_toilet](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Dwheelchair_toilet) [dedicated_room](https://wiki.openstreetmap.org/wiki/Tag:changing_table:location%3Ddedicated_room) [](https://taginfo.openstreetmap.org/keys/toilets:handwashing#values) [toilets:handwashing](https://wiki.openstreetmap.org/wiki/Key:toilets:handwashing) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:toilets:handwashing%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:toilets:handwashing%3Dno) [](https://taginfo.openstreetmap.org/keys/toilets:paper_supplied#values) [toilets:paper_supplied](https://wiki.openstreetmap.org/wiki/Key:toilets:paper_supplied) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:toilets:paper_supplied%3Dyes) [no](https://wiki.openstreetmap.org/wiki/Tag:toilets:paper_supplied%3Dno) +[](https://taginfo.openstreetmap.org/keys/toilets:menstrual_products#values) [toilets:menstrual_products](https://wiki.openstreetmap.org/wiki/Key:toilets:menstrual_products) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products%3Dno) +[](https://taginfo.openstreetmap.org/keys/toilets:menstrual_products:location#values) [toilets:menstrual_products:location](https://wiki.openstreetmap.org/wiki/Key:toilets:menstrual_products:location) | [string](../SpecialInputElements.md#string) | [female_toilet](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products:location%3Dfemale_toilet) [male_toilet](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products:location%3Dmale_toilet) [wheelchair_toilet](https://wiki.openstreetmap.org/wiki/Tag:toilets:menstrual_products:location%3Dwheelchair_toilet) [](https://taginfo.openstreetmap.org/keys/toilets:description#values) [toilets:description](https://wiki.openstreetmap.org/wiki/Key:toilets:description) | [string](../SpecialInputElements.md#string) | @@ -326,6 +328,42 @@ This tagrendering has labels `relevant-questions` +### menstrual_products + + + +The question is *Are free, menstrual products distributed here?* + + + + + + - *Free menstrual products are available to all visitors of these toilets* corresponds with toilets:menstrual_products=yes + - *Free menstrual products are available to some visitors of these toilets* corresponds with toilets:menstrual_products=limited + - *No free menstrual products are available here* corresponds with toilets:menstrual_products=no + + + + +### menstrual_products_location + + + +The question is *Where are the free menstrual products located?* + +This rendering asks information about the property [toilets:menstrual_products:location](https://wiki.openstreetmap.org/wiki/Key:toilets:menstrual_products:location) This is rendered with `The menstrual products are located in {toilets:menstrual_products:location}` + + + + - *The free, menstrual products are located in the toilet for women* corresponds with toilets:menstrual_products:location=female_toilet + - *The free, menstrual products are located in the toilet for men* corresponds with toilets:menstrual_products:location=male_toilet + - *The free, menstrual products are located in the toilet for wheelchair users* corresponds with toilets:menstrual_products:location=wheelchair_toilet + + +This tagrendering is only visible in the popup if the following condition is met: `toilets:menstrual_products=limited | toilets:menstrual_products:location~.+` + + + ### description diff --git a/Docs/SpecialRenderings.md b/Docs/SpecialRenderings.md index b236b0f55..154d443b0 100644 --- a/Docs/SpecialRenderings.md +++ b/Docs/SpecialRenderings.md @@ -172,6 +172,8 @@ In other words: use `{ "before": ..., "after": ..., "special": {"type": ..., "ar * [Example usage of direction_absolute](#example-usage-of-direction_absolute) + [compare_data](#compare_data) * [Example usage of compare_data](#example-usage-of-compare_data) + + [login_button](#login_button) + * [Example usage of login_button](#example-usage-of-login_button) + [auto_apply](#auto_apply) * [Example usage of auto_apply](#example-usage-of-auto_apply) @@ -982,6 +984,7 @@ image | confirm | Image to show message_confirm | _undefined_ | What to show when the task is closed, either by the user or was already closed. status | 1 | A statuscode to apply when the button is clicked. 1 = `close`, 2 = `false_positive`, 3 = `skip`, 4 = `deleted`, 5 = `already fixed` (on the map, e.g. for duplicates), 6 = `too hard` maproulette_id | mr_taskId | The property name containing the maproulette id +ask_feedback | _empty string_ | If not an empty string, this will be used as question to ask some additional feedback. A text field will be added #### Example usage of maproulette_set_status @@ -1041,9 +1044,9 @@ button_text | _undefined_ | The text shown on the button in the UI name | default | description ------ | --------- | ------------- text | _undefined_ | Text to be shown -href | _undefined_ | The URL to link to +href | _undefined_ | The URL to link to. Note that this will be URI-encoded before class | _undefined_ | CSS-classes to add to the element -download | _undefined_ | If set, this link will act as a download-button. The contents of `href` will be offered for download; this parameter will act as the proposed filename +download | _undefined_ | Expects a string which denotes the filename to download the contents of `href` into. If set, this link will act as a download-button. arialabel | _undefined_ | If set, this text will be used as aria-label @@ -1240,6 +1243,16 @@ readonly | _undefined_ | If 'yes', will not show 'apply'-buttons +### login_button + + Show a login button + +#### Example usage of login_button + + `{login_button()}` + + + ### auto_apply A button to run many actions for many features at once. To effectively use this button, you'll need some ingredients: diff --git a/Docs/TagInfo/mapcomplete_atm.json b/Docs/TagInfo/mapcomplete_atm.json index 6a3b152db..99bb1b582 100644 --- a/Docs/TagInfo/mapcomplete_atm.json +++ b/Docs/TagInfo/mapcomplete_atm.json @@ -132,6 +132,11 @@ "description": "The MapComplete theme ATM Machines has a layer Banks showing features with this tag", "value": "bank" }, + { + "key": "atm", + "description": "The MapComplete theme ATM Machines has a layer Banks showing features with this tag", + "value": "yes" + }, { "key": "id", "description": "Layer 'Banks' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'ATM Machines') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" @@ -340,179 +345,6 @@ "description": "Layer 'Post offices' shows atm=no with a fixed text, namely 'This post office does not have an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", "value": "no" }, - { - "key": "atm", - "description": "Layer 'Post offices' shows atm=separate with a fixed text, namely 'This post office does have an ATM, but it is mapped as a different icon' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "separate" - }, - { - "key": "amenity", - "description": "The MapComplete theme ATM Machines has a layer Post offices showing features with this tag", - "value": "post_office" - }, - { - "key": "post_office", - "description": "The MapComplete theme ATM Machines has a layer Post offices showing features with this tag", - "value": "post_partner" - }, - { - "key": "id", - "description": "Layer 'Post offices' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'ATM Machines') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Post offices allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "opening_hours", - "description": "Layer 'Post offices' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'ATM Machines')" - }, - { - "key": "post_office", - "description": "Layer 'Post offices' shows post_office=post_partner with a fixed text, namely 'This shop is a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "post_partner" - }, - { - "key": "post_office", - "description": "Layer 'Post offices' shows post_office= with a fixed text, namely 'This shop is not a post partner' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') Picking this answer will delete the key post_office. (This is only shown if post_office=post_partner)", - "value": "" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:brand' (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=DHL with a fixed text, namely 'This location offers services for DHL' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "DHL" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=DPD with a fixed text, namely 'This location offers services for DPD' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "DPD" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=GLS with a fixed text, namely 'This location offers services for GLS' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "GLS" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=UPS with a fixed text, namely 'This location offers services for UPS' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "UPS" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=DHL Paketshop with a fixed text, namely 'This location is a DHL Paketshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "DHL Paketshop" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=Hermes PaketShop with a fixed text, namely 'This location is a Hermes PaketShop' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "Hermes PaketShop" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=PostNL with a fixed text, namely 'This location is a PostNL-point' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "PostNL" - }, - { - "key": "post_office:brand", - "description": "Layer 'Post offices' shows post_office:brand=bpost with a fixed text, namely 'This location offers services for bpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines') (This is only shown if post_office=post_partner)", - "value": "bpost" - }, - { - "key": "post_office:letter_from", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:letter_from' (in the mapcomplete.org theme 'ATM Machines')" - }, - { - "key": "post_office:letter_from", - "description": "Layer 'Post offices' shows post_office:letter_from=yes with a fixed text, namely 'You can post letters here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "yes" - }, - { - "key": "post_office:letter_from", - "description": "Layer 'Post offices' shows post_office:letter_from=no with a fixed text, namely 'You can't post letters here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "no" - }, - { - "key": "post_office:parcel_from", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:parcel_from' (in the mapcomplete.org theme 'ATM Machines')" - }, - { - "key": "post_office:parcel_from", - "description": "Layer 'Post offices' shows post_office:parcel_from=yes with a fixed text, namely 'You can send parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "yes" - }, - { - "key": "post_office:parcel_from", - "description": "Layer 'Post offices' shows post_office:parcel_from=no with a fixed text, namely 'You can't send parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "no" - }, - { - "key": "post_office:parcel_pickup", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:parcel_pickup' (in the mapcomplete.org theme 'ATM Machines')" - }, - { - "key": "post_office:parcel_pickup", - "description": "Layer 'Post offices' shows post_office:parcel_pickup=yes with a fixed text, namely 'You can pick up missed parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "yes" - }, - { - "key": "post_office:parcel_pickup", - "description": "Layer 'Post offices' shows post_office:parcel_pickup=no with a fixed text, namely 'You can't pick up missed parcels here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "no" - }, - { - "key": "post_office:parcel_to", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:parcel_to' (in the mapcomplete.org theme 'ATM Machines')" - }, - { - "key": "post_office:parcel_to", - "description": "Layer 'Post offices' shows post_office:parcel_to=yes with a fixed text, namely 'You can send parcels to here for pickup' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "yes" - }, - { - "key": "post_office:parcel_to", - "description": "Layer 'Post offices' shows post_office:parcel_to=no with a fixed text, namely 'You can't send parcels to here for pickup' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "no" - }, - { - "key": "post_office:stamps", - "description": "Layer 'Post offices' shows and asks freeform values for key 'post_office:stamps' (in the mapcomplete.org theme 'ATM Machines')" - }, - { - "key": "post_office:stamps", - "description": "Layer 'Post offices' shows post_office:stamps=yes with a fixed text, namely 'You can buy stamps here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "yes" - }, - { - "key": "post_office:stamps", - "description": "Layer 'Post offices' shows post_office:stamps=no with a fixed text, namely 'You can't buy stamps here' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "no" - }, - { - "key": "atm", - "description": "Layer 'Post offices' shows atm=yes with a fixed text, namely 'This post office has an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "yes" - }, - { - "key": "atm", - "description": "Layer 'Post offices' shows atm=no with a fixed text, namely 'This post office does not have an ATM' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", - "value": "no" - }, { "key": "atm", "description": "Layer 'Post offices' shows atm=separate with a fixed text, namely 'This post office does have an ATM, but it is mapped as a different icon' and allows to pick this as a default answer (in the mapcomplete.org theme 'ATM Machines')", diff --git a/Docs/TagInfo/mapcomplete_climbing.json b/Docs/TagInfo/mapcomplete_climbing.json index cdb2fd8c8..dacabc91d 100644 --- a/Docs/TagInfo/mapcomplete_climbing.json +++ b/Docs/TagInfo/mapcomplete_climbing.json @@ -1784,1134 +1784,6 @@ "description": "Layer 'Shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", "value": "no" }, - { - "key": "shop", - "description": "The MapComplete theme Climbing gyms, clubs and spots has a layer Shop showing features with this tag" - }, - { - "key": "craft", - "description": "The MapComplete theme Climbing gyms, clubs and spots has a layer Shop showing features with this tag", - "value": "shoe_repair" - }, - { - "key": "craft", - "description": "The MapComplete theme Climbing gyms, clubs and spots has a layer Shop showing features with this tag", - "value": "key_cutter" - }, - { - "key": "service:climbing_shoes:repair", - "description": "Layer 'Shop' shows service:climbing_shoes:repair=yes with a fixed text, namely 'This shop repairs climbing shoes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "yes" - }, - { - "key": "service:climbing_shoes:repair", - "description": "Layer 'Shop' shows service:climbing_shoes:repair=no with a fixed text, namely 'This shop does not repair climbing shoes' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "no" - }, - { - "key": "id", - "description": "Layer 'Shop' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Shop' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows and asks freeform values for key 'shop' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=vacant with a fixed text, namely 'Vacant Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "vacant" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=agrarian with a fixed text, namely 'Farm Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "agrarian" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=alcohol with a fixed text, namely 'Liquor Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "alcohol" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=anime with a fixed text, namely 'Anime / Manga Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "anime" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=antiques with a fixed text, namely 'Antique Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "antiques" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=appliance with a fixed text, namely 'Appliance Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "appliance" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=art with a fixed text, namely 'Art Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "art" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=baby_goods with a fixed text, namely 'Baby Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "baby_goods" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bag with a fixed text, namely 'Bag/Luggage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "bag" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bakery with a fixed text, namely 'Bakery' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "bakery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bathroom_furnishing with a fixed text, namely 'Bathroom Furnishing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "bathroom_furnishing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=beauty with a fixed text, namely 'Beauty Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "beauty" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bed with a fixed text, namely 'Bedding/Mattress Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "bed" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=beverages with a fixed text, namely 'Beverage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "beverages" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bicycle with a fixed text, namely 'Bicycle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "bicycle" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=boat with a fixed text, namely 'Boat Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "boat" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bookmaker with a fixed text, namely 'Bookmaker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "bookmaker" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=books with a fixed text, namely 'Bookstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "books" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=brewing_supplies with a fixed text, namely 'Brewing Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "brewing_supplies" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=butcher with a fixed text, namely 'Butcher' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "butcher" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=camera with a fixed text, namely 'Camera Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "camera" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=candles with a fixed text, namely 'Candle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "candles" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cannabis with a fixed text, namely 'Cannabis Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "cannabis" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car with a fixed text, namely 'Car Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "car" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car_parts with a fixed text, namely 'Car Parts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "car_parts" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car_repair with a fixed text, namely 'Car Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "car_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=caravan with a fixed text, namely 'RV Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "caravan" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=carpet with a fixed text, namely 'Carpet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "carpet" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=catalogue with a fixed text, namely 'Catalog Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "catalogue" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=charity with a fixed text, namely 'Charity Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "charity" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cheese with a fixed text, namely 'Cheese Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "cheese" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=chemist with a fixed text, namely 'Drugstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "chemist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=chocolate with a fixed text, namely 'Chocolate Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "chocolate" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=clothes with a fixed text, namely 'Clothing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "clothes" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=coffee with a fixed text, namely 'Coffee Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "coffee" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=collector with a fixed text, namely 'Collectibles Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "collector" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=computer with a fixed text, namely 'Computer Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "computer" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=confectionery with a fixed text, namely 'Candy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "confectionery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=convenience with a fixed text, namely 'Convenience Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "convenience" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=copyshop with a fixed text, namely 'Copy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "copyshop" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cosmetics with a fixed text, namely 'Cosmetics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "cosmetics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=country_store with a fixed text, namely 'Rural Supplies Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "country_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=craft with a fixed text, namely 'Arts & Crafts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "craft" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=curtain with a fixed text, namely 'Curtain Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "curtain" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=dairy with a fixed text, namely 'Dairy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "dairy" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=deli with a fixed text, namely 'Delicatessen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "deli" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=department_store with a fixed text, namely 'Department Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "department_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=doityourself with a fixed text, namely 'DIY Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "doityourself" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=doors with a fixed text, namely 'Door Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "doors" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=dry_cleaning with a fixed text, namely 'Dry Cleaner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "dry_cleaning" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=e-cigarette with a fixed text, namely 'E-Cigarette Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "e-cigarette" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=electrical with a fixed text, namely 'Electrical Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "electrical" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=electronics with a fixed text, namely 'Electronics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "electronics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=erotic with a fixed text, namely 'Erotic Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "erotic" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fabric with a fixed text, namely 'Fabric Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "fabric" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=farm with a fixed text, namely 'Produce Stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "farm" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fashion_accessories with a fixed text, namely 'Fashion Accessories Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "fashion_accessories" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fireplace with a fixed text, namely 'Fireplace Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "fireplace" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fishing with a fixed text, namely 'Fishing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "fishing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=flooring with a fixed text, namely 'Flooring Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "flooring" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=florist with a fixed text, namely 'Florist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "florist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=frame with a fixed text, namely 'Framing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "frame" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=frozen_food with a fixed text, namely 'Frozen Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "frozen_food" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fuel with a fixed text, namely 'Fuel Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "fuel" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=funeral_directors with a fixed text, namely 'Funeral Home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "funeral_directors" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=furniture with a fixed text, namely 'Furniture Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "furniture" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=games with a fixed text, namely 'Tabletop Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "games" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=garden_centre with a fixed text, namely 'Garden Center' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "garden_centre" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=gas with a fixed text, namely 'Bottled Gas Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "gas" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=general with a fixed text, namely 'General Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "general" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=gift with a fixed text, namely 'Gift Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "gift" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=greengrocer with a fixed text, namely 'Greengrocer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "greengrocer" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hairdresser with a fixed text, namely 'Hairdresser' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "hairdresser" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hairdresser_supply with a fixed text, namely 'Hairdresser Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "hairdresser_supply" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hardware with a fixed text, namely 'Hardware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "hardware" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=health_food with a fixed text, namely 'Health Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "health_food" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hearing_aids with a fixed text, namely 'Hearing Aids Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "hearing_aids" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=herbalist with a fixed text, namely 'Herbalist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "herbalist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hifi with a fixed text, namely 'Hifi Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "hifi" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=honey with a fixed text, namely 'Honey Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "honey" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=household_linen with a fixed text, namely 'Household Linen Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "household_linen" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=houseware with a fixed text, namely 'Houseware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "houseware" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hunting with a fixed text, namely 'Hunting Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "hunting" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=interior_decoration with a fixed text, namely 'Interior Decoration Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "interior_decoration" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=jewelry with a fixed text, namely 'Jewelry Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "jewelry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=kiosk with a fixed text, namely 'Kiosk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "kiosk" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=kitchen with a fixed text, namely 'Kitchen Design Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "kitchen" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=laundry with a fixed text, namely 'Laundry' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "laundry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=leather with a fixed text, namely 'Leather Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "leather" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=lighting with a fixed text, namely 'Lighting Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "lighting" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=locksmith with a fixed text, namely 'Locksmith' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "locksmith" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=lottery with a fixed text, namely 'Lottery Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "lottery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=mall with a fixed text, namely 'Mall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "mall" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=massage with a fixed text, namely 'Massage Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "massage" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=medical_supply with a fixed text, namely 'Medical Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "medical_supply" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=military_surplus with a fixed text, namely 'Military Surplus Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "military_surplus" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=mobile_phone with a fixed text, namely 'Mobile Phone Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "mobile_phone" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=model with a fixed text, namely 'Model Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "model" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=money_lender with a fixed text, namely 'Money Lender' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "money_lender" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=motorcycle with a fixed text, namely 'Motorcycle Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "motorcycle" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=motorcycle_repair with a fixed text, namely 'Motorcycle Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "motorcycle_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=music with a fixed text, namely 'Music Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "music" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=musical_instrument with a fixed text, namely 'Musical Instrument Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "musical_instrument" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=newsagent with a fixed text, namely 'Newsstand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "newsagent" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=nutrition_supplements with a fixed text, namely 'Nutrition Supplements Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "nutrition_supplements" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=nuts with a fixed text, namely 'Nuts Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "nuts" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=optician with a fixed text, namely 'Optician' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "optician" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=outdoor with a fixed text, namely 'Outdoors Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "outdoor" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=outpost with a fixed text, namely 'Online Retailer Outpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "outpost" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=paint with a fixed text, namely 'Paint Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "paint" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=party with a fixed text, namely 'Party Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "party" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pasta with a fixed text, namely 'Pasta Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pasta" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pastry with a fixed text, namely 'Pastry Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pastry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pawnbroker with a fixed text, namely 'Pawnshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pawnbroker" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=perfumery with a fixed text, namely 'Perfume Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "perfumery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pet with a fixed text, namely 'Pet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pet" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pet_grooming with a fixed text, namely 'Pet Groomer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pet_grooming" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=photo with a fixed text, namely 'Photography Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "photo" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pottery with a fixed text, namely 'Pottery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pottery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=printer_ink with a fixed text, namely 'Printer Ink Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "printer_ink" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=psychic with a fixed text, namely 'Psychic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "psychic" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pyrotechnics with a fixed text, namely 'Fireworks Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "pyrotechnics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=radiotechnics with a fixed text, namely 'Radio/Electronic Component Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "radiotechnics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=religion with a fixed text, namely 'Religious Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "religion" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=rental with a fixed text, namely 'Rental Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=repair with a fixed text, namely 'Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=rice with a fixed text, namely 'Rice Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "rice" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=scuba_diving with a fixed text, namely 'Scuba Diving Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "scuba_diving" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=seafood with a fixed text, namely 'Seafood Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "seafood" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=second_hand with a fixed text, namely 'Thrift Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "second_hand" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=sewing with a fixed text, namely 'Sewing Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "sewing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=shoe_repair with a fixed text, namely 'Shoe Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "shoe_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=shoes with a fixed text, namely 'Shoe Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "shoes" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=spices with a fixed text, namely 'Spice Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "spices" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=sports with a fixed text, namely 'Sporting Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "sports" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=stationery with a fixed text, namely 'Stationery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "stationery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=storage_rental with a fixed text, namely 'Storage Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "storage_rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=supermarket with a fixed text, namely 'Supermarket' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "supermarket" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=swimming_pool with a fixed text, namely 'Pool Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "swimming_pool" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tailor with a fixed text, namely 'Tailor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tailor" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tattoo with a fixed text, namely 'Tattoo Parlor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tattoo" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tea with a fixed text, namely 'Tea Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tea" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=telecommunication with a fixed text, namely 'Telecom Retail Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "telecommunication" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=ticket with a fixed text, namely 'Ticket Seller' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "ticket" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tiles with a fixed text, namely 'Tile Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tiles" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tobacco with a fixed text, namely 'Tobacco Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tobacco" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tool_hire with a fixed text, namely 'Tool Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tool_hire" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=toys with a fixed text, namely 'Toy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "toys" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=trade with a fixed text, namely 'Trade Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "trade" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=travel_agency with a fixed text, namely 'Travel Agency' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "travel_agency" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=trophy with a fixed text, namely 'Trophy Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "trophy" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tyres with a fixed text, namely 'Tire Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "tyres" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=vacuum_cleaner with a fixed text, namely 'Vacuum Cleaner Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "vacuum_cleaner" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=variety_store with a fixed text, namely 'Discount Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "variety_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=video with a fixed text, namely 'Video Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "video" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=video_games with a fixed text, namely 'Video Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "video_games" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=watches with a fixed text, namely 'Watches Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "watches" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=water with a fixed text, namely 'Drinking Water Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "water" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=water_sports with a fixed text, namely 'Watersport/Swim Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "water_sports" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=weapons with a fixed text, namely 'Weapon Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "weapons" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wholesale with a fixed text, namely 'Wholesale Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "wholesale" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wigs with a fixed text, namely 'Wig Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "wigs" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=window_blind with a fixed text, namely 'Window Blind Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "window_blind" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wine with a fixed text, namely 'Wine Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if craft=)", - "value": "wine" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=only with a fixed text, namely 'This shop sells second-hand items only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=clothes | shop=car | shop=books | shop=charity | shop=car_repair | shop=furniture | shop=bicycle | shop=bicycle | shop=mobile_phone | shop=computer | shop=toys)", - "value": "only" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=yes with a fixed text, namely 'This shop sells second-hand items along with new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=clothes | shop=car | shop=books | shop=charity | shop=car_repair | shop=furniture | shop=bicycle | shop=bicycle | shop=mobile_phone | shop=computer | shop=toys)", - "value": "yes" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=no with a fixed text, namely 'This shop only sells brand-new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=clothes | shop=car | shop=books | shop=charity | shop=car_repair | shop=furniture | shop=bicycle | shop=bicycle | shop=mobile_phone | shop=computer | shop=toys)", - "value": "no" - }, - { - "key": "opening_hours", - "description": "Layer 'Shop' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "website", - "description": "Layer 'Shop' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "contact:website", - "description": "Layer 'Shop' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "email", - "description": "Layer 'Shop' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "contact:email", - "description": "Layer 'Shop' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "phone", - "description": "Layer 'Shop' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "contact:phone", - "description": "Layer 'Shop' shows contact:phone~.+ with a fixed text, namely '{contact:phone}' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')" - }, - { - "key": "payment:cash", - "description": "Layer 'Shop' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Shop' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Shop' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "yes" - }, - { - "key": "level", - "description": "Layer 'Shop' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Shop' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "service:print:A4", - "description": "Layer 'Shop' shows service:print:A4=yes with a fixed text, namely 'This shop can print on papers of size A4' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A3", - "description": "Layer 'Shop' shows service:print:A3=yes with a fixed text, namely 'This shop can print on papers of size A3' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A2", - "description": "Layer 'Shop' shows service:print:A2=yes with a fixed text, namely 'This shop can print on papers of size A2' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A1", - "description": "Layer 'Shop' shows service:print:A1=yes with a fixed text, namely 'This shop can print on papers of size A1' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A0", - "description": "Layer 'Shop' shows service:print:A0=yes with a fixed text, namely 'This shop can print on papers of size A0' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "craft", - "description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "key_cutter" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Shop' shows service:key_cutting=yes with a fixed text, namely 'This shop offers key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "yes" - }, - { - "key": "craft", - "description": "Layer 'Shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') Picking this answer will delete the key craft. (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", - "value": "wired" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Shop' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if internet_access=wlan)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Shop' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if internet_access=wlan)", - "value": "Telekom" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=yes with a fixed text, namely 'This shop offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=only with a fixed text, namely 'This shop only offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "only" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=no with a fixed text, namely 'This shop does not offer organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "no" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, { "key": "amenity", "description": "The MapComplete theme Climbing gyms, clubs and spots has a layer Toilets showing features with this tag", @@ -3092,6 +1964,50 @@ "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", "value": "seated;urinal" }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if toilets:position!=urinal)", + "value": "yes" + }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if toilets:position!=urinal)", + "value": "no" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "changing_table", "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Climbing gyms, clubs and spots')", diff --git a/Docs/TagInfo/mapcomplete_healthcare.json b/Docs/TagInfo/mapcomplete_healthcare.json index 1ca1f4a10..2ff609ed7 100644 --- a/Docs/TagInfo/mapcomplete_healthcare.json +++ b/Docs/TagInfo/mapcomplete_healthcare.json @@ -1479,1124 +1479,6 @@ "description": "Layer 'Shop' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", "value": "limited" }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "shop", - "description": "The MapComplete theme Healthcare has a layer Shop showing features with this tag" - }, - { - "key": "craft", - "description": "The MapComplete theme Healthcare has a layer Shop showing features with this tag", - "value": "shoe_repair" - }, - { - "key": "craft", - "description": "The MapComplete theme Healthcare has a layer Shop showing features with this tag", - "value": "key_cutter" - }, - { - "key": "id", - "description": "Layer 'Shop' shows id~.+ with a fixed text, namely 'You just created this element! Thanks for sharing this info with the world and helping people worldwide.' (in the mapcomplete.org theme 'Healthcare') (This is only shown if _backend~.+ & _last_edit:passed_time<300 & (_version_number= | _version_number=1))" - }, - { - "key": "image", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "mapillary", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikidata", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "wikipedia", - "description": "The layer 'Shop allows to upload images and adds them under the 'image'-tag (and image:0, image:1, ... for multiple images). Furhtermore, this layer shows images based on the keys image, wikidata, wikipedia, wikimedia_commons and mapillary" - }, - { - "key": "name", - "description": "Layer 'Shop' shows and asks freeform values for key 'name' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows and asks freeform values for key 'shop' (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=vacant with a fixed text, namely 'Vacant Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "vacant" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=agrarian with a fixed text, namely 'Farm Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "agrarian" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=alcohol with a fixed text, namely 'Liquor Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "alcohol" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=anime with a fixed text, namely 'Anime / Manga Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "anime" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=antiques with a fixed text, namely 'Antique Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "antiques" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=appliance with a fixed text, namely 'Appliance Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "appliance" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=art with a fixed text, namely 'Art Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "art" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=baby_goods with a fixed text, namely 'Baby Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "baby_goods" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bag with a fixed text, namely 'Bag/Luggage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "bag" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bakery with a fixed text, namely 'Bakery' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "bakery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bathroom_furnishing with a fixed text, namely 'Bathroom Furnishing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "bathroom_furnishing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=beauty with a fixed text, namely 'Beauty Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "beauty" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bed with a fixed text, namely 'Bedding/Mattress Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "bed" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=beverages with a fixed text, namely 'Beverage Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "beverages" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bicycle with a fixed text, namely 'Bicycle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "bicycle" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=boat with a fixed text, namely 'Boat Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "boat" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=bookmaker with a fixed text, namely 'Bookmaker' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "bookmaker" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=books with a fixed text, namely 'Bookstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "books" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=brewing_supplies with a fixed text, namely 'Brewing Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "brewing_supplies" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=butcher with a fixed text, namely 'Butcher' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "butcher" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=camera with a fixed text, namely 'Camera Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "camera" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=candles with a fixed text, namely 'Candle Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "candles" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cannabis with a fixed text, namely 'Cannabis Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "cannabis" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car with a fixed text, namely 'Car Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "car" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car_parts with a fixed text, namely 'Car Parts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "car_parts" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=car_repair with a fixed text, namely 'Car Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "car_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=caravan with a fixed text, namely 'RV Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "caravan" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=carpet with a fixed text, namely 'Carpet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "carpet" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=catalogue with a fixed text, namely 'Catalog Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "catalogue" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=charity with a fixed text, namely 'Charity Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "charity" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cheese with a fixed text, namely 'Cheese Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "cheese" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=chemist with a fixed text, namely 'Drugstore' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "chemist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=chocolate with a fixed text, namely 'Chocolate Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "chocolate" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=clothes with a fixed text, namely 'Clothing Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "clothes" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=coffee with a fixed text, namely 'Coffee Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "coffee" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=collector with a fixed text, namely 'Collectibles Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "collector" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=computer with a fixed text, namely 'Computer Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "computer" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=confectionery with a fixed text, namely 'Candy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "confectionery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=convenience with a fixed text, namely 'Convenience Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "convenience" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=copyshop with a fixed text, namely 'Copy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "copyshop" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=cosmetics with a fixed text, namely 'Cosmetics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "cosmetics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=country_store with a fixed text, namely 'Rural Supplies Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "country_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=craft with a fixed text, namely 'Arts & Crafts Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "craft" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=curtain with a fixed text, namely 'Curtain Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "curtain" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=dairy with a fixed text, namely 'Dairy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "dairy" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=deli with a fixed text, namely 'Delicatessen' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "deli" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=department_store with a fixed text, namely 'Department Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "department_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=doityourself with a fixed text, namely 'DIY Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "doityourself" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=doors with a fixed text, namely 'Door Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "doors" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=dry_cleaning with a fixed text, namely 'Dry Cleaner' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "dry_cleaning" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=e-cigarette with a fixed text, namely 'E-Cigarette Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "e-cigarette" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=electrical with a fixed text, namely 'Electrical Equipment Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "electrical" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=electronics with a fixed text, namely 'Electronics Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "electronics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=erotic with a fixed text, namely 'Erotic Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "erotic" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fabric with a fixed text, namely 'Fabric Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "fabric" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=farm with a fixed text, namely 'Produce Stand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "farm" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fashion_accessories with a fixed text, namely 'Fashion Accessories Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "fashion_accessories" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fireplace with a fixed text, namely 'Fireplace Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "fireplace" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fishing with a fixed text, namely 'Fishing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "fishing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=flooring with a fixed text, namely 'Flooring Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "flooring" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=florist with a fixed text, namely 'Florist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "florist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=frame with a fixed text, namely 'Framing Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "frame" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=frozen_food with a fixed text, namely 'Frozen Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "frozen_food" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=fuel with a fixed text, namely 'Fuel Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "fuel" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=funeral_directors with a fixed text, namely 'Funeral Home' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "funeral_directors" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=furniture with a fixed text, namely 'Furniture Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "furniture" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=games with a fixed text, namely 'Tabletop Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "games" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=garden_centre with a fixed text, namely 'Garden Center' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "garden_centre" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=gas with a fixed text, namely 'Bottled Gas Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "gas" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=general with a fixed text, namely 'General Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "general" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=gift with a fixed text, namely 'Gift Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "gift" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=greengrocer with a fixed text, namely 'Greengrocer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "greengrocer" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hairdresser with a fixed text, namely 'Hairdresser' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "hairdresser" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hairdresser_supply with a fixed text, namely 'Hairdresser Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "hairdresser_supply" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hardware with a fixed text, namely 'Hardware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "hardware" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=health_food with a fixed text, namely 'Health Food Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "health_food" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hearing_aids with a fixed text, namely 'Hearing Aids Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "hearing_aids" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=herbalist with a fixed text, namely 'Herbalist' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "herbalist" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hifi with a fixed text, namely 'Hifi Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "hifi" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=honey with a fixed text, namely 'Honey Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "honey" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=household_linen with a fixed text, namely 'Household Linen Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "household_linen" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=houseware with a fixed text, namely 'Houseware Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "houseware" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=hunting with a fixed text, namely 'Hunting Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "hunting" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=interior_decoration with a fixed text, namely 'Interior Decoration Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "interior_decoration" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=jewelry with a fixed text, namely 'Jewelry Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "jewelry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=kiosk with a fixed text, namely 'Kiosk' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "kiosk" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=kitchen with a fixed text, namely 'Kitchen Design Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "kitchen" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=laundry with a fixed text, namely 'Laundry' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "laundry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=leather with a fixed text, namely 'Leather Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "leather" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=lighting with a fixed text, namely 'Lighting Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "lighting" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=locksmith with a fixed text, namely 'Locksmith' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "locksmith" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=lottery with a fixed text, namely 'Lottery Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "lottery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=mall with a fixed text, namely 'Mall' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "mall" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=massage with a fixed text, namely 'Massage Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "massage" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=medical_supply with a fixed text, namely 'Medical Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "medical_supply" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=military_surplus with a fixed text, namely 'Military Surplus Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "military_surplus" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=mobile_phone with a fixed text, namely 'Mobile Phone Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "mobile_phone" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=model with a fixed text, namely 'Model Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "model" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=money_lender with a fixed text, namely 'Money Lender' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "money_lender" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=motorcycle with a fixed text, namely 'Motorcycle Dealership' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "motorcycle" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=motorcycle_repair with a fixed text, namely 'Motorcycle Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "motorcycle_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=music with a fixed text, namely 'Music Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "music" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=musical_instrument with a fixed text, namely 'Musical Instrument Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "musical_instrument" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=newsagent with a fixed text, namely 'Newsstand' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "newsagent" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=nutrition_supplements with a fixed text, namely 'Nutrition Supplements Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "nutrition_supplements" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=nuts with a fixed text, namely 'Nuts Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "nuts" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=optician with a fixed text, namely 'Optician' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "optician" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=outdoor with a fixed text, namely 'Outdoors Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "outdoor" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=outpost with a fixed text, namely 'Online Retailer Outpost' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "outpost" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=paint with a fixed text, namely 'Paint Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "paint" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=party with a fixed text, namely 'Party Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "party" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pasta with a fixed text, namely 'Pasta Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pasta" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pastry with a fixed text, namely 'Pastry Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pastry" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pawnbroker with a fixed text, namely 'Pawnshop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pawnbroker" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=perfumery with a fixed text, namely 'Perfume Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "perfumery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pet with a fixed text, namely 'Pet Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pet" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pet_grooming with a fixed text, namely 'Pet Groomer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pet_grooming" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=photo with a fixed text, namely 'Photography Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "photo" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pottery with a fixed text, namely 'Pottery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pottery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=printer_ink with a fixed text, namely 'Printer Ink Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "printer_ink" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=psychic with a fixed text, namely 'Psychic' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "psychic" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=pyrotechnics with a fixed text, namely 'Fireworks Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "pyrotechnics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=radiotechnics with a fixed text, namely 'Radio/Electronic Component Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "radiotechnics" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=religion with a fixed text, namely 'Religious Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "religion" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=rental with a fixed text, namely 'Rental Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=repair with a fixed text, namely 'Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=rice with a fixed text, namely 'Rice Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "rice" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=scuba_diving with a fixed text, namely 'Scuba Diving Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "scuba_diving" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=seafood with a fixed text, namely 'Seafood Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "seafood" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=second_hand with a fixed text, namely 'Thrift Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "second_hand" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=sewing with a fixed text, namely 'Sewing Supply Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "sewing" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=shoe_repair with a fixed text, namely 'Shoe Repair Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "shoe_repair" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=shoes with a fixed text, namely 'Shoe Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "shoes" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=spices with a fixed text, namely 'Spice Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "spices" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=sports with a fixed text, namely 'Sporting Goods Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "sports" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=stationery with a fixed text, namely 'Stationery Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "stationery" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=storage_rental with a fixed text, namely 'Storage Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "storage_rental" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=supermarket with a fixed text, namely 'Supermarket' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "supermarket" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=swimming_pool with a fixed text, namely 'Pool Supply Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "swimming_pool" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tailor with a fixed text, namely 'Tailor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tailor" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tattoo with a fixed text, namely 'Tattoo Parlor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tattoo" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tea with a fixed text, namely 'Tea Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tea" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=telecommunication with a fixed text, namely 'Telecom Retail Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "telecommunication" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=ticket with a fixed text, namely 'Ticket Seller' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "ticket" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tiles with a fixed text, namely 'Tile Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tiles" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tobacco with a fixed text, namely 'Tobacco Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tobacco" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tool_hire with a fixed text, namely 'Tool Rental' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tool_hire" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=toys with a fixed text, namely 'Toy Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "toys" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=trade with a fixed text, namely 'Trade Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "trade" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=travel_agency with a fixed text, namely 'Travel Agency' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "travel_agency" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=trophy with a fixed text, namely 'Trophy Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "trophy" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=tyres with a fixed text, namely 'Tire Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "tyres" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=vacuum_cleaner with a fixed text, namely 'Vacuum Cleaner Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "vacuum_cleaner" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=variety_store with a fixed text, namely 'Discount Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "variety_store" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=video with a fixed text, namely 'Video Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "video" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=video_games with a fixed text, namely 'Video Game Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "video_games" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=watches with a fixed text, namely 'Watches Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "watches" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=water with a fixed text, namely 'Drinking Water Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "water" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=water_sports with a fixed text, namely 'Watersport/Swim Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "water_sports" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=weapons with a fixed text, namely 'Weapon Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "weapons" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wholesale with a fixed text, namely 'Wholesale Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "wholesale" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wigs with a fixed text, namely 'Wig Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "wigs" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=window_blind with a fixed text, namely 'Window Blind Store' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "window_blind" - }, - { - "key": "shop", - "description": "Layer 'Shop' shows shop=wine with a fixed text, namely 'Wine Shop' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if craft=)", - "value": "wine" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=only with a fixed text, namely 'This shop sells second-hand items only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=clothes | shop=car | shop=books | shop=charity | shop=car_repair | shop=furniture | shop=bicycle | shop=bicycle | shop=mobile_phone | shop=computer | shop=toys)", - "value": "only" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=yes with a fixed text, namely 'This shop sells second-hand items along with new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=clothes | shop=car | shop=books | shop=charity | shop=car_repair | shop=furniture | shop=bicycle | shop=bicycle | shop=mobile_phone | shop=computer | shop=toys)", - "value": "yes" - }, - { - "key": "second_hand", - "description": "Layer 'Shop' shows second_hand=no with a fixed text, namely 'This shop only sells brand-new items' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=clothes | shop=car | shop=books | shop=charity | shop=car_repair | shop=furniture | shop=bicycle | shop=bicycle | shop=mobile_phone | shop=computer | shop=toys)", - "value": "no" - }, - { - "key": "opening_hours", - "description": "Layer 'Shop' shows and asks freeform values for key 'opening_hours' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "website", - "description": "Layer 'Shop' shows and asks freeform values for key 'website' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "contact:website", - "description": "Layer 'Shop' shows contact:website~.+ with a fixed text, namely '{contact:website}' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "email", - "description": "Layer 'Shop' shows and asks freeform values for key 'email' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "contact:email", - "description": "Layer 'Shop' shows contact:email~.+ with a fixed text, namely '{contact:email}' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "phone", - "description": "Layer 'Shop' shows and asks freeform values for key 'phone' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "contact:phone", - "description": "Layer 'Shop' shows contact:phone~.+ with a fixed text, namely '{contact:phone}' (in the mapcomplete.org theme 'Healthcare')" - }, - { - "key": "payment:cash", - "description": "Layer 'Shop' shows payment:cash=yes with a fixed text, namely 'Cash is accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "yes" - }, - { - "key": "payment:cards", - "description": "Layer 'Shop' shows payment:cards=yes with a fixed text, namely 'Payment cards are accepted here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "yes" - }, - { - "key": "payment:qr_code", - "description": "Layer 'Shop' shows payment:qr_code=yes with a fixed text, namely 'Payment by QR-code is possible here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "yes" - }, - { - "key": "level", - "description": "Layer 'Shop' shows and asks freeform values for key 'level' (in the mapcomplete.org theme 'Healthcare') (This is only shown if repeat_on=)" - }, - { - "key": "location", - "description": "Layer 'Shop' shows location=underground with a fixed text, namely 'Located underground' (in the mapcomplete.org theme 'Healthcare') (This is only shown if repeat_on=)", - "value": "underground" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=0 with a fixed text, namely 'Located on the ground floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if repeat_on=)", - "value": "0" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level= with a fixed text, namely 'Located on the ground floor' (in the mapcomplete.org theme 'Healthcare') Picking this answer will delete the key level. (This is only shown if repeat_on=)", - "value": "" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=1 with a fixed text, namely 'Located on the first floor' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if repeat_on=)", - "value": "1" - }, - { - "key": "level", - "description": "Layer 'Shop' shows level=-1 with a fixed text, namely 'Located on the first basement level' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if repeat_on=)", - "value": "-1" - }, - { - "key": "service:print:A4", - "description": "Layer 'Shop' shows service:print:A4=yes with a fixed text, namely 'This shop can print on papers of size A4' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A3", - "description": "Layer 'Shop' shows service:print:A3=yes with a fixed text, namely 'This shop can print on papers of size A3' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A2", - "description": "Layer 'Shop' shows service:print:A2=yes with a fixed text, namely 'This shop can print on papers of size A2' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A1", - "description": "Layer 'Shop' shows service:print:A1=yes with a fixed text, namely 'This shop can print on papers of size A1' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "service:print:A0", - "description": "Layer 'Shop' shows service:print:A0=yes with a fixed text, namely 'This shop can print on papers of size A0' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop~^(.*copyshop.*)$ | shop~^(.*stationery.*)$ | service:print=yes)", - "value": "yes" - }, - { - "key": "craft", - "description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "key_cutter" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Shop' shows service:key_cutting=yes with a fixed text, namely 'This shop offers key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "yes" - }, - { - "key": "craft", - "description": "Layer 'Shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') Picking this answer will delete the key craft. (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "" - }, - { - "key": "service:key_cutting", - "description": "Layer 'Shop' shows craft= & service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=shoe_repair | service:key_cutting~.+ | craft=key_cutting | shop=diy | shop=doityourself | shop=home_improvement | shop=hardware | shop=locksmith | shop=repair)", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=wlan with a fixed text, namely 'This place offers wireless internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "wlan" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=no with a fixed text, namely 'This place does not offer internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "no" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=yes with a fixed text, namely 'This place offers internet access' (in the mapcomplete.org theme 'Healthcare')", - "value": "yes" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=terminal with a fixed text, namely 'This place offers internet access via a terminal or computer' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "terminal" - }, - { - "key": "internet_access", - "description": "Layer 'Shop' shows internet_access=wired with a fixed text, namely 'This place offers wired internet access' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare')", - "value": "wired" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=yes with a fixed text, namely 'There is a fee for the internet access at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "yes" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=no with a fixed text, namely 'Internet access is free at this place' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "no" - }, - { - "key": "internet_access:fee", - "description": "Layer 'Shop' shows internet_access:fee=customers with a fixed text, namely 'Internet access is free at this place, for customers only' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if internet_access!=no & internet_access~.+)", - "value": "customers" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Shop' shows and asks freeform values for key 'internet_access:ssid' (in the mapcomplete.org theme 'Healthcare') (This is only shown if internet_access=wlan)" - }, - { - "key": "internet_access:ssid", - "description": "Layer 'Shop' shows internet_access:ssid=Telekom with a fixed text, namely 'Telekom' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if internet_access=wlan)", - "value": "Telekom" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=yes with a fixed text, namely 'This shop offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "yes" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=only with a fixed text, namely 'This shop only offers organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "only" - }, - { - "key": "organic", - "description": "Layer 'Shop' shows organic=no with a fixed text, namely 'This shop does not offer organic products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=clothes | shop=shoes | shop=butcher | shop=cosmetics | shop=deli | shop=bakery | shop=alcohol | shop=seafood | shop=beverages | shop=florist)", - "value": "no" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=only with a fixed text, namely 'This shop only sells sugar free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=yes with a fixed text, namely 'This shop has a big sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=limited with a fixed text, namely 'This shop has a limited sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:sugar_free", - "description": "Layer 'Shop' shows diet:sugar_free=no with a fixed text, namely 'This shop has no sugar free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=only with a fixed text, namely 'This shop only sells gluten free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=yes with a fixed text, namely 'This shop has a big gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=limited with a fixed text, namely 'This shop has a limited gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, - { - "key": "diet:gluten_free", - "description": "Layer 'Shop' shows diet:gluten_free=no with a fixed text, namely 'This shop has no gluten free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "no" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=only with a fixed text, namely 'Only sells lactose free products' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "only" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=yes with a fixed text, namely 'Big lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "yes" - }, - { - "key": "diet:lactose_free", - "description": "Layer 'Shop' shows diet:lactose_free=limited with a fixed text, namely 'Limited lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", - "value": "limited" - }, { "key": "diet:lactose_free", "description": "Layer 'Shop' shows diet:lactose_free=no with a fixed text, namely 'No lactose free offering' and allows to pick this as a default answer (in the mapcomplete.org theme 'Healthcare') (This is only shown if shop=supermarket | shop=convenience | shop=farm | shop=greengrocer | shop=health_food | shop=deli | shop=bakery | shop=beverages | shop=beverages | shop=pastry | shop=chocolate | shop=frozen_food | shop=ice_cream)", diff --git a/Docs/TagInfo/mapcomplete_nature.json b/Docs/TagInfo/mapcomplete_nature.json index aa622e186..488fa0c92 100644 --- a/Docs/TagInfo/mapcomplete_nature.json +++ b/Docs/TagInfo/mapcomplete_nature.json @@ -1189,6 +1189,50 @@ "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", "value": "seated;urinal" }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature') (This is only shown if toilets:position!=urinal)", + "value": "yes" + }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature') (This is only shown if toilets:position!=urinal)", + "value": "no" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Into nature') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "changing_table", "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Into nature')", diff --git a/Docs/TagInfo/mapcomplete_onwheels.json b/Docs/TagInfo/mapcomplete_onwheels.json index dd84e7b68..cb25b60b9 100644 --- a/Docs/TagInfo/mapcomplete_onwheels.json +++ b/Docs/TagInfo/mapcomplete_onwheels.json @@ -2608,6 +2608,50 @@ "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", "value": "seated;urinal" }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if toilets:position!=urinal)", + "value": "yes" + }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if toilets:position!=urinal)", + "value": "no" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'OnWheels') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "changing_table", "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'OnWheels')", diff --git a/Docs/TagInfo/mapcomplete_personal.json b/Docs/TagInfo/mapcomplete_personal.json index 8716bcaa4..5f1249212 100644 --- a/Docs/TagInfo/mapcomplete_personal.json +++ b/Docs/TagInfo/mapcomplete_personal.json @@ -14828,6 +14828,50 @@ "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", "value": "seated;urinal" }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", + "value": "yes" + }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", + "value": "no" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "changing_table", "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", @@ -15080,6 +15124,40 @@ "description": "Layer 'Toilets at other amenities' shows toilets:paper_supplied=no with a fixed text, namely 'You have to bring your own toilet paper to this toilet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:position!=urinal)", "value": "no" }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "toilets:description", "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:description' (in the mapcomplete.org theme 'Personal theme')" diff --git a/Docs/TagInfo/mapcomplete_ski.json b/Docs/TagInfo/mapcomplete_ski.json index dc0575bd7..36a7a944d 100644 --- a/Docs/TagInfo/mapcomplete_ski.json +++ b/Docs/TagInfo/mapcomplete_ski.json @@ -565,6 +565,50 @@ "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", "value": "seated;urinal" }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if toilets:position!=urinal)", + "value": "yes" + }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if toilets:position!=urinal)", + "value": "no" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "changing_table", "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Ski pistes and aerialways')", diff --git a/Docs/TagInfo/mapcomplete_toilets.json b/Docs/TagInfo/mapcomplete_toilets.json index bb85aae32..47d5b4426 100644 --- a/Docs/TagInfo/mapcomplete_toilets.json +++ b/Docs/TagInfo/mapcomplete_toilets.json @@ -190,6 +190,50 @@ "description": "Layer 'Toilets' shows toilets:position=seated;urinal with a fixed text, namely 'Both seated toilets and urinals are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", "value": "seated;urinal" }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=yes with a fixed text, namely 'There is a separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:position!=urinal)", + "value": "yes" + }, + { + "key": "gender_segregated", + "description": "Layer 'Toilets' shows gender_segregated=no with a fixed text, namely 'There is no separate, signposted area for men and women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:position!=urinal)", + "value": "no" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "changing_table", "description": "Layer 'Toilets' shows changing_table=yes with a fixed text, namely 'A changing table is available' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", @@ -442,6 +486,40 @@ "description": "Layer 'Toilets at other amenities' shows toilets:paper_supplied=no with a fixed text, namely 'You have to bring your own toilet paper to this toilet' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:position!=urinal)", "value": "no" }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=yes with a fixed text, namely 'Free menstrual products are available to all visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", + "value": "yes" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=limited with a fixed text, namely 'Free menstrual products are available to some visitors of these toilets' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", + "value": "limited" + }, + { + "key": "toilets:menstrual_products", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products=no with a fixed text, namely 'No free menstrual products are available here' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets')", + "value": "no" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:menstrual_products:location' (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=female_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for women' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "female_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=male_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for men' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "male_toilet" + }, + { + "key": "toilets:menstrual_products:location", + "description": "Layer 'Toilets at other amenities' shows toilets:menstrual_products:location=wheelchair_toilet with a fixed text, namely 'The free, menstrual products are located in the toilet for wheelchair users' and allows to pick this as a default answer (in the mapcomplete.org theme 'Public toilets') (This is only shown if toilets:menstrual_products=limited | toilets:menstrual_products:location~.+)", + "value": "wheelchair_toilet" + }, { "key": "toilets:description", "description": "Layer 'Toilets at other amenities' shows and asks freeform values for key 'toilets:description' (in the mapcomplete.org theme 'Public toilets')" diff --git a/Docs/Themes/disaster_response.md b/Docs/Themes/disaster_response.md index 8ead3b498..87c6aed1e 100644 --- a/Docs/Themes/disaster_response.md +++ b/Docs/Themes/disaster_response.md @@ -30,6 +30,8 @@ Available languages: - en - it + - de + - es This document is autogenerated from [assets/themes/disaster_response/disaster_response.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/disaster_response/disaster_response.json) diff --git a/Docs/Themes/mapcomplete-changes.md b/Docs/Themes/mapcomplete-changes.md index ca2539a56..3709a80fb 100644 --- a/Docs/Themes/mapcomplete-changes.md +++ b/Docs/Themes/mapcomplete-changes.md @@ -28,6 +28,8 @@ Available languages: - en + - de + - es This document is autogenerated from [assets/themes/mapcomplete-changes/mapcomplete-changes.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/mapcomplete-changes/mapcomplete-changes.json) diff --git a/Docs/Themes/openlovemap.md b/Docs/Themes/openlovemap.md index a79109ea0..1af054275 100644 --- a/Docs/Themes/openlovemap.md +++ b/Docs/Themes/openlovemap.md @@ -36,6 +36,8 @@ Available languages: - en + - de + - es This document is autogenerated from [assets/themes/openlovemap/openlovemap.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/openlovemap/openlovemap.json) diff --git a/Docs/Themes/ski.md b/Docs/Themes/ski.md index 7f84ae57d..9d5611fd6 100644 --- a/Docs/Themes/ski.md +++ b/Docs/Themes/ski.md @@ -37,6 +37,8 @@ Available languages: - en + - de + - es This document is autogenerated from [assets/themes/ski/ski.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/ski/ski.json) diff --git a/Docs/Themes/walkingnodes.md b/Docs/Themes/walkingnodes.md index 505ff66b4..fe6efe0b0 100644 --- a/Docs/Themes/walkingnodes.md +++ b/Docs/Themes/walkingnodes.md @@ -33,6 +33,7 @@ Available languages: - en - nl - de + - es This document is autogenerated from [assets/themes/walkingnodes/walkingnodes.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/themes/walkingnodes/walkingnodes.json) diff --git a/Docs/URL_Parameters.md b/Docs/URL_Parameters.md index 9329423ba..e6232f6a3 100644 --- a/Docs/URL_Parameters.md +++ b/Docs/URL_Parameters.md @@ -464,7 +464,7 @@ This documentation is defined in the source code at [FilteredLayer.ts](/src/Mode The mode the application starts in, e.g. 'map', 'dashboard' or 'statistics' -This documentation is defined in the source code at [generateDocs.ts](ervdvn/git2/MapComplete/scripts/generateDocs.ts#L420) +This documentation is defined in the source code at [generateDocs.ts](ervdvn/git/MapComplete/scripts/generateDocs.ts#L420) The default value is _map_ diff --git a/Docs/wikiIndex.txt b/Docs/wikiIndex.txt index 382891adc..1660111fd 100644 --- a/Docs/wikiIndex.txt +++ b/Docs/wikiIndex.txt @@ -238,7 +238,7 @@ {{service_item |name= [https://mapcomplete.org/disaster_response disaster_response] |region= Worldwide -|lang= {{#language:en|en}}, {{#language:it|en}} +|lang= {{#language:en|en}}, {{#language:it|en}}, {{#language:de|en}}, {{#language:es|en}} |descr= A MapComplete theme: This map contains elements meant for disaster preparedness and response |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png @@ -474,7 +474,7 @@ The position of a signpost can be used by a hiker/biker/rider/s… {{service_item |name= [https://mapcomplete.org/ski ski] |region= Worldwide -|lang= {{#language:en|en}} +|lang= {{#language:en|en}}, {{#language:de|en}}, {{#language:es|en}} |descr= A MapComplete theme: Everything you need to go skiing |material= {{yes|[https://mapcomplete.org/ Yes]}} |image= MapComplete_Screenshot.png diff --git a/assets/layers/address/address.json b/assets/layers/address/address.json index 4767f2451..9b50f5828 100644 --- a/assets/layers/address/address.json +++ b/assets/layers/address/address.json @@ -21,7 +21,8 @@ "zgh": "ⴰⵏⵙⵉⵡⵏ ⵉⵜⵜⵡⴰⵙⵙⵏⵏ ⴳ OSM", "pt_BR": "Endereços conhecidos no OSM", "eu": "OSMko helbide ezagunak", - "pl": "Znane adresy w OSM" + "pl": "Znane adresy w OSM", + "it": "Indirizzo presente su OSM" }, "description": { "en": "Addresses", @@ -45,7 +46,8 @@ "zgh": "ⴰⵏⵙⵉⵡⵏ", "pt_BR": "Endereços", "he": "כתובות", - "eu": "Helbideak" + "eu": "Helbideak", + "it": "Indirizzi" }, "source": { "osmTags": { @@ -81,7 +83,8 @@ "pt": "Endereço conhecido", "pt_BR": "Endereço conhecido", "he": "כתובת ידועה", - "eu": "Helbide ezaguna" + "eu": "Helbide ezaguna", + "it": "Indirizzo conosciuto" } }, "pointRendering": [ @@ -166,7 +169,8 @@ "ca": "El número de porta és {addr:housenumber}", "pt_BR": "O número da casa é {addr:housenumber}", "he": "מספר הבית הוא {addr:housenumber}", - "eu": "Etxearen zenbakia {addr:housenumber} da" + "eu": "Etxearen zenbakia {addr:housenumber} da", + "it": "Il numero civico della casa è {addr:housenumber}" }, "question": { "en": "What is the number of this house?", @@ -186,7 +190,8 @@ "ca": "Quin és el número d'aquesta casa?", "pt_BR": "Qual é o número desta casa?", "he": "מה המספר של הבית הזה?", - "eu": "Zein da etxe honen zenbakia?" + "eu": "Zein da etxe honen zenbakia?", + "it": "Qual è il numero civico di questa casa?" }, "freeform": { "key": "addr:housenumber", @@ -223,7 +228,8 @@ "ca": "Aquest edifici no té número", "pt_BR": "Este prédio não tem número", "he": "למבנה זה אין מספר בית", - "eu": "Eraikin honek ez du etxe zenbakirik" + "eu": "Eraikin honek ez du etxe zenbakirik", + "it": "Questo edificio non ha indirizzo" } } ] @@ -246,7 +252,8 @@ "pt": "Este endereço é na rua {addr:street}", "pt_BR": "Este endereço fica na rua {addr:street}", "he": "כתובת זו נמצאת ברחוב {addr:street}", - "eu": "Helbide hau {addr:street} kalean dago" + "eu": "Helbide hau {addr:street} kalean dago", + "it": "L’indirizzo è in via {addr:street}" }, "question": { "en": "What street is this address located in?", @@ -265,7 +272,8 @@ "pt": "Em que rua fica esse endereço?", "pt_BR": "Em que rua fica esse endereço?", "he": "באיזה רחוב נמצאת הכתובת הזו?", - "eu": "Zein kaletan dago helbide hori?" + "eu": "Zein kaletan dago helbide hori?", + "it": "Qual è la via in cui si trova?" }, "freeform": { "key": "addr:street" @@ -314,7 +322,8 @@ "ca": "Què s’hauria de corregir aquí? Exposa-ho", "pt_BR": "O que deve ser corrigido aqui? Explique", "he": "מה צריך לתקן כאן? אנא הסבר", - "eu": "Zer konpondu behar da hemen? Azaldu mesedez" + "eu": "Zer konpondu behar da hemen? Azaldu mesedez", + "it": "Indica cosa deve essere corretto qui" }, "freeform": { "key": "fixme" diff --git a/assets/layers/advertising/advertising.json b/assets/layers/advertising/advertising.json index c6e9f2fbe..0fd455cc9 100644 --- a/assets/layers/advertising/advertising.json +++ b/assets/layers/advertising/advertising.json @@ -12,7 +12,8 @@ "eu": "Iragarri", "pl": "Reklama", "pt_BR": "Anunciar", - "zh_Hans": "广告" + "zh_Hans": "广告", + "it": "Pubblicità" }, "description": { "ca": "Completarem les dades dels elements publicitaris amb referència, operador i il·luminació", @@ -23,7 +24,8 @@ "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" + "pt_BR": "Completaremos os dados das características de publicidade com referência, operador e iluminação", + "it": "Completeremo i dati da caratteristiche pubblicitarie, con referenza, operatore e illuminazione" }, "source": { "osmTags": "advertising~*" @@ -395,7 +397,8 @@ "eu": "iragarki panela", "pl": "bilbord", "pt_BR": "um outdoor", - "zh_Hans": "一块广告牌" + "zh_Hans": "一块广告牌", + "it": "un cartellone" }, "description": { "en": "A large outdoor advertising structure, typically found in high-traffic areas such as alongside busy roads", @@ -408,7 +411,8 @@ "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" + "pt_BR": "Uma grande estrutura de publicidade outdoor, geralmente encontrada em áreas com alto tráfego, como ao longo de estradas movimentadas", + "it": "Grande struttura pubblicitaria all'aperto, trovata normalmente in aree ad alto traffico come accanto a strade molto trafficate" }, "exampleImages": [ "./assets/themes/advertising/KFC_Billboard.jpg", @@ -429,7 +433,8 @@ "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" + "pt_BR": "uma caixa expositora independente", + "it": "un cartellone pubblicitario fissato a terra" }, "exampleImages": [ "./assets/themes/advertising/Mupi_spain.jpg", @@ -450,7 +455,8 @@ "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", - "zh_Hans": "安装在墙上的海报盒子" + "zh_Hans": "安装在墙上的海报盒子", + "it": "un cartellone pubblicitario fissato al muro" }, "snapToLayer": [ "walls_and_buildings" @@ -470,7 +476,8 @@ "fr": "un petit panneau", "pt": "a bordo", "pl": "tablica", - "pt_BR": "um painel publicitário" + "pt_BR": "um painel publicitário", + "it": "un piccolo pannello" }, "description": { "en": "Small billboard for neighbourhood advertising, generally intended for pedestrians", @@ -482,7 +489,8 @@ "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" + "pt_BR": "Pequeno outdoor para publicidade local, geralmente destinado a pedestres", + "it": "PIccolo pannello per la pubblicità di vicinanza, generalmente destinato ai pedoni" }, "exampleImages": [ "./assets/themes/advertising/local_Board.jpg", @@ -504,7 +512,8 @@ "fr": "une colonne", "pt": "uma coluna", "pl": "kolumna", - "pt_BR": "uma coluna" + "pt_BR": "uma coluna", + "it": "una colonna" }, "description": { "en": "A cylindrical outdoor structure which shows advertisements", @@ -516,7 +525,8 @@ "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" + "pt_BR": "Uma estrutura cilíndrica ao ar livre que exibe anúncios", + "it": "Una struttura cilindrica all'esterno con affissa della pubblicità" }, "exampleImages": [ "./assets/themes/advertising/AdvertisingColumn_001.jpg", @@ -539,7 +549,8 @@ "pt": "uma bandeira", "pl": "flaga", "pt_BR": "uma bandeira", - "zh_Hans": "一个旗子" + "zh_Hans": "一个旗子", + "it": "una bandiera" }, "exampleImages": [ "./assets/themes/advertising/Advertising_flag.jpg", @@ -561,7 +572,8 @@ "pt": "uma tela", "pl": "ekran", "pt_BR": "uma tela", - "zh_Hans": "一块屏幕" + "zh_Hans": "一块屏幕", + "it": "uno schermo" }, "exampleImages": [ "./assets/themes/advertising/Screen_poster_box.jpg", @@ -583,7 +595,8 @@ "pt": "uma tela montada em uma parede", "pl": "ekran zamontowany na ścianie", "pt_BR": "uma tela montada em uma parede", - "zh_Hans": "一块挂在墙上的屏幕" + "zh_Hans": "一块挂在墙上的屏幕", + "it": "uno schermo fissato al muro" }, "exampleImages": [ "./assets/themes/advertising/Subway_screen.jpg", @@ -610,7 +623,8 @@ "pt": "uma lona", "pl": "plandeka", "pt_BR": "uma lona", - "zh_Hans": "防水布" + "zh_Hans": "防水布", + "it": "un telone" }, "description": { "en": "A piece of waterproof textile with a printed message, permanently anchored on a wall", @@ -622,7 +636,8 @@ "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" + "pt_BR": "Um pedaço de tecido impermeável com uma mensagem impressa, permanentemente fixado a uma parede", + "it": "Un telo impermeabile con un messaggio stampato, fissato in modo permanente al muro" }, "exampleImages": [ "./assets/themes/advertising/tarp_feder.jpg", @@ -647,7 +662,8 @@ "pt": "um totem", "pl": "totem", "pt_BR": "um totem", - "zh_Hans": "图腾" + "zh_Hans": "图腾", + "it": "un totem" }, "exampleImages": [ "./assets/themes/advertising/AdvertisingTotem_004.jpg", @@ -670,7 +686,8 @@ "pt_BR": "uma placa", "eu": "letrero bat", "pl": "znak", - "zh_Hans": "标志" + "zh_Hans": "标志", + "it": "un'insegna" }, "description": { "en": "Used for advertising signs, neon signs, logos & institutional entrance signs", @@ -682,7 +699,8 @@ "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" + "pt_BR": "Usado para placas de publicidade, letreiros de neon, logotipos e placas de entrada institucionais", + "it": "Utilizzato per insegna pubblicitaria, un'insegna al neon, i loghi o le indicazioni d'entrata" }, "exampleImages": [ "./assets/themes/advertising/Waitrose_sign.jpg", @@ -709,7 +727,8 @@ "eu": "eskultura bat", "pl": "rzeźba", "pt_BR": "uma escultura", - "zh_Hans": "雕像" + "zh_Hans": "雕像", + "it": "una scultura" }, "exampleImages": [ "./assets/themes/advertising/Aircraft_Sculpture.jpg", @@ -733,7 +752,8 @@ "eu": "pareta margotu bat", "pl": "mural ścienny", "pt_BR": "uma pintura mural", - "zh_Hans": "墙上的画" + "zh_Hans": "墙上的画", + "it": "un murales" }, "exampleImages": [ "./assets/themes/advertising/Capitol_wall.jpg", @@ -1490,7 +1510,8 @@ "eu": "Objektu honek iragarkiak ditu alde bakar batean", "pl": "Ten obiekt ma reklamy po jednej stronie", "pt_BR": "Este objeto tem anúncios em um único lado", - "zh_Hans": "该物体单面有广告" + "zh_Hans": "该物体单面有广告", + "it": "Questo oggetto ha la pubblicità solo da un lato" } }, { diff --git a/assets/layers/aerialway/aerialway.json b/assets/layers/aerialway/aerialway.json index 0b5944c70..f03116be1 100644 --- a/assets/layers/aerialway/aerialway.json +++ b/assets/layers/aerialway/aerialway.json @@ -18,7 +18,8 @@ ], "label": { "render": { - "en": "{name}" + "en": "{name}", + "de": "{name}" }, "condition": "name~*", "classes": "bg-white p-1 px-2 rounded" @@ -30,78 +31,90 @@ "images", { "question": { - "en": "What type of aerialway is this?" + "en": "What type of aerialway is this?", + "de": "Um welchen Seilbahntyp handelt es sich?" }, "id": "type", "mappings": [ { "if": "aerialway=cable_car", "then": { - "en": "This is a cable car where the car goes up and down again on the same cable." + "en": "This is a cable car where the car goes up and down again on the same cable.", + "de": "Es handelt sich um eine Seilbahn, bei der die Kabine auf demselben Seil nach oben und wieder nach unten fährt." }, "icon": "./assets/layers/aerialway/cable_car.svg" }, { "if": "aerialway=gondola", "then": { - "en": "This is a gondola where the cars go around in continuous circles" + "en": "This is a gondola where the cars go around in continuous circles", + "de": "Es handelt sich um eine Seilbahn, bei der die Kabinen in ständigen Kreisen fahren" }, "icon": "./assets/layers/aerialway/gondola_lift.svg" }, { "if": "aerialway=chair_lift", "then": { - "en": "An open chairlift with seats to sit on and open to the outside air." + "en": "An open chairlift with seats to sit on and open to the outside air.", + "de": "Ein offener Sessellift mit Sitzgelegenheiten und Zugang zur Außenluft." }, "icon": "./assets/layers/aerialway/chair_lift.svg" }, { "if": "aerialway=mixed", "then": { - "en": "An aerialway which has both chairs and gondolas in the same continuous track" + "en": "An aerialway which has both chairs and gondolas in the same continuous track", + "de": "Eine Seilbahn, die sowohl offene Sessel als auch geschlossene Gondeln auf einer durchgehenden Bahn hat" } }, { "if": "aerialway=drag_lift", "then": { - "en": "A drag lift" + "en": "A drag lift", + "de": "Ein Schlepplift" }, "hideInAnswer": true }, { "if": "aerialway=t-bar", "then": { - "en": "A drag lift with T-shaped carriers for two passengers at a time" + "en": "A drag lift with T-shaped carriers for two passengers at a time", + "de": "Ein Schlepplift mit T-förmigen Trägern für jeweils zwei Passagiere" } }, { "if": "aerialway=j-bar", "then": { - "en": "A drag lift with L-shaped bars for a single passenger at a time" + "en": "A drag lift with L-shaped bars for a single passenger at a time", + "de": "Ein Schlepplift mit L-förmigen Trägern für jeweils einen Passagier" } }, { "if": "aerialway=platter", "then": { - "en": "A drag lift with a platter to drag a single passenger at a time" + "en": "A drag lift with a platter to drag a single passenger at a time", + "de": "Ein Schlepplift mit einem Teller für jeweils einen Passagier" } }, { "if": "aerialway=rope_tow", "then": { - "en": "A tow line which which drags skieers" + "en": "A tow line which which drags skieers", + "de": "Eine Schleppleine, die Skifahrer mit sich zieht" } }, { "if": "aerialway=magic_carpet", "then": { - "en": "A magic carpet (a conveyor belt on the ground)" + "en": "A magic carpet (a conveyor belt on the ground)", + "de": "Ein magic carpet (ein Förderband auf dem Boden)" } }, { "if": "aerialway=zip_line", "then": { - "en": "A zip line. (A touristical attraction where adventurous people go down at high speeds) " + "en": "A zip line. (A touristical attraction where adventurous people go down at high speeds) ", + "de": "Eine Seilrutsche. (Eine Touristenattraktion, bei der abenteuerlustige Menschen mit hoher Geschwindigkeit hinunterfahren) " } } ] @@ -109,16 +122,19 @@ { "id": "duration", "question": { - "en": "How long takes a single journey with this elevator?" + "en": "How long takes a single journey with this elevator?", + "de": "Wie lange dauert eine Fahrt mit diesem Aufzug?" }, "questionHint": { - "en": "This excludes the waiting time." + "en": "This excludes the waiting time.", + "de": "Dies schließt die Wartezeit aus." }, "freeform": { "key": "duration" }, "render": { - "en": "A single journey takes {duration} minutes" + "en": "A single journey takes {duration} minutes", + "de": "Eine Fahrt dauert {duration} Minuten" } }, { @@ -127,10 +143,12 @@ "key": "aerialway:occupancy" }, "question": { - "en": "How many people fit a single carriage?" + "en": "How many people fit a single carriage?", + "de": "Wie viele Leute passen in eine Kabine?" }, "render": { - "en": "{aerialway:occupancy} people fit a single carriage" + "en": "{aerialway:occupancy} people fit a single carriage", + "de": "{aerialway:occupancy} Leute passen in eine Kabine" } }, "opening_hours", @@ -151,14 +169,15 @@ "if": "oneway=no", "then": { "en": "This aerialway can be taken in both directions" - } + } } ] }, { "id": "length", "render": { - "en": "This aerialway is {_length:km} kilometer long" + "en": "This aerialway is {_length:km} kilometer long", + "de": "Die Seilbahn hat eine Länge von {_length:km} km" } } ], @@ -166,27 +185,31 @@ { "width": "4", "color": "black", - "imageAlongWay": [ { - "if": "oneway=no", - "then": "./assets/png/twoway.png" - },{ - "if": { - "or": [ - "oneway=yes", - "oneway=" - ] + "imageAlongWay": [ + { + "if": "oneway=no", + "then": "./assets/png/twoway.png" }, - "then": "./assets/png/oneway.png" - } + { + "if": { + "or": [ + "oneway=yes", + "oneway=" + ] + }, + "then": "./assets/png/oneway.png" + } ] } ], "id": "aerialway", "name": { - "en": "Aerialways" + "en": "Aerialways", + "de": "Seilbahnen" }, "description": { - "en": "Various forms of transport for passengers and goods that use wires, including cable cars, gondolas, chair lifts, drag lifts, and zip lines. " + "en": "Various forms of transport for passengers and goods that use wires, including cable cars, gondolas, chair lifts, drag lifts, and zip lines. ", + "de": "Alle Arten von seil- oder drahtgestütztem Personen- oder Gütertransport, wie Seilbahnen, Gondeln, Sessellifte, Schlepplifte. " }, "source": { "osmTags": { @@ -199,7 +222,8 @@ }, "title": { "render": { - "en": "Aerialway {name}" + "en": "Aerialway {name}", + "de": "Seilbahn {name}" } } } diff --git a/assets/layers/assembly_point/assembly_point.json b/assets/layers/assembly_point/assembly_point.json index 9ed7fcaa7..974cdd01e 100644 --- a/assets/layers/assembly_point/assembly_point.json +++ b/assets/layers/assembly_point/assembly_point.json @@ -5,11 +5,13 @@ }, "name": { "en": "Emergency assembly points", - "it": "Punti di raccolta per emergenze" + "it": "Punti di raccolta per emergenze", + "de": "Notfallsammelplätze" }, "description": { "en": "This layer contains assembly points and waiting areas where all employees, passengers or a large crowd assemble in case of an emergency.", - "it": "Questo livello contiene punti di raccolta e aree di attesa in cui tutti i dipendenti, i passeggeri o una grande folla si riuniscono in caso di emergenza." + "it": "Questo livello contiene punti di raccolta e aree di attesa in cui tutti i dipendenti, i passeggeri o una grande folla si riuniscono in caso di emergenza.", + "de": "Diese Ebene enthält Sammelplätze und Wartebereiche, in denen sich alle Mitarbeiter, Fahrgäste oder eine große Menschenmenge im Notfall versammeln." }, "docs": "https://wiki.openstreetmap.org/wiki/Tag:emergency%3Dassembly_point", "id": "assembly_point", @@ -40,7 +42,8 @@ { "title": { "en": "an assembly point", - "it": "un punto di raccolta" + "it": "un punto di raccolta", + "de": "ein Sammelplatz" }, "tags": [ "emergency=assembly_point" @@ -49,7 +52,8 @@ ], "title": { "render": { - "en": "Assembly point during emergencies" + "en": "Assembly point during emergencies", + "de": "Sammelplatz bei Notfällen" } }, "tagRenderings": [ @@ -61,22 +65,26 @@ }, "question": { "en": "What is the name of this assembly point?", - "it": "Qual è il nome di questo punto di raccolta?" + "it": "Qual è il nome di questo punto di raccolta?", + "de": "Wie lautet der Name dieser Sammelstelle?" }, "render": { "en": "This assembly point is named {name}", - "it": "Questo punto di raccolta si chiama {name}" + "it": "Questo punto di raccolta si chiama {name}", + "de": "Diese Sammelstelle hat den Namen {name}" } }, { "id": "assembly_point_operator", "render": { "en": "This assembly point is operated by {operator}", - "it": "Questo punto di raccolta è gestita da {operator}" + "it": "Questo punto di raccolta è gestita da {operator}", + "de": "Diese Sammelstelle wird von {operator} betrieben" }, "question": { "en": "What organization operates this assembly point?", - "it": "Quale organizzazione gestisce questo punto di raccolta?" + "it": "Quale organizzazione gestisce questo punto di raccolta?", + "de": "Welche Organisation betreibt diese Sammelstelle?" }, "freeform": { "key": "operator", @@ -87,7 +95,8 @@ "id": "disaster_type", "question": { "en": "For which disaster type is this assembly point meant?", - "it": "Per quali tipi di disastro è pensato questo punto di raccolta?" + "it": "Per quali tipi di disastro è pensato questo punto di raccolta?", + "de": "Für welche Art von Katastrophe ist diese Sammelstelle gedacht?" }, "multiAnswer": true, "mappings": [ @@ -96,7 +105,8 @@ "ifnot": "assembly_point:earthquake=", "then": { "en": "Earthquake", - "it": "Terremoto" + "it": "Terremoto", + "de": "Erdbeben" }, "icon": { "path": "./assets/layers/assembly_point/earthquake.svg", @@ -108,7 +118,8 @@ "ifnot": "assembly_point:flood=", "then": { "en": "Flood", - "it": "Alluvione" + "it": "Alluvione", + "de": "Flut" }, "icon": { "path": "./assets/layers/assembly_point/flood.svg", @@ -120,7 +131,8 @@ "ifnot": "assembly_point:fire=", "then": { "en": "Fire", - "it": "Incendio" + "it": "Incendio", + "de": "Feuer" }, "icon": { "path": "./assets/layers/assembly_point/fire.svg", @@ -132,7 +144,8 @@ "ifnot": "assembly_point:landslide=", "then": { "en": "Landslide", - "it": "Frana" + "it": "Frana", + "de": "Erdrutsch" }, "icon": { "path": "./assets/layers/assembly_point/landslide.svg", diff --git a/assets/layers/bike_parking/bike_parking.json b/assets/layers/bike_parking/bike_parking.json index f0e84bd01..ff7183254 100644 --- a/assets/layers/bike_parking/bike_parking.json +++ b/assets/layers/bike_parking/bike_parking.json @@ -639,14 +639,16 @@ "id": "fee", "question": { "en": "Are these bicycle parkings free to use?", - "nl": "Is deze fietsenstalling gratis te gebruiken?" + "nl": "Is deze fietsenstalling gratis te gebruiken?", + "de": "Sind die Fahrradparkplätze kostenlos zu benutzen?" }, "mappings": [ { "if": "fee=yes", "then": { "en": "One has to pay to use this bicycle parking", - "nl": "Betalende fietsparking" + "nl": "Betalende fietsparking", + "de": "Man muss zahlen, um den Fahrradparkplatz zu nutzen" } }, { @@ -654,7 +656,8 @@ "alsoShowIf": "fee=", "then": { "en": "Free to use", - "nl": "Gratis te gebruiken" + "nl": "Gratis te gebruiken", + "de": "Die Nutzung ist kostenlos" } } ] @@ -673,11 +676,13 @@ "id": "operator_phone", "question": { "en": "What is the phone number of the operator of this bicycle parking?", - "nl": "Wat is het telefoonnummer van de operator van deze fietsenstalling?" + "nl": "Wat is het telefoonnummer van de operator van deze fietsenstalling?", + "de": "Wie lautet die Telefonnummer des Betreibers dieses Fahrradparkplatzes?" }, "questionHint": { "en": "One might be able to call this number in case of problems, e.g. to remove unmaintained bicycles", - "nl": "Men kan dit nummer bellen om bv. fietswrakken of defecten te melden" + "nl": "Men kan dit nummer bellen om bv. fietswrakken of defecten te melden", + "de": "Man könnte diese Nummer anrufen, wenn es Probleme gibt, z. B. um nicht gewartete Fahrräder zu entfernen" }, "icon": "./assets/layers/questions/phone.svg", "freeform": { diff --git a/assets/layers/brothel/brothel.json b/assets/layers/brothel/brothel.json index d8abcce37..40c3406bd 100644 --- a/assets/layers/brothel/brothel.json +++ b/assets/layers/brothel/brothel.json @@ -1,10 +1,12 @@ { "id": "brothel", "name": { - "en": "Brothels" + "en": "Brothels", + "de": "Bordelle" }, "description": { - "en": "An establishment specifically dedicated to prostitution. " + "en": "An establishment specifically dedicated to prostitution. ", + "de": "Eine Einrichtung, die speziell der Prostitution gewidmet ist. " }, "source": { "osmTags": "amenity=brothel" @@ -12,7 +14,8 @@ "minzoom": 6, "title": { "render": { - "en": "Brothel" + "en": "Brothel", + "de": "Bordell" }, "mappings": [ { @@ -57,7 +60,8 @@ "presets": [ { "title": { - "en": "a brothel" + "en": "a brothel", + "de": "ein Bordell" }, "tags": [ "amenity=brothel" @@ -75,10 +79,12 @@ "key": "name" }, "question": { - "en": "What is the name of this brothel?" + "en": "What is the name of this brothel?", + "de": "Wie lautet der Name des Bordells?" }, "render": { - "en": "This brothel is named {name}" + "en": "This brothel is named {name}", + "de": "Der Name des Bordells lautet {name}" } }, "opening_hours", diff --git a/assets/layers/cinema/cinema.json b/assets/layers/cinema/cinema.json index fc781267e..144e1e672 100644 --- a/assets/layers/cinema/cinema.json +++ b/assets/layers/cinema/cinema.json @@ -1,10 +1,12 @@ { "id": "cinema", "name": { - "en": "Cinema" + "en": "Cinema", + "de": "Kino" }, "description": { - "en": " A place showing movies (films), generally open to the public for a fee. Commonly referred to as a movie theater in the US" + "en": " A place showing movies (films), generally open to the public for a fee. Commonly referred to as a movie theater in the US", + "de": " Ein Ort, an dem Filme gezeigt werden, die der Öffentlichkeit gegen Gebühr zugänglich sind" }, "source": { "osmTags": "amenity=cinema" @@ -20,7 +22,8 @@ } ], "render": { - "en": "Cinema" + "en": "Cinema", + "de": "Kino" } }, "pointRendering": [ @@ -49,19 +52,22 @@ { "id": "cinema_type", "question": { - "en": "What type of cinema is this?" + "en": "What type of cinema is this?", + "de": "Um welche Art von Kino handelt es sich?" }, "mappings": [ { "if": "cinema=", "then": { - "en": "This is a normal cinema showing movies for all ages" + "en": "This is a normal cinema showing movies for all ages", + "de": "Dies ist ein normales Kino, das Filme für alle Altersgruppen zeigt" } }, { "if": "cinema=erotic", "then": { - "en": "This is an erotic cinema showing adult movies" + "en": "This is an erotic cinema showing adult movies", + "de": "Dies ist ein Sex-Kino, das Erwachsenenfilme zeigt" } } ] diff --git a/assets/layers/clock/clock.json b/assets/layers/clock/clock.json index 09423842b..ee92d7604 100644 --- a/assets/layers/clock/clock.json +++ b/assets/layers/clock/clock.json @@ -15,7 +15,8 @@ "ca": "Capa amb rellotges públics", "fr": "Couche avec les horloges publiques", "cs": "Vrstva s veřejnými hodinami", - "pl": "Warstwa z zegarami publicznymi" + "pl": "Warstwa z zegarami publicznymi", + "es": "Capa con relojes públicos" }, "source": { "osmTags": "amenity=clock" diff --git a/assets/layers/cycleways_and_roads/cycleways_and_roads.json b/assets/layers/cycleways_and_roads/cycleways_and_roads.json index edddd13a4..619c00611 100644 --- a/assets/layers/cycleways_and_roads/cycleways_and_roads.json +++ b/assets/layers/cycleways_and_roads/cycleways_and_roads.json @@ -343,7 +343,7 @@ "then": { "en": "There is a lane next to the road (separated with paint)", "nl": "Er is een fietspad aangrenzend aan de weg (gescheiden met verf)", - "de": "Es gibt eine Spur neben der Straße (getrennt durch eine Straßenmarkierung)", + "de": "Es gibt einen Radfahrstreifen neben der Straße (getrennt durch eine Straßenmarkierung)", "es": "Hay un carril a lado de la carretera (separado con pintura)", "fr": "Il y a une piste cyclable separée de la route", "ca": "Hi ha un carril al costat de la carretera (separat amb pintura)", diff --git a/assets/layers/disaster_response/disaster_response.json b/assets/layers/disaster_response/disaster_response.json index f12bd7ee4..dfecff37f 100644 --- a/assets/layers/disaster_response/disaster_response.json +++ b/assets/layers/disaster_response/disaster_response.json @@ -3,15 +3,18 @@ "title": { "render": { "en": "Disaster response organization", - "it": "Organizzazione per la risposta ai disastri" + "it": "Organizzazione per la risposta ai disastri", + "de": "Katastrophenschutzorganisation" } }, "name": { - "en": "Disaster response organizations" + "en": "Disaster response organizations", + "de": "Katastrophenschutzorganisationen" }, "description": { "en": "This layer contains organizations that have the main objective to help the civil population during and after natural or anthropogenic disasters by working in the affected area.", - "it": "Questo livello contiene organizzazioni che hanno come obiettivo principale quello di aiutare la popolazione civile durante e dopo disastri naturali o antropogenici, lavorando nell'area colpita." + "it": "Questo livello contiene organizzazioni che hanno come obiettivo principale quello di aiutare la popolazione civile durante e dopo disastri naturali o antropogenici, lavorando nell'area colpita.", + "de": "Diese Ebene umfasst Organisationen, deren Hauptziel es ist, der Zivilbevölkerung während und nach Natur- oder anthropogenen Katastrophen zu helfen, indem sie in dem betroffenen Gebiet tätig sind." }, "docs": "https://wiki.openstreetmap.org/wiki/Tag:emergency%3Ddisaster_response", "minzoom": 10, @@ -25,7 +28,8 @@ { "title": { "en": "a disaster response organization", - "it": "un'organizzazione per la risposta ai disastri" + "it": "un'organizzazione per la risposta ai disastri", + "de": "eine Katastrophenschutzorganisation" }, "tags": [ "emergency=disaster_response" @@ -64,11 +68,13 @@ }, "question": { "en": "What is the name of this organization?", - "it": "Qual è il nome di questa organizzazione?" + "it": "Qual è il nome di questa organizzazione?", + "de": "Wie lautet der Name dieser Organisation?" }, "render": { "en": "This organization is named {name}", - "it": "Questa organizzazione si chiama {name}" + "it": "Questa organizzazione si chiama {name}", + "de": "Diese Organisation heißt {name}" } } ] diff --git a/assets/layers/ghost_bike/ghost_bike.json b/assets/layers/ghost_bike/ghost_bike.json index fe53f51a7..e263a09ca 100644 --- a/assets/layers/ghost_bike/ghost_bike.json +++ b/assets/layers/ghost_bike/ghost_bike.json @@ -301,7 +301,7 @@ }, "id": "ghost_bike-start_date" }, - { + { "id": "wikidata", "render": { "special": { diff --git a/assets/layers/hackerspace/hackerspace.json b/assets/layers/hackerspace/hackerspace.json index 1553fe78c..43236fb2d 100644 --- a/assets/layers/hackerspace/hackerspace.json +++ b/assets/layers/hackerspace/hackerspace.json @@ -433,7 +433,8 @@ "if": "service:device-key=limited", "then": { "en": "There is a limited {negative-name} available at this hackerspace", - "nl": "Er is een beperkte {negative-name} beschikbaar in deze hackerspace" + "nl": "Er is een beperkte {negative-name} beschikbaar in deze hackerspace", + "de": "Es gibt einen limitierten {negative-name} in diesem Hackerspace" }, "hideInAnswer": "{hide_limited}" } diff --git a/assets/layers/indoors/indoors.json b/assets/layers/indoors/indoors.json index 730c07b40..763093bbf 100644 --- a/assets/layers/indoors/indoors.json +++ b/assets/layers/indoors/indoors.json @@ -14,7 +14,8 @@ "nl": "Een basis voor indoor-navigatie: toont binnenruimtes", "cs": "Základní mapování interiérů: zobrazuje obrysy místností", "ca": "Mapeig interior bàsic: mostra els contorns de les habitacions", - "pl": "Podstawowe mapowanie wnętrz: pokazuje kontury pomieszczeń" + "pl": "Podstawowe mapowanie wnętrz: pokazuje kontury pomieszczeń", + "es": "Cartografía básica en interiores: muestra esquemas de espacio" }, "source": { "osmTags": { diff --git a/assets/layers/love_hotel/love_hotel.json b/assets/layers/love_hotel/love_hotel.json index 1d8df35b8..6d0418285 100644 --- a/assets/layers/love_hotel/love_hotel.json +++ b/assets/layers/love_hotel/love_hotel.json @@ -1,10 +1,12 @@ { "id": "love_hotel", "name": { - "en": "Love hotels" + "en": "Love hotels", + "de": "Love Hotels" }, "description": { - "en": "A love hotel is a type of short-stay hotel found around the world operated primarily for the purpose of allowing guests privacy for sexual activities" + "en": "A love hotel is a type of short-stay hotel found around the world operated primarily for the purpose of allowing guests privacy for sexual activities", + "de": "Ein Love Hotel ist eine Art Kurzzeithotel, das in erster Linie zu dem Zweck betrieben wird, den Gästen Privatsphäre für sexuelle Aktivitäten zu bieten" }, "source": { "osmTags": "amenity=love_hotel" @@ -12,7 +14,8 @@ "minzoom": 10, "title": { "render": { - "en": "Love Hotel {name}" + "en": "Love Hotel {name}", + "de": "Love Hotel {name}" } }, "pointRendering": [ @@ -49,10 +52,12 @@ "presets": [ { "title": { - "en": "a love hotel" + "en": "a love hotel", + "de": "ein Love Hotel" }, "description": { - "en": "A love hotel is a type of short-stay hotel found around the world operated primarily for the purpose of allowing guests privacy for sexual activities." + "en": "A love hotel is a type of short-stay hotel found around the world operated primarily for the purpose of allowing guests privacy for sexual activities.", + "de": "Ein Love Hotel ist eine Art Kurzzeithotel, das in erster Linie zu dem Zweck betrieben wird, den Gästen Privatsphäre für sexuelle Aktivitäten zu bieten" }, "tags": [ "amenity=love_hotel" @@ -65,10 +70,12 @@ { "id": "name", "question": { - "en": "What is the name of this love hotel?" + "en": "What is the name of this love hotel?", + "de": "Wie lautet der Name des Love Hotels?" }, "render": { - "en": "This love hotel is named {name}" + "en": "This love hotel is named {name}", + "de": "Der Name des Love Hotels lautet {name}" }, "freeform": { "key": "name" diff --git a/assets/layers/maproulette/maproulette.json b/assets/layers/maproulette/maproulette.json index a536c73e7..7e5718700 100644 --- a/assets/layers/maproulette/maproulette.json +++ b/assets/layers/maproulette/maproulette.json @@ -14,7 +14,8 @@ "nl": "Laag met alle taken uit MapRoulette", "ca": "Capa que mostra totes les tasques de MapRoulette", "pl": "Warstwa pokazująca wszystkie zadania w MapRoulette", - "cs": "Vrstva zobrazující všechny úlohy v MapRoulette" + "cs": "Vrstva zobrazující všechny úlohy v MapRoulette", + "es": "Capa mostrando todas las tareas en MapRoulette" }, "source": { "geoJson": "https://maproulette.org/api/v2/tasks/box/{x_min}/{y_min}/{x_max}/{y_max}", diff --git a/assets/layers/maxspeed/maxspeed.json b/assets/layers/maxspeed/maxspeed.json index 378a0cd39..f9664272f 100644 --- a/assets/layers/maxspeed/maxspeed.json +++ b/assets/layers/maxspeed/maxspeed.json @@ -17,7 +17,8 @@ "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" + "pl": "Pokazuje dozwoloną prędkość na każdej drodze", + "es": "Muestra la velocidad permitida para cada carretera" }, "source": { "osmTags": { diff --git a/assets/layers/postboxes/postboxes.json b/assets/layers/postboxes/postboxes.json index ea67f8518..82f2f9cae 100644 --- a/assets/layers/postboxes/postboxes.json +++ b/assets/layers/postboxes/postboxes.json @@ -21,7 +21,7 @@ "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.", + "es": "La capa muestra 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.", diff --git a/assets/layers/rainbow_crossings/rainbow_crossings.json b/assets/layers/rainbow_crossings/rainbow_crossings.json index ba7d92e27..9c95b7c99 100644 --- a/assets/layers/rainbow_crossings/rainbow_crossings.json +++ b/assets/layers/rainbow_crossings/rainbow_crossings.json @@ -13,7 +13,8 @@ "fr": "Une couche affichant les passages piétons avec des peintures arc-en-ciel", "ca": "Una capa que mostra els passos de vianants pintats amb de l'arc de Sant Martí", "cs": "Vrstva zobrazující přechody pro chodce s duhovými malbami", - "pl": "Warstwa przedstawiająca przejścia dla pieszych z tęczowym malowaniem" + "pl": "Warstwa przedstawiająca przejścia dla pieszych z tęczowym malowaniem", + "es": "Una capa que muestra cruces peatonales con pinturas arco iris" }, "source": { "osmTags": { diff --git a/assets/layers/shops/shops.json b/assets/layers/shops/shops.json index e0bb68ecd..aaa1a7b9b 100644 --- a/assets/layers/shops/shops.json +++ b/assets/layers/shops/shops.json @@ -218,7 +218,7 @@ "cs": "Přidat nový obchod", "de": "Sie können später angeben, was das Geschäft verkauft.", "eo": "Enmeti novan butikon", - "es": "Añadir una nueva tienda", + "es": "Puedes especificar más adelante lo que vende esta tienda.", "fr": "Ajouter un nouveau magasin", "ja": "新しい店を追加する", "nl": "Voeg een nieuwe winkel toe", diff --git a/assets/layers/ski_piste/ski_piste.json b/assets/layers/ski_piste/ski_piste.json index b2063eab1..1f2d5ee30 100644 --- a/assets/layers/ski_piste/ski_piste.json +++ b/assets/layers/ski_piste/ski_piste.json @@ -16,7 +16,8 @@ "images", { "question": { - "en": "What is the difficulty of this piste?" + "en": "What is the difficulty of this piste?", + "de": "Was ist der Schwierigkeitsgrad der Piste?" }, "id": "piste_difficulty", "condition": "piste:type!=connection", @@ -24,37 +25,43 @@ { "if": "piste:difficulty=novice", "then": { - "en": "Novice (green)" + "en": "Novice (green)", + "de": "Anfänger (grün)" } }, { "if": "piste:difficulty=easy", "then": { - "en": "Easy (blue)" + "en": "Easy (blue)", + "de": "Einfach (blau)" } }, { "if": "piste:difficulty=intermediate", "then": { - "en": "Intermediate (red)" + "en": "Intermediate (red)", + "de": "Mittel (rot)" } }, { "if": "piste:difficulty=advanced", "then": { - "en": "Advanced (black)" + "en": "Advanced (black)", + "de": "Fortgeschritten (schwarz)" } }, { "if": "piste:difficulty=expert", "then": { - "en": "Expert (orange/double black)" + "en": "Expert (orange/double black)", + "de": "Experte (orange/doppel schwarz)" } }, { "if": "piste:difficulty=freeride", "then": { - "en": "Freeride" + "en": "Freeride", + "de": "Freeride" } } ] @@ -62,7 +69,8 @@ { "id": "length", "render": { - "en": "This part of the ski piste is {_length:km} kilometer long" + "en": "This part of the ski piste is {_length:km} kilometer long", + "de": "Dieser Teil der Skipiste hat eine Länge von {_length:km} km" } } ], @@ -102,10 +110,12 @@ ], "id": "ski_piste", "name": { - "en": "Ski and snowboard pistes" + "en": "Ski and snowboard pistes", + "de": "Ski- und Snowboardpisten" }, "description": { - "en": "Ski and snowboard pistes" + "en": "Ski and snowboard pistes", + "de": "Ski- und Snowboardpisten" }, "source": { "osmTags": { @@ -122,7 +132,8 @@ }, "title": { "render": { - "en": "Ski piste {name}" + "en": "Ski piste {name}", + "de": "Skipiste {name}" } } } diff --git a/assets/layers/sports_centre/sports_centre.json b/assets/layers/sports_centre/sports_centre.json index ff1cbb60c..421564a61 100644 --- a/assets/layers/sports_centre/sports_centre.json +++ b/assets/layers/sports_centre/sports_centre.json @@ -21,7 +21,8 @@ "en": "Sports centre", "de": "Sportzentrum", "ca": "Centre esportiu", - "cs": "Sportovní centrum" + "cs": "Sportovní centrum", + "id": "Pusat olahraga" }, "mappings": [ { @@ -65,7 +66,8 @@ "en": "a sports centre", "de": "ein Sportzentrum", "ca": "un centre esportiu", - "cs": "sportovní centra" + "cs": "sportovní centra", + "id": "pusat olahraga" }, "tags": [ "leisure=sports_centre" diff --git a/assets/layers/stairs/stairs.json b/assets/layers/stairs/stairs.json index c51fbf6a5..4e81a02bb 100644 --- a/assets/layers/stairs/stairs.json +++ b/assets/layers/stairs/stairs.json @@ -5,14 +5,16 @@ "nl": "Trappen", "de": "Treppen", "ca": "Escales", - "cs": "Schody" + "cs": "Schody", + "id": "Tangga" }, "description": { "en": "Layer showing stairs and escalators", "de": "Ebene mit Treppen und Rolltreppen", "nl": "Laag met trappen en roltrappen", "ca": "Capa que mostra escales i escales mecàniques", - "cs": "Vrstva zobrazující schody a eskalátory" + "cs": "Vrstva zobrazující schody a eskalátory", + "id": "Lapisan ini menunjukkan tangga dan eskalator" }, "source": { "osmTags": "highway=steps" @@ -93,7 +95,8 @@ "nl": "Dit is een roltrap", "de": "Das ist eine Rolltreppe", "ca": "Açò és una escala mecànica", - "cs": "Jedná se o eskalátor" + "cs": "Jedná se o eskalátor", + "id": "Ini adalah eskalator" } }, { @@ -103,7 +106,8 @@ "nl": "Dit is geen roltrap", "de": "Das ist keine Rolltreppe", "ca": "Açò no és una escala mecànica", - "cs": "Nejedná se o eskalátor" + "cs": "Nejedná se o eskalátor", + "id": "Ini bukan eskalator" } }, { @@ -113,7 +117,8 @@ "nl": "Dit is geen roltrap", "de": "Das ist keine Rolltreppe", "ca": "Això no és una escala mecànica", - "cs": "Nejedná se o eskalátor" + "cs": "Nejedná se o eskalátor", + "id": "Ini bukan eskalator" }, "hideInAnswer": true } @@ -126,7 +131,8 @@ "nl": "Heeft deze trap een leuning?", "de": "Hat die Treppe einen Handlauf?", "ca": "Aquestes escales tenen un passamà?", - "cs": "Má toto schodiště zábradlí?" + "cs": "Má toto schodiště zábradlí?", + "id": "Apakah tangga ini memiliki pegangan?" }, "mappings": [ { @@ -136,7 +142,8 @@ "nl": "Deze trap heeft een leuning", "de": "Die Treppe hat einen Handlauf", "ca": "Aquestes escales tenen barana", - "cs": "Tyto schody mají zábradlí" + "cs": "Tyto schody mají zábradlí", + "id": "Tangga ini memiliki pegangan tangan" } }, { @@ -146,7 +153,8 @@ "nl": "Deze trap heeft geen leuning", "de": "Die Treppe hat keinen Handlauf", "ca": "Aquestes escales no tenen un passamà", - "cs": "Tyto schody nemají zábradlí" + "cs": "Tyto schody nemají zábradlí", + "id": "Tangga ini tidak memiliki pegangan tangan" } } ], @@ -295,7 +303,8 @@ "render": { "en": "These stairs have an incline of {incline}", "ca": "Aquestes escales tenen una inclinació de {incline}", - "de": "Die Treppe hat eine Steigung von {incline}" + "de": "Die Treppe hat eine Steigung von {incline}", + "id": "Tangga ini memiliki kemiringan sebesar {incline}" }, "freeform": { "key": "incline", @@ -304,7 +313,8 @@ "question": { "en": "What is the incline of these stairs?", "ca": "Quina és la inclinació d'aquestes escales?", - "de": "Welche Steigung hat die Treppe?" + "de": "Welche Steigung hat die Treppe?", + "id": "Berapa kemiringan tangga ini?" }, "mappings": [ { @@ -312,7 +322,8 @@ "then": { "en": "The upward direction is {direction_absolute()}", "ca": "La direcció ascendent és {direction_absolute()}", - "de": "Die Aufwärtsrichtung ist {direction_absolute()}" + "de": "Die Aufwärtsrichtung ist {direction_absolute()}", + "id": "Arah ke atas adalah {direction_absolute()}" }, "hideInAnswer": true }, @@ -321,7 +332,8 @@ "then": { "en": "The downward direction is {direction_absolute()}", "ca": "La direcció descendent és {direction_absolute()}", - "de": "Die Abwärtsrichtung ist {direction_absolute()}" + "de": "Die Abwärtsrichtung ist {direction_absolute()}", + "id": "Arah ke bawah adalah {direction_absolute()}" }, "hideInAnswer": true } diff --git a/assets/layers/stripclub/stripclub.json b/assets/layers/stripclub/stripclub.json index ca99c1100..0b92c6c9f 100644 --- a/assets/layers/stripclub/stripclub.json +++ b/assets/layers/stripclub/stripclub.json @@ -1,10 +1,12 @@ { "id": "stripclub", "name": { - "en": "Stripclubs" + "en": "Stripclubs", + "de": "Stripclubs" }, "description": { - "en": "A venue where erotic dance, striptease, or lap dances are performed commercially. " + "en": "A venue where erotic dance, striptease, or lap dances are performed commercially. ", + "de": "Ein Ort, an dem erotische Tanz-, Striptease- oder Lapdances kommerziell durchgeführt werden. " }, "source": { "osmTags": "amenity=stripclub", @@ -13,7 +15,8 @@ "minzoom": 6, "title": { "render": { - "en": "Stripclub" + "en": "Stripclub", + "de": "Stripclub" }, "mappings": [ { @@ -56,7 +59,8 @@ "presets": [ { "title": { - "en": "a stripclub" + "en": "a stripclub", + "de": "ein Stripclub" }, "tags": [ "amenity=stripclub" @@ -74,10 +78,12 @@ "key": "name" }, "question": { - "en": "What is the name of this stripclub?" + "en": "What is the name of this stripclub?", + "de": "Wie lautet der Name des Stripclubs?" }, "render": { - "en": "This stripclub is named {name}" + "en": "This stripclub is named {name}", + "de": "Der Name des Stripclubs lautet {name}" } }, "opening_hours", diff --git a/assets/layers/toilet/toilet.json b/assets/layers/toilet/toilet.json index 192a60ab7..99346baac 100644 --- a/assets/layers/toilet/toilet.json +++ b/assets/layers/toilet/toilet.json @@ -786,7 +786,7 @@ "fr": "La table à langer est dans un espace dédié. ", "nl": "Er bevindt zich een luiertafel in een daartoe voorziene kamer ", "it": "Il fasciatoio è in una stanza dedicata. ", - "es": "El cambiador está en una habitación dedicada ", + "es": "El cambiador está en una habitación dedicada", "da": "Vuggestuen står i et særligt rum. ", "ca": "El canviador està en una habitació dedicada. ", "cs": "Přebalovací pult je ve vyhrazené místnosti. " diff --git a/assets/png/twoway.png.license b/assets/png/twoway.png.license index 2452bee1e..ed0288300 100644 --- a/assets/png/twoway.png.license +++ b/assets/png/twoway.png.license @@ -1,2 +1,2 @@ SPDX-FileCopyrightText: Pieter Vander Vennet -SPDX-License-Identifier: CC0 \ No newline at end of file +SPDX-License-Identifier: CC0-1.0 \ No newline at end of file diff --git a/assets/png/twoway.svg.license b/assets/png/twoway.svg.license index 2452bee1e..ed0288300 100644 --- a/assets/png/twoway.svg.license +++ b/assets/png/twoway.svg.license @@ -1,2 +1,2 @@ SPDX-FileCopyrightText: Pieter Vander Vennet -SPDX-License-Identifier: CC0 \ No newline at end of file +SPDX-License-Identifier: CC0-1.0 \ No newline at end of file diff --git a/assets/themes/disaster_response/disaster_response.json b/assets/themes/disaster_response/disaster_response.json index 58e787aa8..d7ba9d0b0 100644 --- a/assets/themes/disaster_response/disaster_response.json +++ b/assets/themes/disaster_response/disaster_response.json @@ -1,7 +1,9 @@ { "description": { "en": "This map contains elements meant for disaster preparedness and response.", - "it": "Questa mappa contiene elementi pensati per la preparazione e risposta ai disastri." + "it": "Questa mappa contiene elementi pensati per la preparazione e risposta ai disastri.", + "de": "Diese Karte enthält Elemente, die der Katastrophenvorsorge und dem Katastrophenschutz dienen.", + "es": "Este mapa contiene elementos destinados a la preparación y respuesta ante desastres." }, "docs": "https://wiki.openstreetmap.org/wiki/Emergency_facilities_and_amenities", "icon": "./assets/themes/disaster_response/CivilDefence.svg", @@ -9,7 +11,9 @@ "socialImage": "./assets/themes/disaster_response/social.svg", "title": { "en": "Disaster response", - "it": "Risposta ai disastri" + "it": "Risposta ai disastri", + "de": "Katastrophenschutz", + "es": "Respuesta ante desastres" }, "layers": [ "hospital", diff --git a/assets/themes/hackerspaces/hackerspaces.json b/assets/themes/hackerspaces/hackerspaces.json index 48ed9347b..24d72b104 100644 --- a/assets/themes/hackerspaces/hackerspaces.json +++ b/assets/themes/hackerspaces/hackerspaces.json @@ -13,7 +13,7 @@ "ca": "Espai per a hackers", "pa_PK": "ہیکر دے تھاں", "cs": "Hackerspaces", - "es": "Hackerspaces and makerspaces", + "es": "Hackerspaces y makerspaces", "eu": "Hackerspace", "pl": "Hackerspace'y" }, diff --git a/assets/themes/openlovemap/openlovemap.json b/assets/themes/openlovemap/openlovemap.json index d7a1a42df..427428cbb 100644 --- a/assets/themes/openlovemap/openlovemap.json +++ b/assets/themes/openlovemap/openlovemap.json @@ -1,10 +1,14 @@ { "id": "openlovemap", "title": { - "en": "Open Love Map" + "en": "Open Love Map", + "de": "Open Love Map", + "es": "Open Love Map" }, "description": { - "en": "

Love in the palm of your hand

Open Love Map lists various adult entries, such as brothels, erotic stores and stripclubs." + "en": "

Love in the palm of your hand

Open Love Map lists various adult entries, such as brothels, erotic stores and stripclubs.", + "de": "

Liebe in der Hand

Open Love Map listet verschiedene Einträge für Erwachsene, wie Bordelle, Erotikshops und Stripclubs.", + "es": "

Amor en la palma de tu mano

Open Love Map lista varias entradas para adultos, como burdeles, tiendas eróticas y clubs de striptease." }, "icon": "./assets/layers/stripclub/stripclub.svg", "hideFromOverview": true, @@ -23,12 +27,16 @@ "open_now" ], "name": { - "en": "Erotic shops" + "en": "Erotic shops", + "de": "Erotikgeschäfte", + "es": "Tiendas eróticas" }, "=presets": [ { "title": { - "en": "an erotic shop" + "en": "an erotic shop", + "de": "ein Erotikgeschäft", + "es": "una tienda erótica" }, "tags": [ "shop=erotic" @@ -100,7 +108,9 @@ "=presets": [ { "title": { - "en": "a condom vending machine" + "en": "a condom vending machine", + "de": "ein Kondomautomat", + "es": "una máquina de venta de condones" }, "tags": [ "amenity=vending_machine", @@ -176,7 +186,9 @@ "=presets": [ { "title": { - "en": "an erotic cinema" + "en": "an erotic cinema", + "de": "Ein Sex-Kino", + "es": "un cine erótico" }, "tags": [ "amenity=cinema", @@ -203,7 +215,9 @@ { "id": "hotel-type", "question": { - "en": "What type of hotel is this?" + "en": "What type of hotel is this?", + "de": "Welche Art von Hotel ist das?", + "es": "¿Qué tipo de hotel es este?" }, "mappings": [ { @@ -232,10 +246,14 @@ { "id": "has_video_booth", "question": { - "en": "Does {title()} have a private video booth?" + "en": "Does {title()} have a private video booth?", + "de": "Hat {title()} eine private Videokabine?", + "es": "¿Este {título()} tiene una cabina de video privada?" }, "questionHint": { - "en": "This is for use by a single person." + "en": "This is for use by a single person.", + "de": "Dies ist für die Nutzung durch eine einzelne Person vorgesehen.", + "es": "Esto es para uso de una sola persona." }, "mappings": [ { diff --git a/assets/themes/ski/ski.json b/assets/themes/ski/ski.json index 1209804a7..6ce871f33 100644 --- a/assets/themes/ski/ski.json +++ b/assets/themes/ski/ski.json @@ -1,10 +1,14 @@ { "id": "ski", "title": { - "en": "Ski pistes and aerialways" + "en": "Ski pistes and aerialways", + "de": "Skipisten und Seilbahnen", + "es": "Pistas de esquí y vías aéreas" }, "description": { - "en": "Everything you need to go skiing" + "en": "Everything you need to go skiing", + "de": "Alles, was Sie zum Skifahren brauchen", + "es": "Todo lo que necesitas para esquiar" }, "icon": "./assets/layers/aerialway/chair_lift.svg", "enableTerrain": true, diff --git a/assets/themes/velopark/velopark.json b/assets/themes/velopark/velopark.json index b7130c169..2d43fdcbb 100644 --- a/assets/themes/velopark/velopark.json +++ b/assets/themes/velopark/velopark.json @@ -169,7 +169,6 @@ "ask_feedback": { "en": "Is this point incorrect or is it difficult to solve? Please provide some feedback below", "nl": "Is dit punt foutief of te moeilijk? Gelieve wat feedback te geven" - } } } diff --git a/assets/themes/walkingnodes/walkingnodes.json b/assets/themes/walkingnodes/walkingnodes.json index e20ffb727..cd1f73bf8 100644 --- a/assets/themes/walkingnodes/walkingnodes.json +++ b/assets/themes/walkingnodes/walkingnodes.json @@ -3,13 +3,15 @@ "title": { "en": "Walking Node Networks", "nl": "Wandelknooppuntnetwerken", - "de": "Netzwerke von Wanderknoten" + "de": "Netzwerke von Wanderknoten", + "es": "Redes de nodos de senderismo" }, "description": { "en": "This map shows walking node networks and allows you to add new nodes easily", "nl": "Deze kaart toont wandelknooppunten en laat je toe om eenvoudigweg nieuwe knooppunten toe te voegen", "de": "Diese Karte zeigt Wandernetzwerke und ermöglicht es Ihnen, einfach neue Knoten hinzuzufügen", - "cs": "Tato mapa zobrazuje sítě uzlových bodů a umožňuje snadné přidávání nových uzlů" + "cs": "Tato mapa zobrazuje sítě uzlových bodů a umožňuje snadné přidávání nových uzlů", + "es": "Este mapa muestra las redes de nodos de senderismo y le permite añadir nuevos nodos fácilmente" }, "icon": "./assets/themes/walkingnodes/logo.svg", "startZoom": 11, @@ -168,7 +170,8 @@ "render": { "en": "Walking node", "nl": "Wandelknooppunt", - "de": "Wanderknoten" + "de": "Wanderknoten", + "es": "Nodo de senderismo" }, "mappings": [ { @@ -176,7 +179,8 @@ "then": { "en": "Walking node {rwn_ref}", "nl": "Wandelknooppunt {rwn_ref}", - "de": "Wanderknoten {rwn_ref}" + "de": "Wanderknoten {rwn_ref}", + "es": "Nodo de senderismo {rwn_ref}" } }, { @@ -184,7 +188,8 @@ "then": { "en": "Proposed walking node {proposed:rwn_ref}", "nl": "Voorgesteld wandelknooppunt {proposed:rwn_ref}", - "de": "Vorgeschlagener Wanderknoten {proposed:rwn_ref}" + "de": "Vorgeschlagener Wanderknoten {proposed:rwn_ref}", + "es": "Nodo de senderismo propuesto {proposed:rwn_ref}" } } ] @@ -196,7 +201,8 @@ "en": "What is the reference number of this walking node?", "nl": "Wat is het referentienummer van dit wandelknooppunt?", "de": "Was ist die Referenznummer dieses Wanderknotens?", - "cs": "Jaké je referenční číslo tohoto pěšího uzlu?" + "cs": "Jaké je referenční číslo tohoto pěšího uzlu?", + "es": "¿Cuál es el número de referencia de este nodo de senderismo?" }, "freeform": { "key": "rwn_ref", @@ -205,13 +211,15 @@ "en": "e.g. 1", "nl": "bijv. 1", "de": "z.B. 1", - "cs": "e.g. 1" + "cs": "e.g. 1", + "es": "Por ejemplo, 1" } }, "render": { "en": "This walking node has reference number {rwn_ref}", "nl": "Dit wandelknooppunt heeft referentienummer {rwn_ref}", - "de": "Dieser Wanderknoten hat die Referenznummer {rwn_ref}" + "de": "Dieser Wanderknoten hat die Referenznummer {rwn_ref}", + "es": "Este nodo de senderismo tiene la referencia número {rwn_ref}" }, "condition": "rwn_ref~*" }, @@ -221,12 +229,14 @@ "question": { "en": "When was this walking node last surveyed?", "nl": "Wanneer is dit wandelknooppunt het laatst gesurveyed?", - "de": "Wann wurde dieser Wanderknoten zuletzt überprüft?" + "de": "Wann wurde dieser Wanderknoten zuletzt überprüft?", + "es": "¿Cuándo fue la última revisión de este nodo de senderismo?" }, "render": { "en": "This walking node was last surveyed on {survey:date}", "nl": "Dit wandelknooppunt werd het laatst gesurveyed op {survey:date}", - "de": "Dieser Wanderknoten wurde zuletzt am {survey:date} überprüft" + "de": "Dieser Wanderknoten wurde zuletzt am {survey:date} überprüft", + "es": "Este nodo de senderismo fue revisado por última vez en {survey:date}" } } }, @@ -235,12 +245,14 @@ "en": "How many other walking nodes does this node link to?", "nl": "Met hoeveel andere wandelknooppunten heeft dit knooppunt een verbinding?", "de": "Mit wie vielen anderen Wanderknoten ist dieser Knoten verbunden?", - "cs": "S kolika dalšími pěšími uzly je tento uzel propojen?" + "cs": "S kolika dalšími pěšími uzly je tento uzel propojen?", + "es": "¿A cuántos otros nodos de senderismo conecta este nodo?" }, "render": { "en": "This node links to {expected_rwn_route_relations} other walking nodes.", "nl": "Dit knooppunt verbindt met {expected_rwn_route_relations} andere wandelknooppunten.", - "de": "Dieser Knoten ist mit {expected_rwn_route_relations} anderen Wanderknoten verbunden." + "de": "Dieser Knoten ist mit {expected_rwn_route_relations} anderen Wanderknoten verbunden.", + "es": "Este nodo se vincula a {expected_rwn_route_relations} otros nodos de senderismo." }, "freeform": { "key": "expected_rwn_route_relations", @@ -249,7 +261,8 @@ "en": "e.g. 3", "nl": "bijv. 3", "de": "z.B. 3", - "cs": "e.g. 3" + "cs": "e.g. 3", + "es": "Por ejemplo, 3" } }, "id": "node-expected_rwn_route_relations" @@ -265,7 +278,8 @@ "title": { "en": "a walking node", "nl": "een wandelknooppunt", - "de": "ein Wanderknoten" + "de": "ein Wanderknoten", + "es": "un nodo de senderismo" }, "snapToLayer": [ "cycleways_and_roads" @@ -298,12 +312,14 @@ ], "name": { "en": "Hiking guideposts", - "de": "Wanderwegweiser" + "de": "Wanderwegweiser", + "es": "Postes guías de senderismo" }, "title": { "render": { "en": "Hiking guidepost", - "de": "Wanderwegweiser" + "de": "Wanderwegweiser", + "es": "Poste guía de senderismo" } } }, @@ -334,7 +350,8 @@ ], "title": { "en": "a route marker for a node to node link", - "de": "Eine Routenmarkierung für eine Verbindung von Knoten zu Knoten" + "de": "Eine Routenmarkierung für eine Verbindung von Knoten zu Knoten", + "es": "un marcador de ruta para un enlace de nodo a nodo" }, "=exampleImages": [ "./assets/layers/route_marker/walking_route_marker.jpg" diff --git a/langs/layers/ca.json b/langs/layers/ca.json index c715e0989..45913b423 100644 --- a/langs/layers/ca.json +++ b/langs/layers/ca.json @@ -8422,6 +8422,23 @@ "render": "Arbre" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "S'accepten monedes de 50 cèntims" + }, + "1": { + "then": "S'accepten monedes de 1 euro" + }, + "2": { + "then": "S'accepten monedes de 2 euros" + } + } + } + } + }, "unit": { "units": { "0": { diff --git a/langs/layers/cs.json b/langs/layers/cs.json index 78ec8281c..5699ef26a 100644 --- a/langs/layers/cs.json +++ b/langs/layers/cs.json @@ -8711,6 +8711,23 @@ "render": "Strom" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "Jsou přijímány mince v hodnotě 50 centů" + }, + "1": { + "then": "Jsou přijímány mince v hodnotě 1 eura" + }, + "2": { + "then": "Jsou přijímány mince v hodnotě 2 euro" + } + } + } + } + }, "unit": { "units": { "0": { diff --git a/langs/layers/de.json b/langs/layers/de.json index 332375090..e6447452e 100644 --- a/langs/layers/de.json +++ b/langs/layers/de.json @@ -35,16 +35,6 @@ "1": { "title": "eine freistehende Posterbox" }, - "10": { - "description": "Verwendet für Werbeschilder, Leuchtreklamen, Logos und institutionelle Eingangsschilder", - "title": "ein Schild" - }, - "11": { - "title": "eine Skulptur" - }, - "12": { - "title": "eine Wandmalerei" - }, "2": { "title": "eine wandmontierte Posterbox" }, @@ -71,6 +61,16 @@ }, "9": { "title": "ein Totem" + }, + "10": { + "description": "Verwendet für Werbeschilder, Leuchtreklamen, Logos und institutionelle Eingangsschilder", + "title": "ein Schild" + }, + "11": { + "title": "eine Skulptur" + }, + "12": { + "title": "eine Wandmalerei" } }, "tagRenderings": { @@ -165,9 +165,6 @@ "1": { "then": "Dies ist ein Brett" }, - "10": { - "then": "Dies ist eine Wandmalerei" - }, "2": { "then": "Dies ist eine Litfaßsäule" }, @@ -191,6 +188,9 @@ }, "9": { "then": "Dies ist ein Totem" + }, + "10": { + "then": "Dies ist eine Wandmalerei" } }, "question": "Welche Art von Werbung ist das?", @@ -205,9 +205,6 @@ "1": { "then": "Brett" }, - "10": { - "then": "Wandmalerei" - }, "2": { "then": "Posterbox" }, @@ -231,6 +228,9 @@ }, "9": { "then": "Totem" + }, + "10": { + "then": "Wandmalerei" } } } @@ -266,9 +266,6 @@ "1": { "then": "Es handelt sich um eine Seilbahn, bei der die Kabinen in ständigen Kreisen fahren" }, - "10": { - "then": "Eine Seilrutsche. (Eine Touristenattraktion, bei der abenteuerlustige Menschen mit hoher Geschwindigkeit hinunterfahren) " - }, "2": { "then": "Ein offener Sessellift mit Sitzgelegenheiten und Zugang zur Außenluft." }, @@ -292,6 +289,9 @@ }, "9": { "then": "Ein magic carpet (ein Förderband auf dem Boden)" + }, + "10": { + "then": "Eine Seilrutsche. (Eine Touristenattraktion, bei der abenteuerlustige Menschen mit hoher Geschwindigkeit hinunterfahren) " } }, "question": "Um welchen Seilbahntyp handelt es sich?" @@ -419,15 +419,6 @@ "1": { "then": "Wandbild" }, - "10": { - "then": "Azulejo (spanische dekorative Fliesenarbeit)" - }, - "11": { - "then": "Fliesenarbeit" - }, - "12": { - "then": "Holzschnitzerei" - }, "2": { "then": "Malerei" }, @@ -451,6 +442,15 @@ }, "9": { "then": "Relief" + }, + "10": { + "then": "Azulejo (spanische dekorative Fliesenarbeit)" + }, + "11": { + "then": "Fliesenarbeit" + }, + "12": { + "then": "Holzschnitzerei" } }, "question": "Um welche Art Kunstwerk handelt es sich?", @@ -2080,27 +2080,6 @@ "1": { "question": "Verfügt über einen
Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)
" }, - "10": { - "question": "Hat einen
Typ 2 (Mennekes)
Anschluss mit Kabel" - }, - "11": { - "question": "Hat einen
Tesla Supercharger CCS (Typ 2 CSS vonTesla)
Anschluss" - }, - "12": { - "question": "Hat einen
Tesla Supercharger (Destination)
Anschluss" - }, - "13": { - "question": "Hat einen
Tesla Supercharger (Destination) (Typ 2 von Tesla)
Anschluss mit Kabel" - }, - "14": { - "question": "Hat einen
USB-Anschluss zum Aufladen von Telefonen und kleinen Elektrogeräten
" - }, - "15": { - "question": "Hat einen
Bosch Active Connect Anschluss mit 3 Pins
und Kabel" - }, - "16": { - "question": "Hat einen
Bosch Active Connect Anschluss mit 5 Pins
und Kabel" - }, "2": { "question": "Verfügt über einen
europäischen Netzstecker mit Erdungsstift (CEE7/4 Typ E)
Anschluss" }, @@ -2124,6 +2103,27 @@ }, "9": { "question": "Hat einen
Typ 2 CCS (Mennekes)
Anschluss" + }, + "10": { + "question": "Hat einen
Typ 2 (Mennekes)
Anschluss mit Kabel" + }, + "11": { + "question": "Hat einen
Tesla Supercharger CCS (Typ 2 CSS vonTesla)
Anschluss" + }, + "12": { + "question": "Hat einen
Tesla Supercharger (Destination)
Anschluss" + }, + "13": { + "question": "Hat einen
Tesla Supercharger (Destination) (Typ 2 von Tesla)
Anschluss mit Kabel" + }, + "14": { + "question": "Hat einen
USB-Anschluss zum Aufladen von Telefonen und kleinen Elektrogeräten
" + }, + "15": { + "question": "Hat einen
Bosch Active Connect Anschluss mit 3 Pins
und Kabel" + }, + "16": { + "question": "Hat einen
Bosch Active Connect Anschluss mit 5 Pins
und Kabel" } } } @@ -2179,6 +2179,30 @@ "1": { "then": "Schuko-Stecker ohne Erdungsstift (CEE7/4 Typ F)" }, + "2": { + "then": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + }, + "3": { + "then": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" + }, + "4": { + "then": "Chademo-Anschluss" + }, + "5": { + "then": "Chademo-Anschluss" + }, + "6": { + "then": "Typ 1 mit Kabel (J1772)" + }, + "7": { + "then": "Typ 1 mit Kabel (J1772)" + }, + "8": { + "then": "Typ 1 ohne Kabel (J1772)" + }, + "9": { + "then": " Typ 1 ohne Kabel (J1772)" + }, "10": { "then": "Typ 1 CCS (Typ 1 Combo)" }, @@ -2209,9 +2233,6 @@ "19": { "then": "Typ 2 mit Kabel (mennekes)" }, - "2": { - "then": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" - }, "20": { "then": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)" }, @@ -2242,32 +2263,11 @@ "29": { "then": " Bosch Active Connect mit 3 Pins und Kabel" }, - "3": { - "then": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" - }, "30": { "then": "Bosch Active Connect mit 5 Pins und Kabel" }, "31": { "then": " Bosch Active Connect mit 5 Pins und Kabel" - }, - "4": { - "then": "Chademo-Anschluss" - }, - "5": { - "then": "Chademo-Anschluss" - }, - "6": { - "then": "Typ 1 mit Kabel (J1772)" - }, - "7": { - "then": "Typ 1 mit Kabel (J1772)" - }, - "8": { - "then": "Typ 1 ohne Kabel (J1772)" - }, - "9": { - "then": " Typ 1 ohne Kabel (J1772)" } }, "question": "Welche Ladeanschlüsse gibt es hier?" @@ -2461,24 +2461,6 @@ "1": { "2": "Europäischer Netzstecker mit Erdungsstift (CEE7/4 Typ E)" }, - "10": { - "2": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)" - }, - "11": { - "2": "Tesla Supercharger (Destination)" - }, - "12": { - "2": "Tesla Supercharger (Destination) (Typ 2 mit Kabel von Tesla)" - }, - "13": { - "2": "USB zum Aufladen von Handys und kleinen Elektrogeräten" - }, - "14": { - "2": " Bosch Active Connect mit 3 Pins und Kabel" - }, - "15": { - "2": " Bosch Active Connect mit 5 Pins und Kabel" - }, "2": { "2": "Chademo-Stecker" }, @@ -2502,6 +2484,24 @@ }, "9": { "2": "Typ 2 mit Kabel (Mennekes)" + }, + "10": { + "2": "Tesla Supercharger CCS (Typ 2 CSS von Tesla)" + }, + "11": { + "2": "Tesla Supercharger (Destination)" + }, + "12": { + "2": "Tesla Supercharger (Destination) (Typ 2 mit Kabel von Tesla)" + }, + "13": { + "2": "USB zum Aufladen von Handys und kleinen Elektrogeräten" + }, + "14": { + "2": " Bosch Active Connect mit 3 Pins und Kabel" + }, + "15": { + "2": " Bosch Active Connect mit 5 Pins und Kabel" } } } @@ -3299,15 +3299,6 @@ "1": { "then": "Dieser Radweg hat einen festen Belag" }, - "10": { - "then": "Dieser Radweg besteht aus feinem Schotter" - }, - "11": { - "then": "Der Radweg ist aus Kies" - }, - "12": { - "then": "Dieser Radweg besteht aus Rohboden" - }, "2": { "then": "Der Radweg ist aus Asphalt" }, @@ -3331,6 +3322,15 @@ }, "9": { "then": "Der Radweg ist aus Schotter" + }, + "10": { + "then": "Dieser Radweg besteht aus feinem Schotter" + }, + "11": { + "then": "Der Radweg ist aus Kies" + }, + "12": { + "then": "Dieser Radweg besteht aus Rohboden" } }, "question": "Was ist der Belag dieses Radwegs?", @@ -3379,15 +3379,6 @@ "1": { "then": "Dieser Radweg hat einen festen Belag" }, - "10": { - "then": "Dieser Radweg besteht aus feinem Schotter" - }, - "11": { - "then": "Der Radweg ist aus Kies" - }, - "12": { - "then": "Dieser Radweg besteht aus Rohboden" - }, "2": { "then": "Der Radweg ist aus Asphalt" }, @@ -3411,6 +3402,15 @@ }, "9": { "then": "Der Radweg ist aus Schotter" + }, + "10": { + "then": "Dieser Radweg besteht aus feinem Schotter" + }, + "11": { + "then": "Der Radweg ist aus Kies" + }, + "12": { + "then": "Dieser Radweg besteht aus Rohboden" } }, "question": "Was ist der Belag dieser Straße?", @@ -4383,54 +4383,6 @@ } } }, - "10": { - "options": { - "0": { - "question": "Keine Bevorzugung von Hunden" - }, - "1": { - "question": "Hunde erlaubt" - }, - "2": { - "question": "Keine Hunde erlaubt" - } - } - }, - "11": { - "options": { - "0": { - "question": "Internetzugang vorhanden" - } - } - }, - "12": { - "options": { - "0": { - "question": "Stromanschluss vorhanden" - } - } - }, - "13": { - "options": { - "0": { - "question": "Hat zuckerfreie Angebote" - } - } - }, - "14": { - "options": { - "0": { - "question": "Hat glutenfreie Angebote" - } - } - }, - "15": { - "options": { - "0": { - "question": "Hat laktosefreie Angebote" - } - } - }, "2": { "options": { "0": { @@ -4501,6 +4453,54 @@ "question": "Nutzung kostenlos" } } + }, + "10": { + "options": { + "0": { + "question": "Keine Bevorzugung von Hunden" + }, + "1": { + "question": "Hunde erlaubt" + }, + "2": { + "question": "Keine Hunde erlaubt" + } + } + }, + "11": { + "options": { + "0": { + "question": "Internetzugang vorhanden" + } + } + }, + "12": { + "options": { + "0": { + "question": "Stromanschluss vorhanden" + } + } + }, + "13": { + "options": { + "0": { + "question": "Hat zuckerfreie Angebote" + } + } + }, + "14": { + "options": { + "0": { + "question": "Hat glutenfreie Angebote" + } + } + }, + "15": { + "options": { + "0": { + "question": "Hat laktosefreie Angebote" + } + } } } }, @@ -4620,6 +4620,30 @@ "1": { "then": "Die Fitness-Station hat ein Schild mit Anweisungen für eine bestimmte Übung." }, + "2": { + "then": "Die Fitness-Station hat eine Einrichtung für Sit-ups." + }, + "3": { + "then": "Die Fitness-Station hat eine Vorrichtung für Liegestütze. In der Regel eine oder mehrere niedrige Reckstangen." + }, + "4": { + "then": "Die Fitness-Station hat Stangen zum Dehnen." + }, + "5": { + "then": "Die Fitness-Station hat eine Vorrichtung für Rückenstrecker (Hyperextensions)." + }, + "6": { + "then": "Die Fitness-Station hat Ringe für Gymnastikübungen." + }, + "7": { + "then": "Die Fitness-Station hat eine horizontale Leiter (Monkey Bars)." + }, + "8": { + "then": "Die Fitness-Station hat eine Sprossenwand zum Klettern." + }, + "9": { + "then": "Die Fitness-Station hat Pfosten für Slalomübungen." + }, "10": { "then": "Die Fitness-Station hat Trittsteine." }, @@ -4650,9 +4674,6 @@ "19": { "then": "Die Fitness-Station hat Kampfseile (battle ropes)." }, - "2": { - "then": "Die Fitness-Station hat eine Einrichtung für Sit-ups." - }, "20": { "then": "Die Fitness-Station hat ein Fahrradergometer." }, @@ -4667,27 +4688,6 @@ }, "24": { "then": "Die Fitness-Station hat eine Slackline." - }, - "3": { - "then": "Die Fitness-Station hat eine Vorrichtung für Liegestütze. In der Regel eine oder mehrere niedrige Reckstangen." - }, - "4": { - "then": "Die Fitness-Station hat Stangen zum Dehnen." - }, - "5": { - "then": "Die Fitness-Station hat eine Vorrichtung für Rückenstrecker (Hyperextensions)." - }, - "6": { - "then": "Die Fitness-Station hat Ringe für Gymnastikübungen." - }, - "7": { - "then": "Die Fitness-Station hat eine horizontale Leiter (Monkey Bars)." - }, - "8": { - "then": "Die Fitness-Station hat eine Sprossenwand zum Klettern." - }, - "9": { - "then": "Die Fitness-Station hat Pfosten für Slalomübungen." } }, "question": "Welche Übungsgeräte gibt es an dieser Fitness-Station?" @@ -4807,21 +4807,6 @@ "1": { "then": "Dies ist eine Pommesbude" }, - "10": { - "then": "Hier werden chinesische Gerichte serviert" - }, - "11": { - "then": "Hier werden griechische Gerichte serviert" - }, - "12": { - "then": "Hier werden indische Gerichte serviert" - }, - "13": { - "then": "Hier werden türkische Gerichte serviert" - }, - "14": { - "then": "Hier werden thailändische Gerichte serviert" - }, "2": { "then": "Bietet vorwiegend Pastagerichte an" }, @@ -4845,6 +4830,21 @@ }, "9": { "then": "Hier werden französische Gerichte serviert" + }, + "10": { + "then": "Hier werden chinesische Gerichte serviert" + }, + "11": { + "then": "Hier werden griechische Gerichte serviert" + }, + "12": { + "then": "Hier werden indische Gerichte serviert" + }, + "13": { + "then": "Hier werden türkische Gerichte serviert" + }, + "14": { + "then": "Hier werden thailändische Gerichte serviert" } }, "question": "Was für Essen gibt es hier?", @@ -5539,6 +5539,30 @@ "1": { "then": "Dies ist ein Auditorium" }, + "2": { + "then": "Dies ist ein Schlafzimmer" + }, + "3": { + "then": "Dies ist eine Kapelle" + }, + "4": { + "then": "Dies ist ein Klassenzimmer" + }, + "5": { + "then": "Dies ist ein Klassenzimmer" + }, + "6": { + "then": "Dies ist ein Computerraum" + }, + "7": { + "then": "Dies ist ein Konferenzraum" + }, + "8": { + "then": "Dies ist eine Krypta" + }, + "9": { + "then": "Dies ist eine Küche" + }, "10": { "then": "Dies ist ein Labor" }, @@ -5569,9 +5593,6 @@ "19": { "then": "Dies ist ein Lagerraum" }, - "2": { - "then": "Dies ist ein Schlafzimmer" - }, "20": { "then": "Dies ist ein Technikraum" }, @@ -5580,27 +5601,6 @@ }, "22": { "then": "Dies ist ein Wartezimmer" - }, - "3": { - "then": "Dies ist eine Kapelle" - }, - "4": { - "then": "Dies ist ein Klassenzimmer" - }, - "5": { - "then": "Dies ist ein Klassenzimmer" - }, - "6": { - "then": "Dies ist ein Computerraum" - }, - "7": { - "then": "Dies ist ein Konferenzraum" - }, - "8": { - "then": "Dies ist eine Krypta" - }, - "9": { - "then": "Dies ist eine Küche" } }, "question": "Wie wird dieser Raum genutzt?" @@ -6246,19 +6246,6 @@ } } }, - "10": { - "options": { - "0": { - "question": "Alle Notizen" - }, - "1": { - "question": "Importnotizen ausblenden" - }, - "2": { - "question": "Nur Importnotizen anzeigen" - } - } - }, "2": { "options": { "0": { @@ -6314,6 +6301,19 @@ "question": "Nur offene Notizen anzeigen" } } + }, + "10": { + "options": { + "0": { + "question": "Alle Notizen" + }, + "1": { + "question": "Importnotizen ausblenden" + }, + "2": { + "question": "Nur Importnotizen anzeigen" + } + } } }, "name": "OpenStreetMap-Hinweise", @@ -6638,21 +6638,6 @@ "1": { "then": "Dies ist ein normaler Stellplatz." }, - "10": { - "then": "Dies ist ein Stellplatz, der für Eltern mit Kindern reserviert ist." - }, - "11": { - "then": "Dies ist ein Stellplatz, der für das Personal reserviert ist." - }, - "12": { - "then": "Dies ist ein Stellplatz, der für Taxis reserviert ist." - }, - "13": { - "then": "Dies ist ein Stellplatz, der für Fahrzeuge mit Anhänger reserviert ist." - }, - "14": { - "then": "Dies ist ein Stellplatz, der für Carsharing reserviert ist." - }, "2": { "then": "Dies ist ein Behindertenstellplatz." }, @@ -6676,6 +6661,21 @@ }, "9": { "then": "Dies ist ein Stellplatz, der für Motorräder reserviert ist." + }, + "10": { + "then": "Dies ist ein Stellplatz, der für Eltern mit Kindern reserviert ist." + }, + "11": { + "then": "Dies ist ein Stellplatz, der für das Personal reserviert ist." + }, + "12": { + "then": "Dies ist ein Stellplatz, der für Taxis reserviert ist." + }, + "13": { + "then": "Dies ist ein Stellplatz, der für Fahrzeuge mit Anhänger reserviert ist." + }, + "14": { + "then": "Dies ist ein Stellplatz, der für Carsharing reserviert ist." } }, "question": "Welche Art von Stellplatz ist dies?" @@ -7273,21 +7273,6 @@ "1": { "then": "2-Cent-Münzen werden akzeptiert" }, - "10": { - "then": "20-Centime-Münzen werden akzeptiert" - }, - "11": { - "then": "½-Schweizer Franken-Münzen werden akzeptiert" - }, - "12": { - "then": "1-Schweizer Franken-Münzen werden akzeptiert" - }, - "13": { - "then": "2-Schweizer Franken-Münzen werden akzeptiert" - }, - "14": { - "then": "5-Schweizer Franken-Münzen werden akzeptiert" - }, "2": { "then": "5-Cent-Münzen werden akzeptiert" }, @@ -7311,6 +7296,21 @@ }, "9": { "then": "10-Centime-Münzen werden akzeptiert" + }, + "10": { + "then": "20-Centime-Münzen werden akzeptiert" + }, + "11": { + "then": "½-Schweizer Franken-Münzen werden akzeptiert" + }, + "12": { + "then": "1-Schweizer Franken-Münzen werden akzeptiert" + }, + "13": { + "then": "2-Schweizer Franken-Münzen werden akzeptiert" + }, + "14": { + "then": "5-Schweizer Franken-Münzen werden akzeptiert" } }, "question": "Mit welchen Münzen kann man hier bezahlen?" @@ -7323,15 +7323,6 @@ "1": { "then": "10-Euro-Scheine werden angenommen" }, - "10": { - "then": "100-Schweizer Franken-Scheine werden akzeptiert" - }, - "11": { - "then": "200-Schweizer Franken-Scheine werden akzeptiert" - }, - "12": { - "then": "1000-Schweizer Franken-Scheine werden akzeptiert" - }, "2": { "then": "20-Euro-Scheine werden angenommen" }, @@ -7355,6 +7346,15 @@ }, "9": { "then": "50-Schweizer Franken-Scheine werden akzeptiert" + }, + "10": { + "then": "100-Schweizer Franken-Scheine werden akzeptiert" + }, + "11": { + "then": "200-Schweizer Franken-Scheine werden akzeptiert" + }, + "12": { + "then": "1000-Schweizer Franken-Scheine werden akzeptiert" } }, "question": "Mit welchen Banknoten kann man hier bezahlen?" @@ -7808,6 +7808,30 @@ "1": { "question": "Recycling von Batterien" }, + "2": { + "question": "Recycling von Getränkekartons" + }, + "3": { + "question": "Recycling von Dosen" + }, + "4": { + "question": "Recycling von Kleidung" + }, + "5": { + "question": "Recycling von Speiseöl" + }, + "6": { + "question": "Recycling von Motoröl" + }, + "7": { + "question": "Recycling von Leuchtstoffröhren" + }, + "8": { + "question": "Recycling von Grünabfällen" + }, + "9": { + "question": "Recycling von Glasflaschen" + }, "10": { "question": "Recycling von Glas" }, @@ -7838,35 +7862,11 @@ "19": { "question": "Recycling von Restabfällen" }, - "2": { - "question": "Recycling von Getränkekartons" - }, "20": { "question": "Recycling von Druckerpatronen" }, "21": { "question": "Recycling von Fahrrädern" - }, - "3": { - "question": "Recycling von Dosen" - }, - "4": { - "question": "Recycling von Kleidung" - }, - "5": { - "question": "Recycling von Speiseöl" - }, - "6": { - "question": "Recycling von Motoröl" - }, - "7": { - "question": "Recycling von Leuchtstoffröhren" - }, - "8": { - "question": "Recycling von Grünabfällen" - }, - "9": { - "question": "Recycling von Glasflaschen" } } }, @@ -7934,6 +7934,30 @@ "1": { "then": "Getränkekartons können hier recycelt werden" }, + "2": { + "then": "Dosen können hier recycelt werden" + }, + "3": { + "then": "Kleidung kann hier recycelt werden" + }, + "4": { + "then": "Speiseöl kann hier recycelt werden" + }, + "5": { + "then": "Motoröl kann hier recycelt werden" + }, + "6": { + "then": "Hier können Leuchtstoffröhren recycelt werden" + }, + "7": { + "then": "Grünabfälle können hier recycelt werden" + }, + "8": { + "then": "Bio-Abfall kann hier recycelt werden" + }, + "9": { + "then": "Glasflaschen können hier recycelt werden" + }, "10": { "then": "Glas kann hier recycelt werden" }, @@ -7964,9 +7988,6 @@ "19": { "then": "Schuhe können hier recycelt werden" }, - "2": { - "then": "Dosen können hier recycelt werden" - }, "20": { "then": "Elektrokleingeräte können hier recycelt werden" }, @@ -7981,27 +8002,6 @@ }, "24": { "then": "Fahrräder können hier recycelt werden" - }, - "3": { - "then": "Kleidung kann hier recycelt werden" - }, - "4": { - "then": "Speiseöl kann hier recycelt werden" - }, - "5": { - "then": "Motoröl kann hier recycelt werden" - }, - "6": { - "then": "Hier können Leuchtstoffröhren recycelt werden" - }, - "7": { - "then": "Grünabfälle können hier recycelt werden" - }, - "8": { - "then": "Bio-Abfall kann hier recycelt werden" - }, - "9": { - "then": "Glasflaschen können hier recycelt werden" } }, "question": "Was kann hier recycelt werden?" @@ -8944,12 +8944,6 @@ "1": { "then": "Diese Straßenlaterne verwendet LEDs" }, - "10": { - "then": "Diese Straßenlaterne verwendet Hochdruck-Natriumdampflampen (orange mit weiß)" - }, - "11": { - "then": "Diese Straßenlaterne wird mit Gas beleuchtet" - }, "2": { "then": "Diese Straßenlaterne verwendet Glühlampenlicht" }, @@ -8973,6 +8967,12 @@ }, "9": { "then": "Diese Straßenlaterne verwendet Niederdruck-Natriumdampflampen (einfarbig orange)" + }, + "10": { + "then": "Diese Straßenlaterne verwendet Hochdruck-Natriumdampflampen (orange mit weiß)" + }, + "11": { + "then": "Diese Straßenlaterne wird mit Gas beleuchtet" } }, "question": "Mit welcher Art von Beleuchtung arbeitet diese Straßenlaterne?" @@ -9924,6 +9924,23 @@ "render": "Baum" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "50-Cent-Münzen werden akzeptiert" + }, + "1": { + "then": "1-Euro-Münzen werden akzeptiert" + }, + "2": { + "then": "2-Euro-Münzen werden akzeptiert" + } + } + } + } + }, "unit": { "description": "Bibliotheksebene mit allen gängigen Einrichtungen. Einrichtungen können _nur_ aus dieser Datei importiert werden.", "units": { @@ -10240,6 +10257,30 @@ "1": { "question": "Verkauf von Getränken" }, + "2": { + "question": "Verkauf von Süßigkeiten" + }, + "3": { + "question": "Verkauf von Lebensmitteln" + }, + "4": { + "question": "Verkauf von Zigaretten" + }, + "5": { + "question": "Verkauf von Kondomen" + }, + "6": { + "question": "Verkauf von Kaffee" + }, + "7": { + "question": "Verkauf von Trinkwasser" + }, + "8": { + "question": "Verkauf von Zeitungen" + }, + "9": { + "question": "Verkauf von Fahrradschläuchen" + }, "10": { "question": "Verkauf von Milch" }, @@ -10270,9 +10311,6 @@ "19": { "question": "Verkauf von Blumen" }, - "2": { - "question": "Verkauf von Süßigkeiten" - }, "20": { "question": "Verkauf von Parkscheinen" }, @@ -10296,27 +10334,6 @@ }, "27": { "question": "Verkauf von Fahrradschlössern" - }, - "3": { - "question": "Verkauf von Lebensmitteln" - }, - "4": { - "question": "Verkauf von Zigaretten" - }, - "5": { - "question": "Verkauf von Kondomen" - }, - "6": { - "question": "Verkauf von Kaffee" - }, - "7": { - "question": "Verkauf von Trinkwasser" - }, - "8": { - "question": "Verkauf von Zeitungen" - }, - "9": { - "question": "Verkauf von Fahrradschläuchen" } } } @@ -10363,6 +10380,30 @@ "1": { "then": "Süßigkeiten werden verkauft" }, + "2": { + "then": "Lebensmittel werden verkauft" + }, + "3": { + "then": "Zigaretten werden verkauft" + }, + "4": { + "then": "Kondome werden verkauft" + }, + "5": { + "then": "Kaffee wird verkauft" + }, + "6": { + "then": "Trinkwasser wird verkauft" + }, + "7": { + "then": "Zeitungen werden verkauft" + }, + "8": { + "then": "Fahrradschläuche werden verkauft" + }, + "9": { + "then": "Milch wird verkauft" + }, "10": { "then": "Brot wird verkauft" }, @@ -10393,9 +10434,6 @@ "19": { "then": "Parkscheine werden verkauft" }, - "2": { - "then": "Lebensmittel werden verkauft" - }, "20": { "then": "Souvenirmünzen werden verkauft" }, @@ -10416,27 +10454,6 @@ }, "26": { "then": "Fahrradschlösser werden verkauft" - }, - "3": { - "then": "Zigaretten werden verkauft" - }, - "4": { - "then": "Kondome werden verkauft" - }, - "5": { - "then": "Kaffee wird verkauft" - }, - "6": { - "then": "Trinkwasser wird verkauft" - }, - "7": { - "then": "Zeitungen werden verkauft" - }, - "8": { - "then": "Fahrradschläuche werden verkauft" - }, - "9": { - "then": "Milch wird verkauft" } }, "question": "Was wird in diesem Automaten verkauft?", @@ -10728,4 +10745,4 @@ "render": "Windrad" } } -} +} \ No newline at end of file diff --git a/langs/layers/en.json b/langs/layers/en.json index 49bc5ddbe..ea92da272 100644 --- a/langs/layers/en.json +++ b/langs/layers/en.json @@ -258,6 +258,17 @@ "question": "How many people fit a single carriage?", "render": "{aerialway:occupancy} people fit a single carriage" }, + "oneway": { + "mappings": { + "0": { + "then": "This aerialway can only be taken to the top" + }, + "1": { + "then": "This aerialway can be taken in both directions" + } + }, + "question": "In what direction can this aerialway be taken?" + }, "type": { "mappings": { "0": { @@ -5101,6 +5112,11 @@ "ghost_bike-start_date": { "question": "When was this Ghost bike installed?", "render": "Placed on {start_date}" + }, + "wikidata": { + "render": { + "before": "

Wikipedia page about the deceased person

" + } } }, "title": { @@ -6108,6 +6124,18 @@ "render": "Memorial plaque" } }, + "mountain_rescue": { + "description": "A building where first aid responders store material and might be on watch", + "name": "Mountain rescue stations", + "presets": { + "0": { + "title": "a mountain rescue station" + } + }, + "title": { + "render": "Mountain rescue station" + } + }, "nature_reserve": { "description": "A nature reserve is an area where nature can take its course", "filter": { @@ -6685,6 +6713,9 @@ "mappings": { "0": { "then": "Disabled Parking Space" + }, + "1": { + "then": "Electric Vehicle Charging Parking Space" } }, "render": "Parking Space" @@ -9327,6 +9358,48 @@ } }, "tagRenderings": { + "gender_segregated": { + "mappings": { + "0": { + "then": "There is a separate, signposted area for men and women" + }, + "1": { + "then": "There is no separate, signposted area for men and women" + } + }, + "question": "Are these toilets gender-segregated?", + "questionHint": "Are there separate stalls or separate areas for men and women and are they signposted as such?" + }, + "menstrual_products": { + "mappings": { + "0": { + "then": "Free menstrual products are available to all visitors of these toilets" + }, + "1": { + "then": "Free menstrual products are available to some visitors of these toilets" + }, + "2": { + "then": "No free menstrual products are available here" + } + }, + "question": "Are free, menstrual products distributed here?", + "questionHint": "This is only about menstrual products that are free of charge. If e.g. a vending machine is available which charges for menstrual products, ignore it for this question." + }, + "menstrual_products_location": { + "mappings": { + "0": { + "then": "The free, menstrual products are located in the toilet for women" + }, + "1": { + "then": "The free, menstrual products are located in the toilet for men" + }, + "2": { + "then": "The free, menstrual products are located in the toilet for wheelchair users" + } + }, + "question": "Where are the free menstrual products located?", + "render": "The menstrual products are located in {toilets:menstrual_products:location}" + }, "opening_hours_24_7": { "override": { "question": "When are these toilets opened?" @@ -9924,6 +9997,78 @@ "render": "Tree" } }, + "trolley_bay": { + "description": "Find trolley bays for shopping trolleys.", + "name": "Trolley Bays", + "presets": { + "0": { + "description": "A trolley bay for parking shopping carts.", + "title": "a trolley bay" + } + }, + "tagRenderings": { + "cart_types": { + "mappings": { + "0": { + "then": "Trolleys with a magnifier are available" + }, + "1": { + "then": "Trolleys for wheelchair users are available" + }, + "2": { + "then": "Trolleys for children are available" + }, + "3": { + "then": "Trolleys with seats for children are available" + }, + "4": { + "then": "Trolleys with a flatbed are available" + }, + "5": { + "then": "Vertical trolleys for sheet-like goods are available" + } + }, + "question": "What kind of special trolleys are available?" + }, + "covered": { + "mappings": { + "0": { + "then": "This trolley bay is covered" + }, + "1": { + "then": "This trolley bay is not covered" + } + }, + "question": "Is this trolley bay covered?" + }, + "denominations": { + "mappings": { + "0": { + "then": "50 cent coins are accepted" + }, + "1": { + "then": "1 euro coins are accepted" + }, + "2": { + "then": "2 euro coins are accepted" + } + }, + "question": "What coins are accepted for the deposit?" + }, + "deposit": { + "mappings": { + "0": { + "then": "A deposit is required for the trolleys" + }, + "1": { + "then": "No deposit is required for the trolleys" + } + }, + "question": "Is a deposit (e.g. a coin) required for the trolleys?" + } + }, + "title": "Trolley Bay" + }, "unit": { "description": "Library layer with all common units. Units can _only_ be imported from this file.", "units": { diff --git a/langs/layers/es.json b/langs/layers/es.json index cdc3ed2af..1297516d2 100644 --- a/langs/layers/es.json +++ b/langs/layers/es.json @@ -35,16 +35,6 @@ "1": { "title": "un mupi" }, - "10": { - "description": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales", - "title": "un señal" - }, - "11": { - "title": "una escultura" - }, - "12": { - "title": "una pared pintada" - }, "2": { "title": "un mupi sobre la pared" }, @@ -71,6 +61,16 @@ }, "9": { "title": "un tótem" + }, + "10": { + "description": "Se utiliza para carteles publicitarios, letreros de neón, logotipos y carteles en entradas institucionales", + "title": "un señal" + }, + "11": { + "title": "una escultura" + }, + "12": { + "title": "una pared pintada" } }, "tagRenderings": { @@ -165,9 +165,6 @@ "1": { "then": "Esto es un tablón de anuncios" }, - "10": { - "then": "Esto es una pared pintada" - }, "2": { "then": "Esto es una columna" }, @@ -191,6 +188,9 @@ }, "9": { "then": "Esto es un tótem" + }, + "10": { + "then": "Esto es una pared pintada" } }, "question": "¿Qué tipo de elemento publicitario es?", @@ -205,9 +205,6 @@ "1": { "then": "Tablon de anuncios" }, - "10": { - "then": "Pared Pintada" - }, "2": { "then": "Mupi" }, @@ -231,6 +228,9 @@ }, "9": { "then": "Tótem" + }, + "10": { + "then": "Pared Pintada" } } } @@ -353,15 +353,6 @@ "1": { "then": "Mural" }, - "10": { - "then": "Azulejo (Baldosas decorativas Españolas y Portuguesas)" - }, - "11": { - "then": "Cerámica" - }, - "12": { - "then": "Tallado en madera" - }, "2": { "then": "Pintura" }, @@ -385,6 +376,15 @@ }, "9": { "then": "Relieve" + }, + "10": { + "then": "Azulejo (Baldosas decorativas Españolas y Portuguesas)" + }, + "11": { + "then": "Cerámica" + }, + "12": { + "then": "Tallado en madera" } }, "question": "¿Qué tipo de obra es esta pieza?", @@ -1952,12 +1952,6 @@ "1": { "then": "Este carril bici está pavimentado" }, - "10": { - "then": "Este carril bici está hecho de gravilla" - }, - "12": { - "then": "Este carril bici está hecho de tierra natural" - }, "2": { "then": "Este carril bici está hecho de asfalto" }, @@ -1972,6 +1966,12 @@ }, "9": { "then": "Este carril bici está hecho de grava" + }, + "10": { + "then": "Este carril bici está hecho de gravilla" + }, + "12": { + "then": "Este carril bici está hecho de tierra natural" } }, "question": "¿De qué superficie está hecho este carril bici?", @@ -2017,9 +2017,6 @@ "1": { "then": "Este carril bici está pavimentado" }, - "10": { - "then": "Este carril bici está hecho de gravilla" - }, "2": { "then": "Este carril bici está hecho de asfalto" }, @@ -2031,6 +2028,9 @@ }, "9": { "then": "Este carril bici está hecho de grava" + }, + "10": { + "then": "Este carril bici está hecho de gravilla" } }, "question": "¿De qué esta hecha la superficie de esta calle?", @@ -2672,18 +2672,6 @@ "0": { "then": "Esto es una pizzería" }, - "10": { - "then": "Aquí se sirven platos Chinos" - }, - "11": { - "then": "Aquí se sirven platos Griegos" - }, - "12": { - "then": "Aquí se sirven platos Indios" - }, - "13": { - "then": "Aquí se sirven platos Turcos" - }, "2": { "then": "Principalmente sirve pasta" }, @@ -2704,6 +2692,18 @@ }, "9": { "then": "Aquí se sirven platos Franceses" + }, + "10": { + "then": "Aquí se sirven platos Chinos" + }, + "11": { + "then": "Aquí se sirven platos Griegos" + }, + "12": { + "then": "Aquí se sirven platos Indios" + }, + "13": { + "then": "Aquí se sirven platos Turcos" } }, "question": "¿Qué tipo de comida sirven aquí?", @@ -3095,19 +3095,6 @@ } } }, - "10": { - "options": { - "0": { - "question": "Todas las notas" - }, - "1": { - "question": "Ocultar las notas de importación" - }, - "2": { - "question": "Solo mostrar las notas de importación" - } - } - }, "2": { "options": { "0": { @@ -3163,6 +3150,19 @@ "question": "Solo mostrar las notas abiertas" } } + }, + "10": { + "options": { + "0": { + "question": "Todas las notas" + }, + "1": { + "question": "Ocultar las notas de importación" + }, + "2": { + "question": "Solo mostrar las notas de importación" + } + } } }, "name": "Notas de OpenStreetMap", @@ -3772,6 +3772,24 @@ "1": { "question": "Reciclaje de baterías" }, + "3": { + "question": "Reciclaje de latas" + }, + "4": { + "question": "Reciclaje de ropa" + }, + "5": { + "question": "Reciclaje de aceite de cocina" + }, + "6": { + "question": "Reciclaje de aceite de motor" + }, + "8": { + "question": "Reciclaje de residuos orgánicos" + }, + "9": { + "question": "Reciclaje de botellas de cristal" + }, "10": { "question": "Reciclaje de cristal" }, @@ -3798,24 +3816,6 @@ }, "18": { "question": "Reciclaje de pequeños electrodomésticos" - }, - "3": { - "question": "Reciclaje de latas" - }, - "4": { - "question": "Reciclaje de ropa" - }, - "5": { - "question": "Reciclaje de aceite de cocina" - }, - "6": { - "question": "Reciclaje de aceite de motor" - }, - "8": { - "question": "Reciclaje de residuos orgánicos" - }, - "9": { - "question": "Reciclaje de botellas de cristal" } } } @@ -3858,6 +3858,27 @@ "0": { "then": "Aquí se pueden reciclar baterías" }, + "2": { + "then": "Aquí se pueden reciclar latas" + }, + "3": { + "then": "Aquí se puede reciclar ropa" + }, + "4": { + "then": "Aquí se puede reciclar aceite de cocina" + }, + "5": { + "then": "Aquí se puede reciclar aceite de motor" + }, + "7": { + "then": "Los residuos orgánicos pueden reciclarse aquí" + }, + "8": { + "then": "Aquí se pueden reciclar residuos orgánicos" + }, + "9": { + "then": "Aquí se pueden reciclar botellas de cristal" + }, "10": { "then": "Aquí se puede reciclar cristal" }, @@ -3884,27 +3905,6 @@ }, "19": { "then": "El calzado se puede reciclar aquí" - }, - "2": { - "then": "Aquí se pueden reciclar latas" - }, - "3": { - "then": "Aquí se puede reciclar ropa" - }, - "4": { - "then": "Aquí se puede reciclar aceite de cocina" - }, - "5": { - "then": "Aquí se puede reciclar aceite de motor" - }, - "7": { - "then": "Los residuos orgánicos pueden reciclarse aquí" - }, - "8": { - "then": "Aquí se pueden reciclar residuos orgánicos" - }, - "9": { - "then": "Aquí se pueden reciclar botellas de cristal" } }, "question": "¿Qué se puede reciclar aquí?" @@ -4225,12 +4225,6 @@ "1": { "then": "Esta lámpara utiliza LEDs" }, - "10": { - "then": "Esta lámpara utiliza lámparas de sodio de alta presión (naranja con blanco)" - }, - "11": { - "then": "Esta lampara se ilumina con gas" - }, "2": { "then": "Esta lámpara utiliza iluminación incandescente" }, @@ -4251,6 +4245,12 @@ }, "9": { "then": "Esta lámpara utiliza lámparas de sodio de baja presión (naranja monocromo)" + }, + "10": { + "then": "Esta lámpara utiliza lámparas de sodio de alta presión (naranja con blanco)" + }, + "11": { + "then": "Esta lampara se ilumina con gas" } }, "question": "¿Qué tipo de iluminación utiliza esta lámpara?" @@ -4712,6 +4712,23 @@ "render": "Árbol" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "Se aceptan monedas de 50 céntimos" + }, + "1": { + "then": "Se aceptan monedas de 1 euro" + }, + "2": { + "then": "Se aceptan monedas de 2 euros" + } + } + } + } + }, "unit": { "units": { "3": { @@ -4848,4 +4865,4 @@ } } } -} +} \ No newline at end of file diff --git a/langs/layers/fr.json b/langs/layers/fr.json index 8774d006b..d9c150f98 100644 --- a/langs/layers/fr.json +++ b/langs/layers/fr.json @@ -6278,6 +6278,23 @@ "render": "Arbre" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "Les pièces de 50 cents sont acceptées" + }, + "1": { + "then": "Les pièces de 1 euro sont acceptées" + }, + "2": { + "then": "Les pièces de 2 euros sont acceptées" + } + } + } + } + }, "unit": { "units": { "0": { diff --git a/langs/layers/id.json b/langs/layers/id.json index 460c5a17e..5daff07d9 100644 --- a/langs/layers/id.json +++ b/langs/layers/id.json @@ -54,9 +54,6 @@ "1": { "then": "Mural" }, - "10": { - "then": "Azulejo (ubin dekoratif Spanyol)" - }, "2": { "then": "Lukisan" }, @@ -74,6 +71,9 @@ }, "9": { "then": "Relief" + }, + "10": { + "then": "Azulejo (ubin dekoratif Spanyol)" } }, "question": "Apa jenis karya seni ini?", @@ -191,15 +191,6 @@ "1": { "then": "Jalur sepeda ini diaspal" }, - "10": { - "then": "Jalur sepeda ini terbuat dari kerikil halus" - }, - "11": { - "then": "Jalur sepeda ini terbuat dari batu kerikil" - }, - "12": { - "then": "Jalur sepeda ini terbuat dari tanah alami" - }, "2": { "then": "Jalur sepeda ini terbuat dari aspal" }, @@ -220,6 +211,15 @@ }, "9": { "then": "Jalur sepeda ini terbuat dari kerikil" + }, + "10": { + "then": "Jalur sepeda ini terbuat dari kerikil halus" + }, + "11": { + "then": "Jalur sepeda ini terbuat dari batu kerikil" + }, + "12": { + "then": "Jalur sepeda ini terbuat dari tanah alami" } }, "question": "Permukaan jalannya terbuat dari apa?", @@ -733,6 +733,17 @@ } } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "Koin 50 sen diterima" + } + } + } + } + }, "unit": { "units": { "0": { @@ -931,4 +942,4 @@ "render": "turbin angin" } } -} +} \ No newline at end of file diff --git a/langs/layers/it.json b/langs/layers/it.json index 2a02502f0..4b1201ce9 100644 --- a/langs/layers/it.json +++ b/langs/layers/it.json @@ -35,16 +35,6 @@ "1": { "title": "un cartellone pubblicitario fissato a terra" }, - "10": { - "description": "Utilizzato per insegna pubblicitaria, un'insegna al neon, i loghi o le indicazioni d'entrata", - "title": "un'insegna" - }, - "11": { - "title": "una scultura" - }, - "12": { - "title": "un murales" - }, "2": { "title": "un cartellone pubblicitario fissato al muro" }, @@ -71,6 +61,16 @@ }, "9": { "title": "un totem" + }, + "10": { + "description": "Utilizzato per insegna pubblicitaria, un'insegna al neon, i loghi o le indicazioni d'entrata", + "title": "un'insegna" + }, + "11": { + "title": "una scultura" + }, + "12": { + "title": "un murales" } }, "tagRenderings": { @@ -153,15 +153,6 @@ "1": { "then": "Murale" }, - "10": { - "then": "Azulejo (ornamento decorativo piastrellato spagnolo)" - }, - "11": { - "then": "Mosaico di piastrelle" - }, - "12": { - "then": "Scultura in legno" - }, "2": { "then": "Dipinto" }, @@ -185,6 +176,15 @@ }, "9": { "then": "Rilievo" + }, + "10": { + "then": "Azulejo (ornamento decorativo piastrellato spagnolo)" + }, + "11": { + "then": "Mosaico di piastrelle" + }, + "12": { + "then": "Scultura in legno" } }, "question": "Che tipo di opera d’arte è questo?", @@ -2129,6 +2129,27 @@ "1": { "question": "Riciclo di batterie" }, + "2": { + "question": "Riciclo di confezioni per bevande" + }, + "3": { + "question": "Riciclo di lattine" + }, + "4": { + "question": "Riciclo di abiti" + }, + "5": { + "question": "Riciclo di olio da cucina" + }, + "6": { + "question": "Riciclo di olio da motore" + }, + "8": { + "question": "Riciclo di umido" + }, + "9": { + "question": "Riciclo di bottiglie di vetro" + }, "10": { "question": "Riciclo di vetro" }, @@ -2156,29 +2177,8 @@ "19": { "question": "Riciclo di secco" }, - "2": { - "question": "Riciclo di confezioni per bevande" - }, "20": { "question": "Riciclo di secco" - }, - "3": { - "question": "Riciclo di lattine" - }, - "4": { - "question": "Riciclo di abiti" - }, - "5": { - "question": "Riciclo di olio da cucina" - }, - "6": { - "question": "Riciclo di olio da motore" - }, - "8": { - "question": "Riciclo di umido" - }, - "9": { - "question": "Riciclo di bottiglie di vetro" } } }, @@ -2231,6 +2231,27 @@ "1": { "then": "Cartoni per bevande" }, + "2": { + "then": "Lattine" + }, + "3": { + "then": "Abiti" + }, + "4": { + "then": "Olio da cucina" + }, + "5": { + "then": "Olio di motore" + }, + "7": { + "then": "Verde" + }, + "8": { + "then": "Umido" + }, + "9": { + "then": "Bottiglie di vetro" + }, "10": { "then": "Vetro" }, @@ -2255,9 +2276,6 @@ "19": { "then": "Scarpe" }, - "2": { - "then": "Lattine" - }, "20": { "then": "Piccoli elettrodomestici" }, @@ -2269,24 +2287,6 @@ }, "23": { "then": "Secco" - }, - "3": { - "then": "Abiti" - }, - "4": { - "then": "Olio da cucina" - }, - "5": { - "then": "Olio di motore" - }, - "7": { - "then": "Verde" - }, - "8": { - "then": "Umido" - }, - "9": { - "then": "Bottiglie di vetro" } }, "question": "Cosa si può riciclare qui?" @@ -3087,4 +3087,4 @@ "render": "pala eolica" } } -} +} \ No newline at end of file diff --git a/langs/layers/nb_NO.json b/langs/layers/nb_NO.json index 2d3e6f05d..5d33f4964 100644 --- a/langs/layers/nb_NO.json +++ b/langs/layers/nb_NO.json @@ -802,6 +802,23 @@ } } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "50-cent mynter aksepteres" + }, + "1": { + "then": "1-euro mynter aksepteres" + }, + "2": { + "then": "2-euro mynter aksepteres" + } + } + } + } + }, "unit": { "units": { "0": { diff --git a/langs/layers/nl.json b/langs/layers/nl.json index c61361831..3ce4a8ad4 100644 --- a/langs/layers/nl.json +++ b/langs/layers/nl.json @@ -5770,6 +5770,9 @@ "mappings": { "0": { "then": "Parkeerplek voor gehandicapten" + }, + "1": { + "then": "Parkeerplek voor opladen van elektrische voertuigen" } }, "render": "Parkeerplek" @@ -7954,6 +7957,48 @@ } }, "tagRenderings": { + "gender_segregated": { + "mappings": { + "0": { + "then": "Er zijn aparte ruimtes of toiletten voor mannen en vrouwen" + }, + "1": { + "then": "Mannen en vrouwen gebruiken dezelfde ruimtes en toiletten" + } + }, + "question": "Zijn deze toiletten gescheiden op basis van geslacht?", + "questionHint": "Is er een aparte ruimte voor mannen en vrouwen en zijn deze ruimtes ook expliciet aangegeven?" + }, + "menstrual_products": { + "mappings": { + "0": { + "then": "Er zijn gratis menstruatieprocten beschikbaar voor alle bezoekers van deze toiletten" + }, + "1": { + "then": "De gratis menstruatieproducten zijn enkel beschikbaar in een deel van de toiletten" + }, + "2": { + "then": "Er zijn geen gratis menstruatieproducten beschikbaar" + } + }, + "question": "Zijn er gratis menstruatieproducten beschikbaar?", + "questionHint": "Dit gaat enkel over menstruatieproducten die gratis geschikbaar zijn. Indien er bv. een verkoopautomaat met menstruatieproducten is, negeer deze dan" + }, + "menstrual_products_location": { + "mappings": { + "0": { + "then": "De gratis menstruatieproducten bevinden zich in het vrouwentoilet" + }, + "1": { + "then": "De gratis menstruatieproducten bevinden zich in het mannentoilet" + }, + "2": { + "then": "De gratis menstruatieproducten bevinden zich in het rolstoeltoegankelijke toilet" + } + }, + "question": "Waar bevinden de gratis menstruatieproducten zich?", + "render": "De menstruatieproducten bevinden zich in {toilets:menstrual_products:location}" + }, "opening_hours_24_7": { "override": { "question": "Wanneer zijn deze toiletten open?" @@ -8499,6 +8544,23 @@ "render": "Boom" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "Munten van 50 cent worden geaccepteerd" + }, + "1": { + "then": "Munten van 1 euro worden geaccepteerd" + }, + "2": { + "then": "Munten van 2 euro worden geaccepteerd" + } + } + } + } + }, "unit": { "units": { "0": { diff --git a/langs/layers/pl.json b/langs/layers/pl.json index 7b9258b57..d2b1fc38a 100644 --- a/langs/layers/pl.json +++ b/langs/layers/pl.json @@ -2633,6 +2633,23 @@ "render": "Szkoła {name}" } }, + "trolley_bay": { + "tagRenderings": { + "denominations": { + "mappings": { + "0": { + "then": "Akceptowane są monety 50-centowe" + }, + "1": { + "then": "Akceptowane są monety 1 euro" + }, + "2": { + "then": "Akceptowane są monety 2 euro" + } + } + } + } + }, "unit": { "units": { "3": { diff --git a/langs/themes/de.json b/langs/themes/de.json index f5ac20371..a21471ea5 100644 --- a/langs/themes/de.json +++ b/langs/themes/de.json @@ -922,13 +922,6 @@ } } }, - "10": { - "options": { - "0": { - "question": "Etymologie-Thema ausschließen" - } - } - }, "2": { "options": { "0": { @@ -984,6 +977,13 @@ "question": "GRB-Thema ausschließen" } } + }, + "10": { + "options": { + "0": { + "question": "Etymologie-Thema ausschließen" + } + } } }, "name": "Zentrum der Änderungssätze", @@ -1060,33 +1060,6 @@ "onwheels": { "description": "Auf dieser Karte können Sie öffentlich zugängliche Orte für Rollstuhlfahrer ansehen, bearbeiten oder hinzufügen", "layers": { - "19": { - "override": { - "=title": { - "render": "Statistik" - } - } - }, - "20": { - "override": { - "+tagRenderings": { - "0": { - "render": { - "special": { - "text": "Import" - } - } - }, - "1": { - "render": { - "special": { - "message": "Alle vorgeschlagenen Tags hinzufügen" - } - } - } - } - } - }, "4": { "override": { "filter": { @@ -1129,6 +1102,33 @@ "override": { "name": "Barrierefreie Parkplätze" } + }, + "19": { + "override": { + "=title": { + "render": "Statistik" + } + } + }, + "20": { + "override": { + "+tagRenderings": { + "0": { + "render": { + "special": { + "text": "Import" + } + } + }, + "1": { + "render": { + "special": { + "message": "Alle vorgeschlagenen Tags hinzufügen" + } + } + } + } + } } }, "title": "Auf Rädern" @@ -1344,6 +1344,10 @@ "stations": { "description": "Bahnhofsdetails ansehen, bearbeiten und hinzufügen", "layers": { + "3": { + "description": "Ebene mit Bahnhöfen", + "name": "Bahnhöfe" + }, "16": { "description": "Anzeigen der Züge, die von diesem Bahnhof abfahren", "name": "Abfahrtstafeln", @@ -1375,10 +1379,6 @@ "title": { "render": "Abfahrtstafel" } - }, - "3": { - "description": "Ebene mit Bahnhöfen", - "name": "Bahnhöfe" } }, "title": "Bahnhöfe" @@ -1557,4 +1557,4 @@ "shortDescription": "Eine Karte mit Abfalleimern", "title": "Abfalleimer" } -} +} \ No newline at end of file diff --git a/langs/themes/es.json b/langs/themes/es.json index 7765ac809..f51952eb7 100644 --- a/langs/themes/es.json +++ b/langs/themes/es.json @@ -922,13 +922,6 @@ } } }, - "10": { - "options": { - "0": { - "question": "Excluir el tema de la etimología" - } - } - }, "2": { "options": { "0": { @@ -984,6 +977,13 @@ "question": "Excluir el tema del GRB" } } + }, + "10": { + "options": { + "0": { + "question": "Excluir el tema de la etimología" + } + } } }, "name": "Centro del conjunto de cambios", @@ -1060,33 +1060,6 @@ "onwheels": { "description": "En este mapa se muestran los lugares accesibles al público en silla de ruedas, que pueden añadirse fácilmente", "layers": { - "19": { - "override": { - "=title": { - "render": "Estadísticas" - } - } - }, - "20": { - "override": { - "+tagRenderings": { - "0": { - "render": { - "special": { - "text": "Importar" - } - } - }, - "1": { - "render": { - "special": { - "message": "Añadir todas las etiquetas sugeridas" - } - } - } - } - } - }, "4": { "override": { "filter": { @@ -1129,6 +1102,33 @@ "override": { "name": "Plazas de aparcamiento para discapacitados" } + }, + "19": { + "override": { + "=title": { + "render": "Estadísticas" + } + } + }, + "20": { + "override": { + "+tagRenderings": { + "0": { + "render": { + "special": { + "text": "Importar" + } + } + }, + "1": { + "render": { + "special": { + "message": "Añadir todas las etiquetas sugeridas" + } + } + } + } + } } }, "title": "Sobre ruedas" @@ -1344,6 +1344,10 @@ "stations": { "description": "Ver, editar y añadir detalles a una estación de tren", "layers": { + "3": { + "description": "Capa que muestra las estaciones de tren", + "name": "Estación de Tren" + }, "16": { "description": "Pantallas que muestran los trenes que saldrán de esta estación", "name": "Tableros de salidas", @@ -1375,10 +1379,6 @@ "title": { "render": "Tablero de salidas" } - }, - "3": { - "description": "Capa que muestra las estaciones de tren", - "name": "Estación de Tren" } }, "title": "Estaciones de tren" @@ -1557,4 +1557,4 @@ "shortDescription": "Un mapa con papeleras", "title": "Papeleras" } -} +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 45b19f1fb..3117a6888 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "mapcomplete", - "version": "0.37.0", + "version": "0.38.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "mapcomplete", - "version": "0.37.0", + "version": "0.38.0", "license": "GPL-3.0-or-later", "dependencies": { "@rgossiaux/svelte-headlessui": "^1.0.2", @@ -5343,9 +5343,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001579", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001579.tgz", - "integrity": "sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==", + "version": "1.0.30001588", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", + "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", "dev": true, "funding": [ { @@ -17656,9 +17656,9 @@ "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==" }, "caniuse-lite": { - "version": "1.0.30001579", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001579.tgz", - "integrity": "sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==", + "version": "1.0.30001588", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001588.tgz", + "integrity": "sha512-+hVY9jE44uKLkH0SrUTqxjxqNTOWHsbnQDIKjwkZ3lNTzUUVdBLBGXtj/q5Mp5u98r3droaZAewQuEDzjQdZlQ==", "dev": true }, "canvg": { diff --git a/scripts/fixSchemas.ts b/scripts/fixSchemas.ts index 8d26dc720..be59de023 100644 --- a/scripts/fixSchemas.ts +++ b/scripts/fixSchemas.ts @@ -205,7 +205,7 @@ function extractHintsFrom( layers: AllSharedLayers.sharedLayers, themes: AllKnownLayouts.allKnownLayouts, validators: Validators, - Constants: Constants + Constants: Constants, }) } return hints diff --git a/scripts/generateLayouts.ts b/scripts/generateLayouts.ts index 9c2bfe8aa..7242d3888 100644 --- a/scripts/generateLayouts.ts +++ b/scripts/generateLayouts.ts @@ -289,15 +289,21 @@ async function generateCsp( apiUrls.push(...(sv.needsUrls ?? [])) }) - const usedSpecialVisualisations = [].concat(...layoutJson.layers.map(l => ValidationUtils.getAllSpecialVisualisations( (l).tagRenderings ?? []))) + const usedSpecialVisualisations = [].concat( + ...layoutJson.layers.map((l) => + ValidationUtils.getAllSpecialVisualisations( + (l).tagRenderings ?? [] + ) + ) + ) for (const usedSpecialVisualisation of usedSpecialVisualisations) { if (typeof usedSpecialVisualisation === "string") { continue } const neededUrls = usedSpecialVisualisation.func.needsUrls ?? [] if (typeof neededUrls === "function") { - let needed: string | string[] = neededUrls(usedSpecialVisualisation.args) - if(typeof needed === "string"){ + let needed: string | string[] = neededUrls(usedSpecialVisualisation.args) + if (typeof needed === "string") { needed = [needed] } apiUrls.push(...needed) @@ -317,8 +323,8 @@ async function generateCsp( continue } try { - if(!connectSource.startsWith("http")){ - connectSource = "https://"+connectSource + if (!connectSource.startsWith("http")) { + connectSource = "https://" + connectSource } const url = new URL(connectSource) hosts.add("https://" + url.host) @@ -349,7 +355,7 @@ async function generateCsp( "default-src": "'self'", "child-src": "'self' blob: ", "img-src": "* data:", // maplibre depends on 'data:' to load - "connect-src": "'self' "+connectSrc.join(" "), + "connect-src": "'self' " + connectSrc.join(" "), "report-to": "https://report.mapcomplete.org/csp", "worker-src": "'self' blob:", // Vite somehow loads the worker via a 'blob' "style-src": "'self' 'unsafe-inline'", // unsafe-inline is needed to change the default background pin colours diff --git a/scripts/velopark/compare.ts b/scripts/velopark/compare.ts index 4bab31dc4..c6dde281d 100644 --- a/scripts/velopark/compare.ts +++ b/scripts/velopark/compare.ts @@ -5,45 +5,60 @@ import { GeoOperations } from "../../src/Logic/GeoOperations" import * as os from "os" // vite-node scripts/velopark/compare.ts -- scripts/velopark/velopark_all_2024-02-14T12\:18\:41.772Z.geojson ~/Projecten/OSM/Fietsberaad/2024-02-02\ Fietsenstallingen_OSM_met_velopark_ref.geojson class Compare extends Script { - - compare(veloId: string, osmParking: Feature, veloParking: Feature): {distance: number, ref: string, osmid: string, diffs: { - osm: string, velopark: string, key: string - }[] }{ + compare( + veloId: string, + osmParking: Feature, + veloParking: Feature + ): { + distance: number + ref: string + osmid: string + diffs: { + osm: string + velopark: string + key: string + }[] + } { const osmCenterpoint = GeoOperations.centerpointCoordinates(osmParking) const veloparkCenterpoint = GeoOperations.centerpointCoordinates(veloParking) - const distance = Math.round(GeoOperations.distanceBetween(osmCenterpoint, veloparkCenterpoint)) - const diffs: { osm: string, velopark: string, key: string}[] = [] + const distance = Math.round( + GeoOperations.distanceBetween(osmCenterpoint, veloparkCenterpoint) + ) + const diffs: { osm: string; velopark: string; key: string }[] = [] - const allKeys = new Set(Object.keys(osmParking.properties).concat(Object.keys(veloParking.properties))) + const allKeys = new Set( + Object.keys(osmParking.properties).concat(Object.keys(veloParking.properties)) + ) for (const key of allKeys) { - if(osmParking.properties[key] === veloParking.properties[key]){ + if (osmParking.properties[key] === veloParking.properties[key]) { continue } - if(Number(osmParking.properties[key]) === veloParking.properties[key]){ + if (Number(osmParking.properties[key]) === veloParking.properties[key]) { continue } - if(veloParking.properties[key] === undefined){ + if (veloParking.properties[key] === undefined) { continue } diffs.push({ key, osm: osmParking.properties[key], - velopark: veloParking.properties[key] + velopark: veloParking.properties[key], }) } return { ref: veloId, osmid: osmParking.properties["@id"], - distance, diffs + distance, + diffs, } } async main(args: string[]): Promise { let [velopark, osm, key] = args key ??= "ref:velopark" const veloparkData: FeatureCollection = JSON.parse(fs.readFileSync(velopark, "utf-8")) - const osmData : FeatureCollection = JSON.parse(fs.readFileSync(osm, "utf-8")) + const osmData: FeatureCollection = JSON.parse(fs.readFileSync(osm, "utf-8")) - const veloparkById : Record = {} + const veloparkById: Record = {} for (const parking of veloparkData.features) { veloparkById[parking.properties[key]] = parking } @@ -52,21 +67,20 @@ class Compare extends Script { for (const parking of osmData.features) { const veloId = parking.properties[key] const veloparking = veloparkById[veloId] - if(veloparking === undefined){ + if (veloparking === undefined) { console.error("No velopark entry found for", veloId) continue } - diffs.push(this.compare(veloId, parking, veloparking)) + diffs.push(this.compare(veloId, parking, veloparking)) } - fs.writeFileSync("report_diff.json",JSON.stringify(diffs)) - - + fs.writeFileSync("report_diff.json", JSON.stringify(diffs)) } constructor() { - super("Compares a velopark geojson with OSM geojson. Usage: `compare velopark.geojson osm.geojson [key-to-compare-on]`. If key-to-compare-on is not given, `ref:velopark` will be used") + super( + "Compares a velopark geojson with OSM geojson. Usage: `compare velopark.geojson osm.geojson [key-to-compare-on]`. If key-to-compare-on is not given, `ref:velopark` will be used" + ) } - } new Compare().run() diff --git a/scripts/velopark/veloParkToGeojson.ts b/scripts/velopark/veloParkToGeojson.ts index dcd200a32..6e7a5582c 100644 --- a/scripts/velopark/veloParkToGeojson.ts +++ b/scripts/velopark/veloParkToGeojson.ts @@ -15,9 +15,9 @@ class VeloParkToGeojson extends Script { ) } - exportTo(filename: string, features){ + exportTo(filename: string, features) { fs.writeFileSync( - filename+"_" + new Date().toISOString() + ".geojson", + filename + "_" + new Date().toISOString() + ".geojson", JSON.stringify( { type: "FeatureCollection", @@ -60,7 +60,7 @@ class VeloParkToGeojson extends Script { for (const feature of features) { Object.keys(feature.properties).forEach((k) => allProperties.add(k)) } - this.exportTo("velopark_noncynced",features) + this.exportTo("velopark_noncynced", features) allProperties.delete("ref:velopark") for (const feature of features) { allProperties.forEach((k) => { diff --git a/src/Logic/FeatureSource/Sources/LayoutSource.ts b/src/Logic/FeatureSource/Sources/LayoutSource.ts index 87546015d..c9377cfca 100644 --- a/src/Logic/FeatureSource/Sources/LayoutSource.ts +++ b/src/Logic/FeatureSource/Sources/LayoutSource.ts @@ -45,12 +45,7 @@ export default class LayoutSource extends FeatureSourceMerger { }) ) - const overpassSource = LayoutSource.setupOverpass( - osmLayers, - bounds, - zoom, - featureSwitches - ) + const overpassSource = LayoutSource.setupOverpass(osmLayers, bounds, zoom, featureSwitches) const osmApiSource = LayoutSource.setupOsmApiSource( osmLayers, diff --git a/src/Logic/GeoOperations.ts b/src/Logic/GeoOperations.ts index 44d65b2ea..5d4a16797 100644 --- a/src/Logic/GeoOperations.ts +++ b/src/Logic/GeoOperations.ts @@ -156,7 +156,7 @@ export class GeoOperations { const intersection = GeoOperations.calculateIntersection( feature, otherFeature, - featureBBox, + featureBBox ) if (intersection === null) { continue @@ -195,7 +195,7 @@ export class GeoOperations { console.error( "Could not correctly calculate the overlap of ", feature, - ": unsupported type", + ": unsupported type" ) return result } @@ -224,7 +224,7 @@ export class GeoOperations { */ public static inside( pointCoordinate: [number, number] | Feature, - feature: Feature, + feature: Feature ): boolean { // ray-casting algorithm based on // http://www.ecse.rpi.edu/Homepages/wrf/Research/Short_Notes/pnpoly.html @@ -302,7 +302,7 @@ export class GeoOperations { */ public static nearestPoint( way: Feature, - point: [number, number], + point: [number, number] ): Feature< Point, { @@ -324,11 +324,11 @@ export class GeoOperations { public static forceLineString(way: Feature): Feature public static forceLineString( - way: Feature, + way: Feature ): Feature public static forceLineString( - way: Feature, + way: Feature ): Feature { if (way.geometry.type === "Polygon") { way = { ...way } @@ -345,9 +345,12 @@ export class GeoOperations { return way } - public static toCSV(features: Feature[] | FeatureCollection, options?: { - ignoreTags?: RegExp - }): string { + public static toCSV( + features: Feature[] | FeatureCollection, + options?: { + ignoreTags?: RegExp + } + ): string { const headerValuesSeen = new Set() const headerValuesOrdered: string[] = [] @@ -455,7 +458,7 @@ export class GeoOperations { */ public static LineIntersections( feature: Feature, - otherFeature: Feature, + otherFeature: Feature ): [number, number][] { return turf .lineIntersect(feature, otherFeature) @@ -492,7 +495,7 @@ export class GeoOperations { locations: | Feature | Feature[], - title?: string, + title?: string ) { title = title?.trim() if (title === undefined || title === "") { @@ -513,7 +516,7 @@ export class GeoOperations { type: "Point", coordinates: p, }, - }, + } ) } for (const l of locationsWithMeta) { @@ -528,7 +531,7 @@ export class GeoOperations { trackPoints.push(trkpt) } const header = - "" + '' return ( header + "\n" + @@ -546,7 +549,7 @@ export class GeoOperations { */ public static toGpxPoints( locations: Feature[], - title?: string, + title?: string ) { title = title?.trim() if (title === undefined || title === "") { @@ -567,7 +570,7 @@ export class GeoOperations { trackPoints.push(trkpt) } const header = - "" + '' return ( header + "\n" + @@ -655,7 +658,7 @@ export class GeoOperations { }, }, distanceMeter, - { units: "meters" }, + { units: "meters" } ).geometry.coordinates } @@ -690,7 +693,7 @@ export class GeoOperations { */ static completelyWithin( feature: Feature, - possiblyEnclosingFeature: Feature, + possiblyEnclosingFeature: Feature ): boolean { return booleanWithin(feature, possiblyEnclosingFeature) } @@ -746,7 +749,14 @@ export class GeoOperations { */ public static featureToCoordinateWithRenderingType( feature: Feature, - location: "point" | "centroid" | "start" | "end" | "projected_centerpoint" | "polygon_centerpoint" | string, + location: + | "point" + | "centroid" + | "start" + | "end" + | "projected_centerpoint" + | "polygon_centerpoint" + | string ): [number, number] | undefined { switch (location) { case "point": @@ -772,7 +782,7 @@ export class GeoOperations { const centerpoint = GeoOperations.centerpointCoordinates(feature) const projected = GeoOperations.nearestPoint( >feature, - centerpoint, + centerpoint ) return <[number, number]>projected.geometry.coordinates } @@ -949,7 +959,7 @@ export class GeoOperations { * GeoOperations.bearingToHuman(46) // => "NE" */ public static bearingToHuman( - bearing: number, + bearing: number ): "N" | "NE" | "E" | "SE" | "S" | "SW" | "W" | "NW" { while (bearing < 0) { bearing += 360 @@ -975,7 +985,7 @@ export class GeoOperations { * */ public static bearingToHumanRelative( - bearing: number, + bearing: number ): | "straight" | "slight_right" @@ -1000,12 +1010,12 @@ export class GeoOperations { private static pointInPolygonCoordinates( x: number, y: number, - coordinates: [number, number][][], + coordinates: [number, number][][] ): boolean { const inside = GeoOperations.pointWithinRing( x, y, - /*This is the outer ring of the polygon */ coordinates[0], + /*This is the outer ring of the polygon */ coordinates[0] ) if (!inside) { return false @@ -1014,7 +1024,7 @@ export class GeoOperations { const inHole = GeoOperations.pointWithinRing( x, y, - coordinates[i], /* These are inner rings, aka holes*/ + coordinates[i] /* These are inner rings, aka holes*/ ) if (inHole) { return false @@ -1052,7 +1062,7 @@ export class GeoOperations { feature, otherFeature, featureBBox: BBox, - otherFeatureBBox?: BBox, + otherFeatureBBox?: BBox ): number { if (feature.geometry.type === "LineString") { otherFeatureBBox = otherFeatureBBox ?? BBox.get(otherFeature) @@ -1101,7 +1111,7 @@ export class GeoOperations { let intersection = turf.lineSlice( turf.point(intersectionPointsArray[0]), turf.point(intersectionPointsArray[1]), - feature, + feature ) if (intersection == null) { @@ -1122,7 +1132,7 @@ export class GeoOperations { otherFeature, feature, otherFeatureBBox, - featureBBox, + featureBBox ) } @@ -1142,7 +1152,7 @@ export class GeoOperations { console.log("Applying fallback intersection...") const intersection = turf.intersect( turf.truncate(feature), - turf.truncate(otherFeature), + turf.truncate(otherFeature) ) if (intersection == null) { return null diff --git a/src/Logic/State/UserRelatedState.ts b/src/Logic/State/UserRelatedState.ts index 307f5e104..360000556 100644 --- a/src/Logic/State/UserRelatedState.ts +++ b/src/Logic/State/UserRelatedState.ts @@ -364,7 +364,7 @@ export default class UserRelatedState { [translationMode] ) - this.mangroveIdentity.getKeyId().addCallbackAndRun(kid => { + this.mangroveIdentity.getKeyId().addCallbackAndRun((kid) => { amendedPrefs.data["mangrove_kid"] = kid amendedPrefs.ping() }) diff --git a/src/Logic/State/UserSettingsMetaTagging.ts b/src/Logic/State/UserSettingsMetaTagging.ts index 33a5ae85b..6e568c5c3 100644 --- a/src/Logic/State/UserSettingsMetaTagging.ts +++ b/src/Logic/State/UserSettingsMetaTagging.ts @@ -1,14 +1,42 @@ import { Utils } from "../../Utils" /** This code is autogenerated - do not edit. Edit ./assets/layers/usersettings/usersettings.json instead */ export class ThemeMetaTagging { - public static readonly themeName = "usersettings" + public static readonly themeName = "usersettings" - public metaTaggging_for_usersettings(feat: {properties: Record}) { - Utils.AddLazyProperty(feat.properties, '_mastodon_candidate_md', () => feat.properties._description.match(/\[[^\]]*\]\((.*(mastodon|en.osm.town).*)\).*/)?.at(1) ) - Utils.AddLazyProperty(feat.properties, '_d', () => feat.properties._description?.replace(/</g,'<')?.replace(/>/g,'>') ?? '' ) - Utils.AddLazyProperty(feat.properties, '_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) ) - Utils.AddLazyProperty(feat.properties, '_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) ) - Utils.AddLazyProperty(feat.properties, '_mastodon_candidate', () => feat.properties._mastodon_candidate_md ?? feat.properties._mastodon_candidate_a ) - feat.properties['__current_backgroun'] = 'initial_value' - } -} \ No newline at end of file + public metaTaggging_for_usersettings(feat: { properties: Record }) { + Utils.AddLazyProperty(feat.properties, "_mastodon_candidate_md", () => + feat.properties._description + .match(/\[[^\]]*\]\((.*(mastodon|en.osm.town).*)\).*/) + ?.at(1) + ) + Utils.AddLazyProperty( + feat.properties, + "_d", + () => feat.properties._description?.replace(/</g, "<")?.replace(/>/g, ">") ?? "" + ) + Utils.AddLazyProperty(feat.properties, "_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) + ) + Utils.AddLazyProperty(feat.properties, "_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) + ) + Utils.AddLazyProperty( + feat.properties, + "_mastodon_candidate", + () => feat.properties._mastodon_candidate_md ?? feat.properties._mastodon_candidate_a + ) + feat.properties["__current_backgroun"] = "initial_value" + } +} diff --git a/src/Logic/Tags/And.ts b/src/Logic/Tags/And.ts index 6654ac99e..88be5afcc 100644 --- a/src/Logic/Tags/And.ts +++ b/src/Logic/Tags/And.ts @@ -432,6 +432,6 @@ export class And extends TagsFilter { } asMapboxExpression(): ExpressionSpecification { - return ["all", ...this.and.map(t => t.asMapboxExpression())] + return ["all", ...this.and.map((t) => t.asMapboxExpression())] } } diff --git a/src/Logic/Tags/ComparingTag.ts b/src/Logic/Tags/ComparingTag.ts index 56da517ee..861507c95 100644 --- a/src/Logic/Tags/ComparingTag.ts +++ b/src/Logic/Tags/ComparingTag.ts @@ -13,7 +13,7 @@ export default class ComparingTag implements TagsFilter { key: string, predicate: (value: string | undefined) => boolean, representation: "<" | ">" | "<=" | ">=", - boundary: string, + boundary: string ) { this._key = key this._predicate = predicate diff --git a/src/Logic/Tags/Or.ts b/src/Logic/Tags/Or.ts index 2bda9681c..bd19c0794 100644 --- a/src/Logic/Tags/Or.ts +++ b/src/Logic/Tags/Or.ts @@ -291,6 +291,6 @@ export class Or extends TagsFilter { } asMapboxExpression(): ExpressionSpecification { - return ["any", ...this.or.map(t => t.asMapboxExpression())] + return ["any", ...this.or.map((t) => t.asMapboxExpression())] } } diff --git a/src/Logic/Tags/RegexTag.ts b/src/Logic/Tags/RegexTag.ts index 4f3c82f9b..804913039 100644 --- a/src/Logic/Tags/RegexTag.ts +++ b/src/Logic/Tags/RegexTag.ts @@ -360,8 +360,8 @@ export class RegexTag extends TagsFilter { } asMapboxExpression(): ExpressionSpecification { - if(typeof this.key=== "string" && typeof this.value === "string" ) { - return [this.invert ? "!=" : "==", ["get",this.key], this.value] + if (typeof this.key === "string" && typeof this.value === "string") { + return [this.invert ? "!=" : "==", ["get", this.key], this.value] } throw "TODO" } diff --git a/src/Logic/Tags/Tag.ts b/src/Logic/Tags/Tag.ts index cd8146ccd..67a93efdb 100644 --- a/src/Logic/Tags/Tag.ts +++ b/src/Logic/Tags/Tag.ts @@ -65,7 +65,7 @@ export class Tag extends TagsFilter { asOverpass(): string[] { if (this.value === "") { // NOT having this key - return ["[!\"" + this.key + "\"]"] + return ['[!"' + this.key + '"]'] } return [`["${this.key}"="${this.value}"]`] } @@ -83,7 +83,7 @@ export class Tag extends TagsFilter { asHumanString( linkToWiki?: boolean, shorten?: boolean, - currentProperties?: Record, + currentProperties?: Record ) { let v = this.value if (typeof v !== "string") { @@ -170,12 +170,7 @@ export class Tag extends TagsFilter { asMapboxExpression(): ExpressionSpecification { if (this.value === "") { - return [ - "any", - ["!", ["has", this.key]], - ["==", ["get", this.key], ""], - ] - + return ["any", ["!", ["has", this.key]], ["==", ["get", this.key], ""]] } return ["==", ["get", this.key], this.value] } diff --git a/src/Logic/Web/MangroveReviews.ts b/src/Logic/Web/MangroveReviews.ts index 426257bac..89ac9cece 100644 --- a/src/Logic/Web/MangroveReviews.ts +++ b/src/Logic/Web/MangroveReviews.ts @@ -24,8 +24,6 @@ export class MangroveIdentity { const pem = await MangroveReviews.publicToPem(keypair.publicKey) key_id.setData(pem) }) - - } /** @@ -48,7 +46,7 @@ export class MangroveIdentity { * Only called to create a review. */ async getKeypair(): Promise { - if(this.keypair.data ?? "" === ""){ + if (this.keypair.data ?? "" === "") { // We want to create a review, but it seems like no key has been setup at this moment // We create the key try { @@ -66,33 +64,36 @@ export class MangroveIdentity { return this.key_id } - private allReviewsById : UIEventSource<(Review & {kid: string, signature: string})[]>= undefined - + private allReviewsById: UIEventSource<(Review & { kid: string; signature: string })[]> = + undefined /** * Gets all reviews that are made for the current identity. */ - public getAllReviews(): Store<(Review & {kid: string, signature: string})[]>{ - if(this.allReviewsById !== undefined){ + public getAllReviews(): Store<(Review & { kid: string; signature: string })[]> { + if (this.allReviewsById !== undefined) { return this.allReviewsById } - this.allReviewsById = new UIEventSource( []) - this.key_id.map(pem => { - if(pem === undefined){ + this.allReviewsById = new UIEventSource([]) + this.key_id.map((pem) => { + if (pem === undefined) { return [] } MangroveReviews.getReviews({ - kid: pem - }).then(allReviews => { - this.allReviewsById.setData(allReviews.reviews.map(r => ({ - ...r, ...r.payload - }))) + kid: pem, + }).then((allReviews) => { + this.allReviewsById.setData( + allReviews.reviews.map((r) => ({ + ...r, + ...r.payload, + })) + ) }) }) return this.allReviewsById } - addReview(review: Review & {kid, signature}) { + addReview(review: Review & { kid; signature }) { this.allReviewsById?.setData(this.allReviewsById?.data?.concat([review])) } } @@ -225,8 +226,15 @@ export default class FeatureReviews { * The given review is uploaded to mangrove.reviews and added to the list of known reviews */ public async createReview(review: Omit): Promise { - if(review.opinion !== undefined && review.opinion.length > FeatureReviews .REVIEW_OPINION_MAX_LENGTH){ - throw "Opinion too long, should be at most "+FeatureReviews.REVIEW_OPINION_MAX_LENGTH+" characters long" + if ( + review.opinion !== undefined && + review.opinion.length > FeatureReviews.REVIEW_OPINION_MAX_LENGTH + ) { + throw ( + "Opinion too long, should be at most " + + FeatureReviews.REVIEW_OPINION_MAX_LENGTH + + " characters long" + ) } const r: Review = { sub: this.subjectUri.data, @@ -242,13 +250,11 @@ export default class FeatureReviews { signature: jwt, madeByLoggedInUser: new ImmutableStore(true), } - this._reviews.data.push( reviewWithKid) + this._reviews.data.push(reviewWithKid) this._reviews.ping() this._identity.addReview(reviewWithKid) } - - /** * Adds given reviews to the 'reviews'-UI-eventsource * @param reviews diff --git a/src/Models/RasterLayers.ts b/src/Models/RasterLayers.ts index 39adfd847..8ce528bde 100644 --- a/src/Models/RasterLayers.ts +++ b/src/Models/RasterLayers.ts @@ -52,7 +52,9 @@ export class AvailableRasterLayers { type: "Feature", properties: { name: "MapTiler", - url: "https://api.maptiler.com/maps/15cc8f61-0353-4be6-b8da-13daea5f7432/style.json?key="+Constants.maptilerApiKey, + url: + "https://api.maptiler.com/maps/15cc8f61-0353-4be6-b8da-13daea5f7432/style.json?key=" + + Constants.maptilerApiKey, category: "osmbasedmap", id: "maptiler", type: "vector", diff --git a/src/Models/ThemeConfig/Conversion/PrepareTheme.ts b/src/Models/ThemeConfig/Conversion/PrepareTheme.ts index 6a8127fe8..0eccdcf14 100644 --- a/src/Models/ThemeConfig/Conversion/PrepareTheme.ts +++ b/src/Models/ThemeConfig/Conversion/PrepareTheme.ts @@ -565,25 +565,39 @@ class PostvalidateTheme extends DesugaringStep { convert(json: LayoutConfigJson, context: ConversionContext): LayoutConfigJson { for (const l of json.layers) { - const layer = l - const basedOn = layer["_basedOn"] + const layer = l + const basedOn = layer["_basedOn"] const basedOnDef = this._state.sharedLayers.get(basedOn) - if(!basedOn){ + if (!basedOn) { continue } - if(layer["name"] === null){ + if (layer["name"] === null) { continue } - const sameBasedOn = json.layers.filter(l => l["_basedOn"] === layer["_basedOn"] && l["id"] !== layer.id) - const minZoomAll = Math.min(...sameBasedOn.map(sbo => sbo.minzoom)) + const sameBasedOn = ( + json.layers.filter( + (l) => l["_basedOn"] === layer["_basedOn"] && l["id"] !== layer.id + ) + ) + const minZoomAll = Math.min(...sameBasedOn.map((sbo) => sbo.minzoom)) - const sameNameDetected = sameBasedOn.some( same => JSON.stringify(layer["name"]) === JSON.stringify(same["name"])) - if(!sameNameDetected){ + const sameNameDetected = sameBasedOn.some( + (same) => JSON.stringify(layer["name"]) === JSON.stringify(same["name"]) + ) + if (!sameNameDetected) { // The name is unique, so it'll won't be confusing continue } - if(minZoomAll < layer.minzoom){ - context.err("There are multiple layers based on "+basedOn+". The layer with id "+layer.id+" has a minzoom of "+layer.minzoom+", and has a name set. Another similar layer has a lower minzoom. As such, the layer selection might show 'zoom in to see features' even though some of the features are already visible. Set `\"name\": null` for this layer and eventually remove the 'name':null for the other layer.") + if (minZoomAll < layer.minzoom) { + context.err( + "There are multiple layers based on " + + basedOn + + ". The layer with id " + + layer.id + + " has a minzoom of " + + layer.minzoom + + ", and has a name set. Another similar layer has a lower minzoom. As such, the layer selection might show 'zoom in to see features' even though some of the features are already visible. Set `\"name\": null` for this layer and eventually remove the 'name':null for the other layer." + ) } } diff --git a/src/Models/ThemeConfig/Conversion/Validation.ts b/src/Models/ThemeConfig/Conversion/Validation.ts index bbf306ce1..589f11a17 100644 --- a/src/Models/ThemeConfig/Conversion/Validation.ts +++ b/src/Models/ThemeConfig/Conversion/Validation.ts @@ -907,8 +907,12 @@ class MiscTagRenderingChecks extends DesugaringStep { ) } - if(json.icon?.["size"]){ - context.enters("icon","size").err("size is not a valid attribute. Did you mean 'class'? Class can be one of `small`, `medium` or `large`") + if (json.icon?.["size"]) { + context + .enters("icon", "size") + .err( + "size is not a valid attribute. Did you mean 'class'? Class can be one of `small`, `medium` or `large`" + ) } if (json.freeform) { diff --git a/src/Models/ThemeConfig/Json/LineRenderingConfigJson.ts b/src/Models/ThemeConfig/Json/LineRenderingConfigJson.ts index fd75122af..8294a0618 100644 --- a/src/Models/ThemeConfig/Json/LineRenderingConfigJson.ts +++ b/src/Models/ThemeConfig/Json/LineRenderingConfigJson.ts @@ -82,5 +82,5 @@ export default interface LineRenderingConfigJson { * suggestions: [{if: "./assets/png/oneway.png", then: "Show a oneway error"}] * type: image */ - imageAlongWay?: {if: TagConfigJson, then: string}[] | string + imageAlongWay?: { if: TagConfigJson; then: string }[] | string } diff --git a/src/Models/ThemeConfig/Json/PointRenderingConfigJson.ts b/src/Models/ThemeConfig/Json/PointRenderingConfigJson.ts index 9d385eb94..e423ffcdb 100644 --- a/src/Models/ThemeConfig/Json/PointRenderingConfigJson.ts +++ b/src/Models/ThemeConfig/Json/PointRenderingConfigJson.ts @@ -30,7 +30,15 @@ export default interface PointRenderingConfigJson { * multianswer: true * suggestions: return [{if: "value=point",then: "Show an icon for point (node) objects"},{if: "value=centroid",then: "Show an icon for line or polygon (way) objects at their centroid location"}, {if: "value=start",then: "Show an icon for line (way) objects at the start"},{if: "value=end",then: "Show an icon for line (way) object at the end"},{if: "value=projected_centerpoint",then: "Show an icon for line (way) object near the centroid location, but moved onto the line. Does not show an item on polygons"}, ,{if: "value=polygon_centroid",then: "Show an icon at a polygon centroid (but not if it is a way)"}] */ - location: ("point" | "centroid" | "start" | "end" | "projected_centerpoint" | "polygon_centroid" | string)[] + location: ( + | "point" + | "centroid" + | "start" + | "end" + | "projected_centerpoint" + | "polygon_centroid" + | string + )[] /** * The marker for an element. diff --git a/src/Models/ThemeConfig/LayerConfig.ts b/src/Models/ThemeConfig/LayerConfig.ts index caf7d4393..b42bc7855 100644 --- a/src/Models/ThemeConfig/LayerConfig.ts +++ b/src/Models/ThemeConfig/LayerConfig.ts @@ -467,7 +467,7 @@ export default class LayerConfig extends WithContextLoader { new Link( Utils.runningFromConsole ? "" - : new SvelteUIElement(Statistics, {class: "w-4 h-4 mr-2"}), + : new SvelteUIElement(Statistics, { class: "w-4 h-4 mr-2" }), "https://taginfo.openstreetmap.org/keys/" + values.key + "#values", true ), diff --git a/src/Models/ThemeConfig/LineRenderingConfig.ts b/src/Models/ThemeConfig/LineRenderingConfig.ts index bb52e2cff..260ab6414 100644 --- a/src/Models/ThemeConfig/LineRenderingConfig.ts +++ b/src/Models/ThemeConfig/LineRenderingConfig.ts @@ -13,7 +13,7 @@ export default class LineRenderingConfig extends WithContextLoader { public readonly fill: TagRenderingConfig public readonly fillColor: TagRenderingConfig public readonly leftRightSensitive: boolean - public readonly imageAlongWay: { if?: TagsFilter, then: string }[] + public readonly imageAlongWay: { if?: TagsFilter; then: string }[] constructor(json: LineRenderingConfigJson, context: string) { super(json, context) @@ -33,15 +33,13 @@ export default class LineRenderingConfig extends WithContextLoader { for (let i = 0; i < json.imageAlongWay.length; i++) { const imgAlong = json.imageAlongWay[i] const ctx = context + ".imageAlongWay[" + i + "]" - if(!imgAlong.then.endsWith(".png")){ + if (!imgAlong.then.endsWith(".png")) { throw "An imageAlongWay should always be a PNG image" } - this.imageAlongWay.push( - { - if: TagUtils.Tag(imgAlong.if, ctx), - then: imgAlong.then, - }, - ) + this.imageAlongWay.push({ + if: TagUtils.Tag(imgAlong.if, ctx), + then: imgAlong.then, + }) } } } diff --git a/src/Models/ThemeConfig/PointRenderingConfig.ts b/src/Models/ThemeConfig/PointRenderingConfig.ts index 8f13f6f64..ca3cd22f5 100644 --- a/src/Models/ThemeConfig/PointRenderingConfig.ts +++ b/src/Models/ThemeConfig/PointRenderingConfig.ts @@ -38,10 +38,16 @@ export default class PointRenderingConfig extends WithContextLoader { "start", "end", "projected_centerpoint", - "polygon_centroid" + "polygon_centroid", ]) public readonly location: Set< - "point" | "centroid" | "start" | "end" | "projected_centerpoint" | "polygon_centroid" | string + | "point" + | "centroid" + | "start" + | "end" + | "projected_centerpoint" + | "polygon_centroid" + | string > public readonly marker: IconConfig[] diff --git a/src/Sensors/Orientation.ts b/src/Sensors/Orientation.ts index e9d28ffd3..9a634e87f 100644 --- a/src/Sensors/Orientation.ts +++ b/src/Sensors/Orientation.ts @@ -77,7 +77,7 @@ export class Orientation { } private update(event: DeviceOrientationEvent) { - if(event.alpha === null || event.beta === null || event.gamma === null){ + if (event.alpha === null || event.beta === null || event.gamma === null) { return } this.gotMeasurement.setData(true) diff --git a/src/UI/AllThemesGui.svelte b/src/UI/AllThemesGui.svelte index 15464fd27..5c1694fb4 100644 --- a/src/UI/AllThemesGui.svelte +++ b/src/UI/AllThemesGui.svelte @@ -56,7 +56,11 @@ .filter((key) => key.startsWith(prefix)) .map((key) => key.substring(prefix.length, key.length - "-enabled".length)) ) - return hiddenThemes.filter((theme) => knownIds.has(theme.id) || state.osmConnection.userDetails.data.name === "Pieter Vander Vennet") + return hiddenThemes.filter( + (theme) => + knownIds.has(theme.id) || + state.osmConnection.userDetails.data.name === "Pieter Vander Vennet" + ) }) } diff --git a/src/UI/Base/DirectionIndicator.svelte b/src/UI/Base/DirectionIndicator.svelte index d636ef5a7..200684353 100644 --- a/src/UI/Base/DirectionIndicator.svelte +++ b/src/UI/Base/DirectionIndicator.svelte @@ -39,9 +39,9 @@ let relativeDirections = Translations.t.general.visualFeedback.directionsRelative let absoluteDirections = Translations.t.general.visualFeedback.directionsAbsolute - - function round10(n :number){ - if(n < 50){ + + function round10(n: number) { + if (n < 50) { return n } return Math.round(n / 10) * 10 @@ -132,7 +132,10 @@ so we use a 'div' and add on:click manually -->
focusMap()} use:ariaLabelStore={label} > @@ -140,18 +143,18 @@
{:else}
focusMap()} use:ariaLabelStore={label} >
{$label} @@ -170,11 +173,11 @@ diff --git a/src/UI/Base/FileSelector.svelte b/src/UI/Base/FileSelector.svelte index 8e9b203a4..9caaeca60 100644 --- a/src/UI/Base/FileSelector.svelte +++ b/src/UI/Base/FileSelector.svelte @@ -16,19 +16,22 @@ if (e.target["id"] == id) { return } - if(formElement.contains(e.target) || document.getElementsByClassName("selected-element-view")[0]?.contains(e.target)){ + if ( + formElement.contains(e.target) || + document.getElementsByClassName("selected-element-view")[0]?.contains(e.target) + ) { e.preventDefault() - - if(e.type === "drop"){ + + if (e.type === "drop") { console.log("Got a 'drop'", e) drawAttention = false dispatcher("submit", e.dataTransfer.files) return } - + drawAttention = true e.dataTransfer.dropEffect = "copy" - + return /* drawAttention = false @@ -50,7 +53,6 @@ window.removeEventListener("dragover", handleDragEvent) window.removeEventListener("drop", handleDragEvent) }) -
-
{}}> +
{}}>
diff --git a/src/UI/Base/LoginButton.svelte b/src/UI/Base/LoginButton.svelte index d582684ef..1524e2a89 100644 --- a/src/UI/Base/LoginButton.svelte +++ b/src/UI/Base/LoginButton.svelte @@ -9,7 +9,7 @@
diff --git a/src/UI/BigComponents/ReverseGeocoding.svelte b/src/UI/BigComponents/ReverseGeocoding.svelte index 451999722..2674fa2be 100644 --- a/src/UI/BigComponents/ReverseGeocoding.svelte +++ b/src/UI/BigComponents/ReverseGeocoding.svelte @@ -20,7 +20,7 @@ let result = await Geocoding.reverse( mapProperties.location.data, mapProperties.zoom.data, - Locale.language.data, + Locale.language.data ) let properties = result.features[0].properties currentLocation = properties.display_name @@ -44,7 +44,7 @@ () => { displayLocation() }, - [Translations.t.hotkeyDocumentation.shakePhone], + [Translations.t.hotkeyDocumentation.shakePhone] ) Motion.singleton.startListening() diff --git a/src/UI/BigComponents/SelectedElementTitle.svelte b/src/UI/BigComponents/SelectedElementTitle.svelte index cc36901a7..be5aeaf32 100644 --- a/src/UI/BigComponents/SelectedElementTitle.svelte +++ b/src/UI/BigComponents/SelectedElementTitle.svelte @@ -13,7 +13,7 @@ export let layer: LayerConfig export let selectedElement: Feature let tags: UIEventSource> = state.featureProperties.getStore( - selectedElement.properties.id, + selectedElement.properties.id ) $: { tags = state.featureProperties.getStore(selectedElement.properties.id) @@ -25,9 +25,9 @@ {#if $tags._deleted === "yes"} {:else} -
-
-
+
+
+

@@ -39,7 +39,7 @@ class="no-weblate title-icons links-as-button mr-2 flex flex-row flex-wrap items-center gap-x-0.5 pt-0.5 sm:pt-1" > {#each layer.titleIcons as titleIconConfig} - {#if (titleIconConfig.condition?.matchesProperties($tags) ?? true) && (titleIconConfig.metacondition?.matchesProperties({ ...$metatags, ...$tags }) ?? true) && titleIconConfig.IsKnown($tags)} + {#if (titleIconConfig.condition?.matchesProperties($tags) ?? true) && (titleIconConfig.metacondition?.matchesProperties( { ...$metatags, ...$tags } ) ?? true) && titleIconConfig.IsKnown($tags)}
state.selectedElement.setData(undefined)} use:ariaLabel={Translations.t.general.backToMap} - class="rounded-full border-none p-0 shrink-0 h-fit mt-2" + class="mt-2 h-fit shrink-0 rounded-full border-none p-0" style="border: 0 !important; padding: 0 !important;" > -
{/if} diff --git a/src/UI/BigComponents/SelectedElementView.svelte b/src/UI/BigComponents/SelectedElementView.svelte index 4fc37b11d..3bf1df98d 100644 --- a/src/UI/BigComponents/SelectedElementView.svelte +++ b/src/UI/BigComponents/SelectedElementView.svelte @@ -43,7 +43,10 @@ {:else} -
+
{#each $knownTagRenderings as config (config.id)} {#if typeof navigator?.share === "function"} {/if} {#if navigator.clipboard !== undefined} diff --git a/src/UI/BigComponents/UploadTraceToOsmUI.svelte b/src/UI/BigComponents/UploadTraceToOsmUI.svelte index f754c5475..550ddfbaf 100644 --- a/src/UI/BigComponents/UploadTraceToOsmUI.svelte +++ b/src/UI/BigComponents/UploadTraceToOsmUI.svelte @@ -25,9 +25,10 @@ whenUploaded?: () => void | Promise } = undefined - let t = Translations.t.general.uploadGpx - let currentStep = new UIEventSource<"init" | "please_confirm" | "uploading" | "done" | "error">("init") + let currentStep = new UIEventSource<"init" | "please_confirm" | "uploading" | "done" | "error">( + "init" + ) let traceVisibilities: { key: "private" | "public" @@ -44,8 +45,9 @@ }, ] - let gpxServerIsOnline: Store = state.osmConnection.gpxServiceIsOnline.map((serviceState) => serviceState === "online") - + let gpxServerIsOnline: Store = state.osmConnection.gpxServiceIsOnline.map( + (serviceState) => serviceState === "online" + ) /** * More or less the same as the coalescing-operator '??', except that it checks for empty strings too @@ -63,18 +65,17 @@ let title: string = undefined let description: string = undefined - let visibility = >state?.osmConnection?.GetPreference("gps.trace.visibility") ?? new UIEventSource<"public" | "private">("private") + let visibility = + >( + state?.osmConnection?.GetPreference("gps.trace.visibility") + ) ?? new UIEventSource<"public" | "private">("private") async function uploadTrace() { try { - currentStep.setData("uploading") - const titleStr = createDefault( - title, - "Track with mapcomplete", - ) + const titleStr = createDefault(title, "Track with mapcomplete") const descriptionStr = createDefault( description, - "Track created with MapComplete with theme " + state?.layout?.id, + "Track created with MapComplete with theme " + state?.layout?.id ) await state?.osmConnection?.uploadGpxTrack(trace(titleStr), { visibility: visibility.data ?? "private", @@ -95,47 +96,58 @@ - {#if !$gpxServerIsOnline} -
- +
+
{:else if $currentStep === "error"}
- +
{:else if $currentStep === "init"} - {:else if $currentStep === "please_confirm"} - uploadTrace()} - class="flex flex-col border-interactive interactive px-2 gap-y-1"> + uploadTrace()} + class="border-interactive interactive flex flex-col gap-y-1 px-2" + >

-

- + - -