forked from MapComplete/MapComplete
Themes(school): add invalidValues for conflicting uniform values
This commit is contained in:
parent
a42e1f8161
commit
31312c2dc6
4 changed files with 17 additions and 3 deletions
assets/layers/school
src
Models/ThemeConfig
UI/BigComponents
|
@ -839,6 +839,16 @@
|
|||
"freeform": {
|
||||
"key": "dress_code"
|
||||
},
|
||||
"invalidValues": {
|
||||
"or": [
|
||||
{
|
||||
"and": [
|
||||
"dress_code~(^|.*;)uniform(.*|$)",
|
||||
"dress_code~(^|.*;)(casual|obligated_colour)(.*|$)"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"mappings": [
|
||||
{
|
||||
"if": "dress_code=uniform",
|
||||
|
|
|
@ -268,7 +268,7 @@ export interface QuestionableTagRenderingConfigJson extends TagRenderingConfigJs
|
|||
*/
|
||||
default?: string
|
||||
/**
|
||||
* question: What values of the freeform key should be interpreted as 'unknown'?
|
||||
* question: What tag combintations key should be interpreted as 'unknown'?
|
||||
* For example, if a feature has `shop=yes`, the question 'what type of shop is this?' should still asked
|
||||
* ifunset: The question will be considered answered if any value is set for the key
|
||||
* group: expert
|
||||
|
|
|
@ -812,6 +812,10 @@ export default class TagRenderingConfig {
|
|||
if (and.and.length === 0) {
|
||||
return undefined
|
||||
}
|
||||
console.log(">>> New properties", TagUtils.asProperties(and, currentProperties), this.invalidValues)
|
||||
if (this.invalidValues?.matchesProperties(TagUtils.asProperties(and, currentProperties))) {
|
||||
return undefined
|
||||
}
|
||||
return and
|
||||
}
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
import { MinimalThemeInformation } from "../../Models/ThemeConfig/ThemeConfig"
|
||||
import Translations from "../i18n/Translations"
|
||||
import Tr from "../Base/Tr.svelte"
|
||||
import { twMerge } from "tailwind-merge"
|
||||
import { Utils } from "../../Utils"
|
||||
|
||||
export let search: UIEventSource<string> = new UIEventSource<string>(undefined)
|
||||
export let themes: MinimalThemeInformation[]
|
||||
|
@ -20,7 +20,7 @@
|
|||
<slot name="title" />
|
||||
<div
|
||||
class={onlyIcons ? "flex gap-x-2 flex-wrap items-center justify-center" : ("theme-list my-2 gap-4 md:grid md:grid-flow-row md:grid-cols-2 lg:grid-cols-3")}>
|
||||
{#each themes as theme (theme.id)}
|
||||
{#each Utils.NoNull(themes) as theme (theme.id)}
|
||||
<ThemeButton {theme} {state} iconOnly={onlyIcons}>
|
||||
{#if $search && hasSelection && themes?.[0] === theme}
|
||||
<span class="thanks hidden-on-mobile" aria-hidden="true">
|
||||
|
|
Loading…
Add table
Reference in a new issue