Files
iD/data/presets/schema/field.json
Bryan Housel 00b426e951 Add snake_case field property (closes #2867)
The vast majority of tag values in OSM should be automatically snake_cased
(e.g. `amenity=place_of_worship`)
But there are a few exceptions, e.g. fields expected to include a unit
(e.g. `maxstay=1 day`)
So this allows a ui field to set whether or not to automatically snake_case
2015-12-09 13:46:30 -08:00

116 lines
3.6 KiB
JSON

{
"title": "Field",
"description": "A reusable form element for presets",
"type": "object",
"properties": {
"key": {
"description": "Tag key whose value is to be displayed",
"type": "string"
},
"keys": {
"description": "Tag keys whose value is to be displayed",
"type": "array",
"items": {
"type": "string"
}
},
"reference": {
"description": "Taginfo documentation parameters (to be used when a field manages multiple tags)",
"type": [
{
"type": "object",
"properties": {
"key": {
"description": "For documentation of a key",
"type": "string",
"required": true
},
"value": {
"description": "For documentation of a tag (key and value)",
"type": "string"
}
},
"additionalProperties": false
},
{
"type": "object",
"properties": {
"rtype": {
"description": "For documentation of a relation type",
"type": "string"
}
},
"additionalProperties": false
}
]
},
"type": {
"description": "Type of field",
"type": "string",
"enum": [
"access",
"address",
"check",
"combo",
"cycleway",
"defaultcheck",
"text",
"maxspeed",
"number",
"tel",
"email",
"url",
"radio",
"textarea",
"localized",
"wikipedia",
"typeCombo",
"restrictions"
],
"required": true
},
"label": {
"description": "English label for the field caption",
"type": "string",
"required": true
},
"geometry": {
"description": "If specified, only show the field for this kind of geometry",
"type": "string"
},
"default": {
"description": "The default value for this field",
"type": "string"
},
"options": {
"description": "List of untranslatable string suggestions (combo type fields)",
"type": "array",
"items": {
"type": "string"
}
},
"universal": {
"description": "If true, this field will appear in the Add Field list for all presets",
"type": "boolean",
"default": false
},
"icon": {
"type": "string"
},
"placeholder": {
"description": "Placeholder text for this field",
"type": "string"
},
"strings": {
"description": "Translatable strings options (combo type fields)",
"type": "object"
},
"snake_case": {
"description": "If true, replace spaces with underscores in the tag value (combo type fields)",
"type": "boolean",
"default": true
}
},
"additionalProperties": false
}