@oiz/stzh-components 4.2.0 → 4.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-e7dbab22.js → app-globals-6d913c28.js} +2 -2
- package/dist/cjs/{app-globals-e7dbab22.js.map → app-globals-6d913c28.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/stzh-components.cjs.js +2 -2
- package/dist/cjs/stzh-search.cjs.entry.js +11 -11
- package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-vbz-connection-finder.cjs.entry.js +8 -1
- package/dist/cjs/stzh-vbz-connection-finder.cjs.entry.js.map +1 -1
- package/dist/collection/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js +26 -1
- package/dist/collection/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js.map +1 -1
- package/dist/collection/components/CMS/stzh-search/stzh-search.js +11 -11
- package/dist/collection/components/CMS/stzh-search/stzh-search.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/stzh-search.js +11 -11
- package/dist/components/stzh-search.js.map +1 -1
- package/dist/components/stzh-vbz-connection-finder.js +10 -2
- package/dist/components/stzh-vbz-connection-finder.js.map +1 -1
- package/dist/esm/{app-globals-13c5224e.js → app-globals-7e0384ce.js} +2 -2
- package/dist/esm/{app-globals-13c5224e.js.map → app-globals-7e0384ce.js.map} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/stzh-components.js +2 -2
- package/dist/esm/stzh-search.entry.js +11 -11
- package/dist/esm/stzh-search.entry.js.map +1 -1
- package/dist/esm/stzh-vbz-connection-finder.entry.js +8 -1
- package/dist/esm/stzh-vbz-connection-finder.entry.js.map +1 -1
- package/dist/stzh-components/{p-d3828ce3.entry.js → p-85d1e156.entry.js} +2 -2
- package/dist/stzh-components/p-85d1e156.entry.js.map +1 -0
- package/dist/stzh-components/{p-8493a7ab.entry.js → p-a250a770.entry.js} +2 -2
- package/dist/stzh-components/p-a250a770.entry.js.map +1 -0
- package/dist/stzh-components/{p-df044388.js → p-d86ada10.js} +2 -2
- package/dist/stzh-components/stzh-components.esm.js +1 -1
- package/dist/stzh-components/stzh-components.esm.js.map +1 -1
- package/dist/types/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.d.ts +3 -0
- package/dist/types/components.d.ts +8 -0
- package/dist/vscode-data.json +12 -0
- package/package.json +1 -1
- package/dist/stzh-components/p-8493a7ab.entry.js.map +0 -1
- package/dist/stzh-components/p-d3828ce3.entry.js.map +0 -1
- /package/dist/stzh-components/{p-df044388.js.map → p-d86ada10.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"stzh-search.entry.cjs.js","mappings":"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","names":["axios","debounce","media","raf","addMediaChangeListener","removeMediaChangeListener","h","hasSlot","Host","Fragment"],"sources":["src/components/CMS/stzh-search/stzh-search.scss?tag=stzh-search","src/components/CMS/stzh-search/stzh-search.tsx"],"sourcesContent":["stzh-search {\n @include host;\n\n --filter-background-color: var(--stzh-search-filter-background-color, #{$colorGrey10});\n\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \". . results results results results results results results results . .\";\n }\n\n &:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=\"false\"]))) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside results results results results results results results results\";\n }\n }\n\n &:where([variant=\"teaser\"]:not([has-aside-filters])),\n &:where([fullwidth=\"true\"]:not([has-aside-filters])) {\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results results results results results\";\n }\n }\n}\n\n.stzh-search {\n @include grid;\n grid-template-areas: var(--grid-template-areas);\n\n &__header-heading {\n @include spaceCurve('margin-bottom', 'small');\n }\n\n &__filters-main {\n grid-area: filters-main;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n }\n }\n\n &__filters-aside {\n grid-area: filters-aside;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n\n @include mq($from: large) {\n background-color: transparent;\n padding: 0;\n }\n }\n }\n\n &__filters-aside-heading {\n @include font('heavy');\n @include fontCurve('h4');\n @include spaceCurve('padding-bottom', 'tiny');\n color: $colorPrimary70;\n display: none;\n\n @include mq($from: large) {\n display: block;\n }\n }\n\n stzh-button#{&}__filters-aside-details-trigger {\n @include mq($from: large) {\n display: none;\n }\n }\n\n &__filters-aside-inner {\n @include mq($from: large) {\n position: sticky;\n top: calc(var(--stzh-header-metabar-height, 0px) * var(--stzh-header-is-stuck, 0) + #{space('medium')});\n transition: top $baseTransitionAnimationSpeed;\n width: calc(100% + #{$gridGutterLarge} - #{spaceCurveValue('large', 'large')});\n }\n\n @include mq($from: ultra) {\n width: calc(100% + #{$gridGutterUltra} - #{spaceCurveValue('large', 'large')});\n }\n }\n\n &__results-wrapper {\n grid-area: results;\n display: grid;\n --stzh-datalist-grid-template-areas: \"list list list list list list list list\";\n }\n\n &__results-header {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n flex-direction: row;\n align-items: center;\n }\n }\n\n &__results-sort {\n display: flex;\n }\n\n &__results-heading,\n &__results-empty,\n &__results,\n &__action-more {\n transition-property: opacity;\n transition-duration: $baseTransitionAnimationSpeed;\n }\n\n &__results-text,\n &__results-sort,\n &__results-subscribe {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__results-heading {\n @include spaceCurve('margin-bottom', 'small');\n\n @include mq($from: medium) {\n @include spaceCurve('margin-bottom', 'regular');\n }\n }\n\n &__results-item {\n display: contents;\n }\n\n &__actions-wrapper {\n display: flex;\n justify-content: center;\n\n &:not(:empty) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &__empty-text {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__loader {\n @include spaceCurve('margin-top', 'medium');\n }\n\n &__filters-main-chips {\n @include spaceCurve('margin-top', 'medium');\n }\n\n /* Teaser variant */\n\n &--teaser &__actions-wrapper {\n justify-content: flex-start;\n }\n\n //&--teaser &__filters-main {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n //\n //&--teaser &__filters-aside {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n\n /* Has results shown or aside filter */\n\n &--has-results-shown &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'huge');\n }\n }\n\n &--has-results-shown &__filters-main,\n &--has-filters-aside &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'large');\n }\n }\n\n &--has-results-shown#{&}--teaser &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &--has-results-shown#{&}--teaser &__filters-main,\n &--has-filters-aside#{&}--teaser &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'medium');\n }\n }\n\n /* Has main and aside filters */\n\n &--has-filters-main#{&}--has-filters-aside &__filters-main {\n &:not(:empty) {\n @include spaceCurve('padding-bottom', 'regular');\n }\n }\n\n &--has-filters-main#{&}--has-filters-aside &__filters-aside {\n &:not(:empty) {\n padding-top: 0px;\n }\n }\n\n /* Has hidden main/aside filters */\n\n &--has-hidden-main-filters &__filters-main {\n display: none;\n }\n\n &--has-hidden-aside-filters &__filters-aside {\n display: none;\n }\n\n &--has-hidden-main-filters &__results-wrapper,\n &--has-hidden-main-filters#{&}--teaser &__results-wrapper {\n margin-top: 0px;\n }\n\n /* Is loading */\n\n &--is-loading &__results-heading,\n &--is-loading &__results-sort,\n &--is-loading &__results-empty,\n &--is-loading &__results,\n &--is-loading &__action-more {\n opacity: 0.5;\n }\n\n /* Is overlay */\n\n &--is-breakout {\n --filter-background-color: var(--stzh-color-cobaltblue20);\n background-color: var(--stzh-color-white);\n }\n\n &--is-breakout & {\n @include containerPadding();\n }\n\n &--is-breakout &__header-wrapper {\n background-color: var(--stzh-color-cobaltblue20);\n }\n\n &--is-breakout &__filters-main {\n @include containerPadding();\n position: relative;\n left: 50%;\n right: 50%;\n margin-left: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n margin-right: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n width: calc(100vw - var(--stzh-scrollbar-width));\n max-width: calc(100vw - var(--stzh-scrollbar-width));\n }\n\n &--is-breakout &__header {\n @include container();\n @include spaceCurve('padding-top', 'medium');\n background-color: var(--stzh-color-cobaltblue20);\n display: flex;\n justify-content: space-between;\n }\n}\n","import { Component, Element, Event, EventEmitter, Fragment, h, Host, Prop, State, Watch } from \"@stencil/core\";\n\nimport {\n StzhDropdownChangeEvent,\n StzhDropdownOption,\n StzhSearchChipsResult,\n StzhSearchOverlayCloseClickEvent,\n StzhSearchResult,\n} from \"../../../index\";\n\nimport axios from \"axios\";\nimport { hasSlot, raf } from \"../../../utils/utils\";\n\nimport { StzhSearchLocalizedText } from \"./stzh-search.localization\";\n\nimport { addMediaChangeListener, media, removeMediaChangeListener } from \"../../../utils/media-utils\";\n\nimport debounce from \"lodash/debounce\";\n\nfunction defaultTemplateResult(search: HTMLStzhSearchElement, item: StzhSearchResult): string {\n return `\n <stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}\n href=\"{href}\"\n dateline=\"{dateline}\"\n tag=\"{tag}\"\n topic=\"{topic}\"\n service=\"{service}\"\n event-location=\"{eventLocation}\"\n hyphens-enabled=\"${this.hyphensEnabled}\"\n ${item.eventDateStart && \"event-date-start=\\\"{eventDateStart}\\\"\"}\n ${item.eventDateEnd && \"event-date-end=\\\"{eventDateEnd}\\\"\"}\n download-heading=\"{downloadHeading}\"\n meta=\"{meta}\"\n breadcrumb-items=\"{breadcrumbItems}\"\n download-meta=\"{downloadMeta}\"\n datalist-items=\"{datalistItems}\"\n ${item.imagePosition && \"image-position=\\\"{imagePosition}\\\"\"}\n ${item.download && \"download=\\\"{download}\\\"\"}\n style=\"\n ${item.serviceBackgroundColor ? \"--service-background-color: {serviceBackgroundColor};\" : \"\"}\n ${item.serviceColor ? \"--service-color: {serviceColor};\" : \"\"}\n \"\n >\n <div slot=\"heading\">{heading}</div>\n <div slot=\"description\">{description}</div>\n ${\n item.image\n ? item.imagePosition === \"right\"\n ? `<img src=\"${item.image}\" slot=\"image\" />`\n : `<stzh-ratio ${\n search.variant === \"teaser\" ? \"ratio=\\\"2:1\\\"\" : \"ratio=\\\"21:9\\\" ratio-small=\\\"1:1\\\"\"\n } slot=\"image\"><img src=\"${item.image}\" /></stzh-ratio>`\n : \"\"\n }\n </stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}>\n `;\n}\n\nfunction defaultResultWrapperProps(search: HTMLStzhSearchElement) {\n return {\n layout: search.variant === \"teaser\" ? \"teasers\" : \"searchresults\",\n } as HTMLStzhCardlistElement;\n}\n\n/**\n * @slot - Slot for any content\n * @slot filters-main - Slot for main filters\n * @slot filters-aside - Slot for aside filters\n */\n@Component({\n tag: \"stzh-search\",\n styleUrl: \"stzh-search.scss\",\n})\nexport class StzhSearch {\n /** Translation strings */\n @Prop() localization: StzhSearchLocalizedText;\n\n /** Variant */\n @Prop() variant: \"default\" | \"teaser\" = \"default\";\n\n /** Whether search results should be automatically fetched when a main filters has changed. */\n @Prop() autofetchMainFilters: boolean = false;\n\n /** Whether search results should be automatically fetched when a aside filters has changed. */\n @Prop() autofetchAsideFilters: boolean = false;\n\n /** Whether to hide the main filters slot */\n @Prop({ reflect: true }) hideMainFilters: boolean = false;\n\n /** Whether to hide the aside filters slot */\n @Prop({ reflect: true }) hideAsideFilters: boolean = false;\n\n /** Whether to hide the results heading */\n @Prop({ reflect: true }) hideResultsHeading: boolean = false;\n\n /** Sort by initial value */\n @Prop({ mutable: true }) sortBy: string;\n private _sortBy: string;\n\n /** Sort options */\n @Prop({ mutable: true }) sortOptions: StzhDropdownOption[] | string = [];\n private _sortOptions: StzhDropdownOption[] = [];\n\n /** API URL */\n @Prop() api: string = \"\";\n\n /** Debounce time in ms */\n @Prop() debounceTime: number = 500;\n\n /** Numbers of results shown with each load more action */\n @Prop() limit: number = 6;\n\n /** Whether search request should be fetched initially with set filters */\n @Prop() initialFetch: boolean = false;\n\n /** Whether url query should be updated when filter has changed */\n @Prop() preventUpdateUrl: boolean = false;\n\n /** Automatic Hyphens */\n @Prop({ reflect: true }) hyphensEnabled: boolean = false;\n\n /** Will be overwritten by api result (`templates.result` or `results[x].html`) */\n @Prop() templateResult: string | ((search: HTMLStzhSearchElement, item: StzhSearchResult) => string) =\n defaultTemplateResult;\n\n /** Element used for list wrapper element */\n @Prop() templateResultWrapperElement: string | ((search: HTMLStzhSearchElement) => string) = function() {\n return \"stzh-cardlist\";\n };\n\n /** Properties applied to list wrapper element */\n @Prop() templateResultWrapperProps:\n | { [key: string]: any }\n | ((search: HTMLStzhSearchElement) => { [key: string]: any }) = defaultResultWrapperProps;\n\n /** Heading level of results heading */\n @Prop() resultHeadingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /** Empty text */\n @Prop() emptyText: string;\n\n /** Empty text */\n @Prop() heading: string;\n\n /** Empty link href */\n @Prop() emptyLinkHref: string;\n\n /** Empty link label */\n @Prop() emptyLinkLabel: string;\n\n /** Label for the subscribe button */\n @Prop() subscribeLabel: string = \"Subscribe\";\n\n /** Path which is used as a base for the subscribe button. If not provided, the button won't be rendered. */\n @Prop() subscribePath: string;\n\n /** Query parameters which are being added to the subscribe button path, in addition to the form values. */\n @Prop() subscribeAdditionalQueryParameters: { [key: string]: string }[] | string;\n\n @Element() element: HTMLStzhSearchElement;\n\n @Watch(\"totalCount\")\n @Watch(\"results\")\n totalCountWatcher() {\n this._showMoreLink = this.totalCount > this.results.length;\n }\n\n @Watch(\"preventUpdateUrl\")\n preventUpdateUrlWatcher() {\n this.updateParams();\n }\n\n @Watch(\"sortOptions\")\n sortOptionsWatcher(newValue: StzhDropdownOption[] | string) {\n if (typeof newValue === \"string\") {\n this._sortOptions = JSON.parse(newValue);\n } else {\n this._sortOptions = newValue;\n }\n }\n\n @Watch(\"sortBy\")\n sortByWatcher(newValue: string | undefined) {\n if (typeof newValue === \"string\") {\n this._sortBy = newValue;\n } else {\n this._sortBy = undefined;\n }\n }\n\n @State() totalCount: number = 0;\n private _showMoreLink: boolean = false;\n\n @State() loading: boolean = false;\n @State() error: string = \"\";\n\n @State() results: StzhSearchResult[] = [];\n @State() chipResultsHeading: string;\n @State() chipResults: StzhSearchChipsResult[] = [];\n @State() resultsHeading: string;\n @State() resultsText: string;\n @State() hasRequiredParams: boolean = false;\n @State() firstFetched: boolean = false;\n @State() initiallyFetched: boolean = false;\n @State() isDetailsOpen: boolean = false;\n @State() isStzhAnchornavVisible: boolean = false;\n\n /** Search overlay close click event */\n @Event() stzhOverlayCloseClick: EventEmitter<StzhSearchOverlayCloseClickEvent>;\n\n private currentController: AbortController;\n private params: URLSearchParams;\n private formElement: HTMLFormElement;\n\n private renderResultTemplate(html: string, item: StzhSearchResult) {\n let template =\n html ||\n (typeof this.templateResult === \"function\" ? this.templateResult(this.element, item) : this.templateResult);\n\n [\n \"href\",\n \"heading\",\n \"name\",\n \"additionalInformation\",\n \"numbers\",\n \"dateline\",\n \"description\",\n \"image\",\n \"imagePosition\",\n \"tag\",\n \"topic\",\n \"service\",\n \"serviceColor\",\n \"serviceBackgroundColor\",\n \"meta\",\n \"breadcrumbItems\",\n \"eventLocation\",\n \"eventDateStart\",\n \"eventDateEnd\",\n \"download\",\n \"downloadHeading\",\n \"downloadMeta\",\n \"datalistItems\",\n ].forEach(property => {\n const regex = new RegExp(`\\{${property}\\}`, \"gi\");\n let value = item[property] || \"\";\n\n if ([\n \"meta\",\n \"breadcrumbItems\",\n \"downloadMeta\",\n \"datalistItems\",\n \"numbers\",\n ].includes(property) && value) {\n value = JSON.stringify(value);\n }\n\n template = template.replace(regex, value);\n });\n\n return template;\n }\n\n private async updateParams(initial: boolean = false) {\n const updateByFormElements = () => {\n const formData = new FormData(this.formElement);\n // @ts-ignore\n this.params = new URLSearchParams(formData);\n this.params.set(\"variant\", this.variant);\n };\n\n if (initial) {\n const initialParams = new URLSearchParams(location.search);\n let search = initialParams.get(\"search\");\n const q = initialParams.get(\"q\");\n const query = initialParams.get(\"query\");\n if (!search) {\n if (query) {\n search = `query=${query}`;\n } else if (q) {\n search = `q=${q}`;\n }\n }\n\n if (search) {\n this.initialFetch = true;\n const currentSearchParams = new URLSearchParams(search);\n\n [...new Set(currentSearchParams.keys())].forEach(key => {\n const values = currentSearchParams.getAll(key);\n\n // value as string/number: input, ... / pagination\n const valueInputs = Array.from(\n document.querySelectorAll(\n `:where(stzh-input,stzh-radiogroup,stzh-chipselect,stzh-amount,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[name=\"${key}\"]`,\n ),\n ) as\n | HTMLStzhInputElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhAmountElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhMonthyearpickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n // value as array: checkboxgroup\n const valueArrayInputs = Array.from(\n document.querySelectorAll(`:where(stzh-checkboxgroup)[name=\"${key}\"]`),\n ) as HTMLStzhCheckboxgroupElement[];\n\n // items as array: dropdown\n const itemsArrayInputs = Array.from(document.querySelectorAll(`:where(stzh-dropdown)[name=\"${key}\"]`)) as\n | HTMLStzhDropdownElement[];\n\n valueInputs.forEach(\n (\n input:\n | HTMLStzhInputElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhChipselectElement\n | HTMLStzhAmountElement\n | HTMLStzhDatepickerElement\n | HTMLStzhMonthyearpickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement,\n ) => {\n input.value = values[0];\n },\n );\n\n valueArrayInputs.forEach((input: HTMLStzhCheckboxgroupElement) => {\n input.value = values;\n });\n\n itemsArrayInputs.forEach((input: HTMLStzhDropdownElement) => {\n input.items = values;\n });\n });\n }\n }\n\n await raf();\n updateByFormElements();\n\n let hasRequiredParams = true;\n\n const requiredInputFields = Array.from(this.element.querySelectorAll(\":where(stzh-input)[required]\")) as\n | HTMLStzhInputElement[];\n\n const requiredDropdownFields = Array.from(this.element.querySelectorAll(\":where(stzh-dropdown)[required]\")) as\n | HTMLStzhDropdownElement[];\n\n const requiredMonthyearpickers = Array.from(\n this.element.querySelectorAll(\":where(stzh-monthyearpicker)[required]\"),\n ) as HTMLStzhMonthyearpickerElement[];\n\n const requiredFields = Array.from(\n this.element.querySelectorAll(\n \":where(stzh-amount,stzh-radiogroup,stzh-chipselect,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[required]\",\n ),\n ) as\n | HTMLStzhAmountElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n const requiredCheckboxFields = Array.from(this.element.querySelectorAll(\":where(stzh-checkbox)[required]\")) as\n | HTMLStzhCheckboxElement[];\n\n requiredCheckboxFields.forEach((field: HTMLStzhCheckboxElement) => {\n const invalid = !field.checked;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredInputFields.forEach((field: HTMLStzhInputElement) => {\n const invalid =\n field.value === \"\" ||\n (field.minlength && field.minlength > field.value.length) ||\n (field.maxlength && field.maxlength < field.value.length);\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredDropdownFields.forEach((field: HTMLStzhDropdownElement) => {\n const invalid = field.items.length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredFields.forEach(\n (\n field:\n | HTMLStzhAmountElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhCheckboxElement\n | HTMLStzhChipselectElement\n | HTMLStzhDatepickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement,\n ) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n },\n );\n\n requiredMonthyearpickers.forEach((field: HTMLStzhMonthyearpickerElement) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalidYear = invalid;\n field.invalidMonth = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n this.hasRequiredParams = hasRequiredParams;\n }\n\n private fetch = async (append: boolean = false, initial: boolean = false) => {\n this.loading = true;\n this.error = \"\";\n\n if (this.currentController) {\n this.currentController.abort();\n }\n\n if (!this.hasRequiredParams && !append) {\n this.loading = false;\n return;\n }\n\n let apiUrl = this.api.replace(/\\{lang\\}/gi, this.localization.$locale);\n let limit = this.limit.toString();\n\n this.params.set(\"offset\", append ? this.results.length.toString() : \"0\");\n\n if (initial) {\n const search = new URLSearchParams(location.search).get(\"search\");\n\n if (search) {\n const urlLimit = new URLSearchParams(search).get(\"limit\");\n\n if (urlLimit) {\n limit = urlLimit;\n }\n }\n }\n\n this.params.set(\"limit\", limit);\n\n this.currentController = new AbortController();\n\n let data: {\n error?: boolean;\n message?: string;\n templates?: {\n result: string;\n };\n meta?: {\n total: number;\n };\n resultsHeading?: string;\n resultsText?: string;\n results?: StzhSearchResult[];\n chipResultsHeading?: string;\n chipResults?: StzhSearchChipsResult[];\n } = {};\n\n try {\n // load data from API\n const response = await axios(apiUrl, {\n params: this.params,\n signal: this.currentController.signal,\n });\n\n data = response.data;\n } catch (error) {\n this.error = this.localization.error;\n }\n\n this.resultsHeading = data.resultsHeading || \"\";\n this.resultsText = data.resultsText || \"\";\n this.totalCount = data.meta?.total || 0;\n\n if (data.error) {\n this.error = data.message || this.localization.error;\n }\n\n if (data.chipResults && data.chipResults.length) {\n this.chipResultsHeading = data.chipResultsHeading ?? \"\";\n this.chipResults = data.chipResults;\n } else {\n this.chipResultsHeading = \"\";\n this.chipResults = [];\n }\n\n if (data.results) {\n if (append) {\n this.results = [\n ...this.results,\n ...data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n })),\n ];\n } else {\n this.results = data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n }));\n }\n }\n\n if (!initial && !this.preventUpdateUrl) {\n const newUrlParams = new URLSearchParams(location.search);\n const searchParams = new URLSearchParams(this.params);\n\n searchParams.delete(\"offset\");\n searchParams.set(\"limit\", this.results.length.toString());\n newUrlParams.set(\"search\", searchParams.toString());\n\n window.history.replaceState(null, \"\", `${location.pathname}?${newUrlParams}`);\n }\n\n if (initial || !this.firstFetched) {\n this.loading = false;\n } else {\n // to be able to see loading effect we delay turning off loading state\n window.setTimeout(() => {\n this.loading = false;\n }, this.debounceTime);\n }\n\n this.firstFetched = true;\n };\n\n private debouncedFetch = debounce(this.fetch, this.debounceTime);\n\n private onDropdownSortChange = async (event: CustomEvent<StzhDropdownChangeEvent>) => {\n const target: HTMLStzhDropdownElement = event.target as HTMLStzhDropdownElement;\n const sortBy = (await target.getValue()) as string;\n if (sortBy) {\n this._sortBy = sortBy;\n }\n await this.updateParams();\n this.debouncedFetch();\n };\n\n private handleMainFilterChange = async () => {\n if (this.autofetchMainFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleAsideFilterChange = async () => {\n if (this.autofetchAsideFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n\n await this.updateParams();\n this.fetch();\n };\n\n private handleMoreClick = () => {\n this.fetch(true);\n };\n\n private handleMediaChange = () => {\n this.isDetailsOpen = media(\"large\").matches;\n };\n\n private handleFormReset = async () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(async () => {\n await this.updateParams();\n });\n });\n };\n\n async componentDidLoad() {\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n\n // update params initially to get hidden filters\n // and set initialFetch to true if search params exist\n await this.updateParams(true);\n\n if (this.initialFetch) {\n await this.fetch(false, true);\n this.initiallyFetched = true;\n } else {\n this.initiallyFetched = true;\n }\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"search\");\n }\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n this.sortOptionsWatcher(this.sortOptions);\n this.sortByWatcher(this.sortBy);\n }\n\n connectedCallback() {\n addMediaChangeListener(this.handleMediaChange);\n this.handleMediaChange();\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.handleMediaChange);\n }\n\n private renderResultsText(): DocumentFragment {\n return <stzh-text class=\"stzh-search__results-text\" color=\"primary\" innerHTML={this.resultsText}></stzh-text>;\n }\n\n private renderSubscribeButton(): DocumentFragment {\n const params = new URLSearchParams();\n let subscribeAdditionalQueryParameters = this.subscribeAdditionalQueryParameters;\n if (typeof this.subscribeAdditionalQueryParameters === \"string\") {\n try {\n subscribeAdditionalQueryParameters = JSON.parse(this.subscribeAdditionalQueryParameters);\n } catch (noJson) {}\n }\n for (const entry of subscribeAdditionalQueryParameters) {\n for (const [key, value] of Object.entries(entry)) {\n if (value) {\n params.set(key, value);\n }\n }\n }\n const currentQueryParameters = new URLSearchParams(window.location.search);\n const search = currentQueryParameters.get(\"search\");\n if (search) {\n const currentSearchParams = new URLSearchParams(search);\n for (const [key, value] of currentSearchParams.entries()) {\n if ([\n \"variant\",\n \"limit\",\n ].indexOf(key) === -1 && value) {\n params.append(key, value);\n }\n }\n }\n const href = `${this.subscribePath}?${params.toString()}`;\n return (\n <div class=\"stzh-search__results-subscribe\">\n <stzh-button variant=\"secondary\" size=\"small\" href={href}>\n {this.subscribeLabel}\n </stzh-button>\n </div>\n );\n }\n\n render() {\n const filtersMainUsed = hasSlot(this.element, \"filters-main\");\n const filtersAsideUsed = hasSlot(this.element, \"filters-aside\");\n let chipsProvided = true;\n if (filtersMainUsed) {\n const providedChipselect = this.element.querySelector(\"[slot='filters-main'] stzh-chipselect\");\n const providedChipgroup = this.element.querySelector(\"[slot='filters-main'] stzh-chipgroup\");\n if (!providedChipselect && !providedChipgroup) {\n chipsProvided = false;\n }\n } else {\n chipsProvided = false;\n }\n\n const resultsShown = (this.hasRequiredParams || this.firstFetched) && this.firstFetched && this.initiallyFetched;\n\n const classes = {\n \"stzh-search\": true,\n \"stzh-search--has-filters-main\": filtersMainUsed,\n \"stzh-search--has-filters-aside\": filtersAsideUsed,\n \"stzh-search--has-hidden-main-filters\": this.hideMainFilters,\n \"stzh-search--has-hidden-aside-filters\": this.hideAsideFilters,\n \"stzh-search--has-results-shown\": resultsShown,\n \"stzh-search--has-error-shown\": !!this.error,\n \"stzh-search--is-loading\": this.loading,\n [`stzh-search--${this.variant}`]: !!this.variant,\n };\n\n const WrapperElement =\n typeof this.templateResultWrapperElement === \"function\"\n ? this.templateResultWrapperElement(this.element)\n : this.templateResultWrapperElement;\n\n const wrapperProps =\n typeof this.templateResultWrapperProps === \"function\"\n ? this.templateResultWrapperProps(this.element)\n : this.templateResultWrapperProps;\n\n return (\n <Host has-aside-filters={filtersAsideUsed} fullwidth={this.isStzhAnchornavVisible.toString()}>\n <form\n ref={el => (this.formElement = el as HTMLFormElement)}\n novalidate\n class={classes}\n onSubmit={this.handleFormSubmit}\n onReset={this.handleFormReset}\n >\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-main\" onStzhChange={this.handleMainFilterChange}>\n {!!this.heading && (\n <stzh-heading class=\"stzh-search__header-heading\" curve=\"h2\">\n {this.heading}\n </stzh-heading>\n )}\n <slot name=\"filters-main\"></slot>\n {!chipsProvided && this.chipResults.length > 0 && (\n <div class=\"stzh-search__filters-main-chips\">\n {this.chipResultsHeading && (\n <stzh-text font=\"heavy\" size=\"milli\" color=\"primary\">\n {this.chipResultsHeading}\n </stzh-text>\n )}\n {this.chipResults[0].options ? (\n <stzh-chipgroup>\n {this.chipResults.map(chipResult => (\n <stzh-dropdown\n label={chipResult.label}\n name={chipResult.value}\n variant=\"filter\"\n size=\"large\"\n no-search={true}\n hide-optional={true}\n inline={true}\n options={chipResult.options}\n ></stzh-dropdown>\n ))}\n </stzh-chipgroup>\n ) : (\n <stzh-chipselect\n multiple={true}\n name=\"subject\"\n label={this.chipResultsHeading}\n label-hidden={true}\n data={this.chipResults.map(chipResult => ({\n label: chipResult.label,\n value: chipResult.value,\n counter: `${chipResult.amount}`,\n variant: \"filter\",\n size: \"large\",\n }))}\n ></stzh-chipselect>\n )}\n </div>\n )}\n </div>\n\n {filtersAsideUsed && (\n <Fragment>\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-aside\" onStzhChange={this.handleAsideFilterChange}>\n <div class=\"stzh-search__filters-aside-inner\">\n <div class=\"stzh-search__filters-aside-heading\">{this.localization.moreFilter}</div>\n <stzh-details open={this.isDetailsOpen} class=\"stzh-search__filters-aside-details\">\n <stzh-button\n class=\"stzh-search__filters-aside-details-trigger\"\n variant=\"tertiary-plain\"\n size=\"small\"\n noPaddingLeft={true}\n showToggleIcon={true}\n iconPosition=\"right\"\n label={this.localization.moreFilter}\n ></stzh-button>\n <div slot=\"content\">\n <slot name=\"filters-aside\"></slot>\n </div>\n </stzh-details>\n </div>\n </div>\n </Fragment>\n )}\n\n <div class=\"stzh-search__results-wrapper\">\n {resultsShown && (\n <Fragment>\n {this.results.length === 0 ? (\n <Fragment>\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n innerHTML={this.resultsHeading}\n ></stzh-heading>\n )}\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n {this.emptyText && (\n <stzh-text class=\"stzh-search__empty-text\" innerHTML={this.emptyText}></stzh-text>\n )}\n\n {this.emptyLinkLabel && this.emptyLinkHref && (\n <div class=\"stzh-search__empty-link-wrapper\">\n <stzh-link href={this.emptyLinkHref} label={this.emptyLinkLabel}></stzh-link>\n </div>\n )}\n </Fragment>\n ) : (\n <Fragment>\n <div class=\"stzh-search__results-header\">\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n htmlContent={this.resultsHeading}\n ></stzh-heading>\n )}\n {this._sortOptions.length > 0 && (\n <div class=\"stzh-search__results-sort\">\n <stzh-dropdown\n hide-optional\n inline\n no-search\n no-wrap\n class=\"stzh-search__results-sort-dropdown\"\n variant=\"plain\"\n size=\"small\"\n sizeMedium={\"tiny\"}\n name=\"sortby\"\n items={[this._sortBy]}\n options={this._sortOptions}\n onStzhChange={this.onDropdownSortChange}\n ></stzh-dropdown>\n </div>\n )}\n </div>\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n <WrapperElement class=\"stzh-search__results\" max-3-columns={filtersAsideUsed} {...wrapperProps}>\n {this.results.map(result => (\n <div class=\"stzh-search__results-item\" innerHTML={result.html || \"\"}></div>\n ))}\n </WrapperElement>\n\n <div class=\"stzh-search__actions-wrapper\">\n {this._showMoreLink && (\n <stzh-button\n variant=\"secondary\"\n class=\"stzh-search__action-more\"\n label={this.localization.showMore}\n onClick={this.handleMoreClick}\n disabled={this.loading}\n a11yDisabled={this.loading}\n ></stzh-button>\n )}\n </div>\n </Fragment>\n )}\n </Fragment>\n )}\n\n {this.error && (\n <div class=\"stzh-search__error\">\n <stzh-message type=\"error\" label={this.error}></stzh-message>\n </div>\n )}\n\n {this.loading && <stzh-loader class=\"stzh-search__loader\"></stzh-loader>}\n </div>\n\n <slot></slot>\n </form>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
1
|
+
{"file":"stzh-search.entry.cjs.js","mappings":";;;;;;;;;;;;AAAA,MAAM,aAAa,GAAG,w9mBAAw9mB,CAAC;AAC/+mB,yBAAe,aAAa;;ACkB5B,SAAS,qBAAqB,CAAC,MAA6B,EAAE,IAAsB;IAClF,OAAO;iBACQ,MAAM,CAAC,OAAO,KAAK,QAAQ,GAAG,aAAa,GAAG,cAAc;;;;;;;yBAOpD,IAAI,CAAC,cAAc;QACpC,IAAI,CAAC,cAAc,IAAI,qCAAqC;QAC5D,IAAI,CAAC,YAAY,IAAI,iCAAiC;;;;;;QAMtD,IAAI,CAAC,aAAa,IAAI,kCAAkC;QACxD,IAAI,CAAC,QAAQ,IAAI,uBAAuB;;UAEtC,IAAI,CAAC,sBAAsB,GAAG,uDAAuD,GAAG,EAAE;UAC1F,IAAI,CAAC,YAAY,GAAG,kCAAkC,GAAG,EAAE;;;;;QAM7D,IAAI,CAAC,KAAK;UACN,IAAI,CAAC,aAAa,KAAK,OAAO;cAC5B,aAAa,IAAI,CAAC,KAAK,mBAAmB;cAC1C,eACE,MAAM,CAAC,OAAO,KAAK,QAAQ,GAAG,aAAa,GAAG,gCAChD,2BAA2B,IAAI,CAAC,KAAK,mBAAmB;UAC1D,EACN;kBACY,MAAM,CAAC,OAAO,KAAK,QAAQ,GAAG,aAAa,GAAG,cAAc;GAC3E,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA6B;IAC9D,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,OAAO,KAAK,QAAQ,GAAG,SAAS,GAAG,eAAe;KACvC,CAAC;AAC/B,CAAC;MAWY,UAAU;;;;QA4Bb,iBAAY,GAAyB,EAAE,CAAC;QA0FxC,kBAAa,GAAY,KAAK,CAAC;QAuQ/B,UAAK,GAAG,OAAO,SAAkB,KAAK,EAAE,UAAmB,KAAK;;YACtE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAEhB,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC1B,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;aAChC;YAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,MAAM,EAAE;gBACtC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,OAAO;aACR;YAED,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACvE,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAElC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC;YAEzE,IAAI,OAAO,EAAE;gBACX,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAElE,IAAI,MAAM,EAAE;oBACV,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAE1D,IAAI,QAAQ,EAAE;wBACZ,KAAK,GAAG,QAAQ,CAAC;qBAClB;iBACF;aACF;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAEhC,IAAI,CAAC,iBAAiB,GAAG,IAAI,eAAe,EAAE,CAAC;YAE/C,IAAI,IAAI,GAcJ,EAAE,CAAC;YAEP,IAAI;;gBAEF,MAAM,QAAQ,GAAG,MAAMA,WAAK,CAAC,MAAM,EAAE;oBACnC,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM;iBACtC,CAAC,CAAC;gBAEH,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;aACtB;YAAC,OAAO,KAAK,EAAE;gBACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;aACtC;YAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,UAAU,GAAG,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAK,KAAI,CAAC,CAAC;YAExC,IAAI,IAAI,CAAC,KAAK,EAAE;gBACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;aACtD;YAED,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;gBAC/C,IAAI,CAAC,kBAAkB,GAAG,MAAA,IAAI,CAAC,kBAAkB,mCAAI,EAAE,CAAC;gBACxD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;aACrC;iBAAM;gBACL,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;aACvB;YAED,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAI,MAAM,EAAE;oBACV,IAAI,CAAC,OAAO,GAAG;wBACb,GAAG,IAAI,CAAC,OAAO;wBACf,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI;;4BAAI,wCACvB,IAAI,KACP,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,KAAI,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,CAAA,EAAE,IAAI,CAAC,KAC1E;yBAAA,CAAC;qBACJ,CAAC;iBACH;qBAAM;oBACL,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI;;wBAAI,wCACnC,IAAI,KACP,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,KAAI,MAAA,IAAI,CAAC,SAAS,0CAAE,MAAM,CAAA,EAAE,IAAI,CAAC,KAC1E;qBAAA,CAAC,CAAC;iBACL;aACF;YAED,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBACtC,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC1D,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEtD,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC9B,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC1D,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAEpD,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,QAAQ,IAAI,YAAY,EAAE,CAAC,CAAC;aAC/E;YAED,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACjC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;iBAAM;;gBAEL,MAAM,CAAC,UAAU,CAAC;oBAChB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;iBACtB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;aACvB;YAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC1B,CAAC;QAEM,mBAAc,GAAGC,mBAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAEzD,yBAAoB,GAAG,OAAO,KAA2C;YAC/E,MAAM,MAAM,GAA4B,KAAK,CAAC,MAAiC,CAAC;YAChF,MAAM,MAAM,IAAI,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAW,CAAC;YACnD,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;aACvB;YACD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,cAAc,EAAE,CAAC;SACvB,CAAC;QAEM,2BAAsB,GAAG;YAC/B,IAAI,IAAI,CAAC,oBAAoB,EAAE;gBAC7B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,cAAc,EAAE,CAAC;aACvB;SACF,CAAC;QAEM,4BAAuB,GAAG;YAChC,IAAI,IAAI,CAAC,qBAAqB,EAAE;gBAC9B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,cAAc,EAAE,CAAC;aACvB;SACF,CAAC;QAEM,qBAAgB,GAAG,OAAO,KAAY;YAC5C,KAAK,CAAC,cAAc,EAAE,CAAC;YAEvB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;SACd,CAAC;QAEM,oBAAe,GAAG;YACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAClB,CAAC;QAEM,sBAAiB,GAAG;YAC1B,IAAI,CAAC,aAAa,GAAGC,gBAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;SAC7C,CAAC;QAEM,oBAAe,GAAG;YACxB,qBAAqB,CAAC;gBACpB,qBAAqB,CAAC;oBACpB,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;iBAC3B,CAAC,CAAC;aACJ,CAAC,CAAC;SACJ,CAAC;;uBA7hBsC,SAAS;oCAGT,KAAK;qCAGJ,KAAK;+BAGM,KAAK;gCAGJ,KAAK;kCAGH,KAAK;;2BAOU,EAAE;mBAIlD,EAAE;4BAGO,GAAG;qBAGV,CAAC;4BAGO,KAAK;gCAGD,KAAK;8BAGU,KAAK;8BAItD,qBAAqB;4CAGsE;YAC3F,OAAO,eAAe,CAAC;SACxB;0CAKiE,yBAAyB;kCAGvC,GAAG;;;;;8BAetB,WAAW;;;0BAuCd,CAAC;uBAGH,KAAK;qBACR,EAAE;uBAEY,EAAE;;2BAEO,EAAE;;;iCAGZ,KAAK;4BACV,KAAK;gCACD,KAAK;6BACR,KAAK;sCACI,KAAK;;IA1ChD,iBAAiB;QACf,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;KAC5D;IAGD,uBAAuB;QACrB,IAAI,CAAC,YAAY,EAAE,CAAC;KACrB;IAGD,kBAAkB,CAAC,QAAuC;QACxD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;SAC1C;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;SAC9B;KACF;IAGD,aAAa,CAAC,QAA4B;QACxC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;YAChC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;SACzB;aAAM;YACL,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;SAC1B;KACF;IA0BO,oBAAoB,CAAC,IAAY,EAAE,IAAsB;QAC/D,IAAI,QAAQ,GACV,IAAI;aACH,OAAO,IAAI,CAAC,cAAc,KAAK,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QAE9G;YACE,MAAM;YACN,SAAS;YACT,MAAM;YACN,uBAAuB;YACvB,SAAS;YACT,UAAU;YACV,aAAa;YACb,OAAO;YACP,eAAe;YACf,KAAK;YACL,OAAO;YACP,SAAS;YACT,cAAc;YACd,wBAAwB;YACxB,MAAM;YACN,iBAAiB;YACjB,eAAe;YACf,gBAAgB;YAChB,cAAc;YACd,UAAU;YACV,iBAAiB;YACjB,cAAc;YACd,eAAe;SAChB,CAAC,OAAO,CAAC,QAAQ;YAChB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,KAAK,QAAQ,IAAI,EAAE,IAAI,CAAC,CAAC;YAClD,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAEjC,IAAI;gBACF,MAAM;gBACN,iBAAiB;gBACjB,cAAc;gBACd,eAAe;gBACf,SAAS;aACV,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,EAAE;gBAC7B,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;aAC/B;YAED,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;SAC3C,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;KACjB;IAEO,MAAM,YAAY,CAAC,UAAmB,KAAK;QACjD,MAAM,oBAAoB,GAAG;YAC3B,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;;YAEhD,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SAC1C,CAAC;QAEF,IAAI,OAAO,EAAE;YACX,MAAM,aAAa,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3D,IAAI,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACzC,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,EAAE;gBACX,IAAI,KAAK,EAAE;oBACT,MAAM,GAAG,SAAS,KAAK,EAAE,CAAC;iBAC3B;qBAAM,IAAI,CAAC,EAAE;oBACZ,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC;iBACnB;aACF;YAED,IAAI,MAAM,EAAE;gBACV,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM,mBAAmB,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;gBAExD,CAAC,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;oBAClD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;;oBAG/C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAC5B,QAAQ,CAAC,gBAAgB,CACvB,yJAAyJ,GAAG,IAAI,CACjK,CAUwB,CAAC;;oBAG5B,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CACjC,QAAQ,CAAC,gBAAgB,CAAC,oCAAoC,GAAG,IAAI,CAAC,CACrC,CAAC;;oBAGpC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,+BAA+B,GAAG,IAAI,CAAC,CACxE,CAAC;oBAE9B,WAAW,CAAC,OAAO,CACjB,CACE,KASyB;wBAEzB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;qBACzB,CACF,CAAC;oBAEF,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAmC;wBAC3D,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;qBACtB,CAAC,CAAC;oBAEH,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAA8B;wBACtD,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;qBACtB,CAAC,CAAC;iBACJ,CAAC,CAAC;aACJ;SACF;QAED,MAAMC,SAAG,EAAE,CAAC;QACZ,oBAAoB,EAAE,CAAC;QAEvB,IAAI,iBAAiB,GAAG,IAAI,CAAC;QAE7B,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,8BAA8B,CAAC,CAC1E,CAAC;QAE3B,MAAM,sBAAsB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,CAC7E,CAAC;QAE9B,MAAM,wBAAwB,GAAG,KAAK,CAAC,IAAI,CACzC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,wCAAwC,CAAC,CACpC,CAAC;QAEtC,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAC/B,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAC3B,gJAAgJ,CACjJ,CAQwB,CAAC;QAE5B,MAAM,sBAAsB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,iCAAiC,CAAC,CAC7E,CAAC;QAE9B,sBAAsB,CAAC,OAAO,CAAC,CAAC,KAA8B;YAC5D,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;YAE/B,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;aACzB;YAED,IAAI,OAAO,EAAE;gBACX,iBAAiB,GAAG,KAAK,CAAC;aAC3B;SACF,CAAC,CAAC;QAEH,mBAAmB,CAAC,OAAO,CAAC,CAAC,KAA2B;YACtD,MAAM,OAAO,GACX,KAAK,CAAC,KAAK,KAAK,EAAE;iBACjB,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;iBACxD,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAE5D,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;aACzB;YAED,IAAI,OAAO,EAAE;gBACX,iBAAiB,GAAG,KAAK,CAAC;aAC3B;SACF,CAAC,CAAC;QAEH,sBAAsB,CAAC,OAAO,CAAC,CAAC,KAA8B;YAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;YAEzC,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;aACzB;YAED,IAAI,OAAO,EAAE;gBACX,iBAAiB,GAAG,KAAK,CAAC;aAC3B;SACF,CAAC,CAAC;QAEH,cAAc,CAAC,OAAO,CACpB,CACE,KAQyB;YAEzB,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;YAEpD,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;aACzB;YAED,IAAI,OAAO,EAAE;gBACX,iBAAiB,GAAG,KAAK,CAAC;aAC3B;SACF,CACF,CAAC;QAEF,wBAAwB,CAAC,OAAO,CAAC,CAAC,KAAqC;YACrE,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;YAEpD,IAAI,CAAC,OAAO,EAAE;gBACZ,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;gBAC5B,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC;aAC9B;YAED,IAAI,OAAO,EAAE;gBACX,iBAAiB,GAAG,KAAK,CAAC;aAC3B;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;KAC5C;IAyKD,MAAM,gBAAgB;QACpB,IAAI,CAAC,sBAAsB;YACzB,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,KAAK,GAAG,CAAC;;;QAIzF,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAE9B,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC9B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;SAC9B;aAAM;YACL,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;SAC9B;KACF;IAED,MAAM,iBAAiB;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,YAAY,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;SACjG;QACD,IAAI,CAAC,sBAAsB;YACzB,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,KAAK,GAAG,CAAC;QACzF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACjC;IAED,iBAAiB;QACfC,iCAAsB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC/C,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;IAED,oBAAoB;QAClBC,oCAAyB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;KACnD;IAEO,iBAAiB;QACvB,OAAOC,uBAAW,KAAK,EAAC,2BAA2B,EAAC,KAAK,EAAC,SAAS,EAAC,SAAS,EAAE,IAAI,CAAC,WAAW,GAAc,CAAC;KAC/G;IAEO,qBAAqB;QAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,kCAAkC,GAAG,IAAI,CAAC,kCAAkC,CAAC;QACjF,IAAI,OAAO,IAAI,CAAC,kCAAkC,KAAK,QAAQ,EAAE;YAC/D,IAAI;gBACF,kCAAkC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;aAC1F;YAAC,OAAO,MAAM,EAAE,GAAE;SACpB;QACD,KAAK,MAAM,KAAK,IAAI,kCAAkC,EAAE;YACtD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBAChD,IAAI,KAAK,EAAE;oBACT,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;iBACxB;aACF;SACF;QACD,MAAM,sBAAsB,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE;YACV,MAAM,mBAAmB,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;YACxD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAE;gBACxD,IAAI;oBACF,SAAS;oBACT,OAAO;iBACR,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,EAAE;oBAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;iBAC3B;aACF;SACF;QACD,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC1D,QACEA,iBAAK,KAAK,EAAC,gCAAgC,IACzCA,yBAAa,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,OAAO,EAAC,IAAI,EAAE,IAAI,IACrD,IAAI,CAAC,cAAc,CACR,CACV,EACN;KACH;IAED,MAAM;QACJ,MAAM,eAAe,GAAGC,aAAO,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC9D,MAAM,gBAAgB,GAAGA,aAAO,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAChE,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,eAAe,EAAE;YACnB,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,uCAAuC,CAAC,CAAC;YAC/F,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,sCAAsC,CAAC,CAAC;YAC7F,IAAI,CAAC,kBAAkB,IAAI,CAAC,iBAAiB,EAAE;gBAC7C,aAAa,GAAG,KAAK,CAAC;aACvB;SACF;aAAM;YACL,aAAa,GAAG,KAAK,CAAC;SACvB;QAED,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAEjH,MAAM,OAAO,GAAG;YACd,aAAa,EAAE,IAAI;YACnB,+BAA+B,EAAE,eAAe;YAChD,gCAAgC,EAAE,gBAAgB;YAClD,sCAAsC,EAAE,IAAI,CAAC,eAAe;YAC5D,uCAAuC,EAAE,IAAI,CAAC,gBAAgB;YAC9D,gCAAgC,EAAE,YAAY;YAC9C,8BAA8B,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;YAC5C,yBAAyB,EAAE,IAAI,CAAC,OAAO;YACvC,CAAC,gBAAgB,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO;SACjD,CAAC;QAEF,MAAM,cAAc,GAClB,OAAO,IAAI,CAAC,4BAA4B,KAAK,UAAU;cACnD,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC;cAC/C,IAAI,CAAC,4BAA4B,CAAC;QAExC,MAAM,YAAY,GAChB,OAAO,IAAI,CAAC,0BAA0B,KAAK,UAAU;cACjD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC;cAC7C,IAAI,CAAC,0BAA0B,CAAC;QAEtC,QACED,QAACE,UAAI,0EAAoB,gBAAgB,EAAE,SAAS,EAAE,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAC1FF,mEACE,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,EAAqB,CAAC,EACrD,UAAU,QACV,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAC/B,OAAO,EAAE,IAAI,CAAC,eAAe,IAG7BA,kEAAK,KAAK,EAAC,2BAA2B,EAAC,YAAY,EAAE,IAAI,CAAC,sBAAsB,IAC7E,CAAC,CAAC,IAAI,CAAC,OAAO,KACbA,2EAAc,KAAK,EAAC,6BAA6B,EAAC,KAAK,EAAC,IAAI,IACzD,IAAI,CAAC,OAAO,CACA,CAChB,EACDA,mEAAM,IAAI,EAAC,cAAc,GAAQ,EAChC,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,KAC5CA,kEAAK,KAAK,EAAC,iCAAiC,IACzC,IAAI,CAAC,kBAAkB,KACtBA,wEAAW,IAAI,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,KAAK,EAAC,SAAS,IACjD,IAAI,CAAC,kBAAkB,CACd,CACb,EACA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,IAC1BA,gCACG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,KAC9BA,2BACE,KAAK,EAAE,UAAU,CAAC,KAAK,EACvB,IAAI,EAAE,UAAU,CAAC,KAAK,EACtB,OAAO,EAAC,QAAQ,EAChB,IAAI,EAAC,OAAO,eACD,IAAI,mBACA,IAAI,EACnB,MAAM,EAAE,IAAI,EACZ,OAAO,EAAE,UAAU,CAAC,OAAO,GACZ,CAClB,CAAC,CACa,KAEjBA,6BACE,QAAQ,EAAE,IAAI,EACd,IAAI,EAAC,SAAS,EACd,KAAK,EAAE,IAAI,CAAC,kBAAkB,kBAChB,IAAI,EAClB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,KAAK;gBACxC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,OAAO,EAAE,GAAG,UAAU,CAAC,MAAM,EAAE;gBAC/B,OAAO,EAAE,QAAQ;gBACjB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC,GACc,CACpB,CACG,CACP,CACG,EAEL,gBAAgB,KACfA,QAACG,cAAQ,uDAEPH,kEAAK,KAAK,EAAC,4BAA4B,EAAC,YAAY,EAAE,IAAI,CAAC,uBAAuB,IAChFA,kEAAK,KAAK,EAAC,kCAAkC,IAC3CA,kEAAK,KAAK,EAAC,oCAAoC,IAAE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAO,EACpFA,2EAAc,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAC,oCAAoC,IAChFA,0EACE,KAAK,EAAC,4CAA4C,EAClD,OAAO,EAAC,gBAAgB,EACxB,IAAI,EAAC,OAAO,EACZ,aAAa,EAAE,IAAI,EACnB,cAAc,EAAE,IAAI,EACpB,YAAY,EAAC,OAAO,EACpB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,GACtB,EACfA,kEAAK,IAAI,EAAC,SAAS,IACjBA,mEAAM,IAAI,EAAC,eAAe,GAAQ,CAC9B,CACO,CACX,CACF,CACG,CACZ,EAEDA,kEAAK,KAAK,EAAC,8BAA8B,IACtC,YAAY,KACXA,QAACG,cAAQ,uDACN,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IACxBH,QAACG,cAAQ,QACN,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,kBAAkB,KAC3EH,0BACE,KAAK,EAAC,8BAA8B,EACpC,KAAK,EAAC,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAC9B,SAAS,EAAE,IAAI,CAAC,cAAc,GAChB,CACjB,EAEA,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAE5C,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAElD,IAAI,CAAC,SAAS,KACbA,uBAAW,KAAK,EAAC,yBAAyB,EAAC,SAAS,EAAE,IAAI,CAAC,SAAS,GAAc,CACnF,EAEA,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa,KACxCA,iBAAK,KAAK,EAAC,iCAAiC,IAC1CA,uBAAW,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,GAAc,CACzE,CACP,CACQ,KAEXA,QAACG,cAAQ,QACPH,iBAAK,KAAK,EAAC,6BAA6B,IACrC,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,kBAAkB,KAC3EA,0BACE,KAAK,EAAC,8BAA8B,EACpC,KAAK,EAAC,IAAI,EACV,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAC9B,WAAW,EAAE,IAAI,CAAC,cAAc,GAClB,CACjB,EACA,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,KAC3BA,iBAAK,KAAK,EAAC,2BAA2B,IACpCA,kDAEE,MAAM,4CAGN,KAAK,EAAC,oCAAoC,EAC1C,OAAO,EAAC,OAAO,EACf,IAAI,EAAC,OAAO,EACZ,UAAU,EAAE,MAAM,EAClB,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EACrB,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,YAAY,EAAE,IAAI,CAAC,oBAAoB,GACxB,CACb,CACP,CACG,EAEL,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,iBAAiB,EAAE,EAE5C,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,qBAAqB,EAAE,EAEnDA,QAAC,cAAc,kBAAC,KAAK,EAAC,sBAAsB,mBAAgB,gBAAgB,IAAM,YAAY,GAC3F,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,KACtBA,iBAAK,KAAK,EAAC,2BAA2B,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,GAAQ,CAC5E,CAAC,CACa,EAEjBA,iBAAK,KAAK,EAAC,8BAA8B,IACtC,IAAI,CAAC,aAAa,KACjBA,yBACE,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,0BAA0B,EAChC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,EACjC,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,QAAQ,EAAE,IAAI,CAAC,OAAO,EACtB,YAAY,EAAE,IAAI,CAAC,OAAO,GACb,CAChB,CACG,CACG,CACZ,CACQ,CACZ,EAEA,IAAI,CAAC,KAAK,KACTA,kEAAK,KAAK,EAAC,oBAAoB,IAC7BA,2EAAc,IAAI,EAAC,OAAO,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAiB,CACzD,CACP,EAEA,IAAI,CAAC,OAAO,IAAIA,0EAAa,KAAK,EAAC,qBAAqB,GAAe,CACpE,EAENA,oEAAa,CACR,CACF,EACP;KACH;;;;;;;;;;;;;;","names":["axios","debounce","media","raf","addMediaChangeListener","removeMediaChangeListener","h","hasSlot","Host","Fragment"],"sources":["src/components/CMS/stzh-search/stzh-search.scss?tag=stzh-search","src/components/CMS/stzh-search/stzh-search.tsx"],"sourcesContent":["stzh-search {\n @include host;\n\n --filter-background-color: var(--stzh-search-filter-background-color, #{$colorGrey10});\n\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \". . results results results results results results results results . .\";\n }\n\n &:where([has-aside-filters]:not([hide-aside-filters]:not([hide-aside-filters=\"false\"]))) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside\" \"results results results results\";\n\n @include mq($from: medium) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside filters-aside\" \"results results results results results results results results\";\n }\n\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"filters-aside filters-aside filters-aside filters-aside results results results results results results results results\";\n }\n }\n\n &:where([variant=\"teaser\"]:not([has-aside-filters])),\n &:where([fullwidth=\"true\"]:not([has-aside-filters])) {\n @include mq($from: large) {\n --grid-template-areas: \"filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main filters-main\" \"results results results results results results results results results results results results\";\n }\n }\n}\n\n.stzh-search {\n @include grid;\n grid-template-areas: var(--grid-template-areas);\n\n &__header-heading {\n @include spaceCurve('margin-bottom', 'small');\n }\n\n &__filters-main {\n grid-area: filters-main;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n }\n }\n\n &__filters-aside {\n grid-area: filters-aside;\n\n &:not(:empty) {\n @include spaceCurve('padding', 'medium');\n background-color: var(--filter-background-color);\n\n @include mq($from: large) {\n background-color: transparent;\n padding: 0;\n }\n }\n }\n\n &__filters-aside-heading {\n @include font('heavy');\n @include fontCurve('h4');\n @include spaceCurve('padding-bottom', 'tiny');\n color: $colorPrimary70;\n display: none;\n\n @include mq($from: large) {\n display: block;\n }\n }\n\n stzh-button#{&}__filters-aside-details-trigger {\n @include mq($from: large) {\n display: none;\n }\n }\n\n &__filters-aside-inner {\n @include mq($from: large) {\n position: sticky;\n top: calc(var(--stzh-header-metabar-height, 0px) * var(--stzh-header-is-stuck, 0) + #{space('medium')});\n transition: top $baseTransitionAnimationSpeed;\n width: calc(100% + #{$gridGutterLarge} - #{spaceCurveValue('large', 'large')});\n }\n\n @include mq($from: ultra) {\n width: calc(100% + #{$gridGutterUltra} - #{spaceCurveValue('large', 'large')});\n }\n }\n\n &__results-wrapper {\n grid-area: results;\n display: grid;\n --stzh-datalist-grid-template-areas: \"list list list list list list list list\";\n }\n\n &__results-header {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n flex-direction: row;\n align-items: center;\n }\n }\n\n &__results-sort {\n display: flex;\n }\n\n &__results-heading,\n &__results-empty,\n &__results,\n &__action-more {\n transition-property: opacity;\n transition-duration: $baseTransitionAnimationSpeed;\n }\n\n &__results-text,\n &__results-sort,\n &__results-subscribe {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__results-heading {\n @include spaceCurve('margin-bottom', 'small');\n\n @include mq($from: medium) {\n @include spaceCurve('margin-bottom', 'regular');\n }\n }\n\n &__results-item {\n display: contents;\n }\n\n &__actions-wrapper {\n display: flex;\n justify-content: center;\n\n &:not(:empty) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &__empty-text {\n @include spaceCurve('margin-bottom', 'regular');\n }\n\n &__loader {\n @include spaceCurve('margin-top', 'medium');\n }\n\n &__filters-main-chips {\n @include spaceCurve('margin-top', 'medium');\n }\n\n /* Teaser variant */\n\n &--teaser &__actions-wrapper {\n justify-content: flex-start;\n }\n\n //&--teaser &__filters-main {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n //\n //&--teaser &__filters-aside {\n // &:not(:empty) {\n // padding: 0;\n // background-color: transparent;\n // }\n //}\n\n /* Has results shown or aside filter */\n\n &--has-results-shown &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'huge');\n }\n }\n\n &--has-results-shown &__filters-main,\n &--has-filters-aside &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'large');\n }\n }\n\n &--has-results-shown#{&}--teaser &__results-wrapper {\n @include mq($to: large) {\n @include spaceCurve('margin-top', 'medium');\n }\n }\n\n &--has-results-shown#{&}--teaser &__filters-main,\n &--has-filters-aside#{&}--teaser &__filters-main {\n @include mq($from: large) {\n @include spaceCurve('margin-bottom', 'medium');\n }\n }\n\n /* Has main and aside filters */\n\n &--has-filters-main#{&}--has-filters-aside &__filters-main {\n &:not(:empty) {\n @include spaceCurve('padding-bottom', 'regular');\n }\n }\n\n &--has-filters-main#{&}--has-filters-aside &__filters-aside {\n &:not(:empty) {\n padding-top: 0px;\n }\n }\n\n /* Has hidden main/aside filters */\n\n &--has-hidden-main-filters &__filters-main {\n display: none;\n }\n\n &--has-hidden-aside-filters &__filters-aside {\n display: none;\n }\n\n &--has-hidden-main-filters &__results-wrapper,\n &--has-hidden-main-filters#{&}--teaser &__results-wrapper {\n margin-top: 0px;\n }\n\n /* Is loading */\n\n &--is-loading &__results-heading,\n &--is-loading &__results-sort,\n &--is-loading &__results-empty,\n &--is-loading &__results,\n &--is-loading &__action-more {\n opacity: 0.5;\n }\n\n /* Is overlay */\n\n &--is-breakout {\n --filter-background-color: var(--stzh-color-cobaltblue20);\n background-color: var(--stzh-color-white);\n }\n\n &--is-breakout & {\n @include containerPadding();\n }\n\n &--is-breakout &__header-wrapper {\n background-color: var(--stzh-color-cobaltblue20);\n }\n\n &--is-breakout &__filters-main {\n @include containerPadding();\n position: relative;\n left: 50%;\n right: 50%;\n margin-left: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n margin-right: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n width: calc(100vw - var(--stzh-scrollbar-width));\n max-width: calc(100vw - var(--stzh-scrollbar-width));\n }\n\n &--is-breakout &__header {\n @include container();\n @include spaceCurve('padding-top', 'medium');\n background-color: var(--stzh-color-cobaltblue20);\n display: flex;\n justify-content: space-between;\n }\n}\n","import { Component, Element, Event, EventEmitter, Fragment, h, Host, Prop, State, Watch } from \"@stencil/core\";\n\nimport {\n StzhDropdownChangeEvent,\n StzhDropdownOption,\n StzhSearchChipsResult,\n StzhSearchOverlayCloseClickEvent,\n StzhSearchResult,\n} from \"../../../index\";\n\nimport axios from \"axios\";\nimport { hasSlot, raf } from \"../../../utils/utils\";\n\nimport { StzhSearchLocalizedText } from \"./stzh-search.localization\";\n\nimport { addMediaChangeListener, media, removeMediaChangeListener } from \"../../../utils/media-utils\";\n\nimport debounce from \"lodash/debounce\";\n\nfunction defaultTemplateResult(search: HTMLStzhSearchElement, item: StzhSearchResult): string {\n return `\n <stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}\n href=\"{href}\"\n dateline=\"{dateline}\"\n tag=\"{tag}\"\n topic=\"{topic}\"\n service=\"{service}\"\n event-location=\"{eventLocation}\"\n hyphens-enabled=\"${this.hyphensEnabled}\"\n ${item.eventDateStart && 'event-date-start=\"{eventDateStart}\"'}\n ${item.eventDateEnd && 'event-date-end=\"{eventDateEnd}\"'}\n download-heading=\"{downloadHeading}\"\n meta='{meta}'\n breadcrumb-items='{breadcrumbItems}'\n download-meta='{downloadMeta}'\n datalist-items='{datalistItems}'\n ${item.imagePosition && 'image-position=\"{imagePosition}\"'}\n ${item.download && 'download=\"{download}\"'}\n style=\"\n ${item.serviceBackgroundColor ? \"--service-background-color: {serviceBackgroundColor};\" : \"\"}\n ${item.serviceColor ? \"--service-color: {serviceColor};\" : \"\"}\n \"\n >\n <div slot=\"heading\">{heading}</div>\n <div slot=\"description\">{description}</div>\n ${\n item.image\n ? item.imagePosition === \"right\"\n ? `<img src=\"${item.image}\" slot=\"image\" />`\n : `<stzh-ratio ${\n search.variant === \"teaser\" ? 'ratio=\"2:1\"' : 'ratio=\"21:9\" ratio-small=\"1:1\"'\n } slot=\"image\"><img src=\"${item.image}\" /></stzh-ratio>`\n : \"\"\n }\n </stzh-card-${search.variant === \"teaser\" ? \"superteaser\" : \"searchresult\"}>\n `;\n}\n\nfunction defaultResultWrapperProps(search: HTMLStzhSearchElement) {\n return {\n layout: search.variant === \"teaser\" ? \"teasers\" : \"searchresults\",\n } as HTMLStzhCardlistElement;\n}\n\n/**\n * @slot - Slot for any content\n * @slot filters-main - Slot for main filters\n * @slot filters-aside - Slot for aside filters\n */\n@Component({\n tag: \"stzh-search\",\n styleUrl: \"stzh-search.scss\",\n})\nexport class StzhSearch {\n /** Translation strings */\n @Prop() localization: StzhSearchLocalizedText;\n\n /** Variant */\n @Prop() variant: \"default\" | \"teaser\" = \"default\";\n\n /** Whether search results should be automatically fetched when a main filters has changed. */\n @Prop() autofetchMainFilters: boolean = false;\n\n /** Whether search results should be automatically fetched when a aside filters has changed. */\n @Prop() autofetchAsideFilters: boolean = false;\n\n /** Whether to hide the main filters slot */\n @Prop({ reflect: true }) hideMainFilters: boolean = false;\n\n /** Whether to hide the aside filters slot */\n @Prop({ reflect: true }) hideAsideFilters: boolean = false;\n\n /** Whether to hide the results heading */\n @Prop({ reflect: true }) hideResultsHeading: boolean = false;\n\n /** Sort by initial value */\n @Prop({ mutable: true }) sortBy: string;\n private _sortBy: string;\n\n /** Sort options */\n @Prop({ mutable: true }) sortOptions: StzhDropdownOption[] | string = [];\n private _sortOptions: StzhDropdownOption[] = [];\n\n /** API URL */\n @Prop() api: string = \"\";\n\n /** Debounce time in ms */\n @Prop() debounceTime: number = 500;\n\n /** Numbers of results shown with each load more action */\n @Prop() limit: number = 6;\n\n /** Whether search request should be fetched initially with set filters */\n @Prop() initialFetch: boolean = false;\n\n /** Whether url query should be updated when filter has changed */\n @Prop() preventUpdateUrl: boolean = false;\n\n /** Automatic Hyphens */\n @Prop({ reflect: true }) hyphensEnabled: boolean = false;\n\n /** Will be overwritten by api result (`templates.result` or `results[x].html`) */\n @Prop() templateResult: string | ((search: HTMLStzhSearchElement, item: StzhSearchResult) => string) =\n defaultTemplateResult;\n\n /** Element used for list wrapper element */\n @Prop() templateResultWrapperElement: string | ((search: HTMLStzhSearchElement) => string) = function() {\n return \"stzh-cardlist\";\n };\n\n /** Properties applied to list wrapper element */\n @Prop() templateResultWrapperProps:\n | { [key: string]: any }\n | ((search: HTMLStzhSearchElement) => { [key: string]: any }) = defaultResultWrapperProps;\n\n /** Heading level of results heading */\n @Prop() resultHeadingLevel: \"1\" | \"2\" | \"3\" | \"4\" = \"3\";\n\n /** Empty text */\n @Prop() emptyText: string;\n\n /** Empty text */\n @Prop() heading: string;\n\n /** Empty link href */\n @Prop() emptyLinkHref: string;\n\n /** Empty link label */\n @Prop() emptyLinkLabel: string;\n\n /** Label for the subscribe button */\n @Prop() subscribeLabel: string = \"Subscribe\";\n\n /** Path which is used as a base for the subscribe button. If not provided, the button won't be rendered. */\n @Prop() subscribePath: string;\n\n /** Query parameters which are being added to the subscribe button path, in addition to the form values. */\n @Prop() subscribeAdditionalQueryParameters: { [key: string]: string }[] | string;\n\n @Element() element: HTMLStzhSearchElement;\n\n @Watch(\"totalCount\")\n @Watch(\"results\")\n totalCountWatcher() {\n this._showMoreLink = this.totalCount > this.results.length;\n }\n\n @Watch(\"preventUpdateUrl\")\n preventUpdateUrlWatcher() {\n this.updateParams();\n }\n\n @Watch(\"sortOptions\")\n sortOptionsWatcher(newValue: StzhDropdownOption[] | string) {\n if (typeof newValue === \"string\") {\n this._sortOptions = JSON.parse(newValue);\n } else {\n this._sortOptions = newValue;\n }\n }\n\n @Watch(\"sortBy\")\n sortByWatcher(newValue: string | undefined) {\n if (typeof newValue === \"string\") {\n this._sortBy = newValue;\n } else {\n this._sortBy = undefined;\n }\n }\n\n @State() totalCount: number = 0;\n private _showMoreLink: boolean = false;\n\n @State() loading: boolean = false;\n @State() error: string = \"\";\n\n @State() results: StzhSearchResult[] = [];\n @State() chipResultsHeading: string;\n @State() chipResults: StzhSearchChipsResult[] = [];\n @State() resultsHeading: string;\n @State() resultsText: string;\n @State() hasRequiredParams: boolean = false;\n @State() firstFetched: boolean = false;\n @State() initiallyFetched: boolean = false;\n @State() isDetailsOpen: boolean = false;\n @State() isStzhAnchornavVisible: boolean = false;\n\n /** Search overlay close click event */\n @Event() stzhOverlayCloseClick: EventEmitter<StzhSearchOverlayCloseClickEvent>;\n\n private currentController: AbortController;\n private params: URLSearchParams;\n private formElement: HTMLFormElement;\n\n private renderResultTemplate(html: string, item: StzhSearchResult) {\n let template =\n html ||\n (typeof this.templateResult === \"function\" ? this.templateResult(this.element, item) : this.templateResult);\n\n [\n \"href\",\n \"heading\",\n \"name\",\n \"additionalInformation\",\n \"numbers\",\n \"dateline\",\n \"description\",\n \"image\",\n \"imagePosition\",\n \"tag\",\n \"topic\",\n \"service\",\n \"serviceColor\",\n \"serviceBackgroundColor\",\n \"meta\",\n \"breadcrumbItems\",\n \"eventLocation\",\n \"eventDateStart\",\n \"eventDateEnd\",\n \"download\",\n \"downloadHeading\",\n \"downloadMeta\",\n \"datalistItems\",\n ].forEach(property => {\n const regex = new RegExp(`\\{${property}\\}`, \"gi\");\n let value = item[property] || \"\";\n\n if ([\n \"meta\",\n \"breadcrumbItems\",\n \"downloadMeta\",\n \"datalistItems\",\n \"numbers\",\n ].includes(property) && value) {\n value = JSON.stringify(value);\n }\n\n template = template.replace(regex, value);\n });\n\n return template;\n }\n\n private async updateParams(initial: boolean = false) {\n const updateByFormElements = () => {\n const formData = new FormData(this.formElement);\n // @ts-ignore\n this.params = new URLSearchParams(formData);\n this.params.set(\"variant\", this.variant);\n };\n\n if (initial) {\n const initialParams = new URLSearchParams(location.search);\n let search = initialParams.get(\"search\");\n const q = initialParams.get(\"q\");\n const query = initialParams.get(\"query\");\n if (!search) {\n if (query) {\n search = `query=${query}`;\n } else if (q) {\n search = `q=${q}`;\n }\n }\n\n if (search) {\n this.initialFetch = true;\n const currentSearchParams = new URLSearchParams(search);\n\n [...new Set(currentSearchParams.keys())].forEach(key => {\n const values = currentSearchParams.getAll(key);\n\n // value as string/number: input, ... / pagination\n const valueInputs = Array.from(\n document.querySelectorAll(\n `:where(stzh-input,stzh-radiogroup,stzh-chipselect,stzh-amount,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[name=\"${key}\"]`,\n ),\n ) as\n | HTMLStzhInputElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhAmountElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhMonthyearpickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n // value as array: checkboxgroup\n const valueArrayInputs = Array.from(\n document.querySelectorAll(`:where(stzh-checkboxgroup)[name=\"${key}\"]`),\n ) as HTMLStzhCheckboxgroupElement[];\n\n // items as array: dropdown\n const itemsArrayInputs = Array.from(document.querySelectorAll(`:where(stzh-dropdown)[name=\"${key}\"]`)) as\n | HTMLStzhDropdownElement[];\n\n valueInputs.forEach(\n (\n input:\n | HTMLStzhInputElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhChipselectElement\n | HTMLStzhAmountElement\n | HTMLStzhDatepickerElement\n | HTMLStzhMonthyearpickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement,\n ) => {\n input.value = values[0];\n },\n );\n\n valueArrayInputs.forEach((input: HTMLStzhCheckboxgroupElement) => {\n input.value = values;\n });\n\n itemsArrayInputs.forEach((input: HTMLStzhDropdownElement) => {\n input.items = values;\n });\n });\n }\n }\n\n await raf();\n updateByFormElements();\n\n let hasRequiredParams = true;\n\n const requiredInputFields = Array.from(this.element.querySelectorAll(\":where(stzh-input)[required]\")) as\n | HTMLStzhInputElement[];\n\n const requiredDropdownFields = Array.from(this.element.querySelectorAll(\":where(stzh-dropdown)[required]\")) as\n | HTMLStzhDropdownElement[];\n\n const requiredMonthyearpickers = Array.from(\n this.element.querySelectorAll(\":where(stzh-monthyearpicker)[required]\"),\n ) as HTMLStzhMonthyearpickerElement[];\n\n const requiredFields = Array.from(\n this.element.querySelectorAll(\n \":where(stzh-amount,stzh-radiogroup,stzh-chipselect,stzh-datepicker,stzh-monthyearpicker,stzh-timepicker,stzh-pagination,stzh-toggle)[required]\",\n ),\n ) as\n | HTMLStzhAmountElement[]\n | HTMLStzhRadiogroupElement[]\n | HTMLStzhChipselectElement[]\n | HTMLStzhDatepickerElement[]\n | HTMLStzhTimepickerElement[]\n | HTMLStzhPaginationElement[]\n | HTMLStzhToggleElement[];\n\n const requiredCheckboxFields = Array.from(this.element.querySelectorAll(\":where(stzh-checkbox)[required]\")) as\n | HTMLStzhCheckboxElement[];\n\n requiredCheckboxFields.forEach((field: HTMLStzhCheckboxElement) => {\n const invalid = !field.checked;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredInputFields.forEach((field: HTMLStzhInputElement) => {\n const invalid =\n field.value === \"\" ||\n (field.minlength && field.minlength > field.value.length) ||\n (field.maxlength && field.maxlength < field.value.length);\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredDropdownFields.forEach((field: HTMLStzhDropdownElement) => {\n const invalid = field.items.length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n requiredFields.forEach(\n (\n field:\n | HTMLStzhAmountElement\n | HTMLStzhRadiogroupElement\n | HTMLStzhCheckboxElement\n | HTMLStzhChipselectElement\n | HTMLStzhDatepickerElement\n | HTMLStzhTimepickerElement\n | HTMLStzhPaginationElement\n | HTMLStzhToggleElement,\n ) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalid = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n },\n );\n\n requiredMonthyearpickers.forEach((field: HTMLStzhMonthyearpickerElement) => {\n const invalid = field.value.toString().length === 0;\n\n if (!initial) {\n field.invalidYear = invalid;\n field.invalidMonth = invalid;\n }\n\n if (invalid) {\n hasRequiredParams = false;\n }\n });\n\n this.hasRequiredParams = hasRequiredParams;\n }\n\n private fetch = async (append: boolean = false, initial: boolean = false) => {\n this.loading = true;\n this.error = \"\";\n\n if (this.currentController) {\n this.currentController.abort();\n }\n\n if (!this.hasRequiredParams && !append) {\n this.loading = false;\n return;\n }\n\n let apiUrl = this.api.replace(/\\{lang\\}/gi, this.localization.$locale);\n let limit = this.limit.toString();\n\n this.params.set(\"offset\", append ? this.results.length.toString() : \"0\");\n\n if (initial) {\n const search = new URLSearchParams(location.search).get(\"search\");\n\n if (search) {\n const urlLimit = new URLSearchParams(search).get(\"limit\");\n\n if (urlLimit) {\n limit = urlLimit;\n }\n }\n }\n\n this.params.set(\"limit\", limit);\n\n this.currentController = new AbortController();\n\n let data: {\n error?: boolean;\n message?: string;\n templates?: {\n result: string;\n };\n meta?: {\n total: number;\n };\n resultsHeading?: string;\n resultsText?: string;\n results?: StzhSearchResult[];\n chipResultsHeading?: string;\n chipResults?: StzhSearchChipsResult[];\n } = {};\n\n try {\n // load data from API\n const response = await axios(apiUrl, {\n params: this.params,\n signal: this.currentController.signal,\n });\n\n data = response.data;\n } catch (error) {\n this.error = this.localization.error;\n }\n\n this.resultsHeading = data.resultsHeading || \"\";\n this.resultsText = data.resultsText || \"\";\n this.totalCount = data.meta?.total || 0;\n\n if (data.error) {\n this.error = data.message || this.localization.error;\n }\n\n if (data.chipResults && data.chipResults.length) {\n this.chipResultsHeading = data.chipResultsHeading ?? \"\";\n this.chipResults = data.chipResults;\n } else {\n this.chipResultsHeading = \"\";\n this.chipResults = [];\n }\n\n if (data.results) {\n if (append) {\n this.results = [\n ...this.results,\n ...data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n })),\n ];\n } else {\n this.results = data.results.map(item => ({\n ...item,\n html: this.renderResultTemplate(item.html || data.templates?.result, item),\n }));\n }\n }\n\n if (!initial && !this.preventUpdateUrl) {\n const newUrlParams = new URLSearchParams(location.search);\n const searchParams = new URLSearchParams(this.params);\n\n searchParams.delete(\"offset\");\n searchParams.set(\"limit\", this.results.length.toString());\n newUrlParams.set(\"search\", searchParams.toString());\n\n window.history.replaceState(null, \"\", `${location.pathname}?${newUrlParams}`);\n }\n\n if (initial || !this.firstFetched) {\n this.loading = false;\n } else {\n // to be able to see loading effect we delay turning off loading state\n window.setTimeout(() => {\n this.loading = false;\n }, this.debounceTime);\n }\n\n this.firstFetched = true;\n };\n\n private debouncedFetch = debounce(this.fetch, this.debounceTime);\n\n private onDropdownSortChange = async (event: CustomEvent<StzhDropdownChangeEvent>) => {\n const target: HTMLStzhDropdownElement = event.target as HTMLStzhDropdownElement;\n const sortBy = (await target.getValue()) as string;\n if (sortBy) {\n this._sortBy = sortBy;\n }\n await this.updateParams();\n this.debouncedFetch();\n };\n\n private handleMainFilterChange = async () => {\n if (this.autofetchMainFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleAsideFilterChange = async () => {\n if (this.autofetchAsideFilters) {\n await this.updateParams();\n this.debouncedFetch();\n }\n };\n\n private handleFormSubmit = async (event: Event) => {\n event.preventDefault();\n\n await this.updateParams();\n this.fetch();\n };\n\n private handleMoreClick = () => {\n this.fetch(true);\n };\n\n private handleMediaChange = () => {\n this.isDetailsOpen = media(\"large\").matches;\n };\n\n private handleFormReset = async () => {\n requestAnimationFrame(() => {\n requestAnimationFrame(async () => {\n await this.updateParams();\n });\n });\n };\n\n async componentDidLoad() {\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n\n // update params initially to get hidden filters\n // and set initialFetch to true if search params exist\n await this.updateParams(true);\n\n if (this.initialFetch) {\n await this.fetch(false, true);\n this.initiallyFetched = true;\n } else {\n this.initiallyFetched = true;\n }\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"search\");\n }\n this.isStzhAnchornavVisible =\n document.documentElement.style.getPropertyValue(\"--stzh-anchornav-is-visible\") === \"1\";\n this.sortOptionsWatcher(this.sortOptions);\n this.sortByWatcher(this.sortBy);\n }\n\n connectedCallback() {\n addMediaChangeListener(this.handleMediaChange);\n this.handleMediaChange();\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.handleMediaChange);\n }\n\n private renderResultsText(): DocumentFragment {\n return <stzh-text class=\"stzh-search__results-text\" color=\"primary\" innerHTML={this.resultsText}></stzh-text>;\n }\n\n private renderSubscribeButton(): DocumentFragment {\n const params = new URLSearchParams();\n let subscribeAdditionalQueryParameters = this.subscribeAdditionalQueryParameters;\n if (typeof this.subscribeAdditionalQueryParameters === \"string\") {\n try {\n subscribeAdditionalQueryParameters = JSON.parse(this.subscribeAdditionalQueryParameters);\n } catch (noJson) {}\n }\n for (const entry of subscribeAdditionalQueryParameters) {\n for (const [key, value] of Object.entries(entry)) {\n if (value) {\n params.set(key, value);\n }\n }\n }\n const currentQueryParameters = new URLSearchParams(window.location.search);\n const search = currentQueryParameters.get(\"search\");\n if (search) {\n const currentSearchParams = new URLSearchParams(search);\n for (const [key, value] of currentSearchParams.entries()) {\n if ([\n \"variant\",\n \"limit\",\n ].indexOf(key) === -1 && value) {\n params.append(key, value);\n }\n }\n }\n const href = `${this.subscribePath}?${params.toString()}`;\n return (\n <div class=\"stzh-search__results-subscribe\">\n <stzh-button variant=\"secondary\" size=\"small\" href={href}>\n {this.subscribeLabel}\n </stzh-button>\n </div>\n );\n }\n\n render() {\n const filtersMainUsed = hasSlot(this.element, \"filters-main\");\n const filtersAsideUsed = hasSlot(this.element, \"filters-aside\");\n let chipsProvided = true;\n if (filtersMainUsed) {\n const providedChipselect = this.element.querySelector(\"[slot='filters-main'] stzh-chipselect\");\n const providedChipgroup = this.element.querySelector(\"[slot='filters-main'] stzh-chipgroup\");\n if (!providedChipselect && !providedChipgroup) {\n chipsProvided = false;\n }\n } else {\n chipsProvided = false;\n }\n\n const resultsShown = (this.hasRequiredParams || this.firstFetched) && this.firstFetched && this.initiallyFetched;\n\n const classes = {\n \"stzh-search\": true,\n \"stzh-search--has-filters-main\": filtersMainUsed,\n \"stzh-search--has-filters-aside\": filtersAsideUsed,\n \"stzh-search--has-hidden-main-filters\": this.hideMainFilters,\n \"stzh-search--has-hidden-aside-filters\": this.hideAsideFilters,\n \"stzh-search--has-results-shown\": resultsShown,\n \"stzh-search--has-error-shown\": !!this.error,\n \"stzh-search--is-loading\": this.loading,\n [`stzh-search--${this.variant}`]: !!this.variant,\n };\n\n const WrapperElement =\n typeof this.templateResultWrapperElement === \"function\"\n ? this.templateResultWrapperElement(this.element)\n : this.templateResultWrapperElement;\n\n const wrapperProps =\n typeof this.templateResultWrapperProps === \"function\"\n ? this.templateResultWrapperProps(this.element)\n : this.templateResultWrapperProps;\n\n return (\n <Host has-aside-filters={filtersAsideUsed} fullwidth={this.isStzhAnchornavVisible.toString()}>\n <form\n ref={el => (this.formElement = el as HTMLFormElement)}\n novalidate\n class={classes}\n onSubmit={this.handleFormSubmit}\n onReset={this.handleFormReset}\n >\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-main\" onStzhChange={this.handleMainFilterChange}>\n {!!this.heading && (\n <stzh-heading class=\"stzh-search__header-heading\" curve=\"h2\">\n {this.heading}\n </stzh-heading>\n )}\n <slot name=\"filters-main\"></slot>\n {!chipsProvided && this.chipResults.length > 0 && (\n <div class=\"stzh-search__filters-main-chips\">\n {this.chipResultsHeading && (\n <stzh-text font=\"heavy\" size=\"milli\" color=\"primary\">\n {this.chipResultsHeading}\n </stzh-text>\n )}\n {this.chipResults[0].options ? (\n <stzh-chipgroup>\n {this.chipResults.map(chipResult => (\n <stzh-dropdown\n label={chipResult.label}\n name={chipResult.value}\n variant=\"filter\"\n size=\"large\"\n no-search={true}\n hide-optional={true}\n inline={true}\n options={chipResult.options}\n ></stzh-dropdown>\n ))}\n </stzh-chipgroup>\n ) : (\n <stzh-chipselect\n multiple={true}\n name=\"subject\"\n label={this.chipResultsHeading}\n label-hidden={true}\n data={this.chipResults.map(chipResult => ({\n label: chipResult.label,\n value: chipResult.value,\n counter: `${chipResult.amount}`,\n variant: \"filter\",\n size: \"large\",\n }))}\n ></stzh-chipselect>\n )}\n </div>\n )}\n </div>\n\n {filtersAsideUsed && (\n <Fragment>\n {/* @ts-ignore */}\n <div class=\"stzh-search__filters-aside\" onStzhChange={this.handleAsideFilterChange}>\n <div class=\"stzh-search__filters-aside-inner\">\n <div class=\"stzh-search__filters-aside-heading\">{this.localization.moreFilter}</div>\n <stzh-details open={this.isDetailsOpen} class=\"stzh-search__filters-aside-details\">\n <stzh-button\n class=\"stzh-search__filters-aside-details-trigger\"\n variant=\"tertiary-plain\"\n size=\"small\"\n noPaddingLeft={true}\n showToggleIcon={true}\n iconPosition=\"right\"\n label={this.localization.moreFilter}\n ></stzh-button>\n <div slot=\"content\">\n <slot name=\"filters-aside\"></slot>\n </div>\n </stzh-details>\n </div>\n </div>\n </Fragment>\n )}\n\n <div class=\"stzh-search__results-wrapper\">\n {resultsShown && (\n <Fragment>\n {this.results.length === 0 ? (\n <Fragment>\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n innerHTML={this.resultsHeading}\n ></stzh-heading>\n )}\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n {this.emptyText && (\n <stzh-text class=\"stzh-search__empty-text\" innerHTML={this.emptyText}></stzh-text>\n )}\n\n {this.emptyLinkLabel && this.emptyLinkHref && (\n <div class=\"stzh-search__empty-link-wrapper\">\n <stzh-link href={this.emptyLinkHref} label={this.emptyLinkLabel}></stzh-link>\n </div>\n )}\n </Fragment>\n ) : (\n <Fragment>\n <div class=\"stzh-search__results-header\">\n {this.variant !== \"teaser\" && this.resultsHeading && !this.hideResultsHeading && (\n <stzh-heading\n class=\"stzh-search__results-heading\"\n curve=\"h3\"\n level={this.resultHeadingLevel}\n htmlContent={this.resultsHeading}\n ></stzh-heading>\n )}\n {this._sortOptions.length > 0 && (\n <div class=\"stzh-search__results-sort\">\n <stzh-dropdown\n hide-optional\n inline\n no-search\n no-wrap\n class=\"stzh-search__results-sort-dropdown\"\n variant=\"plain\"\n size=\"small\"\n sizeMedium={\"tiny\"}\n name=\"sortby\"\n items={[this._sortBy]}\n options={this._sortOptions}\n onStzhChange={this.onDropdownSortChange}\n ></stzh-dropdown>\n </div>\n )}\n </div>\n\n {this.resultsText && this.renderResultsText()}\n\n {this.subscribePath && this.renderSubscribeButton()}\n\n <WrapperElement class=\"stzh-search__results\" max-3-columns={filtersAsideUsed} {...wrapperProps}>\n {this.results.map(result => (\n <div class=\"stzh-search__results-item\" innerHTML={result.html || \"\"}></div>\n ))}\n </WrapperElement>\n\n <div class=\"stzh-search__actions-wrapper\">\n {this._showMoreLink && (\n <stzh-button\n variant=\"secondary\"\n class=\"stzh-search__action-more\"\n label={this.localization.showMore}\n onClick={this.handleMoreClick}\n disabled={this.loading}\n a11yDisabled={this.loading}\n ></stzh-button>\n )}\n </div>\n </Fragment>\n )}\n </Fragment>\n )}\n\n {this.error && (\n <div class=\"stzh-search__error\">\n <stzh-message type=\"error\" label={this.error}></stzh-message>\n </div>\n )}\n\n {this.loading && <stzh-loader class=\"stzh-search__loader\"></stzh-loader>}\n </div>\n\n <slot></slot>\n </form>\n </Host>\n );\n }\n}\n"],"version":3}
|
|
@@ -11,15 +11,22 @@ const StzhVbzConnectionFinder = class {
|
|
|
11
11
|
constructor(hostRef) {
|
|
12
12
|
index.registerInstance(this, hostRef);
|
|
13
13
|
this.zvvScript = "https://fpcdn.zvv.ch/cdn/v1/searchmask.min.js";
|
|
14
|
+
this.language = "en";
|
|
14
15
|
}
|
|
15
16
|
getIconPath(name) {
|
|
16
17
|
return `${window.stzhComponents.pathMedia}/icons/mono/${name}.svg`;
|
|
17
18
|
}
|
|
19
|
+
connectedCallback() {
|
|
20
|
+
const activeLanguage = window.stzhComponents.utils.getLocale(this.element);
|
|
21
|
+
if (activeLanguage === "de" || activeLanguage === "en") {
|
|
22
|
+
this.language = activeLanguage;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
18
25
|
render() {
|
|
19
26
|
const classes = {
|
|
20
27
|
"stzh-vbz-connection-finder": true,
|
|
21
28
|
};
|
|
22
|
-
return (index.h(index.Host, { key: '
|
|
29
|
+
return (index.h(index.Host, { key: '0001260ea3d1783d9678517d7ac0d51339cf7c6e' }, index.h("div", { key: '0bab124b33664c1367cd6b365b1accf99e66eb93', class: classes }, index.h("script", { key: 'b9b4585a00cc973ca10469b4c56aedaaf5d47f5d', src: this.zvvScript }), index.h("div", { key: '6b7c01befe23df79ae62a91c067f18fc11f5bf73', id: "zvv-searchmask", "data-draw-input-placeholder-outside": "true", "data-toggle-style-variant": "inside", "data-hide-refresh-button": "true", "data-background-color": "#ffffff", "data-accent-color": "#ffffff", "data-input-border-color": "#7C7C7C", "data-input-border-radius": "0px", "data-input-border-width": "2px", "data-input-placeholder-color": "#034C67", "data-input-text-color": "#000000", "data-button-color": "#FFFFFF", "data-button-background-color": "#057FAC", "data-button-hover-color": "#ffffff", "data-button-hover-background-color": "#034C67", "data-button-border-radius": "0px", "data-language": this.language, "data-font-family": "'HelveticaNeueLTW01_55Roman','Helvetica Neue','Helvetica,Arial',sans-serif;", "data-calendar-icon": this.getIconPath("calendar"), "data-info-icon": this.getIconPath("info-help") }))));
|
|
23
30
|
}
|
|
24
31
|
get element() { return index.getElement(this); }
|
|
25
32
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"stzh-vbz-connection-finder.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,0BAA0B,GAAG,kzEAAkzE,CAAC;AACt1E,sCAAe,0BAA0B;;MCS5B,uBAAuB;;;yBAEN,+CAA+C;;
|
|
1
|
+
{"file":"stzh-vbz-connection-finder.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,0BAA0B,GAAG,kzEAAkzE,CAAC;AACt1E,sCAAe,0BAA0B;;MCS5B,uBAAuB;;;yBAEN,+CAA+C;wBAG3C,IAAI;;IAI5B,WAAW,CAAC,IAAY;QAC9B,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,eAAe,IAAI,MAAM,CAAC;KACpE;IAED,iBAAiB;QACf,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3E,IAAI,cAAc,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI,EAAE;YACtD,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;SAChC;KACF;IAED,MAAM;QACJ,MAAM,OAAO,GAAG;YACd,4BAA4B,EAAE,IAAI;SACnC,CAAC;QAEF,QACEA,QAACC,UAAI,uDACHD,kEAAK,KAAK,EAAE,OAAO,IACjBA,qEAAQ,GAAG,EAAE,IAAI,CAAC,SAAS,GAAW,EACtCA,kEACE,EAAE,EAAC,gBAAgB,yCACiB,MAAM,+BAChB,QAAQ,8BACT,MAAM,2BACT,SAAS,uBACb,SAAS,6BACH,SAAS,8BACR,KAAK,6BACN,KAAK,kCACA,SAAS,2BAChB,SAAS,uBACb,SAAS,kCACE,SAAS,6BACd,SAAS,wCACE,SAAS,+BAClB,KAAK,mBAChB,IAAI,CAAC,QAAQ,sBACX,6EAA6E,wBAC1E,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,oBAChC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,GACxC,CACH,CACD,EACP;KACH;;;;;;;","names":["h","Host"],"sources":["src/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.scss?tag=stzh-vbz-connection-finder&encapsulation=scoped","src/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.tsx"],"sourcesContent":[":host {\n width: 100%;\n}\n\n.stzh-vbz-connection-finder {\n @include spaceCurve('padding-top', 'medium');\n @include spaceCurve('padding-bottom', 'medium');\n}\n\n\n","import { Component, Element, h, Host, Prop } from \"@stencil/core\";\n\n/**\n *\n */\n@Component({\n tag: \"stzh-vbz-connection-finder\",\n styleUrl: \"stzh-vbz-connection-finder.scss\",\n scoped: true,\n})\nexport class StzhVbzConnectionFinder {\n /** Searchmask Script of ZVV */\n @Prop() zvvScript: string = \"https://fpcdn.zvv.ch/cdn/v1/searchmask.min.js\";\n\n /** Language */\n @Prop() language: \"de\" | \"en\" = \"en\";\n\n @Element() element: HTMLStzhVbzConnectionFinderElement;\n\n private getIconPath(name: string) {\n return `${window.stzhComponents.pathMedia}/icons/mono/${name}.svg`;\n }\n\n connectedCallback() {\n const activeLanguage = window.stzhComponents.utils.getLocale(this.element);\n if (activeLanguage === \"de\" || activeLanguage === \"en\") {\n this.language = activeLanguage;\n }\n }\n\n render() {\n const classes = {\n \"stzh-vbz-connection-finder\": true,\n };\n\n return (\n <Host>\n <div class={classes}>\n <script src={this.zvvScript}></script>\n <div\n id=\"zvv-searchmask\"\n data-draw-input-placeholder-outside=\"true\"\n data-toggle-style-variant=\"inside\"\n data-hide-refresh-button=\"true\"\n data-background-color=\"#ffffff\"\n data-accent-color=\"#ffffff\"\n data-input-border-color=\"#7C7C7C\"\n data-input-border-radius=\"0px\"\n data-input-border-width=\"2px\"\n data-input-placeholder-color=\"#034C67\"\n data-input-text-color=\"#000000\"\n data-button-color=\"#FFFFFF\"\n data-button-background-color=\"#057FAC\"\n data-button-hover-color=\"#ffffff\"\n data-button-hover-background-color=\"#034C67\"\n data-button-border-radius=\"0px\"\n data-language={this.language}\n data-font-family=\"'HelveticaNeueLTW01_55Roman','Helvetica Neue','Helvetica,Arial',sans-serif;\"\n data-calendar-icon={this.getIconPath(\"calendar\")}\n data-info-icon={this.getIconPath(\"info-help\")}\n ></div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
|
package/dist/collection/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js
CHANGED
|
@@ -5,15 +5,22 @@ import { h, Host } from "@stencil/core";
|
|
|
5
5
|
export class StzhVbzConnectionFinder {
|
|
6
6
|
constructor() {
|
|
7
7
|
this.zvvScript = "https://fpcdn.zvv.ch/cdn/v1/searchmask.min.js";
|
|
8
|
+
this.language = "en";
|
|
8
9
|
}
|
|
9
10
|
getIconPath(name) {
|
|
10
11
|
return `${window.stzhComponents.pathMedia}/icons/mono/${name}.svg`;
|
|
11
12
|
}
|
|
13
|
+
connectedCallback() {
|
|
14
|
+
const activeLanguage = window.stzhComponents.utils.getLocale(this.element);
|
|
15
|
+
if (activeLanguage === "de" || activeLanguage === "en") {
|
|
16
|
+
this.language = activeLanguage;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
12
19
|
render() {
|
|
13
20
|
const classes = {
|
|
14
21
|
"stzh-vbz-connection-finder": true,
|
|
15
22
|
};
|
|
16
|
-
return (h(Host, { key: '
|
|
23
|
+
return (h(Host, { key: '0001260ea3d1783d9678517d7ac0d51339cf7c6e' }, h("div", { key: '0bab124b33664c1367cd6b365b1accf99e66eb93', class: classes }, h("script", { key: 'b9b4585a00cc973ca10469b4c56aedaaf5d47f5d', src: this.zvvScript }), h("div", { key: '6b7c01befe23df79ae62a91c067f18fc11f5bf73', id: "zvv-searchmask", "data-draw-input-placeholder-outside": "true", "data-toggle-style-variant": "inside", "data-hide-refresh-button": "true", "data-background-color": "#ffffff", "data-accent-color": "#ffffff", "data-input-border-color": "#7C7C7C", "data-input-border-radius": "0px", "data-input-border-width": "2px", "data-input-placeholder-color": "#034C67", "data-input-text-color": "#000000", "data-button-color": "#FFFFFF", "data-button-background-color": "#057FAC", "data-button-hover-color": "#ffffff", "data-button-hover-background-color": "#034C67", "data-button-border-radius": "0px", "data-language": this.language, "data-font-family": "'HelveticaNeueLTW01_55Roman','Helvetica Neue','Helvetica,Arial',sans-serif;", "data-calendar-icon": this.getIconPath("calendar"), "data-info-icon": this.getIconPath("info-help") }))));
|
|
17
24
|
}
|
|
18
25
|
static get is() { return "stzh-vbz-connection-finder"; }
|
|
19
26
|
static get encapsulation() { return "scoped"; }
|
|
@@ -46,6 +53,24 @@ export class StzhVbzConnectionFinder {
|
|
|
46
53
|
"attribute": "zvv-script",
|
|
47
54
|
"reflect": false,
|
|
48
55
|
"defaultValue": "\"https://fpcdn.zvv.ch/cdn/v1/searchmask.min.js\""
|
|
56
|
+
},
|
|
57
|
+
"language": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"mutable": false,
|
|
60
|
+
"complexType": {
|
|
61
|
+
"original": "\"de\" | \"en\"",
|
|
62
|
+
"resolved": "\"de\" | \"en\"",
|
|
63
|
+
"references": {}
|
|
64
|
+
},
|
|
65
|
+
"required": false,
|
|
66
|
+
"optional": false,
|
|
67
|
+
"docs": {
|
|
68
|
+
"tags": [],
|
|
69
|
+
"text": "Language"
|
|
70
|
+
},
|
|
71
|
+
"attribute": "language",
|
|
72
|
+
"reflect": false,
|
|
73
|
+
"defaultValue": "\"en\""
|
|
49
74
|
}
|
|
50
75
|
};
|
|
51
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-vbz-connection-finder.js","sourceRoot":"","sources":["../../../../../../src/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAElE;;GAEG;AAMH,MAAM,OAAO,uBAAuB;;yBAEN,+CAA+C;;
|
|
1
|
+
{"version":3,"file":"stzh-vbz-connection-finder.js","sourceRoot":"","sources":["../../../../../../src/components/CMS/VBZ/stzh-vbz-connection-finder/stzh-vbz-connection-finder.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAElE;;GAEG;AAMH,MAAM,OAAO,uBAAuB;;yBAEN,+CAA+C;wBAG3C,IAAI;;IAI5B,WAAW,CAAC,IAAY;QAC9B,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,eAAe,IAAI,MAAM,CAAC;IACrE,CAAC;IAED,iBAAiB;QACf,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3E,IAAI,cAAc,KAAK,IAAI,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YACvD,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC;QACjC,CAAC;IACH,CAAC;IAED,MAAM;QACJ,MAAM,OAAO,GAAG;YACd,4BAA4B,EAAE,IAAI;SACnC,CAAC;QAEF,OAAO,CACL,EAAC,IAAI;YACH,4DAAK,KAAK,EAAE,OAAO;gBACjB,+DAAQ,GAAG,EAAE,IAAI,CAAC,SAAS,GAAW;gBACtC,4DACE,EAAE,EAAC,gBAAgB,yCACiB,MAAM,+BAChB,QAAQ,8BACT,MAAM,2BACT,SAAS,uBACb,SAAS,6BACH,SAAS,8BACR,KAAK,6BACN,KAAK,kCACA,SAAS,2BAChB,SAAS,uBACb,SAAS,kCACE,SAAS,6BACd,SAAS,wCACE,SAAS,+BAClB,KAAK,mBAChB,IAAI,CAAC,QAAQ,sBACX,6EAA6E,wBAC1E,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,oBAChC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,GACxC,CACH,CACD,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Element, h, Host, Prop } from \"@stencil/core\";\n\n/**\n *\n */\n@Component({\n tag: \"stzh-vbz-connection-finder\",\n styleUrl: \"stzh-vbz-connection-finder.scss\",\n scoped: true,\n})\nexport class StzhVbzConnectionFinder {\n /** Searchmask Script of ZVV */\n @Prop() zvvScript: string = \"https://fpcdn.zvv.ch/cdn/v1/searchmask.min.js\";\n\n /** Language */\n @Prop() language: \"de\" | \"en\" = \"en\";\n\n @Element() element: HTMLStzhVbzConnectionFinderElement;\n\n private getIconPath(name: string) {\n return `${window.stzhComponents.pathMedia}/icons/mono/${name}.svg`;\n }\n\n connectedCallback() {\n const activeLanguage = window.stzhComponents.utils.getLocale(this.element);\n if (activeLanguage === \"de\" || activeLanguage === \"en\") {\n this.language = activeLanguage;\n }\n }\n\n render() {\n const classes = {\n \"stzh-vbz-connection-finder\": true,\n };\n\n return (\n <Host>\n <div class={classes}>\n <script src={this.zvvScript}></script>\n <div\n id=\"zvv-searchmask\"\n data-draw-input-placeholder-outside=\"true\"\n data-toggle-style-variant=\"inside\"\n data-hide-refresh-button=\"true\"\n data-background-color=\"#ffffff\"\n data-accent-color=\"#ffffff\"\n data-input-border-color=\"#7C7C7C\"\n data-input-border-radius=\"0px\"\n data-input-border-width=\"2px\"\n data-input-placeholder-color=\"#034C67\"\n data-input-text-color=\"#000000\"\n data-button-color=\"#FFFFFF\"\n data-button-background-color=\"#057FAC\"\n data-button-hover-color=\"#ffffff\"\n data-button-hover-background-color=\"#034C67\"\n data-button-border-radius=\"0px\"\n data-language={this.language}\n data-font-family=\"'HelveticaNeueLTW01_55Roman','Helvetica Neue','Helvetica,Arial',sans-serif;\"\n data-calendar-icon={this.getIconPath(\"calendar\")}\n data-info-icon={this.getIconPath(\"info-help\")}\n ></div>\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -13,15 +13,15 @@ function defaultTemplateResult(search, item) {
|
|
|
13
13
|
service="{service}"
|
|
14
14
|
event-location="{eventLocation}"
|
|
15
15
|
hyphens-enabled="${this.hyphensEnabled}"
|
|
16
|
-
${item.eventDateStart &&
|
|
17
|
-
${item.eventDateEnd &&
|
|
16
|
+
${item.eventDateStart && 'event-date-start="{eventDateStart}"'}
|
|
17
|
+
${item.eventDateEnd && 'event-date-end="{eventDateEnd}"'}
|
|
18
18
|
download-heading="{downloadHeading}"
|
|
19
|
-
meta=
|
|
20
|
-
breadcrumb-items=
|
|
21
|
-
download-meta=
|
|
22
|
-
datalist-items=
|
|
23
|
-
${item.imagePosition &&
|
|
24
|
-
${item.download &&
|
|
19
|
+
meta='{meta}'
|
|
20
|
+
breadcrumb-items='{breadcrumbItems}'
|
|
21
|
+
download-meta='{downloadMeta}'
|
|
22
|
+
datalist-items='{datalistItems}'
|
|
23
|
+
${item.imagePosition && 'image-position="{imagePosition}"'}
|
|
24
|
+
${item.download && 'download="{download}"'}
|
|
25
25
|
style="
|
|
26
26
|
${item.serviceBackgroundColor ? "--service-background-color: {serviceBackgroundColor};" : ""}
|
|
27
27
|
${item.serviceColor ? "--service-color: {serviceColor};" : ""}
|
|
@@ -32,7 +32,7 @@ function defaultTemplateResult(search, item) {
|
|
|
32
32
|
${item.image
|
|
33
33
|
? item.imagePosition === "right"
|
|
34
34
|
? `<img src="${item.image}" slot="image" />`
|
|
35
|
-
: `<stzh-ratio ${search.variant === "teaser" ?
|
|
35
|
+
: `<stzh-ratio ${search.variant === "teaser" ? 'ratio="2:1"' : 'ratio="21:9" ratio-small="1:1"'} slot="image"><img src="${item.image}" /></stzh-ratio>`
|
|
36
36
|
: ""}
|
|
37
37
|
</stzh-card-${search.variant === "teaser" ? "superteaser" : "searchresult"}>
|
|
38
38
|
`;
|
|
@@ -483,13 +483,13 @@ export class StzhSearch {
|
|
|
483
483
|
const wrapperProps = typeof this.templateResultWrapperProps === "function"
|
|
484
484
|
? this.templateResultWrapperProps(this.element)
|
|
485
485
|
: this.templateResultWrapperProps;
|
|
486
|
-
return (h(Host, { key: '
|
|
486
|
+
return (h(Host, { key: '71e37c2983cf892b4524120579708386fee1bc76', "has-aside-filters": filtersAsideUsed, fullwidth: this.isStzhAnchornavVisible.toString() }, h("form", { key: 'aff40bf8c4ef56a17ae04e45994094f96ee47b90', ref: el => (this.formElement = el), novalidate: true, class: classes, onSubmit: this.handleFormSubmit, onReset: this.handleFormReset }, h("div", { key: '9f987f55bec4503eec1c211ca7395d0b11614fea', class: "stzh-search__filters-main", onStzhChange: this.handleMainFilterChange }, !!this.heading && (h("stzh-heading", { key: '5731ef38c7d350b1a3757d11eb8db86bc3ab4a0b', class: "stzh-search__header-heading", curve: "h2" }, this.heading)), h("slot", { key: '81399438b2daf8e91009a7834a6202304e1e021c', name: "filters-main" }), !chipsProvided && this.chipResults.length > 0 && (h("div", { key: '75722a10fe41490bd8b44b87555f97277074f6da', class: "stzh-search__filters-main-chips" }, this.chipResultsHeading && (h("stzh-text", { key: '9a33b44b53d21be453dc1efeeba0a00044b10a10', font: "heavy", size: "milli", color: "primary" }, this.chipResultsHeading)), this.chipResults[0].options ? (h("stzh-chipgroup", null, this.chipResults.map(chipResult => (h("stzh-dropdown", { label: chipResult.label, name: chipResult.value, variant: "filter", size: "large", "no-search": true, "hide-optional": true, inline: true, options: chipResult.options }))))) : (h("stzh-chipselect", { multiple: true, name: "subject", label: this.chipResultsHeading, "label-hidden": true, data: this.chipResults.map(chipResult => ({
|
|
487
487
|
label: chipResult.label,
|
|
488
488
|
value: chipResult.value,
|
|
489
489
|
counter: `${chipResult.amount}`,
|
|
490
490
|
variant: "filter",
|
|
491
491
|
size: "large",
|
|
492
|
-
})) }))))), filtersAsideUsed && (h(Fragment, { key: '
|
|
492
|
+
})) }))))), filtersAsideUsed && (h(Fragment, { key: '1e938d69826894e1f00db4bdf189cfc181b67528' }, h("div", { key: 'ee033287af4a255477cfbe6c11fbf8a30c2af70a', class: "stzh-search__filters-aside", onStzhChange: this.handleAsideFilterChange }, h("div", { key: '27b36d1cd4f29fd96d55a745ecf6145fb6970f22', class: "stzh-search__filters-aside-inner" }, h("div", { key: 'dba3aa7d51222754ef73ae0532f7250539b72055', class: "stzh-search__filters-aside-heading" }, this.localization.moreFilter), h("stzh-details", { key: 'ff178a227b0532d5e4fb3445dafdb055ccd73cfb', open: this.isDetailsOpen, class: "stzh-search__filters-aside-details" }, h("stzh-button", { key: 'aa8b9b8e3383f0945008718e93a8e5652ef2a16e', class: "stzh-search__filters-aside-details-trigger", variant: "tertiary-plain", size: "small", noPaddingLeft: true, showToggleIcon: true, iconPosition: "right", label: this.localization.moreFilter }), h("div", { key: '9d9b80907badc21a9ab5d2d719cea5946bc3f1f3', slot: "content" }, h("slot", { key: '46a40bf31144c3b275e83c9ddf521c558964d201', name: "filters-aside" }))))))), h("div", { key: 'a1591d55e780cee68706623694d4d7106ecd4081', class: "stzh-search__results-wrapper" }, resultsShown && (h(Fragment, { key: '93e73ede83d02d698a2ef390e6f0e67cd290c176' }, this.results.length === 0 ? (h(Fragment, null, this.variant !== "teaser" && this.resultsHeading && !this.hideResultsHeading && (h("stzh-heading", { class: "stzh-search__results-heading", curve: "h3", level: this.resultHeadingLevel, innerHTML: this.resultsHeading })), this.resultsText && this.renderResultsText(), this.subscribePath && this.renderSubscribeButton(), this.emptyText && (h("stzh-text", { class: "stzh-search__empty-text", innerHTML: this.emptyText })), this.emptyLinkLabel && this.emptyLinkHref && (h("div", { class: "stzh-search__empty-link-wrapper" }, h("stzh-link", { href: this.emptyLinkHref, label: this.emptyLinkLabel }))))) : (h(Fragment, null, h("div", { class: "stzh-search__results-header" }, this.variant !== "teaser" && this.resultsHeading && !this.hideResultsHeading && (h("stzh-heading", { class: "stzh-search__results-heading", curve: "h3", level: this.resultHeadingLevel, htmlContent: this.resultsHeading })), this._sortOptions.length > 0 && (h("div", { class: "stzh-search__results-sort" }, h("stzh-dropdown", { "hide-optional": true, inline: true, "no-search": true, "no-wrap": true, class: "stzh-search__results-sort-dropdown", variant: "plain", size: "small", sizeMedium: "tiny", name: "sortby", items: [this._sortBy], options: this._sortOptions, onStzhChange: this.onDropdownSortChange })))), this.resultsText && this.renderResultsText(), this.subscribePath && this.renderSubscribeButton(), h(WrapperElement, Object.assign({ class: "stzh-search__results", "max-3-columns": filtersAsideUsed }, wrapperProps), this.results.map(result => (h("div", { class: "stzh-search__results-item", innerHTML: result.html || "" })))), h("div", { class: "stzh-search__actions-wrapper" }, this._showMoreLink && (h("stzh-button", { variant: "secondary", class: "stzh-search__action-more", label: this.localization.showMore, onClick: this.handleMoreClick, disabled: this.loading, a11yDisabled: this.loading }))))))), this.error && (h("div", { key: '9a3cf689c0eaf9eb7e95c7fb20700fd030986c57', class: "stzh-search__error" }, h("stzh-message", { key: 'e5120f369f09bccae89de1339aadcf6a21249708', type: "error", label: this.error }))), this.loading && h("stzh-loader", { key: '32c0344dba4a4cb19b87561dcf0c3b23b5ef99cb', class: "stzh-search__loader" })), h("slot", { key: '1bcd9f0cc41e383f2383beb64fe0bbb3b15d72ad' }))));
|
|
493
493
|
}
|
|
494
494
|
static get is() { return "stzh-search"; }
|
|
495
495
|
static get originalStyleUrls() {
|