diff --git a/Logic/State/LayerState.ts b/Logic/State/LayerState.ts index ec5c65d3f..4a13e3c93 100644 --- a/Logic/State/LayerState.ts +++ b/Logic/State/LayerState.ts @@ -65,13 +65,18 @@ export default class LayerState { return } const t = Translations.t.general.levelSelection + const conditionsOrred = [ + new Tag("level", "" + level), + new RegexTag("level", new RegExp("(.*;)?" + level + "(;.*)?")), + ] + if(level === "0") { + conditionsOrred.push(new Tag("level", "")) // No level tag is the same as level '0' + } + console.log("Setting levels filter to", conditionsOrred) this.globalFilters.data.push({ id: "level", state: level, - osmTags: new Or([ - new Tag("level", "" + level), - new RegexTag("level", new RegExp("(.*;)?" + level + "(;.*)?")), - ]), + osmTags: new Or(conditionsOrred), onNewPoint: { tags: [new Tag("level", level)], icon: "./assets/svg/elevator.svg", diff --git a/Models/ThemeViewState.ts b/Models/ThemeViewState.ts index f44ba4976..7cf50c4e9 100644 --- a/Models/ThemeViewState.ts +++ b/Models/ThemeViewState.ts @@ -270,6 +270,8 @@ export default class ThemeViewState implements SpecialVisualizationState { for (const l of levels) { floors.add(l) } + }else{ + floors.add("0") // '0' is the default and is thus _always_ present } } const sorted = Array.from(floors)