@oiz/stzh-components 3.8.0-beta1 → 3.8.0-beta2
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-02553278.js → app-globals-a393bc30.js} +2 -2
- package/dist/cjs/{app-globals-02553278.js.map → app-globals-a393bc30.js.map} +1 -1
- package/dist/cjs/{axios-69bcb71f.js → axios-bd44344d.js} +51 -96
- package/dist/cjs/axios-bd44344d.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/stzh-accordion_3.cjs.entry.js +2 -7
- package/dist/cjs/stzh-accordion_3.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-bathstatus-list.cjs.entry.js +1 -1
- package/dist/cjs/stzh-chipselect.cjs.entry.js +1 -1
- package/dist/cjs/stzh-chipselect.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-components.cjs.js +2 -2
- package/dist/cjs/stzh-contact.cjs.entry.js +2 -8
- package/dist/cjs/stzh-contact.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-datalist_2.cjs.entry.js +1 -1
- package/dist/cjs/stzh-datalist_2.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-eventdata.cjs.entry.js +1 -1
- package/dist/cjs/stzh-eventdata.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-geo-ref-data.cjs.entry.js +2 -2
- package/dist/cjs/stzh-geo-ref-data.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-microsite-teaserlist.cjs.entry.js +3 -2
- package/dist/cjs/stzh-microsite-teaserlist.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-poilist.cjs.entry.js +1 -1
- package/dist/cjs/stzh-progressbar.cjs.entry.js +23 -0
- package/dist/cjs/stzh-progressbar.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-search.cjs.entry.js +2 -2
- package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-upload.cjs.entry.js +20 -9
- package/dist/cjs/stzh-upload.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js +1 -1
- package/dist/cjs/stzh-vbz-ticker.cjs.entry.js +1 -1
- package/dist/collection/assets/i18n/de.json +9 -5
- package/dist/collection/assets/i18n/en.json +9 -5
- package/dist/collection/components/stzh-accordion/stzh-accordion.e2e.js +1 -0
- package/dist/collection/components/stzh-accordion/stzh-accordion.e2e.js.map +1 -1
- package/dist/collection/components/stzh-accordion/stzh-accordion.stories.js +86 -0
- package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.js +2 -7
- package/dist/collection/components/stzh-accordion-item/stzh-accordion-item.js.map +1 -1
- package/dist/collection/components/stzh-button/stzh-button.e2e.js +6 -3
- package/dist/collection/components/stzh-button/stzh-button.e2e.js.map +1 -1
- package/dist/collection/components/stzh-button/stzh-button.stories.js +200 -15
- package/dist/collection/components/stzh-chip/stzh-chip.stories.js +11 -0
- package/dist/collection/components/stzh-chipselect/stzh-chipselect.css +1 -6
- package/dist/collection/components/stzh-contact/stzh-contact.css +8 -0
- package/dist/collection/components/stzh-contact/stzh-contact.js +1 -7
- package/dist/collection/components/stzh-contact/stzh-contact.js.map +1 -1
- package/dist/collection/components/stzh-datalist/stzh-datalist.e2e.js +1 -0
- package/dist/collection/components/stzh-datalist/stzh-datalist.e2e.js.map +1 -1
- package/dist/collection/components/stzh-datalist/stzh-datalist.stories.js +32 -0
- package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.css +2 -1
- package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +8 -1
- package/dist/collection/components/stzh-dropdown/stzh-dropdown.stories.js +107 -5
- package/dist/collection/components/stzh-eventdata/stzh-eventdata.css +0 -5
- package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.js +2 -2
- package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.js.map +1 -1
- package/dist/collection/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.js +3 -2
- package/dist/collection/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.js.map +1 -1
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js +27 -2
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js.map +1 -1
- package/dist/collection/components/stzh-search/stzh-search.js +1 -1
- package/dist/collection/components/stzh-search/stzh-search.js.map +1 -1
- package/dist/collection/components/stzh-search/stzh-search.stories.js +51 -83
- package/dist/collection/components/stzh-skiplink/stzh-skiplink.stories.js +0 -1
- package/dist/collection/components/stzh-upload/models/stzh-photographing-url-details.dto.js.map +1 -1
- package/dist/collection/components/stzh-upload/stzh-upload.css +5 -0
- package/dist/collection/components/stzh-upload/stzh-upload.js +23 -9
- package/dist/collection/components/stzh-upload/stzh-upload.js.map +1 -1
- package/dist/collection/components/stzh-upload/stzh-upload.localization.js.map +1 -1
- package/dist/collection/components/stzh-upload/stzh-upload.stories.js +3 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{p-16892790.js → p-345a1e99.js} +51 -96
- package/dist/components/p-345a1e99.js.map +1 -0
- package/dist/components/{p-82c163e4.js → p-47601c6a.js} +2 -2
- package/dist/components/{p-82c163e4.js.map → p-47601c6a.js.map} +1 -1
- package/dist/components/{p-ed75de26.js → p-4fec83e3.js} +2 -2
- package/dist/components/{p-ed75de26.js.map → p-4fec83e3.js.map} +1 -1
- package/dist/components/{p-3890d846.js → p-5efa3e34.js} +2 -2
- package/dist/components/p-5efa3e34.js.map +1 -0
- package/dist/components/{p-2a870524.js → p-6c754f8f.js} +3 -8
- package/dist/components/p-6c754f8f.js.map +1 -0
- package/dist/components/{p-3aefa2e3.js → p-6e8c91f8.js} +3 -3
- package/dist/components/{p-3aefa2e3.js.map → p-6e8c91f8.js.map} +1 -1
- package/dist/components/{p-c9ddf923.js → p-8ed7a61b.js} +2 -2
- package/dist/components/{p-c9ddf923.js.map → p-8ed7a61b.js.map} +1 -1
- package/dist/components/{p-e0e4416e.js → p-ebbe78de.js} +2 -2
- package/dist/components/p-ebbe78de.js.map +1 -0
- package/dist/components/stzh-accordion-item.js +1 -1
- package/dist/components/stzh-amount.js +1 -1
- package/dist/components/stzh-appointments.js +3 -3
- package/dist/components/stzh-bathstatus-list.js +1 -1
- package/dist/components/stzh-calendar.js +1 -1
- package/dist/components/stzh-card-searchresult.js +2 -2
- package/dist/components/stzh-card-superteaser.js +2 -2
- package/dist/components/stzh-chipselect.js +1 -1
- package/dist/components/stzh-contact.js +2 -8
- package/dist/components/stzh-contact.js.map +1 -1
- package/dist/components/stzh-datalist-item.js +1 -1
- package/dist/components/stzh-datalist.js +1 -1
- package/dist/components/stzh-datatable.js +4 -4
- package/dist/components/stzh-datepicker.js +1 -1
- package/dist/components/stzh-dropdown.js +1 -1
- package/dist/components/stzh-eventdata.js +1 -1
- package/dist/components/stzh-eventdata.js.map +1 -1
- package/dist/components/stzh-geo-ref-data.js +3 -3
- package/dist/components/stzh-geo-ref-data.js.map +1 -1
- package/dist/components/stzh-microsite-teaserlist.js +4 -3
- package/dist/components/stzh-microsite-teaserlist.js.map +1 -1
- package/dist/components/stzh-monthyearpicker.js +1 -1
- package/dist/components/stzh-panorama.js +1 -1
- package/dist/components/stzh-poilist.js +2 -2
- package/dist/components/stzh-progressbar.js +26 -2
- package/dist/components/stzh-progressbar.js.map +1 -1
- package/dist/components/stzh-search.js +4 -4
- package/dist/components/stzh-search.js.map +1 -1
- package/dist/components/stzh-sitemap.js +2 -2
- package/dist/components/stzh-timepicker.js +1 -1
- package/dist/components/stzh-upload.js +23 -9
- package/dist/components/stzh-upload.js.map +1 -1
- package/dist/components/stzh-vbz-majorticker.js +1 -1
- package/dist/components/stzh-vbz-ticker.js +1 -1
- package/dist/esm/{app-globals-30dc1fec.js → app-globals-6ab4a484.js} +2 -2
- package/dist/esm/{app-globals-30dc1fec.js.map → app-globals-6ab4a484.js.map} +1 -1
- package/dist/esm/{axios-e0a35239.js → axios-0cc95004.js} +51 -96
- package/dist/esm/axios-0cc95004.js.map +1 -0
- package/dist/esm/loader.js +2 -2
- package/dist/esm/stzh-accordion_3.entry.js +2 -7
- package/dist/esm/stzh-accordion_3.entry.js.map +1 -1
- package/dist/esm/stzh-bathstatus-list.entry.js +1 -1
- package/dist/esm/stzh-chipselect.entry.js +1 -1
- package/dist/esm/stzh-chipselect.entry.js.map +1 -1
- package/dist/esm/stzh-components.js +2 -2
- package/dist/esm/stzh-contact.entry.js +2 -8
- package/dist/esm/stzh-contact.entry.js.map +1 -1
- package/dist/esm/stzh-datalist_2.entry.js +1 -1
- package/dist/esm/stzh-datalist_2.entry.js.map +1 -1
- package/dist/esm/stzh-dropdown.entry.js +1 -1
- package/dist/esm/stzh-dropdown.entry.js.map +1 -1
- package/dist/esm/stzh-eventdata.entry.js +1 -1
- package/dist/esm/stzh-eventdata.entry.js.map +1 -1
- package/dist/esm/stzh-geo-ref-data.entry.js +2 -2
- package/dist/esm/stzh-geo-ref-data.entry.js.map +1 -1
- package/dist/esm/stzh-microsite-teaserlist.entry.js +3 -2
- package/dist/esm/stzh-microsite-teaserlist.entry.js.map +1 -1
- package/dist/esm/stzh-poilist.entry.js +1 -1
- package/dist/esm/stzh-progressbar.entry.js +24 -1
- package/dist/esm/stzh-progressbar.entry.js.map +1 -1
- package/dist/esm/stzh-search.entry.js +2 -2
- package/dist/esm/stzh-search.entry.js.map +1 -1
- package/dist/esm/stzh-upload.entry.js +20 -9
- package/dist/esm/stzh-upload.entry.js.map +1 -1
- package/dist/esm/stzh-vbz-majorticker.entry.js +1 -1
- package/dist/esm/stzh-vbz-ticker.entry.js +1 -1
- package/dist/stzh-components/assets/i18n/de.json +9 -5
- package/dist/stzh-components/assets/i18n/en.json +9 -5
- package/dist/stzh-components/p-129faf7d.entry.js +2 -0
- package/dist/stzh-components/p-129faf7d.entry.js.map +1 -0
- package/dist/stzh-components/{p-68dee00d.entry.js → p-23678dfc.entry.js} +2 -2
- package/dist/stzh-components/{p-68dee00d.entry.js.map → p-23678dfc.entry.js.map} +1 -1
- package/dist/stzh-components/p-345a1e99.js +2 -0
- package/dist/stzh-components/p-345a1e99.js.map +1 -0
- package/dist/stzh-components/{p-e5a451a0.entry.js → p-646958e0.entry.js} +2 -2
- package/dist/stzh-components/{p-ef38e1fe.entry.js → p-6f9626d1.entry.js} +2 -2
- package/dist/stzh-components/p-6f9626d1.entry.js.map +1 -0
- package/dist/stzh-components/{p-64ba89a2.js → p-7036f004.js} +2 -2
- package/dist/stzh-components/{p-8aab9098.entry.js → p-7c5e34db.entry.js} +2 -2
- package/dist/stzh-components/{p-b2986e24.entry.js → p-809076ff.entry.js} +2 -2
- package/dist/stzh-components/{p-5bafa548.entry.js → p-84f8307b.entry.js} +2 -2
- package/dist/stzh-components/p-84f8307b.entry.js.map +1 -0
- package/dist/stzh-components/{p-7b2bd184.entry.js → p-8856651e.entry.js} +2 -2
- package/dist/stzh-components/{p-7b2bd184.entry.js.map → p-8856651e.entry.js.map} +1 -1
- package/dist/stzh-components/p-8c5fb0e2.entry.js +2 -0
- package/dist/stzh-components/{p-f156650a.entry.js.map → p-8c5fb0e2.entry.js.map} +1 -1
- package/dist/stzh-components/{p-025a5c2e.entry.js → p-a47a14ef.entry.js} +2 -2
- package/dist/stzh-components/p-a47a14ef.entry.js.map +1 -0
- package/dist/stzh-components/p-a71fafbd.entry.js +2 -0
- package/dist/stzh-components/p-a71fafbd.entry.js.map +1 -0
- package/dist/stzh-components/{p-b25e8b20.entry.js → p-c83239a9.entry.js} +2 -2
- package/dist/stzh-components/p-c83239a9.entry.js.map +1 -0
- package/dist/stzh-components/{p-6f0cf6e3.entry.js → p-d97fbf1f.entry.js} +2 -2
- package/dist/stzh-components/p-fa4595c8.entry.js +2 -0
- package/dist/stzh-components/p-fa4595c8.entry.js.map +1 -0
- package/dist/stzh-components/p-fcc75797.entry.js +2 -0
- package/dist/stzh-components/p-fcc75797.entry.js.map +1 -0
- 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/stzh-accordion-item/stzh-accordion-item.d.ts +0 -1
- package/dist/types/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.d.ts +2 -2
- package/dist/types/components/stzh-progressbar/stzh-progressbar.d.ts +4 -0
- package/dist/types/components/stzh-upload/models/stzh-photographing-url-details.dto.d.ts +1 -0
- package/dist/types/components/stzh-upload/stzh-upload.d.ts +3 -0
- package/dist/types/components/stzh-upload/stzh-upload.localization.d.ts +2 -0
- package/package.json +9 -5
- package/dist/cjs/axios-69bcb71f.js.map +0 -1
- package/dist/components/p-16892790.js.map +0 -1
- package/dist/components/p-2a870524.js.map +0 -1
- package/dist/components/p-3890d846.js.map +0 -1
- package/dist/components/p-e0e4416e.js.map +0 -1
- package/dist/esm/axios-e0a35239.js.map +0 -1
- package/dist/stzh-components/p-025a5c2e.entry.js.map +0 -1
- package/dist/stzh-components/p-11abc40a.entry.js +0 -2
- package/dist/stzh-components/p-11abc40a.entry.js.map +0 -1
- package/dist/stzh-components/p-16892790.js +0 -2
- package/dist/stzh-components/p-16892790.js.map +0 -1
- package/dist/stzh-components/p-5ac0220a.entry.js +0 -2
- package/dist/stzh-components/p-5ac0220a.entry.js.map +0 -1
- package/dist/stzh-components/p-5bafa548.entry.js.map +0 -1
- package/dist/stzh-components/p-95427be2.entry.js +0 -2
- package/dist/stzh-components/p-95427be2.entry.js.map +0 -1
- package/dist/stzh-components/p-973c5df2.entry.js +0 -2
- package/dist/stzh-components/p-973c5df2.entry.js.map +0 -1
- package/dist/stzh-components/p-b25e8b20.entry.js.map +0 -1
- package/dist/stzh-components/p-ef38e1fe.entry.js.map +0 -1
- package/dist/stzh-components/p-f156650a.entry.js +0 -2
- /package/dist/stzh-components/{p-e5a451a0.entry.js.map → p-646958e0.entry.js.map} +0 -0
- /package/dist/stzh-components/{p-64ba89a2.js.map → p-7036f004.js.map} +0 -0
- /package/dist/stzh-components/{p-8aab9098.entry.js.map → p-7c5e34db.entry.js.map} +0 -0
- /package/dist/stzh-components/{p-b2986e24.entry.js.map → p-809076ff.entry.js.map} +0 -0
- /package/dist/stzh-components/{p-6f0cf6e3.entry.js.map → p-d97fbf1f.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-search.js","sourceRoot":"","sources":["../../../../src/components/stzh-search/stzh-search.tsx"],"names":[],"mappings":"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","sourcesContent":["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 \"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 ([\"meta\", \"breadcrumbItems\", \"downloadMeta\", \"datalistItems\"].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 ([\"variant\", \"limit\"].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 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: \"small\",\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"]}
|
|
1
|
+
{"version":3,"file":"stzh-search.js","sourceRoot":"","sources":["../../../../src/components/stzh-search/stzh-search.tsx"],"names":[],"mappings":"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","sourcesContent":["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 \"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 ([\"meta\", \"breadcrumbItems\", \"downloadMeta\", \"datalistItems\"].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 ([\"variant\", \"limit\"].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: \"small\",\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"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import readme from
|
|
1
|
+
import {createComponentStory} from "../../utils/story-utils";
|
|
2
|
+
import {withActions} from "@storybook/addon-actions/decorator";
|
|
3
|
+
import readme from "./readme.md?raw";
|
|
4
4
|
|
|
5
|
-
import {
|
|
5
|
+
import {getFigmaLink} from "../../../figma";
|
|
6
6
|
|
|
7
|
-
const COMPONENT_NAME =
|
|
7
|
+
const COMPONENT_NAME = "stzh-search";
|
|
8
8
|
const story = createComponentStory(COMPONENT_NAME);
|
|
9
9
|
|
|
10
10
|
const TEMPLATE_ONSITE = `
|
|
@@ -25,7 +25,7 @@ const TEMPLATE_ONSITE = `
|
|
|
25
25
|
"variant": "filter",
|
|
26
26
|
"type": "secondary",
|
|
27
27
|
"counter": "5",
|
|
28
|
-
"size": "
|
|
28
|
+
"size": "large"
|
|
29
29
|
},
|
|
30
30
|
{
|
|
31
31
|
"label": "Lorem",
|
|
@@ -33,7 +33,7 @@ const TEMPLATE_ONSITE = `
|
|
|
33
33
|
"variant": "filter",
|
|
34
34
|
"type": "secondary",
|
|
35
35
|
"counter": "2",
|
|
36
|
-
"size": "
|
|
36
|
+
"size": "large"
|
|
37
37
|
},
|
|
38
38
|
{
|
|
39
39
|
"label": "Ipsum",
|
|
@@ -41,7 +41,7 @@ const TEMPLATE_ONSITE = `
|
|
|
41
41
|
"variant": "filter",
|
|
42
42
|
"type": "secondary",
|
|
43
43
|
"counter": "3",
|
|
44
|
-
"size": "
|
|
44
|
+
"size": "large"
|
|
45
45
|
}
|
|
46
46
|
]'
|
|
47
47
|
></stzh-chipselect>
|
|
@@ -135,21 +135,21 @@ const TEMPLATE_WITH_ASIDE = `
|
|
|
135
135
|
"value": "",
|
|
136
136
|
"variant": "filter",
|
|
137
137
|
"type": "secondary",
|
|
138
|
-
"size": "
|
|
138
|
+
"size": "large"
|
|
139
139
|
},
|
|
140
140
|
{
|
|
141
141
|
"label": "Lorem",
|
|
142
142
|
"value": "lorem",
|
|
143
143
|
"variant": "filter",
|
|
144
144
|
"type": "secondary",
|
|
145
|
-
"size": "
|
|
145
|
+
"size": "large"
|
|
146
146
|
},
|
|
147
147
|
{
|
|
148
148
|
"label": "Ipsum",
|
|
149
149
|
"value": "ipsum",
|
|
150
150
|
"variant": "filter",
|
|
151
151
|
"type": "secondary",
|
|
152
|
-
"size": "
|
|
152
|
+
"size": "large"
|
|
153
153
|
}
|
|
154
154
|
]'
|
|
155
155
|
></stzh-chipselect>
|
|
@@ -186,6 +186,7 @@ const TEMPLATE_SUPERTEASER = `
|
|
|
186
186
|
label="Lorem"
|
|
187
187
|
name="filter1"
|
|
188
188
|
variant="filter"
|
|
189
|
+
size="large"
|
|
189
190
|
no-search
|
|
190
191
|
hide-optional
|
|
191
192
|
inline
|
|
@@ -203,6 +204,7 @@ const TEMPLATE_SUPERTEASER = `
|
|
|
203
204
|
variant="filter"
|
|
204
205
|
no-search
|
|
205
206
|
hide-optional
|
|
207
|
+
size="large"
|
|
206
208
|
inline
|
|
207
209
|
options='[
|
|
208
210
|
{ "text": "Lorem Ipsum", "value": "1" },
|
|
@@ -217,6 +219,7 @@ const TEMPLATE_SUPERTEASER = `
|
|
|
217
219
|
name="filter3"
|
|
218
220
|
variant="filter"
|
|
219
221
|
no-search
|
|
222
|
+
size="large"
|
|
220
223
|
hide-optional
|
|
221
224
|
inline
|
|
222
225
|
options='[
|
|
@@ -294,54 +297,19 @@ const TEMPLATE_SUPERTEASER_WITH_PROVIDED_CHIPS = `
|
|
|
294
297
|
</stzh-search>
|
|
295
298
|
`;
|
|
296
299
|
|
|
297
|
-
{
|
|
298
|
-
/* <stzh-chipselect
|
|
299
|
-
multiple
|
|
300
|
-
name="subject"
|
|
301
|
-
label="Test"
|
|
302
|
-
label-hidden
|
|
303
|
-
data='[
|
|
304
|
-
{
|
|
305
|
-
"label": "All",
|
|
306
|
-
"value": "",
|
|
307
|
-
"variant": "filter",
|
|
308
|
-
"type": "secondary",
|
|
309
|
-
"counter": "5",
|
|
310
|
-
"size": "small"
|
|
311
|
-
},
|
|
312
|
-
{
|
|
313
|
-
"label": "Lorem",
|
|
314
|
-
"value": "lorem",
|
|
315
|
-
"variant": "filter",
|
|
316
|
-
"type": "secondary",
|
|
317
|
-
"counter": "2",
|
|
318
|
-
"size": "small"
|
|
319
|
-
},
|
|
320
|
-
{
|
|
321
|
-
"label": "Ipsum",
|
|
322
|
-
"value": "ipsum",
|
|
323
|
-
"variant": "filter",
|
|
324
|
-
"type": "secondary",
|
|
325
|
-
"counter": "3",
|
|
326
|
-
"size": "small"
|
|
327
|
-
}
|
|
328
|
-
]'
|
|
329
|
-
></stzh-chipselect> */
|
|
330
|
-
}
|
|
331
|
-
|
|
332
300
|
export default {
|
|
333
|
-
title:
|
|
301
|
+
title: "Components/Search",
|
|
334
302
|
component: COMPONENT_NAME,
|
|
335
303
|
parameters: {
|
|
336
|
-
layout:
|
|
304
|
+
layout: "padded",
|
|
337
305
|
docs: {
|
|
338
306
|
description: {
|
|
339
307
|
component: readme,
|
|
340
308
|
},
|
|
341
309
|
},
|
|
342
310
|
design: {
|
|
343
|
-
type:
|
|
344
|
-
url: getFigmaLink(
|
|
311
|
+
type: "figma",
|
|
312
|
+
url: getFigmaLink("search"),
|
|
345
313
|
allowFullscreen: true,
|
|
346
314
|
},
|
|
347
315
|
},
|
|
@@ -351,91 +319,91 @@ export default {
|
|
|
351
319
|
export const Onsite = {
|
|
352
320
|
render: (args) => story(args, TEMPLATE_ONSITE),
|
|
353
321
|
args: {
|
|
354
|
-
api:
|
|
355
|
-
|
|
356
|
-
|
|
322
|
+
api: "mock/search.json",
|
|
323
|
+
"autofetch-main-filters": true,
|
|
324
|
+
"sort-options": [
|
|
357
325
|
{
|
|
358
|
-
text:
|
|
359
|
-
value:
|
|
326
|
+
text: "nach Datum",
|
|
327
|
+
value: "date",
|
|
360
328
|
},
|
|
361
329
|
{
|
|
362
|
-
text:
|
|
363
|
-
value:
|
|
330
|
+
text: "nach Titel",
|
|
331
|
+
value: "title",
|
|
364
332
|
},
|
|
365
333
|
],
|
|
366
|
-
|
|
334
|
+
"sort-by": "date",
|
|
367
335
|
},
|
|
368
336
|
};
|
|
369
337
|
|
|
370
338
|
export const OnsiteWithChipResults = {
|
|
371
339
|
render: (args) => story(args, TEMPLATE_ONSITE_WITH_CHIP_RESULTS),
|
|
372
340
|
args: {
|
|
373
|
-
api:
|
|
374
|
-
|
|
341
|
+
api: "mock/search.json",
|
|
342
|
+
"autofetch-main-filters": true,
|
|
375
343
|
},
|
|
376
344
|
};
|
|
377
345
|
|
|
378
346
|
export const EmptyResults = {
|
|
379
347
|
render: (args) => story(args, TEMPLATE_ONSITE),
|
|
380
348
|
args: {
|
|
381
|
-
api:
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
349
|
+
api: "mock/search-empty.json",
|
|
350
|
+
"autofetch-main-filters": true,
|
|
351
|
+
"empty-text": "Sorry, we couldn't find what you are looking for.",
|
|
352
|
+
"empty-link-href": "https://stadt-zuerich.ch",
|
|
353
|
+
"empty-link-label": "Lorem ipsum",
|
|
386
354
|
},
|
|
387
355
|
};
|
|
388
356
|
|
|
389
357
|
export const Error = {
|
|
390
358
|
render: (args) => story(args, TEMPLATE_ONSITE),
|
|
391
359
|
args: {
|
|
392
|
-
api:
|
|
393
|
-
|
|
360
|
+
api: "mock/search-error.json",
|
|
361
|
+
"autofetch-main-filters": true,
|
|
394
362
|
},
|
|
395
363
|
};
|
|
396
364
|
|
|
397
365
|
export const WithAside = {
|
|
398
366
|
render: (args) => story(args, TEMPLATE_WITH_ASIDE),
|
|
399
367
|
args: {
|
|
400
|
-
api:
|
|
401
|
-
|
|
368
|
+
api: "mock/search.json",
|
|
369
|
+
"autofetch-aside-filters": true,
|
|
402
370
|
},
|
|
403
371
|
};
|
|
404
372
|
|
|
405
373
|
export const SuperTeaser = {
|
|
406
374
|
render: (args) => story(args, TEMPLATE_SUPERTEASER),
|
|
407
375
|
args: {
|
|
408
|
-
api:
|
|
409
|
-
variant:
|
|
410
|
-
|
|
411
|
-
|
|
376
|
+
api: "mock/search-superteaser.json",
|
|
377
|
+
variant: "teaser",
|
|
378
|
+
"autofetch-main-filters": true,
|
|
379
|
+
"initial-fetch": true,
|
|
412
380
|
},
|
|
413
381
|
};
|
|
414
382
|
|
|
415
383
|
export const SuperTeaserWithChipResults = {
|
|
416
384
|
render: (args) => story(args, TEMPLATE_SUPERTEASER_WITH_CHIP_RESULTS),
|
|
417
385
|
args: {
|
|
418
|
-
api:
|
|
419
|
-
variant:
|
|
420
|
-
|
|
421
|
-
|
|
386
|
+
api: "mock/search-superteaser.json",
|
|
387
|
+
variant: "teaser",
|
|
388
|
+
"autofetch-main-filters": true,
|
|
389
|
+
"initial-fetch": true,
|
|
422
390
|
},
|
|
423
391
|
};
|
|
424
392
|
|
|
425
393
|
export const CustomResultTemplate = {
|
|
426
394
|
render: (args) => story(args, TEMPLATE_ONSITE),
|
|
427
395
|
args: {
|
|
428
|
-
api:
|
|
429
|
-
|
|
430
|
-
|
|
396
|
+
api: "mock/search.json",
|
|
397
|
+
"template-result": "<stzh-datalist-item href=\"{href}\" label=\"Label\" value=\"{heading}\"></stzh-datalist-item>",
|
|
398
|
+
"template-result-wrapper-element": "stzh-datalist",
|
|
431
399
|
},
|
|
432
400
|
};
|
|
433
401
|
|
|
434
402
|
export const CustomResultTemplateWithAside = {
|
|
435
403
|
render: (args) => story(args, TEMPLATE_WITH_ASIDE),
|
|
436
404
|
args: {
|
|
437
|
-
api:
|
|
438
|
-
|
|
439
|
-
|
|
405
|
+
api: "mock/search.json",
|
|
406
|
+
"template-result": "<stzh-datalist-item href=\"{href}\" label=\"Label\" value=\"{heading}\"></stzh-datalist-item>",
|
|
407
|
+
"template-result-wrapper-element": "stzh-datalist",
|
|
440
408
|
},
|
|
441
409
|
};
|
package/dist/collection/components/stzh-upload/models/stzh-photographing-url-details.dto.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-photographing-url-details.dto.js","sourceRoot":"","sources":["../../../../../src/components/stzh-upload/models/stzh-photographing-url-details.dto.ts"],"names":[],"mappings":"","sourcesContent":["export interface StzhPhotographingUrlDetailsDto {\n url: string;\n userId?: string;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"stzh-photographing-url-details.dto.js","sourceRoot":"","sources":["../../../../../src/components/stzh-upload/models/stzh-photographing-url-details.dto.ts"],"names":[],"mappings":"","sourcesContent":["export interface StzhPhotographingUrlDetailsDto {\n url: string;\n userId?: string;\n label?: string;\n}\n"]}
|
|
@@ -730,6 +730,11 @@ stzh-upload[disabled]:not([disabled=false]) {
|
|
|
730
730
|
margin-top: var(--stzh-space-large);
|
|
731
731
|
}
|
|
732
732
|
}
|
|
733
|
+
.stzh-upload-photographing__continue {
|
|
734
|
+
display: flex;
|
|
735
|
+
justify-content: flex-end;
|
|
736
|
+
gap: var(--stzh-space-large);
|
|
737
|
+
}
|
|
733
738
|
.stzh-upload-photographing__back-button {
|
|
734
739
|
margin-bottom: var(--stzh-space-medium);
|
|
735
740
|
}
|