From b19d9ef077c41c6f158a93c53337560bd71da926 Mon Sep 17 00:00:00 2001 From: Pieter Vander Vennet Date: Fri, 2 Aug 2024 19:05:16 +0200 Subject: [PATCH] Chore: regenerate schemas --- Docs/Schemas/DeleteConfigJson.schema.json | 14 +- Docs/Schemas/DeleteConfigJsonJSC.ts | 13 +- .../DenominationConfigJson.schema.json | 8 +- Docs/Schemas/DenominationConfigJsonJSC.ts | 6 +- Docs/Schemas/ExtraLinkConfigJson.schema.json | 8 +- Docs/Schemas/ExtraLinkConfigJsonJSC.ts | 6 +- Docs/Schemas/FilterConfigJson.schema.json | 8 +- Docs/Schemas/FilterConfigJsonJSC.ts | 6 +- Docs/Schemas/IconConfigJson.schema.json | 8 +- Docs/Schemas/IconConfigJsonJSC.ts | 6 +- Docs/Schemas/LayerConfigJson.schema.json | 18 +- Docs/Schemas/LayerConfigJsonJSC.ts | 16 +- Docs/Schemas/LayoutConfigJson.schema.json | 22 +- Docs/Schemas/LayoutConfigJsonJSC.ts | 20 +- .../LineRenderingConfigJson.schema.json | 8 +- Docs/Schemas/LineRenderingConfigJsonJSC.ts | 6 +- Docs/Schemas/MappingConfigJson.schema.json | 8 +- Docs/Schemas/MappingConfigJsonJSC.ts | 6 +- .../MinimalTagRenderingConfigJson.schema.json | 8 +- .../MinimalTagRenderingConfigJsonJSC.ts | 6 +- Docs/Schemas/MoveConfigJson.schema.json | 8 +- Docs/Schemas/MoveConfigJsonJSC.ts | 6 +- .../PointRenderingConfigJson.schema.json | 8 +- Docs/Schemas/PointRenderingConfigJsonJSC.ts | 6 +- ...tionableTagRenderingConfigJson.schema.json | 8 +- .../QuestionableTagRenderingConfigJsonJSC.ts | 6 +- Docs/Schemas/RewritableConfigJson.schema.json | 8 +- Docs/Schemas/RewritableConfigJsonJSC.ts | 6 +- .../TagRenderingConfigJson.schema.json | 8 +- Docs/Schemas/TagRenderingConfigJsonJSC.ts | 6 +- Docs/Schemas/UnitConfigJson.schema.json | 8 +- Docs/Schemas/UnitConfigJsonJSC.ts | 6 +- src/assets/schemas/layerconfigmeta.json | 239 +++--- src/assets/schemas/layoutconfigmeta.json | 718 +++++++++++++----- 34 files changed, 839 insertions(+), 403 deletions(-) diff --git a/Docs/Schemas/DeleteConfigJson.schema.json b/Docs/Schemas/DeleteConfigJson.schema.json index 1398ab84f5..33a094d8da 100644 --- a/Docs/Schemas/DeleteConfigJson.schema.json +++ b/Docs/Schemas/DeleteConfigJson.schema.json @@ -36,7 +36,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -115,6 +123,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { diff --git a/Docs/Schemas/DeleteConfigJsonJSC.ts b/Docs/Schemas/DeleteConfigJsonJSC.ts index 3a6f5e67cd..5f3727fe2a 100644 --- a/Docs/Schemas/DeleteConfigJsonJSC.ts +++ b/Docs/Schemas/DeleteConfigJsonJSC.ts @@ -36,7 +36,15 @@ export default { "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -114,6 +122,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { diff --git a/Docs/Schemas/DenominationConfigJson.schema.json b/Docs/Schemas/DenominationConfigJson.schema.json index 0e70293215..5f4f5cc02e 100644 --- a/Docs/Schemas/DenominationConfigJson.schema.json +++ b/Docs/Schemas/DenominationConfigJson.schema.json @@ -41,6 +41,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -56,10 +60,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/DenominationConfigJsonJSC.ts b/Docs/Schemas/DenominationConfigJsonJSC.ts index bcd5c37ead..660f4509e7 100644 --- a/Docs/Schemas/DenominationConfigJsonJSC.ts +++ b/Docs/Schemas/DenominationConfigJsonJSC.ts @@ -40,6 +40,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -54,9 +57,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/ExtraLinkConfigJson.schema.json b/Docs/Schemas/ExtraLinkConfigJson.schema.json index 4a298f5bad..098b6120e0 100644 --- a/Docs/Schemas/ExtraLinkConfigJson.schema.json +++ b/Docs/Schemas/ExtraLinkConfigJson.schema.json @@ -82,6 +82,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -96,10 +100,6 @@ "or" ], "additionalProperties": false - }, - "Record": { - "type": "object", - "additionalProperties": false } }, "$schema": "http://json-schema.org/draft-07/schema#", diff --git a/Docs/Schemas/ExtraLinkConfigJsonJSC.ts b/Docs/Schemas/ExtraLinkConfigJsonJSC.ts index b822d4604b..66081c224e 100644 --- a/Docs/Schemas/ExtraLinkConfigJsonJSC.ts +++ b/Docs/Schemas/ExtraLinkConfigJsonJSC.ts @@ -81,6 +81,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -94,9 +97,6 @@ export default { "required": [ "or" ] - }, - "Record": { - "type": "object" } }, "$schema": "http://json-schema.org/draft-07/schema#" diff --git a/Docs/Schemas/FilterConfigJson.schema.json b/Docs/Schemas/FilterConfigJson.schema.json index 2d91892f2b..24db048c96 100644 --- a/Docs/Schemas/FilterConfigJson.schema.json +++ b/Docs/Schemas/FilterConfigJson.schema.json @@ -103,6 +103,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -117,10 +121,6 @@ "or" ], "additionalProperties": false - }, - "Record": { - "type": "object", - "additionalProperties": false } }, "$schema": "http://json-schema.org/draft-07/schema#", diff --git a/Docs/Schemas/FilterConfigJsonJSC.ts b/Docs/Schemas/FilterConfigJsonJSC.ts index 62ba6448d6..e2e02f2745 100644 --- a/Docs/Schemas/FilterConfigJsonJSC.ts +++ b/Docs/Schemas/FilterConfigJsonJSC.ts @@ -102,6 +102,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -115,9 +118,6 @@ export default { "required": [ "or" ] - }, - "Record": { - "type": "object" } }, "$schema": "http://json-schema.org/draft-07/schema#" diff --git a/Docs/Schemas/IconConfigJson.schema.json b/Docs/Schemas/IconConfigJson.schema.json index 55a092fc54..d002c7bc49 100644 --- a/Docs/Schemas/IconConfigJson.schema.json +++ b/Docs/Schemas/IconConfigJson.schema.json @@ -94,6 +94,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -109,10 +113,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/IconConfigJsonJSC.ts b/Docs/Schemas/IconConfigJsonJSC.ts index 5350d63367..7a122e9e81 100644 --- a/Docs/Schemas/IconConfigJsonJSC.ts +++ b/Docs/Schemas/IconConfigJsonJSC.ts @@ -93,6 +93,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -107,9 +110,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/LayerConfigJson.schema.json b/Docs/Schemas/LayerConfigJson.schema.json index f4b1253221..51af58d6c8 100644 --- a/Docs/Schemas/LayerConfigJson.schema.json +++ b/Docs/Schemas/LayerConfigJson.schema.json @@ -461,6 +461,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -476,10 +480,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false @@ -1896,7 +1896,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ diff --git a/Docs/Schemas/LayerConfigJsonJSC.ts b/Docs/Schemas/LayerConfigJsonJSC.ts index 1d9cd1d2cf..d7be524073 100644 --- a/Docs/Schemas/LayerConfigJsonJSC.ts +++ b/Docs/Schemas/LayerConfigJsonJSC.ts @@ -460,6 +460,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -474,9 +477,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, @@ -1879,7 +1879,15 @@ export default { "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ diff --git a/Docs/Schemas/LayoutConfigJson.schema.json b/Docs/Schemas/LayoutConfigJson.schema.json index 077d02824b..f8fbe6486e 100644 --- a/Docs/Schemas/LayoutConfigJson.schema.json +++ b/Docs/Schemas/LayoutConfigJson.schema.json @@ -58,7 +58,7 @@ ] }, "icon": { - "description": "question: What icon should be used to represent this theme?\n\nUsed as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\n\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)\n\nType: icon\ngroup: basic", + "description": "question: What icon should be used to represent this theme?\n\nUsed as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\n\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)\n\nType: icon\nsuggestions: return Constants.defaultPinIcons.map(i => ({if: \"value=\"+i, then: i, icon: i}))\ngroup: basic", "type": "string" }, "socialImage": { @@ -104,7 +104,7 @@ "type": "boolean" }, "layers": { - "description": "question: What layers should this map show?\ntype: layer[]\ntypes: hidden | layer | hidden\ngroup: layers\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: \"\"+key+\" (builtin) - \"+layers.get(key).description}))\n\nA theme must contain at least one layer.\n\nA layer contains all features of a single type, for example \"shops\", \"bicycle pumps\", \"benches\".\nNote that every layer contains a specification of attributes that it should match. MapComplete will fetch the relevant data from either overpass, the OSM-API or the cache server.\nIf a feature can match multiple layers, the first matching layer in the list will be used.\nThis implies that the _order_ of the layers is important.\n\n\n
\nNote that builtin layers can be reused. Either put in the name of the layer to reuse, or use {builtin: \"layername\", override: ...}\n\nThe 'override'-object will be copied over the original values of the layer, which allows to change certain aspects of the layer\n\nFor example: If you would like to use layer nature reserves, but only from a specific operator (eg. Natuurpunt) you would use the following in your theme:\n\n```\n\"layer\": {\n \"builtin\": \"nature_reserve\",\n \"override\": {\"source\":\n {\"osmTags\": {\n \"+and\":[\"operator=Natuurpunt\"]\n }\n }\n }\n}\n```\n\nIt's also possible to load multiple layers at once, for example, if you would like for both drinking water and benches to start at the zoomlevel at 12, you would use the following:\n\n```\n\"layer\": {\n \"builtin\": [\"benches\", \"drinking_water\"],\n \"override\": {\"minzoom\": 12}\n}\n```\n
", + "description": "question: What layers should this map show?\ntype: layer[]\ntypes: hidden | layer | hidden\ngroup: layers\ntitle: value[\"builtin\"] ?? value[\"id\"] ?? value\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: \"\"+key+\" (builtin) - \"+layers.get(key).description}))\n\nA theme must contain at least one layer.\n\nA layer contains all features of a single type, for example \"shops\", \"bicycle pumps\", \"benches\".\nNote that every layer contains a specification of attributes that it should match. MapComplete will fetch the relevant data from either overpass, the OSM-API or the cache server.\nIf a feature can match multiple layers, the first matching layer in the list will be used.\nThis implies that the _order_ of the layers is important.\n\n\n
\nNote that builtin layers can be reused. Either put in the name of the layer to reuse, or use {builtin: \"layername\", override: ...}\n\nThe 'override'-object will be copied over the original values of the layer, which allows to change certain aspects of the layer\n\nFor example: If you would like to use layer nature reserves, but only from a specific operator (eg. Natuurpunt) you would use the following in your theme:\n\n```\n\"layer\": {\n \"builtin\": \"nature_reserve\",\n \"override\": {\"source\":\n {\"osmTags\": {\n \"+and\":[\"operator=Natuurpunt\"]\n }\n }\n }\n}\n```\n\nIt's also possible to load multiple layers at once, for example, if you would like for both drinking water and benches to start at the zoomlevel at 12, you would use the following:\n\n```\n\"layer\": {\n \"builtin\": [\"benches\", \"drinking_water\"],\n \"override\": {\"minzoom\": 12}\n}\n```\n
", "type": "array", "items": { "anyOf": [ @@ -352,6 +352,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -367,10 +371,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false @@ -1787,7 +1787,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ diff --git a/Docs/Schemas/LayoutConfigJsonJSC.ts b/Docs/Schemas/LayoutConfigJsonJSC.ts index d6dcb0ec3d..968898b2d4 100644 --- a/Docs/Schemas/LayoutConfigJsonJSC.ts +++ b/Docs/Schemas/LayoutConfigJsonJSC.ts @@ -58,7 +58,7 @@ export default { ] }, "icon": { - "description": "question: What icon should be used to represent this theme?\n\nUsed as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\n\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)\n\nType: icon\ngroup: basic", + "description": "question: What icon should be used to represent this theme?\n\nUsed as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\n\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)\n\nType: icon\nsuggestions: return Constants.defaultPinIcons.map(i => ({if: \"value=\"+i, then: i, icon: i}))\ngroup: basic", "type": "string" }, "socialImage": { @@ -104,7 +104,7 @@ export default { "type": "boolean" }, "layers": { - "description": "question: What layers should this map show?\ntype: layer[]\ntypes: hidden | layer | hidden\ngroup: layers\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: \"\"+key+\" (builtin) - \"+layers.get(key).description}))\n\nA theme must contain at least one layer.\n\nA layer contains all features of a single type, for example \"shops\", \"bicycle pumps\", \"benches\".\nNote that every layer contains a specification of attributes that it should match. MapComplete will fetch the relevant data from either overpass, the OSM-API or the cache server.\nIf a feature can match multiple layers, the first matching layer in the list will be used.\nThis implies that the _order_ of the layers is important.\n\n\n
\nNote that builtin layers can be reused. Either put in the name of the layer to reuse, or use {builtin: \"layername\", override: ...}\n\nThe 'override'-object will be copied over the original values of the layer, which allows to change certain aspects of the layer\n\nFor example: If you would like to use layer nature reserves, but only from a specific operator (eg. Natuurpunt) you would use the following in your theme:\n\n```\n\"layer\": {\n \"builtin\": \"nature_reserve\",\n \"override\": {\"source\":\n {\"osmTags\": {\n \"+and\":[\"operator=Natuurpunt\"]\n }\n }\n }\n}\n```\n\nIt's also possible to load multiple layers at once, for example, if you would like for both drinking water and benches to start at the zoomlevel at 12, you would use the following:\n\n```\n\"layer\": {\n \"builtin\": [\"benches\", \"drinking_water\"],\n \"override\": {\"minzoom\": 12}\n}\n```\n
", + "description": "question: What layers should this map show?\ntype: layer[]\ntypes: hidden | layer | hidden\ngroup: layers\ntitle: value[\"builtin\"] ?? value[\"id\"] ?? value\nsuggestions: return Array.from(layers.keys()).map(key => ({if: \"value=\"+key, then: \"\"+key+\" (builtin) - \"+layers.get(key).description}))\n\nA theme must contain at least one layer.\n\nA layer contains all features of a single type, for example \"shops\", \"bicycle pumps\", \"benches\".\nNote that every layer contains a specification of attributes that it should match. MapComplete will fetch the relevant data from either overpass, the OSM-API or the cache server.\nIf a feature can match multiple layers, the first matching layer in the list will be used.\nThis implies that the _order_ of the layers is important.\n\n\n
\nNote that builtin layers can be reused. Either put in the name of the layer to reuse, or use {builtin: \"layername\", override: ...}\n\nThe 'override'-object will be copied over the original values of the layer, which allows to change certain aspects of the layer\n\nFor example: If you would like to use layer nature reserves, but only from a specific operator (eg. Natuurpunt) you would use the following in your theme:\n\n```\n\"layer\": {\n \"builtin\": \"nature_reserve\",\n \"override\": {\"source\":\n {\"osmTags\": {\n \"+and\":[\"operator=Natuurpunt\"]\n }\n }\n }\n}\n```\n\nIt's also possible to load multiple layers at once, for example, if you would like for both drinking water and benches to start at the zoomlevel at 12, you would use the following:\n\n```\n\"layer\": {\n \"builtin\": [\"benches\", \"drinking_water\"],\n \"override\": {\"minzoom\": 12}\n}\n```\n
", "type": "array", "items": { "anyOf": [ @@ -351,6 +351,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -365,9 +368,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, @@ -1770,7 +1770,15 @@ export default { "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ diff --git a/Docs/Schemas/LineRenderingConfigJson.schema.json b/Docs/Schemas/LineRenderingConfigJson.schema.json index 1e53b6b7eb..b65b2fdf97 100644 --- a/Docs/Schemas/LineRenderingConfigJson.schema.json +++ b/Docs/Schemas/LineRenderingConfigJson.schema.json @@ -133,6 +133,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -148,10 +152,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/LineRenderingConfigJsonJSC.ts b/Docs/Schemas/LineRenderingConfigJsonJSC.ts index 79c8bfed5b..3c6e0ce4c6 100644 --- a/Docs/Schemas/LineRenderingConfigJsonJSC.ts +++ b/Docs/Schemas/LineRenderingConfigJsonJSC.ts @@ -132,6 +132,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -146,9 +149,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/MappingConfigJson.schema.json b/Docs/Schemas/MappingConfigJson.schema.json index 18090ea06e..f6d5ddbc61 100644 --- a/Docs/Schemas/MappingConfigJson.schema.json +++ b/Docs/Schemas/MappingConfigJson.schema.json @@ -160,6 +160,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -175,10 +179,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/MappingConfigJsonJSC.ts b/Docs/Schemas/MappingConfigJsonJSC.ts index db8a9380bd..5ea7c2c7ec 100644 --- a/Docs/Schemas/MappingConfigJsonJSC.ts +++ b/Docs/Schemas/MappingConfigJsonJSC.ts @@ -159,6 +159,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -173,9 +176,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json b/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json index b383ff28a2..38a9b1ea54 100644 --- a/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json +++ b/Docs/Schemas/MinimalTagRenderingConfigJson.schema.json @@ -69,6 +69,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -83,10 +87,6 @@ "or" ], "additionalProperties": false - }, - "Record": { - "type": "object", - "additionalProperties": false } }, "$schema": "http://json-schema.org/draft-07/schema#", diff --git a/Docs/Schemas/MinimalTagRenderingConfigJsonJSC.ts b/Docs/Schemas/MinimalTagRenderingConfigJsonJSC.ts index 64fa61a1f4..5bca2a13d9 100644 --- a/Docs/Schemas/MinimalTagRenderingConfigJsonJSC.ts +++ b/Docs/Schemas/MinimalTagRenderingConfigJsonJSC.ts @@ -68,6 +68,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -81,9 +84,6 @@ export default { "required": [ "or" ] - }, - "Record": { - "type": "object" } }, "$schema": "http://json-schema.org/draft-07/schema#" diff --git a/Docs/Schemas/MoveConfigJson.schema.json b/Docs/Schemas/MoveConfigJson.schema.json index 25a1471272..14ffd3768b 100644 --- a/Docs/Schemas/MoveConfigJson.schema.json +++ b/Docs/Schemas/MoveConfigJson.schema.json @@ -51,6 +51,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -66,10 +70,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/MoveConfigJsonJSC.ts b/Docs/Schemas/MoveConfigJsonJSC.ts index f460491dc1..ae5a5b1fab 100644 --- a/Docs/Schemas/MoveConfigJsonJSC.ts +++ b/Docs/Schemas/MoveConfigJsonJSC.ts @@ -50,6 +50,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -64,9 +67,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/PointRenderingConfigJson.schema.json b/Docs/Schemas/PointRenderingConfigJson.schema.json index 038f3bca05..1015e2870b 100644 --- a/Docs/Schemas/PointRenderingConfigJson.schema.json +++ b/Docs/Schemas/PointRenderingConfigJson.schema.json @@ -207,6 +207,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -222,10 +226,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/PointRenderingConfigJsonJSC.ts b/Docs/Schemas/PointRenderingConfigJsonJSC.ts index a244e2ce9a..6b8b9723ad 100644 --- a/Docs/Schemas/PointRenderingConfigJsonJSC.ts +++ b/Docs/Schemas/PointRenderingConfigJsonJSC.ts @@ -206,6 +206,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -220,9 +223,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json b/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json index b0fa7cfb99..da24141e22 100644 --- a/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json +++ b/Docs/Schemas/QuestionableTagRenderingConfigJson.schema.json @@ -276,6 +276,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -291,10 +295,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/QuestionableTagRenderingConfigJsonJSC.ts b/Docs/Schemas/QuestionableTagRenderingConfigJsonJSC.ts index ba73066673..72e43b9964 100644 --- a/Docs/Schemas/QuestionableTagRenderingConfigJsonJSC.ts +++ b/Docs/Schemas/QuestionableTagRenderingConfigJsonJSC.ts @@ -275,6 +275,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -289,9 +292,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/RewritableConfigJson.schema.json b/Docs/Schemas/RewritableConfigJson.schema.json index 2055a733b2..377170bade 100644 --- a/Docs/Schemas/RewritableConfigJson.schema.json +++ b/Docs/Schemas/RewritableConfigJson.schema.json @@ -87,6 +87,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -102,10 +106,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/RewritableConfigJsonJSC.ts b/Docs/Schemas/RewritableConfigJsonJSC.ts index f52ac7906e..56a60a4aca 100644 --- a/Docs/Schemas/RewritableConfigJsonJSC.ts +++ b/Docs/Schemas/RewritableConfigJsonJSC.ts @@ -86,6 +86,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -100,9 +103,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/Docs/Schemas/TagRenderingConfigJson.schema.json b/Docs/Schemas/TagRenderingConfigJson.schema.json index f105357b9c..f230855488 100644 --- a/Docs/Schemas/TagRenderingConfigJson.schema.json +++ b/Docs/Schemas/TagRenderingConfigJson.schema.json @@ -217,6 +217,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -232,10 +236,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/TagRenderingConfigJsonJSC.ts b/Docs/Schemas/TagRenderingConfigJsonJSC.ts index aa77db9fe1..bebfb0d5cf 100644 --- a/Docs/Schemas/TagRenderingConfigJsonJSC.ts +++ b/Docs/Schemas/TagRenderingConfigJsonJSC.ts @@ -216,6 +216,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -230,9 +233,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" } diff --git a/Docs/Schemas/UnitConfigJson.schema.json b/Docs/Schemas/UnitConfigJson.schema.json index 7042ee0436..ee18e79ee0 100644 --- a/Docs/Schemas/UnitConfigJson.schema.json +++ b/Docs/Schemas/UnitConfigJson.schema.json @@ -73,6 +73,10 @@ ], "additionalProperties": false }, + "Record": { + "type": "object", + "additionalProperties": false + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -88,10 +92,6 @@ ], "additionalProperties": false }, - "Record": { - "type": "object", - "additionalProperties": false - }, "Record>": { "type": "object", "additionalProperties": false diff --git a/Docs/Schemas/UnitConfigJsonJSC.ts b/Docs/Schemas/UnitConfigJsonJSC.ts index 3ea0ef4a58..7da38382ae 100644 --- a/Docs/Schemas/UnitConfigJsonJSC.ts +++ b/Docs/Schemas/UnitConfigJsonJSC.ts @@ -72,6 +72,9 @@ export default { "and" ] }, + "Record": { + "type": "object" + }, "{or:TagConfigJson[];}": { "type": "object", "properties": { @@ -86,9 +89,6 @@ export default { "or" ] }, - "Record": { - "type": "object" - }, "Record>": { "type": "object" }, diff --git a/src/assets/schemas/layerconfigmeta.json b/src/assets/schemas/layerconfigmeta.json index 9acf3d918d..b5959dbe9b 100644 --- a/src/assets/schemas/layerconfigmeta.json +++ b/src/assets/schemas/layerconfigmeta.json @@ -1693,9 +1693,19 @@ "question": "What icon should be used?", "suggestions": [ { - "if": "value=pin", - "then": "pin", - "icon": "pin" + "if": "value=addSmall", + "then": "addSmall", + "icon": "addSmall" + }, + { + "if": "value=brick_wall_round", + "then": "brick_wall_round", + "icon": "brick_wall_round" + }, + { + "if": "value=brick_wall_square", + "then": "brick_wall_square", + "icon": "brick_wall_square" }, { "if": "value=bug", @@ -1703,25 +1713,20 @@ "icon": "bug" }, { - "if": "value=square", - "then": "square", - "icon": "square" - }, - { - "if": "value=square_rounded", - "then": "square_rounded", - "icon": "square_rounded" - }, - { - "if": "value=circle", - "then": "circle", - "icon": "circle" + "if": "value=checkmark", + "then": "checkmark", + "icon": "checkmark" }, { "if": "value=checkmark", "then": "checkmark", "icon": "checkmark" }, + { + "if": "value=circle", + "then": "circle", + "icon": "circle" + }, { "if": "value=clock", "then": "clock", @@ -1732,11 +1737,66 @@ "then": "close", "icon": "close" }, + { + "if": "value=close", + "then": "close", + "icon": "close" + }, + { + "if": "value=confirm", + "then": "confirm", + "icon": "confirm" + }, + { + "if": "value=computer", + "then": "computer", + "icon": "computer" + }, + { + "if": "value=cross_bottom_right", + "then": "cross_bottom_right", + "icon": "cross_bottom_right" + }, { "if": "value=crosshair", "then": "crosshair", "icon": "crosshair" }, + { + "if": "value=desktop", + "then": "desktop", + "icon": "desktop" + }, + { + "if": "value=direction", + "then": "direction", + "icon": "direction" + }, + { + "if": "value=gear", + "then": "gear", + "icon": "gear" + }, + { + "if": "value=gps_arrow", + "then": "gps_arrow", + "icon": "gps_arrow" + }, + { + "if": "value=heart", + "then": "heart", + "icon": "heart" + }, + { + "if": "value=heart_outline", + "then": "heart_outline", + "icon": "heart_outline" + }, + { + "if": "value=help", + "then": "help", + "icon": "help" + }, { "if": "value=help", "then": "help", @@ -1752,6 +1812,16 @@ "then": "invalid", "icon": "invalid" }, + { + "if": "value=invalid", + "then": "invalid", + "icon": "invalid" + }, + { + "if": "value=link", + "then": "link", + "icon": "link" + }, { "if": "value=location", "then": "location", @@ -1767,11 +1837,31 @@ "then": "location_locked", "icon": "location_locked" }, + { + "if": "value=mastodon", + "then": "mastodon", + "icon": "mastodon" + }, + { + "if": "value=not_found", + "then": "not_found", + "icon": "not_found" + }, { "if": "value=note", "then": "note", "icon": "note" }, + { + "if": "value=party", + "then": "party", + "icon": "party" + }, + { + "if": "value=pin", + "then": "pin", + "icon": "pin" + }, { "if": "value=resolved", "then": "resolved", @@ -1787,6 +1877,16 @@ "then": "scissors", "icon": "scissors" }, + { + "if": "value=square", + "then": "square", + "icon": "square" + }, + { + "if": "value=square_rounded", + "then": "square_rounded", + "icon": "square_rounded" + }, { "if": "value=teardrop", "then": "teardrop", @@ -1803,84 +1903,9 @@ "icon": "triangle" }, { - "if": "value=brick_wall_square", - "then": "brick_wall_square", - "icon": "brick_wall_square" - }, - { - "if": "value=brick_wall_round", - "then": "brick_wall_round", - "icon": "brick_wall_round" - }, - { - "if": "value=gps_arrow", - "then": "gps_arrow", - "icon": "gps_arrow" - }, - { - "if": "value=checkmark", - "then": "checkmark", - "icon": "checkmark" - }, - { - "if": "value=help", - "then": "help", - "icon": "help" - }, - { - "if": "value=close", - "then": "close", - "icon": "close" - }, - { - "if": "value=invalid", - "then": "invalid", - "icon": "invalid" - }, - { - "if": "value=heart", - "then": "heart", - "icon": "heart" - }, - { - "if": "value=heart_outline", - "then": "heart_outline", - "icon": "heart_outline" - }, - { - "if": "value=link", - "then": "link", - "icon": "link" - }, - { - "if": "value=confirm", - "then": "confirm", - "icon": "confirm" - }, - { - "if": "value=direction", - "then": "direction", - "icon": "direction" - }, - { - "if": "value=not_found", - "then": "not_found", - "icon": "not_found" - }, - { - "if": "value=mastodon", - "then": "mastodon", - "icon": "mastodon" - }, - { - "if": "value=party", - "then": "party", - "icon": "party" - }, - { - "if": "value=addSmall", - "then": "addSmall", - "icon": "addSmall" + "if": "value=wifi", + "then": "wifi", + "icon": "wifi" } ] }, @@ -10294,6 +10319,10 @@ "if": "value=assembly_point", "then": "assembly_point - This layer contains assembly points and waiting areas where all employees, passengers or a large crowd assemble in case of an emergency." }, + { + "if": "value=assisted_repair", + "then": "assisted_repair - A self-assisted workshop is a location where people can come and repair their goods with help of volunteers and with the tools available at the given location. A repair café is a type of event organized regularly along the same principles." + }, { "if": "value=atm", "then": "atm - ATMs to withdraw money" @@ -10834,6 +10863,10 @@ "if": "value=toilet_at_amenity", "then": "toilet_at_amenity - A layer showing (public) toilets located at different places." }, + { + "if": "value=tool_library", + "then": "tool_library - A tool library is a place where people from the general public can borrow tools" + }, { "if": "value=trail", "then": "trail - Waymarked trails" @@ -19505,7 +19538,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -19654,6 +19695,14 @@ "hints": { "question": "What text should be shown to the contributor for this reason?" }, + "type": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ], "description": "The human explanation for the options" }, { diff --git a/src/assets/schemas/layoutconfigmeta.json b/src/assets/schemas/layoutconfigmeta.json index 00436acf46..04fbd31b8d 100644 --- a/src/assets/schemas/layoutconfigmeta.json +++ b/src/assets/schemas/layoutconfigmeta.json @@ -110,7 +110,224 @@ "hints": { "typehint": "icon", "group": "basic", - "question": "What icon should be used to represent this theme?" + "question": "What icon should be used to represent this theme?", + "suggestions": [ + { + "if": "value=addSmall", + "then": "addSmall", + "icon": "addSmall" + }, + { + "if": "value=brick_wall_round", + "then": "brick_wall_round", + "icon": "brick_wall_round" + }, + { + "if": "value=brick_wall_square", + "then": "brick_wall_square", + "icon": "brick_wall_square" + }, + { + "if": "value=bug", + "then": "bug", + "icon": "bug" + }, + { + "if": "value=checkmark", + "then": "checkmark", + "icon": "checkmark" + }, + { + "if": "value=checkmark", + "then": "checkmark", + "icon": "checkmark" + }, + { + "if": "value=circle", + "then": "circle", + "icon": "circle" + }, + { + "if": "value=clock", + "then": "clock", + "icon": "clock" + }, + { + "if": "value=close", + "then": "close", + "icon": "close" + }, + { + "if": "value=close", + "then": "close", + "icon": "close" + }, + { + "if": "value=confirm", + "then": "confirm", + "icon": "confirm" + }, + { + "if": "value=computer", + "then": "computer", + "icon": "computer" + }, + { + "if": "value=cross_bottom_right", + "then": "cross_bottom_right", + "icon": "cross_bottom_right" + }, + { + "if": "value=crosshair", + "then": "crosshair", + "icon": "crosshair" + }, + { + "if": "value=desktop", + "then": "desktop", + "icon": "desktop" + }, + { + "if": "value=direction", + "then": "direction", + "icon": "direction" + }, + { + "if": "value=gear", + "then": "gear", + "icon": "gear" + }, + { + "if": "value=gps_arrow", + "then": "gps_arrow", + "icon": "gps_arrow" + }, + { + "if": "value=heart", + "then": "heart", + "icon": "heart" + }, + { + "if": "value=heart_outline", + "then": "heart_outline", + "icon": "heart_outline" + }, + { + "if": "value=help", + "then": "help", + "icon": "help" + }, + { + "if": "value=help", + "then": "help", + "icon": "help" + }, + { + "if": "value=home", + "then": "home", + "icon": "home" + }, + { + "if": "value=invalid", + "then": "invalid", + "icon": "invalid" + }, + { + "if": "value=invalid", + "then": "invalid", + "icon": "invalid" + }, + { + "if": "value=link", + "then": "link", + "icon": "link" + }, + { + "if": "value=location", + "then": "location", + "icon": "location" + }, + { + "if": "value=location_empty", + "then": "location_empty", + "icon": "location_empty" + }, + { + "if": "value=location_locked", + "then": "location_locked", + "icon": "location_locked" + }, + { + "if": "value=mastodon", + "then": "mastodon", + "icon": "mastodon" + }, + { + "if": "value=not_found", + "then": "not_found", + "icon": "not_found" + }, + { + "if": "value=note", + "then": "note", + "icon": "note" + }, + { + "if": "value=party", + "then": "party", + "icon": "party" + }, + { + "if": "value=pin", + "then": "pin", + "icon": "pin" + }, + { + "if": "value=resolved", + "then": "resolved", + "icon": "resolved" + }, + { + "if": "value=ring", + "then": "ring", + "icon": "ring" + }, + { + "if": "value=scissors", + "then": "scissors", + "icon": "scissors" + }, + { + "if": "value=square", + "then": "square", + "icon": "square" + }, + { + "if": "value=square_rounded", + "then": "square_rounded", + "icon": "square_rounded" + }, + { + "if": "value=teardrop", + "then": "teardrop", + "icon": "teardrop" + }, + { + "if": "value=teardrop_with_hole_green", + "then": "teardrop_with_hole_green", + "icon": "teardrop_with_hole_green" + }, + { + "if": "value=triangle", + "then": "triangle", + "icon": "triangle" + }, + { + "if": "value=wifi", + "then": "wifi", + "icon": "wifi" + } + ] }, "type": "string", "description": "Used as logo in the more-screen and (for official themes) as favicon, webmanifest logo, ...\nEither a URL or a base64 encoded value (which should include 'data:image/svg+xml;base64)" @@ -352,6 +569,10 @@ "if": "value=assembly_point", "then": "assembly_point (builtin) - This layer contains assembly points and waiting areas where all employees, passengers or a large crowd assemble in case of an emergency." }, + { + "if": "value=assisted_repair", + "then": "assisted_repair (builtin) - A self-assisted workshop is a location where people can come and repair their goods with help of volunteers and with the tools available at the given location. A repair café is a type of event organized regularly along the same principles." + }, { "if": "value=atm", "then": "atm (builtin) - ATMs to withdraw money" @@ -892,6 +1113,10 @@ "if": "value=toilet_at_amenity", "then": "toilet_at_amenity (builtin) - A layer showing (public) toilets located at different places." }, + { + "if": "value=tool_library", + "then": "tool_library (builtin) - A tool library is a place where people from the general public can borrow tools" + }, { "if": "value=trail", "then": "trail (builtin) - Waymarked trails" @@ -956,7 +1181,8 @@ "if": "value=windturbine", "then": "windturbine (builtin) - Modern windmills generating electricity" } - ] + ], + "title": "value[\"builtin\"] ?? value[\"id\"] ?? value" }, "type": [ { @@ -1767,7 +1993,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -3708,9 +3942,19 @@ "question": "What icon should be used?", "suggestions": [ { - "if": "value=pin", - "then": "pin", - "icon": "pin" + "if": "value=addSmall", + "then": "addSmall", + "icon": "addSmall" + }, + { + "if": "value=brick_wall_round", + "then": "brick_wall_round", + "icon": "brick_wall_round" + }, + { + "if": "value=brick_wall_square", + "then": "brick_wall_square", + "icon": "brick_wall_square" }, { "if": "value=bug", @@ -3718,25 +3962,20 @@ "icon": "bug" }, { - "if": "value=square", - "then": "square", - "icon": "square" - }, - { - "if": "value=square_rounded", - "then": "square_rounded", - "icon": "square_rounded" - }, - { - "if": "value=circle", - "then": "circle", - "icon": "circle" + "if": "value=checkmark", + "then": "checkmark", + "icon": "checkmark" }, { "if": "value=checkmark", "then": "checkmark", "icon": "checkmark" }, + { + "if": "value=circle", + "then": "circle", + "icon": "circle" + }, { "if": "value=clock", "then": "clock", @@ -3747,11 +3986,66 @@ "then": "close", "icon": "close" }, + { + "if": "value=close", + "then": "close", + "icon": "close" + }, + { + "if": "value=confirm", + "then": "confirm", + "icon": "confirm" + }, + { + "if": "value=computer", + "then": "computer", + "icon": "computer" + }, + { + "if": "value=cross_bottom_right", + "then": "cross_bottom_right", + "icon": "cross_bottom_right" + }, { "if": "value=crosshair", "then": "crosshair", "icon": "crosshair" }, + { + "if": "value=desktop", + "then": "desktop", + "icon": "desktop" + }, + { + "if": "value=direction", + "then": "direction", + "icon": "direction" + }, + { + "if": "value=gear", + "then": "gear", + "icon": "gear" + }, + { + "if": "value=gps_arrow", + "then": "gps_arrow", + "icon": "gps_arrow" + }, + { + "if": "value=heart", + "then": "heart", + "icon": "heart" + }, + { + "if": "value=heart_outline", + "then": "heart_outline", + "icon": "heart_outline" + }, + { + "if": "value=help", + "then": "help", + "icon": "help" + }, { "if": "value=help", "then": "help", @@ -3767,6 +4061,16 @@ "then": "invalid", "icon": "invalid" }, + { + "if": "value=invalid", + "then": "invalid", + "icon": "invalid" + }, + { + "if": "value=link", + "then": "link", + "icon": "link" + }, { "if": "value=location", "then": "location", @@ -3782,11 +4086,31 @@ "then": "location_locked", "icon": "location_locked" }, + { + "if": "value=mastodon", + "then": "mastodon", + "icon": "mastodon" + }, + { + "if": "value=not_found", + "then": "not_found", + "icon": "not_found" + }, { "if": "value=note", "then": "note", "icon": "note" }, + { + "if": "value=party", + "then": "party", + "icon": "party" + }, + { + "if": "value=pin", + "then": "pin", + "icon": "pin" + }, { "if": "value=resolved", "then": "resolved", @@ -3802,6 +4126,16 @@ "then": "scissors", "icon": "scissors" }, + { + "if": "value=square", + "then": "square", + "icon": "square" + }, + { + "if": "value=square_rounded", + "then": "square_rounded", + "icon": "square_rounded" + }, { "if": "value=teardrop", "then": "teardrop", @@ -3818,84 +4152,9 @@ "icon": "triangle" }, { - "if": "value=brick_wall_square", - "then": "brick_wall_square", - "icon": "brick_wall_square" - }, - { - "if": "value=brick_wall_round", - "then": "brick_wall_round", - "icon": "brick_wall_round" - }, - { - "if": "value=gps_arrow", - "then": "gps_arrow", - "icon": "gps_arrow" - }, - { - "if": "value=checkmark", - "then": "checkmark", - "icon": "checkmark" - }, - { - "if": "value=help", - "then": "help", - "icon": "help" - }, - { - "if": "value=close", - "then": "close", - "icon": "close" - }, - { - "if": "value=invalid", - "then": "invalid", - "icon": "invalid" - }, - { - "if": "value=heart", - "then": "heart", - "icon": "heart" - }, - { - "if": "value=heart_outline", - "then": "heart_outline", - "icon": "heart_outline" - }, - { - "if": "value=link", - "then": "link", - "icon": "link" - }, - { - "if": "value=confirm", - "then": "confirm", - "icon": "confirm" - }, - { - "if": "value=direction", - "then": "direction", - "icon": "direction" - }, - { - "if": "value=not_found", - "then": "not_found", - "icon": "not_found" - }, - { - "if": "value=mastodon", - "then": "mastodon", - "icon": "mastodon" - }, - { - "if": "value=party", - "then": "party", - "icon": "party" - }, - { - "if": "value=addSmall", - "then": "addSmall", - "icon": "addSmall" + "if": "value=wifi", + "then": "wifi", + "icon": "wifi" } ] }, @@ -12584,6 +12843,10 @@ "if": "value=assembly_point", "then": "assembly_point - This layer contains assembly points and waiting areas where all employees, passengers or a large crowd assemble in case of an emergency." }, + { + "if": "value=assisted_repair", + "then": "assisted_repair - A self-assisted workshop is a location where people can come and repair their goods with help of volunteers and with the tools available at the given location. A repair café is a type of event organized regularly along the same principles." + }, { "if": "value=atm", "then": "atm - ATMs to withdraw money" @@ -13124,6 +13387,10 @@ "if": "value=toilet_at_amenity", "then": "toilet_at_amenity - A layer showing (public) toilets located at different places." }, + { + "if": "value=tool_library", + "then": "tool_library - A tool library is a place where people from the general public can borrow tools" + }, { "if": "value=trail", "then": "trail - Waymarked trails" @@ -22114,7 +22381,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -22270,6 +22545,14 @@ "hints": { "question": "What text should be shown to the contributor for this reason?" }, + "type": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ], "description": "The human explanation for the options" }, { @@ -24592,9 +24875,19 @@ "question": "What icon should be used?", "suggestions": [ { - "if": "value=pin", - "then": "pin", - "icon": "pin" + "if": "value=addSmall", + "then": "addSmall", + "icon": "addSmall" + }, + { + "if": "value=brick_wall_round", + "then": "brick_wall_round", + "icon": "brick_wall_round" + }, + { + "if": "value=brick_wall_square", + "then": "brick_wall_square", + "icon": "brick_wall_square" }, { "if": "value=bug", @@ -24602,25 +24895,20 @@ "icon": "bug" }, { - "if": "value=square", - "then": "square", - "icon": "square" - }, - { - "if": "value=square_rounded", - "then": "square_rounded", - "icon": "square_rounded" - }, - { - "if": "value=circle", - "then": "circle", - "icon": "circle" + "if": "value=checkmark", + "then": "checkmark", + "icon": "checkmark" }, { "if": "value=checkmark", "then": "checkmark", "icon": "checkmark" }, + { + "if": "value=circle", + "then": "circle", + "icon": "circle" + }, { "if": "value=clock", "then": "clock", @@ -24631,11 +24919,66 @@ "then": "close", "icon": "close" }, + { + "if": "value=close", + "then": "close", + "icon": "close" + }, + { + "if": "value=confirm", + "then": "confirm", + "icon": "confirm" + }, + { + "if": "value=computer", + "then": "computer", + "icon": "computer" + }, + { + "if": "value=cross_bottom_right", + "then": "cross_bottom_right", + "icon": "cross_bottom_right" + }, { "if": "value=crosshair", "then": "crosshair", "icon": "crosshair" }, + { + "if": "value=desktop", + "then": "desktop", + "icon": "desktop" + }, + { + "if": "value=direction", + "then": "direction", + "icon": "direction" + }, + { + "if": "value=gear", + "then": "gear", + "icon": "gear" + }, + { + "if": "value=gps_arrow", + "then": "gps_arrow", + "icon": "gps_arrow" + }, + { + "if": "value=heart", + "then": "heart", + "icon": "heart" + }, + { + "if": "value=heart_outline", + "then": "heart_outline", + "icon": "heart_outline" + }, + { + "if": "value=help", + "then": "help", + "icon": "help" + }, { "if": "value=help", "then": "help", @@ -24651,6 +24994,16 @@ "then": "invalid", "icon": "invalid" }, + { + "if": "value=invalid", + "then": "invalid", + "icon": "invalid" + }, + { + "if": "value=link", + "then": "link", + "icon": "link" + }, { "if": "value=location", "then": "location", @@ -24666,11 +25019,31 @@ "then": "location_locked", "icon": "location_locked" }, + { + "if": "value=mastodon", + "then": "mastodon", + "icon": "mastodon" + }, + { + "if": "value=not_found", + "then": "not_found", + "icon": "not_found" + }, { "if": "value=note", "then": "note", "icon": "note" }, + { + "if": "value=party", + "then": "party", + "icon": "party" + }, + { + "if": "value=pin", + "then": "pin", + "icon": "pin" + }, { "if": "value=resolved", "then": "resolved", @@ -24686,6 +25059,16 @@ "then": "scissors", "icon": "scissors" }, + { + "if": "value=square", + "then": "square", + "icon": "square" + }, + { + "if": "value=square_rounded", + "then": "square_rounded", + "icon": "square_rounded" + }, { "if": "value=teardrop", "then": "teardrop", @@ -24702,84 +25085,9 @@ "icon": "triangle" }, { - "if": "value=brick_wall_square", - "then": "brick_wall_square", - "icon": "brick_wall_square" - }, - { - "if": "value=brick_wall_round", - "then": "brick_wall_round", - "icon": "brick_wall_round" - }, - { - "if": "value=gps_arrow", - "then": "gps_arrow", - "icon": "gps_arrow" - }, - { - "if": "value=checkmark", - "then": "checkmark", - "icon": "checkmark" - }, - { - "if": "value=help", - "then": "help", - "icon": "help" - }, - { - "if": "value=close", - "then": "close", - "icon": "close" - }, - { - "if": "value=invalid", - "then": "invalid", - "icon": "invalid" - }, - { - "if": "value=heart", - "then": "heart", - "icon": "heart" - }, - { - "if": "value=heart_outline", - "then": "heart_outline", - "icon": "heart_outline" - }, - { - "if": "value=link", - "then": "link", - "icon": "link" - }, - { - "if": "value=confirm", - "then": "confirm", - "icon": "confirm" - }, - { - "if": "value=direction", - "then": "direction", - "icon": "direction" - }, - { - "if": "value=not_found", - "then": "not_found", - "icon": "not_found" - }, - { - "if": "value=mastodon", - "then": "mastodon", - "icon": "mastodon" - }, - { - "if": "value=party", - "then": "party", - "icon": "party" - }, - { - "if": "value=addSmall", - "then": "addSmall", - "icon": "addSmall" + "if": "value=wifi", + "then": "wifi", + "icon": "wifi" } ] }, @@ -33743,6 +34051,10 @@ "if": "value=assembly_point", "then": "assembly_point - This layer contains assembly points and waiting areas where all employees, passengers or a large crowd assemble in case of an emergency." }, + { + "if": "value=assisted_repair", + "then": "assisted_repair - A self-assisted workshop is a location where people can come and repair their goods with help of volunteers and with the tools available at the given location. A repair café is a type of event organized regularly along the same principles." + }, { "if": "value=atm", "then": "atm - ATMs to withdraw money" @@ -34283,6 +34595,10 @@ "if": "value=toilet_at_amenity", "then": "toilet_at_amenity - A layer showing (public) toilets located at different places." }, + { + "if": "value=tool_library", + "then": "tool_library - A tool library is a place where people from the general public can borrow tools" + }, { "if": "value=trail", "then": "trail - Waymarked trails" @@ -43592,7 +43908,15 @@ "description": "The tags that will be given to the object.\nThis must remove tags so that the 'source/osmTags' won't match anymore\n\nquestion: What tags should be applied to the object?" }, "then": { - "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?" + "description": "The human explanation for the options\n\nquestion: What text should be shown to the contributor for this reason?", + "anyOf": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ] } }, "required": [ @@ -43755,6 +44079,14 @@ "hints": { "question": "What text should be shown to the contributor for this reason?" }, + "type": [ + { + "$ref": "#/definitions/Record" + }, + { + "type": "string" + } + ], "description": "The human explanation for the options" }, {