2021-11-07 17:17:48 +01:00
export default {
2022-04-04 04:54:06 +02:00
"type" : "object" ,
"properties" : {
"id" : {
"description" : "An id/name for this filter, used to set the URL parameters" ,
"type" : "string"
} ,
"options" : {
"description" : "The options for a filter\nIf there are multiple options these will be a list of radio buttons\nIf there is only one option this will be a checkbox\nFiltering is done based on the given osmTags that are compared to the objects in that layer." ,
2022-01-26 21:40:38 +01:00
"type" : "array" ,
"items" : {
2022-04-04 04:54:06 +02:00
"type" : "object" ,
"properties" : {
"question" : { } ,
"osmTags" : {
"anyOf" : [
{
"$ref" : "#/definitions/AndOrTagConfigJson"
} ,
{
"type" : "string"
}
]
} ,
"default" : {
"type" : "boolean"
} ,
"fields" : {
"type" : "array" ,
"items" : {
"type" : "object" ,
"properties" : {
"name" : {
2022-04-30 01:53:59 +02:00
"description" : "If name is `search`, use \"_first_comment~.*{search}.*\" as osmTags" ,
2022-04-04 04:54:06 +02:00
"type" : "string"
} ,
"type" : {
"type" : "string"
}
} ,
"required" : [
"name"
]
}
}
2022-01-26 21:40:38 +01:00
} ,
2022-04-04 04:54:06 +02:00
"required" : [
"question"
]
}
}
} ,
"required" : [
"id" ,
"options"
] ,
"definitions" : {
"AndOrTagConfigJson" : {
"type" : "object" ,
"properties" : {
"and" : {
"type" : "array" ,
"items" : {
"anyOf" : [
{
"$ref" : "#/definitions/AndOrTagConfigJson"
} ,
{
"type" : "string"
}
]
}
} ,
"or" : {
"type" : "array" ,
"items" : {
"anyOf" : [
{
"$ref" : "#/definitions/AndOrTagConfigJson"
} ,
{
"type" : "string"
}
]
}
2022-01-26 21:40:38 +01:00
}
}
}
2022-04-04 04:54:06 +02:00
} ,
"$schema" : "http://json-schema.org/draft-07/schema#"
2021-11-07 17:17:48 +01:00
}