diff --git a/Customizations/AllKnownLayers.ts b/Customizations/AllKnownLayers.ts index 87fe98b176..b740ded355 100644 --- a/Customizations/AllKnownLayers.ts +++ b/Customizations/AllKnownLayers.ts @@ -28,6 +28,10 @@ export default class AllKnownLayers { if (typeof layer === "string") { continue; } + if(layer.builtin !== undefined){ + // This is a builtin layer of which stuff is overridden - skip + continue; + } try { const parsed = new LayerConfig(layer, "shared_layer_in_theme") sharedLayers.set(layer.id, parsed); diff --git a/Customizations/JSON/TagRenderingConfig.ts b/Customizations/JSON/TagRenderingConfig.ts index d5d237a145..157bc2d1bf 100644 --- a/Customizations/JSON/TagRenderingConfig.ts +++ b/Customizations/JSON/TagRenderingConfig.ts @@ -104,6 +104,15 @@ export default class TagRenderingConfig { if (mapping.ifnot !== undefined && !this.multiAnswer) { throw `${context}.mapping[${i}]: Invalid mapping: ifnot defined, but the tagrendering is not a multianswer` } + + if(mapping.if === undefined){ + throw `${context}.mapping[${i}]: Invalid mapping: "if" is not defined, but the tagrendering is not a multianswer` + } + if(typeof mapping.if !== "string" && mapping.if["length"] !== undefined){ + throw `${context}.mapping[${i}]: Invalid mapping: "if" is defined as an array. Use {"and": } or {"or": } instead` + } + + let hideInAnswer: boolean | TagsFilter = false; if (typeof mapping.hideInAnswer === "boolean") { hideInAnswer = mapping.hideInAnswer;