UX/Studio: improvements to UX, introduce 'expert' mode

This commit is contained in:
Pieter Vander Vennet 2023-11-07 02:13:16 +01:00
parent 8a9650c737
commit 906fa1b1db
245 changed files with 3814 additions and 3950 deletions

View file

@ -95,6 +95,7 @@
- animal_shelter - animal_shelter
- artwork - artwork
- atm - atm
- bank
- barrier - barrier
- bench - bench
- bench_at_pt - bench_at_pt

View file

@ -24,26 +24,20 @@
1. [gps_track](#gps_track) 1. [gps_track](#gps_track)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
- [Supported attributes](#supported-attributes) - [Supported attributes](#supported-attributes)
+ [just_created](#just_created)
+ [Privacy notice](#privacy-notice) + [Privacy notice](#privacy-notice)
+ [export_as_gpx](#export_as_gpx) + [export_as_gpx](#export_as_gpx)
+ [export_as_geojson](#export_as_geojson) + [export_as_geojson](#export_as_geojson)
+ [upload_to_osm](#upload_to_osm) + [upload_to_osm](#upload_to_osm)
+ [minimap](#minimap) + [minimap](#minimap)
+ [delete](#delete) + [delete](#delete)
+ [leftover-questions](#leftover-questions)
+ [all-tags](#all-tags)
1. [range](#range) 1. [range](#range)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
- [Supported attributes](#supported-attributes) - [Supported attributes](#supported-attributes)
1. [last_click](#last_click) 1. [last_click](#last_click)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
- [Supported attributes](#supported-attributes) - [Supported attributes](#supported-attributes)
+ [just_created](#just_created)
+ [add_new](#add_new) + [add_new](#add_new)
+ [add_note](#add_note) + [add_note](#add_note)
+ [leftover-questions](#leftover-questions)
+ [all-tags](#all-tags)
* [Filters](#filters) * [Filters](#filters)
1. [conflation](#conflation) 1. [conflation](#conflation)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
@ -58,19 +52,13 @@
* [Themes using this layer](#themes-using-this-layer) * [Themes using this layer](#themes-using-this-layer)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
- [Supported attributes](#supported-attributes) - [Supported attributes](#supported-attributes)
+ [just_created](#just_created)
+ [leftover-questions](#leftover-questions)
+ [all-tags](#all-tags)
1. [import_candidate](#import_candidate) 1. [import_candidate](#import_candidate)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
- [Supported attributes](#supported-attributes) - [Supported attributes](#supported-attributes)
+ [just_created](#just_created)
+ [all_tags](#all_tags) + [all_tags](#all_tags)
+ [leftover-questions](#leftover-questions)
1. [usersettings](#usersettings) 1. [usersettings](#usersettings)
- [Basic tags for this layer](#basic-tags-for-this-layer) - [Basic tags for this layer](#basic-tags-for-this-layer)
- [Supported attributes](#supported-attributes) - [Supported attributes](#supported-attributes)
+ [just_created](#just_created)
+ [profile](#profile) + [profile](#profile)
+ [language_picker](#language_picker) + [language_picker](#language_picker)
+ [inbox](#inbox) + [inbox](#inbox)
@ -95,7 +83,6 @@
+ [contributor-thanks](#contributor-thanks) + [contributor-thanks](#contributor-thanks)
+ [show_debug](#show_debug) + [show_debug](#show_debug)
+ [debug](#debug) + [debug](#debug)
+ [leftover-questions](#leftover-questions)
1. [Normal layers](#normal-layers) 1. [Normal layers](#normal-layers)
@ -343,36 +330,6 @@ Elements must have the all of following tags to be shown on this layer:
Warning:
this quick overview is incomplete
attribute | type | values which are supported by this layer
----------- | ------ | ------------------------------------------
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/id#values) [id](https://wiki.openstreetmap.org/wiki/Key:id) | Multiple choice |
### just_created
This element shows a 'thank you' that the contributor has recently created this element
This tagrendering has no question and is thus read-only
- *You just created this element! Thanks for sharing this info with the world and helping people worldwide.* corresponds with `id~.+`
This tagrendering is only visible in the popup if the following condition is met: `_backend~.+&_last_edit:passed_time<300&|_version_number=1`
### Privacy notice ### Privacy notice
@ -441,26 +398,6 @@ This tagrendering has no question and is thus read-only
### leftover-questions
This tagrendering has no question and is thus read-only
### all-tags
This tagrendering has no question and is thus read-only
range range
======= =======
@ -547,36 +484,6 @@ Elements must have the all of following tags to be shown on this layer:
Warning:
this quick overview is incomplete
attribute | type | values which are supported by this layer
----------- | ------ | ------------------------------------------
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/id#values) [id](https://wiki.openstreetmap.org/wiki/Key:id) | Multiple choice |
### just_created
This element shows a 'thank you' that the contributor has recently created this element
This tagrendering has no question and is thus read-only
- *You just created this element! Thanks for sharing this info with the world and helping people worldwide.* corresponds with `id~.+`
This tagrendering is only visible in the popup if the following condition is met: `_backend~.+&_last_edit:passed_time<300&|_version_number=1`
### add_new ### add_new
@ -603,26 +510,6 @@ This tagrendering is only visible in the popup if the following condition is met
### leftover-questions
This tagrendering has no question and is thus read-only
### all-tags
This tagrendering has no question and is thus read-only
#### Filters #### Filters
@ -814,56 +701,6 @@ Elements must have the all of following tags to be shown on this layer:
Warning:
this quick overview is incomplete
attribute | type | values which are supported by this layer
----------- | ------ | ------------------------------------------
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/id#values) [id](https://wiki.openstreetmap.org/wiki/Key:id) | Multiple choice |
### just_created
This element shows a 'thank you' that the contributor has recently created this element
This tagrendering has no question and is thus read-only
- *You just created this element! Thanks for sharing this info with the world and helping people worldwide.* corresponds with `id~.+`
This tagrendering is only visible in the popup if the following condition is met: `_backend~.+&_last_edit:passed_time<300&|_version_number=1`
### leftover-questions
This tagrendering has no question and is thus read-only
### all-tags
This tagrendering has no question and is thus read-only
import_candidate import_candidate
@ -905,36 +742,6 @@ Elements must have the all of following tags to be shown on this layer:
Warning:
this quick overview is incomplete
attribute | type | values which are supported by this layer
----------- | ------ | ------------------------------------------
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/id#values) [id](https://wiki.openstreetmap.org/wiki/Key:id) | Multiple choice |
### just_created
This element shows a 'thank you' that the contributor has recently created this element
This tagrendering has no question and is thus read-only
- *You just created this element! Thanks for sharing this info with the world and helping people worldwide.* corresponds with `id~.+`
This tagrendering is only visible in the popup if the following condition is met: `_backend~.+&_last_edit:passed_time<300&|_version_number=1`
### all_tags ### all_tags
@ -947,16 +754,6 @@ This tagrendering has no question and is thus read-only
### leftover-questions
This tagrendering has no question and is thus read-only
usersettings usersettings
============== ==============
@ -1004,7 +801,6 @@ this quick overview is incomplete
attribute | type | values which are supported by this layer attribute | type | values which are supported by this layer
----------- | ------ | ------------------------------------------ ----------- | ------ | ------------------------------------------
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/id#values) [id](https://wiki.openstreetmap.org/wiki/Key:id) | Multiple choice |
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/__url_parameter_initialized:language#values) [__url_parameter_initialized:language](https://wiki.openstreetmap.org/wiki/Key:__url_parameter_initialized:language) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:__url_parameter_initialized:language%3Dyes) [<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/__url_parameter_initialized:language#values) [__url_parameter_initialized:language](https://wiki.openstreetmap.org/wiki/Key:__url_parameter_initialized:language) | Multiple choice | [yes](https://wiki.openstreetmap.org/wiki/Tag:__url_parameter_initialized:language%3Dyes)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-preferred-background-layer#values) [mapcomplete-preferred-background-layer](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-preferred-background-layer) | Multiple choice | [](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3D) [osm](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3Dosm) [photo](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3Dphoto) [map](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3Dmap) [](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3D) [<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-preferred-background-layer#values) [mapcomplete-preferred-background-layer](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-preferred-background-layer) | Multiple choice | [](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3D) [osm](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3Dosm) [photo](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3Dphoto) [map](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3Dmap) [](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-preferred-background-layer%3D)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-pictures-license#values) [mapcomplete-pictures-license](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-pictures-license) | Multiple choice | [CC0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC0) [CC-BY 4.0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC-BY 4.0) [CC-BY-SA 4.0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC-BY-SA 4.0) [<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/mapcomplete-pictures-license#values) [mapcomplete-pictures-license](https://wiki.openstreetmap.org/wiki/Key:mapcomplete-pictures-license) | Multiple choice | [CC0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC0) [CC-BY 4.0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC-BY 4.0) [CC-BY-SA 4.0](https://wiki.openstreetmap.org/wiki/Tag:mapcomplete-pictures-license%3DCC-BY-SA 4.0)
@ -1020,25 +816,6 @@ attribute | type | values which are supported by this layer
### just_created
This element shows a 'thank you' that the contributor has recently created this element
This tagrendering has no question and is thus read-only
- *You just created this element! Thanks for sharing this info with the world and helping people worldwide.* corresponds with `id~.+`
This tagrendering is only visible in the popup if the following condition is met: `_backend~.+&_last_edit:passed_time<300&|_version_number=1`
### profile ### profile
@ -1395,16 +1172,6 @@ This tagrendering is only visible in the popup if the following condition is met
### leftover-questions
This tagrendering has no question and is thus read-only
Normal layers Normal layers
=============== ===============

View file

@ -59,6 +59,7 @@ Special library layer which does not need a '.questions'-prefix before being imp
+ [sugar_free](#sugar_free) + [sugar_free](#sugar_free)
+ [lactose_free](#lactose_free) + [lactose_free](#lactose_free)
+ [gluten_free](#gluten_free) + [gluten_free](#gluten_free)
+ [vegan](#vegan)
@ -127,6 +128,7 @@ attribute | type | values which are supported by this layer
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:sugar_free#values) [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno) [<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:sugar_free#values) [diet:sugar_free](https://wiki.openstreetmap.org/wiki/Key:diet:sugar_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:sugar_free%3Dno)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:lactose_free#values) [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno) [<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:lactose_free#values) [diet:lactose_free](https://wiki.openstreetmap.org/wiki/Key:diet:lactose_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:lactose_free%3Dno)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:gluten_free#values) [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno) [<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:gluten_free#values) [diet:gluten_free](https://wiki.openstreetmap.org/wiki/Key:diet:gluten_free) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:gluten_free%3Dno)
[<img src='https://mapcomplete.org/assets/svg/statistics.svg' height='18px'>](https://taginfo.openstreetmap.org/keys/diet:vegan#values) [diet:vegan](https://wiki.openstreetmap.org/wiki/Key:diet:vegan) | Multiple choice | [only](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Donly) [yes](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dyes) [limited](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dlimited) [no](https://wiki.openstreetmap.org/wiki/Tag:diet:vegan%3Dno)
@ -756,6 +758,8 @@ The question is *Does this place offer internet access?*
- *This place offers wired internet access* corresponds with `internet_access=wired` - *This place offers wired internet access* corresponds with `internet_access=wired`
This tagrendering has labels `internet-all`
### internet-fee ### internet-fee
@ -775,6 +779,8 @@ The question is *Is there a fee for internet access?*
This tagrendering is only visible in the popup if the following condition is met: `internet_access!=no &internet_access~.+` This tagrendering is only visible in the popup if the following condition is met: `internet_access!=no &internet_access~.+`
This tagrendering has labels `internet-all`
### internet-ssid ### internet-ssid
@ -796,6 +802,8 @@ This is rendered with `The network name is <b>{internet_access:ssid}</b>`
This tagrendering is only visible in the popup if the following condition is met: `internet_access=wlan` This tagrendering is only visible in the popup if the following condition is met: `internet_access=wlan`
This tagrendering has labels `internet-all`
### luminous_or_lit ### luminous_or_lit
@ -887,7 +895,7 @@ The question is *Does {title()} have a lactose-free offering?*
- *<b>Only sells lactose free</b> products* corresponds with `diet:lactose_free=only` - *<b>Only sells lactose free</b> products* corresponds with `diet:lactose_free=only`
- *Big lactose free offering* corresponds with `diet:lactose_free=yes` - *Big lactose free offering* corresponds with `diet:lactose_free=yes`
- *<b>Limited lactose free</b> offering* corresponds with `diet:lactose_free=limited` - *<b>Limited lactose free</b> offering* corresponds with `diet:lactose_free=limited`
- *No lactose free offering* corresponds with `diet:lactose_free=no` - *This shop has no lactose free offering* corresponds with `diet:lactose_free=no`
This tagrendering has labels `diets` This tagrendering has labels `diets`
@ -912,4 +920,24 @@ The question is *Does this shop have a gluten free offering?*
This tagrendering has labels `diets` This tagrendering has labels `diets`
### vegan
The question is *Does this place offer a vegan option?*
- *This place <b>only sells vegan</b> products* corresponds with `diet:vegan=only`
- *This shop has a big vegan offering* corresponds with `diet:vegan=yes`
- *This shop has a <b>limited vegan</b> offering* corresponds with `diet:vegan=limited`
- *This shop has no vegan offering* corresponds with `diet:vegan=no`
This tagrendering has labels `diets`
This document is autogenerated from [assets/layers/questions/questions.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/questions/questions.json) This document is autogenerated from [assets/layers/questions/questions.json](https://github.com/pietervdvn/MapComplete/blob/develop/assets/layers/questions/questions.json)

View file

@ -206,7 +206,7 @@ This is rendered with `Access is {access}`
- This option cannot be chosen as answer - This option cannot be chosen as answer
- *Only customers of the place this station belongs to can use this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests</span>* corresponds with `access=customers` - *Only customers of the place this station belongs to can use this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests</span>* corresponds with `access=customers`
- *A <b>key</b> must be requested to access this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station</span>* corresponds with `access=key` - *A <b>key</b> must be requested to access this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station</span>* corresponds with `access=key`
- *Not accessible to the general public (e.g. only accessible to the owners, employees, ...)* corresponds with `access=private` - *Not accessible to the general public (e.g. only accessible to the owners, employees, )* corresponds with `access=private`
- *This charging station is accessible to the public during certain hours or conditions. Restrictions might apply, but general use is allowed.* corresponds with `access=permissive` - *This charging station is accessible to the public during certain hours or conditions. Restrictions might apply, but general use is allowed.* corresponds with `access=permissive`
@ -620,7 +620,7 @@ This is rendered with `<div style='display: inline-block'><b><b>Schuko wall plu
- *<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kW A* corresponds with `socket:schuko:output=3.6 kW` - *<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kw A* corresponds with `socket:schuko:output=3.6 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:schuko~.+ &socket:schuko!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:schuko~.+ &socket:schuko!=0`
@ -689,8 +689,8 @@ This is rendered with `<div style='display: inline-block'><b><b>European wall p
- *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kW A* corresponds with `socket:typee:output=3 kW` - *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kw A* corresponds with `socket:typee:output=3 kW`
- *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kW A* corresponds with `socket:typee:output=22 kW` - *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kw A* corresponds with `socket:typee:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:typee~.+ &socket:typee!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:typee~.+ &socket:typee!=0`
@ -759,7 +759,7 @@ This is rendered with `<div style='display: inline-block'><b><b>Chademo</b></b>
- *<b>Chademo</b> outputs at most 50 kW A* corresponds with `socket:chademo:output=50 kW` - *<b>Chademo</b> outputs at most 50 kw A* corresponds with `socket:chademo:output=50 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:chademo~.+ &socket:chademo!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:chademo~.+ &socket:chademo!=0`
@ -829,8 +829,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 1 with cab
- *<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kW A* corresponds with `socket:type1_cable:output=3.7 kW` - *<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kw A* corresponds with `socket:type1_cable:output=3.7 kW`
- *<b>Type 1 with cable</b> (J1772) outputs at most 7 kW A* corresponds with `socket:type1_cable:output=7 kW` - *<b>Type 1 with cable</b> (J1772) outputs at most 7 kw A* corresponds with `socket:type1_cable:output=7 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type1_cable~.+ &socket:type1_cable!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type1_cable~.+ &socket:type1_cable!=0`
@ -900,10 +900,10 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 1 <i>witho
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kW A* corresponds with `socket:type1:output=3.7 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kw A* corresponds with `socket:type1:output=3.7 kW`
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kW A* corresponds with `socket:type1:output=6.6 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kw A* corresponds with `socket:type1:output=6.6 kW`
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kW A* corresponds with `socket:type1:output=7 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kw A* corresponds with `socket:type1:output=7 kW`
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kW A* corresponds with `socket:type1:output=7.2 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kw A* corresponds with `socket:type1:output=7.2 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type1~.+ &socket:type1!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type1~.+ &socket:type1!=0`
@ -974,10 +974,10 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 1 CCS</b>
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kW A* corresponds with `socket:type1_combo:output=50 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kw A* corresponds with `socket:type1_combo:output=50 kW`
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kW A* corresponds with `socket:type1_combo:output=62.5 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kw A* corresponds with `socket:type1_combo:output=62.5 kW`
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kW A* corresponds with `socket:type1_combo:output=150 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kw A* corresponds with `socket:type1_combo:output=150 kW`
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kW A* corresponds with `socket:type1_combo:output=350 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kw A* corresponds with `socket:type1_combo:output=350 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type1_combo~.+ &socket:type1_combo!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type1_combo~.+ &socket:type1_combo!=0`
@ -1047,9 +1047,9 @@ This is rendered with `<div style='display: inline-block'><b><b>Tesla Superchar
- *<b>Tesla Supercharger</b> outputs at most 120 kW A* corresponds with `socket:tesla_supercharger:output=120 kW` - *<b>Tesla Supercharger</b> outputs at most 120 kw A* corresponds with `socket:tesla_supercharger:output=120 kW`
- *<b>Tesla Supercharger</b> outputs at most 150 kW A* corresponds with `socket:tesla_supercharger:output=150 kW` - *<b>Tesla Supercharger</b> outputs at most 150 kw A* corresponds with `socket:tesla_supercharger:output=150 kW`
- *<b>Tesla Supercharger</b> outputs at most 250 kW A* corresponds with `socket:tesla_supercharger:output=250 kW` - *<b>Tesla Supercharger</b> outputs at most 250 kw A* corresponds with `socket:tesla_supercharger:output=250 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0`
@ -1120,8 +1120,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 2</b> (men
- *<b>Type 2</b> (mennekes) outputs at most 11 kW A* corresponds with `socket:type2:output=11 kW` - *<b>Type 2</b> (mennekes) outputs at most 11 kw A* corresponds with `socket:type2:output=11 kW`
- *<b>Type 2</b> (mennekes) outputs at most 22 kW A* corresponds with `socket:type2:output=22 kW` - *<b>Type 2</b> (mennekes) outputs at most 22 kw A* corresponds with `socket:type2:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type2~.+ &socket:type2!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type2~.+ &socket:type2!=0`
@ -1192,7 +1192,7 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 2 CCS</b>
- *<b>Type 2 CCS</b> (mennekes) outputs at most 50 kW A* corresponds with `socket:type2_combo:output=50 kW` - *<b>Type 2 CCS</b> (mennekes) outputs at most 50 kw A* corresponds with `socket:type2_combo:output=50 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type2_combo~.+ &socket:type2_combo!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type2_combo~.+ &socket:type2_combo!=0`
@ -1263,8 +1263,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 2 with cab
- *<b>Type 2 with cable</b> (mennekes) outputs at most 11 kW A* corresponds with `socket:type2_cable:output=11 kW` - *<b>Type 2 with cable</b> (mennekes) outputs at most 11 kw A* corresponds with `socket:type2_cable:output=11 kW`
- *<b>Type 2 with cable</b> (mennekes) outputs at most 22 kW A* corresponds with `socket:type2_cable:output=22 kW` - *<b>Type 2 with cable</b> (mennekes) outputs at most 22 kw A* corresponds with `socket:type2_cable:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type2_cable~.+ &socket:type2_cable!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type2_cable~.+ &socket:type2_cable!=0`
@ -1277,18 +1277,18 @@ This tagrendering has labels `technical`
The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?* The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_supercharger_ccs:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:voltage) This rendering asks information about the property [socket:tesla_supercharger_ccs:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:voltage)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs {socket:tesla_supercharger_ccs:voltage} volt` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs {socket:tesla_supercharger_ccs:voltage} volt`
- *<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 500 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=500 V` - *<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 500 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=500 V`
- *<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 920 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=920 V` - *<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 920 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=920 V`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0`
@ -1325,17 +1325,17 @@ This tagrendering has labels `technical`
The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?* The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_supercharger_ccs:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:output) This rendering asks information about the property [socket:tesla_supercharger_ccs:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:output)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs at most {socket:tesla_supercharger_ccs:output}` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs at most {socket:tesla_supercharger_ccs:output}`
- *<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs at most 50 kW A* corresponds with `socket:tesla_supercharger_ccs:output=50 kW` - *<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs at most 50 kw A* corresponds with `socket:tesla_supercharger_ccs:output=50 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0`
@ -1348,17 +1348,17 @@ This tagrendering has labels `technical`
The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?* The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage) This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs {socket:tesla_destination:voltage} volt` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs {socket:tesla_destination:voltage} volt`
- *<b>Tesla Supercharger (destination)</b> outputs 480 volt* corresponds with `socket:tesla_destination:voltage=480 V` - *<b>Tesla Supercharger (Destination)</b> outputs 480 volt* corresponds with `socket:tesla_destination:voltage=480 V`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1371,18 +1371,18 @@ This tagrendering has labels `technical`
The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?* The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current) This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:current}A` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:current}A`
- *<b>Tesla Supercharger (destination)</b> outputs at most 125 A* corresponds with `socket:tesla_destination:current=125 A` - *<b>Tesla Supercharger (Destination)</b> outputs at most 125 A* corresponds with `socket:tesla_destination:current=125 A`
- *<b>Tesla Supercharger (destination)</b> outputs at most 350 A* corresponds with `socket:tesla_destination:current=350 A` - *<b>Tesla Supercharger (Destination)</b> outputs at most 350 A* corresponds with `socket:tesla_destination:current=350 A`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1395,19 +1395,19 @@ This tagrendering has labels `technical`
The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?* The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output) This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:output}` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:output}`
- *<b>Tesla Supercharger (destination)</b> outputs at most 120 kW A* corresponds with `socket:tesla_destination:output=120 kW` - *<b>Tesla Supercharger (Destination)</b> outputs at most 120 kw A* corresponds with `socket:tesla_destination:output=120 kW`
- *<b>Tesla Supercharger (destination)</b> outputs at most 150 kW A* corresponds with `socket:tesla_destination:output=150 kW` - *<b>Tesla Supercharger (Destination)</b> outputs at most 150 kw A* corresponds with `socket:tesla_destination:output=150 kW`
- *<b>Tesla Supercharger (destination)</b> outputs at most 250 kW A* corresponds with `socket:tesla_destination:output=250 kW` - *<b>Tesla Supercharger (Destination)</b> outputs at most 250 kw A* corresponds with `socket:tesla_destination:output=250 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1420,7 +1420,7 @@ This tagrendering has labels `technical`
The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?* The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage) This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage)
@ -1430,8 +1430,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Tesla superchar
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 230 volt* corresponds with `socket:tesla_destination:voltage=230 V` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 230 volt* corresponds with `socket:tesla_destination:voltage=230 V`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 400 volt* corresponds with `socket:tesla_destination:voltage=400 V` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 400 volt* corresponds with `socket:tesla_destination:voltage=400 V`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1444,18 +1444,18 @@ This tagrendering has labels `technical`
The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?* The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current) This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current)
This is rendered with `<div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:current}A` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:current}A`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A* corresponds with `socket:tesla_destination:current=16 A` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A* corresponds with `socket:tesla_destination:current=16 A`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 32 A* corresponds with `socket:tesla_destination:current=32 A` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 32 A* corresponds with `socket:tesla_destination:current=32 A`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1468,18 +1468,18 @@ This tagrendering has labels `technical`
The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?* The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output) This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output)
This is rendered with `<div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:output}` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:output}`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 11 kW A* corresponds with `socket:tesla_destination:output=11 kW` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 11 kw A* corresponds with `socket:tesla_destination:output=11 kW`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 22 kW A* corresponds with `socket:tesla_destination:output=22 kW` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 22 kw A* corresponds with `socket:tesla_destination:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1549,8 +1549,8 @@ This is rendered with `<div style='display: inline-block'><b><b>USB</b> to char
- *<b>USB</b> to charge phones and small electronics outputs at most 5W A* corresponds with `socket:USB-A:output=5W` - *<b>USB</b> to charge phones and small electronics outputs at most 5w A* corresponds with `socket:USB-A:output=5W`
- *<b>USB</b> to charge phones and small electronics outputs at most 10W A* corresponds with `socket:USB-A:output=10W` - *<b>USB</b> to charge phones and small electronics outputs at most 10w A* corresponds with `socket:USB-A:output=10W`
This tagrendering is only visible in the popup if the following condition is met: `socket:USB-A~.+ &socket:USB-A!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:USB-A~.+ &socket:USB-A!=0`
@ -1730,7 +1730,7 @@ The question is *Does one have to pay to use this charging station?*
- *Free to use, but one has to authenticate* corresponds with `fee=no &authentication:none=no` - *Free to use, but one has to authenticate* corresponds with `fee=no &authentication:none=no`
- *Free to use* corresponds with `fee=no` - *Free to use* corresponds with `fee=no`
- This option cannot be chosen as answer - This option cannot be chosen as answer
- *Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station* corresponds with `fee=yes&fee:conditional=no @ customers` - *Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station* corresponds with `fee=yes &fee:conditional=no @ customers`
- *Paid use* corresponds with `fee=yes` - *Paid use* corresponds with `fee=yes`
@ -2132,15 +2132,15 @@ connection_type.1 | Has a <div style='display: inline-block'><b><b>Schuko wall p
connection_type.2 | Has a <div style='display: inline-block'><b><b>European wall plug</b> with ground pin (CEE7/4 type E)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/TypeE.svg'/></div> connector | socket:typee~.+ connection_type.2 | Has a <div style='display: inline-block'><b><b>European wall plug</b> with ground pin (CEE7/4 type E)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/TypeE.svg'/></div> connector | socket:typee~.+
connection_type.3 | Has a <div style='display: inline-block'><b><b>Chademo</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Chademo_type4.svg'/></div> connector | socket:chademo~.+ connection_type.3 | Has a <div style='display: inline-block'><b><b>Chademo</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Chademo_type4.svg'/></div> connector | socket:chademo~.+
connection_type.4 | Has a <div style='display: inline-block'><b><b>Type 1 with cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> connector | socket:type1_cable~.+ connection_type.4 | Has a <div style='display: inline-block'><b><b>Type 1 with cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> connector | socket:type1_cable~.+
connection_type.5 | Has a <div style='display: inline-block'><b><b>Type 1 <i>without</i> cable</b> (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> connector | socket:type1~.+ connection_type.5 | Has a <div style='display: inline-block'><b>Type 1 <i>without</i> cable (J1772)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1_J1772.svg'/></div> connector | socket:type1~.+
connection_type.6 | Has a <div style='display: inline-block'><b><b>Type 1 CCS</b> (aka Type 1 Combo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1-ccs.svg'/></div> connector | socket:type1_combo~.+ connection_type.6 | Has a <div style='display: inline-block'><b>Type 1 CCS (aka Type 1 Combo)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type1-ccs.svg'/></div> connector | socket:type1_combo~.+
connection_type.7 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> connector | socket:tesla_supercharger~.+ connection_type.7 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> connector | socket:tesla_supercharger~.+
connection_type.8 | Has a <div style='display: inline-block'><b><b>Type 2</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_socket.svg'/></div> connector | socket:type2~.+ connection_type.8 | Has a <div style='display: inline-block'><b><b>Type 2</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_socket.svg'/></div> connector | socket:type2~.+
connection_type.9 | Has a <div style='display: inline-block'><b><b>Type 2 CCS</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> connector | socket:type2_combo~.+ connection_type.9 | Has a <div style='display: inline-block'><b><b>Type 2 CCS</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> connector | socket:type2_combo~.+
connection_type.10 | Has a <div style='display: inline-block'><b><b>Type 2 with cable</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> connector | socket:type2_cable~.+ connection_type.10 | Has a <div style='display: inline-block'><b><b>Type 2 with cable</b> (mennekes)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> connector | socket:type2_cable~.+
connection_type.11 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> connector | socket:tesla_supercharger_ccs~.+ connection_type.11 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> connector | socket:tesla_supercharger_ccs~.+
connection_type.12 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> connector | socket:tesla_destination~.+ connection_type.12 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> connector | socket:tesla_destination~.+
connection_type.13 | Has a <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> connector | socket:tesla_destination~.+ connection_type.13 | Has a <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> connector | socket:tesla_destination~.+
connection_type.14 | Has a <div style='display: inline-block'><b><b>USB</b> to charge phones and small electronics</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/usb_port.svg'/></div> connector | socket:USB-A~.+ connection_type.14 | Has a <div style='display: inline-block'><b><b>USB</b> to charge phones and small electronics</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/usb_port.svg'/></div> connector | socket:USB-A~.+
connection_type.15 | Has a <div style='display: inline-block'><b><b>Bosch Active Connect with 3 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-3pin.svg'/></div> connector | socket:bosch_3pin~.+ connection_type.15 | Has a <div style='display: inline-block'><b><b>Bosch Active Connect with 3 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-3pin.svg'/></div> connector | socket:bosch_3pin~.+
connection_type.16 | Has a <div style='display: inline-block'><b><b>Bosch Active Connect with 5 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-5pin.svg'/></div> connector | socket:bosch_5pin~.+ connection_type.16 | Has a <div style='display: inline-block'><b><b>Bosch Active Connect with 5 pins</b> and cable</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/bosch-5pin.svg'/></div> connector | socket:bosch_5pin~.+

View file

@ -204,7 +204,7 @@ This is rendered with `Access is {access}`
- This option cannot be chosen as answer - This option cannot be chosen as answer
- *Only customers of the place this station belongs to can use this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests</span>* corresponds with `access=customers` - *Only customers of the place this station belongs to can use this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests</span>* corresponds with `access=customers`
- *A <b>key</b> must be requested to access this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station</span>* corresponds with `access=key` - *A <b>key</b> must be requested to access this charging station<br/><span class='subtle'>E.g. a charging station operated by hotel which is only usable by their guests, which receive a key from the reception to unlock the charging station</span>* corresponds with `access=key`
- *Not accessible to the general public (e.g. only accessible to the owners, employees, ...)* corresponds with `access=private` - *Not accessible to the general public (e.g. only accessible to the owners, employees, )* corresponds with `access=private`
- *This charging station is accessible to the public during certain hours or conditions. Restrictions might apply, but general use is allowed.* corresponds with `access=permissive` - *This charging station is accessible to the public during certain hours or conditions. Restrictions might apply, but general use is allowed.* corresponds with `access=permissive`
@ -618,7 +618,7 @@ This is rendered with `<div style='display: inline-block'><b><b>Schuko wall plu
- *<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kW A* corresponds with `socket:schuko:output=3.6 kW` - *<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kw A* corresponds with `socket:schuko:output=3.6 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:schuko~.+ &socket:schuko!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:schuko~.+ &socket:schuko!=0`
@ -687,8 +687,8 @@ This is rendered with `<div style='display: inline-block'><b><b>European wall p
- *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kW A* corresponds with `socket:typee:output=3 kW` - *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kw A* corresponds with `socket:typee:output=3 kW`
- *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kW A* corresponds with `socket:typee:output=22 kW` - *<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kw A* corresponds with `socket:typee:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:typee~.+ &socket:typee!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:typee~.+ &socket:typee!=0`
@ -757,7 +757,7 @@ This is rendered with `<div style='display: inline-block'><b><b>Chademo</b></b>
- *<b>Chademo</b> outputs at most 50 kW A* corresponds with `socket:chademo:output=50 kW` - *<b>Chademo</b> outputs at most 50 kw A* corresponds with `socket:chademo:output=50 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:chademo~.+ &socket:chademo!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:chademo~.+ &socket:chademo!=0`
@ -827,8 +827,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 1 with cab
- *<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kW A* corresponds with `socket:type1_cable:output=3.7 kW` - *<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kw A* corresponds with `socket:type1_cable:output=3.7 kW`
- *<b>Type 1 with cable</b> (J1772) outputs at most 7 kW A* corresponds with `socket:type1_cable:output=7 kW` - *<b>Type 1 with cable</b> (J1772) outputs at most 7 kw A* corresponds with `socket:type1_cable:output=7 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type1_cable~.+ &socket:type1_cable!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type1_cable~.+ &socket:type1_cable!=0`
@ -898,10 +898,10 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 1 <i>witho
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kW A* corresponds with `socket:type1:output=3.7 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kw A* corresponds with `socket:type1:output=3.7 kW`
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kW A* corresponds with `socket:type1:output=6.6 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kw A* corresponds with `socket:type1:output=6.6 kW`
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kW A* corresponds with `socket:type1:output=7 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kw A* corresponds with `socket:type1:output=7 kW`
- *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kW A* corresponds with `socket:type1:output=7.2 kW` - *<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kw A* corresponds with `socket:type1:output=7.2 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type1~.+ &socket:type1!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type1~.+ &socket:type1!=0`
@ -972,10 +972,10 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 1 CCS</b>
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kW A* corresponds with `socket:type1_combo:output=50 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kw A* corresponds with `socket:type1_combo:output=50 kW`
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kW A* corresponds with `socket:type1_combo:output=62.5 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kw A* corresponds with `socket:type1_combo:output=62.5 kW`
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kW A* corresponds with `socket:type1_combo:output=150 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kw A* corresponds with `socket:type1_combo:output=150 kW`
- *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kW A* corresponds with `socket:type1_combo:output=350 kW` - *<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kw A* corresponds with `socket:type1_combo:output=350 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type1_combo~.+ &socket:type1_combo!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type1_combo~.+ &socket:type1_combo!=0`
@ -1045,9 +1045,9 @@ This is rendered with `<div style='display: inline-block'><b><b>Tesla Superchar
- *<b>Tesla Supercharger</b> outputs at most 120 kW A* corresponds with `socket:tesla_supercharger:output=120 kW` - *<b>Tesla Supercharger</b> outputs at most 120 kw A* corresponds with `socket:tesla_supercharger:output=120 kW`
- *<b>Tesla Supercharger</b> outputs at most 150 kW A* corresponds with `socket:tesla_supercharger:output=150 kW` - *<b>Tesla Supercharger</b> outputs at most 150 kw A* corresponds with `socket:tesla_supercharger:output=150 kW`
- *<b>Tesla Supercharger</b> outputs at most 250 kW A* corresponds with `socket:tesla_supercharger:output=250 kW` - *<b>Tesla Supercharger</b> outputs at most 250 kw A* corresponds with `socket:tesla_supercharger:output=250 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0`
@ -1118,8 +1118,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 2</b> (men
- *<b>Type 2</b> (mennekes) outputs at most 11 kW A* corresponds with `socket:type2:output=11 kW` - *<b>Type 2</b> (mennekes) outputs at most 11 kw A* corresponds with `socket:type2:output=11 kW`
- *<b>Type 2</b> (mennekes) outputs at most 22 kW A* corresponds with `socket:type2:output=22 kW` - *<b>Type 2</b> (mennekes) outputs at most 22 kw A* corresponds with `socket:type2:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type2~.+ &socket:type2!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type2~.+ &socket:type2!=0`
@ -1190,7 +1190,7 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 2 CCS</b>
- *<b>Type 2 CCS</b> (mennekes) outputs at most 50 kW A* corresponds with `socket:type2_combo:output=50 kW` - *<b>Type 2 CCS</b> (mennekes) outputs at most 50 kw A* corresponds with `socket:type2_combo:output=50 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type2_combo~.+ &socket:type2_combo!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type2_combo~.+ &socket:type2_combo!=0`
@ -1261,8 +1261,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Type 2 with cab
- *<b>Type 2 with cable</b> (mennekes) outputs at most 11 kW A* corresponds with `socket:type2_cable:output=11 kW` - *<b>Type 2 with cable</b> (mennekes) outputs at most 11 kw A* corresponds with `socket:type2_cable:output=11 kW`
- *<b>Type 2 with cable</b> (mennekes) outputs at most 22 kW A* corresponds with `socket:type2_cable:output=22 kW` - *<b>Type 2 with cable</b> (mennekes) outputs at most 22 kw A* corresponds with `socket:type2_cable:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:type2_cable~.+ &socket:type2_cable!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:type2_cable~.+ &socket:type2_cable!=0`
@ -1275,18 +1275,18 @@ This tagrendering has labels `technical`
The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?* The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_supercharger_ccs:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:voltage) This rendering asks information about the property [socket:tesla_supercharger_ccs:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:voltage)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs {socket:tesla_supercharger_ccs:voltage} volt` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs {socket:tesla_supercharger_ccs:voltage} volt`
- *<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 500 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=500 V` - *<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 500 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=500 V`
- *<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 920 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=920 V` - *<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 920 volt* corresponds with `socket:tesla_supercharger_ccs:voltage=920 V`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0`
@ -1323,17 +1323,17 @@ This tagrendering has labels `technical`
The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?* The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_supercharger_ccs:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:output) This rendering asks information about the property [socket:tesla_supercharger_ccs:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_supercharger_ccs:output)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded type2_css)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs at most {socket:tesla_supercharger_ccs:output}` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger CCS</b> (a branded Type 2 CSS)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_CCS.svg'/></div> outputs at most {socket:tesla_supercharger_ccs:output}`
- *<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs at most 50 kW A* corresponds with `socket:tesla_supercharger_ccs:output=50 kW` - *<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs at most 50 kw A* corresponds with `socket:tesla_supercharger_ccs:output=50 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0`
@ -1346,17 +1346,17 @@ This tagrendering has labels `technical`
The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?* The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage) This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs {socket:tesla_destination:voltage} volt` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs {socket:tesla_destination:voltage} volt`
- *<b>Tesla Supercharger (destination)</b> outputs 480 volt* corresponds with `socket:tesla_destination:voltage=480 V` - *<b>Tesla Supercharger (Destination)</b> outputs 480 volt* corresponds with `socket:tesla_destination:voltage=480 V`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1369,18 +1369,18 @@ This tagrendering has labels `technical`
The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?* The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current) This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:current}A` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:current}A`
- *<b>Tesla Supercharger (destination)</b> outputs at most 125 A* corresponds with `socket:tesla_destination:current=125 A` - *<b>Tesla Supercharger (Destination)</b> outputs at most 125 A* corresponds with `socket:tesla_destination:current=125 A`
- *<b>Tesla Supercharger (destination)</b> outputs at most 350 A* corresponds with `socket:tesla_destination:current=350 A` - *<b>Tesla Supercharger (Destination)</b> outputs at most 350 A* corresponds with `socket:tesla_destination:current=350 A`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1393,19 +1393,19 @@ This tagrendering has labels `technical`
The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?* The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output) This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output)
This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:output}` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b></b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Tesla-hpwc-model-s.svg'/></div> outputs at most {socket:tesla_destination:output}`
- *<b>Tesla Supercharger (destination)</b> outputs at most 120 kW A* corresponds with `socket:tesla_destination:output=120 kW` - *<b>Tesla Supercharger (Destination)</b> outputs at most 120 kw A* corresponds with `socket:tesla_destination:output=120 kW`
- *<b>Tesla Supercharger (destination)</b> outputs at most 150 kW A* corresponds with `socket:tesla_destination:output=150 kW` - *<b>Tesla Supercharger (Destination)</b> outputs at most 150 kw A* corresponds with `socket:tesla_destination:output=150 kW`
- *<b>Tesla Supercharger (destination)</b> outputs at most 250 kW A* corresponds with `socket:tesla_destination:output=250 kW` - *<b>Tesla Supercharger (Destination)</b> outputs at most 250 kw A* corresponds with `socket:tesla_destination:output=250 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1418,7 +1418,7 @@ This tagrendering has labels `technical`
The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?* The question is *What voltage do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage) This rendering asks information about the property [socket:tesla_destination:voltage](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:voltage)
@ -1428,8 +1428,8 @@ This is rendered with `<div style='display: inline-block'><b><b>Tesla superchar
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 230 volt* corresponds with `socket:tesla_destination:voltage=230 V` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 230 volt* corresponds with `socket:tesla_destination:voltage=230 V`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 400 volt* corresponds with `socket:tesla_destination:voltage=400 V` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 400 volt* corresponds with `socket:tesla_destination:voltage=400 V`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1442,18 +1442,18 @@ This tagrendering has labels `technical`
The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?* The question is *What current do the plugs with <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current) This rendering asks information about the property [socket:tesla_destination:current](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:current)
This is rendered with `<div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:current}A` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:current}A`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A* corresponds with `socket:tesla_destination:current=16 A` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A* corresponds with `socket:tesla_destination:current=16 A`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 32 A* corresponds with `socket:tesla_destination:current=32 A` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 32 A* corresponds with `socket:tesla_destination:current=32 A`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1466,18 +1466,18 @@ This tagrendering has labels `technical`
The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?* The question is *What power output does a single plug of type <div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> offer?*
This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output) This rendering asks information about the property [socket:tesla_destination:output](https://wiki.openstreetmap.org/wiki/Key:socket:tesla_destination:output)
This is rendered with `<div style='display: inline-block'><b><b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:output}` This is rendered with `<div style='display: inline-block'><b><b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla)</b> <img style='width:1rem; display: inline-block' src='./assets/layers/charging_station/Type2_tethered.svg'/></div> outputs at most {socket:tesla_destination:output}`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 11 kW A* corresponds with `socket:tesla_destination:output=11 kW` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 11 kw A* corresponds with `socket:tesla_destination:output=11 kW`
- *<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 22 kW A* corresponds with `socket:tesla_destination:output=22 kW` - *<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 22 kw A* corresponds with `socket:tesla_destination:output=22 kW`
This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:tesla_destination~.+ &socket:tesla_destination!=0`
@ -1547,8 +1547,8 @@ This is rendered with `<div style='display: inline-block'><b><b>USB</b> to char
- *<b>USB</b> to charge phones and small electronics outputs at most 5W A* corresponds with `socket:USB-A:output=5W` - *<b>USB</b> to charge phones and small electronics outputs at most 5w A* corresponds with `socket:USB-A:output=5W`
- *<b>USB</b> to charge phones and small electronics outputs at most 10W A* corresponds with `socket:USB-A:output=10W` - *<b>USB</b> to charge phones and small electronics outputs at most 10w A* corresponds with `socket:USB-A:output=10W`
This tagrendering is only visible in the popup if the following condition is met: `socket:USB-A~.+ &socket:USB-A!=0` This tagrendering is only visible in the popup if the following condition is met: `socket:USB-A~.+ &socket:USB-A!=0`
@ -1728,7 +1728,7 @@ The question is *Does one have to pay to use this charging station?*
- *Free to use, but one has to authenticate* corresponds with `fee=no &authentication:none=no` - *Free to use, but one has to authenticate* corresponds with `fee=no &authentication:none=no`
- *Free to use* corresponds with `fee=no` - *Free to use* corresponds with `fee=no`
- This option cannot be chosen as answer - This option cannot be chosen as answer
- *Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station* corresponds with `fee=yes&fee:conditional=no @ customers` - *Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station* corresponds with `fee=yes &fee:conditional=no @ customers`
- *Paid use* corresponds with `fee=yes` - *Paid use* corresponds with `fee=yes`

View file

@ -482,7 +482,7 @@ This tagrendering is only visible in the popup if the following condition is met
This tagrendering has no question and is thus read-only The question is *Does this shop offer key cutting?*

View file

@ -482,7 +482,7 @@ This tagrendering is only visible in the popup if the following condition is met
This tagrendering has no question and is thus read-only The question is *Does this shop offer key cutting?*

View file

@ -487,7 +487,7 @@ This tagrendering is only visible in the popup if the following condition is met
This tagrendering has no question and is thus read-only The question is *Does this shop offer key cutting?*

View file

@ -499,7 +499,7 @@ This tagrendering is only visible in the popup if the following condition is met
This tagrendering has no question and is thus read-only The question is *Does this shop offer key cutting?*

View file

@ -83,12 +83,12 @@ This tagrendering has no question and is thus read-only
- *<div> Dit is een woonerf: <ul><li>Voetgangers mogen hier de volledige breedte van de straat gebruiken</li><li>Gemotoriseerd verkeer mag maximaal <b>20km/h</b> rijden</li></ul></div>* corresponds with `highway=living_street` - *This is a living street* corresponds with `highway=living_street`
- *Dit is een brede, autovrije straat* corresponds with `highway=pedestrian` - *This is a wide, carfree street* corresponds with `highway=pedestrian`
- *Dit is een voetpaadje* corresponds with `highway=footway` - *This is a footway* corresponds with `highway=footway`
- *Dit is een wegeltje of bospad* corresponds with `highway=path` - *This is a small path* corresponds with `highway=path`
- *Dit is een ruiterswegel* corresponds with `highway=bridleway` - *This is a bridleway* corresponds with `highway=bridleway`
- *Dit is een tractorspoor of weg om landbouwgrond te bereikken* corresponds with `highway=track` - *This is a land access road* corresponds with `highway=track`
@ -97,7 +97,7 @@ This tagrendering has no question and is thus read-only
The question is *Wat is de wegverharding van dit pad?* The question is *What surface does this road have?*
This rendering asks information about the property [surface](https://wiki.openstreetmap.org/wiki/Key:surface) This rendering asks information about the property [surface](https://wiki.openstreetmap.org/wiki/Key:surface)
@ -125,14 +125,14 @@ This is rendered with `The surface is <b>{surface}</b>`
The question is *Is deze weg 's nachts verlicht?* The question is *Is this road lit at night?*
- *'s nachts verlicht* corresponds with `lit=yes` - *'s nachts verlicht* corresponds with `lit=yes`
- *Niet verlicht* corresponds with `lit=no` - *Not lit* corresponds with `lit=no`

View file

@ -482,7 +482,7 @@ This tagrendering is only visible in the popup if the following condition is met
This tagrendering has no question and is thus read-only The question is *Does this shop offer key cutting?*

View file

@ -7,7 +7,7 @@
Aangeduide wandeltochten Waymarked trails
@ -89,11 +89,11 @@ This tagrendering has no question and is thus read-only
The question is *Wat is de naam van deze wandeling?* The question is *What is the name of this trail?*
This rendering asks information about the property [name](https://wiki.openstreetmap.org/wiki/Key:name) This rendering asks information about the property [name](https://wiki.openstreetmap.org/wiki/Key:name)
This is rendered with `Deze wandeling heet <b>{name}</b>` This is rendered with `This trail is called <b>{name}</b>`
@ -103,18 +103,18 @@ This is rendered with `Deze wandeling heet <b>{name}</b>`
The question is *Wie beheert deze wandeltocht?* The question is *Who maintains this trail?*
This rendering asks information about the property [operator](https://wiki.openstreetmap.org/wiki/Key:operator) This rendering asks information about the property [operator](https://wiki.openstreetmap.org/wiki/Key:operator)
This is rendered with `Beheer door {operator}` This is rendered with `This trail is maintained by {operator}`
- *Dit gebied wordt beheerd door Natuurpunt* corresponds with `operator=Natuurpunt` - *This trail is maintained by Natuurpunt* corresponds with `operator=Natuurpunt`
- *Dit gebied wordt beheerd door {operator}* corresponds with `operator~^((n|N)atuurpunt.*)$` - *This trail is maintained by {operator}* corresponds with `operator~^((n|N)atuurpunt.*)$`
- This option cannot be chosen as answer - This option cannot be chosen as answer
@ -124,11 +124,11 @@ This is rendered with `Beheer door {operator}`
The question is *Welke kleur heeft deze wandeling?* The question is *What is the reference colour of this trail?*
This rendering asks information about the property [colour](https://wiki.openstreetmap.org/wiki/Key:colour) This rendering asks information about the property [colour](https://wiki.openstreetmap.org/wiki/Key:colour)
This is rendered with `Deze wandeling heeft kleur {colour}` This is rendered with `The reference colour is {colour}`
@ -146,14 +146,14 @@ This is rendered with `Deze wandeling heeft kleur {colour}`
The question is *Is deze wandeling toegankelijk met de rolstoel?* The question is *Is this trail wheelchair accessible?*
- *deze wandeltocht is toegankelijk met de rolstoel* corresponds with `wheelchair=yes` - *This trail is wheelchair-accessible* corresponds with `wheelchair=yes`
- *deze wandeltocht is niet toegankelijk met de rolstoel* corresponds with `wheelchair=no` - *This trail is not wheelchair accessible* corresponds with `wheelchair=no`
@ -162,14 +162,14 @@ The question is *Is deze wandeling toegankelijk met de rolstoel?*
The question is *Is deze wandeltocht toegankelijk met de buggy?* The question is *Is this trail accessible with a pushchair?*
- *deze wandeltocht is toegankelijk met de buggy* corresponds with `pushchair=yes` - *This trail is accessible with a pushchair* corresponds with `pushchair=yes`
- *deze wandeltocht is niet toegankelijk met de buggy* corresponds with `pushchair=no` - *This trail is not accessible with a pushchair* corresponds with `pushchair=no`

View file

@ -39,7 +39,7 @@
"description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer."
}, },
"maxCacheAge": { "maxCacheAge": {
"description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days", "description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days\ngroup: expert",
"type": "number" "type": "number"
} }
}, },
@ -59,7 +59,7 @@
"type": "number" "type": "number"
}, },
"isOsmCache": { "isOsmCache": {
"description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited", "description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"mercatorCrs": { "mercatorCrs": {
@ -680,7 +680,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -715,10 +715,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -742,7 +739,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -868,7 +865,7 @@
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -1177,7 +1174,7 @@
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1188,27 +1185,27 @@
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1221,10 +1218,7 @@
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1317,7 +1311,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1395,7 +1389,7 @@
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1406,27 +1400,27 @@
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1439,10 +1433,7 @@
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1535,7 +1526,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"

View file

@ -39,7 +39,7 @@ export default {
"description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer."
}, },
"maxCacheAge": { "maxCacheAge": {
"description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days", "description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days\ngroup: expert",
"type": "number" "type": "number"
} }
}, },
@ -59,7 +59,7 @@ export default {
"type": "number" "type": "number"
}, },
"isOsmCache": { "isOsmCache": {
"description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited", "description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"mercatorCrs": { "mercatorCrs": {
@ -673,7 +673,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -708,10 +708,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -735,7 +732,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -859,7 +856,7 @@ export default {
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -1164,7 +1161,7 @@ export default {
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1175,27 +1172,27 @@ export default {
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1208,10 +1205,7 @@ export default {
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1304,7 +1298,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1381,7 +1375,7 @@ export default {
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1392,27 +1386,27 @@ export default {
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1425,10 +1419,7 @@ export default {
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1521,7 +1512,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"

View file

@ -592,7 +592,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -627,10 +627,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -654,7 +651,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -780,7 +777,7 @@
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -1089,7 +1086,7 @@
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1100,27 +1097,27 @@
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1133,10 +1130,7 @@
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1229,7 +1223,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1307,7 +1301,7 @@
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1318,27 +1312,27 @@
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1351,10 +1345,7 @@
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1447,7 +1438,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1820,7 +1811,7 @@
"description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer."
}, },
"maxCacheAge": { "maxCacheAge": {
"description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days", "description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days\ngroup: expert",
"type": "number" "type": "number"
} }
}, },
@ -1840,7 +1831,7 @@
"type": "number" "type": "number"
}, },
"isOsmCache": { "isOsmCache": {
"description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited", "description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"mercatorCrs": { "mercatorCrs": {
@ -2220,7 +2211,7 @@
"description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer."
}, },
"maxCacheAge": { "maxCacheAge": {
"description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days", "description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days\ngroup: expert",
"type": "number" "type": "number"
} }
}, },
@ -2240,7 +2231,7 @@
"type": "number" "type": "number"
}, },
"isOsmCache": { "isOsmCache": {
"description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited", "description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"mercatorCrs": { "mercatorCrs": {

View file

@ -585,7 +585,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -620,10 +620,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -647,7 +644,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -771,7 +768,7 @@ export default {
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -1076,7 +1073,7 @@ export default {
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1087,27 +1084,27 @@ export default {
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1120,10 +1117,7 @@ export default {
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1216,7 +1210,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1293,7 +1287,7 @@ export default {
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -1304,27 +1298,27 @@ export default {
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1337,10 +1331,7 @@ export default {
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -1433,7 +1424,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -1799,7 +1790,7 @@ export default {
"description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer."
}, },
"maxCacheAge": { "maxCacheAge": {
"description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days", "description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days\ngroup: expert",
"type": "number" "type": "number"
} }
}, },
@ -1819,7 +1810,7 @@ export default {
"type": "number" "type": "number"
}, },
"isOsmCache": { "isOsmCache": {
"description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited", "description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"mercatorCrs": { "mercatorCrs": {
@ -2198,7 +2189,7 @@ export default {
"description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer." "description": "question: Which tags must be present on the feature to show it in this layer?\nEvery source must set which tags have to be present in order to load the given layer."
}, },
"maxCacheAge": { "maxCacheAge": {
"description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days", "description": "question: How long (in seconds) is the data allowed to remain cached until it must be refreshed?\nThe maximum amount of seconds that a tile is allowed to linger in the cache\n\ntype: nat\ndefault: 30 days\ngroup: expert",
"type": "number" "type": "number"
} }
}, },
@ -2218,7 +2209,7 @@ export default {
"type": "number" "type": "number"
}, },
"isOsmCache": { "isOsmCache": {
"description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited", "description": "Indicates that the upstream geojson data is OSM-derived.\nUseful for e.g. merging or for scripts generating this cache.\nThis also indicates that making changes on this data is possible\n\nquestion: Is this geojson a cache of OpenStreetMap data?\nifunset: This is not an OpenStreetMap cache\niftrue: this is based on OpenStreetMap and can thus be edited\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"mercatorCrs": { "mercatorCrs": {

View file

@ -348,7 +348,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -383,10 +383,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -410,7 +407,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -341,7 +341,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -376,10 +376,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -403,7 +400,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -72,7 +72,7 @@
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -388,7 +388,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -423,10 +423,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -450,7 +447,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -72,7 +72,7 @@ export default {
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
@ -381,7 +381,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -416,10 +416,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -443,7 +440,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -449,7 +449,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -484,10 +484,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -511,7 +508,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -442,7 +442,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -477,10 +477,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -504,7 +501,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -29,7 +29,7 @@
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -40,27 +40,27 @@
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -73,10 +73,7 @@
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -169,7 +166,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -498,7 +495,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -533,10 +530,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -560,7 +554,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -686,7 +680,7 @@
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"

View file

@ -29,7 +29,7 @@ export default {
"type": "string" "type": "string"
}, },
"placeholder": { "placeholder": {
"description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation", "description": "question: What placeholder text should be shown in the input-element if there is no input?\nA (translated) text that is shown (as gray text) within the textfield\ntype: translation\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/Record<string,string>" "$ref": "#/definitions/Record<string,string>"
@ -40,27 +40,27 @@ export default {
] ]
}, },
"helperArgs": { "helperArgs": {
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'", "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'\ngroup: expert",
"type": "array", "type": "array",
"items": {} "items": {}
}, },
"addExtraTags": { "addExtraTags": {
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'", "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'\ngroup: expert",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"
} }
}, },
"inline": { "inline": {
"description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question", "description": "question: Show the freeform as box within the question?\nInstead of showing a full-width text field, the text field will be shown within the rendering of the question.\n\nThis combines badly with special input elements, as it'll distort the layout.\nifunset: show the freeform input field full-width\niftrue: show the freeform input field as a small field within the question\ngroup: expert",
"type": "boolean" "type": "boolean"
}, },
"default": { "default": {
"description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield", "description": "question: What value should be entered in the text field if no value is set?\nThis can help people to quickly enter the most common option\nifunset: do not prefill the textfield\ngroup: expert",
"type": "string" "type": "string"
}, },
"invalidValues": { "invalidValues": {
"description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key", "description": "question: What values of the freeform key should be interpreted as 'unknown'?\nFor example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked\nifunset: The question will be considered answered if any value is set for the key\ngroup: expert",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -73,10 +73,7 @@ export default {
} }
] ]
} }
}, }
"required": [
"key"
]
}, },
"question": { "question": {
"description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering", "description": "question: What question should be shown to the contributor?\n\nA question is presented ot the user if no mapping matches and the 'freeform' key is not set as well.\n\nifunset: This tagrendering will be shown if it is known, but cannot be edited by the contributor, effectively resutling in a read-only rendering",
@ -169,7 +166,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -491,7 +488,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -526,10 +523,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -553,7 +547,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -677,7 +671,7 @@ export default {
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"

View file

@ -315,7 +315,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -350,10 +350,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -377,7 +374,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -503,7 +500,7 @@
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"

View file

@ -308,7 +308,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -343,10 +343,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -370,7 +367,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",
@ -494,7 +491,7 @@ export default {
] ]
}, },
"addExtraTags": { "addExtraTags": {
"description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag[]\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```", "description": "question: What extra tags should be added to the object if this object is chosen?\ntype: simple_tag\n\nIf chosen as answer, these tags will be applied onto the object, together with the tags from the `if`\nNot compatible with multiAnswer.\n\nThis can be used e.g. to erase other keys which indicate the 'not' value:\n```json\n{\n \"if\": \"crossing:marking=rainbow\",\n \"then\": \"This is a rainbow crossing\",\n \"addExtraTags\": [\"not:crossing:marking=\"]\n}\n```",
"type": "array", "type": "array",
"items": { "items": {
"type": "string" "type": "string"

View file

@ -64,7 +64,7 @@
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -99,10 +99,7 @@
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -126,7 +123,7 @@
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -64,7 +64,7 @@ export default {
] ]
}, },
"condition": { "condition": {
"description": "question: When should this item be shown?\ntype: tag\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```", "description": "question: When should this item be shown?\ntype: tag\nifunset: No specific condition set; always show this tagRendering or ask the question if unkown\n\nOnly show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.\n\nThis is useful to ask a follow-up question.\nFor example, within toilets, asking _where_ the diaper changing table is is only useful _if_ there is one.\nThis can be done by adding `\"condition\": \"changing_table=yes\"`\n\nA full example would be:\n```json\n {\n \"question\": \"Where is the changing table located?\",\n \"render\": \"The changing table is located at {changing_table:location}\",\n \"condition\": \"changing_table=yes\",\n \"freeform\": {\n \"key\": \"changing_table:location\",\n \"inline\": true\n },\n \"mappings\": [\n {\n \"then\": \"The changing table is in the toilet for women.\",\n \"if\": \"changing_table:location=female_toilet\"\n },\n {\n \"then\": \"The changing table is in the toilet for men.\",\n \"if\": \"changing_table:location=male_toilet\"\n },\n {\n \"if\": \"changing_table:location=wheelchair_toilet\",\n \"then\": \"The changing table is in the toilet for wheelchair users.\",\n },\n {\n \"if\": \"changing_table:location=dedicated_room\",\n \"then\": \"The changing table is in a dedicated room. \",\n }\n ],\n \"id\": \"toilet-changing_table:location\"\n },\n```",
"anyOf": [ "anyOf": [
{ {
"$ref": "#/definitions/{and:TagConfigJson[];}" "$ref": "#/definitions/{and:TagConfigJson[];}"
@ -99,10 +99,7 @@ export default {
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown", "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown",
"type": "string" "type": "string"
} }
}, }
"required": [
"key"
]
}, },
"mappings": { "mappings": {
"description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes", "description": "Allows fixed-tag inputs, shown either as radiobuttons or as checkboxes",
@ -126,7 +123,7 @@ export default {
] ]
}, },
"icon": { "icon": {
"description": "question: What icon should be added to this mapping?\nAn icon supporting this mapping; typically shown pretty small\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon", "description": "question: What icon should be added to this mapping?\nifunset: Do not show an extra icon next to the render value\n\nAn icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number\ninline: <img src='{icon}' class=\"w-8 h-8\" /> {icon}\nType: icon",
"anyOf": [ "anyOf": [
{ {
"type": "object", "type": "object",

View file

@ -57,9 +57,12 @@ You can find the meaning of all those keys and values on the [OpenStreetMap-wiki
Many traditional GIS-applications organise the data into layers. Many traditional GIS-applications organise the data into layers.
OpenStreetMap does not do this. Consider this shop: OpenStreetMap does not do this. Consider this place:
!['t spel op de wagen](TODO) <div class="flex">
<img class="w-1/2 pr-4" src="../../public/assets/docs/SpelOpDeWagen.jpg">
<div>
This place has three functions: This place has three functions:
@ -69,6 +72,8 @@ This place has three functions:
In a traditional system with layers, one would either have to choose the most fitting layer (e.g. the layer `pub`, `shops` or `social facility`? ) losing the multi-facetted aspect of the place. In a traditional system with layers, one would either have to choose the most fitting layer (e.g. the layer `pub`, `shops` or `social facility`? ) losing the multi-facetted aspect of the place.
Another approach could be to add it to all three layers, duplicating the data. However, this makes maintaining the data harder. Another approach could be to add it to all three layers, duplicating the data. However, this makes maintaining the data harder.
</div>
</div>
# What is MapComplete? # What is MapComplete?

View file

@ -101,7 +101,7 @@
}, },
{ {
"key": "access", "key": "access",
"description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, ...)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations')", "description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, )' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations')",
"value": "private" "value": "private"
}, },
{ {
@ -345,7 +345,7 @@
}, },
{ {
"key": "socket:schuko:output", "key": "socket:schuko:output",
"description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely '<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:schuko~.+&socket:schuko!=0)", "description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely '<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:schuko~.+ &socket:schuko!=0)",
"value": "3.6 kW" "value": "3.6 kW"
}, },
{ {
@ -372,12 +372,12 @@
}, },
{ {
"key": "socket:typee:output", "key": "socket:typee:output",
"description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:typee~.+&socket:typee!=0)", "description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:typee~.+ &socket:typee!=0)",
"value": "3 kW" "value": "3 kW"
}, },
{ {
"key": "socket:typee:output", "key": "socket:typee:output",
"description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:typee~.+&socket:typee!=0)", "description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:typee~.+ &socket:typee!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -404,7 +404,7 @@
}, },
{ {
"key": "socket:chademo:output", "key": "socket:chademo:output",
"description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely '<b>Chademo</b> outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:chademo~.+&socket:chademo!=0)", "description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely '<b>Chademo</b> outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:chademo~.+ &socket:chademo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -436,12 +436,12 @@
}, },
{ {
"key": "socket:type1_cable:output", "key": "socket:type1_cable:output",
"description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_cable~.+&socket:type1_cable!=0)", "description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_cable~.+ &socket:type1_cable!=0)",
"value": "3.7 kW" "value": "3.7 kW"
}, },
{ {
"key": "socket:type1_cable:output", "key": "socket:type1_cable:output",
"description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_cable~.+&socket:type1_cable!=0)", "description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_cable~.+ &socket:type1_cable!=0)",
"value": "7 kW" "value": "7 kW"
}, },
{ {
@ -473,22 +473,22 @@
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "3.7 kW" "value": "3.7 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "6.6 kW" "value": "6.6 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "7 kW" "value": "7 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "7.2 kW" "value": "7.2 kW"
}, },
{ {
@ -525,22 +525,22 @@
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "62.5 kW" "value": "62.5 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "350 kW" "value": "350 kW"
}, },
{ {
@ -572,17 +572,17 @@
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 120 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "120 kW" "value": "120 kW"
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 250 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "250 kW" "value": "250 kW"
}, },
{ {
@ -619,12 +619,12 @@
}, },
{ {
"key": "socket:type2:output", "key": "socket:type2:output",
"description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2~.+&socket:type2!=0)", "description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2~.+ &socket:type2!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:type2:output", "key": "socket:type2:output",
"description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2~.+&socket:type2!=0)", "description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2~.+ &socket:type2!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -661,7 +661,7 @@
}, },
{ {
"key": "socket:type2_combo:output", "key": "socket:type2_combo:output",
"description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely '<b>Type 2 CCS</b> (mennekes) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2_combo~.+&socket:type2_combo!=0)", "description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely '<b>Type 2 CCS</b> (mennekes) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2_combo~.+ &socket:type2_combo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -698,12 +698,12 @@
}, },
{ {
"key": "socket:type2_cable:output", "key": "socket:type2_cable:output",
"description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2_cable~.+&socket:type2_cable!=0)", "description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2_cable~.+ &socket:type2_cable!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:type2_cable:output", "key": "socket:type2_cable:output",
"description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2_cable~.+&socket:type2_cable!=0)", "description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:type2_cable~.+ &socket:type2_cable!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -712,12 +712,12 @@
}, },
{ {
"key": "socket:tesla_supercharger_ccs:voltage", "key": "socket:tesla_supercharger_ccs:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "500 V" "value": "500 V"
}, },
{ {
"key": "socket:tesla_supercharger_ccs:voltage", "key": "socket:tesla_supercharger_ccs:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "920 V" "value": "920 V"
}, },
{ {
@ -740,7 +740,7 @@
}, },
{ {
"key": "socket:tesla_supercharger_ccs:output", "key": "socket:tesla_supercharger_ccs:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -749,7 +749,7 @@
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "480 V" "value": "480 V"
}, },
{ {
@ -758,12 +758,12 @@
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "125 A" "value": "125 A"
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "350 A" "value": "350 A"
}, },
{ {
@ -772,17 +772,17 @@
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 120 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "120 kW" "value": "120 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 250 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "250 kW" "value": "250 kW"
}, },
{ {
@ -791,12 +791,12 @@
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "230 V" "value": "230 V"
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "400 V" "value": "400 V"
}, },
{ {
@ -805,12 +805,12 @@
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "16 A" "value": "16 A"
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "32 A" "value": "32 A"
}, },
{ {
@ -819,12 +819,12 @@
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -856,12 +856,12 @@
}, },
{ {
"key": "socket:USB-A:output", "key": "socket:USB-A:output",
"description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 5W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:USB-A~.+&socket:USB-A!=0)", "description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 5w A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:USB-A~.+ &socket:USB-A!=0)",
"value": "5W" "value": "5W"
}, },
{ {
"key": "socket:USB-A:output", "key": "socket:USB-A:output",
"description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 10W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:USB-A~.+&socket:USB-A!=0)", "description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 10w A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations') (This is only shown if socket:USB-A~.+ &socket:USB-A!=0)",
"value": "10W" "value": "10W"
}, },
{ {
@ -944,12 +944,12 @@
}, },
{ {
"key": "fee", "key": "fee",
"description": "Layer 'Charging stations' shows fee=yes&fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations')", "description": "Layer 'Charging stations' shows fee=yes &fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations')",
"value": "yes" "value": "yes"
}, },
{ {
"key": "fee:conditional", "key": "fee:conditional",
"description": "Layer 'Charging stations' shows fee=yes&fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations')", "description": "Layer 'Charging stations' shows fee=yes &fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Charging stations')",
"value": "no @ customers" "value": "no @ customers"
}, },
{ {

View file

@ -1758,22 +1758,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (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)", "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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (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)", "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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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" "value": "no"
}, },
{ {
@ -2886,22 +2886,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (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)", "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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (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)", "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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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" "value": "no"
}, },
{ {

View file

@ -1546,7 +1546,7 @@
}, },
{ {
"key": "access", "key": "access",
"description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, ...)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", "description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, )' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "private" "value": "private"
}, },
{ {
@ -1790,7 +1790,7 @@
}, },
{ {
"key": "socket:schuko:output", "key": "socket:schuko:output",
"description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely '<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:schuko~.+&socket:schuko!=0)", "description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely '<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:schuko~.+ &socket:schuko!=0)",
"value": "3.6 kW" "value": "3.6 kW"
}, },
{ {
@ -1817,12 +1817,12 @@
}, },
{ {
"key": "socket:typee:output", "key": "socket:typee:output",
"description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:typee~.+&socket:typee!=0)", "description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:typee~.+ &socket:typee!=0)",
"value": "3 kW" "value": "3 kW"
}, },
{ {
"key": "socket:typee:output", "key": "socket:typee:output",
"description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:typee~.+&socket:typee!=0)", "description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:typee~.+ &socket:typee!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -1849,7 +1849,7 @@
}, },
{ {
"key": "socket:chademo:output", "key": "socket:chademo:output",
"description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely '<b>Chademo</b> outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:chademo~.+&socket:chademo!=0)", "description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely '<b>Chademo</b> outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:chademo~.+ &socket:chademo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -1881,12 +1881,12 @@
}, },
{ {
"key": "socket:type1_cable:output", "key": "socket:type1_cable:output",
"description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_cable~.+&socket:type1_cable!=0)", "description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_cable~.+ &socket:type1_cable!=0)",
"value": "3.7 kW" "value": "3.7 kW"
}, },
{ {
"key": "socket:type1_cable:output", "key": "socket:type1_cable:output",
"description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_cable~.+&socket:type1_cable!=0)", "description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_cable~.+ &socket:type1_cable!=0)",
"value": "7 kW" "value": "7 kW"
}, },
{ {
@ -1918,22 +1918,22 @@
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "3.7 kW" "value": "3.7 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "6.6 kW" "value": "6.6 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "7 kW" "value": "7 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "7.2 kW" "value": "7.2 kW"
}, },
{ {
@ -1970,22 +1970,22 @@
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "62.5 kW" "value": "62.5 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "350 kW" "value": "350 kW"
}, },
{ {
@ -2017,17 +2017,17 @@
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 120 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "120 kW" "value": "120 kW"
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 250 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "250 kW" "value": "250 kW"
}, },
{ {
@ -2064,12 +2064,12 @@
}, },
{ {
"key": "socket:type2:output", "key": "socket:type2:output",
"description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2~.+&socket:type2!=0)", "description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2~.+ &socket:type2!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:type2:output", "key": "socket:type2:output",
"description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2~.+&socket:type2!=0)", "description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2~.+ &socket:type2!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -2106,7 +2106,7 @@
}, },
{ {
"key": "socket:type2_combo:output", "key": "socket:type2_combo:output",
"description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely '<b>Type 2 CCS</b> (mennekes) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2_combo~.+&socket:type2_combo!=0)", "description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely '<b>Type 2 CCS</b> (mennekes) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2_combo~.+ &socket:type2_combo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -2143,12 +2143,12 @@
}, },
{ {
"key": "socket:type2_cable:output", "key": "socket:type2_cable:output",
"description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2_cable~.+&socket:type2_cable!=0)", "description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2_cable~.+ &socket:type2_cable!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:type2_cable:output", "key": "socket:type2_cable:output",
"description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2_cable~.+&socket:type2_cable!=0)", "description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:type2_cable~.+ &socket:type2_cable!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -2157,12 +2157,12 @@
}, },
{ {
"key": "socket:tesla_supercharger_ccs:voltage", "key": "socket:tesla_supercharger_ccs:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "500 V" "value": "500 V"
}, },
{ {
"key": "socket:tesla_supercharger_ccs:voltage", "key": "socket:tesla_supercharger_ccs:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "920 V" "value": "920 V"
}, },
{ {
@ -2185,7 +2185,7 @@
}, },
{ {
"key": "socket:tesla_supercharger_ccs:output", "key": "socket:tesla_supercharger_ccs:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -2194,7 +2194,7 @@
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "480 V" "value": "480 V"
}, },
{ {
@ -2203,12 +2203,12 @@
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "125 A" "value": "125 A"
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "350 A" "value": "350 A"
}, },
{ {
@ -2217,17 +2217,17 @@
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 120 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "120 kW" "value": "120 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 250 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "250 kW" "value": "250 kW"
}, },
{ {
@ -2236,12 +2236,12 @@
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "230 V" "value": "230 V"
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "400 V" "value": "400 V"
}, },
{ {
@ -2250,12 +2250,12 @@
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "16 A" "value": "16 A"
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "32 A" "value": "32 A"
}, },
{ {
@ -2264,12 +2264,12 @@
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -2301,12 +2301,12 @@
}, },
{ {
"key": "socket:USB-A:output", "key": "socket:USB-A:output",
"description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 5W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:USB-A~.+&socket:USB-A!=0)", "description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 5w A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:USB-A~.+ &socket:USB-A!=0)",
"value": "5W" "value": "5W"
}, },
{ {
"key": "socket:USB-A:output", "key": "socket:USB-A:output",
"description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 10W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:USB-A~.+&socket:USB-A!=0)", "description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 10w A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists') (This is only shown if socket:USB-A~.+ &socket:USB-A!=0)",
"value": "10W" "value": "10W"
}, },
{ {
@ -2389,12 +2389,12 @@
}, },
{ {
"key": "fee", "key": "fee",
"description": "Layer 'Charging stations' shows fee=yes&fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", "description": "Layer 'Charging stations' shows fee=yes &fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "yes" "value": "yes"
}, },
{ {
"key": "fee:conditional", "key": "fee:conditional",
"description": "Layer 'Charging stations' shows fee=yes&fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')", "description": "Layer 'Charging stations' shows fee=yes &fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Cyclofix - a map for cyclists')",
"value": "no @ customers" "value": "no @ customers"
}, },
{ {

View file

@ -1342,22 +1342,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (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)", "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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (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)", "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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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" "value": "no"
}, },
{ {
@ -2460,22 +2460,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (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)", "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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (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)", "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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (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)", "description": "Layer 'Shop' shows 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" "value": "no"
}, },
{ {

View file

@ -2276,22 +2276,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (in the mapcomplete.org theme 'OnWheels') (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)", "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 'OnWheels') (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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (in the mapcomplete.org theme 'OnWheels') (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)", "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 'OnWheels') (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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'OnWheels') (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)", "description": "Layer 'Shop' shows 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 'OnWheels') 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'OnWheels') (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)", "description": "Layer 'Shop' shows 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 'OnWheels') (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" "value": "no"
}, },
{ {

View file

@ -3047,7 +3047,7 @@
}, },
{ {
"key": "access", "key": "access",
"description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, ...)' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", "description": "Layer 'Charging stations' shows access=private with a fixed text, namely 'Not accessible to the general public (e.g. only accessible to the owners, employees, )' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "private" "value": "private"
}, },
{ {
@ -3291,7 +3291,7 @@
}, },
{ {
"key": "socket:schuko:output", "key": "socket:schuko:output",
"description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely '<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+&socket:schuko!=0)", "description": "Layer 'Charging stations' shows socket:schuko:output=3.6 kW with a fixed text, namely '<b>Schuko wall plug</b> without ground pin (CEE7/4 type F) outputs at most 3.6 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:schuko~.+ &socket:schuko!=0)",
"value": "3.6 kW" "value": "3.6 kW"
}, },
{ {
@ -3318,12 +3318,12 @@
}, },
{ {
"key": "socket:typee:output", "key": "socket:typee:output",
"description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+&socket:typee!=0)", "description": "Layer 'Charging stations' shows socket:typee:output=3 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 3 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ &socket:typee!=0)",
"value": "3 kW" "value": "3 kW"
}, },
{ {
"key": "socket:typee:output", "key": "socket:typee:output",
"description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+&socket:typee!=0)", "description": "Layer 'Charging stations' shows socket:typee:output=22 kW with a fixed text, namely '<b>European wall plug</b> with ground pin (CEE7/4 type E) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:typee~.+ &socket:typee!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -3350,7 +3350,7 @@
}, },
{ {
"key": "socket:chademo:output", "key": "socket:chademo:output",
"description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely '<b>Chademo</b> outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+&socket:chademo!=0)", "description": "Layer 'Charging stations' shows socket:chademo:output=50 kW with a fixed text, namely '<b>Chademo</b> outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:chademo~.+ &socket:chademo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -3382,12 +3382,12 @@
}, },
{ {
"key": "socket:type1_cable:output", "key": "socket:type1_cable:output",
"description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+&socket:type1_cable!=0)", "description": "Layer 'Charging stations' shows socket:type1_cable:output=3.7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 3.7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ &socket:type1_cable!=0)",
"value": "3.7 kW" "value": "3.7 kW"
}, },
{ {
"key": "socket:type1_cable:output", "key": "socket:type1_cable:output",
"description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+&socket:type1_cable!=0)", "description": "Layer 'Charging stations' shows socket:type1_cable:output=7 kW with a fixed text, namely '<b>Type 1 with cable</b> (J1772) outputs at most 7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_cable~.+ &socket:type1_cable!=0)",
"value": "7 kW" "value": "7 kW"
}, },
{ {
@ -3419,22 +3419,22 @@
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=3.7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 3.7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "3.7 kW" "value": "3.7 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=6.6 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 6.6 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "6.6 kW" "value": "6.6 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=7 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "7 kW" "value": "7 kW"
}, },
{ {
"key": "socket:type1:output", "key": "socket:type1:output",
"description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+&socket:type1!=0)", "description": "Layer 'Charging stations' shows socket:type1:output=7.2 kW with a fixed text, namely '<b>Type 1 <i>without</i> cable</b> (J1772) outputs at most 7.2 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1~.+ &socket:type1!=0)",
"value": "7.2 kW" "value": "7.2 kW"
}, },
{ {
@ -3471,22 +3471,22 @@
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=50 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=62.5 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 62.5 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "62.5 kW" "value": "62.5 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=150 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:type1_combo:output", "key": "socket:type1_combo:output",
"description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+&socket:type1_combo!=0)", "description": "Layer 'Charging stations' shows socket:type1_combo:output=350 kW with a fixed text, namely '<b>Type 1 CCS</b> (aka Type 1 Combo) outputs at most 350 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type1_combo~.+ &socket:type1_combo!=0)",
"value": "350 kW" "value": "350 kW"
}, },
{ {
@ -3518,17 +3518,17 @@
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=120 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 120 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "120 kW" "value": "120 kW"
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=150 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:tesla_supercharger:output", "key": "socket:tesla_supercharger:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+&socket:tesla_supercharger!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger:output=250 kW with a fixed text, namely '<b>Tesla Supercharger</b> outputs at most 250 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger~.+ &socket:tesla_supercharger!=0)",
"value": "250 kW" "value": "250 kW"
}, },
{ {
@ -3565,12 +3565,12 @@
}, },
{ {
"key": "socket:type2:output", "key": "socket:type2:output",
"description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+&socket:type2!=0)", "description": "Layer 'Charging stations' shows socket:type2:output=11 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ &socket:type2!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:type2:output", "key": "socket:type2:output",
"description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+&socket:type2!=0)", "description": "Layer 'Charging stations' shows socket:type2:output=22 kW with a fixed text, namely '<b>Type 2</b> (mennekes) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2~.+ &socket:type2!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -3607,7 +3607,7 @@
}, },
{ {
"key": "socket:type2_combo:output", "key": "socket:type2_combo:output",
"description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely '<b>Type 2 CCS</b> (mennekes) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+&socket:type2_combo!=0)", "description": "Layer 'Charging stations' shows socket:type2_combo:output=50 kW with a fixed text, namely '<b>Type 2 CCS</b> (mennekes) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_combo~.+ &socket:type2_combo!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -3644,12 +3644,12 @@
}, },
{ {
"key": "socket:type2_cable:output", "key": "socket:type2_cable:output",
"description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+&socket:type2_cable!=0)", "description": "Layer 'Charging stations' shows socket:type2_cable:output=11 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ &socket:type2_cable!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:type2_cable:output", "key": "socket:type2_cable:output",
"description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+&socket:type2_cable!=0)", "description": "Layer 'Charging stations' shows socket:type2_cable:output=22 kW with a fixed text, namely '<b>Type 2 with cable</b> (mennekes) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:type2_cable~.+ &socket:type2_cable!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -3658,12 +3658,12 @@
}, },
{ {
"key": "socket:tesla_supercharger_ccs:voltage", "key": "socket:tesla_supercharger_ccs:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=500 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 500 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "500 V" "value": "500 V"
}, },
{ {
"key": "socket:tesla_supercharger_ccs:voltage", "key": "socket:tesla_supercharger_ccs:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:voltage=920 V with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs 920 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "920 V" "value": "920 V"
}, },
{ {
@ -3686,7 +3686,7 @@
}, },
{ {
"key": "socket:tesla_supercharger_ccs:output", "key": "socket:tesla_supercharger_ccs:output",
"description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded type2_css) outputs at most 50 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+&socket:tesla_supercharger_ccs!=0)", "description": "Layer 'Charging stations' shows socket:tesla_supercharger_ccs:output=50 kW with a fixed text, namely '<b>Tesla Supercharger CCS</b> (a branded Type 2 CSS) outputs at most 50 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_supercharger_ccs~.+ &socket:tesla_supercharger_ccs!=0)",
"value": "50 kW" "value": "50 kW"
}, },
{ {
@ -3695,7 +3695,7 @@
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=480 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs 480 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "480 V" "value": "480 V"
}, },
{ {
@ -3704,12 +3704,12 @@
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=125 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 125 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "125 A" "value": "125 A"
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=350 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 350 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "350 A" "value": "350 A"
}, },
{ {
@ -3718,17 +3718,17 @@
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 120 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=120 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 120 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "120 kW" "value": "120 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 150 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=150 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 150 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "150 kW" "value": "150 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely '<b>Tesla Supercharger (destination)</b> outputs at most 250 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=250 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> outputs at most 250 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "250 kW" "value": "250 kW"
}, },
{ {
@ -3737,12 +3737,12 @@
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=230 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 230 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "230 V" "value": "230 V"
}, },
{ {
"key": "socket:tesla_destination:voltage", "key": "socket:tesla_destination:voltage",
"description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:voltage=400 V with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs 400 volt' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "400 V" "value": "400 V"
}, },
{ {
@ -3751,12 +3751,12 @@
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=16 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as tesla) outputs at most 16 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "16 A" "value": "16 A"
}, },
{ {
"key": "socket:tesla_destination:current", "key": "socket:tesla_destination:current",
"description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:current=32 A with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 32 A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "32 A" "value": "32 A"
}, },
{ {
@ -3765,12 +3765,12 @@
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 11 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=11 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 11 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "11 kW" "value": "11 kW"
}, },
{ {
"key": "socket:tesla_destination:output", "key": "socket:tesla_destination:output",
"description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely '<b>Tesla supercharger (destination)</b> (A Type 2 with cable branded as tesla) outputs at most 22 kW A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+&socket:tesla_destination!=0)", "description": "Layer 'Charging stations' shows socket:tesla_destination:output=22 kW with a fixed text, namely '<b>Tesla Supercharger (Destination)</b> (A Type 2 with cable branded as Tesla) outputs at most 22 kw A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:tesla_destination~.+ &socket:tesla_destination!=0)",
"value": "22 kW" "value": "22 kW"
}, },
{ {
@ -3802,12 +3802,12 @@
}, },
{ {
"key": "socket:USB-A:output", "key": "socket:USB-A:output",
"description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 5W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+&socket:USB-A!=0)", "description": "Layer 'Charging stations' shows socket:USB-A:output=5W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 5w A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ &socket:USB-A!=0)",
"value": "5W" "value": "5W"
}, },
{ {
"key": "socket:USB-A:output", "key": "socket:USB-A:output",
"description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 10W A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+&socket:USB-A!=0)", "description": "Layer 'Charging stations' shows socket:USB-A:output=10W with a fixed text, namely '<b>USB</b> to charge phones and small electronics outputs at most 10w A' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme') (This is only shown if socket:USB-A~.+ &socket:USB-A!=0)",
"value": "10W" "value": "10W"
}, },
{ {
@ -3890,12 +3890,12 @@
}, },
{ {
"key": "fee", "key": "fee",
"description": "Layer 'Charging stations' shows fee=yes&fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", "description": "Layer 'Charging stations' shows fee=yes &fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "yes" "value": "yes"
}, },
{ {
"key": "fee:conditional", "key": "fee:conditional",
"description": "Layer 'Charging stations' shows fee=yes&fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/... who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')", "description": "Layer 'Charging stations' shows fee=yes &fee:conditional=no @ customers with a fixed text, namely 'Paid use, but free for customers of the hotel/pub/hospital/ who operates the charging station' and allows to pick this as a default answer (in the mapcomplete.org theme 'Personal theme')",
"value": "no @ customers" "value": "no @ customers"
}, },
{ {
@ -12519,22 +12519,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (in the mapcomplete.org theme 'Personal theme') (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)", "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 'Personal theme') (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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (in the mapcomplete.org theme 'Personal theme') (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)", "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 'Personal theme') (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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Personal theme') (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)", "description": "Layer 'Shop' shows 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 'Personal theme') 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Personal theme') (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)", "description": "Layer 'Shop' shows 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 'Personal theme') (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" "value": "no"
}, },
{ {

View file

@ -1619,22 +1619,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Dog-friendly shops' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (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)", "description": "Layer 'Dog-friendly shops' 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 'Veterinarians, dog parks and other pet-amenities') (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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Dog-friendly shops' shows service:key_cutting=yes with a fixed text, namely 'This shop offers key cutting as a service' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (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)", "description": "Layer 'Dog-friendly shops' 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 'Veterinarians, dog parks and other pet-amenities') (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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Dog-friendly shops' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (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)", "description": "Layer 'Dog-friendly shops' shows 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 'Veterinarians, dog parks and other pet-amenities') 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Dog-friendly shops' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Veterinarians, dog parks and other pet-amenities') (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)", "description": "Layer 'Dog-friendly shops' shows 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 'Veterinarians, dog parks and other pet-amenities') (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" "value": "no"
}, },
{ {

View file

@ -986,22 +986,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (in the mapcomplete.org theme 'Shops') (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)", "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 'Shops') (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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (in the mapcomplete.org theme 'Shops') (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)", "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 'Shops') (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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Shops') (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)", "description": "Layer 'Shop' shows 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 'Shops') 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Shops') (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)", "description": "Layer 'Shop' shows 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 'Shops') (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" "value": "no"
}, },
{ {

View file

@ -1512,22 +1512,22 @@
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows craft=key_cutter with a fixed text, namely 'This shop is also specialized in key cutting' (in the mapcomplete.org theme 'Sports') (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)", "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 'Sports') (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" "value": "key_cutter"
}, },
{ {
"key": "service:key_cutting", "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' (in the mapcomplete.org theme 'Sports') (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)", "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 'Sports') (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" "value": "yes"
}, },
{ {
"key": "craft", "key": "craft",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Sports') (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)", "description": "Layer 'Shop' shows 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 'Sports') 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": "" "value": ""
}, },
{ {
"key": "service:key_cutting", "key": "service:key_cutting",
"description": "Layer 'Shop' shows service:key_cutting=no with a fixed text, namely 'This shops does not offer key cutting as a service' (in the mapcomplete.org theme 'Sports') (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)", "description": "Layer 'Shop' shows 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 'Sports') (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" "value": "no"
}, },
{ {

View file

@ -26,9 +26,9 @@ User has used mapcomplete a few times before but has very little OSM-knowledge.
- [x] When creating a new layer, perhaps force 'source' too? - [x] When creating a new layer, perhaps force 'source' too?
- [x] Forced questions in the beginning: do not show errors - [x] Forced questions in the beginning: do not show errors
- [x] Validation: forbid that a mapping starts with "yes" or "no" - [x] Validation: forbid that a mapping starts with "yes" or "no"
- [ ] TagRenderings: freeform key cannot be set to 'undefined' again - [x] TagRenderings: freeform key cannot be set to 'undefined' again
- [ ] How to create a mapping for `key=yes` or `key=no` is unclear. Person searched for a 'binary'-type instead - [ ] How to create a mapping for `key=yes` or `key=no` is unclear. Person searched for a 'binary'-type instead
- [ ] When a new tagRendering is added, the floatover should open immediately - [x] When a new tagRendering is added, the floatover should open immediately
- [ ] Mappings with different keys do not erase each other/freeform (e.g. noname=yes should erase `name`) - [ ] Mappings with different keys do not erase each other/freeform (e.g. noname=yes should erase `name`)
- [x] Rename `mapping` to `predifined icon`, perhaps add a clarifying icon - [x] Rename `mapping` to `predifined icon`, perhaps add a clarifying icon
- [x] In tagRenderings: the `question`-field should be in question-mode right from the start - [x] In tagRenderings: the `question`-field should be in question-mode right from the start

Binary file not shown.

After

Width:  |  Height:  |  Size: 417 KiB

View file

@ -1696,14 +1696,14 @@ video {
padding: 0.5rem; padding: 0.5rem;
} }
.p-1 {
padding: 0.25rem;
}
.p-4 { .p-4 {
padding: 1rem; padding: 1rem;
} }
.p-1 {
padding: 0.25rem;
}
.p-0\.5 { .p-0\.5 {
padding: 0.125rem; padding: 0.125rem;
} }
@ -1736,6 +1736,10 @@ video {
padding-right: 0.5rem; padding-right: 0.5rem;
} }
.pr-12 {
padding-right: 3rem;
}
.pl-1 { .pl-1 {
padding-left: 0.25rem; padding-left: 0.25rem;
} }
@ -1800,10 +1804,6 @@ video {
text-align: justify; text-align: justify;
} }
.align-middle {
vertical-align: middle;
}
.text-xl { .text-xl {
font-size: 1.25rem; font-size: 1.25rem;
line-height: 1.75rem; line-height: 1.75rem;

View file

@ -80,6 +80,7 @@ export interface LayerConfigJson {
* *
* type: nat * type: nat
* default: 30 days * default: 30 days
* group: expert
*/ */
maxCacheAge?: number maxCacheAge?: number
} }
@ -116,6 +117,7 @@ export interface LayerConfigJson {
* question: Is this geojson a cache of OpenStreetMap data? * question: Is this geojson a cache of OpenStreetMap data?
* ifunset: This is not an OpenStreetMap cache * ifunset: This is not an OpenStreetMap cache
* iftrue: this is based on OpenStreetMap and can thus be edited * iftrue: this is based on OpenStreetMap and can thus be edited
* group: expert
*/ */
isOsmCache?: boolean isOsmCache?: boolean
/** /**

View file

@ -121,7 +121,7 @@ export interface MappingConfigJson {
/** /**
* question: What extra tags should be added to the object if this object is chosen? * question: What extra tags should be added to the object if this object is chosen?
* type: simple_tag[] * type: simple_tag
* *
* If chosen as answer, these tags will be applied onto the object, together with the tags from the `if` * If chosen as answer, these tags will be applied onto the object, together with the tags from the `if`
* Not compatible with multiAnswer. * Not compatible with multiAnswer.
@ -204,7 +204,7 @@ export interface QuestionableTagRenderingConfigJson extends TagRenderingConfigJs
* ifunset: do not offer a freeform textfield as answer option * ifunset: do not offer a freeform textfield as answer option
* *
*/ */
key: string key?: string
/** /**
* question: What is the input type? * question: What is the input type?
@ -212,23 +212,26 @@ export interface QuestionableTagRenderingConfigJson extends TagRenderingConfigJs
* See Docs/SpecialInputElements.md and UI/Input/ValidatedTextField.ts for supported values * See Docs/SpecialInputElements.md and UI/Input/ValidatedTextField.ts for supported values
* ifunset: use an unconstrained <b>string</b> as input (default) * ifunset: use an unconstrained <b>string</b> as input (default)
* suggestions: return validators.AllValidators.filter(type => !type.isMeta).map((type) => ({if: "value="+type.name, then: "<b>"+type.name+"</b> "+type.explanation.split("\n")[0]})) * suggestions: return validators.AllValidators.filter(type => !type.isMeta).map((type) => ({if: "value="+type.name, then: "<b>"+type.name+"</b> "+type.explanation.split("\n")[0]}))
*/ **/
type?: string type?: string
/** /**
* question: What placeholder text should be shown in the input-element if there is no input? * question: What placeholder text should be shown in the input-element if there is no input?
* A (translated) text that is shown (as gray text) within the textfield * A (translated) text that is shown (as gray text) within the textfield
* type: translation * type: translation
* group: expert
*/ */
placeholder?: Translatable placeholder?: Translatable
/** /**
* Extra parameters to initialize the input helper arguments. * Extra parameters to initialize the input helper arguments.
* For semantics, see the 'SpecialInputElements.md' * For semantics, see the 'SpecialInputElements.md'
* group: expert
*/ */
helperArgs?: (string | number | boolean | any)[] helperArgs?: (string | number | boolean | any)[]
/** /**
* If a value is added with the textfield, these extra tag is addded. * If a value is added with the textfield, these extra tag is addded.
* Useful to add a 'fixme=freeform textfield used - to be checked' * Useful to add a 'fixme=freeform textfield used - to be checked'
* group: expert
**/ **/
addExtraTags?: string[] addExtraTags?: string[]
@ -239,6 +242,7 @@ export interface QuestionableTagRenderingConfigJson extends TagRenderingConfigJs
* This combines badly with special input elements, as it'll distort the layout. * This combines badly with special input elements, as it'll distort the layout.
* ifunset: show the freeform input field full-width * ifunset: show the freeform input field full-width
* iftrue: show the freeform input field as a small field within the question * iftrue: show the freeform input field as a small field within the question
* group: expert
*/ */
inline?: boolean inline?: boolean
@ -246,12 +250,14 @@ export interface QuestionableTagRenderingConfigJson extends TagRenderingConfigJs
* question: What value should be entered in the text field if no value is set? * question: What value should be entered in the text field if no value is set?
* This can help people to quickly enter the most common option * This can help people to quickly enter the most common option
* ifunset: do not prefill the textfield * ifunset: do not prefill the textfield
* group: expert
*/ */
default?: string default?: string
/** /**
* question: What values of the freeform key should be interpreted as 'unknown'? * question: What values of the freeform key should be interpreted as 'unknown'?
* For example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked * For example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked
* ifunset: The question will be considered answered if any value is set for the key * ifunset: The question will be considered answered if any value is set for the key
* group: expert
*/ */
invalidValues?: TagConfigJson invalidValues?: TagConfigJson
} }

View file

@ -86,6 +86,8 @@ export interface TagRenderingConfigJson {
* *
* question: When should this item be shown? * question: When should this item be shown?
* type: tag * type: tag
* ifunset: No specific condition set; always show this tagRendering or ask the question if unkown
*
* Only show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`. * Only show this tagrendering (or ask the question) if the selected object also matches the tags specified as `condition`.
* *
* This is useful to ask a follow-up question. * This is useful to ask a follow-up question.
@ -146,7 +148,7 @@ export interface TagRenderingConfigJson {
* If this key is present in the feature, then 'render' is used to display the value. * If this key is present in the feature, then 'render' is used to display the value.
* If this is undefined, the rendering is _always_ shown * If this is undefined, the rendering is _always_ shown
*/ */
key: string key?: string
} }
/** /**
@ -174,7 +176,10 @@ export interface TagRenderingConfigJson {
then: Translatable then: Translatable
/** /**
* question: What icon should be added to this mapping? * question: What icon should be added to this mapping?
* An icon supporting this mapping; typically shown pretty small * ifunset: Do not show an extra icon next to the render value
*
* An icon supporting this mapping; typically shown pretty small.
* This can be used to show a 'phone'-icon next to the phone number
* inline: <img src='{icon}' class="w-8 h-8" /> {icon} * inline: <img src='{icon}' class="w-8 h-8" /> {icon}
* Type: icon * Type: icon
*/ */

View file

@ -36,8 +36,8 @@
let htmlElem: HTMLDivElement; let htmlElem: HTMLDivElement;
$: { $: {
if (editMode && htmlElem !== undefined) { if (editMode && htmlElem !== undefined && config.IsKnown(tags)) {
// EditMode switched to true, so the person wants to make a change // EditMode switched to true yet the answer is already known, so the person wants to make a change
// Make sure that the question is in the scrollview! // Make sure that the question is in the scrollview!
// Some delay is applied to give Svelte the time to render the _question_ // Some delay is applied to give Svelte the time to render the _question_

View file

@ -32,6 +32,8 @@ export abstract class EditJsonState<T> {
public readonly category: "layers" | "themes" public readonly category: "layers" | "themes"
public readonly server: StudioServer public readonly server: StudioServer
public readonly expertMode: UIEventSource<boolean>
public readonly configuration: UIEventSource<Partial<T>> = new UIEventSource<Partial<T>>({}) public readonly configuration: UIEventSource<Partial<T>> = new UIEventSource<Partial<T>>({})
public readonly messages: Store<ConversionMessage[]> public readonly messages: Store<ConversionMessage[]>
@ -44,10 +46,18 @@ export abstract class EditJsonState<T> {
private sendingUpdates = false private sendingUpdates = false
private readonly _stores = new Map<string, UIEventSource<any>>() private readonly _stores = new Map<string, UIEventSource<any>>()
constructor(schema: ConfigMeta[], server: StudioServer, category: "layers" | "themes") { constructor(
schema: ConfigMeta[],
server: StudioServer,
category: "layers" | "themes",
options?: {
expertMode?: UIEventSource<boolean>
}
) {
this.schema = schema this.schema = schema
this.server = server this.server = server
this.category = category this.category = category
this.expertMode = options?.expertMode ?? new UIEventSource<boolean>(false)
this.messages = this.setupErrorsForLayers() this.messages = this.setupErrorsForLayers()
@ -261,8 +271,13 @@ export default class EditLayerState extends EditJsonState<LayerConfigJson> {
}, },
} }
constructor(schema: ConfigMeta[], server: StudioServer, osmConnection: OsmConnection) { constructor(
super(schema, server, "layers") schema: ConfigMeta[],
server: StudioServer,
osmConnection: OsmConnection,
options: { expertMode: UIEventSource<boolean> }
) {
super(schema, server, "layers", options)
this.osmConnection = osmConnection this.osmConnection = osmConnection
this.layout = { this.layout = {
getMatchingLayer: (_) => { getMatchingLayer: (_) => {
@ -330,8 +345,12 @@ export default class EditLayerState extends EditJsonState<LayerConfigJson> {
} }
export class EditThemeState extends EditJsonState<LayoutConfigJson> { export class EditThemeState extends EditJsonState<LayoutConfigJson> {
constructor(schema: ConfigMeta[], server: StudioServer) { constructor(
super(schema, server, "themes") schema: ConfigMeta[],
server: StudioServer,
options: { expertMode: UIEventSource<boolean> }
) {
super(schema, server, "themes", options)
} }
protected buildValidation(state: DesugaringContext): Conversion<LayoutConfigJson, any> { protected buildValidation(state: DesugaringContext): Conversion<LayoutConfigJson, any> {

View file

@ -12,6 +12,9 @@ export let title: string | undefined = undefined;
export let path: (string | number)[] = []; export let path: (string | number)[] = [];
let expertMode = state.expertMode
let configsFiltered = $expertMode ? configs : configs.filter(schema => schema.hints?.group !== "expert")
</script> </script>
{#if configs === undefined} {#if configs === undefined}
Bug: 'Region' received 'undefined' Bug: 'Region' received 'undefined'
@ -22,14 +25,14 @@ export let path: (string | number)[] = [];
<h3>{title}</h3> <h3>{title}</h3>
<div class="pl-2 border border-black flex flex-col gap-y-1 w-full"> <div class="pl-2 border border-black flex flex-col gap-y-1 w-full">
<slot name="description" /> <slot name="description" />
{#each configs as config} {#each configsFiltered as config}
<SchemaBasedInput {state} path={config.path} schema={config} /> <SchemaBasedInput {state} path={config.path} schema={config} />
{/each} {/each}
</div> </div>
</div> </div>
{:else} {:else}
<div class="pl-2 flex flex-col gap-y-1 w-full"> <div class="pl-2 flex flex-col gap-y-1 w-full">
{#each configs as config} {#each configsFiltered as config}
<SchemaBasedInput {state} path={path.concat(config.path)} schema={config} /> <SchemaBasedInput {state} path={path.concat(config.path)} schema={config} />
{/each} {/each}
</div> </div>

View file

@ -17,10 +17,10 @@
export let state: EditLayerState; export let state: EditLayerState;
export let path: (string | number)[] = []; export let path: (string | number)[] = [];
export let schema: ConfigMeta; export let schema: ConfigMeta;
export let startInEditModeIfUnset: boolean = !schema.hints.ifunset export let startInEditModeIfUnset: boolean = schema.hints && !schema.hints.ifunset
let value = new UIEventSource<string | any>(undefined); let value = new UIEventSource<string | any>(undefined);
const isTranslation = schema.hints.typehint === "translation" || schema.hints.typehint === "rendered" || ConfigMetaUtils.isTranslation(schema); const isTranslation = schema.hints?.typehint === "translation" || schema.hints?.typehint === "rendered" || ConfigMetaUtils.isTranslation(schema);
let type = schema.hints.typehint ?? "string"; let type = schema.hints.typehint ?? "string";
let rendervalue = (schema.hints.inline ?? schema.path.join(".")) + (isTranslation ? " <b>{translated(value)}</b>": " <b>{value}</b>"); let rendervalue = (schema.hints.inline ?? schema.path.join(".")) + (isTranslation ? " <b>{translated(value)}</b>": " <b>{value}</b>");

View file

@ -18,7 +18,7 @@
<ArrayMultiAnswer {path} {state} {schema}/> <ArrayMultiAnswer {path} {state} {schema}/>
{:else if schema.type === "array"} {:else if schema.type === "array"}
<SchemaBasedArray {path} {state} {schema} /> <SchemaBasedArray {path} {state} {schema} />
{:else if schema.hints.types} {:else if schema.hints?.types}
<SchemaBasedMultiType {path} {state} {schema} /> <SchemaBasedMultiType {path} {state} {schema} />
{:else} {:else}
<SchemaBasedField {path} {state} {schema} /> <SchemaBasedField {path} {state} {schema} />

View file

@ -14,6 +14,7 @@
// @ts-ignore // @ts-ignore
import nmd from "nano-markdown"; import nmd from "nano-markdown";
import ShowConversionMessage from "./ShowConversionMessage.svelte"; import ShowConversionMessage from "./ShowConversionMessage.svelte";
import exp from "constants";
/** /**
* If 'types' is defined: allow the user to pick one of the types to input. * If 'types' is defined: allow the user to pick one of the types to input.
@ -22,6 +23,7 @@
export let state: EditLayerState; export let state: EditLayerState;
export let path: (string | number)[] = []; export let path: (string | number)[] = [];
export let schema: ConfigMeta; export let schema: ConfigMeta;
let expertMode = state.expertMode;
const defaultOption = schema.hints.typesdefault ? Number(schema.hints.typesdefault) : undefined; const defaultOption = schema.hints.typesdefault ? Number(schema.hints.typesdefault) : undefined;
const hasBooleanOption = (<JsonSchemaType[]>schema.type)?.findIndex(t => t["type"] === "boolean"); const hasBooleanOption = (<JsonSchemaType[]>schema.type)?.findIndex(t => t["type"] === "boolean");
@ -212,8 +214,13 @@
{#if chosenOption !== undefined} {#if chosenOption !== undefined}
{#each subSchemas as subschema} {#each subSchemas as subschema}
{#if $expertMode || subschema.hints?.group !== "expert"}
<SchemaBasedInput {state} schema={subschema} <SchemaBasedInput {state} schema={subschema}
path={[...subpath, (subschema?.path?.at(-1) ?? "???")]}></SchemaBasedInput> path={[...subpath, (subschema?.path?.at(-1) ?? "???")]}></SchemaBasedInput>
{:else if window.location.hostname === "127.0.0.1"}
<span class="subtle">Omitted expert question {subschema.path.join(".")}</span>
{/if}
{/each} {/each}
{:else if $messages.length > 0} {:else if $messages.length > 0}
{#each $messages as message} {#each $messages as message}
@ -222,6 +229,7 @@
{/if} {/if}
{/if} {/if}
{#if window.location.hostname === "127.0.0.1"} {#if window.location.hostname === "127.0.0.1"}
<span class="subtle">SchemaBasedMultiType <b>{path.join(".")}</b> <span class="cursor-pointer" on:click={() => console.log(schema)}>{schema.hints.typehint}</span></span> <span class="subtle">SchemaBasedMultiType <b>{path.join(".")}</b> <span class="cursor-pointer"
on:click={() => console.log(schema)}>{schema.hints.typehint}</span></span>
{/if} {/if}
</div> </div>

View file

@ -17,30 +17,31 @@ import { TrashIcon } from "@rgossiaux/svelte-heroicons/outline";
import questionableTagRenderingSchemaRaw from "../../assets/schemas/questionabletagrenderingconfigmeta.json"; import questionableTagRenderingSchemaRaw from "../../assets/schemas/questionabletagrenderingconfigmeta.json";
import SchemaBasedField from "./SchemaBasedField.svelte"; import SchemaBasedField from "./SchemaBasedField.svelte";
import Region from "./Region.svelte"; import Region from "./Region.svelte";
import exp from "constants";
export let state: EditLayerState; export let state: EditLayerState;
export let schema: ConfigMeta; export let schema: ConfigMeta;
export let path: (string | number)[]; export let path: (string | number)[];
let expertMode = state.expertMode;
const store = state.getStoreFor(path); const store = state.getStoreFor(path);
let value = store.data let value = store.data;
console.log(">> initial value", value, store)
/** /**
* Allows the theme builder to create 'writable' themes. * Allows the theme builder to create 'writable' themes.
* Should only be enabled for 'tagrenderings' in the theme, if the source is OSM * Should only be enabled for 'tagrenderings' in the theme, if the source is OSM
*/ */
let allowQuestions: Store<boolean> = (state.configuration.mapD(config => path.at(0) === "tagRenderings" && config.source?.geoJson === undefined)) let allowQuestions: Store<boolean> = (state.configuration.mapD(config => path.at(0) === "tagRenderings" && config.source?.geoJson === undefined));
let mappingsBuiltin: MappingConfigJson[] = []; let mappingsBuiltin: MappingConfigJson[] = [];
let perLabel: Record<string, MappingConfigJson> = {} let perLabel: Record<string, MappingConfigJson> = {};
for (const tr of questions.tagRenderings) { for (const tr of questions.tagRenderings) {
let description = tr["description"] ?? tr["question"] ?? "No description available"; let description = tr["description"] ?? tr["question"] ?? "No description available";
description = description["en"] ?? description; description = description["en"] ?? description;
if (tr["labels"]) { if (tr["labels"]) {
const labels: string[] = tr["labels"] const labels: string[] = tr["labels"];
for (const label of labels) { for (const label of labels) {
let labelMapping: MappingConfigJson = perLabel[label] let labelMapping: MappingConfigJson = perLabel[label];
if (!labelMapping) { if (!labelMapping) {
labelMapping = { labelMapping = {
@ -48,11 +49,11 @@ for (const tr of questions.tagRenderings) {
then: { then: {
en: "Builtin collection <b>" + label + "</b>:" en: "Builtin collection <b>" + label + "</b>:"
} }
};
perLabel[label] = labelMapping;
mappingsBuiltin.push(labelMapping);
} }
perLabel[label] = labelMapping labelMapping.then.en = labelMapping.then.en + "<div>" + description + "</div>";
mappingsBuiltin.push(labelMapping)
}
labelMapping.then.en = labelMapping.then.en + "<div>"+description+"</div>"
} }
} }
@ -96,10 +97,11 @@ function initMappings() {
const items = new Set(["question", "questionHint", "multiAnswer", "freeform", "render", "condition", "metacondition", "mappings", "icon"]); const items = new Set(["question", "questionHint", "multiAnswer", "freeform", "render", "condition", "metacondition", "mappings", "icon"]);
const ignored = new Set(["labels", "description", "classes"]); const ignored = new Set(["labels", "description", "classes"]);
const freeformSchema = <ConfigMeta[]>questionableTagRenderingSchemaRaw const freeformSchemaAll = <ConfigMeta[]>questionableTagRenderingSchemaRaw
.filter(schema => schema.path.length == 2 && schema.path[0] === "freeform" && ($allowQuestions || schema.path[1] === "key")); .filter(schema => schema.path.length == 2 && schema.path[0] === "freeform" && ($allowQuestions || schema.path[1] === "key"));
let freeformSchema = $expertMode ? freeformSchemaAll : freeformSchemaAll.filter(schema => schema.hints?.group !== "expert")
const missing: string[] = questionableTagRenderingSchemaRaw.filter(schema => schema.path.length >= 1 && !items.has(schema.path[0]) && !ignored.has(schema.path[0])).map(schema => schema.path.join(".")); const missing: string[] = questionableTagRenderingSchemaRaw.filter(schema => schema.path.length >= 1 && !items.has(schema.path[0]) && !ignored.has(schema.path[0])).map(schema => schema.path.join("."));
console.log({state}) console.log({ state });
</script> </script>
@ -115,7 +117,8 @@ console.log({state})
<slot name="upper-right" /> <slot name="upper-right" />
</div> </div>
{#if $allowQuestions} {#if $allowQuestions}
<SchemaBasedField startInEditModeIfUnset={true} {state} path={[...path,"question"]} schema={topLevelItems["question"]} /> <SchemaBasedField startInEditModeIfUnset={true} {state} path={[...path,"question"]}
schema={topLevelItems["question"]} />
<SchemaBasedField {state} path={[...path,"questionHint"]} schema={topLevelItems["questionHint"]} /> <SchemaBasedField {state} path={[...path,"questionHint"]} schema={topLevelItems["questionHint"]} />
{/if} {/if}
{#each ($mappings ?? []) as mapping, i (mapping)} {#each ($mappings ?? []) as mapping, i (mapping)}
@ -148,8 +151,9 @@ console.log({state})
</div> </div>
<SchemaBasedField {state} path={[...path,"condition"]} schema={topLevelItems["condition"]} /> <SchemaBasedField {state} path={[...path,"condition"]} schema={topLevelItems["condition"]} />
{#if $expertMode}
<SchemaBasedField {state} path={[...path,"metacondition"]} schema={topLevelItems["metacondition"]} /> <SchemaBasedField {state} path={[...path,"metacondition"]} schema={topLevelItems["metacondition"]} />
{/if}
{#each missing as field} {#each missing as field}
<SchemaBasedField {state} path={[...path,field]} schema={topLevelItems[field]} /> <SchemaBasedField {state} path={[...path,field]} schema={topLevelItems[field]} />
{/each} {/each}

View file

@ -24,7 +24,9 @@
import { QuestionMarkCircleIcon } from "@babeard/svelte-heroicons/mini"; import { QuestionMarkCircleIcon } from "@babeard/svelte-heroicons/mini";
import type { ConfigMeta } from "./Studio/configMeta"; import type { ConfigMeta } from "./Studio/configMeta";
import EditTheme from "./Studio/EditTheme.svelte"; import EditTheme from "./Studio/EditTheme.svelte";
import * as meta from "../../package.json" import * as meta from "../../package.json";
import Checkbox from "./Base/Checkbox.svelte";
import exp from "constants";
export let studioUrl = window.location.hostname === "127.0.0.2" ? "http://127.0.0.1:1235" : "https://studio.mapcomplete.org"; export let studioUrl = window.location.hostname === "127.0.0.2" ? "http://127.0.0.1:1235" : "https://studio.mapcomplete.org";
@ -35,6 +37,10 @@
"Used to complete the login" "Used to complete the login"
) )
})); }));
const expertMode = UIEventSource.asBoolean(osmConnection.GetPreference("studio-expert-mode", "false", {
documentation: "Indicates if more options are shown in mapcomplete studio"
}));
expertMode.addCallbackAndRunD(expert => console.log("Expert mode is", expert))
const createdBy = osmConnection.userDetails.data.name; const createdBy = osmConnection.userDetails.data.name;
const uid = osmConnection.userDetails.map(ud => ud?.uid); const uid = osmConnection.userDetails.map(ud => ud?.uid);
const studio = new StudioServer(studioUrl, uid); const studio = new StudioServer(studioUrl, uid);
@ -54,30 +60,31 @@
let state: undefined | "edit_layer" | "edit_theme" | "editing_layer" | "editing_theme" | "loading" = undefined; let state: undefined | "edit_layer" | "edit_theme" | "editing_layer" | "editing_theme" | "loading" = undefined;
const layerSchema: ConfigMeta[] = <any>layerSchemaRaw; const layerSchema: ConfigMeta[] = <any>layerSchemaRaw;
let editLayerState = new EditLayerState(layerSchema, studio, osmConnection); let editLayerState = new EditLayerState(layerSchema, studio, osmConnection, { expertMode });
const layoutSchema: ConfigMeta[] = <any>layoutSchemaRaw; const layoutSchema: ConfigMeta[] = <any>layoutSchemaRaw;
let editThemeState = new EditThemeState(layoutSchema, studio); let editThemeState = new EditThemeState(layoutSchema, studio, { expertMode });
let layerId = editLayerState.configuration.map(layerConfig => layerConfig.id); let layerId = editLayerState.configuration.map(layerConfig => layerConfig.id);
let showIntro = UIEventSource.asBoolean(LocalStorageSource.Get("studio-show-intro", "true")); let showIntro = UIEventSource.asBoolean(LocalStorageSource.Get("studio-show-intro", "true"));
const version = meta.version const version = meta.version;
async function editLayer(event: Event) { async function editLayer(event: Event) {
const layerId: { owner: number, id: string } = event.detail; const layerId: { owner: number, id: string } = event.detail;
state = "loading"; state = "loading";
editLayerState.startSavingUpdates(false) editLayerState.startSavingUpdates(false);
editLayerState.configuration.setData(await studio.fetch(layerId.id, "layers", layerId.owner)); editLayerState.configuration.setData(await studio.fetch(layerId.id, "layers", layerId.owner));
editLayerState.startSavingUpdates() editLayerState.startSavingUpdates();
state = "editing_layer"; state = "editing_layer";
} }
async function editTheme(event: Event) { async function editTheme(event: Event) {
const id: { id: string, owner: number } = event.detail; const id: { id: string, owner: number } = event.detail;
state = "loading"; state = "loading";
editThemeState.startSavingUpdates(false) editThemeState.startSavingUpdates(false);
editThemeState.configuration.setData(await studio.fetch(id.id, "themes", id.owner)); editThemeState.configuration.setData(await studio.fetch(id.id, "themes", id.owner));
editThemeState.startSavingUpdates() editThemeState.startSavingUpdates();
state = "editing_theme"; state = "editing_theme";
} }
@ -102,7 +109,7 @@ const version = meta.version
}] }]
}; };
editLayerState.configuration.setData(initialLayerConfig); editLayerState.configuration.setData(initialLayerConfig);
editLayerState.startSavingUpdates() editLayerState.startSavingUpdates();
state = "editing_layer"; state = "editing_layer";
} }
@ -139,9 +146,9 @@ const version = meta.version
</NextButton> </NextButton>
</div> </div>
{#if state === undefined} {#if state === undefined}
<div class="m-4"> <div class="p-4 flex flex-col justify-between h-full">
<h1>MapComplete Studio</h1>
<div class="w-full flex flex-col"> <div class="w-full flex flex-col">
<h1>MapComplete Studio</h1>
<NextButton on:click={() => state = "edit_layer"}> <NextButton on:click={() => state = "edit_layer"}>
Edit an existing layer Edit an existing layer
@ -160,8 +167,12 @@ const version = meta.version
Show the introduction again Show the introduction again
</NextButton> </NextButton>
</div> </div>
<div>
<Checkbox selected={expertMode} >Enable more options (expert mode)</Checkbox>
<span class="subtle">MapComplete version {version}</span> <span class="subtle">MapComplete version {version}</span>
</div> </div>
</div>
{:else if state === "edit_layer"} {:else if state === "edit_layer"}
<div class="flex flex-col m-4"> <div class="flex flex-col m-4">
@ -213,7 +224,7 @@ const version = meta.version
{#if $showIntro} {#if $showIntro}
<FloatOver on:close={() => {showIntro.setData(false)}}> <FloatOver on:close={() => {showIntro.setData(false)}}>
<div class="flex p-4 h-full"> <div class="flex p-4 h-full pr-12">
<Walkthrough pages={intro.sections} on:done={() => {showIntro.setData(false)}} /> <Walkthrough pages={intro.sections} on:done={() => {showIntro.setData(false)}} />
</div> </div>
</FloatOver> </FloatOver>

View file

@ -3,7 +3,7 @@ import StudioGUI from "./StudioGUI.svelte"
export default class StudioGui { export default class StudioGui {
public setup() { public setup() {
new SvelteUIElement(StudioGUI, {}).AttachTo("main") new SvelteUIElement(StudioGUI, {}).SetClass("h-full").AttachTo("main")
} }
} }

View file

@ -1491,7 +1491,7 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be
element.scrollIntoView({ behavior: "smooth", block: "nearest" }) element.scrollIntoView({ behavior: "smooth", block: "nearest" })
} }
public static findParentWithScrolling(element: HTMLBaseElement): HTMLBaseElement { private static findParentWithScrolling(element: HTMLBaseElement): HTMLBaseElement {
// Check if the element itself has scrolling // Check if the element itself has scrolling
if (element.scrollHeight > element.clientHeight) { if (element.scrollHeight > element.clientHeight) {
return element return element

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -323,7 +323,7 @@
], ],
"required": false, "required": false,
"hints": { "hints": {
"typehint": "simple_tag[]", "typehint": "simple_tag",
"question": "What extra tags should be added to the object if this object is chosen?" "question": "What extra tags should be added to the object if this object is chosen?"
}, },
"type": "array", "type": "array",
@ -472,7 +472,7 @@
"freeform", "freeform",
"key" "key"
], ],
"required": true, "required": false,
"hints": { "hints": {
"question": "What is the name of the attribute that should be written to?", "question": "What is the name of the attribute that should be written to?",
"ifunset": "do not offer a freeform textfield as answer option" "ifunset": "do not offer a freeform textfield as answer option"
@ -579,6 +579,7 @@
"required": false, "required": false,
"hints": { "hints": {
"typehint": "translation", "typehint": "translation",
"group": "expert",
"question": "What placeholder text should be shown in the input-element if there is no input?" "question": "What placeholder text should be shown in the input-element if there is no input?"
}, },
"type": [ "type": [
@ -597,7 +598,9 @@
"helperArgs" "helperArgs"
], ],
"required": false, "required": false,
"hints": {}, "hints": {
"group": "expert"
},
"type": "array", "type": "array",
"description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'" "description": "Extra parameters to initialize the input helper arguments.\nFor semantics, see the 'SpecialInputElements.md'"
}, },
@ -607,7 +610,9 @@
"addExtraTags" "addExtraTags"
], ],
"required": false, "required": false,
"hints": {}, "hints": {
"group": "expert"
},
"type": "array", "type": "array",
"description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'" "description": "If a value is added with the textfield, these extra tag is addded.\nUseful to add a 'fixme=freeform textfield used - to be checked'"
}, },
@ -618,6 +623,7 @@
], ],
"required": false, "required": false,
"hints": { "hints": {
"group": "expert",
"question": "Show the freeform as box within the question?", "question": "Show the freeform as box within the question?",
"iftrue": "show the freeform input field as a small field within the question", "iftrue": "show the freeform input field as a small field within the question",
"ifunset": "show the freeform input field full-width" "ifunset": "show the freeform input field full-width"
@ -632,6 +638,7 @@
], ],
"required": false, "required": false,
"hints": { "hints": {
"group": "expert",
"question": "What value should be entered in the text field if no value is set?", "question": "What value should be entered in the text field if no value is set?",
"ifunset": "do not prefill the textfield" "ifunset": "do not prefill the textfield"
}, },
@ -645,6 +652,7 @@
], ],
"required": false, "required": false,
"hints": { "hints": {
"group": "expert",
"question": "What values of the freeform key should be interpreted as 'unknown'?", "question": "What values of the freeform key should be interpreted as 'unknown'?",
"ifunset": "The question will be considered answered if any value is set for the key" "ifunset": "The question will be considered answered if any value is set for the key"
}, },
@ -882,7 +890,8 @@
"required": false, "required": false,
"hints": { "hints": {
"typehint": "tag", "typehint": "tag",
"question": "When should this item be shown?" "question": "When should this item be shown?",
"ifunset": "No specific condition set; always show this tagRendering or ask the question if unkown"
}, },
"type": [ "type": [
{ {

View file

@ -112,7 +112,8 @@
"required": false, "required": false,
"hints": { "hints": {
"typehint": "tag", "typehint": "tag",
"question": "When should this item be shown?" "question": "When should this item be shown?",
"ifunset": "No specific condition set; always show this tagRendering or ask the question if unkown"
}, },
"type": [ "type": [
{ {
@ -298,7 +299,7 @@
"freeform", "freeform",
"key" "key"
], ],
"required": true, "required": false,
"hints": {}, "hints": {},
"type": "string", "type": "string",
"description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown" "description": "What attribute should be filled out\nIf this key is present in the feature, then 'render' is used to display the value.\nIf this is undefined, the rendering is _always_ shown"
@ -375,6 +376,7 @@
"hints": { "hints": {
"typehint": "icon", "typehint": "icon",
"question": "What icon should be added to this mapping?", "question": "What icon should be added to this mapping?",
"ifunset": "Do not show an extra icon next to the render value",
"inline": "<img src='{icon}' class=\"w-8 h-8\" /> {icon}" "inline": "<img src='{icon}' class=\"w-8 h-8\" /> {icon}"
}, },
"type": [ "type": [
@ -398,7 +400,7 @@
"type": "string" "type": "string"
} }
], ],
"description": "An icon supporting this mapping; typically shown pretty small" "description": "An icon supporting this mapping; typically shown pretty small.\nThis can be used to show a 'phone'-icon next to the phone number"
}, },
{ {
"path": [ "path": [

File diff suppressed because one or more lines are too long

View file

@ -12,7 +12,7 @@
<link href="./css/wikipedia.css" rel="stylesheet"/> <link href="./css/wikipedia.css" rel="stylesheet"/>
</head> </head>
<body> <body>
<div id="main">Initing studio...</div> <div id="main" class="h-full">Initing studio...</div>
<script src="./src/UI/StudioGui.ts" type="module"></script> <script src="./src/UI/StudioGui.ts" type="module"></script>
<script async data-goatcounter="https://pietervdvn.goatcounter.com/count" src="https://gc.zgo.at/count.js" crossorigin="anonymous" integrity="sha384-gtO6vSydQeOAGGK19NHrlVLNtaDSJjN4aGMWschK+dwAZOdPQWbjXgL+FM5XsgFJ"></script> <script async data-goatcounter="https://pietervdvn.goatcounter.com/count" src="https://gc.zgo.at/count.js" crossorigin="anonymous" integrity="sha384-gtO6vSydQeOAGGK19NHrlVLNtaDSJjN4aGMWschK+dwAZOdPQWbjXgL+FM5XsgFJ"></script>