4.9 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Available types for text fields
Table of contents
The listed types here trigger a special input element. Use them in tagrendering.freeform.type of your tagrendering to activate them
string
A simple piece of text
text
A longer piece of text. Uses an textArea instead of a textField
date
A date with date picker
nat
A positive number or zero
int
A number
distance
A geographical distance in meters (rounded at two points). Will give an extra minimap with a measurement tool. Arguments: [ zoomlevel, preferredBackgroundMapType (comma separated) ], e.g. `["21", "map,photo"]
direction
A geographical direction, in degrees. 0° is north, 90° is east, ... Will return a value between 0 (incl) and 360 (excl)
wikidata
A wikidata identifier, e.g. Q42.
Helper arguments
| name | doc | 
|---|---|
| key | the value of this tag will initialize search (default: name) | 
| options | A JSON-object of type { removePrefixes: string[], removePostfixes: string[] }. | 
| subarg | doc | |
|---|---|
| removePrefixes | remove these snippets of text from the start of the passed string to search. This is either a list OR a hash of languages to a list. The individual strings are interpreted as case ignoring regexes | 
| removePostfixes | remove these snippets of text from the end of the passed string to search. This is either a list OR a hash of languages to a list. The individual strings are interpreted as case ignoring regexes. | 
| instanceOf | A list of Q-identifier which indicates that the search results must be an entity of this type, e.g. Q5for humans | 
| notInstanceof | A list of Q-identifiers which indicates that the search results must not be an entity of this type, e.g. Q79007to filter away all streets from the search results | 
Example usage
The following is the 'freeform'-part of a layer config which will trigger a search for the wikidata item corresponding with the name of the selected feature. It will also remove '-street', '-square', ... if found at the end of the name
"freeform": {
    "key": "name:etymology:wikidata",
    "type": "wikidata",
    "helperArgs": [
        "name",
        {
            "removePostfixes": {"en": [
                "street",
                "boulevard",
                "path",
                "square",
                "plaza",
            ],
             "nl": ["straat","plein","pad","weg",laan"],
             "fr":["route (de|de la|de l'| de le)"]
             },
            "#": "Remove streets and parks from the search results:"
             "notInstanceOf": ["Q79007","Q22698"]
        }
    ]
}
Another example is to search for species and trees:
 "freeform": {
        "key": "species:wikidata",
        "type": "wikidata",
        "helperArgs": [
          "species",
          {
          "instanceOf": [10884, 16521]
        }]
      }
pnat
A strict positive number
float
A decimal
pfloat
A positive decimal (inclusive zero)
An email adress
url
The validatedTextField will format URLs to always be valid and have a https://-header (even though the 'https'-part will be hidden from the user
phone
A phone number
opening_hours
Has extra elements to easily input when a POI is opened.
Helper arguments
| name | doc | 
|---|---|
| options | A JSON-object of type { prefix: string, postfix: string }. | 
| subarg | doc | |
|---|---|
| prefix | Piece of text that will always be added to the front of the generated opening hours. If the OSM-data does not start with this, it will fail to parse. | 
| postfix | Piece of text that will always be added to the end of the generated opening hours | 
Example usage
To add a conditional (based on time) access restriction:
"freeform": {
    "key": "access:conditional",
    "type": "opening_hours",
    "helperArgs": [
        {
          "prefix":"no @ (",
          "postfix":")"
        }
    ]
}
Don't forget to pass the prefix and postfix in the rendering as well: {opening_hours_table(opening_hours,yes @ &LPARENS, &RPARENS )
color
Shows a color picker
This document is autogenerated from UI/Input/ValidatedTextField.ts