diff --git a/assets/themes/cycle_infra/cycle-infra.svg b/assets/themes/cycle_infra/cycle-infra.svg index ebec25137b..9d3c99e0b3 100644 --- a/assets/themes/cycle_infra/cycle-infra.svg +++ b/assets/themes/cycle_infra/cycle-infra.svg @@ -3,6 +3,8 @@ id="Layer_1" data-name="Layer 1" viewBox="0 0 400 400" + height="400" + width="400" version="1.1" sodipodi:docname="cycle-infra.svg" inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" diff --git a/assets/themes/cyclenodes/cyclenodes.json b/assets/themes/cyclenodes/cyclenodes.json index 904345b708..1ad5eb1a60 100644 --- a/assets/themes/cyclenodes/cyclenodes.json +++ b/assets/themes/cyclenodes/cyclenodes.json @@ -408,7 +408,13 @@ "osmTags": { "and": [ "information=guidepost", - "bicycle=yes" + { + "or": [ + "bicycle=yes", + "guidepost~.*bicycle", + "guidepost~.*mtb.*" + ] + } ] } }, @@ -417,13 +423,7 @@ "tags": [ "tourism=information", "information=guidepost", - { - "or": [ - "bicycle=yes", - "guidepost~.*bicycle", - "guidepost~.*mtb.*" - ] - } + "bicycle=yes" ] } ], diff --git a/src/Models/ThemeConfig/LayerConfig.ts b/src/Models/ThemeConfig/LayerConfig.ts index eb7f3d5b10..3503fcd95e 100644 --- a/src/Models/ThemeConfig/LayerConfig.ts +++ b/src/Models/ThemeConfig/LayerConfig.ts @@ -194,6 +194,14 @@ export default class LayerConfig extends WithContextLoader { } } + if (!Array.isArray(pr.tags)) { + throw context + ": Preset " + i + " tags are not an array" + } + + if (pr.tags.some(t => typeof t !== "string")) { + throw context + ": Preset " + i + ": all tags should be a simple tag (thus: a string) which should also be uploadable. A non-string type is found" + } + const config: PresetConfig = { title: Translations.T(pr.title, `${translationContext}.presets.${i}.title`), tags: pr.tags.map((t) => TagUtils.SimpleTag(t)),