@oiz/stzh-components 3.4.0-beta1 → 3.4.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-1074eba6.js → app-globals-d9805497.js} +2 -2
- package/dist/cjs/{app-globals-1074eba6.js.map → app-globals-d9805497.js.map} +1 -1
- package/dist/cjs/index-92254d32.js +40 -16
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/stzh-actions.cjs.entry.js +10 -8
- package/dist/cjs/stzh-actions.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-archivelist.cjs.entry.js +6 -16
- package/dist/cjs/stzh-archivelist.cjs.entry.js.map +1 -1
- package/dist/cjs/{stzh-card_2.cjs.entry.js → stzh-card.cjs.entry.js} +55 -143
- package/dist/cjs/stzh-card.cjs.entry.js.map +1 -0
- package/dist/cjs/{stzh-sortable.cjs.entry.js → stzh-cardlist_2.cjs.entry.js} +92 -1
- package/dist/cjs/stzh-cardlist_2.cjs.entry.js.map +1 -0
- package/dist/cjs/{stzh-checkbox_4.cjs.entry.js → stzh-checkbox_3.cjs.entry.js} +4 -91
- package/dist/cjs/stzh-checkbox_3.cjs.entry.js.map +1 -0
- package/dist/cjs/{stzh-chip_2.cjs.entry.js → stzh-chip.cjs.entry.js} +1 -215
- package/dist/cjs/stzh-chip.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-chipgroup.cjs.entry.js +25 -0
- package/dist/cjs/stzh-chipgroup.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-chipselect.cjs.entry.js +234 -0
- package/dist/cjs/stzh-chipselect.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-components.cjs.js +2 -2
- package/dist/cjs/stzh-dropdown.cjs.entry.js +53 -55
- package/dist/cjs/stzh-dropdown.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-fieldset.cjs.entry.js +1 -1
- package/dist/cjs/stzh-fieldset.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-geo-ref-data.cjs.entry.js +98 -41
- package/dist/cjs/stzh-geo-ref-data.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-input.cjs.entry.js +6 -2
- package/dist/cjs/stzh-input.cjs.entry.js.map +1 -1
- package/dist/cjs/{stzh-chipgroup_2.cjs.entry.js → stzh-message.cjs.entry.js} +1 -18
- package/dist/cjs/stzh-message.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-overlay.cjs.entry.js +97 -0
- package/dist/cjs/stzh-overlay.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-pi-teaser.cjs.entry.js +1 -1
- package/dist/cjs/stzh-pi-teaser.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-poicard.cjs.entry.js +52 -0
- package/dist/cjs/stzh-poicard.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-poilist.cjs.entry.js +122 -0
- package/dist/cjs/stzh-poilist.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-popover.cjs.entry.js +445 -0
- package/dist/cjs/stzh-popover.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-saptcha.cjs.entry.js +10 -9
- package/dist/cjs/stzh-saptcha.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-search.cjs.entry.js +52 -3
- package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-section.cjs.entry.js +1 -1
- package/dist/cjs/stzh-section.cjs.entry.js.map +1 -1
- package/dist/cjs/{stzh-popover_2.cjs.entry.js → stzh-text.cjs.entry.js} +1 -438
- package/dist/cjs/stzh-text.cjs.entry.js.map +1 -0
- package/dist/cjs/stzh-vbz-connection-finder.cjs.entry.js +1 -1
- package/dist/cjs/stzh-vbz-connection-finder.cjs.entry.js.map +1 -1
- package/dist/collection/assets/i18n/de.json +9 -0
- package/dist/collection/assets/i18n/en.json +9 -0
- package/dist/collection/collection-manifest.json +2 -0
- package/dist/collection/components/stzh-actions/stzh-actions.css +27 -0
- package/dist/collection/components/stzh-actions/stzh-actions.js +30 -10
- package/dist/collection/components/stzh-actions/stzh-actions.js.map +1 -1
- package/dist/collection/components/stzh-archivelist/stzh-archivelist.css +3 -0
- package/dist/collection/components/stzh-archivelist/stzh-archivelist.js +42 -16
- package/dist/collection/components/stzh-archivelist/stzh-archivelist.js.map +1 -1
- package/dist/collection/components/stzh-archivelist/stzh-archivelist.stories.js +109 -102
- package/dist/collection/components/stzh-card/stzh-card.css +5 -0
- package/dist/collection/components/stzh-card/stzh-card.js +72 -51
- package/dist/collection/components/stzh-card/stzh-card.js.map +1 -1
- package/dist/collection/components/stzh-cardlist/stzh-cardlist.css +5 -0
- package/dist/collection/components/stzh-chipselect/stzh-chipselect.css +8 -8
- package/dist/collection/components/stzh-chipselect/stzh-chipselect.js +13 -1
- package/dist/collection/components/stzh-chipselect/stzh-chipselect.js.map +1 -1
- package/dist/collection/components/stzh-dropdown/stzh-dropdown.css +11 -1
- package/dist/collection/components/stzh-dropdown/stzh-dropdown.js +89 -55
- package/dist/collection/components/stzh-dropdown/stzh-dropdown.js.map +1 -1
- package/dist/collection/components/stzh-fieldset/stzh-fieldset.css +120 -0
- package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.css +2 -0
- package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.js +156 -51
- package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.js.map +1 -1
- package/dist/collection/components/stzh-geo-ref-data/stzh-geo-ref-data.stories.js +64 -63
- package/dist/collection/components/stzh-input/stzh-input.css +6 -0
- package/dist/collection/components/stzh-input/stzh-input.js +23 -1
- package/dist/collection/components/stzh-input/stzh-input.js.map +1 -1
- package/dist/collection/components/stzh-pi-teaser/stzh-pi-teaser.css +18 -3
- package/dist/collection/components/stzh-pi-teaser/stzh-pi-teaser.stories.js +30 -29
- package/dist/collection/components/stzh-poicard/stzh-poicard.css +231 -0
- package/dist/collection/components/stzh-poicard/stzh-poicard.e2e.js +16 -0
- package/dist/collection/components/stzh-poicard/stzh-poicard.e2e.js.map +1 -0
- package/dist/collection/components/stzh-poicard/stzh-poicard.js +86 -0
- package/dist/collection/components/stzh-poicard/stzh-poicard.js.map +1 -0
- package/dist/collection/components/stzh-poicard/stzh-poicard.stories.js +117 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.css +210 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.e2e.js +16 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.e2e.js.map +1 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.js +181 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.js.map +1 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.localization.js +2 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.localization.js.map +1 -0
- package/dist/collection/components/stzh-poilist/stzh-poilist.stories.js +31 -0
- package/dist/collection/components/stzh-richtext/stzh-richtext.stories.js +31 -16
- package/dist/collection/components/stzh-saptcha/stzh-saptcha.js +34 -17
- package/dist/collection/components/stzh-saptcha/stzh-saptcha.js.map +1 -1
- package/dist/collection/components/stzh-saptcha/stzh-saptcha.stories.js +3 -0
- package/dist/collection/components/stzh-search/stzh-search.css +4 -4
- package/dist/collection/components/stzh-search/stzh-search.js +122 -2
- package/dist/collection/components/stzh-search/stzh-search.js.map +1 -1
- package/dist/collection/components/stzh-section/stzh-section.css +19 -6
- package/dist/collection/components/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js +1 -1
- package/dist/collection/components/stzh-vbz-connection-finder/stzh-vbz-connection-finder.js.map +1 -1
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/pages/jobsearch/jobsearch.e2e.js +16 -0
- package/dist/collection/pages/jobsearch/jobsearch.e2e.js.map +1 -0
- package/dist/components/index.js +1 -1
- package/dist/components/index2.js.map +1 -1
- package/dist/components/stzh-actions.js +12 -9
- package/dist/components/stzh-actions.js.map +1 -1
- package/dist/components/stzh-archivelist.js +20 -22
- package/dist/components/stzh-archivelist.js.map +1 -1
- package/dist/components/stzh-card2.js +55 -51
- package/dist/components/stzh-card2.js.map +1 -1
- package/dist/components/stzh-cardlist2.js +1 -1
- package/dist/components/stzh-cardlist2.js.map +1 -1
- package/dist/components/stzh-chipselect2.js +14 -2
- package/dist/components/stzh-chipselect2.js.map +1 -1
- package/dist/components/stzh-dropdown2.js +55 -55
- package/dist/components/stzh-dropdown2.js.map +1 -1
- package/dist/components/stzh-fieldset.js +1 -1
- package/dist/components/stzh-fieldset.js.map +1 -1
- package/dist/components/stzh-geo-ref-data.js +109 -45
- package/dist/components/stzh-geo-ref-data.js.map +1 -1
- package/dist/components/stzh-input2.js +7 -2
- package/dist/components/stzh-input2.js.map +1 -1
- package/dist/components/stzh-pi-teaser.js +1 -1
- package/dist/components/stzh-pi-teaser.js.map +1 -1
- package/dist/components/stzh-poicard.d.ts +11 -0
- package/dist/components/stzh-poicard.js +8 -0
- package/dist/components/stzh-poicard.js.map +1 -0
- package/dist/components/stzh-poicard2.js +108 -0
- package/dist/components/stzh-poicard2.js.map +1 -0
- package/dist/components/stzh-poilist.d.ts +11 -0
- package/dist/components/stzh-poilist.js +246 -0
- package/dist/components/stzh-poilist.js.map +1 -0
- package/dist/components/stzh-saptcha.js +13 -14
- package/dist/components/stzh-saptcha.js.map +1 -1
- package/dist/components/stzh-search.js +57 -3
- package/dist/components/stzh-search.js.map +1 -1
- package/dist/components/stzh-section.js +1 -1
- package/dist/components/stzh-section.js.map +1 -1
- package/dist/components/stzh-vbz-connection-finder.js +1 -1
- package/dist/components/stzh-vbz-connection-finder.js.map +1 -1
- package/dist/esm/{app-globals-fbb949bd.js → app-globals-ca13b6e3.js} +2 -2
- package/dist/esm/{app-globals-fbb949bd.js.map → app-globals-ca13b6e3.js.map} +1 -1
- package/dist/esm/index-e3050b18.js +40 -16
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/stzh-actions.entry.js +10 -8
- package/dist/esm/stzh-actions.entry.js.map +1 -1
- package/dist/esm/stzh-archivelist.entry.js +6 -16
- package/dist/esm/stzh-archivelist.entry.js.map +1 -1
- package/dist/esm/{stzh-card_2.entry.js → stzh-card.entry.js} +56 -143
- package/dist/esm/stzh-card.entry.js.map +1 -0
- package/dist/esm/{stzh-sortable.entry.js → stzh-cardlist_2.entry.js} +92 -2
- package/dist/esm/stzh-cardlist_2.entry.js.map +1 -0
- package/dist/esm/{stzh-checkbox_4.entry.js → stzh-checkbox_3.entry.js} +5 -91
- package/dist/esm/stzh-checkbox_3.entry.js.map +1 -0
- package/dist/esm/{stzh-chip_2.entry.js → stzh-chip.entry.js} +3 -216
- package/dist/esm/stzh-chip.entry.js.map +1 -0
- package/dist/esm/stzh-chipgroup.entry.js +21 -0
- package/dist/esm/stzh-chipgroup.entry.js.map +1 -0
- package/dist/esm/stzh-chipselect.entry.js +230 -0
- package/dist/esm/stzh-chipselect.entry.js.map +1 -0
- package/dist/esm/stzh-components.js +2 -2
- package/dist/esm/stzh-dropdown.entry.js +53 -55
- package/dist/esm/stzh-dropdown.entry.js.map +1 -1
- package/dist/esm/stzh-fieldset.entry.js +1 -1
- package/dist/esm/stzh-fieldset.entry.js.map +1 -1
- package/dist/esm/stzh-geo-ref-data.entry.js +98 -41
- package/dist/esm/stzh-geo-ref-data.entry.js.map +1 -1
- package/dist/esm/stzh-input.entry.js +6 -2
- package/dist/esm/stzh-input.entry.js.map +1 -1
- package/dist/esm/{stzh-chipgroup_2.entry.js → stzh-message.entry.js} +3 -19
- package/dist/esm/stzh-message.entry.js.map +1 -0
- package/dist/esm/stzh-overlay.entry.js +93 -0
- package/dist/esm/stzh-overlay.entry.js.map +1 -0
- package/dist/esm/stzh-pi-teaser.entry.js +1 -1
- package/dist/esm/stzh-pi-teaser.entry.js.map +1 -1
- package/dist/esm/stzh-poicard.entry.js +48 -0
- package/dist/esm/stzh-poicard.entry.js.map +1 -0
- package/dist/esm/stzh-poilist.entry.js +118 -0
- package/dist/esm/stzh-poilist.entry.js.map +1 -0
- package/dist/esm/stzh-popover.entry.js +441 -0
- package/dist/esm/stzh-popover.entry.js.map +1 -0
- package/dist/esm/stzh-saptcha.entry.js +11 -10
- package/dist/esm/stzh-saptcha.entry.js.map +1 -1
- package/dist/esm/stzh-search.entry.js +52 -3
- package/dist/esm/stzh-search.entry.js.map +1 -1
- package/dist/esm/stzh-section.entry.js +1 -1
- package/dist/esm/stzh-section.entry.js.map +1 -1
- package/dist/esm/{stzh-popover_2.entry.js → stzh-text.entry.js} +3 -439
- package/dist/esm/stzh-text.entry.js.map +1 -0
- package/dist/esm/stzh-vbz-connection-finder.entry.js +1 -1
- package/dist/esm/stzh-vbz-connection-finder.entry.js.map +1 -1
- package/dist/stzh-components/assets/i18n/de.json +9 -0
- package/dist/stzh-components/assets/i18n/en.json +9 -0
- package/dist/stzh-components/index.esm.js.map +1 -1
- package/dist/stzh-components/{p-206ec94f.entry.js → p-0846f5a7.entry.js} +2 -2
- package/dist/stzh-components/p-0846f5a7.entry.js.map +1 -0
- package/dist/stzh-components/p-0d092d58.entry.js +2 -0
- package/dist/stzh-components/p-0d092d58.entry.js.map +1 -0
- package/dist/stzh-components/{p-38cd406c.entry.js → p-10c2c688.entry.js} +2 -2
- package/dist/stzh-components/p-10c2c688.entry.js.map +1 -0
- package/dist/stzh-components/{p-23de5712.entry.js → p-1391115f.entry.js} +2 -2
- package/dist/stzh-components/{p-23de5712.entry.js.map → p-1391115f.entry.js.map} +1 -1
- package/dist/stzh-components/p-1b2fb680.entry.js +9 -0
- package/dist/stzh-components/p-1b2fb680.entry.js.map +1 -0
- package/dist/stzh-components/p-1e121c5f.entry.js +2 -0
- package/dist/stzh-components/p-1e121c5f.entry.js.map +1 -0
- package/dist/stzh-components/p-35d842ce.entry.js +2 -0
- package/dist/stzh-components/p-35d842ce.entry.js.map +1 -0
- package/dist/stzh-components/p-3e2b4d92.entry.js +2 -0
- package/dist/stzh-components/p-3e2b4d92.entry.js.map +1 -0
- package/dist/stzh-components/p-47cb71af.entry.js +2 -0
- package/dist/stzh-components/p-47cb71af.entry.js.map +1 -0
- package/dist/stzh-components/p-4e2db8e9.entry.js +8 -0
- package/dist/stzh-components/p-4e2db8e9.entry.js.map +1 -0
- package/dist/stzh-components/{p-cded8c4a.js → p-57caee36.js} +2 -2
- package/dist/stzh-components/p-616ae3be.entry.js +2 -0
- package/dist/stzh-components/p-616ae3be.entry.js.map +1 -0
- package/dist/stzh-components/{p-15d008ea.entry.js → p-72c9db89.entry.js} +3 -3
- package/dist/stzh-components/p-72c9db89.entry.js.map +1 -0
- package/dist/stzh-components/p-7bb2eb4e.entry.js +2 -0
- package/dist/stzh-components/p-7bb2eb4e.entry.js.map +1 -0
- package/dist/stzh-components/p-8c4d543d.entry.js +2 -0
- package/dist/stzh-components/p-8c4d543d.entry.js.map +1 -0
- package/dist/stzh-components/p-9506f599.entry.js +2 -0
- package/dist/stzh-components/p-9506f599.entry.js.map +1 -0
- package/dist/stzh-components/p-9b1267a6.entry.js +2 -0
- package/dist/stzh-components/p-9b1267a6.entry.js.map +1 -0
- package/dist/stzh-components/p-a9216459.entry.js +2 -0
- package/dist/stzh-components/p-a9216459.entry.js.map +1 -0
- package/dist/stzh-components/p-b2920d7f.entry.js +2 -0
- package/dist/stzh-components/p-b2920d7f.entry.js.map +1 -0
- package/dist/stzh-components/p-b6f19446.entry.js +2 -0
- package/dist/stzh-components/p-b6f19446.entry.js.map +1 -0
- package/dist/stzh-components/p-b75800da.entry.js +2 -0
- package/dist/stzh-components/p-b75800da.entry.js.map +1 -0
- package/dist/stzh-components/{p-d058fc1e.entry.js → p-c4bbdbfe.entry.js} +2 -2
- package/dist/stzh-components/p-c4bbdbfe.entry.js.map +1 -0
- package/dist/stzh-components/p-c6504f41.entry.js +2 -0
- package/dist/stzh-components/p-c6504f41.entry.js.map +1 -0
- package/dist/stzh-components/p-d29fd503.entry.js +2 -0
- package/dist/stzh-components/p-d29fd503.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-actions/stzh-actions.d.ts +3 -1
- package/dist/types/components/stzh-archivelist/stzh-archivelist.d.ts +4 -0
- package/dist/types/components/stzh-card/stzh-card.d.ts +4 -2
- package/dist/types/components/stzh-dropdown/stzh-dropdown.d.ts +6 -2
- package/dist/types/components/stzh-geo-ref-data/stzh-geo-ref-data.d.ts +16 -2
- package/dist/types/components/stzh-input/stzh-input.d.ts +2 -0
- package/dist/types/components/stzh-poicard/stzh-poicard.d.ts +14 -0
- package/dist/types/components/stzh-poilist/stzh-poilist.d.ts +31 -0
- package/dist/types/components/stzh-poilist/stzh-poilist.localization.d.ts +10 -0
- package/dist/types/components/stzh-saptcha/stzh-saptcha.d.ts +5 -4
- package/dist/types/components/stzh-search/stzh-search.d.ts +13 -0
- package/dist/types/components.d.ts +190 -10
- package/dist/types/index.d.ts +28 -0
- package/dist/vscode-data.json +104 -3
- package/package.json +1 -1
- package/dist/cjs/stzh-card_2.cjs.entry.js.map +0 -1
- package/dist/cjs/stzh-checkbox_4.cjs.entry.js.map +0 -1
- package/dist/cjs/stzh-chip_2.cjs.entry.js.map +0 -1
- package/dist/cjs/stzh-chipgroup_2.cjs.entry.js.map +0 -1
- package/dist/cjs/stzh-popover_2.cjs.entry.js.map +0 -1
- package/dist/cjs/stzh-sortable.cjs.entry.js.map +0 -1
- package/dist/esm/stzh-card_2.entry.js.map +0 -1
- package/dist/esm/stzh-checkbox_4.entry.js.map +0 -1
- package/dist/esm/stzh-chip_2.entry.js.map +0 -1
- package/dist/esm/stzh-chipgroup_2.entry.js.map +0 -1
- package/dist/esm/stzh-popover_2.entry.js.map +0 -1
- package/dist/esm/stzh-sortable.entry.js.map +0 -1
- package/dist/stzh-components/p-12851c24.entry.js +0 -2
- package/dist/stzh-components/p-12851c24.entry.js.map +0 -1
- package/dist/stzh-components/p-15d008ea.entry.js.map +0 -1
- package/dist/stzh-components/p-1b31cd8a.entry.js +0 -2
- package/dist/stzh-components/p-1b31cd8a.entry.js.map +0 -1
- package/dist/stzh-components/p-206ec94f.entry.js.map +0 -1
- package/dist/stzh-components/p-38cd406c.entry.js.map +0 -1
- package/dist/stzh-components/p-50c32fd1.entry.js +0 -2
- package/dist/stzh-components/p-50c32fd1.entry.js.map +0 -1
- package/dist/stzh-components/p-55349f2e.entry.js +0 -2
- package/dist/stzh-components/p-55349f2e.entry.js.map +0 -1
- package/dist/stzh-components/p-9c643610.entry.js +0 -2
- package/dist/stzh-components/p-9c643610.entry.js.map +0 -1
- package/dist/stzh-components/p-9cdd5e6f.entry.js +0 -2
- package/dist/stzh-components/p-9cdd5e6f.entry.js.map +0 -1
- package/dist/stzh-components/p-a672aaea.entry.js +0 -8
- package/dist/stzh-components/p-a672aaea.entry.js.map +0 -1
- package/dist/stzh-components/p-a77b49cb.entry.js +0 -2
- package/dist/stzh-components/p-a77b49cb.entry.js.map +0 -1
- package/dist/stzh-components/p-b509dedd.entry.js +0 -2
- package/dist/stzh-components/p-b509dedd.entry.js.map +0 -1
- package/dist/stzh-components/p-b870c799.entry.js +0 -2
- package/dist/stzh-components/p-b870c799.entry.js.map +0 -1
- package/dist/stzh-components/p-d058fc1e.entry.js.map +0 -1
- package/dist/stzh-components/p-da043311.entry.js +0 -9
- package/dist/stzh-components/p-da043311.entry.js.map +0 -1
- package/dist/stzh-components/p-fb077fd5.entry.js +0 -2
- package/dist/stzh-components/p-fb077fd5.entry.js.map +0 -1
- /package/dist/stzh-components/{p-cded8c4a.js.map → p-57caee36.js.map} +0 -0
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
import { Fragment, h, Host
|
|
1
|
+
import { Fragment, h, Host } from "@stencil/core";
|
|
2
2
|
import { Document } from "flexsearch/dist/flexsearch.bundle.min.js";
|
|
3
|
-
import { addMediaChangeListener, media, removeMediaChangeListener
|
|
3
|
+
import { addMediaChangeListener, media, removeMediaChangeListener } from "../../utils/media-utils";
|
|
4
|
+
const CLASS_BODY_OPEN = "stzh-overlay-open";
|
|
5
|
+
/**
|
|
6
|
+
* @slot logo - Slot for brand logo
|
|
7
|
+
*/
|
|
4
8
|
export class GeoRefData {
|
|
5
9
|
constructor() {
|
|
10
|
+
this._availableTags = [];
|
|
6
11
|
this.filterResults = [];
|
|
7
12
|
this.handleOverlayCloseClick = () => {
|
|
13
|
+
document.body.classList.remove(CLASS_BODY_OPEN);
|
|
8
14
|
this.isOpen = false;
|
|
9
15
|
};
|
|
10
16
|
this.handleResize = async () => {
|
|
@@ -21,7 +27,7 @@ export class GeoRefData {
|
|
|
21
27
|
};
|
|
22
28
|
this.handleFilterChange = async (e) => {
|
|
23
29
|
if (e.detail.value.length !== 0) {
|
|
24
|
-
this.filterResults = this.combinedData.filter(
|
|
30
|
+
this.filterResults = this.combinedData.filter(item => item.tags && item.tags.some(tag => e.detail.value.includes(tag)));
|
|
25
31
|
this.filterActive = true;
|
|
26
32
|
}
|
|
27
33
|
else {
|
|
@@ -29,7 +35,7 @@ export class GeoRefData {
|
|
|
29
35
|
}
|
|
30
36
|
await this.combineFilterAndSearchResults();
|
|
31
37
|
};
|
|
32
|
-
this.handleExtentVisibilityChange =
|
|
38
|
+
this.handleExtentVisibilityChange = e => {
|
|
33
39
|
this.showOnlyResultsForCurrentExtent = e.detail.checked;
|
|
34
40
|
};
|
|
35
41
|
this.handleSearchChange = async (e) => {
|
|
@@ -38,7 +44,7 @@ export class GeoRefData {
|
|
|
38
44
|
return;
|
|
39
45
|
}
|
|
40
46
|
const searchResults = this.searchIndex.search(e.detail.value);
|
|
41
|
-
const flatSearchResults = searchResults.flatMap(
|
|
47
|
+
const flatSearchResults = searchResults.flatMap(field => field.result);
|
|
42
48
|
this.searchResults = new Set(flatSearchResults);
|
|
43
49
|
this.searchActive = true;
|
|
44
50
|
}
|
|
@@ -61,6 +67,8 @@ export class GeoRefData {
|
|
|
61
67
|
this.baseUrlOverride = "https://www.stadt-zuerich.ch";
|
|
62
68
|
this.availableTags = [];
|
|
63
69
|
this.resetTag = undefined;
|
|
70
|
+
this.searchIndexFields = ["title", "poiname", "street", "zip", "description"];
|
|
71
|
+
this.searchIndexIdField = "poiid";
|
|
64
72
|
this.filterActive = false;
|
|
65
73
|
this.searchActive = false;
|
|
66
74
|
this.showOnlyResultsForCurrentExtent = true;
|
|
@@ -73,6 +81,40 @@ export class GeoRefData {
|
|
|
73
81
|
this.isInitialized = undefined;
|
|
74
82
|
this.isOpen = undefined;
|
|
75
83
|
this.isLoading = undefined;
|
|
84
|
+
this.numberOfItemsToLoad = 20;
|
|
85
|
+
this.canLoadMore = undefined;
|
|
86
|
+
}
|
|
87
|
+
availableTagsWatcher(newValue) {
|
|
88
|
+
if (!newValue) {
|
|
89
|
+
this._availableTags = [];
|
|
90
|
+
}
|
|
91
|
+
else if (typeof newValue === "string") {
|
|
92
|
+
try {
|
|
93
|
+
this._availableTags = JSON.parse(newValue);
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
this._availableTags = [];
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
this._availableTags = newValue;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
resetTagWatcher(newValue) {
|
|
104
|
+
if (!newValue) {
|
|
105
|
+
this._resetTag = undefined;
|
|
106
|
+
}
|
|
107
|
+
else if (typeof newValue === "string") {
|
|
108
|
+
try {
|
|
109
|
+
this._resetTag = JSON.parse(newValue);
|
|
110
|
+
}
|
|
111
|
+
catch (e) {
|
|
112
|
+
this._resetTag = undefined;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
this._resetTag = newValue;
|
|
117
|
+
}
|
|
76
118
|
}
|
|
77
119
|
async loadMapData() {
|
|
78
120
|
if (!this.mapDataUrl) {
|
|
@@ -80,23 +122,16 @@ export class GeoRefData {
|
|
|
80
122
|
return [];
|
|
81
123
|
}
|
|
82
124
|
try {
|
|
83
|
-
// TODO: add loader
|
|
84
125
|
const response = await fetch(this.mapDataUrl);
|
|
85
126
|
const rawMapData = await response.text();
|
|
86
|
-
// console.log('Raw Map data:', rawMapData);
|
|
87
127
|
const parsedData = new DOMParser().parseFromString(rawMapData, "text/xml");
|
|
88
|
-
|
|
89
|
-
const items = Array.from(parsedData.querySelectorAll("featureMember")).map((item) => {
|
|
128
|
+
return Array.from(parsedData.querySelectorAll("featureMember")).map(item => {
|
|
90
129
|
var _a, _b;
|
|
91
130
|
const pos = (_a = item.querySelector("pos")) === null || _a === void 0 ? void 0 : _a.textContent;
|
|
92
131
|
const poiid = (_b = item.querySelector("poi_id")) === null || _b === void 0 ? void 0 : _b.textContent;
|
|
93
132
|
const [lat, lon] = (pos === null || pos === void 0 ? void 0 : pos.split(" ")) || [];
|
|
94
133
|
return { poiid, lat, lon };
|
|
95
134
|
});
|
|
96
|
-
// console.log('Loaded Map Data:', items);
|
|
97
|
-
// this.mapData = items;
|
|
98
|
-
// TODO: handle empty items
|
|
99
|
-
return items;
|
|
100
135
|
}
|
|
101
136
|
catch (error) {
|
|
102
137
|
console.error("Error fetching map data:", error);
|
|
@@ -110,16 +145,12 @@ export class GeoRefData {
|
|
|
110
145
|
}
|
|
111
146
|
try {
|
|
112
147
|
const response = await fetch(this.poiDataUrl, { credentials: "include" });
|
|
113
|
-
// console.log('Response:', response);
|
|
114
148
|
const poiData = await response.json();
|
|
115
|
-
|
|
116
|
-
// this.poiData = poiData.items;
|
|
117
|
-
// TODO: handle empty items
|
|
149
|
+
console.log("POI data:", poiData);
|
|
118
150
|
return poiData.items;
|
|
119
151
|
}
|
|
120
152
|
catch (error) {
|
|
121
153
|
console.error("Error fetching POI data:", error);
|
|
122
|
-
// TODO: add user error (toast)
|
|
123
154
|
}
|
|
124
155
|
}
|
|
125
156
|
combineData(firstArray, secondArray) {
|
|
@@ -139,23 +170,40 @@ export class GeoRefData {
|
|
|
139
170
|
largerArray = firstArray;
|
|
140
171
|
}
|
|
141
172
|
// combine arrays based on poiid
|
|
142
|
-
|
|
143
|
-
.map(
|
|
144
|
-
const matchingItem = largerArray.find(
|
|
173
|
+
return smallerArray
|
|
174
|
+
.map(item => {
|
|
175
|
+
const matchingItem = largerArray.find(largerArrayItem => largerArrayItem.poiid === item.poiid);
|
|
145
176
|
return Object.assign(Object.assign({}, item), matchingItem);
|
|
146
177
|
})
|
|
147
178
|
.sort((a, b) => {
|
|
148
|
-
|
|
179
|
+
try {
|
|
180
|
+
return a.title.localeCompare(b.title); // Sorts alphabetically by the 'name' property
|
|
181
|
+
}
|
|
182
|
+
catch (noTitleException) {
|
|
183
|
+
return 1;
|
|
184
|
+
}
|
|
149
185
|
});
|
|
150
|
-
console.log("Combined Data:", combinedData);
|
|
151
|
-
return combinedData;
|
|
152
186
|
}
|
|
153
187
|
enhanceTags(availableTags, combinedData) {
|
|
154
188
|
return availableTags
|
|
155
|
-
.sort((a, b) =>
|
|
156
|
-
|
|
189
|
+
.sort((a, b) => {
|
|
190
|
+
try {
|
|
191
|
+
a.label.localeCompare(b.label);
|
|
192
|
+
}
|
|
193
|
+
catch (noLabelException) {
|
|
194
|
+
return 1;
|
|
195
|
+
}
|
|
196
|
+
})
|
|
197
|
+
.map(tag => {
|
|
157
198
|
const counter = combinedData
|
|
158
|
-
.filter(
|
|
199
|
+
.filter(item => {
|
|
200
|
+
try {
|
|
201
|
+
return item.tags.includes(tag.value);
|
|
202
|
+
}
|
|
203
|
+
catch (noTagsException) {
|
|
204
|
+
return false;
|
|
205
|
+
}
|
|
206
|
+
})
|
|
159
207
|
.length.toString();
|
|
160
208
|
return Object.assign(Object.assign({}, tag), { counter, variant: "filter" });
|
|
161
209
|
});
|
|
@@ -173,11 +221,11 @@ export class GeoRefData {
|
|
|
173
221
|
"[éè]": "e",
|
|
174
222
|
},
|
|
175
223
|
document: {
|
|
176
|
-
id:
|
|
177
|
-
index:
|
|
224
|
+
id: this.searchIndexIdField,
|
|
225
|
+
index: this.searchIndexFields,
|
|
178
226
|
},
|
|
179
227
|
});
|
|
180
|
-
data.forEach(
|
|
228
|
+
data.forEach(item => {
|
|
181
229
|
this.searchIndex.add(item);
|
|
182
230
|
});
|
|
183
231
|
}
|
|
@@ -192,6 +240,8 @@ export class GeoRefData {
|
|
|
192
240
|
addMediaChangeListener(this.mediaChangeHandler);
|
|
193
241
|
this.resizeObserver = new ResizeObserver(this.handleResize);
|
|
194
242
|
this.resizeObserver.observe(this.element);
|
|
243
|
+
this.availableTagsWatcher(this.availableTags);
|
|
244
|
+
this.resetTagWatcher(this.resetTag);
|
|
195
245
|
}
|
|
196
246
|
disconnectedCallback() {
|
|
197
247
|
removeMediaChangeListener(this.mediaChangeHandler);
|
|
@@ -200,18 +250,20 @@ export class GeoRefData {
|
|
|
200
250
|
}
|
|
201
251
|
}
|
|
202
252
|
async initializeAndOpenMap() {
|
|
253
|
+
document.body.classList.add(CLASS_BODY_OPEN);
|
|
203
254
|
this.isLoading = true;
|
|
204
255
|
this.isOpen = true;
|
|
205
256
|
try {
|
|
206
257
|
this.combinedData = this.combineData(await this.loadMapData(), await this.loadPoiData());
|
|
207
|
-
this.enhancedTags = this.enhanceTags(this.
|
|
258
|
+
this.enhancedTags = this.enhanceTags(this._availableTags, this.combinedData);
|
|
208
259
|
this.buildSearchIndex(this.combinedData);
|
|
209
|
-
const enhancedResetTag = Object.assign(Object.assign({}, this.
|
|
210
|
-
if (this.
|
|
260
|
+
const enhancedResetTag = Object.assign(Object.assign({}, this._resetTag), { counter: this.combinedData.length.toString() });
|
|
261
|
+
if (this._resetTag) {
|
|
211
262
|
this.enhancedTags.unshift(enhancedResetTag);
|
|
212
263
|
}
|
|
213
264
|
this.finalResults = this.combinedData;
|
|
214
|
-
this.finalResultsPaginatedList = this.finalResults.slice(0,
|
|
265
|
+
this.finalResultsPaginatedList = this.finalResults.slice(0, this.numberOfItemsToLoad);
|
|
266
|
+
this.canLoadMore = this.finalResults.length > this.numberOfItemsToLoad;
|
|
215
267
|
await this.combineFilterAndSearchResults();
|
|
216
268
|
await this.handleResize();
|
|
217
269
|
await this.mapElement.updateViewToFitMarkers();
|
|
@@ -230,20 +282,24 @@ export class GeoRefData {
|
|
|
230
282
|
this.finalResults = this.filterResults;
|
|
231
283
|
}
|
|
232
284
|
else if (!this.filterActive && this.searchActive) {
|
|
233
|
-
this.finalResults = Array.from(this.searchResults).map(
|
|
285
|
+
this.finalResults = Array.from(this.searchResults).map(id => this.combinedData.find(item => item.poiid === id));
|
|
234
286
|
}
|
|
235
287
|
else if (this.filterActive && this.searchActive) {
|
|
236
|
-
this.finalResults = this.filterResults.filter(
|
|
288
|
+
this.finalResults = this.filterResults.filter(item => this.searchResults.has(item.poiid));
|
|
237
289
|
}
|
|
238
290
|
else {
|
|
239
291
|
this.finalResults = this.combinedData;
|
|
240
292
|
}
|
|
241
|
-
this.finalResultsPaginatedList = this.finalResults.slice(0,
|
|
293
|
+
this.finalResultsPaginatedList = this.finalResults.slice(0, this.numberOfItemsToLoad);
|
|
242
294
|
await this.replaceMapMarkers(this.finalResults);
|
|
243
295
|
}
|
|
244
296
|
loadMore() {
|
|
245
297
|
this.finalResultsPaginationOffset++;
|
|
246
|
-
|
|
298
|
+
const sliced = this.finalResults.slice(this.finalResultsPaginationOffset * this.numberOfItemsToLoad, this.finalResultsPaginationOffset * this.numberOfItemsToLoad + this.numberOfItemsToLoad);
|
|
299
|
+
if (!sliced || !sliced.length || sliced.length < this.numberOfItemsToLoad) {
|
|
300
|
+
this.canLoadMore = false;
|
|
301
|
+
}
|
|
302
|
+
this.finalResultsPaginatedList = this.finalResultsPaginatedList.concat(sliced);
|
|
247
303
|
}
|
|
248
304
|
// private async handleExtendVisibility() {
|
|
249
305
|
// if (this.showOnlyResultsForCurrentExtent) {
|
|
@@ -254,8 +310,8 @@ export class GeoRefData {
|
|
|
254
310
|
async replaceMapMarkers(items) {
|
|
255
311
|
await this.mapElement.removeAllIconMarkers();
|
|
256
312
|
items
|
|
257
|
-
.filter(
|
|
258
|
-
.forEach(
|
|
313
|
+
.filter(item => !!item.lat && !!item.lon)
|
|
314
|
+
.forEach(item => {
|
|
259
315
|
this.mapElement
|
|
260
316
|
.addIconMarker([parseFloat(item.lat), parseFloat(item.lon)], {
|
|
261
317
|
id: item.poiid,
|
|
@@ -290,9 +346,9 @@ export class GeoRefData {
|
|
|
290
346
|
"stzh-geo-ref-data--is-loading": this.isLoading,
|
|
291
347
|
"stzh-geo-ref-data--is-open": this.isOpen,
|
|
292
348
|
};
|
|
293
|
-
return (h(Host, null, h("div", { class: "stzh-geo-ref-data__trigger", onClick: () => this.initializeAndOpenMap() }, h("slot", { name: "trigger" })), h("stzh-overlay", { open: this.isLoading }, h("stzh-loader", { label: "Daten werden geladen..." })), h("div", { class: classes }, h("div", { class: "stzh-geo-ref-data__header-wrapper" }, h("stzh-header", { "hide-metabar": true }, h("
|
|
349
|
+
return (h(Host, null, h("div", { class: "stzh-geo-ref-data__trigger", onClick: () => this.initializeAndOpenMap() }, h("slot", { name: "trigger" })), h("stzh-overlay", { open: this.isLoading }, h("stzh-loader", { label: "Daten werden geladen..." })), h("div", { class: classes }, h("div", { class: "stzh-geo-ref-data__header-wrapper" }, h("stzh-header", { "hide-metabar": true, sticky: "disabled" }, h("slot", { name: "logo", slot: "logo" })), h("div", { class: "stzh-geo-ref-data__heading stzh-geo-ref-data--content-padding" }, h("stzh-heading", { class: "stzh-geo-ref-data__heading-heading", curve: "h2" }, this.heading), h("stzh-button", { class: "stzh-geo-ref-data__overlay-close", icon: "close", iconOnly: true, size: "small", variant: "tertiary", onClick: this.handleOverlayCloseClick }))), h("div", { class: "stzh-geo-ref-data__content" }, h("div", { class: "stzh-geo-ref-data__meta-wrapper stzh-geo-ref-data--content-padding", ref: el => (this.metaWrapperElement = el) }, h("div", { class: "stzh-geo-ref-data__filters" }, h("div", { class: "stzh-geo-ref-data__filters-toggle" }, h("stzh-chip", { label: this.isViewportMedium ? "Filter" : "", variant: "filter", icon: "filtering" })), h("div", { class: "stzh-geo-ref-data__filters-content" }, h("stzh-chipselect", { "label-hidden": true, label: "Tags", data: this.enhancedTags, onStzhChange: this.handleFilterChange, multiple: true, defaultValue: [""] }))), h("div", { class: "stzh-geo-ref-data__search" }, h("stzh-input", { size: "small", name: "stzh-datatable-search", onStzhChange: this.handleSearchChange, hideOptional: true, label: "Suche", type: "search" })), h("div", { class: "stzh-geo-ref-data__results-toggle" }, h("stzh-chip", { onStzhClick: this.toggleViewMode, label: this.viewmode === "map" ? "Liste" : "Karte", icon: this.viewmode === "map" ? "bulleted-list" : "map", variant: "filter" }))), h("div", { class: "stzh-geo-ref-data__results-wrapper" }, h("div", { class: `stzh-geo-ref-data__results-map ${this.viewmode === "map" ? "active" : "inactive"}` }, h("stzh-olmap", { class: "stzh-geo-ref-data__ol-map", centerMarker: false, ref: el => (this.mapElement = el) }), h("div", { class: "stzh-geo-ref-data__map-controls" }, h("stzh-checkbox", { label: "Treffer an Kartenaussicht anpassen", checked: this.showOnlyResultsForCurrentExtent, hideOptional: true, onStzhChange: this.handleExtentVisibilityChange }))), h("div", { class: `stzh-geo-ref-data__results-list ${this.viewmode === "list" ? "active" : "inactive"}`, ref: el => (this.resultsListElement = el) }, this.finalResults && (h(Fragment, null, h("stzh-text", { class: "stzh-geo-ref-data__results-list-heading" }, this.finalResults.length, " Treffer"), h("div", { class: "stzh-geo-ref-data__teaser-list" }, this.finalResultsPaginatedList.map(item => (h("div", { class: "stzh-poi-teaser", onMouseEnter: () => this.handlePoiTeaserMouseEnter(item), onMouseLeave: () => this.handlePoiTeaserMouseLeave(item) }, h("a", { class: "stzh-poi-teaser-link", href: this.baseUrlOverride + item.path }), h("div", { class: "stzh-poi-teaser-content" }, h("stzh-heading", { curve: "lead" }, item.poiname), item.description && h("stzh-text", { size: "micro" }, item.description), item.data &&
|
|
294
350
|
item.data.length > 0 &&
|
|
295
|
-
item.data.map(
|
|
351
|
+
item.data.map(item => (h("div", { class: "stzh-poi-teaser-list-item" }, h("stzh-icon", { name: item.icon }), h("stzh-text", { size: "micro" }, item.text))))), h("div", { class: "stzh-poi-teaser-image" }, h("stzh-ratio", { ratio: "1:1" }), h("div", { class: "stzh-poi-teaser-image-inner" }, h("img", { src: this.baseUrlOverride + item.image, alt: "Foto von " + item.poiname }))))))), this.canLoadMore && (h("div", { class: "stzh-geo-ref-data__teaser-load-more" }, h("stzh-button", { onStzhClick: () => this.loadMore() }, "Weitere laden")))))))))));
|
|
296
352
|
}
|
|
297
353
|
static get is() { return "stzh-geo-ref-data"; }
|
|
298
354
|
static get encapsulation() { return "shadow"; }
|
|
@@ -381,11 +437,11 @@ export class GeoRefData {
|
|
|
381
437
|
"defaultValue": "\"https://www.stadt-zuerich.ch\""
|
|
382
438
|
},
|
|
383
439
|
"availableTags": {
|
|
384
|
-
"type": "
|
|
440
|
+
"type": "string",
|
|
385
441
|
"mutable": false,
|
|
386
442
|
"complexType": {
|
|
387
|
-
"original": "StzhAvailableTag[]",
|
|
388
|
-
"resolved": "StzhAvailableTag[]",
|
|
443
|
+
"original": "StzhAvailableTag[] | string",
|
|
444
|
+
"resolved": "StzhAvailableTag[] | string",
|
|
389
445
|
"references": {
|
|
390
446
|
"StzhAvailableTag": {
|
|
391
447
|
"location": "import",
|
|
@@ -400,14 +456,16 @@ export class GeoRefData {
|
|
|
400
456
|
"tags": [],
|
|
401
457
|
"text": "To make sure all tags are mapped to their identificator, only these will be available."
|
|
402
458
|
},
|
|
459
|
+
"attribute": "available-tags",
|
|
460
|
+
"reflect": false,
|
|
403
461
|
"defaultValue": "[]"
|
|
404
462
|
},
|
|
405
463
|
"resetTag": {
|
|
406
|
-
"type": "
|
|
464
|
+
"type": "string",
|
|
407
465
|
"mutable": false,
|
|
408
466
|
"complexType": {
|
|
409
|
-
"original": "StzhChipselectItem",
|
|
410
|
-
"resolved": "{ label: string; value: string; disabled?: boolean; variant?: StzhChipVariant; type?: StzhChipType; inverted?: boolean; counter?: string; icon?: string; size?: StzhChipSize; }",
|
|
467
|
+
"original": "StzhChipselectItem | string",
|
|
468
|
+
"resolved": "string | { label: string; value: string; disabled?: boolean; variant?: StzhChipVariant; type?: StzhChipType; inverted?: boolean; counter?: string; icon?: string; size?: StzhChipSize; }",
|
|
411
469
|
"references": {
|
|
412
470
|
"StzhChipselectItem": {
|
|
413
471
|
"location": "import",
|
|
@@ -420,8 +478,44 @@ export class GeoRefData {
|
|
|
420
478
|
"optional": false,
|
|
421
479
|
"docs": {
|
|
422
480
|
"tags": [],
|
|
423
|
-
"text": ""
|
|
424
|
-
}
|
|
481
|
+
"text": "Reset tag (the first one)."
|
|
482
|
+
},
|
|
483
|
+
"attribute": "reset-tag",
|
|
484
|
+
"reflect": false
|
|
485
|
+
},
|
|
486
|
+
"searchIndexFields": {
|
|
487
|
+
"type": "unknown",
|
|
488
|
+
"mutable": false,
|
|
489
|
+
"complexType": {
|
|
490
|
+
"original": "string[]",
|
|
491
|
+
"resolved": "string[]",
|
|
492
|
+
"references": {}
|
|
493
|
+
},
|
|
494
|
+
"required": false,
|
|
495
|
+
"optional": false,
|
|
496
|
+
"docs": {
|
|
497
|
+
"tags": [],
|
|
498
|
+
"text": "Fields for building the search index."
|
|
499
|
+
},
|
|
500
|
+
"defaultValue": "[\"title\", \"poiname\", \"street\", \"zip\", \"description\"]"
|
|
501
|
+
},
|
|
502
|
+
"searchIndexIdField": {
|
|
503
|
+
"type": "string",
|
|
504
|
+
"mutable": false,
|
|
505
|
+
"complexType": {
|
|
506
|
+
"original": "string",
|
|
507
|
+
"resolved": "string",
|
|
508
|
+
"references": {}
|
|
509
|
+
},
|
|
510
|
+
"required": false,
|
|
511
|
+
"optional": false,
|
|
512
|
+
"docs": {
|
|
513
|
+
"tags": [],
|
|
514
|
+
"text": "Fields for building the search index."
|
|
515
|
+
},
|
|
516
|
+
"attribute": "search-index-id-field",
|
|
517
|
+
"reflect": false,
|
|
518
|
+
"defaultValue": "\"poiid\""
|
|
425
519
|
}
|
|
426
520
|
};
|
|
427
521
|
}
|
|
@@ -438,7 +532,9 @@ export class GeoRefData {
|
|
|
438
532
|
"isViewportMedium": {},
|
|
439
533
|
"isInitialized": {},
|
|
440
534
|
"isOpen": {},
|
|
441
|
-
"isLoading": {}
|
|
535
|
+
"isLoading": {},
|
|
536
|
+
"numberOfItemsToLoad": {},
|
|
537
|
+
"canLoadMore": {}
|
|
442
538
|
};
|
|
443
539
|
}
|
|
444
540
|
static get events() {
|
|
@@ -466,6 +562,15 @@ export class GeoRefData {
|
|
|
466
562
|
}];
|
|
467
563
|
}
|
|
468
564
|
static get elementRef() { return "element"; }
|
|
565
|
+
static get watchers() {
|
|
566
|
+
return [{
|
|
567
|
+
"propName": "availableTags",
|
|
568
|
+
"methodName": "availableTagsWatcher"
|
|
569
|
+
}, {
|
|
570
|
+
"propName": "resetTag",
|
|
571
|
+
"methodName": "resetTagWatcher"
|
|
572
|
+
}];
|
|
573
|
+
}
|
|
469
574
|
static get listeners() {
|
|
470
575
|
return [{
|
|
471
576
|
"name": "stzhMovePanZoom",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-geo-ref-data.js","sourceRoot":"","sources":["../../../../src/components/stzh-geo-ref-data/stzh-geo-ref-data.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Listen,\n Prop,\n State,\n} from \"@stencil/core\";\nimport {\n StzhAvailableTag,\n StzhChipselectChangeEvent,\n StzhChipselectItem,\n StzhCombinedGeoRefData,\n StzhGeoRefDataOverlayCloseClickEvent,\n StzhMapGeoRefData,\n StzhPoiGeoRefData,\n} from \"../../index\";\nimport { Document } from \"flexsearch/dist/flexsearch.bundle.min.js\";\nimport {\n addMediaChangeListener,\n media,\n removeMediaChangeListener,\n} from \"../../utils/media-utils\";\n\n@Component({\n tag: \"stzh-geo-ref-data\",\n styleUrl: \"stzh-geo-ref-data.scss\",\n shadow: true,\n})\nexport class GeoRefData {\n /** Heading for the overlay. */\n @Prop({ reflect: true }) heading: string = \"\";\n\n /** The URL for fetching the card data */\n @Prop({ reflect: true }) mapDataUrl: string = \"\";\n\n /** The URL used for fetching the POI data. */\n @Prop({ reflect: true }) poiDataUrl: string = \"\";\n\n /** Base URL used for all external requests (map, card). */\n @Prop() baseUrlOverride: string = \"https://www.stadt-zuerich.ch\";\n\n /** To make sure all tags are mapped to their identificator, only these will be available. */\n @Prop() availableTags: StzhAvailableTag[] = [];\n\n @Prop() resetTag: StzhChipselectItem;\n\n @State() filterActive: boolean = false;\n @State() searchActive: boolean = false;\n @State() showOnlyResultsForCurrentExtent: boolean = true;\n @State() finalResults: StzhCombinedGeoRefData[] = [];\n @State() finalResultsPaginatedList: StzhCombinedGeoRefData[] = [];\n @State() finalResultsPaginationOffset = 0;\n\n @State() viewmode: \"map\" | \"list\" = \"map\";\n @State() isViewportLarge: boolean;\n @State() isViewportMedium: boolean;\n @State() isInitialized: boolean;\n @State() isOpen: boolean;\n @State() isLoading: boolean;\n\n /** Overlay close click event */\n @Event()\n stzhOverlayCloseClick: EventEmitter<StzhGeoRefDataOverlayCloseClickEvent>;\n\n private combinedData: StzhCombinedGeoRefData[];\n private enhancedTags: StzhChipselectItem[];\n private searchIndex: Document;\n\n private filterResults: StzhCombinedGeoRefData[] = [];\n private searchResults: Set<string>;\n\n @Element() element: HTMLStzhGeoRefDataElement;\n private mapElement: HTMLStzhOlmapElement;\n private metaWrapperElement: HTMLDivElement;\n private resultsListElement: HTMLDivElement;\n private resizeObserver: ResizeObserver;\n\n private handleOverlayCloseClick = () => {\n this.isOpen = false;\n };\n\n private handleResize = async () => {\n if (this.metaWrapperElement && this.metaWrapperElement.clientHeight) {\n this.mapElement.style.height = `calc(100% - ${this.metaWrapperElement.clientHeight}px)`;\n this.resultsListElement.style.height = `calc(100% - ${this.metaWrapperElement.clientHeight}px)`;\n const map = await this.mapElement.getMap();\n map.updateSize();\n }\n };\n\n private mediaChangeHandler = () => {\n this.isViewportLarge = media(\"large\").matches;\n this.isViewportMedium = media(\"medium\").matches;\n };\n\n private async loadMapData(): Promise<StzhMapGeoRefData[]> {\n if (!this.mapDataUrl) {\n console.log(\"No map data URL provided\");\n return [];\n }\n try {\n // TODO: add loader\n const response = await fetch(this.mapDataUrl);\n const rawMapData = await response.text();\n // console.log('Raw Map data:', rawMapData);\n const parsedData = new DOMParser().parseFromString(\n rawMapData,\n \"text/xml\"\n );\n // console.log('Parsed Map data:', parsedData);\n\n const items = Array.from(\n parsedData.querySelectorAll(\"featureMember\")\n ).map((item) => {\n const pos = item.querySelector(\"pos\")?.textContent;\n const poiid = item.querySelector(\"poi_id\")?.textContent;\n const [lat, lon] = pos?.split(\" \") || [];\n\n return { poiid, lat, lon } as StzhMapGeoRefData;\n });\n\n // console.log('Loaded Map Data:', items);\n // this.mapData = items;\n // TODO: handle empty items\n return items;\n } catch (error) {\n console.error(\"Error fetching map data:\", error);\n // TODO: add user error (toast)\n }\n }\n\n private async loadPoiData() {\n if (!this.poiDataUrl) {\n console.error(\"No POI data URL provided\");\n return [];\n }\n try {\n const response = await fetch(this.poiDataUrl, { credentials: \"include\" });\n // console.log('Response:', response);\n\n const poiData = await response.json();\n // console.log('POI data:', poiData);\n // this.poiData = poiData.items;\n // TODO: handle empty items\n return poiData.items;\n } catch (error) {\n console.error(\"Error fetching POI data:\", error);\n // TODO: add user error (toast)\n }\n }\n\n private combineData(\n firstArray: StzhMapGeoRefData[] | StzhPoiGeoRefData[],\n secondArray: StzhMapGeoRefData[] | StzhPoiGeoRefData[]\n ): StzhCombinedGeoRefData[] {\n if (!firstArray.length || !secondArray.length) {\n console.error(\"Missing data to combine\");\n return [];\n }\n // determine which array is smaller for performance\n let smallerArray: any[];\n let largerArray: any[];\n\n if (firstArray.length < secondArray.length) {\n smallerArray = firstArray;\n largerArray = secondArray;\n } else {\n smallerArray = secondArray;\n largerArray = firstArray;\n }\n // combine arrays based on poiid\n const combinedData = smallerArray\n .map((item) => {\n const matchingItem = largerArray.find(\n (largerArrayItem) => largerArrayItem.poiid === item.poiid\n );\n return { ...item, ...matchingItem };\n })\n .sort((a, b) => {\n return a.title.localeCompare(b.title); // Sorts alphabetically by the 'name' property\n });\n console.log(\"Combined Data:\", combinedData);\n return combinedData;\n }\n\n private enhanceTags(\n availableTags: StzhAvailableTag[],\n combinedData: StzhCombinedGeoRefData[]\n ): StzhChipselectItem[] {\n return availableTags\n .sort((a, b) => a.label.localeCompare(b.label))\n .map((tag) => {\n const counter = combinedData\n .filter((item) => item.tags.includes(tag.value))\n .length.toString();\n return { ...tag, counter, variant: \"filter\" };\n });\n }\n\n private buildSearchIndex(data: StzhCombinedGeoRefData[]) {\n if (!data.length) {\n return;\n }\n this.searchIndex = new Document({\n tokenize: \"forward\",\n matcher: {\n \"[äà]\": \"a\",\n \"[öó]\": \"o\",\n \"[üûúù]\": \"u\",\n \"[éè]\": \"e\",\n },\n document: {\n id: \"poiid\", // TODO: move to props so that backend can define\n index: [\"title\", \"street\", \"zip\", \"description\"], //TODO: move to props so that backend can define\n },\n });\n data.forEach((item) => {\n this.searchIndex.add(item);\n });\n }\n\n @Listen(\"stzhMovePanZoom\")\n async mapMovedPannedOrZoomed() {\n if (this.showOnlyResultsForCurrentExtent) {\n const visibleMarkers = await this.mapElement.getVisibleMarkers();\n console.log(\"visibleMarkers\", visibleMarkers);\n }\n }\n\n connectedCallback() {\n this.mediaChangeHandler();\n addMediaChangeListener(this.mediaChangeHandler);\n this.resizeObserver = new ResizeObserver(this.handleResize);\n this.resizeObserver.observe(this.element);\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.mediaChangeHandler);\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n }\n\n private async initializeAndOpenMap() {\n this.isLoading = true;\n this.isOpen = true;\n\n try {\n this.combinedData = this.combineData(\n await this.loadMapData(),\n await this.loadPoiData()\n );\n this.enhancedTags = this.enhanceTags(\n this.availableTags,\n this.combinedData\n );\n this.buildSearchIndex(this.combinedData);\n const enhancedResetTag = {\n ...this.resetTag,\n counter: this.combinedData.length.toString(),\n };\n if (this.resetTag) {\n this.enhancedTags.unshift(enhancedResetTag);\n }\n this.finalResults = this.combinedData;\n this.finalResultsPaginatedList = this.finalResults.slice(0, 20);\n await this.combineFilterAndSearchResults();\n await this.handleResize();\n await this.mapElement.updateViewToFitMarkers();\n await this.handleResize();\n this.isInitialized = true;\n } catch (mapException) {\n console.error(\"mapException\", mapException);\n }\n\n setTimeout(() => {\n this.isLoading = false;\n }, 500);\n }\n\n private handleFilterChange = async (\n e: CustomEvent<StzhChipselectChangeEvent>\n ) => {\n if (e.detail.value.length !== 0) {\n this.filterResults = this.combinedData.filter((item) =>\n item.tags.some((tag) => e.detail.value.includes(tag))\n );\n this.filterActive = true;\n } else {\n this.filterActive = false;\n }\n await this.combineFilterAndSearchResults();\n };\n\n private handleExtentVisibilityChange = (e) => {\n this.showOnlyResultsForCurrentExtent = e.detail.checked;\n };\n\n private handleSearchChange = async (e: CustomEvent) => {\n if (e.detail.value !== \"\") {\n if (!this.searchIndex) {\n return;\n }\n const searchResults = this.searchIndex.search(e.detail.value);\n const flatSearchResults = searchResults.flatMap((field) => field.result);\n this.searchResults = new Set(flatSearchResults);\n this.searchActive = true;\n } else {\n this.searchActive = false;\n }\n await this.combineFilterAndSearchResults();\n };\n\n private async combineFilterAndSearchResults() {\n if (this.filterActive && !this.searchActive) {\n this.finalResults = this.filterResults;\n } else if (!this.filterActive && this.searchActive) {\n this.finalResults = Array.from(this.searchResults).map((poiid) =>\n this.combinedData.find((item) => item.poiid === poiid)\n );\n } else if (this.filterActive && this.searchActive) {\n this.finalResults = this.filterResults.filter((item) =>\n this.searchResults.has(item.poiid)\n );\n } else {\n this.finalResults = this.combinedData;\n }\n\n this.finalResultsPaginatedList = this.finalResults.slice(0, 20);\n\n await this.replaceMapMarkers(this.finalResults);\n }\n\n private loadMore() {\n this.finalResultsPaginationOffset++;\n this.finalResultsPaginatedList = this.finalResultsPaginatedList.concat(\n this.finalResults.slice(\n this.finalResultsPaginationOffset * 20,\n this.finalResultsPaginationOffset * 20 + 20\n )\n );\n }\n\n // private async handleExtendVisibility() {\n // if (this.showOnlyResultsForCurrentExtent) {\n // const visibleMarkers = await this.mapElement.getVisibleMarkers();\n // console.log(\"visibleMarkers\", visibleMarkers);\n // }\n // }\n\n private async replaceMapMarkers(items: StzhCombinedGeoRefData[]) {\n await this.mapElement.removeAllIconMarkers();\n items\n .filter((item) => !!item.lat && !!item.lon)\n .forEach((item) => {\n this.mapElement\n .addIconMarker([parseFloat(item.lat), parseFloat(item.lon)], {\n id: item.poiid,\n title: item.title,\n text: item.description,\n data: item.data,\n imageUri: `${this.baseUrlOverride}${item.image}`,\n href: `${this.baseUrlOverride}${item.path}`,\n })\n .catch();\n });\n if (!this.showOnlyResultsForCurrentExtent) {\n this.mapElement.updateViewToFitMarkers().catch();\n }\n }\n\n private toggleViewMode = () => {\n if (this.viewmode === \"map\") {\n this.viewmode = \"list\";\n } else {\n this.viewmode = \"map\";\n }\n };\n\n private async handlePoiTeaserMouseEnter(item: StzhCombinedGeoRefData) {\n const marker = await this.mapElement.findMarkerById(item.poiid);\n if (marker) {\n await this.mapElement.setIconMarkerActive(marker);\n }\n }\n\n private async handlePoiTeaserMouseLeave(item: StzhCombinedGeoRefData) {\n const marker = await this.mapElement.findMarkerById(item.poiid);\n if (marker) {\n await this.mapElement.setIconMarkerInactive(marker);\n }\n }\n\n // render chipselect\n\n render() {\n const classes = {\n \"stzh-geo-ref-data\": true,\n \"stzh-geo-ref-data--is-loading\": this.isLoading,\n \"stzh-geo-ref-data--is-open\": this.isOpen,\n };\n return (\n <Host>\n <div\n class=\"stzh-geo-ref-data__trigger\"\n onClick={() => this.initializeAndOpenMap()}\n >\n <slot name=\"trigger\"></slot>\n </div>\n <stzh-overlay open={this.isLoading}>\n <stzh-loader label=\"Daten werden geladen...\"></stzh-loader>\n </stzh-overlay>\n <div class={classes}>\n <div class=\"stzh-geo-ref-data__header-wrapper\">\n <stzh-header hide-metabar={true}>\n <img\n slot=\"logo\"\n src=\"media/logo/stzh-default.svg\"\n alt=\"Logo City Zürich, go to homepage\"\n />\n </stzh-header>\n <div class=\"stzh-geo-ref-data__heading stzh-geo-ref-data--content-padding\">\n <stzh-heading\n class=\"stzh-geo-ref-data__heading-heading\"\n curve=\"h2\"\n >\n {this.heading}\n </stzh-heading>\n <stzh-button\n class=\"stzh-geo-ref-data__overlay-close\"\n icon=\"close\"\n iconOnly={true}\n size=\"small\"\n variant=\"tertiary\"\n onClick={this.handleOverlayCloseClick}\n ></stzh-button>\n </div>\n </div>\n\n <div class=\"stzh-geo-ref-data__content\">\n <div\n class=\"stzh-geo-ref-data__meta-wrapper stzh-geo-ref-data--content-padding\"\n ref={(el) => (this.metaWrapperElement = el as HTMLDivElement)}\n >\n <div class=\"stzh-geo-ref-data__filters\">\n <div class=\"stzh-geo-ref-data__filters-toggle\">\n <stzh-chip\n label={this.isViewportMedium ? \"Filter\" : \"\"}\n variant=\"filter\"\n icon=\"filtering\"\n ></stzh-chip>\n </div>\n <div class=\"stzh-geo-ref-data__filters-content\">\n <stzh-chipselect\n label-hidden={true}\n label=\"Tags\"\n data={this.enhancedTags}\n onStzhChange={this.handleFilterChange}\n multiple={true}\n defaultValue={[\"\"]}\n ></stzh-chipselect>\n </div>\n </div>\n <div class=\"stzh-geo-ref-data__search\">\n <stzh-input\n size=\"small\"\n name=\"stzh-datatable-search\"\n onStzhChange={this.handleSearchChange}\n hideOptional={true}\n label=\"Suche\"\n type=\"search\"\n ></stzh-input>\n </div>\n <div class=\"stzh-geo-ref-data__results-toggle\">\n <stzh-chip\n onStzhClick={this.toggleViewMode}\n label={this.viewmode === \"map\" ? \"Liste\" : \"Karte\"}\n icon={this.viewmode === \"map\" ? \"bulleted-list\" : \"map\"}\n variant=\"filter\"\n ></stzh-chip>\n </div>\n </div>\n <div class=\"stzh-geo-ref-data__results-wrapper\">\n <div\n class={`stzh-geo-ref-data__results-map ${\n this.viewmode === \"map\" ? \"active\" : \"inactive\"\n }`}\n >\n <stzh-olmap\n class=\"stzh-geo-ref-data__ol-map\"\n centerMarker={false}\n ref={(el) => (this.mapElement = el as HTMLStzhOlmapElement)}\n ></stzh-olmap>\n <div class=\"stzh-geo-ref-data__map-controls\">\n <stzh-checkbox\n label=\"Treffer an Kartenaussicht anpassen\"\n checked={this.showOnlyResultsForCurrentExtent}\n hideOptional={true}\n onStzhChange={this.handleExtentVisibilityChange}\n ></stzh-checkbox>\n </div>\n </div>\n <div\n class={`stzh-geo-ref-data__results-list ${\n this.viewmode === \"list\" ? \"active\" : \"inactive\"\n }`}\n ref={(el) => (this.resultsListElement = el as HTMLDivElement)}\n >\n {this.finalResults && (\n <Fragment>\n <stzh-text class=\"stzh-geo-ref-data__results-list-heading\">\n {this.finalResults.length} Treffer\n </stzh-text>\n <div class=\"stzh-geo-ref-data__teaser-list\">\n {this.finalResultsPaginatedList.map((item) => (\n <div\n class=\"stzh-poi-teaser\"\n onMouseEnter={() =>\n this.handlePoiTeaserMouseEnter(item)\n }\n onMouseLeave={() =>\n this.handlePoiTeaserMouseLeave(item)\n }\n >\n <a\n class=\"stzh-poi-teaser-link\"\n href={this.baseUrlOverride + item.path}\n ></a>\n <div class=\"stzh-poi-teaser-content\">\n <stzh-heading curve=\"lead\">\n {item.poiname}\n </stzh-heading>\n {item.description && (\n <stzh-text size=\"micro\">\n {item.description}\n </stzh-text>\n )}\n {item.data &&\n item.data.length > 0 &&\n item.data.map((item) => (\n <div class=\"stzh-poi-teaser-list-item\">\n <stzh-icon name={item.icon}></stzh-icon>\n <stzh-text size=\"micro\">\n {item.text}\n </stzh-text>\n </div>\n ))}\n </div>\n <div class=\"stzh-poi-teaser-image\">\n <stzh-ratio ratio={\"1:1\"}></stzh-ratio>\n <div class=\"stzh-poi-teaser-image-inner\">\n <img\n src={this.baseUrlOverride + item.image}\n alt={\"Foto von \" + item.poiname}\n />\n </div>\n </div>\n </div>\n ))}\n </div>\n <div class=\"stzh-geo-ref-data__teaser-load-more\">\n <stzh-button onStzhClick={() => this.loadMore()}>\n Weitere laden\n </stzh-button>\n </div>\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"stzh-geo-ref-data.js","sourceRoot":"","sources":["../../../../src/components/stzh-geo-ref-data/stzh-geo-ref-data.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, Event, EventEmitter, Fragment, h, Host, Listen, Prop, State, Watch } from \"@stencil/core\";\nimport {\n StzhAvailableTag,\n StzhChipselectChangeEvent,\n StzhChipselectItem,\n StzhCombinedGeoRefData,\n StzhGeoRefDataOverlayCloseClickEvent,\n StzhMapGeoRefData,\n StzhPoiGeoRefData,\n} from \"../../index\";\nimport { Document } from \"flexsearch/dist/flexsearch.bundle.min.js\";\nimport { addMediaChangeListener, media, removeMediaChangeListener } from \"../../utils/media-utils\";\n\nconst CLASS_BODY_OPEN = \"stzh-overlay-open\";\n\n/**\n * @slot logo - Slot for brand logo\n */\n@Component({\n tag: \"stzh-geo-ref-data\",\n styleUrl: \"stzh-geo-ref-data.scss\",\n shadow: true,\n})\nexport class GeoRefData {\n /** Heading for the overlay. */\n @Prop({ reflect: true }) heading: string = \"\";\n\n /** The URL for fetching the card data */\n @Prop({ reflect: true }) mapDataUrl: string = \"\";\n\n /** The URL used for fetching the POI data. */\n @Prop({ reflect: true }) poiDataUrl: string = \"\";\n\n /** Base URL used for all external requests (map, card). */\n @Prop() baseUrlOverride: string = \"https://www.stadt-zuerich.ch\";\n\n /** To make sure all tags are mapped to their identificator, only these will be available. */\n @Prop() availableTags: StzhAvailableTag[] | string = [];\n private _availableTags: StzhAvailableTag[] = [];\n\n /** Reset tag (the first one). */\n @Prop() resetTag: StzhChipselectItem | string;\n private _resetTag: StzhChipselectItem;\n\n /** Fields for building the search index. */\n @Prop() searchIndexFields: string[] = [\"title\", \"poiname\", \"street\", \"zip\", \"description\"];\n\n /** Fields for building the search index. */\n @Prop() searchIndexIdField: string = \"poiid\";\n\n @Watch(\"availableTags\")\n availableTagsWatcher(newValue: StzhAvailableTag[] | string) {\n if (!newValue) {\n this._availableTags = [];\n } else if (typeof newValue === \"string\") {\n try {\n this._availableTags = JSON.parse(newValue);\n } catch (e) {\n this._availableTags = [];\n }\n } else {\n this._availableTags = newValue;\n }\n }\n\n @Watch(\"resetTag\")\n resetTagWatcher(newValue: StzhChipselectItem | string) {\n if (!newValue) {\n this._resetTag = undefined;\n } else if (typeof newValue === \"string\") {\n try {\n this._resetTag = JSON.parse(newValue);\n } catch (e) {\n this._resetTag = undefined;\n }\n } else {\n this._resetTag = newValue;\n }\n }\n\n @State() filterActive: boolean = false;\n @State() searchActive: boolean = false;\n @State() showOnlyResultsForCurrentExtent: boolean = true;\n @State() finalResults: StzhCombinedGeoRefData[] = [];\n @State() finalResultsPaginatedList: StzhCombinedGeoRefData[] = [];\n @State() finalResultsPaginationOffset = 0;\n\n @State() viewmode: \"map\" | \"list\" = \"map\";\n @State() isViewportLarge: boolean;\n @State() isViewportMedium: boolean;\n @State() isInitialized: boolean;\n @State() isOpen: boolean;\n @State() isLoading: boolean;\n @State() numberOfItemsToLoad: number = 20;\n @State() canLoadMore: boolean;\n\n /** Overlay close click event */\n @Event()\n stzhOverlayCloseClick: EventEmitter<StzhGeoRefDataOverlayCloseClickEvent>;\n\n private combinedData: StzhCombinedGeoRefData[];\n private enhancedTags: StzhChipselectItem[];\n private searchIndex: Document;\n\n private filterResults: StzhCombinedGeoRefData[] = [];\n private searchResults: Set<string>;\n\n @Element() element: HTMLStzhGeoRefDataElement;\n private mapElement: HTMLStzhOlmapElement;\n private metaWrapperElement: HTMLDivElement;\n private resultsListElement: HTMLDivElement;\n private resizeObserver: ResizeObserver;\n\n private handleOverlayCloseClick = () => {\n document.body.classList.remove(CLASS_BODY_OPEN);\n this.isOpen = false;\n };\n\n private handleResize = async () => {\n if (this.metaWrapperElement && this.metaWrapperElement.clientHeight) {\n this.mapElement.style.height = `calc(100% - ${this.metaWrapperElement.clientHeight}px)`;\n this.resultsListElement.style.height = `calc(100% - ${this.metaWrapperElement.clientHeight}px)`;\n const map = await this.mapElement.getMap();\n map.updateSize();\n }\n };\n\n private mediaChangeHandler = () => {\n this.isViewportLarge = media(\"large\").matches;\n this.isViewportMedium = media(\"medium\").matches;\n };\n\n private async loadMapData(): Promise<StzhMapGeoRefData[]> {\n if (!this.mapDataUrl) {\n console.log(\"No map data URL provided\");\n return [];\n }\n try {\n const response = await fetch(this.mapDataUrl);\n const rawMapData = await response.text();\n const parsedData = new DOMParser().parseFromString(rawMapData, \"text/xml\");\n return Array.from(parsedData.querySelectorAll(\"featureMember\")).map(item => {\n const pos = item.querySelector(\"pos\")?.textContent;\n const poiid = item.querySelector(\"poi_id\")?.textContent;\n const [lat, lon] = pos?.split(\" \") || [];\n\n return { poiid, lat, lon } as StzhMapGeoRefData;\n });\n } catch (error) {\n console.error(\"Error fetching map data:\", error);\n // TODO: add user error (toast)\n }\n }\n\n private async loadPoiData() {\n if (!this.poiDataUrl) {\n console.error(\"No POI data URL provided\");\n return [];\n }\n try {\n const response = await fetch(this.poiDataUrl, { credentials: \"include\" });\n const poiData = await response.json();\n console.log(\"POI data:\", poiData);\n return poiData.items;\n } catch (error) {\n console.error(\"Error fetching POI data:\", error);\n }\n }\n\n private combineData(\n firstArray: StzhMapGeoRefData[] | StzhPoiGeoRefData[],\n secondArray: StzhMapGeoRefData[] | StzhPoiGeoRefData[]\n ): StzhCombinedGeoRefData[] {\n if (!firstArray.length || !secondArray.length) {\n console.error(\"Missing data to combine\");\n return [];\n }\n // determine which array is smaller for performance\n let smallerArray: any[];\n let largerArray: any[];\n\n if (firstArray.length < secondArray.length) {\n smallerArray = firstArray;\n largerArray = secondArray;\n } else {\n smallerArray = secondArray;\n largerArray = firstArray;\n }\n // combine arrays based on poiid\n return smallerArray\n .map(item => {\n const matchingItem = largerArray.find(largerArrayItem => largerArrayItem.poiid === item.poiid);\n return { ...item, ...matchingItem };\n })\n .sort((a, b) => {\n try {\n return a.title.localeCompare(b.title); // Sorts alphabetically by the 'name' property\n } catch (noTitleException) {\n return 1;\n }\n });\n }\n\n private enhanceTags(availableTags: StzhAvailableTag[], combinedData: StzhCombinedGeoRefData[]): StzhChipselectItem[] {\n return availableTags\n .sort((a, b) => {\n try {\n a.label.localeCompare(b.label);\n } catch (noLabelException) {\n return 1;\n }\n })\n .map(tag => {\n const counter = combinedData\n .filter(item => {\n try {\n return item.tags.includes(tag.value);\n } catch (noTagsException) {\n return false;\n }\n })\n .length.toString();\n return { ...tag, counter, variant: \"filter\" };\n });\n }\n\n private buildSearchIndex(data: StzhCombinedGeoRefData[]) {\n if (!data.length) {\n return;\n }\n this.searchIndex = new Document({\n tokenize: \"forward\",\n matcher: {\n \"[äà]\": \"a\",\n \"[öó]\": \"o\",\n \"[üûúù]\": \"u\",\n \"[éè]\": \"e\",\n },\n document: {\n id: this.searchIndexIdField,\n index: this.searchIndexFields,\n },\n });\n data.forEach(item => {\n this.searchIndex.add(item);\n });\n }\n\n @Listen(\"stzhMovePanZoom\")\n async mapMovedPannedOrZoomed() {\n if (this.showOnlyResultsForCurrentExtent) {\n const visibleMarkers = await this.mapElement.getVisibleMarkers();\n console.log(\"visibleMarkers\", visibleMarkers);\n }\n }\n\n connectedCallback() {\n this.mediaChangeHandler();\n addMediaChangeListener(this.mediaChangeHandler);\n this.resizeObserver = new ResizeObserver(this.handleResize);\n this.resizeObserver.observe(this.element);\n this.availableTagsWatcher(this.availableTags);\n this.resetTagWatcher(this.resetTag);\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.mediaChangeHandler);\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n }\n }\n\n private async initializeAndOpenMap() {\n document.body.classList.add(CLASS_BODY_OPEN);\n this.isLoading = true;\n this.isOpen = true;\n\n try {\n this.combinedData = this.combineData(await this.loadMapData(), await this.loadPoiData());\n this.enhancedTags = this.enhanceTags(this._availableTags, this.combinedData);\n this.buildSearchIndex(this.combinedData);\n const enhancedResetTag = {\n ...this._resetTag,\n counter: this.combinedData.length.toString(),\n };\n if (this._resetTag) {\n this.enhancedTags.unshift(enhancedResetTag);\n }\n this.finalResults = this.combinedData;\n this.finalResultsPaginatedList = this.finalResults.slice(0, this.numberOfItemsToLoad);\n this.canLoadMore = this.finalResults.length > this.numberOfItemsToLoad;\n await this.combineFilterAndSearchResults();\n await this.handleResize();\n await this.mapElement.updateViewToFitMarkers();\n await this.handleResize();\n this.isInitialized = true;\n } catch (mapException) {\n console.error(\"mapException\", mapException);\n }\n\n setTimeout(() => {\n this.isLoading = false;\n }, 500);\n }\n\n private handleFilterChange = async (e: CustomEvent<StzhChipselectChangeEvent>) => {\n if (e.detail.value.length !== 0) {\n this.filterResults = this.combinedData.filter(\n item => item.tags && item.tags.some(tag => e.detail.value.includes(tag))\n );\n this.filterActive = true;\n } else {\n this.filterActive = false;\n }\n await this.combineFilterAndSearchResults();\n };\n\n private handleExtentVisibilityChange = e => {\n this.showOnlyResultsForCurrentExtent = e.detail.checked;\n };\n\n private handleSearchChange = async (e: CustomEvent) => {\n if (e.detail.value !== \"\") {\n if (!this.searchIndex) {\n return;\n }\n const searchResults = this.searchIndex.search(e.detail.value);\n const flatSearchResults = searchResults.flatMap(field => field.result);\n this.searchResults = new Set(flatSearchResults);\n this.searchActive = true;\n } else {\n this.searchActive = false;\n }\n await this.combineFilterAndSearchResults();\n };\n\n private async combineFilterAndSearchResults() {\n if (this.filterActive && !this.searchActive) {\n this.finalResults = this.filterResults;\n } else if (!this.filterActive && this.searchActive) {\n this.finalResults = Array.from(this.searchResults).map(id => this.combinedData.find(item => item.poiid === id));\n } else if (this.filterActive && this.searchActive) {\n this.finalResults = this.filterResults.filter(item => this.searchResults.has(item.poiid));\n } else {\n this.finalResults = this.combinedData;\n }\n\n this.finalResultsPaginatedList = this.finalResults.slice(0, this.numberOfItemsToLoad);\n\n await this.replaceMapMarkers(this.finalResults);\n }\n\n private loadMore() {\n this.finalResultsPaginationOffset++;\n const sliced = this.finalResults.slice(\n this.finalResultsPaginationOffset * this.numberOfItemsToLoad,\n this.finalResultsPaginationOffset * this.numberOfItemsToLoad + this.numberOfItemsToLoad\n );\n if (!sliced || !sliced.length || sliced.length < this.numberOfItemsToLoad) {\n this.canLoadMore = false;\n }\n this.finalResultsPaginatedList = this.finalResultsPaginatedList.concat(sliced);\n }\n\n // private async handleExtendVisibility() {\n // if (this.showOnlyResultsForCurrentExtent) {\n // const visibleMarkers = await this.mapElement.getVisibleMarkers();\n // console.log(\"visibleMarkers\", visibleMarkers);\n // }\n // }\n\n private async replaceMapMarkers(items: StzhCombinedGeoRefData[]) {\n await this.mapElement.removeAllIconMarkers();\n items\n .filter(item => !!item.lat && !!item.lon)\n .forEach(item => {\n this.mapElement\n .addIconMarker([parseFloat(item.lat), parseFloat(item.lon)], {\n id: item.poiid,\n title: item.title,\n text: item.description,\n data: item.data,\n imageUri: `${this.baseUrlOverride}${item.image}`,\n href: `${this.baseUrlOverride}${item.path}`,\n })\n .catch();\n });\n if (!this.showOnlyResultsForCurrentExtent) {\n this.mapElement.updateViewToFitMarkers().catch();\n }\n }\n\n private toggleViewMode = () => {\n if (this.viewmode === \"map\") {\n this.viewmode = \"list\";\n } else {\n this.viewmode = \"map\";\n }\n };\n\n private async handlePoiTeaserMouseEnter(item: StzhCombinedGeoRefData) {\n const marker = await this.mapElement.findMarkerById(item.poiid);\n if (marker) {\n await this.mapElement.setIconMarkerActive(marker);\n }\n }\n\n private async handlePoiTeaserMouseLeave(item: StzhCombinedGeoRefData) {\n const marker = await this.mapElement.findMarkerById(item.poiid);\n if (marker) {\n await this.mapElement.setIconMarkerInactive(marker);\n }\n }\n\n // render chipselect\n\n render() {\n const classes = {\n \"stzh-geo-ref-data\": true,\n \"stzh-geo-ref-data--is-loading\": this.isLoading,\n \"stzh-geo-ref-data--is-open\": this.isOpen,\n };\n return (\n <Host>\n <div class=\"stzh-geo-ref-data__trigger\" onClick={() => this.initializeAndOpenMap()}>\n <slot name=\"trigger\"></slot>\n </div>\n <stzh-overlay open={this.isLoading}>\n <stzh-loader label=\"Daten werden geladen...\"></stzh-loader>\n </stzh-overlay>\n <div class={classes}>\n <div class=\"stzh-geo-ref-data__header-wrapper\">\n <stzh-header hide-metabar={true} sticky=\"disabled\">\n <slot name=\"logo\" slot=\"logo\"></slot>\n </stzh-header>\n <div class=\"stzh-geo-ref-data__heading stzh-geo-ref-data--content-padding\">\n <stzh-heading class=\"stzh-geo-ref-data__heading-heading\" curve=\"h2\">\n {this.heading}\n </stzh-heading>\n <stzh-button\n class=\"stzh-geo-ref-data__overlay-close\"\n icon=\"close\"\n iconOnly={true}\n size=\"small\"\n variant=\"tertiary\"\n onClick={this.handleOverlayCloseClick}\n ></stzh-button>\n </div>\n </div>\n\n <div class=\"stzh-geo-ref-data__content\">\n <div\n class=\"stzh-geo-ref-data__meta-wrapper stzh-geo-ref-data--content-padding\"\n ref={el => (this.metaWrapperElement = el as HTMLDivElement)}\n >\n <div class=\"stzh-geo-ref-data__filters\">\n <div class=\"stzh-geo-ref-data__filters-toggle\">\n <stzh-chip\n label={this.isViewportMedium ? \"Filter\" : \"\"}\n variant=\"filter\"\n icon=\"filtering\"\n ></stzh-chip>\n </div>\n <div class=\"stzh-geo-ref-data__filters-content\">\n <stzh-chipselect\n label-hidden={true}\n label=\"Tags\"\n data={this.enhancedTags}\n onStzhChange={this.handleFilterChange}\n multiple={true}\n defaultValue={[\"\"]}\n ></stzh-chipselect>\n </div>\n </div>\n <div class=\"stzh-geo-ref-data__search\">\n <stzh-input\n size=\"small\"\n name=\"stzh-datatable-search\"\n onStzhChange={this.handleSearchChange}\n hideOptional={true}\n label=\"Suche\"\n type=\"search\"\n ></stzh-input>\n </div>\n <div class=\"stzh-geo-ref-data__results-toggle\">\n <stzh-chip\n onStzhClick={this.toggleViewMode}\n label={this.viewmode === \"map\" ? \"Liste\" : \"Karte\"}\n icon={this.viewmode === \"map\" ? \"bulleted-list\" : \"map\"}\n variant=\"filter\"\n ></stzh-chip>\n </div>\n </div>\n <div class=\"stzh-geo-ref-data__results-wrapper\">\n <div class={`stzh-geo-ref-data__results-map ${this.viewmode === \"map\" ? \"active\" : \"inactive\"}`}>\n <stzh-olmap\n class=\"stzh-geo-ref-data__ol-map\"\n centerMarker={false}\n ref={el => (this.mapElement = el as HTMLStzhOlmapElement)}\n ></stzh-olmap>\n <div class=\"stzh-geo-ref-data__map-controls\">\n <stzh-checkbox\n label=\"Treffer an Kartenaussicht anpassen\"\n checked={this.showOnlyResultsForCurrentExtent}\n hideOptional={true}\n onStzhChange={this.handleExtentVisibilityChange}\n ></stzh-checkbox>\n </div>\n </div>\n <div\n class={`stzh-geo-ref-data__results-list ${this.viewmode === \"list\" ? \"active\" : \"inactive\"}`}\n ref={el => (this.resultsListElement = el as HTMLDivElement)}\n >\n {this.finalResults && (\n <Fragment>\n <stzh-text class=\"stzh-geo-ref-data__results-list-heading\">\n {this.finalResults.length} Treffer\n </stzh-text>\n <div class=\"stzh-geo-ref-data__teaser-list\">\n {this.finalResultsPaginatedList.map(item => (\n <div\n class=\"stzh-poi-teaser\"\n onMouseEnter={() => this.handlePoiTeaserMouseEnter(item)}\n onMouseLeave={() => this.handlePoiTeaserMouseLeave(item)}\n >\n <a class=\"stzh-poi-teaser-link\" href={this.baseUrlOverride + item.path}></a>\n <div class=\"stzh-poi-teaser-content\">\n <stzh-heading curve=\"lead\">{item.poiname}</stzh-heading>\n {item.description && <stzh-text size=\"micro\">{item.description}</stzh-text>}\n {item.data &&\n item.data.length > 0 &&\n item.data.map(item => (\n <div class=\"stzh-poi-teaser-list-item\">\n <stzh-icon name={item.icon}></stzh-icon>\n <stzh-text size=\"micro\">{item.text}</stzh-text>\n </div>\n ))}\n </div>\n <div class=\"stzh-poi-teaser-image\">\n <stzh-ratio ratio={\"1:1\"}></stzh-ratio>\n <div class=\"stzh-poi-teaser-image-inner\">\n <img src={this.baseUrlOverride + item.image} alt={\"Foto von \" + item.poiname} />\n </div>\n </div>\n </div>\n ))}\n </div>\n {this.canLoadMore && (\n <div class=\"stzh-geo-ref-data__teaser-load-more\">\n <stzh-button onStzhClick={() => this.loadMore()}>Weitere laden</stzh-button>\n </div>\n )}\n </Fragment>\n )}\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
|