@oiz/stzh-components 2.11.1 → 2.12.0-beta1
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-7697372c.js → app-globals-749422d7.js} +8 -4
- package/dist/cjs/app-globals-749422d7.js.map +1 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/stzh-accordion.cjs.entry.js +1 -1
- package/dist/cjs/stzh-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-appointments.cjs.entry.js +7 -3
- package/dist/cjs/stzh-appointments.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-components.cjs.js +2 -2
- package/dist/cjs/stzh-container.cjs.entry.js +1 -1
- package/dist/cjs/stzh-container.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-datepicker_3.cjs.entry.js +33 -14
- package/dist/cjs/stzh-datepicker_3.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-gallery.cjs.entry.js +1 -1
- package/dist/cjs/stzh-gallery.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-progressbar-item.cjs.entry.js +2 -1
- package/dist/cjs/stzh-progressbar-item.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-progressbar.cjs.entry.js +14 -0
- package/dist/cjs/stzh-progressbar.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-sticky.cjs.entry.js +1 -1
- package/dist/cjs/stzh-sticky.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-toastbar.cjs.entry.js +8 -1
- package/dist/cjs/stzh-toastbar.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js +7 -3
- package/dist/cjs/stzh-vbz-majorticker.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-vbz-ticker.cjs.entry.js +7 -3
- package/dist/cjs/stzh-vbz-ticker.cjs.entry.js.map +1 -1
- package/dist/collection/assets/i18n/de.json +12 -0
- package/dist/collection/assets/i18n/en.json +12 -0
- package/dist/collection/components/stzh-accordion/stzh-accordion.css +3 -2
- package/dist/collection/components/stzh-appointments/stzh-appointments.js +9 -3
- package/dist/collection/components/stzh-appointments/stzh-appointments.js.map +1 -1
- package/dist/collection/components/stzh-button/stzh-button.js +1 -1
- package/dist/collection/components/stzh-checkbox/stzh-checkbox.js +1 -1
- package/dist/collection/components/stzh-checkboxgroup/stzh-checkboxgroup.js +1 -1
- package/dist/collection/components/stzh-chip-select/stzh-chip-select.js +1 -1
- package/dist/collection/components/stzh-container/stzh-container.css +8 -8
- package/dist/collection/components/stzh-datalist/stzh-datalist.css +1 -1
- package/dist/collection/components/stzh-datalist-item/stzh-datalist-item.js +1 -1
- package/dist/collection/components/stzh-datepicker/stzh-datepicker.js +62 -15
- package/dist/collection/components/stzh-datepicker/stzh-datepicker.js.map +1 -1
- package/dist/collection/components/stzh-gallery/stzh-gallery.css +0 -4
- package/dist/collection/components/stzh-input/stzh-input.js +1 -1
- package/dist/collection/components/stzh-link/stzh-link.js +1 -1
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js +35 -0
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js.map +1 -1
- package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.js +3 -2
- package/dist/collection/components/stzh-progressbar-item/stzh-progressbar-item.js.map +1 -1
- package/dist/collection/components/stzh-radio/stzh-radio.js +1 -1
- package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js +5 -3
- package/dist/collection/components/stzh-radiogroup/stzh-radiogroup.js.map +1 -1
- package/dist/collection/components/stzh-richtext/stzh-richtext.js +1 -1
- package/dist/collection/components/stzh-sticky/stzh-sticky.css +4 -4
- package/dist/collection/components/stzh-timepicker/stzh-timepicker.js +1 -1
- package/dist/collection/components/stzh-toastbar/stzh-toastbar.js +8 -1
- package/dist/collection/components/stzh-toastbar/stzh-toastbar.js.map +1 -1
- package/dist/collection/components/stzh-toggle/stzh-toggle.js +1 -1
- package/dist/collection/components/stzh-vbz-majorticker/stzh-vbz-majorticker.js +9 -3
- package/dist/collection/components/stzh-vbz-majorticker/stzh-vbz-majorticker.js.map +1 -1
- package/dist/collection/components/stzh-vbz-ticker/stzh-vbz-ticker.js +9 -3
- package/dist/collection/components/stzh-vbz-ticker/stzh-vbz-ticker.js.map +1 -1
- package/dist/collection/global/js/helpers/utils.js +6 -2
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/utils/translation-utils.js.map +1 -1
- package/dist/components/index.js +7 -3
- package/dist/components/index.js.map +1 -1
- package/dist/components/index2.js.map +1 -1
- package/dist/components/stzh-accordion.js +1 -1
- package/dist/components/stzh-accordion.js.map +1 -1
- package/dist/components/stzh-appointments.js +8 -3
- package/dist/components/stzh-appointments.js.map +1 -1
- package/dist/components/stzh-container.js +1 -1
- package/dist/components/stzh-container.js.map +1 -1
- package/dist/components/stzh-datalist2.js +1 -1
- package/dist/components/stzh-datalist2.js.map +1 -1
- package/dist/components/stzh-datepicker2.js +38 -16
- package/dist/components/stzh-datepicker2.js.map +1 -1
- package/dist/components/stzh-gallery.js +1 -1
- package/dist/components/stzh-gallery.js.map +1 -1
- package/dist/components/stzh-progressbar-item2.js +2 -1
- package/dist/components/stzh-progressbar-item2.js.map +1 -1
- package/dist/components/stzh-progressbar.js +16 -1
- package/dist/components/stzh-progressbar.js.map +1 -1
- package/dist/components/stzh-radiogroup2.js +1 -1
- package/dist/components/stzh-sticky.js +1 -1
- package/dist/components/stzh-sticky.js.map +1 -1
- package/dist/components/stzh-toastbar.js +8 -1
- package/dist/components/stzh-toastbar.js.map +1 -1
- package/dist/components/stzh-vbz-majorticker.js +8 -3
- package/dist/components/stzh-vbz-majorticker.js.map +1 -1
- package/dist/components/stzh-vbz-ticker.js +8 -3
- package/dist/components/stzh-vbz-ticker.js.map +1 -1
- package/dist/esm/{app-globals-1a77c38b.js → app-globals-5f5be02f.js} +8 -4
- package/dist/esm/app-globals-5f5be02f.js.map +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/stzh-accordion.entry.js +1 -1
- package/dist/esm/stzh-accordion.entry.js.map +1 -1
- package/dist/esm/stzh-appointments.entry.js +7 -3
- package/dist/esm/stzh-appointments.entry.js.map +1 -1
- package/dist/esm/stzh-components.js +2 -2
- package/dist/esm/stzh-container.entry.js +1 -1
- package/dist/esm/stzh-container.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-datepicker_3.entry.js +34 -15
- package/dist/esm/stzh-datepicker_3.entry.js.map +1 -1
- package/dist/esm/stzh-gallery.entry.js +1 -1
- package/dist/esm/stzh-gallery.entry.js.map +1 -1
- package/dist/esm/stzh-progressbar-item.entry.js +2 -1
- package/dist/esm/stzh-progressbar-item.entry.js.map +1 -1
- package/dist/esm/stzh-progressbar.entry.js +14 -0
- package/dist/esm/stzh-progressbar.entry.js.map +1 -1
- package/dist/esm/stzh-sticky.entry.js +1 -1
- package/dist/esm/stzh-sticky.entry.js.map +1 -1
- package/dist/esm/stzh-toastbar.entry.js +8 -1
- package/dist/esm/stzh-toastbar.entry.js.map +1 -1
- package/dist/esm/stzh-vbz-majorticker.entry.js +7 -3
- package/dist/esm/stzh-vbz-majorticker.entry.js.map +1 -1
- package/dist/esm/stzh-vbz-ticker.entry.js +7 -3
- package/dist/esm/stzh-vbz-ticker.entry.js.map +1 -1
- package/dist/esm-es5/{app-globals-1a77c38b.js → app-globals-5f5be02f.js} +2 -2
- package/dist/esm-es5/app-globals-5f5be02f.js.map +1 -0
- package/dist/esm-es5/index.js.map +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/stzh-accordion.entry.js +1 -1
- package/dist/esm-es5/stzh-accordion.entry.js.map +1 -1
- package/dist/esm-es5/stzh-appointments.entry.js +1 -1
- package/dist/esm-es5/stzh-appointments.entry.js.map +1 -1
- package/dist/esm-es5/stzh-components.js +1 -1
- package/dist/esm-es5/stzh-components.js.map +1 -1
- package/dist/esm-es5/stzh-container.entry.js +1 -1
- package/dist/esm-es5/stzh-container.entry.js.map +1 -1
- package/dist/esm-es5/stzh-datalist_2.entry.js +1 -1
- package/dist/esm-es5/stzh-datalist_2.entry.js.map +1 -1
- package/dist/esm-es5/stzh-datepicker_3.entry.js +1 -1
- package/dist/esm-es5/stzh-datepicker_3.entry.js.map +1 -1
- package/dist/esm-es5/stzh-gallery.entry.js +1 -1
- package/dist/esm-es5/stzh-gallery.entry.js.map +1 -1
- package/dist/esm-es5/stzh-progressbar-item.entry.js +1 -1
- package/dist/esm-es5/stzh-progressbar-item.entry.js.map +1 -1
- package/dist/esm-es5/stzh-progressbar.entry.js +1 -1
- package/dist/esm-es5/stzh-progressbar.entry.js.map +1 -1
- package/dist/esm-es5/stzh-sticky.entry.js +1 -1
- package/dist/esm-es5/stzh-sticky.entry.js.map +1 -1
- package/dist/esm-es5/stzh-toastbar.entry.js +1 -1
- package/dist/esm-es5/stzh-toastbar.entry.js.map +1 -1
- package/dist/esm-es5/stzh-vbz-majorticker.entry.js +1 -1
- package/dist/esm-es5/stzh-vbz-majorticker.entry.js.map +1 -1
- package/dist/esm-es5/stzh-vbz-ticker.entry.js +1 -1
- package/dist/esm-es5/stzh-vbz-ticker.entry.js.map +1 -1
- package/dist/stzh-components/assets/i18n/de.json +12 -0
- package/dist/stzh-components/assets/i18n/en.json +12 -0
- package/dist/stzh-components/index.esm.js.map +1 -1
- package/dist/stzh-components/p-0b1b2aa6.system.entry.js +2 -0
- package/dist/stzh-components/p-0b1b2aa6.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-11784b90.entry.js → p-0ba7ce34.entry.js} +2 -2
- package/dist/stzh-components/p-0ba7ce34.entry.js.map +1 -0
- package/dist/stzh-components/p-0bb08043.system.js.map +1 -1
- package/dist/stzh-components/p-222ba06a.entry.js +2 -0
- package/dist/stzh-components/p-222ba06a.entry.js.map +1 -0
- package/dist/stzh-components/{p-c658502d.system.entry.js → p-241997a2.system.entry.js} +2 -2
- package/dist/stzh-components/p-241997a2.system.entry.js.map +1 -0
- package/dist/stzh-components/p-2d88c544.system.entry.js +2 -0
- package/dist/stzh-components/p-2d88c544.system.entry.js.map +1 -0
- package/dist/stzh-components/p-361996d1.entry.js +2 -0
- package/dist/stzh-components/p-361996d1.entry.js.map +1 -0
- package/dist/stzh-components/{p-54dbcd0e.system.entry.js → p-383c2c21.system.entry.js} +2 -2
- package/dist/stzh-components/{p-54dbcd0e.system.entry.js.map → p-383c2c21.system.entry.js.map} +1 -1
- package/dist/stzh-components/{p-15980af0.entry.js → p-534dc28e.entry.js} +2 -2
- package/dist/stzh-components/{p-15980af0.entry.js.map → p-534dc28e.entry.js.map} +1 -1
- package/dist/stzh-components/{p-5fdf0a8e.entry.js → p-5486402c.entry.js} +2 -2
- package/dist/stzh-components/{p-5fdf0a8e.entry.js.map → p-5486402c.entry.js.map} +1 -1
- package/dist/stzh-components/p-55d76b46.system.entry.js +2 -0
- package/dist/stzh-components/p-55d76b46.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-98b60fb7.js → p-5e014c0e.js} +2 -2
- package/dist/stzh-components/p-5e014c0e.js.map +1 -0
- package/dist/stzh-components/{p-e5c1f04c.system.entry.js → p-628b5b0d.system.entry.js} +2 -2
- package/dist/stzh-components/p-628b5b0d.system.entry.js.map +1 -0
- package/dist/stzh-components/p-66b0d1f3.entry.js +2 -0
- package/dist/stzh-components/p-66b0d1f3.entry.js.map +1 -0
- package/dist/stzh-components/{p-8b4cc10d.entry.js → p-761909d5.entry.js} +2 -2
- package/dist/stzh-components/p-761909d5.entry.js.map +1 -0
- package/dist/stzh-components/{p-50914ed3.system.entry.js → p-87a3758c.system.entry.js} +2 -2
- package/dist/stzh-components/p-87a3758c.system.entry.js.map +1 -0
- package/dist/stzh-components/p-a1e1261a.entry.js +2 -0
- package/dist/stzh-components/p-a1e1261a.entry.js.map +1 -0
- package/dist/stzh-components/p-aa9975e6.entry.js +2 -0
- package/dist/stzh-components/p-aa9975e6.entry.js.map +1 -0
- package/dist/stzh-components/{p-bb2fe16f.system.entry.js → p-b3d76f2a.system.entry.js} +2 -2
- package/dist/stzh-components/{p-bb2fe16f.system.entry.js.map → p-b3d76f2a.system.entry.js.map} +1 -1
- package/dist/stzh-components/p-bf7316ab.system.js +2 -0
- package/dist/stzh-components/{p-bde8bb45.system.js.map → p-bf7316ab.system.js.map} +1 -1
- package/dist/stzh-components/{p-aefc1441.entry.js → p-c57402af.entry.js} +2 -2
- package/dist/stzh-components/p-c57402af.entry.js.map +1 -0
- package/dist/stzh-components/{p-cbcb366a.system.entry.js → p-c60ccc16.system.entry.js} +2 -2
- package/dist/stzh-components/p-c60ccc16.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-cc260e20.entry.js → p-d5ee8b1a.entry.js} +2 -2
- package/dist/stzh-components/{p-cc260e20.entry.js.map → p-d5ee8b1a.entry.js.map} +1 -1
- package/dist/stzh-components/{p-d9984b93.system.entry.js → p-dc30c467.system.entry.js} +2 -2
- package/dist/stzh-components/p-dc30c467.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-9bfe7d0d.system.entry.js → p-e69312e4.system.entry.js} +2 -2
- package/dist/stzh-components/p-e69312e4.system.entry.js.map +1 -0
- package/dist/stzh-components/{p-84ae2651.system.js → p-ebb38041.system.js} +2 -2
- package/dist/stzh-components/p-ebb38041.system.js.map +1 -0
- package/dist/stzh-components/p-fa0e39e0.system.entry.js +2 -0
- package/dist/stzh-components/p-fa0e39e0.system.entry.js.map +1 -0
- package/dist/stzh-components/p-ffb4e717.entry.js +2 -0
- package/dist/stzh-components/p-ffb4e717.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/stzh-components/stzh-components.js +1 -1
- package/dist/types/components.d.ts +14 -2
- package/dist/types/utils/translation-utils.d.ts +2 -0
- package/dist/vscode-data.json +7523 -0
- package/package.json +1 -1
- package/dist/cjs/app-globals-7697372c.js.map +0 -1
- package/dist/esm/app-globals-1a77c38b.js.map +0 -1
- package/dist/esm-es5/app-globals-1a77c38b.js.map +0 -1
- package/dist/stzh-components/p-07819ba5.entry.js +0 -2
- package/dist/stzh-components/p-07819ba5.entry.js.map +0 -1
- package/dist/stzh-components/p-1095d872.system.entry.js +0 -2
- package/dist/stzh-components/p-1095d872.system.entry.js.map +0 -1
- package/dist/stzh-components/p-11784b90.entry.js.map +0 -1
- package/dist/stzh-components/p-446dcea5.entry.js +0 -2
- package/dist/stzh-components/p-446dcea5.entry.js.map +0 -1
- package/dist/stzh-components/p-50914ed3.system.entry.js.map +0 -1
- package/dist/stzh-components/p-7b0da017.entry.js +0 -2
- package/dist/stzh-components/p-7b0da017.entry.js.map +0 -1
- package/dist/stzh-components/p-7fdd98fe.entry.js +0 -2
- package/dist/stzh-components/p-7fdd98fe.entry.js.map +0 -1
- package/dist/stzh-components/p-84ae2651.system.js.map +0 -1
- package/dist/stzh-components/p-8b4cc10d.entry.js.map +0 -1
- package/dist/stzh-components/p-8f98fc45.system.entry.js +0 -2
- package/dist/stzh-components/p-8f98fc45.system.entry.js.map +0 -1
- package/dist/stzh-components/p-98b60fb7.js.map +0 -1
- package/dist/stzh-components/p-9bfe7d0d.system.entry.js.map +0 -1
- package/dist/stzh-components/p-aafc8687.entry.js +0 -2
- package/dist/stzh-components/p-aafc8687.entry.js.map +0 -1
- package/dist/stzh-components/p-aefc1441.entry.js.map +0 -1
- package/dist/stzh-components/p-afb2885a.entry.js +0 -2
- package/dist/stzh-components/p-afb2885a.entry.js.map +0 -1
- package/dist/stzh-components/p-bde8bb45.system.js +0 -2
- package/dist/stzh-components/p-c658502d.system.entry.js.map +0 -1
- package/dist/stzh-components/p-cbcb366a.system.entry.js.map +0 -1
- package/dist/stzh-components/p-d9984b93.system.entry.js.map +0 -1
- package/dist/stzh-components/p-e278cda2.system.entry.js +0 -2
- package/dist/stzh-components/p-e278cda2.system.entry.js.map +0 -1
- package/dist/stzh-components/p-e5c1f04c.system.entry.js.map +0 -1
- package/dist/stzh-components/p-ff356dc8.system.entry.js +0 -2
- package/dist/stzh-components/p-ff356dc8.system.entry.js.map +0 -1
- package/dist/types/components/stzh-accordion/stzh-accordion.d.ts +0 -15
- package/dist/types/components/stzh-accordion-item/stzh-accordion-item.d.ts +0 -73
- package/dist/types/components/stzh-actions/stzh-actions.d.ts +0 -16
- package/dist/types/components/stzh-actionset/stzh-actionset.d.ts +0 -45
- package/dist/types/components/stzh-amount/stzh-amount.d.ts +0 -73
- package/dist/types/components/stzh-appnav/stzh-appnav.d.ts +0 -23
- package/dist/types/components/stzh-appointments/stzh-appointments.d.ts +0 -73
- package/dist/types/components/stzh-audio/stzh-audio.d.ts +0 -58
- package/dist/types/components/stzh-button/stzh-button.d.ts +0 -105
- package/dist/types/components/stzh-buttongroup/stzh-buttongroup.d.ts +0 -7
- package/dist/types/components/stzh-calendar/stzh-calendar.d.ts +0 -88
- package/dist/types/components/stzh-card/stzh-card.d.ts +0 -127
- package/dist/types/components/stzh-card-list/stzh-card-list.d.ts +0 -31
- package/dist/types/components/stzh-carousel/stzh-carousel.d.ts +0 -175
- package/dist/types/components/stzh-chart/stzh-chart.d.ts +0 -15
- package/dist/types/components/stzh-checkbox/stzh-checkbox.d.ts +0 -57
- package/dist/types/components/stzh-checkboxgroup/stzh-checkboxgroup.d.ts +0 -64
- package/dist/types/components/stzh-chip/stzh-chip.d.ts +0 -74
- package/dist/types/components/stzh-chip-select/stzh-chip-select.d.ts +0 -46
- package/dist/types/components/stzh-clamp/stzh-clamp.d.ts +0 -49
- package/dist/types/components/stzh-contact/stzh-contact.d.ts +0 -54
- package/dist/types/components/stzh-datalist/stzh-datalist.d.ts +0 -51
- package/dist/types/components/stzh-datalist-item/stzh-datalist-item.d.ts +0 -62
- package/dist/types/components/stzh-datamessagelist/stzh-datamessagelist.d.ts +0 -6
- package/dist/types/components/stzh-datamessagelist-item/stzh-datamessagelist-item.d.ts +0 -57
- package/dist/types/components/stzh-datatable/stzh-datatable.d.ts +0 -103
- package/dist/types/components/stzh-datepicker/stzh-datepicker.d.ts +0 -91
- package/dist/types/components/stzh-details/stzh-details.d.ts +0 -35
- package/dist/types/components/stzh-dialog/stzh-dialog.d.ts +0 -64
- package/dist/types/components/stzh-dropdown/stzh-dropdown.d.ts +0 -173
- package/dist/types/components/stzh-figure/stzh-figure.d.ts +0 -21
- package/dist/types/components/stzh-flyingfocus/stzh-flyingfocus.d.ts +0 -35
- package/dist/types/components/stzh-footer/stzh-footer.d.ts +0 -27
- package/dist/types/components/stzh-gallery/stzh-gallery.d.ts +0 -54
- package/dist/types/components/stzh-ghettobox/stzh-ghettobox.d.ts +0 -50
- package/dist/types/components/stzh-header/stzh-header.d.ts +0 -68
- package/dist/types/components/stzh-hr/stzh-hr.d.ts +0 -7
- package/dist/types/components/stzh-iframe/stzh-iframe.d.ts +0 -60
- package/dist/types/components/stzh-imagecomparison/stzh-imagecomparison.d.ts +0 -29
- package/dist/types/components/stzh-input/stzh-input.d.ts +0 -104
- package/dist/types/components/stzh-invert/stzh-invert.d.ts +0 -7
- package/dist/types/components/stzh-langnav/stzh-langnav.d.ts +0 -19
- package/dist/types/components/stzh-link/stzh-link.d.ts +0 -88
- package/dist/types/components/stzh-list/stzh-list.d.ts +0 -9
- package/dist/types/components/stzh-list-item/stzh-list-item.d.ts +0 -7
- package/dist/types/components/stzh-loader/stzh-loader.d.ts +0 -13
- package/dist/types/components/stzh-loadingbar/stzh-loadingbar.d.ts +0 -12
- package/dist/types/components/stzh-logo/stzh-logo.d.ts +0 -9
- package/dist/types/components/stzh-menu-item/stzh-menu-item.d.ts +0 -50
- package/dist/types/components/stzh-message/stzh-message.d.ts +0 -37
- package/dist/types/components/stzh-metanav/stzh-metanav.d.ts +0 -11
- package/dist/types/components/stzh-microsite-teaserlist/stzh-microsite-teaserlist.d.ts +0 -33
- package/dist/types/components/stzh-monthyearpicker/stzh-monthyearpicker.d.ts +0 -98
- package/dist/types/components/stzh-olmap/stzh-olmap.d.ts +0 -124
- package/dist/types/components/stzh-overlay/stzh-overlay.d.ts +0 -34
- package/dist/types/components/stzh-page-skiplinks/stzh-page-skiplinks.d.ts +0 -11
- package/dist/types/components/stzh-pagebottom/stzh-pagebottom.d.ts +0 -29
- package/dist/types/components/stzh-pagetitle/stzh-pagetitle.d.ts +0 -15
- package/dist/types/components/stzh-pagetitle-hero/stzh-pagetitle-hero.d.ts +0 -25
- package/dist/types/components/stzh-pagination/stzh-pagination.d.ts +0 -52
- package/dist/types/components/stzh-panorama/stzh-panorama.d.ts +0 -74
- package/dist/types/components/stzh-popover/stzh-popover.d.ts +0 -73
- package/dist/types/components/stzh-print/stzh-print.d.ts +0 -12
- package/dist/types/components/stzh-progressbar/stzh-progressbar.d.ts +0 -49
- package/dist/types/components/stzh-progressbar-item/stzh-progressbar-item.d.ts +0 -34
- package/dist/types/components/stzh-radio/stzh-radio.d.ts +0 -57
- package/dist/types/components/stzh-radiogroup/stzh-radiogroup.d.ts +0 -66
- package/dist/types/components/stzh-ratio/stzh-ratio.d.ts +0 -22
- package/dist/types/components/stzh-readspeaker/stzh-readspeaker.d.ts +0 -18
- package/dist/types/components/stzh-richtext/stzh-richtext.d.ts +0 -22
- package/dist/types/components/stzh-saptcha/stzh-saptcha.d.ts +0 -28
- package/dist/types/components/stzh-scrollup/stzh-scrollup.d.ts +0 -12
- package/dist/types/components/stzh-share/stzh-share.d.ts +0 -21
- package/dist/types/components/stzh-show/stzh-show.d.ts +0 -22
- package/dist/types/components/stzh-sitemap/stzh-sitemap.d.ts +0 -14
- package/dist/types/components/stzh-skiplink/stzh-skiplink.d.ts +0 -38
- package/dist/types/components/stzh-sortable/stzh-sortable.d.ts +0 -59
- package/dist/types/components/stzh-status/stzh-status.d.ts +0 -14
- package/dist/types/components/stzh-sticky/stzh-sticky.d.ts +0 -58
- package/dist/types/components/stzh-table/stzh-table.d.ts +0 -43
- package/dist/types/components/stzh-textandimage/stzh-textandimage.d.ts +0 -14
- package/dist/types/components/stzh-timeline/stzh-timeline.d.ts +0 -23
- package/dist/types/components/stzh-timeline-item/stzh-timeline-item.d.ts +0 -78
- package/dist/types/components/stzh-timepicker/stzh-timepicker.d.ts +0 -62
- package/dist/types/components/stzh-toast/stzh-toast.d.ts +0 -39
- package/dist/types/components/stzh-toastbar/stzh-toastbar.d.ts +0 -41
- package/dist/types/components/stzh-toggle/stzh-toggle.d.ts +0 -59
- package/dist/types/components/stzh-tooltip/stzh-tooltip.d.ts +0 -80
- package/dist/types/components/stzh-upload/stzh-upload.d.ts +0 -236
- package/dist/types/components/stzh-vbz-carousel/stzh-vbz-carousel.d.ts +0 -14
- package/dist/types/components/stzh-vbz-linechip/stzh-vbz-linechip.d.ts +0 -37
- package/dist/types/components/stzh-vbz-majorticker/stzh-vbz-majorticker.d.ts +0 -41
- package/dist/types/components/stzh-vbz-ticker/stzh-vbz-ticker.d.ts +0 -34
- package/dist/types/components/stzh-youtube/stzh-youtube.d.ts +0 -30
- package/dist/types/index.d.ts +0 -899
- package/dist/types/libraries/tom-select/types/constants.d.ts +0 -12
- package/dist/types/libraries/tom-select/types/contrib/highlight.d.ts +0 -13
- package/dist/types/libraries/tom-select/types/contrib/microevent.d.ts +0 -20
- package/dist/types/libraries/tom-select/types/contrib/microplugin.d.ts +0 -71
- package/dist/types/libraries/tom-select/types/defaults.d.ts +0 -51
- package/dist/types/libraries/tom-select/types/getSettings.d.ts +0 -3
- package/dist/types/libraries/tom-select/types/plugins/caret_position/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/plugins/change_listener/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/plugins/checkbox_options/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/plugins/clear_button/plugin.d.ts +0 -17
- package/dist/types/libraries/tom-select/types/plugins/clear_button/types.d.ts +0 -5
- package/dist/types/libraries/tom-select/types/plugins/drag_drop/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/plugins/dropdown_header/plugin.d.ts +0 -17
- package/dist/types/libraries/tom-select/types/plugins/dropdown_header/types.d.ts +0 -8
- package/dist/types/libraries/tom-select/types/plugins/dropdown_input/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/plugins/input_autogrow/plugin.d.ts +0 -15
- package/dist/types/libraries/tom-select/types/plugins/no_active_items/plugin.d.ts +0 -15
- package/dist/types/libraries/tom-select/types/plugins/no_backspace_delete/plugin.d.ts +0 -15
- package/dist/types/libraries/tom-select/types/plugins/optgroup_columns/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/plugins/remove_button/plugin.d.ts +0 -17
- package/dist/types/libraries/tom-select/types/plugins/remove_button/types.d.ts +0 -6
- package/dist/types/libraries/tom-select/types/plugins/restore_on_backspace/plugin.d.ts +0 -21
- package/dist/types/libraries/tom-select/types/plugins/virtual_scroll/plugin.d.ts +0 -16
- package/dist/types/libraries/tom-select/types/tom-select.complete.d.ts +0 -2
- package/dist/types/libraries/tom-select/types/tom-select.d.ts +0 -596
- package/dist/types/libraries/tom-select/types/tom-select.popular.d.ts +0 -2
- package/dist/types/libraries/tom-select/types/types/core.d.ts +0 -48
- package/dist/types/libraries/tom-select/types/types/index.d.ts +0 -2
- package/dist/types/libraries/tom-select/types/types/settings.d.ts +0 -78
- package/dist/types/libraries/tom-select/types/utils.d.ts +0 -76
- package/dist/types/libraries/tom-select/types/vanilla.d.ts +0 -76
- package/dist/types/types/svg.d.ts +0 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VBZ","BASE_TYPE_GLOBAL","CHANNEL_TICKER","CHANNEL_INFO_URL_FILTER","DISTURBANCE_GLOBAL","DISTURBANCE_INFORMATION","DISTURBANCE_CONSTRUCTION","DISTURBANCE_NORMAL","DISTURBANCE_EVENT","DISTURBANCE_BUS","exports"],"sources":["src/index.ts"],"sourcesContent":["// ---\n// Global window types\n// ---\n\nimport { StzhLocaleAdapter } from './utils/date-adapter';\n\nimport {\n StzhLocaleComponent,\n StzhLocaleFormats,\n StzhLocaleGlobals,\n} from './utils/translation-utils';\n\nexport type WindowStzhComponents = {\n version: string\n supportedLocales: string[]\n defaultLocale: string\n translations: null | StzhLocaleComponent\n translationsLoading: Promise<StzhLocaleComponent>\n pathMedia: string\n pathTranslations: string\n cacheTranslations: boolean\n formats: StzhLocaleFormats\n labels: \"flyout\" | \"fixed\"\n utils: {\n getLocale: (element: HTMLElement) => string\n fetchTranslations: (host: HTMLElement, component: string) => Promise<StzhLocaleComponent & any>\n\n format: (date: Date, type: string) => string\n parse:(string: string, type: string) => Date\n formatSpan: (date: Date | string, date2: Date | string, type: string) => string\n parseSpan: (string: string, type: string) => [Date, Date, string]\n createFormatParseAdapter: (formats: StzhLocaleFormats, globals: StzhLocaleGlobals) => StzhLocaleAdapter\n }\n}\n\ndeclare global {\n interface Window {\n stzhComponents: WindowStzhComponents\n pannellum: any\n Dropzone: any\n // readspeaker lib APIs\n ReadSpeaker: any\n rspkr: any\n proj4: any\n }\n}\n\n// ---\n// Event Types\n// ---\n\n/* Sortable */\n\nexport type StzhSortableUpdateEvent = {\n component: \"stzh-sortable\"\n data: string[]\n item: HTMLElement\n newIndex: number\n oldIndex: number\n}\n\nexport type StzhSortableDisableEvent = {\n component: \"stzh-sortable\"\n disabled: boolean\n}\n\n/* Panorama */\n\nexport type PanoramaScene = {\n sceneId: string\n imageSrc: string\n imageTitle: string\n\n imageAuthor?: string\n imageType?: \"equirectangular\" | \"cubemap\" | \"multires\"\n caption?: string\n copyright?: string\n\n pitch?: number\n yaw?: number\n hfov?: number\n\n hotspots: PanoramaSceneHotSpot[]\n}\n\nexport type PanoramaScenesLibrary = {\n [sceneKey: string]: {\n title: string\n author: string\n panorama: string\n type?: \"equirectangular\" | \"cubemap\" | \"multires\"\n\n pitch?: number\n yaw?: number\n hfov?: number\n\n hotSpots: PanoramaSceneHotSpot[]\n }\n}\n\nexport type PanoramaSceneHotSpot = {\n pitch: number\n yaw: number\n type: string\n text: string\n url?: string\n id?: string,\n sceneId?: string\n targetPitch?: number\n targetYaw?: number\n\n cssClass?: string\n createTooltipFunc?: Function\n createTooltipArgs?: any\n}\n\nexport type StzhPanoramaLoadEvent = {\n component: \"stzh-panorama\"\n}\n\nexport type StzhPanoramaChangeEvent = {\n component: \"stzh-panorama\"\n value: { pitch: number, yaw: number, hfov: number }\n}\n\nexport type StzhPanoramaFullscreenChangeEvent = {\n component: \"stzh-panorama\"\n value: boolean\n}\n\nexport type StzhPanoramaSceneChangeEvent = {\n component: \"stzh-panorama\"\n value: string\n}\n\nexport type StzhPanoramaZoomChangeEvent = {\n component: \"stzh-panorama\"\n value: number\n}\n\n/* Iframe */\n\nexport type StzhIframeView =\n | \"iframe\"\n | \"cookiewall\"\n | \"preview\";\n\nexport type StzhIframeViewChangeEvent = {\n component: \"stzh-iframe\"\n value: StzhIframeView\n}\n\nexport type StzhIframePreviewSkipEvent = {\n component: \"stzh-iframe\"\n}\n\n/* Olmap */\n\nexport type OlmapLayer = {\n title?: string,\n thumbnailUrl: string,\n options: {\n url: string,\n layer: string,\n matrixSet: string,\n origin: number[],\n extent: number[]\n }\n}\n\nexport type StzhOlmapInitializedEvent = {\n component: \"stzh-olmap\"\n}\n\nexport type StzhOlmapPostRenderEvent = {\n component: \"stzh-olmap\"\n}\n\nexport type StzhOlmapMoveStartEvent = {\n component: \"stzh-olmap\"\n}\n\nexport type StzhOlmapMoveEndEvent = {\n component: \"stzh-olmap\"\n}\n\n/* Sticky */\n\nexport type StzhStickyStuckTopEvent = {\n component: \"stzh-sticky\"\n sticky: boolean\n}\n\nexport type StzhStickyStuckBottomEvent = {\n component: \"stzh-sticky\"\n sticky: boolean\n}\n\n/* Table */\n\nexport type StzhDatatableRowClickEvent = {\n component: \"stzh-datatable\"\n row: any\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableCellClickEvent = {\n component: \"stzh-datatable\"\n row: any\n column: any\n cellIndex: number\n rowIndex: number\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableHeadingCellClickEvent = {\n component: \"stzh-datatable\"\n column: any\n index: number\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableSortClickEvent = {\n component: \"stzh-datatable\"\n column: any\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableSortByChangeEvent = {\n component: \"stzh-datatable\"\n value: string\n oldValue: string\n}\n\nexport type StzhDatatableSortDirectionChangeEvent = {\n component: \"stzh-datatable\"\n value: \"asc\" | \"desc\"\n oldValue: \"asc\" | \"desc\"\n}\n\n/* Anchornav */\n\nexport type StzhAnchornavItem = {\n label: string\n href?: string\n icon?: string\n}\n\nexport type StzhAnchornavItemClickEvent = {\n component: \"stzh-anchornav\"\n item: StzhAnchornavItem\n originalEvent: MouseEvent\n}\n\n/* Actionset */\n\nexport type StzhActionsetItem = {\n id: string\n label?: string\n icon?: string\n iconPosition?: \"left\" | \"right\"\n iconOnly?: boolean\n badge?: string\n badgeEmpty?: boolean\n badgeType?: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\"\n variant?: \"default\" | \"secondary\" | \"input\" | \"tertiary\"\n size?: \"default\" | \"small\" | \"tiny\"\n badgePosition?: \"icon\" | \"button\"\n tooltipContent?: string\n}\n\nexport type StzhActionsetItemClickEvent = {\n component: \"stzh-actionset\"\n action: StzhActionsetItem\n originalEvent: MouseEvent\n}\n\n/* Audio */\n\nexport type StzhAudioPlayEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioPlayingEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioPauseEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioReplayEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioEndEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioEndedEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioErrorEvent = {\n component: \"stzh-audio\"\n originalEvent: ErrorEvent\n}\n\n/* Share */\n\nexport type ShareService = \"facebook\" | \"twitter\" | \"linkedin\" | \"xing\" | \"mail\";\n\n/* Card */\n\nexport type StzhCardHeaderAction = {\n id: string\n label?: string\n icon?: string\n badge?: string\n badgeEmpty?: boolean\n badgeType?: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\"\n onlyCollapseText?: boolean\n}\n\nexport type StzhCardSubtitleClickEvent = {\n component: \"stzh-card\"\n}\n\nexport type StzhCardCollapseEvent = {\n component: \"stzh-card\"\n collapsed: boolean\n}\n\nexport type StzhCardClickEvent = {\n component: \"stzh-card\"\n originalEvent: MouseEvent\n}\n\nexport type StzhCardStarClickEvent = {\n component: \"stzh-card\"\n starred: boolean\n}\n\nexport type StzhCardHeaderActionClickEvent = {\n component: \"stzh-card\"\n action: StzhCardHeaderAction\n}\n\n/* Microsite Teaserlist */\n\nexport type StzhMicrositeTeaserlistTag = {\n id: string\n name: string\n}\n\nexport type StzhMicrositeTeaserlistItem = {\n title?: string\n description?: string\n image?: string\n link: string\n tags: string[]\n teaserid: string\n}\n\n/* Card List */\n\nexport type StzhCardListCollapseAllEvent = {\n component: \"stzh-card-list\"\n allCollapsed: boolean\n}\n\n/* Calendar */\n\nexport type StzhCalendarChangeEvent = {\n component: \"stzh-calendar\"\n valueAsDate: Date\n value: string\n}\n\n/* Datepicker */\n\nexport type StzhDatepickerChangeEvent = {\n component: \"stzh-datepicker\"\n value: string,\n valueAsDate: Date\n}\n\n/* Pagination */\n\nexport type StzhPaginationChangeEvent = {\n component: \"stzh-pagination\"\n page: number\n}\n\n/* Timepicker */\n\nexport type StzhTimepickerChangeEvent = {\n component: \"stzh-timepicker\"\n value: string\n}\n\n/* Monthyearpicker */\n\nexport type StzhMonthyearpickerChangeEvent = {\n component: \"stzh-monthyearpicker\"\n value: string\n valueMonth: string\n valueYear: string\n}\n\n/* Amount */\n\nexport type StzhAmountChangeEvent = {\n component: \"stzh-amount\"\n value: string\n}\n\n/* Appointments */\n\nexport type StzhAppointmentsChangeEvent = {\n component: \"stzh-appointments\"\n value: string\n}\n\n/* Skiplink */\n\nexport type StzhSkiplinkFocusEvent = {\n component: \"stzh-skiplink\"\n originalEvent: FocusEvent\n}\n\nexport type StzhSkiplinkBlurEvent = {\n component: \"stzh-skiplink\"\n originalEvent: FocusEvent\n}\n\n/* Checkbox */\n\nexport type StzhCheckboxChangeEvent = {\n component: \"stzh-checkbox\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\nexport type StzhCheckboxFocusEvent = {\n component: \"stzh-checkbox\"\n originalEvent: FocusEvent\n}\n\nexport type StzhCheckboxBlurEvent = {\n component: \"stzh-checkbox\"\n originalEvent: FocusEvent\n}\n\n/* Toggle */\n\nexport type StzhToggleChangeEvent = {\n component: \"stzh-toggle\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\nexport type StzhToggleFocusEvent = {\n component: \"stzh-toggle\"\n originalEvent: FocusEvent\n}\n\nexport type StzhToggleBlurEvent = {\n component: \"stzh-toggle\"\n originalEvent: FocusEvent\n}\n\n/* Button */\n\nexport type StzhButtonFocusEvent = {\n component: \"stzh-button\"\n originalEvent: FocusEvent\n}\n\nexport type StzhButtonBlurEvent = {\n component: \"stzh-button\"\n originalEvent: FocusEvent\n}\n\nexport type StzhButtonChangeEvent = {\n component: \"stzh-button\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\n/* Link */\n\nexport type StzhLinkFocusEvent = {\n component: \"stzh-link\"\n originalEvent: FocusEvent\n}\n\nexport type StzhLinkBlurEvent = {\n component: \"stzh-link\"\n originalEvent: FocusEvent\n}\n\n/* Menu Item */\n\nexport type StzhMenuItemFocusEvent = {\n component: \"stzh-menu-item\"\n originalEvent: FocusEvent\n}\n\nexport type StzhMenuItemBlurEvent = {\n component: \"stzh-menu-item\"\n originalEvent: FocusEvent\n}\n\n/* Carousel */\n\nexport type StzhCarouselSlideStartEvent = {\n component: \"stzh-carousel\"\n index: number\n}\n\nexport type StzhCarouselSlidePassedEvent = {\n component: \"stzh-carousel\"\n index: number\n}\n\nexport type StzhCarouselSlideEndEvent = {\n component: \"stzh-carousel\"\n index: number\n}\n\n/* Chip Select */\n\nexport type StzhChipSelectChangeEvent = {\n component: \"stzh-chip-select\"\n value: string\n}\n\n/* Gallery */\n\nexport type StzhGalleryItem = {\n width: number\n height: number\n src: string\n srcLightbox?: string\n srcsetLightbox?: string\n alt?: string\n copyright?: string\n heading?: string\n headingLightbox?: string\n caption?: string\n captionLightbox?: string\n lightboxHtml?: string\n hideCounter?: boolean\n}\n\n/* Datalist */\n\nexport type StzhDatalistItemEntry = {\n value: string\n leadingIcon?: string\n label?: string\n meta?: string\n icon?: string\n iconLabel?: string\n iconTooltip?: string\n statusLabel?: string\n statusType?: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\"\n href?: string\n rel?: string\n target?: string\n items?: StzhDatalistItemEntry[]\n}\n\nexport type StzhDatalistDirectionChangeEvent = {\n component: \"stzh-datalist\"\n value: \"vertical\" | \"horizontal\"\n}\n\nexport type StzhDatalistHideBorderChangeEvent = {\n component: \"stzh-datalist\"\n value: boolean\n}\n\n/* Datalist Item */\n\nexport type StzhDatalistItemActionClickEvent = {\n component: \"stzh-datalist-item\"\n originalEvent: MouseEvent\n}\n\n/* Datamessagelist */\n\nexport type StzhDatamessagelistItemEntryMeta = {\n label: string\n value: string\n}\n\nexport type StzhDatamessagelistItemEntryAction = {\n id: string | number\n icon: string\n label: string,\n badge?: string\n}\n\nexport type StzhDatamessagelistItemEntryTag = {\n icon: string\n label: string\n type: \"default\" | \"important\"\n}\n\nexport type StzhDatamessagelistItemEntryLoadingStatus = {\n percent: number\n label: string\n type: \"default\" | \"success\" | \"warning\" | \"error\"\n}\n\nexport type StzhDatamessagelistItemClickEvent = {\n component: \"stzh-datamessagelist-item\",\n originalEvent: MouseEvent\n}\n\nexport type StzhDatamessagelistItemActionClickEvent = {\n component: \"stzh-datamessagelist-item\",\n action: StzhDatamessagelistItemEntryAction,\n originalEvent: MouseEvent\n}\n\n/* Chip */\n\nexport type StzhChipSelectItem = {\n label: string\n value: string\n disabled?: boolean\n variant?: \"tag\" | \"filter\" | \"input\"\n type?: \"default\" | \"secondary\"\n counter?: string\n icon?: string\n size?: \"default\" | \"small\"\n}\n\nexport type StzhChipClickEvent = {\n component: \"stzh-chip\",\n originalEvent: MouseEvent\n}\n\nexport type StzhChipRemoveEvent = {\n component: \"stzh-chip\",\n originalEvent: MouseEvent\n}\n\nexport type StzhChipFocusEvent = {\n component: \"stzh-chip\"\n originalEvent: FocusEvent\n}\n\nexport type StzhChipBlurEvent = {\n component: \"stzh-chip\"\n originalEvent: FocusEvent\n}\n\n/* VBZ Major Ticker */\n\nexport type StzhVbzMajortickerDisturbance = {\n id: string\n head: string\n text: string\n startDate: Date\n endDate: Date\n altStart: string\n altEnd: string\n infoUrl?: VbzTickerInfoUrl\n};\n\nexport type StzhVbzMajortickerDisturbanceFetchedEvent = {\n component: \"stzh-vbz-majorticker\"\n disturbance: StzhVbzMajortickerDisturbance | null\n}\n\n/* VBZ Ticker */\n\nexport type VbzTickerInfoUrl = {\n name: string\n url: string\n};\n\nexport type VbzTickerDisturbance = {\n id: string\n head: string\n startDate: Date\n endDate: Date\n altStart: string\n altEnd: string\n baseType?: string\n infoUrl?: VbzTickerInfoUrl\n category:\n | typeof VBZ.DISTURBANCE_INFORMATION\n | typeof VBZ.DISTURBANCE_CONSTRUCTION\n | typeof VBZ.DISTURBANCE_NORMAL\n | typeof VBZ.DISTURBANCE_EVENT\n | typeof VBZ.DISTURBANCE_BUS\n};\n\nexport type VbzTickerLine = {\n line: VBZ.Lines\n name: string\n disturbances: VbzTickerDisturbance[]\n // whether normal or big disturbance for this line exist\n alert: boolean\n // 2 = Fernverkehr / 16 = Schiff / 32 = S-Bahn/Reg / 64 = Bus / 128 = Bergbahn / 256 = Nachtnetz / 512 = Tram\n category: \"2\" | \"16\" | \"32\" | \"64\" | \"128\" | \"256\" | \"512\"\n};\n\n/* VBZ Line Chip */\n\nexport type StzhVbzLinechipLine = {\n color: string\n background: string\n comment?: string\n}\n\nexport type StzhVbzLinechipFocusEvent = {\n component: \"stzh-vbz-linechip\"\n originalEvent: FocusEvent\n}\n\nexport type StzhVbzLinechipBlurEvent = {\n component: \"stzh-vbz-linechip\"\n originalEvent: FocusEvent\n}\n\n/* Clamp */\n\nexport type StzhClampClampEvent = {\n component: \"stzh-clamp\"\n clamped: boolean\n}\n\nexport type StzhClampExpandEvent = {\n component: \"stzh-clamp\"\n expanded: boolean\n}\n\n/* Image Comparison */\n\nexport type StzhImagecomparisonChangeEvent = {\n component: \"stzh-imagecomparison\"\n originalEvent: InputEvent\n value: number\n}\n\n/* Dialog */\n\nexport type StzhDialogOpenEvent = {\n component: \"stzh-dialog\"\n}\n\nexport type StzhDialogCloseEvent = {\n component: \"stzh-dialog\"\n}\n\n/* Contact */\n\nexport type ContactNumber = {\n type: \"tel\" | \"fax\"\n label: string\n number: string\n analyticsId?: string\n}\n\nexport type StzhContactAvailabilityItem = {\n weekday: string\n hours: string[]\n}\n\n/* Overlay */\n\nexport type StzhOverlayOpenEvent = {\n component: \"stzh-overlay\"\n}\n\nexport type StzhOverlayCloseEvent = {\n component: \"stzh-overlay\"\n}\n\n/* Message */\n\nexport type StzhMessageOpenEvent = {\n component: \"stzh-message\"\n}\n\nexport type StzhMessageCloseEvent = {\n component: \"stzh-message\"\n}\n\n/* Toastbar */\n\nexport type StzhToastbarInitialToast = {\n label: string\n type?: StzhToastType\n link?: HTMLStzhLinkElement | {\n href: string,\n label: string\n },\n cookie?: string\n cookieExpires?: number\n}\n\n/* Toast */\n\nexport type StzhToastType = \"info\" | \"success\" | \"warning\" | \"error\";\n\nexport type StzhToastOpenEvent = {\n component: \"stzh-toast\"\n}\n\nexport type StzhToastCloseEvent = {\n component: \"stzh-toast\"\n}\n\nexport type StzhToastOpenedEvent = {\n component: \"stzh-toast\"\n}\n\nexport type StzhToastClosedEvent = {\n component: \"stzh-toast\"\n}\n\n/* Ghettobox */\n\nexport type StzhGhettoboxOpenEvent = {\n component: \"stzh-ghettobox\"\n}\n\nexport type StzhGhettoboxCloseEvent = {\n component: \"stzh-ghettobox\"\n}\n\n/* Input */\n\nexport type StzhInputChangeEvent = {\n component: \"stzh-input\"\n originalEvent: InputEvent | MouseEvent\n value: string\n}\n\nexport type StzhInputChangedEvent = {\n component: \"stzh-input\"\n originalEvent: InputEvent | MouseEvent\n value: string\n}\n\nexport type StzhInputFocusEvent = {\n component: \"stzh-input\"\n originalEvent: FocusEvent\n}\n\nexport type StzhInputBlurEvent = {\n component: \"stzh-input\"\n originalEvent: FocusEvent\n}\n\n/* Popover */\n\nexport type StzhPopoverOpenEvent = {\n component: \"stzh-popover\"\n}\n\nexport type StzhPopoverOpenedEvent = {\n component: \"stzh-popover\"\n}\n\nexport type StzhPopoverCloseEvent = {\n component: \"stzh-popover\"\n}\n\nexport type StzhPopoverClosedEvent = {\n component: \"stzh-popover\"\n}\n\n/* Timeline */\n\nexport type StzhTimelineFoldableChangeEvent = {\n component: \"stzh-timeline\"\n value: boolean\n}\n\n/* TimelineItem */\n\nexport type StzhTimelineItemOpenEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemOpenedEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemCloseEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemClosedEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemFocusEvent = {\n component: \"stzh-timeline-item\"\n originalEvent: FocusEvent\n}\n\nexport type StzhTimelineItemBlurEvent = {\n component: \"stzh-timeline-item\"\n originalEvent: FocusEvent\n}\n\n/* Accordion */\n\nexport type StzhAccordionItemOpenEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemOpenedEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemCloseEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemClosedEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemFocusEvent = {\n component: \"stzh-accordion-item\"\n originalEvent: FocusEvent\n}\n\nexport type StzhAccordionItemBlurEvent = {\n component: \"stzh-accordion-item\"\n originalEvent: FocusEvent\n}\n\n/* Tooltip */\n\nexport type StzhTooltipOpenEvent = {\n component: \"stzh-tooltip\"\n}\n\nexport type StzhTooltipOpenedEvent = {\n component: \"stzh-tooltip\"\n}\n\nexport type StzhTooltipCloseEvent = {\n component: \"stzh-tooltip\"\n}\n\nexport type StzhTooltipClosedEvent = {\n component: \"stzh-tooltip\"\n}\n\n/* Radio */\n\nexport type StzhRadioChangeEvent = {\n component: \"stzh-radio\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\nexport type StzhRadioFocusEvent = {\n component: \"stzh-radio\"\n originalEvent: FocusEvent\n}\n\nexport type StzhRadioBlurEvent = {\n component: \"stzh-radio\"\n originalEvent: FocusEvent\n}\n\n/* Langnav */\n\nexport type StzhLangnavChangeEvent = {\n component: \"stzh-langnav\",\n value: string\n}\n\n/* Dropdown */\n\nexport type StzhDropdownOption = {\n text: string,\n value: string\n}\n\nexport type StzhDropdownChangeEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownItemAddEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownItemRemoveEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownOptionAddEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownOptionRemoveEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownOpenEvent = {\n component: \"stzh-dropdown\"\n}\n\nexport type StzhDropdowCloseEvent = {\n component: \"stzh-dropdown\"\n}\n\nexport type StzhDropdownFocusEvent = {\n component: \"stzh-dropdown\"\n originalEvent: {\n target: Element\n }\n}\n\nexport type StzhDropdownBlurEvent = {\n component: \"stzh-dropdown\"\n}\n\nexport type StzhDropdowInitEvent = {\n component: \"stzh-dropdown\"\n}\n\n/** Progressbar */\n\nexport type StzhProgressbarDataItem = {\n label: string\n icon?: string\n disabled?: boolean\n analyticsId?: string\n}\n\n/* Progressbar Item */\n\nexport type StzhProgressbarItemClickEvent = {\n component: \"stzh-progressbar-item\",\n originalEvent: MouseEvent,\n index: number\n}\n\nexport type StzhProgressbarItemDottedClickEvent = {\n component: \"stzh-progressbar-item\",\n originalEvent: MouseEvent\n}\n\n/* Upload */\n\nexport type StzhUploadFilesItem = {\n name: string\n size: number\n [key: string]: any\n}\n\nexport type StzhUploadFile = File & {\n xhr: XMLHttpRequest,\n status: string\n upload: any\n accepted: boolean\n previewElement: HTMLElement\n}\n\nexport type StzhUploadFileAddedEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadFilesAddedEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\nexport type StzhUploadFileRemoveEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadFileRemovedEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n force: boolean\n}\n\nexport type StzhUploadSendingEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n xhr: XMLHttpRequest,\n formData: FormData\n}\n\nexport type StzhUploadSendingMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[],\n xhr: XMLHttpRequest,\n formData: FormData\n}\n\nexport type StzhUploadProcessingEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadProcessingMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\nexport type StzhUploadProgressEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n progress: number,\n bytesSent: number\n}\n\nexport type StzhUploadProgressTotalEvent = {\n component: \"stzh-upload\",\n totalUploadProgress: number,\n totalBytes: number,\n totalBytesSent: number\n}\n\nexport type StzhUploadErrorEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n message: string,\n xhr: XMLHttpRequest\n}\n\nexport type StzhUploadErrorMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[],\n message: string,\n xhr: XMLHttpRequest\n}\n\nexport type StzhUploadSuccessEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n responseText: string,\n event: ProgressEvent\n}\n\nexport type StzhUploadSuccessMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[],\n responseText: string,\n event: ProgressEvent\n}\n\nexport type StzhUploadCanceledEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadCanceledMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\nexport type StzhUploadCompleteEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadCompleteMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\n// Merged Types\n\nexport type StzhFocusEvent =\n | StzhAccordionItemFocusEvent\n | StzhButtonFocusEvent\n | StzhCheckboxFocusEvent\n | StzhChipFocusEvent\n | StzhDropdownFocusEvent\n | StzhInputFocusEvent\n | StzhLinkFocusEvent\n | StzhMenuItemFocusEvent\n | StzhRadioFocusEvent\n | StzhToggleFocusEvent\n | StzhVbzLinechipFocusEvent\n | StzhSkiplinkFocusEvent\n\n// ---\n// Prop Types\n// ---\n\nexport type StzhCalendarDateDisabledPredicate = (date: Date) => boolean\n\n\nexport namespace Layout {\n export type Ratio = \"16:9\" | \"1:1\" | \"5:4\" | \"4:3\" | \"3:2\" | \"2:1\" | \"21:9\";\n\n export type Justify =\n | \"start\"\n | \"end\"\n | \"center\"\n | \"between\"\n | \"around\"\n | \"evenly\";\n\n export type Items =\n | \"start\"\n | \"end\"\n | \"center\"\n | \"baseline\"\n | \"stretch\";\n\n export type JustifySelf =\n | \"auto\"\n | Justify;\n\n export type AlignSelf =\n | \"auto\"\n | Items;\n}\n\nexport namespace Space {\n export type Sizes =\n | \"xxxsmall\"\n | \"xxsmall\"\n | \"xsmall\"\n | \"small\"\n | \"medium\"\n | \"large\"\n | \"xlarge\"\n | \"xxlarge\"\n | \"xxxlarge\"\n | \"xxxxlarge\"\n | \"big\"\n | \"xbig\"\n | \"huge\"\n | \"xhuge\"\n | \"none\"\n | \"inherit\";\n\n export type Curves =\n | \"tiny\"\n | \"small\"\n | \"regular\"\n | \"medium\"\n | \"large\"\n | \"big\"\n | \"huge\"\n | \"none\";\n}\n\nexport namespace Font {\n export type Fonts =\n | \"light\"\n | \"regular\"\n | \"medium\"\n | \"heavy\"\n | \"default\";\n\n export type Sizes =\n | \"pico\"\n | \"nano\"\n | \"micro\"\n | \"milli\"\n | \"centi\"\n | \"deci\"\n | \"regular\"\n | \"deca\"\n | \"hecto\"\n | \"kilo\"\n | \"mega\"\n | \"giga\"\n | \"hero\"\n | \"inherit\";\n\n export type Curves =\n | \"p1\"\n | \"p2\"\n | \"caption\"\n | \"h4\"\n | \"h3\"\n | \"h2\"\n | \"h1\"\n | \"hero\"\n | \"default\"\n | \"none\";\n}\n\nexport namespace VBZ {\n export const BASE_TYPE_GLOBAL = \"GLOBAL\";\n\n export const CHANNEL_TICKER = \"ticker\";\n export const CHANNEL_INFO_URL_FILTER = \"stadt-zuerich.ch/vbz\";\n\n export const DISTURBANCE_GLOBAL = \"__global__\";\n export const DISTURBANCE_INFORMATION = \"0\";\n export const DISTURBANCE_CONSTRUCTION = \"1\";\n export const DISTURBANCE_NORMAL = \"2\";\n export const DISTURBANCE_EVENT = \"4\";\n export const DISTURBANCE_BUS = \"5\";\n\n export type Lines =\n | \"2\"\n | \"3\"\n | \"4\"\n | \"5\"\n | \"6\"\n | \"7\"\n | \"8\"\n | \"9\"\n | \"10\"\n | \"11\"\n | \"12\"\n | \"13\"\n | \"14\"\n | \"15\"\n | \"16\"\n | \"17\"\n | \"19\"\n | \"20\"\n | \"21\"\n | \"23\"\n | \"24\"\n | \"25\"\n | \"29\"\n | \"31\"\n | \"32\"\n | \"33\"\n | \"34\"\n | \"35\"\n | \"36\"\n | \"37\"\n | \"38\"\n | \"39\"\n | \"40\"\n | \"45\"\n | \"46\"\n | \"54\"\n | \"61\"\n | \"62\"\n | \"63\"\n | \"64\"\n | \"66\"\n | \"67\"\n | \"69\"\n | \"70\"\n | \"72\"\n | \"73\"\n | \"75\"\n | \"76\"\n | \"77\"\n | \"78\"\n | \"79\"\n | \"80\"\n | \"83\"\n | \"89\"\n | \"91\"\n | \"94\"\n | \"95\"\n | \"99\"\n | \"151\"\n | \"152\"\n | \"153\"\n | \"156\"\n | \"161\"\n | \"162\"\n | \"163\"\n | \"165\"\n | \"184\"\n | \"185\"\n | \"200\"\n | \"201\"\n | \"215\"\n | \"220\"\n | \"235\"\n | \"236\"\n | \"245\"\n | \"301\"\n | \"302\"\n | \"303\"\n | \"304\"\n | \"305\"\n | \"306\"\n | \"307\"\n | \"308\"\n | \"309\"\n | \"311\"\n | \"314\"\n | \"315\"\n | \"317\"\n | \"321\"\n | \"323\"\n | \"325\"\n | \"350\"\n | \"444\"\n | \"445\"\n | \"701\"\n | \"702\"\n | \"703\"\n | \"704\"\n | \"705\"\n | \"720\"\n | \"721\"\n | \"725\"\n | \"726\"\n | \"727\"\n | \"742\"\n | \"743\"\n | \"744\"\n | \"745\"\n | \"747\"\n | \"748\"\n | \"751\"\n | \"752\"\n | \"753\"\n | \"754\"\n | \"759\"\n | \"760\"\n | \"765\"\n | \"768\"\n | \"781\"\n | \"786\"\n | \"787\"\n | \"910\"\n | \"912\"\n | \"916\"\n | \"917\"\n | \"918\"\n | \"919\"\n | \"E\"\n | \"N\"\n | \"N1\"\n | \"N2\"\n | \"N4\"\n | \"N5\"\n | \"N6\"\n | \"N7\"\n | \"N8\"\n | \"N9\"\n | \"N10\"\n | \"N11\"\n | \"N12\"\n | \"N13\"\n | \"N14\"\n | \"N15\"\n | \"N16\"\n | \"N17\"\n | \"N18\"\n | \"N19\"\n | \"N30\"\n | \"N31\"\n | \"N32\"\n | \"N33\"\n | \"N34\"\n | \"N45\"\n | \"N72\"\n | \"N78\"\n | \"SN1\"\n | \"SN4\"\n | \"SN5\"\n | \"SN6\"\n | \"SN7\"\n | \"SN8\"\n | \"SN9\"\n | \"S2\"\n | \"S3\"\n | \"S4\"\n | \"S5\"\n | \"S6\"\n | \"S7\"\n | \"S8\"\n | \"S9\"\n | \"S10\"\n | \"S11\"\n | \"S14\"\n | \"S15\"\n | \"S16\"\n | \"S18\"\n | \"S19\"\n | \"S20\"\n | \"S21\"\n | \"S23\"\n | \"S24\"\n | \"S25\"\n}\n\n// ---\n// Stencil component types\n// ---\n\nexport * from './components';\n"],"mappings":"2FA2xCiBA,GAAjB,SAAiBA,GACFA,EAAAC,iBAAmB,SAEnBD,EAAAE,eAAiB,SACjBF,EAAAG,wBAA0B,uBAE1BH,EAAAI,mBAAqB,aACrBJ,EAAAK,wBAA0B,IAC1BL,EAAAM,yBAA2B,IAC3BN,EAAAO,mBAAqB,IACrBP,EAAAQ,kBAAoB,IACpBR,EAAAS,gBAAkB,GAyLhC,EApMD,CAAiBT,MAAGU,EAAA,W"}
|
|
1
|
+
{"version":3,"names":["VBZ","BASE_TYPE_GLOBAL","CHANNEL_TICKER","CHANNEL_INFO_URL_FILTER","DISTURBANCE_GLOBAL","DISTURBANCE_INFORMATION","DISTURBANCE_CONSTRUCTION","DISTURBANCE_NORMAL","DISTURBANCE_EVENT","DISTURBANCE_BUS","exports"],"sources":["src/index.ts"],"sourcesContent":["// ---\n// Global window types\n// ---\n\nimport { StzhLocaleAdapter } from './utils/date-adapter';\n\nimport {\n StzhLocaleComponent,\n StzhLocaleFormats,\n StzhLocaleGlobals,\n} from './utils/translation-utils';\n\nexport type WindowStzhComponents = {\n version: string\n supportedLocales: string[]\n defaultLocale: string\n translations: null | StzhLocaleComponent\n translationsLoading: Promise<StzhLocaleComponent>\n pathMedia: string\n pathTranslations: string\n cacheTranslations: boolean\n formats: StzhLocaleFormats\n labels: \"flyout\" | \"fixed\"\n utils: {\n getLocale: (element: HTMLElement) => string\n fetchTranslations: (host: HTMLElement, component: string) => Promise<StzhLocaleComponent & any>\n\n format: (date: Date, type: string) => string\n parse:(string: string, type: string) => Date\n formatSpan: (date: Date | string, date2: Date | string, type: string) => string\n parseSpan: (string: string, type: string) => [Date, Date, string]\n createFormatParseAdapter: (formats: StzhLocaleFormats, globals: StzhLocaleGlobals) => StzhLocaleAdapter\n }\n}\n\ndeclare global {\n interface Window {\n stzhComponents: WindowStzhComponents\n pannellum: any\n Dropzone: any\n // readspeaker lib APIs\n ReadSpeaker: any\n rspkr: any\n proj4: any\n }\n}\n\n// ---\n// Event Types\n// ---\n\n/* Sortable */\n\nexport type StzhSortableUpdateEvent = {\n component: \"stzh-sortable\"\n data: string[]\n item: HTMLElement\n newIndex: number\n oldIndex: number\n}\n\nexport type StzhSortableDisableEvent = {\n component: \"stzh-sortable\"\n disabled: boolean\n}\n\n/* Panorama */\n\nexport type PanoramaScene = {\n sceneId: string\n imageSrc: string\n imageTitle: string\n\n imageAuthor?: string\n imageType?: \"equirectangular\" | \"cubemap\" | \"multires\"\n caption?: string\n copyright?: string\n\n pitch?: number\n yaw?: number\n hfov?: number\n\n hotspots: PanoramaSceneHotSpot[]\n}\n\nexport type PanoramaScenesLibrary = {\n [sceneKey: string]: {\n title: string\n author: string\n panorama: string\n type?: \"equirectangular\" | \"cubemap\" | \"multires\"\n\n pitch?: number\n yaw?: number\n hfov?: number\n\n hotSpots: PanoramaSceneHotSpot[]\n }\n}\n\nexport type PanoramaSceneHotSpot = {\n pitch: number\n yaw: number\n type: string\n text: string\n url?: string\n id?: string,\n sceneId?: string\n targetPitch?: number\n targetYaw?: number\n\n cssClass?: string\n createTooltipFunc?: Function\n createTooltipArgs?: any\n}\n\nexport type StzhPanoramaLoadEvent = {\n component: \"stzh-panorama\"\n}\n\nexport type StzhPanoramaChangeEvent = {\n component: \"stzh-panorama\"\n value: { pitch: number, yaw: number, hfov: number }\n}\n\nexport type StzhPanoramaFullscreenChangeEvent = {\n component: \"stzh-panorama\"\n value: boolean\n}\n\nexport type StzhPanoramaSceneChangeEvent = {\n component: \"stzh-panorama\"\n value: string\n}\n\nexport type StzhPanoramaZoomChangeEvent = {\n component: \"stzh-panorama\"\n value: number\n}\n\n/* Iframe */\n\nexport type StzhIframeView =\n | \"iframe\"\n | \"cookiewall\"\n | \"preview\";\n\nexport type StzhIframeViewChangeEvent = {\n component: \"stzh-iframe\"\n value: StzhIframeView\n}\n\nexport type StzhIframePreviewSkipEvent = {\n component: \"stzh-iframe\"\n}\n\n/* Olmap */\n\nexport type OlmapLayer = {\n title?: string,\n thumbnailUrl: string,\n options: {\n url: string,\n layer: string,\n matrixSet: string,\n origin: number[],\n extent: number[]\n }\n}\n\nexport type StzhOlmapInitializedEvent = {\n component: \"stzh-olmap\"\n}\n\nexport type StzhOlmapPostRenderEvent = {\n component: \"stzh-olmap\"\n}\n\nexport type StzhOlmapMoveStartEvent = {\n component: \"stzh-olmap\"\n}\n\nexport type StzhOlmapMoveEndEvent = {\n component: \"stzh-olmap\"\n}\n\n/* Sticky */\n\nexport type StzhStickyStuckTopEvent = {\n component: \"stzh-sticky\"\n sticky: boolean\n}\n\nexport type StzhStickyStuckBottomEvent = {\n component: \"stzh-sticky\"\n sticky: boolean\n}\n\n/* Table */\n\nexport type StzhDatatableRowClickEvent = {\n component: \"stzh-datatable\"\n row: any\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableCellClickEvent = {\n component: \"stzh-datatable\"\n row: any\n column: any\n cellIndex: number\n rowIndex: number\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableHeadingCellClickEvent = {\n component: \"stzh-datatable\"\n column: any\n index: number\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableSortClickEvent = {\n component: \"stzh-datatable\"\n column: any\n originalEvent: MouseEvent\n}\n\nexport type StzhDatatableSortByChangeEvent = {\n component: \"stzh-datatable\"\n value: string\n oldValue: string\n}\n\nexport type StzhDatatableSortDirectionChangeEvent = {\n component: \"stzh-datatable\"\n value: \"asc\" | \"desc\"\n oldValue: \"asc\" | \"desc\"\n}\n\n/* Anchornav */\n\nexport type StzhAnchornavItem = {\n label: string\n href?: string\n icon?: string\n}\n\nexport type StzhAnchornavItemClickEvent = {\n component: \"stzh-anchornav\"\n item: StzhAnchornavItem\n originalEvent: MouseEvent\n}\n\n/* Actionset */\n\nexport type StzhActionsetItem = {\n id: string\n label?: string\n icon?: string\n iconPosition?: \"left\" | \"right\"\n iconOnly?: boolean\n badge?: string\n badgeEmpty?: boolean\n badgeType?: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\"\n variant?: \"default\" | \"secondary\" | \"input\" | \"tertiary\"\n size?: \"default\" | \"small\" | \"tiny\"\n badgePosition?: \"icon\" | \"button\"\n tooltipContent?: string\n}\n\nexport type StzhActionsetItemClickEvent = {\n component: \"stzh-actionset\"\n action: StzhActionsetItem\n originalEvent: MouseEvent\n}\n\n/* Audio */\n\nexport type StzhAudioPlayEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioPlayingEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioPauseEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioReplayEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioEndEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioEndedEvent = {\n component: \"stzh-audio\"\n}\n\nexport type StzhAudioErrorEvent = {\n component: \"stzh-audio\"\n originalEvent: ErrorEvent\n}\n\n/* Share */\n\nexport type ShareService = \"facebook\" | \"twitter\" | \"linkedin\" | \"xing\" | \"mail\";\n\n/* Card */\n\nexport type StzhCardHeaderAction = {\n id: string\n label?: string\n icon?: string\n badge?: string\n badgeEmpty?: boolean\n badgeType?: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\"\n onlyCollapseText?: boolean\n}\n\nexport type StzhCardSubtitleClickEvent = {\n component: \"stzh-card\"\n}\n\nexport type StzhCardCollapseEvent = {\n component: \"stzh-card\"\n collapsed: boolean\n}\n\nexport type StzhCardClickEvent = {\n component: \"stzh-card\"\n originalEvent: MouseEvent\n}\n\nexport type StzhCardStarClickEvent = {\n component: \"stzh-card\"\n starred: boolean\n}\n\nexport type StzhCardHeaderActionClickEvent = {\n component: \"stzh-card\"\n action: StzhCardHeaderAction\n}\n\n/* Microsite Teaserlist */\n\nexport type StzhMicrositeTeaserlistTag = {\n id: string\n name: string\n}\n\nexport type StzhMicrositeTeaserlistItem = {\n title?: string\n description?: string\n image?: string\n link: string\n tags: string[]\n teaserid: string\n}\n\n/* Card List */\n\nexport type StzhCardListCollapseAllEvent = {\n component: \"stzh-card-list\"\n allCollapsed: boolean\n}\n\n/* Calendar */\n\nexport type StzhCalendarChangeEvent = {\n component: \"stzh-calendar\"\n valueAsDate: Date\n value: string\n}\n\n/* Datepicker */\n\nexport type StzhDatepickerChangeEvent = {\n component: \"stzh-datepicker\"\n value: string,\n valueAsDate: Date\n}\n\n/* Pagination */\n\nexport type StzhPaginationChangeEvent = {\n component: \"stzh-pagination\"\n page: number\n}\n\n/* Timepicker */\n\nexport type StzhTimepickerChangeEvent = {\n component: \"stzh-timepicker\"\n value: string\n}\n\n/* Monthyearpicker */\n\nexport type StzhMonthyearpickerChangeEvent = {\n component: \"stzh-monthyearpicker\"\n value: string\n valueMonth: string\n valueYear: string\n}\n\n/* Amount */\n\nexport type StzhAmountChangeEvent = {\n component: \"stzh-amount\"\n value: string\n}\n\n/* Appointments */\n\nexport type StzhAppointmentsChangeEvent = {\n component: \"stzh-appointments\"\n value: string\n}\n\n/* Skiplink */\n\nexport type StzhSkiplinkFocusEvent = {\n component: \"stzh-skiplink\"\n originalEvent: FocusEvent\n}\n\nexport type StzhSkiplinkBlurEvent = {\n component: \"stzh-skiplink\"\n originalEvent: FocusEvent\n}\n\n/* Checkbox */\n\nexport type StzhCheckboxChangeEvent = {\n component: \"stzh-checkbox\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\nexport type StzhCheckboxFocusEvent = {\n component: \"stzh-checkbox\"\n originalEvent: FocusEvent\n}\n\nexport type StzhCheckboxBlurEvent = {\n component: \"stzh-checkbox\"\n originalEvent: FocusEvent\n}\n\n/* Toggle */\n\nexport type StzhToggleChangeEvent = {\n component: \"stzh-toggle\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\nexport type StzhToggleFocusEvent = {\n component: \"stzh-toggle\"\n originalEvent: FocusEvent\n}\n\nexport type StzhToggleBlurEvent = {\n component: \"stzh-toggle\"\n originalEvent: FocusEvent\n}\n\n/* Button */\n\nexport type StzhButtonFocusEvent = {\n component: \"stzh-button\"\n originalEvent: FocusEvent\n}\n\nexport type StzhButtonBlurEvent = {\n component: \"stzh-button\"\n originalEvent: FocusEvent\n}\n\nexport type StzhButtonChangeEvent = {\n component: \"stzh-button\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\n/* Link */\n\nexport type StzhLinkFocusEvent = {\n component: \"stzh-link\"\n originalEvent: FocusEvent\n}\n\nexport type StzhLinkBlurEvent = {\n component: \"stzh-link\"\n originalEvent: FocusEvent\n}\n\n/* Menu Item */\n\nexport type StzhMenuItemFocusEvent = {\n component: \"stzh-menu-item\"\n originalEvent: FocusEvent\n}\n\nexport type StzhMenuItemBlurEvent = {\n component: \"stzh-menu-item\"\n originalEvent: FocusEvent\n}\n\n/* Carousel */\n\nexport type StzhCarouselSlideStartEvent = {\n component: \"stzh-carousel\"\n index: number\n}\n\nexport type StzhCarouselSlidePassedEvent = {\n component: \"stzh-carousel\"\n index: number\n}\n\nexport type StzhCarouselSlideEndEvent = {\n component: \"stzh-carousel\"\n index: number\n}\n\n/* Chip Select */\n\nexport type StzhChipSelectChangeEvent = {\n component: \"stzh-chip-select\"\n value: string\n}\n\n/* Gallery */\n\nexport type StzhGalleryItem = {\n width: number\n height: number\n src: string\n srcLightbox?: string\n srcsetLightbox?: string\n alt?: string\n copyright?: string\n heading?: string\n headingLightbox?: string\n caption?: string\n captionLightbox?: string\n lightboxHtml?: string\n hideCounter?: boolean\n}\n\n/* Datalist */\n\nexport type StzhDatalistItemEntry = {\n value: string\n leadingIcon?: string\n label?: string\n meta?: string\n icon?: string\n iconLabel?: string\n iconTooltip?: string\n statusLabel?: string\n statusType?: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\"\n href?: string\n rel?: string\n target?: string\n items?: StzhDatalistItemEntry[]\n}\n\nexport type StzhDatalistDirectionChangeEvent = {\n component: \"stzh-datalist\"\n value: \"vertical\" | \"horizontal\"\n}\n\nexport type StzhDatalistHideBorderChangeEvent = {\n component: \"stzh-datalist\"\n value: boolean\n}\n\n/* Datalist Item */\n\nexport type StzhDatalistItemActionClickEvent = {\n component: \"stzh-datalist-item\"\n originalEvent: MouseEvent\n}\n\n/* Datamessagelist */\n\nexport type StzhDatamessagelistItemEntryMeta = {\n label: string\n value: string\n}\n\nexport type StzhDatamessagelistItemEntryAction = {\n id: string | number\n icon: string\n label: string,\n badge?: string\n}\n\nexport type StzhDatamessagelistItemEntryTag = {\n icon: string\n label: string\n type: \"default\" | \"important\"\n}\n\nexport type StzhDatamessagelistItemEntryLoadingStatus = {\n percent: number\n label: string\n type: \"default\" | \"success\" | \"warning\" | \"error\"\n}\n\nexport type StzhDatamessagelistItemClickEvent = {\n component: \"stzh-datamessagelist-item\",\n originalEvent: MouseEvent\n}\n\nexport type StzhDatamessagelistItemActionClickEvent = {\n component: \"stzh-datamessagelist-item\",\n action: StzhDatamessagelistItemEntryAction,\n originalEvent: MouseEvent\n}\n\n/* Chip */\n\nexport type StzhChipSelectItem = {\n label: string\n value: string\n disabled?: boolean\n variant?: \"tag\" | \"filter\" | \"input\"\n type?: \"default\" | \"secondary\"\n counter?: string\n icon?: string\n size?: \"default\" | \"small\"\n}\n\nexport type StzhChipClickEvent = {\n component: \"stzh-chip\",\n originalEvent: MouseEvent\n}\n\nexport type StzhChipRemoveEvent = {\n component: \"stzh-chip\",\n originalEvent: MouseEvent\n}\n\nexport type StzhChipFocusEvent = {\n component: \"stzh-chip\"\n originalEvent: FocusEvent\n}\n\nexport type StzhChipBlurEvent = {\n component: \"stzh-chip\"\n originalEvent: FocusEvent\n}\n\n/* VBZ Major Ticker */\n\nexport type StzhVbzMajortickerDisturbance = {\n id: string\n head: string\n text: string\n startDate: Date\n endDate: Date\n altStart: string\n altEnd: string\n infoUrl?: VbzTickerInfoUrl\n};\n\nexport type StzhVbzMajortickerDisturbanceFetchedEvent = {\n component: \"stzh-vbz-majorticker\"\n disturbance: StzhVbzMajortickerDisturbance | null\n}\n\n/* VBZ Ticker */\n\nexport type VbzTickerInfoUrl = {\n name: string\n url: string\n};\n\nexport type VbzTickerDisturbance = {\n id: string\n head: string\n startDate: Date\n endDate: Date\n altStart: string\n altEnd: string\n baseType?: string\n infoUrl?: VbzTickerInfoUrl\n category:\n | typeof VBZ.DISTURBANCE_INFORMATION\n | typeof VBZ.DISTURBANCE_CONSTRUCTION\n | typeof VBZ.DISTURBANCE_NORMAL\n | typeof VBZ.DISTURBANCE_EVENT\n | typeof VBZ.DISTURBANCE_BUS\n};\n\nexport type VbzTickerLine = {\n line: VBZ.Lines\n name: string\n disturbances: VbzTickerDisturbance[]\n // whether normal or big disturbance for this line exist\n alert: boolean\n // 2 = Fernverkehr / 16 = Schiff / 32 = S-Bahn/Reg / 64 = Bus / 128 = Bergbahn / 256 = Nachtnetz / 512 = Tram\n category: \"2\" | \"16\" | \"32\" | \"64\" | \"128\" | \"256\" | \"512\"\n};\n\n/* VBZ Line Chip */\n\nexport type StzhVbzLinechipLine = {\n color: string\n background: string\n comment?: string\n}\n\nexport type StzhVbzLinechipFocusEvent = {\n component: \"stzh-vbz-linechip\"\n originalEvent: FocusEvent\n}\n\nexport type StzhVbzLinechipBlurEvent = {\n component: \"stzh-vbz-linechip\"\n originalEvent: FocusEvent\n}\n\n/* Clamp */\n\nexport type StzhClampClampEvent = {\n component: \"stzh-clamp\"\n clamped: boolean\n}\n\nexport type StzhClampExpandEvent = {\n component: \"stzh-clamp\"\n expanded: boolean\n}\n\n/* Image Comparison */\n\nexport type StzhImagecomparisonChangeEvent = {\n component: \"stzh-imagecomparison\"\n originalEvent: InputEvent\n value: number\n}\n\n/* Dialog */\n\nexport type StzhDialogOpenEvent = {\n component: \"stzh-dialog\"\n}\n\nexport type StzhDialogCloseEvent = {\n component: \"stzh-dialog\"\n}\n\n/* Contact */\n\nexport type ContactNumber = {\n type: \"tel\" | \"fax\"\n label: string\n number: string\n analyticsId?: string\n}\n\nexport type StzhContactAvailabilityItem = {\n weekday: string\n hours: string[]\n}\n\n/* Overlay */\n\nexport type StzhOverlayOpenEvent = {\n component: \"stzh-overlay\"\n}\n\nexport type StzhOverlayCloseEvent = {\n component: \"stzh-overlay\"\n}\n\n/* Message */\n\nexport type StzhMessageOpenEvent = {\n component: \"stzh-message\"\n}\n\nexport type StzhMessageCloseEvent = {\n component: \"stzh-message\"\n}\n\n/* Toastbar */\n\nexport type StzhToastbarInitialToast = {\n label: string\n type?: StzhToastType\n link?: HTMLStzhLinkElement | {\n href: string,\n label: string\n },\n cookie?: string\n cookieExpires?: number\n}\n\n/* Toast */\n\nexport type StzhToastType = \"info\" | \"success\" | \"warning\" | \"error\";\n\nexport type StzhToastOpenEvent = {\n component: \"stzh-toast\"\n}\n\nexport type StzhToastCloseEvent = {\n component: \"stzh-toast\"\n}\n\nexport type StzhToastOpenedEvent = {\n component: \"stzh-toast\"\n}\n\nexport type StzhToastClosedEvent = {\n component: \"stzh-toast\"\n}\n\n/* Ghettobox */\n\nexport type StzhGhettoboxOpenEvent = {\n component: \"stzh-ghettobox\"\n}\n\nexport type StzhGhettoboxCloseEvent = {\n component: \"stzh-ghettobox\"\n}\n\n/* Input */\n\nexport type StzhInputChangeEvent = {\n component: \"stzh-input\"\n originalEvent: InputEvent | MouseEvent\n value: string\n}\n\nexport type StzhInputChangedEvent = {\n component: \"stzh-input\"\n originalEvent: InputEvent | MouseEvent\n value: string\n}\n\nexport type StzhInputFocusEvent = {\n component: \"stzh-input\"\n originalEvent: FocusEvent\n}\n\nexport type StzhInputBlurEvent = {\n component: \"stzh-input\"\n originalEvent: FocusEvent\n}\n\n/* Popover */\n\nexport type StzhPopoverOpenEvent = {\n component: \"stzh-popover\"\n}\n\nexport type StzhPopoverOpenedEvent = {\n component: \"stzh-popover\"\n}\n\nexport type StzhPopoverCloseEvent = {\n component: \"stzh-popover\"\n}\n\nexport type StzhPopoverClosedEvent = {\n component: \"stzh-popover\"\n}\n\n/* Timeline */\n\nexport type StzhTimelineFoldableChangeEvent = {\n component: \"stzh-timeline\"\n value: boolean\n}\n\n/* TimelineItem */\n\nexport type StzhTimelineItemOpenEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemOpenedEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemCloseEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemClosedEvent = {\n component: \"stzh-timeline-item\"\n}\n\nexport type StzhTimelineItemFocusEvent = {\n component: \"stzh-timeline-item\"\n originalEvent: FocusEvent\n}\n\nexport type StzhTimelineItemBlurEvent = {\n component: \"stzh-timeline-item\"\n originalEvent: FocusEvent\n}\n\n/* Accordion */\n\nexport type StzhAccordionItemOpenEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemOpenedEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemCloseEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemClosedEvent = {\n component: \"stzh-accordion-item\"\n}\n\nexport type StzhAccordionItemFocusEvent = {\n component: \"stzh-accordion-item\"\n originalEvent: FocusEvent\n}\n\nexport type StzhAccordionItemBlurEvent = {\n component: \"stzh-accordion-item\"\n originalEvent: FocusEvent\n}\n\n/* Tooltip */\n\nexport type StzhTooltipOpenEvent = {\n component: \"stzh-tooltip\"\n}\n\nexport type StzhTooltipOpenedEvent = {\n component: \"stzh-tooltip\"\n}\n\nexport type StzhTooltipCloseEvent = {\n component: \"stzh-tooltip\"\n}\n\nexport type StzhTooltipClosedEvent = {\n component: \"stzh-tooltip\"\n}\n\n/* Radio */\n\nexport type StzhRadioChangeEvent = {\n component: \"stzh-radio\"\n originalEvent: InputEvent\n value: string\n checked: boolean\n}\n\nexport type StzhRadioFocusEvent = {\n component: \"stzh-radio\"\n originalEvent: FocusEvent\n}\n\nexport type StzhRadioBlurEvent = {\n component: \"stzh-radio\"\n originalEvent: FocusEvent\n}\n\n/* Langnav */\n\nexport type StzhLangnavChangeEvent = {\n component: \"stzh-langnav\",\n value: string\n}\n\n/* Dropdown */\n\nexport type StzhDropdownOption = {\n text: string,\n value: string\n}\n\nexport type StzhDropdownChangeEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownItemAddEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownItemRemoveEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownOptionAddEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownOptionRemoveEvent = {\n component: \"stzh-dropdown\",\n value: string\n}\n\nexport type StzhDropdownOpenEvent = {\n component: \"stzh-dropdown\"\n}\n\nexport type StzhDropdowCloseEvent = {\n component: \"stzh-dropdown\"\n}\n\nexport type StzhDropdownFocusEvent = {\n component: \"stzh-dropdown\"\n originalEvent: {\n target: Element\n }\n}\n\nexport type StzhDropdownBlurEvent = {\n component: \"stzh-dropdown\"\n}\n\nexport type StzhDropdowInitEvent = {\n component: \"stzh-dropdown\"\n}\n\n/** Progressbar */\n\nexport type StzhProgressbarDataItem = {\n label: string\n icon?: string\n disabled?: boolean\n analyticsId?: string\n}\n\n/* Progressbar Item */\n\nexport type StzhProgressbarItemClickEvent = {\n component: \"stzh-progressbar-item\"\n originalEvent: MouseEvent\n index: number\n}\n\nexport type StzhProgressbarItemDottedClickEvent = {\n component: \"stzh-progressbar-item\"\n originalEvent: MouseEvent\n index: number\n}\n\n/* Upload */\n\nexport type StzhUploadFilesItem = {\n name: string\n size: number\n [key: string]: any\n}\n\nexport type StzhUploadFile = File & {\n xhr: XMLHttpRequest,\n status: string\n upload: any\n accepted: boolean\n previewElement: HTMLElement\n}\n\nexport type StzhUploadFileAddedEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadFilesAddedEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\nexport type StzhUploadFileRemoveEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadFileRemovedEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n force: boolean\n}\n\nexport type StzhUploadSendingEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n xhr: XMLHttpRequest,\n formData: FormData\n}\n\nexport type StzhUploadSendingMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[],\n xhr: XMLHttpRequest,\n formData: FormData\n}\n\nexport type StzhUploadProcessingEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadProcessingMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\nexport type StzhUploadProgressEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n progress: number,\n bytesSent: number\n}\n\nexport type StzhUploadProgressTotalEvent = {\n component: \"stzh-upload\",\n totalUploadProgress: number,\n totalBytes: number,\n totalBytesSent: number\n}\n\nexport type StzhUploadErrorEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n message: string,\n xhr: XMLHttpRequest\n}\n\nexport type StzhUploadErrorMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[],\n message: string,\n xhr: XMLHttpRequest\n}\n\nexport type StzhUploadSuccessEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile,\n responseText: string,\n event: ProgressEvent\n}\n\nexport type StzhUploadSuccessMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[],\n responseText: string,\n event: ProgressEvent\n}\n\nexport type StzhUploadCanceledEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadCanceledMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\nexport type StzhUploadCompleteEvent = {\n component: \"stzh-upload\",\n file: StzhUploadFile\n}\n\nexport type StzhUploadCompleteMultipleEvent = {\n component: \"stzh-upload\",\n files: StzhUploadFile[]\n}\n\n// Merged Types\n\nexport type StzhFocusEvent =\n | StzhAccordionItemFocusEvent\n | StzhButtonFocusEvent\n | StzhCheckboxFocusEvent\n | StzhChipFocusEvent\n | StzhDropdownFocusEvent\n | StzhInputFocusEvent\n | StzhLinkFocusEvent\n | StzhMenuItemFocusEvent\n | StzhRadioFocusEvent\n | StzhToggleFocusEvent\n | StzhVbzLinechipFocusEvent\n | StzhSkiplinkFocusEvent\n\n// ---\n// Prop Types\n// ---\n\nexport type StzhCalendarDateDisabledPredicate = (date: Date) => boolean\n\n\nexport namespace Layout {\n export type Ratio = \"16:9\" | \"1:1\" | \"5:4\" | \"4:3\" | \"3:2\" | \"2:1\" | \"21:9\";\n\n export type Justify =\n | \"start\"\n | \"end\"\n | \"center\"\n | \"between\"\n | \"around\"\n | \"evenly\";\n\n export type Items =\n | \"start\"\n | \"end\"\n | \"center\"\n | \"baseline\"\n | \"stretch\";\n\n export type JustifySelf =\n | \"auto\"\n | Justify;\n\n export type AlignSelf =\n | \"auto\"\n | Items;\n}\n\nexport namespace Space {\n export type Sizes =\n | \"xxxsmall\"\n | \"xxsmall\"\n | \"xsmall\"\n | \"small\"\n | \"medium\"\n | \"large\"\n | \"xlarge\"\n | \"xxlarge\"\n | \"xxxlarge\"\n | \"xxxxlarge\"\n | \"big\"\n | \"xbig\"\n | \"huge\"\n | \"xhuge\"\n | \"none\"\n | \"inherit\";\n\n export type Curves =\n | \"tiny\"\n | \"small\"\n | \"regular\"\n | \"medium\"\n | \"large\"\n | \"big\"\n | \"huge\"\n | \"none\";\n}\n\nexport namespace Font {\n export type Fonts =\n | \"light\"\n | \"regular\"\n | \"medium\"\n | \"heavy\"\n | \"default\";\n\n export type Sizes =\n | \"pico\"\n | \"nano\"\n | \"micro\"\n | \"milli\"\n | \"centi\"\n | \"deci\"\n | \"regular\"\n | \"deca\"\n | \"hecto\"\n | \"kilo\"\n | \"mega\"\n | \"giga\"\n | \"hero\"\n | \"inherit\";\n\n export type Curves =\n | \"p1\"\n | \"p2\"\n | \"caption\"\n | \"h4\"\n | \"h3\"\n | \"h2\"\n | \"h1\"\n | \"hero\"\n | \"default\"\n | \"none\";\n}\n\nexport namespace VBZ {\n export const BASE_TYPE_GLOBAL = \"GLOBAL\";\n\n export const CHANNEL_TICKER = \"ticker\";\n export const CHANNEL_INFO_URL_FILTER = \"stadt-zuerich.ch/vbz\";\n\n export const DISTURBANCE_GLOBAL = \"__global__\";\n export const DISTURBANCE_INFORMATION = \"0\";\n export const DISTURBANCE_CONSTRUCTION = \"1\";\n export const DISTURBANCE_NORMAL = \"2\";\n export const DISTURBANCE_EVENT = \"4\";\n export const DISTURBANCE_BUS = \"5\";\n\n export type Lines =\n | \"2\"\n | \"3\"\n | \"4\"\n | \"5\"\n | \"6\"\n | \"7\"\n | \"8\"\n | \"9\"\n | \"10\"\n | \"11\"\n | \"12\"\n | \"13\"\n | \"14\"\n | \"15\"\n | \"16\"\n | \"17\"\n | \"19\"\n | \"20\"\n | \"21\"\n | \"23\"\n | \"24\"\n | \"25\"\n | \"29\"\n | \"31\"\n | \"32\"\n | \"33\"\n | \"34\"\n | \"35\"\n | \"36\"\n | \"37\"\n | \"38\"\n | \"39\"\n | \"40\"\n | \"45\"\n | \"46\"\n | \"54\"\n | \"61\"\n | \"62\"\n | \"63\"\n | \"64\"\n | \"66\"\n | \"67\"\n | \"69\"\n | \"70\"\n | \"72\"\n | \"73\"\n | \"75\"\n | \"76\"\n | \"77\"\n | \"78\"\n | \"79\"\n | \"80\"\n | \"83\"\n | \"89\"\n | \"91\"\n | \"94\"\n | \"95\"\n | \"99\"\n | \"151\"\n | \"152\"\n | \"153\"\n | \"156\"\n | \"161\"\n | \"162\"\n | \"163\"\n | \"165\"\n | \"184\"\n | \"185\"\n | \"200\"\n | \"201\"\n | \"215\"\n | \"220\"\n | \"235\"\n | \"236\"\n | \"245\"\n | \"301\"\n | \"302\"\n | \"303\"\n | \"304\"\n | \"305\"\n | \"306\"\n | \"307\"\n | \"308\"\n | \"309\"\n | \"311\"\n | \"314\"\n | \"315\"\n | \"317\"\n | \"321\"\n | \"323\"\n | \"325\"\n | \"350\"\n | \"444\"\n | \"445\"\n | \"701\"\n | \"702\"\n | \"703\"\n | \"704\"\n | \"705\"\n | \"720\"\n | \"721\"\n | \"725\"\n | \"726\"\n | \"727\"\n | \"742\"\n | \"743\"\n | \"744\"\n | \"745\"\n | \"747\"\n | \"748\"\n | \"751\"\n | \"752\"\n | \"753\"\n | \"754\"\n | \"759\"\n | \"760\"\n | \"765\"\n | \"768\"\n | \"781\"\n | \"786\"\n | \"787\"\n | \"910\"\n | \"912\"\n | \"916\"\n | \"917\"\n | \"918\"\n | \"919\"\n | \"E\"\n | \"N\"\n | \"N1\"\n | \"N2\"\n | \"N4\"\n | \"N5\"\n | \"N6\"\n | \"N7\"\n | \"N8\"\n | \"N9\"\n | \"N10\"\n | \"N11\"\n | \"N12\"\n | \"N13\"\n | \"N14\"\n | \"N15\"\n | \"N16\"\n | \"N17\"\n | \"N18\"\n | \"N19\"\n | \"N30\"\n | \"N31\"\n | \"N32\"\n | \"N33\"\n | \"N34\"\n | \"N45\"\n | \"N72\"\n | \"N78\"\n | \"SN1\"\n | \"SN4\"\n | \"SN5\"\n | \"SN6\"\n | \"SN7\"\n | \"SN8\"\n | \"SN9\"\n | \"S2\"\n | \"S3\"\n | \"S4\"\n | \"S5\"\n | \"S6\"\n | \"S7\"\n | \"S8\"\n | \"S9\"\n | \"S10\"\n | \"S11\"\n | \"S14\"\n | \"S15\"\n | \"S16\"\n | \"S18\"\n | \"S19\"\n | \"S20\"\n | \"S21\"\n | \"S23\"\n | \"S24\"\n | \"S25\"\n}\n\n// ---\n// Stencil component types\n// ---\n\nexport * from './components';\n"],"mappings":"2FA4xCiBA,GAAjB,SAAiBA,GACFA,EAAAC,iBAAmB,SAEnBD,EAAAE,eAAiB,SACjBF,EAAAG,wBAA0B,uBAE1BH,EAAAI,mBAAqB,aACrBJ,EAAAK,wBAA0B,IAC1BL,EAAAM,yBAA2B,IAC3BN,EAAAO,mBAAqB,IACrBP,EAAAQ,kBAAoB,IACpBR,EAAAS,gBAAkB,GAyLhC,EApMD,CAAiBT,MAAGU,EAAA,W"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as s,h as i,a as e,g as n}from"./p-c92165bd.js";import{p as a,a as h}from"./p-23d404e1.js";function p(t,s){if(!t){return""}const i=t.split("|");let e=i[0].trim();if(i.length===3&&s===1){e=i[1].trim()}else if(i.length===3&&s>1){e=i[2].trim()}if(i.length===2&&s!==1){e=i[1].trim()}return e.replace(/\{n\}/gi,s.toString())}const o=".sc-stzh-appointments-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:var(--stzh-font-style-regular);color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-appointments-h{display:none}.sc-stzh-appointments-h *.sc-stzh-appointments,.sc-stzh-appointments-h *.sc-stzh-appointments::before,.sc-stzh-appointments-h *.sc-stzh-appointments::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-appointments-h .has-focus.sc-stzh-appointments{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.3125rem}.sc-stzh-appointments-h .stzh-fylingfocus-focused.sc-stzh-appointments{outline-style:none !important}.sc-stzh-appointments-h .stzh-fylingfocus-focused.sc-stzh-appointments::-moz-focus-inner{border:0 !important}.stzh-appointments__wrapper.sc-stzh-appointments{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width: 1024px){.stzh-appointments__wrapper.sc-stzh-appointments{-ms-flex-direction:row;flex-direction:row}}.stzh-appointments__calendar-wrapper.sc-stzh-appointments{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}@media screen and (min-width: 1024px){.stzh-appointments__calendar-wrapper.sc-stzh-appointments{margin-right:var(--stzh-space-large)}}.stzh-appointments__appointments-wrapper.sc-stzh-appointments{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.stzh-appointments__calendar-title-wrapper.sc-stzh-appointments,.stzh-appointments__appointments-title-wrapper.sc-stzh-appointments{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-direction:column;flex-direction:column;margin-bottom:var(--stzh-space-xsmall)}@media screen and (min-width: 1024px){.stzh-appointments__calendar-title-wrapper.sc-stzh-appointments,.stzh-appointments__appointments-title-wrapper.sc-stzh-appointments{-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:var(--stzh-space-medium);height:var(--stzh-space-xxlarge)}}.stzh-appointments__calendar-title.sc-stzh-appointments,.stzh-appointments__appointments-title.sc-stzh-appointments{display:-ms-flexbox;display:flex}.stzh-appointments__calendar-icon.sc-stzh-appointments,.stzh-appointments__appointments-icon.sc-stzh-appointments{margin-right:var(--stzh-space-xsmall);display:none}@media screen and (min-width: 1024px){.stzh-appointments__calendar-icon.sc-stzh-appointments,.stzh-appointments__appointments-icon.sc-stzh-appointments{display:-ms-inline-flexbox;display:inline-flex}}.stzh-appointments__calendar-content-medium.sc-stzh-appointments,.stzh-appointments__appointments-content.sc-stzh-appointments{background-color:var(--stzh-color-white);border:0.0625rem solid var(--stzh-color-grey13);border-radius:0.125rem}@media screen and (min-width: 1024px){.stzh-appointments__calendar-content.sc-stzh-appointments{display:none}}.stzh-appointments__calendar-content-medium.sc-stzh-appointments{display:none;padding:var(--stzh-space-medium)}@media screen and (min-width: 1024px){.stzh-appointments__calendar-content-medium.sc-stzh-appointments{display:block}}.stzh-appointments__appointments-content.sc-stzh-appointments{padding:var(--stzh-space-xlarge);-ms-flex-positive:1;flex-grow:1}.stzh-appointments__more-link.sc-stzh-appointments{margin-top:var(--stzh-space-medium)}.stzh-appointments--has-calendar.sc-stzh-appointments .stzh-appointments__appointments-wrapper.sc-stzh-appointments{margin-top:var(--stzh-space-large)}@media screen and (min-width: 1024px){.stzh-appointments--has-calendar.sc-stzh-appointments .stzh-appointments__appointments-wrapper.sc-stzh-appointments{margin-top:0}}";const r=class{constructor(i){t(this,i);this.stzhChange=s(this,"stzhChange",7);this.showMoreLink=false;this.moreItemsLeft=0;this.showCalendar=false;this.showSort=false;this.showSortStart=false;this.showSortPlace=false;this.showAppointmentsTitle=false;this.allAppointsmentOnSameDay=true;this.sortOptions=[];this.isDateDisabled=t=>{const s=!!this._appointments.find((s=>s.start.getFullYear()===t.getFullYear()&&s.start.getMonth()===t.getMonth()&&s.start.getDate()===t.getDate()));return!s};this.onNextActiveDateClick=async()=>{if(this.nextDate){this.currentDate=this.nextDate;const t=await this.datepickerElement.getPopover();if(t){t.hide()}}};this.onMoreClick=()=>{this.showItems=this.stepItems+this.showItems;const t=this.inputElement.querySelector("stzh-radio");t.setFocus()};this.onDropdownChange=async t=>{const s=t.target;const i=await s.getValue();if(i){this.sortBy=i}};this.onDatepickerChange=t=>{if(t.detail.component!=="stzh-datepicker"||!t.detail.valueAsDate){return}this.currentDate=t.detail.valueAsDate;this.showItems=this.stepItems};this.onRadioChange=t=>{this.value=t.detail.value;this.stzhChange.emit({component:"stzh-appointments",value:this.value})};this.localization=undefined;this.sortBy="start";this.appointments=[];this.currentDate=undefined;this.value="";this.name="appointment";this.showItems=5;this.stepItems=5;this.calendarTitle="";this.appointmentsTitle="";this.dateAdapter=undefined}dateAdapterWatcher(t){if(!t){this.dateAdapter=window.stzhComponents.utils.createFormatParseAdapter(this.localization.$formats,this.localization.$globals)}}currentDateWatcher(t){if(!t){this._currentDate=this.dateByValue||this.earliestDate;if(!this.dateByValue){this.setValueToFirstAppointmentOfCurrentDate()}}else if(typeof t==="string"){this._currentDate=a(t);this.setValueToFirstAppointmentOfCurrentDate()}else{this._currentDate=t;this.setValueToFirstAppointmentOfCurrentDate()}}sortByWatcher(){this.setValueToFirstAppointmentOfCurrentDate()}valueWatcher(){this.updateDateByValue();this.currentDateWatcher(this.currentDate)}appointmentsWatcher(t){if(typeof t==="string"){this._appointments=JSON.parse(t)}else{this._appointments=t}this._appointments.forEach((t=>{t.start=new Date(t.start);t.end=new Date(t.end)}));if(this._appointments.length>0){this._appointments.sort(((t,s)=>t["start"]>s["start"]?1:-1));this.earliestDate=this._appointments[0].start;this.latestDate=this._appointments[this._appointments.length-1].start;this.updateDateByValue()}if(this._appointments.length>1){const t=this._appointments[0].start;this.allAppointsmentOnSameDay=this._appointments.map((t=>t.start)).every((s=>`${s.getFullYear()}-${s.getMonth()}-${s.getDate()}`===`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`))}this.showCalendar=!this.allAppointsmentOnSameDay;this.showAppointmentsTitle=this._appointments.length>1;this.currentDateWatcher(this.currentDate)}updateDateByValue(){this.dateByValue=this.value&&this._appointments.find((t=>t.value===this.value)).start}getCurrentDateAppointments(){let t=0;const s=this._appointments.filter(((s,i)=>{const e=s.start.getFullYear()===this._currentDate.getFullYear()&&s.start.getMonth()===this._currentDate.getMonth()&&s.start.getDate()===this._currentDate.getDate();if(e){t=i}return e}));if(this._appointments[t+1]){this.nextDate=this._appointments[t+1].start}else{this.nextDate=null}s.sort(((t,s)=>t[this.sortBy]>s[this.sortBy]?1:-1));return s}setValueToFirstAppointmentOfCurrentDate(){const t=this.getCurrentDateAppointments().filter((t=>!t.disabled));if(t.length>0){this.value=t[0].value;this.stzhChange.emit({component:"stzh-appointments",value:this.value})}}async componentWillLoad(){this.appointmentsWatcher(this.appointments);if(!this.localization){this.localization=await window.stzhComponents.utils.fetchTranslations(this.element,"appointments")}this.dateAdapterWatcher(this.dateAdapter)}componentWillRender(){const t=this.getCurrentDateAppointments();this.appointmentsShown=t.slice(0,this.showItems);this.showMoreLink=this.showItems<t.length;this.moreItemsLeft=t.length-this.showItems;this.showSortStart=t.map((t=>this.dateAdapter.format(t.start,"time"))).filter(((t,s,i)=>i.indexOf(t)==s)).length>1;this.showSortPlace=t.map((t=>t.place)).filter(((t,s,i)=>i.indexOf(t)==s)).length>1;this.sortOptions=[];if(this.showSortStart){this.sortOptions.push({text:this.localization.sortByTime,value:"start"})}if(this.showSortPlace){this.sortOptions.push({text:this.localization.sortByPlace,value:"place"})}this.showSort=this.appointmentsShown.length>1;this._sortBy=this.showSortStart&&!this.showSortPlace&&"start"||!this.showSortStart&&this.showSortPlace&&"place"||this.sortBy}componentDidRender(){if(this.datepickerElement){this.datepickerElement.setDate(this._currentDate)}if(this.datepickerElementMedium){this.datepickerElementMedium.setDate(this._currentDate)}}render(){const t={"stzh-appointments":true,"stzh-appointments--has-calendar":this.showCalendar,"stzh-appointments--has-appointments-title":this.showAppointmentsTitle,"stzh-appointments--has-sort":this.showSort};return i(e,null,i("div",{class:t},i("div",{class:"stzh-appointments__wrapper"},this.showCalendar&&i("div",{class:"stzh-appointments__calendar-wrapper"},i("div",{class:"stzh-appointments__calendar-title-wrapper"},i("div",{class:"stzh-appointments__calendar-title"},i("stzh-icon",{class:"stzh-appointments__calendar-icon",name:"calendar"}),i("stzh-text",{font:"heavy"},this.calendarTitle||this.localization.calendarTitle))),i("div",{class:"stzh-appointments__calendar-content"},i("stzh-datepicker",{ref:t=>this.datepickerElement=t,onStzhChange:this.onDatepickerChange,label:this.localization.datepickerLabel,calendarIsDateDisabled:this.isDateDisabled,calendarMin:h(this.earliestDate),calendarMax:h(this.latestDate)},i("stzh-link",{slot:"action",disabled:!this.nextDate,onClick:this.onNextActiveDateClick},i("stzh-text",{size:"milli"},this.localization.nextDayWithAppointments)))),i("div",{class:"stzh-appointments__calendar-content-medium"},i("stzh-datepicker",{ref:t=>this.datepickerElementMedium=t,onStzhChange:this.onDatepickerChange,inline:true,calendarIsDateDisabled:this.isDateDisabled,calendarMin:h(this.earliestDate),calendarMax:h(this.latestDate)},this.nextDate&&i("stzh-link",{slot:"action",onClick:this.onNextActiveDateClick},i("stzh-text",{size:"milli"},this.localization.nextDayWithAppointments))))),i("div",{class:"stzh-appointments__appointments-wrapper"},this.showAppointmentsTitle&&i("div",{class:"stzh-appointments__appointments-title-wrapper"},i("div",{class:"stzh-appointments__appointments-title"},i("stzh-icon",{class:"stzh-appointments__appointments-icon",name:"clock"}),i("stzh-text",{font:"heavy"},this.appointmentsTitle||this.localization.appointmentsTitle)),this.showSort&&i("div",{class:"stzh-appointments__sort"},i("stzh-dropdown",{inline:true,"no-search":true,class:"stzh-appointments__sort-dropdown",variant:"plain",size:"small",items:[this._sortBy],options:this.sortOptions,onStzhChange:this.onDropdownChange}))),i("div",{class:"stzh-appointments__appointments-content"},i("stzh-radiogroup",{ref:t=>this.inputElement=t,legend:this.localization.inputLegend,"hide-legend":true,name:this.name,value:this.value,preventUpdateProperties:["disabled"]},this.appointmentsShown.map((t=>i("stzh-radio",{onStzhChange:this.onRadioChange,value:t.value,disabled:typeof t.disabled!=="undefined"?t.disabled:false},i("stzh-text",{font:"heavy",size:"milli"},!this.showCalendar&&i("span",null,this.dateAdapter.format(t.start,"dateLong"),", "),this.dateAdapter.formatSpan(t.start,t.end,"time")),i("stzh-text",{size:"milli"},t.caption))))),this.showMoreLink&&i("stzh-link",{class:"stzh-appointments__more-link",onClick:this.onMoreClick},i("stzh-text",{size:"milli"},p(this.localization.moreTextItems,this.moreItemsLeft>this.stepItems?this.stepItems:this.moreItemsLeft))))))))}get element(){return n(this)}static get watchers(){return{dateAdapter:["dateAdapterWatcher"],currentDate:["currentDateWatcher"],sortBy:["sortByWatcher"],value:["valueWatcher"],appointments:["appointmentsWatcher"]}}};r.style=o;export{r as stzh_appointments};
|
|
2
|
+
//# sourceMappingURL=p-222ba06a.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["tc","translation","count","parts","split","part","trim","length","replace","toString","stzhAppointmentsCss","StzhAppointments","this","showMoreLink","moreItemsLeft","showCalendar","showSort","showSortStart","showSortPlace","showAppointmentsTitle","allAppointsmentOnSameDay","sortOptions","isDateDisabled","date","dateHasAppointment","_appointments","find","appointment","start","getFullYear","getMonth","getDate","onNextActiveDateClick","async","nextDate","currentDate","popover","datepickerElement","getPopover","hide","onMoreClick","showItems","stepItems","radio","inputElement","querySelector","setFocus","onDropdownChange","event","target","sortBy","getValue","onDatepickerChange","detail","component","valueAsDate","onRadioChange","value","stzhChange","emit","dateAdapterWatcher","newValue","dateAdapter","window","stzhComponents","utils","createFormatParseAdapter","localization","$formats","$globals","currentDateWatcher","_currentDate","dateByValue","earliestDate","setValueToFirstAppointmentOfCurrentDate","parseISODate","sortByWatcher","valueWatcher","updateDateByValue","appointmentsWatcher","JSON","parse","forEach","Date","end","sort","a","b","latestDate","firstDate","map","every","getCurrentDateAppointments","indexOfLastCurrentDayDate","appointmentsCurrentDate","filter","index","dateIsInCurrentDay","appointments","disabled","componentWillLoad","fetchTranslations","element","componentWillRender","appointmentsShown","slice","format","item","pos","self","indexOf","place","push","text","sortByTime","sortByPlace","_sortBy","componentDidRender","setDate","datepickerElementMedium","render","classes","h","Host","class","name","font","calendarTitle","ref","el","onStzhChange","label","datepickerLabel","calendarIsDateDisabled","calendarMin","printISODate","calendarMax","slot","onClick","size","nextDayWithAppointments","inline","appointmentsTitle","variant","items","options","legend","inputLegend","preventUpdateProperties","formatSpan","caption","moreTextItems"],"sources":["src/utils/translation-utils.ts","src/components/stzh-appointments/stzh-appointments.scss?tag=stzh-appointments&encapsulation=scoped","src/components/stzh-appointments/stzh-appointments.tsx"],"sourcesContent":["import {\n StzhDateFormat,\n StzhDateParse\n} from \"./date-adapter\";\n\nexport type StzhLocaleFormats = {\n datetime?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n datetimeLong?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n datetimeInput?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n date?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n dateLong?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n dateInput?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n time?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n timeInput?: {\n format: string | StzhDateFormat,\n parse: string | StzhDateParse\n },\n}\n\ntype MonthsNames = [string, string, string, string, string, string, string, string, string, string, string, string]\ntype DayNames = [string, string, string, string, string, string, string]\n\nexport type StzhLocaleGlobals = {\n dateRange: string,\n timeRange: string,\n externalLinkLabel: string\n downloadLinkLabel: string\n requiredFieldMarker: string\n requiredFieldText: string\n optionalFieldMarker: string\n optionalFieldText: string\n invalidFieldText: string\n clearButtonLabel: string\n moreInfoButtonLabel: string\n dayNames: DayNames\n monthNames: MonthsNames\n monthNamesShort: MonthsNames\n}\n\nexport type StzhLocaleComponent = {\n $locale: \"de\" | \"en\",\n $formats: StzhLocaleFormats,\n $formatsIso: StzhLocaleFormats,\n $formatsLegacy: StzhLocaleFormats,\n $globals: StzhLocaleGlobals\n}\n\nexport function tc(translation: string, count: number): string {\n if (!translation) {\n return \"\";\n }\n\n const parts = translation.split('|');\n let part = parts[0].trim();\n\n if (parts.length === 3 && count === 1) {\n part = parts[1].trim();\n } else if (parts.length === 3 && count > 1) {\n part = parts[2].trim();\n }\n\n if (parts.length === 2 && count !== 1) {\n part = parts[1].trim();\n }\n\n return part.replace(/\\{n\\}/ig, count.toString());\n}\n",".stzh-appointments {\n &__wrapper {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n flex-direction: row;\n }\n }\n\n &__calendar-wrapper {\n display: flex;\n flex-direction: column;\n\n @include mq($from: medium) {\n margin-right: space('large');\n }\n }\n\n &__appointments-wrapper {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n }\n\n &__calendar-title-wrapper,\n &__appointments-title-wrapper {\n display: flex;\n align-items: flex-start;\n flex-direction: column;\n margin-bottom: space('xsmall');\n\n @include mq($from: medium) {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n margin-bottom: space('medium');\n height: space('xxlarge');\n }\n }\n\n &__calendar-title,\n &__appointments-title {\n display: flex;\n }\n\n &__calendar-icon,\n &__appointments-icon {\n margin-right: space('xsmall');\n display: none;\n\n @include mq($from: medium) {\n display: inline-flex;\n }\n }\n\n &__calendar-content-medium,\n &__appointments-content {\n background-color: $colorWhite;\n border: 1px solid $colorGrey13;\n border-radius: 2px;\n }\n\n &__calendar-content {\n @include mq($from: medium) {\n display: none;\n }\n }\n\n &__calendar-content-medium {\n display: none;\n padding: space('medium');\n\n @include mq($from: medium) {\n display: block;\n }\n }\n\n &__appointments-content {\n padding: space('xlarge');\n flex-grow: 1;\n }\n\n &__more-link {\n margin-top: space('medium');\n }\n\n &--has-calendar &__appointments-wrapper {\n margin-top: space('large');\n\n @include mq($from: medium) {\n margin-top: 0;\n }\n }\n}\n","import {\n Component,\n Host,\n Element,\n Prop,\n h,\n Watch,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhAppointmentsChangeEvent,\n StzhRadioChangeEvent,\n StzhDatepickerChangeEvent,\n StzhDropdownChangeEvent,\n} from \"../../index\";\n\nimport { tc } from \"../../utils/translation-utils\";\n\nimport { printISODate, parseISODate } from \"../../utils/date-utils\";\nimport { StzhLocaleAdapter } from \"../../utils/date-adapter\";\n\nimport { StzhAppointmentsLocalizedText } from \"./stzh-appointments.localization\"\n\n/**\n * @slot - Slot for any content\n */\n@Component({\n tag: \"stzh-appointments\",\n styleUrl: \"stzh-appointments.scss\",\n scoped: true\n})\nexport class StzhAppointments {\n /** Translation strings */\n @Prop() localization: StzhAppointmentsLocalizedText;\n\n /** Sort by */\n @Prop({ mutable: true }) sortBy: \"start\" | \"place\" = \"start\";\n private _sortBy: \"start\" | \"place\";\n\n /** Initial selected values */\n @Prop() appointments: any[] | string = [];\n private _appointments: any[];\n private appointmentsShown: any[];\n\n /** Current selected date (if undefined, earliest appointment date in list is taken or current selected one by value) */\n @Prop({ mutable: true }) currentDate: Date | string;\n private _currentDate: Date;\n\n /* Selected appointment by value */\n @Prop({ mutable: true }) value: string = \"\";\n\n /* Name of radiogroup form element */\n @Prop({ reflect: true }) name: string = \"appointment\";\n\n /** Nr of items shown */\n @Prop({ mutable: true }) showItems: number = 5;\n\n /** Nr of items shown when more link is clicked */\n @Prop() stepItems: number = 5;\n\n /** Overwrite default calendar title */\n @Prop() calendarTitle = \"\";\n\n /** Overwrite default appointments title */\n @Prop() appointmentsTitle = \"\";\n\n /**\n * Date adapter, for custom parsing/formatting.\n * Must be object with a `parse` function which accepts a `string` and returns a `Date`,\n * and a `format` function which accepts a `Date` and returns a `string`.\n */\n @Prop() dateAdapter: StzhLocaleAdapter;\n\n @Element() element: HTMLStzhAppointmentsElement;\n\n /** Appointments change event */\n @Event() stzhChange: EventEmitter<StzhAppointmentsChangeEvent>;\n\n @Watch(\"dateAdapter\")\n dateAdapterWatcher(newValue: StzhLocaleAdapter) {\n if (!newValue) {\n this.dateAdapter = window.stzhComponents.utils.createFormatParseAdapter(\n this.localization.$formats,\n this.localization.$globals\n );\n }\n }\n\n @Watch(\"currentDate\")\n currentDateWatcher(newValue: Date | string) {\n if (!newValue) {\n this._currentDate = this.dateByValue || this.earliestDate;\n\n if (!this.dateByValue) {\n this.setValueToFirstAppointmentOfCurrentDate();\n }\n } else if (typeof newValue === \"string\") {\n this._currentDate = parseISODate(newValue);\n this.setValueToFirstAppointmentOfCurrentDate();\n } else {\n this._currentDate = newValue;\n this.setValueToFirstAppointmentOfCurrentDate();\n }\n }\n\n @Watch(\"sortBy\")\n sortByWatcher() {\n this.setValueToFirstAppointmentOfCurrentDate();\n }\n\n @Watch(\"value\")\n valueWatcher() {\n this.updateDateByValue();\n // update current date if user has not choosen one\n this.currentDateWatcher(this.currentDate);\n }\n\n @Watch(\"appointments\")\n appointmentsWatcher(newValue: any[] | string) {\n if (typeof newValue === \"string\") {\n this._appointments = JSON.parse(newValue);\n } else {\n this._appointments = newValue;\n }\n\n // convert start and end field to date\n this._appointments.forEach(appointment => {\n appointment.start = new Date(appointment.start);\n appointment.end = new Date(appointment.end);\n })\n\n if (this._appointments.length > 0) {\n // sort with start field and find earliest and latest date\n this._appointments.sort((a, b) => a['start'] > b['start'] ? 1 : -1);\n this.earliestDate = this._appointments[0].start;\n this.latestDate = this._appointments[this._appointments.length - 1].start;\n this.updateDateByValue();\n }\n\n // determine whether all appointments are from the same day\n if (this._appointments.length > 1) {\n const firstDate = this._appointments[0].start;\n this.allAppointsmentOnSameDay = this._appointments\n .map(appointment => appointment.start)\n .every(date => `${date.getFullYear()}-${date.getMonth()}-${date.getDate()}`\n === `${firstDate.getFullYear()}-${firstDate.getMonth()}-${firstDate.getDate()}`);\n }\n\n // update flags\n this.showCalendar = !this.allAppointsmentOnSameDay;\n this.showAppointmentsTitle = this._appointments.length > 1;\n\n // update current date if user has not choosen one\n this.currentDateWatcher(this.currentDate);\n }\n\n private dateByValue: Date;\n private earliestDate: Date;\n private latestDate: Date;\n private nextDate: Date;\n\n private showMoreLink: boolean = false;\n private moreItemsLeft: number = 0;\n private showCalendar: boolean = false;\n private showSort: boolean = false;\n private showSortStart: boolean = false;\n private showSortPlace: boolean = false;\n private showAppointmentsTitle: boolean = false;\n private allAppointsmentOnSameDay: boolean = true;\n private sortOptions = [];\n\n private inputElement: HTMLStzhRadiogroupElement;\n private datepickerElement: HTMLStzhDatepickerElement;\n private datepickerElementMedium: HTMLStzhDatepickerElement;\n\n private updateDateByValue() {\n this.dateByValue = this.value\n && this._appointments\n .find(appointment => appointment.value === this.value)\n .start;\n }\n\n private getCurrentDateAppointments() {\n let indexOfLastCurrentDayDate = 0;\n\n // filter to current date appointments that can be shown\n const appointmentsCurrentDate = this._appointments\n .filter((appointment, index) => {\n const dateIsInCurrentDay = appointment.start.getFullYear() === this._currentDate.getFullYear()\n && appointment.start.getMonth() === this._currentDate.getMonth()\n && appointment.start.getDate() === this._currentDate.getDate();\n\n if (dateIsInCurrentDay) {\n indexOfLastCurrentDayDate = index;\n }\n\n return dateIsInCurrentDay;\n });\n\n // find next day with dates or set to null\n if (this._appointments[indexOfLastCurrentDayDate + 1]) {\n this.nextDate = this._appointments[indexOfLastCurrentDayDate + 1].start;\n } else {\n this.nextDate = null;\n }\n\n // sort\n appointmentsCurrentDate.sort((a, b) => a[this.sortBy] > b[this.sortBy] ? 1 : -1);\n return appointmentsCurrentDate;\n }\n\n private setValueToFirstAppointmentOfCurrentDate() {\n // choose the first available appointment from current date\n const appointments = this.getCurrentDateAppointments()\n .filter(appointment => !appointment.disabled)\n\n if (appointments.length > 0) {\n this.value = appointments[0].value;\n this.stzhChange.emit({\n component: \"stzh-appointments\",\n value: this.value\n });\n }\n }\n\n private isDateDisabled = (date: Date) => {\n const dateHasAppointment: boolean = !!this._appointments.find(appointment => {\n return appointment.start.getFullYear() === date.getFullYear()\n && appointment.start.getMonth() === date.getMonth()\n && appointment.start.getDate() === date.getDate();\n });\n\n return !dateHasAppointment;\n }\n\n private onNextActiveDateClick = async () => {\n if (this.nextDate) {\n this.currentDate = this.nextDate;\n\n const popover = await this.datepickerElement.getPopover();\n\n if (popover) {\n popover.hide();\n }\n }\n }\n\n private onMoreClick = () => {\n this.showItems = this.stepItems + this.showItems;\n\n // return focus to radiogroup\n const radio = this.inputElement.querySelector('stzh-radio');\n radio.setFocus();\n }\n\n private onDropdownChange = async (event: CustomEvent<StzhDropdownChangeEvent>) => {\n const target: HTMLStzhDropdownElement = event.target as HTMLStzhDropdownElement;\n\n const sortBy = await target.getValue() as \"start\" | \"place\" | \"\";\n\n if (sortBy) {\n this.sortBy = sortBy;\n }\n }\n\n private onDatepickerChange = (event: CustomEvent<StzhDatepickerChangeEvent>) => {\n if (event.detail.component !== 'stzh-datepicker' || !event.detail.valueAsDate) {\n return;\n }\n\n this.currentDate = event.detail.valueAsDate;\n // reset number of items that should be shown\n this.showItems = this.stepItems;\n }\n\n private onRadioChange = (event: CustomEvent<StzhRadioChangeEvent>) => {\n this.value = event.detail.value;\n this.stzhChange.emit({\n component: \"stzh-appointments\",\n value: this.value\n });\n }\n\n async componentWillLoad() {\n this.appointmentsWatcher(this.appointments);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"appointments\");\n }\n\n this.dateAdapterWatcher(this.dateAdapter);\n }\n\n componentWillRender() {\n const appointments = this.getCurrentDateAppointments();\n\n // slice to max that should be visible\n this.appointmentsShown = appointments.slice(0, this.showItems);\n\n // set flags\n this.showMoreLink = this.showItems < appointments.length;\n this.moreItemsLeft = appointments.length - this.showItems;\n\n // don't show time sort when only one time in the current day\n this.showSortStart = appointments\n .map(appointment => {\n return this.dateAdapter.format(appointment.start, \"time\");\n }).filter((item, pos, self) => {\n return self.indexOf(item) == pos;\n }).length > 1;\n\n // don't show place sort when only one place in the current day\n this.showSortPlace = appointments\n .map(appointment => {\n return appointment.place;\n }).filter((item, pos, self) => {\n return self.indexOf(item) == pos;\n }).length > 1;\n\n this.sortOptions = [];\n\n if (this.showSortStart) {\n this.sortOptions.push({\n text: this.localization.sortByTime,\n value: \"start\"\n });\n }\n\n if (this.showSortPlace) {\n this.sortOptions.push({\n text: this.localization.sortByPlace,\n value: \"place\"\n });\n }\n\n this.showSort = this.appointmentsShown.length > 1;\n\n // determine sort (force alternative sorting if it makes sense)\n this._sortBy =\n (this.showSortStart && !this.showSortPlace && \"start\")\n || (!this.showSortStart && this.showSortPlace && \"place\")\n || this.sortBy;\n }\n\n componentDidRender() {\n // set datepickers values to current date\n if (this.datepickerElement) {\n this.datepickerElement.setDate(this._currentDate);\n }\n\n if (this.datepickerElementMedium) {\n this.datepickerElementMedium.setDate(this._currentDate);\n }\n }\n\n render() {\n const classes = {\n \"stzh-appointments\": true,\n \"stzh-appointments--has-calendar\": this.showCalendar,\n \"stzh-appointments--has-appointments-title\": this.showAppointmentsTitle,\n \"stzh-appointments--has-sort\": this.showSort\n };\n\n return (\n <Host>\n <div class={classes}>\n <div class=\"stzh-appointments__wrapper\">\n {this.showCalendar &&\n <div class=\"stzh-appointments__calendar-wrapper\">\n <div class=\"stzh-appointments__calendar-title-wrapper\">\n <div class=\"stzh-appointments__calendar-title\">\n <stzh-icon class=\"stzh-appointments__calendar-icon\" name=\"calendar\"></stzh-icon>\n <stzh-text font=\"heavy\">{this.calendarTitle || this.localization.calendarTitle}</stzh-text>\n </div>\n </div>\n <div class=\"stzh-appointments__calendar-content\">\n <stzh-datepicker\n ref={(el) => (this.datepickerElement = el as HTMLStzhDatepickerElement)}\n onStzhChange={this.onDatepickerChange}\n label={this.localization.datepickerLabel}\n calendarIsDateDisabled={this.isDateDisabled}\n calendarMin={printISODate(this.earliestDate)}\n calendarMax={printISODate(this.latestDate)}\n >\n <stzh-link\n slot=\"action\"\n disabled={!this.nextDate}\n onClick={this.onNextActiveDateClick}\n >\n <stzh-text size=\"milli\">\n {this.localization.nextDayWithAppointments}\n </stzh-text>\n </stzh-link>\n </stzh-datepicker>\n </div>\n <div class=\"stzh-appointments__calendar-content-medium\">\n <stzh-datepicker\n ref={(el) => (this.datepickerElementMedium = el as HTMLStzhDatepickerElement)}\n onStzhChange={this.onDatepickerChange}\n inline\n calendarIsDateDisabled={this.isDateDisabled}\n calendarMin={printISODate(this.earliestDate)}\n calendarMax={printISODate(this.latestDate)}\n >\n {this.nextDate &&\n <stzh-link\n slot=\"action\"\n onClick={this.onNextActiveDateClick}\n >\n <stzh-text size=\"milli\">\n {this.localization.nextDayWithAppointments}\n </stzh-text>\n </stzh-link>\n }\n </stzh-datepicker>\n </div>\n </div>\n }\n <div class=\"stzh-appointments__appointments-wrapper\">\n {this.showAppointmentsTitle &&\n <div class=\"stzh-appointments__appointments-title-wrapper\">\n <div class=\"stzh-appointments__appointments-title\">\n <stzh-icon class=\"stzh-appointments__appointments-icon\" name=\"clock\"></stzh-icon>\n <stzh-text font=\"heavy\">{this.appointmentsTitle || this.localization.appointmentsTitle}</stzh-text>\n </div>\n {this.showSort &&\n <div class=\"stzh-appointments__sort\">\n <stzh-dropdown\n inline\n no-search\n class=\"stzh-appointments__sort-dropdown\"\n variant=\"plain\"\n size=\"small\"\n items={[this._sortBy]}\n options={this.sortOptions}\n onStzhChange={this.onDropdownChange}\n ></stzh-dropdown>\n </div>\n }\n </div>\n }\n\n <div class=\"stzh-appointments__appointments-content\">\n <stzh-radiogroup\n ref={(el) => this.inputElement = el as HTMLStzhRadiogroupElement}\n legend={this.localization.inputLegend}\n hide-legend\n name={this.name}\n value={this.value}\n preventUpdateProperties={[\"disabled\"]}\n >\n {this.appointmentsShown.map((appointment) =>\n <stzh-radio\n onStzhChange={this.onRadioChange}\n value={appointment.value}\n disabled={typeof appointment.disabled !== \"undefined\" ? appointment.disabled : false}\n >\n <stzh-text font=\"heavy\" size=\"milli\">\n {!this.showCalendar && <span>{this.dateAdapter.format(appointment.start, \"dateLong\")}, </span>}\n {this.dateAdapter.formatSpan(appointment.start, appointment.end, \"time\")}\n </stzh-text>\n <stzh-text size=\"milli\">{appointment.caption}</stzh-text>\n </stzh-radio>\n )}\n </stzh-radiogroup>\n\n {this.showMoreLink &&\n <stzh-link\n class=\"stzh-appointments__more-link\"\n onClick={this.onMoreClick}\n >\n <stzh-text size=\"milli\">\n {tc(this.localization.moreTextItems,\n this.moreItemsLeft > this.stepItems\n ? this.stepItems\n : this.moreItemsLeft)}\n </stzh-text>\n </stzh-link>\n }\n </div>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var __awaiter=this&&this.__awaiter||function(t,e,n,i){function o(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,r){function
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
var __awaiter=this&&this.__awaiter||function(t,e,n,i){function o(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,r){function s(t){try{l(i.next(t))}catch(t){r(t)}}function a(t){try{l(i["throw"](t))}catch(t){r(t)}}function l(t){t.done?n(t.value):o(t.value).then(s,a)}l((i=i.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},i,o,r,s;return s={next:a(0),throw:a(1),return:a(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function a(t){return function(e){return l([t,e])}}function l(a){if(i)throw new TypeError("Generator is already executing.");while(s&&(s=0,a[0]&&(n=0)),n)try{if(i=1,o&&(r=a[0]&2?o["return"]:a[0]?o["throw"]||((r=o["return"])&&r.call(o),0):o.next)&&!(r=r.call(o,a[1])).done)return r;if(o=0,r)a=[a[0]&2,r.value];switch(a[0]){case 0:case 1:r=a;break;case 4:n.label++;return{value:a[1],done:false};case 5:n.label++;o=a[1];a=[0];continue;case 7:a=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(a[0]===6||a[0]===2)){n=0;continue}if(a[0]===3&&(!r||a[1]>r[0]&&a[1]<r[3])){n.label=a[1];break}if(a[0]===6&&n.label<r[1]){n.label=r[1];r=a;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(a);break}if(r[2])n.ops.pop();n.trys.pop();continue}a=e.call(t,n)}catch(t){a=[6,t];o=0}finally{i=r=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};System.register(["./p-290fcb28.system.js","./p-69d1d04d.system.js","./p-3a73b8b5.system.js"],(function(t){"use strict";var e,n,i,o,r;return{setters:[function(t){e=t.r;n=t.h;i=t.a;o=t.g},function(t){r=t.j},function(){}],execute:function(){var s=":host{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:var(--stzh-font-style-regular);color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block;}:host[hidden]{display:none}:host *,:host *::before,:host *::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}:host .has-focus{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.3125rem}:host .stzh-fylingfocus-focused{outline-style:none !important}:host .stzh-fylingfocus-focused::-moz-focus-inner{border:0 !important}:host{bottom:var(--stzh-space-medium);z-index:var(--stzh-z-index-overlay);position:fixed;pointer-events:none;bottom:var(--stzh-header-sticky-appnav-height, 0);left:1.25rem;right:1.25rem}@media screen and (min-width: 1024px){:host{bottom:var(--stzh-space-large)}}@media screen and (min-width: 1260px){:host{bottom:var(--stzh-space-xlarge)}}@media screen and (min-width: 600px){:host{left:2rem;right:auto;max-width:35rem;max-width:min(35rem, calc(100% - (2rem * 2)))}}@media screen and (min-width: 1024px){:host{left:2.5rem}}@media screen and (min-width: 1260px){:host{left:5.5rem}}:host ::slotted(*:not([hidden]):not([slot])){margin-bottom:var(--stzh-space-medium)}@media screen and (min-width: 1024px){:host ::slotted(*:not([hidden]):not([slot])){margin-bottom:var(--stzh-space-large)}}@media screen and (min-width: 1260px){:host ::slotted(*:not([hidden]):not([slot])){margin-bottom:var(--stzh-space-xlarge)}}.stzh-toastbar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:end;justify-content:flex-end}@media screen and (min-width: 600px){.stzh-toastbar{-ms-flex-align:start;align-items:flex-start}}";var a="stzh-components-toastbar-closed";var l=t("stzh_toastbar",function(){function t(t){var n=this;e(this,t);this._initialToasts=[];this.handleSlotchange=function(){n.toastsAppended();n.hideOverflowingItems()};this.hideAfter=30;this.max=5;this.initialToasts=[]}t.prototype.toast=function(t,e){var n=e===void 0?{type:"info"}:e,i=n.type,o=n.link;return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(n){e=document.createElement("stzh-toast");e.hidden=true;e.label=t;e.role="alert";e.type=i||"info";e.initialOpenAnimation=true;if(o){o.slot="link";o.size="small";e.appendChild(o)}this.element.appendChild(e);return[2,e]}))}))};t.prototype.initialToastsWatcher=function(t){if(typeof t==="string"){this._initialToasts=JSON.parse(t)}else{this._initialToasts=t}};t.prototype.toastAppended=function(t){if(t.getAttribute("data-stzh-toastbar-managed")){return}t.setAttribute("data-stzh-toastbar-managed","");t.addEventListener("stzhClosed",(function(){t.remove()}));if(t.type!=="error"){var e=(new Date).getTime();var n=this.hideAfter*1e3;var i=window.setTimeout((function(){t.hide()}),n);t.addEventListener("pointerenter",(function(){if(i){window.clearTimeout(i);var t=(new Date).getTime()-e;n=n-t}}));t.addEventListener("pointerleave",(function(){e=(new Date).getTime();i=window.setTimeout((function(){t.hide()}),n)}))}};t.prototype.toastsAppended=function(){var t=this;Array.from(this.element.children).forEach((function(e){t.toastAppended(e)}))};t.prototype.hideOverflowingItems=function(){var t=this.element.children.length;Array.from(this.element.children).splice(0,t-this.max).forEach((function(t){t.hide()}))};t.prototype.componentWillLoad=function(){this.initialToastsWatcher(this.initialToasts)};t.prototype.componentDidLoad=function(){var t=this;this._initialToasts.forEach((function(e){return __awaiter(t,void 0,void 0,(function(){var t,n,i,o,s;return __generator(this,(function(l){switch(l.label){case 0:if(e.cookie){t=r.get("".concat(a,"-").concat(e.cookie));if(t){return[2]}}n=e.link;if(!(n instanceof HTMLElement)){i=document.createElement("stzh-link");i.slot="link";i.size="small";Object.assign(i,e.link);n=i}return[4,this.toast(e.label,{type:e.type,link:n})];case 1:o=l.sent();if(e.cookie){s=365;if(e.cookieExpires===0){s=null}else if(e.cookieExpires){s=e.cookieExpires}o.addEventListener("stzhClosed",(function(){r.set("".concat(a,"-").concat(e.cookie),"1",{expires:s})}))}return[2]}}))}))}))};t.prototype.render=function(){var t={"stzh-toastbar":true};return n(i,null,n("div",{class:t},n("slot",{onSlotchange:this.handleSlotchange})))};Object.defineProperty(t.prototype,"element",{get:function(){return o(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{initialToasts:["initialToastsWatcher"]}},enumerable:false,configurable:true});return t}());l.style=s}}}));
|
|
2
|
+
//# sourceMappingURL=p-241997a2.system.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stzhToastbarCss","KEY_PREFIX_CLOSED","StzhToastbar","exports","this","_initialToasts","handleSlotchange","_this","toastsAppended","hideOverflowingItems","class_1","prototype","toast","label","_a","_b","type","link","document","createElement","hidden","role","initialOpenAnimation","slot","size","appendChild","element","initialToastsWatcher","newValue","JSON","parse","toastAppended","getAttribute","setAttribute","addEventListener","remove","timeoutStarted_1","Date","getTime","restTime_1","hideAfter","currentTimeout_1","window","setTimeout","hide","clearTimeout","timePassed","Array","from","children","forEach","childCount","length","splice","max","componentWillLoad","initialToasts","componentDidLoad","data","__awaiter","cookie","alreadyClosedBefore","Cookie","get","concat","HTMLElement","generatedLink","Object","assign","sent","cookieExpires_1","cookieExpires","set","expires","render","classes","h","Host","class","onSlotchange"],"sources":["src/components/stzh-toastbar/stzh-toastbar.scss?tag=stzh-toastbar&encapsulation=shadow","src/components/stzh-toastbar/stzh-toastbar.tsx"],"sourcesContent":[":host {\n @include spaceCurve('bottom', 'regular');\n z-index: $zIndexOverlay;\n position: fixed;\n pointer-events: none;\n bottom: var(--stzh-header-sticky-appnav-height, 0);\n left: $containerMargin;\n right: $containerMargin;\n\n @include mq($from: small) {\n left: $containerMarginSmall;\n right: auto;\n max-width: 560px;\n max-width: min(560px, calc(100% - (#{$containerMarginSmall} * 2)));\n }\n\n @include mq($from: medium) {\n left: $containerMarginMedium;\n // max-width: calc(100% - (#{$containerMarginMedium} * 2));\n }\n\n @include mq($from: large) {\n left: $containerMarginLarge;\n // max-width: calc(100% - (#{$containerMarginLarge} * 2));\n }\n\n ::slotted(*:not([hidden]):not([slot])) {\n @include spaceCurve('margin-bottom', 'regular');\n }\n}\n\n.stzh-toastbar {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n\n @include mq($from: small) {\n align-items: flex-start;\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n Method,\n Watch,\n} from \"@stencil/core\";\n\nimport {\n StzhToastbarInitialToast,\n StzhToastType,\n} from \"../../index\";\n\nimport Cookie from \"js-cookie\";\n\nconst KEY_PREFIX_CLOSED = \"stzh-components-toastbar-closed\";\n\n/**\n * @slot - Slot for stzh-toast elements\n */\n@Component({\n tag: \"stzh-toastbar\",\n styleUrl: \"stzh-toastbar.scss\",\n shadow: true\n})\nexport class StzhToastbar {\n /**\n * Time after toasts are hidden (in seconds).\n * Toasts with type `error` will stay, until the user closes them manually.\n */\n @Prop() hideAfter: number = 30;\n\n /**\n * Maximum of toasts allowed to be shown.\n * If more are created, oldest will be hidden, even if timeout not ended yet or toast type is `error`.\n */\n @Prop() max: number = 5;\n\n /**\n * Initial toasts.\n *\n * Array of objects that at least includes `label` and optionally `type`, `link` (object with `href` and `label`) `cookie` and `cookieExpires`:\n * `[{\"label\": \"Lorem ipsum\", \"link\": { \"label\": \"More info\", \"href\": \"https://example.com\" }, \"cookie\": \"cookie-banner\", \"cookieExpires\": 365 }]`\n *\n * If `cookie` exists in an object, it will check for that cookie name first (prefixed with `stzh-components-toastbar-closed-`) and only show if cookie doesn't exist.\n * `cookieExpires` sets the cookie lifetime (default 365 days, set 0 for session cookie).\n */\n @Prop() initialToasts: StzhToastbarInitialToast[] | string = [];\n private _initialToasts: StzhToastbarInitialToast[] = [];\n\n @Element() element: HTMLStzhToastbarElement;\n\n /** Create new toast. */\n @Method()\n async toast(\n label: string,\n { type, link }: { type?: StzhToastType, link?: HTMLStzhLinkElement } = { type: \"info\" }\n ): Promise<HTMLStzhToastElement> {\n const toast = document.createElement(\"stzh-toast\");\n toast.hidden = true;\n toast.label = label;\n toast.role = \"alert\";\n toast.type = type || \"info\";\n toast.initialOpenAnimation = true;\n\n if (link) {\n link.slot = \"link\";\n link.size = \"small\";\n toast.appendChild(link);\n }\n\n this.element.appendChild(toast);\n\n return toast;\n }\n\n @Watch(\"initialToasts\")\n initialToastsWatcher(newValue: any[] | string) {\n if (typeof newValue === \"string\") {\n this._initialToasts = JSON.parse(newValue);\n } else {\n this._initialToasts = newValue;\n }\n }\n\n private toastAppended(toast: HTMLStzhToastElement) {\n if (toast.getAttribute('data-stzh-toastbar-managed')) {\n return;\n }\n\n toast.setAttribute('data-stzh-toastbar-managed', '');\n\n toast.addEventListener(\"stzhClosed\", () => {\n toast.remove();\n });\n\n if (toast.type !== \"error\") {\n let timeoutStarted = new Date().getTime();\n let restTime = this.hideAfter * 1000;\n let currentTimeout = window.setTimeout(() => {\n toast.hide();\n }, restTime);\n\n toast.addEventListener(\"pointerenter\", () => {\n if (currentTimeout) {\n window.clearTimeout(currentTimeout);\n const timePassed = new Date().getTime() - timeoutStarted;\n restTime = restTime - timePassed;\n }\n });\n\n toast.addEventListener(\"pointerleave\", () => {\n timeoutStarted = new Date().getTime();\n currentTimeout = window.setTimeout(() => {\n toast.hide();\n }, restTime);\n });\n }\n }\n\n private toastsAppended() {\n Array.from(this.element.children).forEach((toast: HTMLStzhToastElement) => {\n this.toastAppended(toast);\n });\n }\n\n private hideOverflowingItems() {\n const childCount = this.element.children.length;\n\n Array.from(this.element.children)\n .splice(0, childCount - this.max)\n .forEach((toast: HTMLStzhToastElement) => {\n toast.hide();\n });\n }\n\n private handleSlotchange = () => {\n this.toastsAppended();\n this.hideOverflowingItems();\n }\n\n componentWillLoad() {\n this.initialToastsWatcher(this.initialToasts);\n }\n\n componentDidLoad() {\n this._initialToasts.forEach(async (data) => {\n if (data.cookie) {\n const alreadyClosedBefore = Cookie.get(`${KEY_PREFIX_CLOSED}-${data.cookie}`);\n\n if (alreadyClosedBefore) {\n return;\n }\n }\n\n let link = data.link;\n\n if (!(link instanceof HTMLElement)) {\n const generatedLink = document.createElement(\"stzh-link\");\n generatedLink.slot = \"link\";\n generatedLink.size = \"small\";\n\n Object.assign(generatedLink, data.link);\n link = generatedLink;\n }\n\n const toast = await this.toast(data.label, {\n type: data.type,\n link: link as HTMLStzhLinkElement\n })\n\n if (data.cookie) {\n let cookieExpires = 365;\n\n if (data.cookieExpires === 0) {\n cookieExpires = null;\n } else if (data.cookieExpires) {\n cookieExpires = data.cookieExpires;\n }\n\n toast.addEventListener(\"stzhClosed\", () => {\n Cookie.set(`${KEY_PREFIX_CLOSED}-${data.cookie}`, '1', {\n expires: cookieExpires\n });\n });\n }\n })\n }\n\n render() {\n const classes = {\n \"stzh-toastbar\": true,\n };\n\n return (\n <Host>\n <div class={classes}>\n <slot onSlotchange={this.handleSlotchange}></slot>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var __awaiter=this&&this.__awaiter||function(t,i,e,s){function a(t){return t instanceof e?t:new e((function(i){i(t)}))}return new(e||(e=Promise))((function(e,n){function l(t){try{h(s.next(t))}catch(t){n(t)}}function r(t){try{h(s["throw"](t))}catch(t){n(t)}}function h(t){t.done?e(t.value):a(t.value).then(l,r)}h((s=s.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var e={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},s,a,n,l;return l={next:r(0),throw:r(1),return:r(2)},typeof Symbol==="function"&&(l[Symbol.iterator]=function(){return this}),l;function r(t){return function(i){return h([t,i])}}function h(r){if(s)throw new TypeError("Generator is already executing.");while(l&&(l=0,r[0]&&(e=0)),e)try{if(s=1,a&&(n=r[0]&2?a["return"]:r[0]?a["throw"]||((n=a["return"])&&n.call(a),0):a.next)&&!(n=n.call(a,r[1])).done)return n;if(a=0,n)r=[r[0]&2,n.value];switch(r[0]){case 0:case 1:n=r;break;case 4:e.label++;return{value:r[1],done:false};case 5:e.label++;a=r[1];r=[0];continue;case 7:r=e.ops.pop();e.trys.pop();continue;default:if(!(n=e.trys,n=n.length>0&&n[n.length-1])&&(r[0]===6||r[0]===2)){e=0;continue}if(r[0]===3&&(!n||r[1]>n[0]&&r[1]<n[3])){e.label=r[1];break}if(r[0]===6&&e.label<n[1]){e.label=n[1];n=r;break}if(n&&e.label<n[2]){e.label=n[2];e.ops.push(r);break}if(n[2])e.ops.pop();e.trys.pop();continue}r=i.call(t,e)}catch(t){r=[6,t];a=0}finally{s=n=0}if(r[0]&5)throw r[1];return{value:r[0]?r[1]:void 0,done:true}}};System.register(["./p-290fcb28.system.js","./p-bd1030c9.system.js"],(function(t){"use strict";var i,e,s,a,n,l,r,h,o;return{setters:[function(t){i=t.r;e=t.c;s=t.h;a=t.a;n=t.g;l=t.F},function(t){r=t.m;h=t.a;o=t.r}],execute:function(){var d=".sc-stzh-datalist-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:var(--stzh-font-style-regular);color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-datalist-h{display:none}.sc-stzh-datalist-h *.sc-stzh-datalist,.sc-stzh-datalist-h *.sc-stzh-datalist::before,.sc-stzh-datalist-h *.sc-stzh-datalist::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-datalist-h .has-focus.sc-stzh-datalist{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.3125rem}.sc-stzh-datalist-h .stzh-fylingfocus-focused.sc-stzh-datalist{outline-style:none !important}.sc-stzh-datalist-h .stzh-fylingfocus-focused.sc-stzh-datalist::-moz-focus-inner{border:0 !important}.sc-stzh-datalist-h{--item-label-min-width:7.5rem}@media screen and (min-width: 800px){.sc-stzh-datalist-h{--item-label-min-width:9rem}}[disable-label-min-width].sc-stzh-datalist-h:not([disable-label-min-width=false]){--item-label-min-width:none}.sc-stzh-datalist-h .sc-stzh-datalist-s>stzh-details,.stzh-datalist.sc-stzh-datalist stzh-details.sc-stzh-datalist{--content-grid-column:1 / 6;--content-padding:var(--stzh-space-large) 0 var(--stzh-space-xlarge);--content-border-bottom:0.0625rem solid var(--stzh-base-border-color)}@media screen and (min-width: 1024px){.sc-stzh-datalist-h .sc-stzh-datalist-s>stzh-details,.stzh-datalist.sc-stzh-datalist stzh-details.sc-stzh-datalist{--content-padding:var(--stzh-space-large) 0 var(--stzh-space-xxlarge)}}@media screen and (min-width: 1260px){.sc-stzh-datalist-h .sc-stzh-datalist-s>stzh-details,.stzh-datalist.sc-stzh-datalist stzh-details.sc-stzh-datalist{--content-padding:var(--stzh-space-large) 0 var(--stzh-space-xxxlarge)}}.stzh-datalist__list.sc-stzh-datalist{width:100%}.stzh-datalist--has-hidden-border.sc-stzh-datalist .stzh-datalist__list.sc-stzh-datalist{margin-top:calc(var(--stzh-space-xsmall) / -2);margin-bottom:calc(var(--stzh-space-xsmall) / -2)}.stzh-datalist--direction-horizontal.sc-stzh-datalist .stzh-datalist__list.sc-stzh-datalist{width:100%;display:grid;border-collapse:collapse;grid-template-columns:auto auto minmax(auto, 1fr) minmax(auto, 1fr) auto;-ms-flex-align:stretch;align-items:stretch}";var c=t("stzh_datalist",function(){function t(t){var s=this;i(this,t);this.stzhDirectionChange=e(this,"stzhDirectionChange",7);this.stzhHideBorderChange=e(this,"stzhHideBorderChange",7);this._items=[];this.resizeHandler=function(){if(r("ultra").matches&&s.directionUltra!=="inherit"){s.currentDirection=s.directionUltra}else if(r("large").matches&&s.directionLarge!=="inherit"){s.currentDirection=s.directionLarge}else if(r("medium").matches&&s.directionMedium!=="inherit"){s.currentDirection=s.directionMedium}else if(r("small").matches&&s.directionSmall!=="inherit"){s.currentDirection=s.directionSmall}else{s.currentDirection=s.direction}};this.direction="vertical";this.directionSmall="horizontal";this.directionMedium="inherit";this.directionLarge="inherit";this.directionUltra="inherit";this.hideBorder=false;this.disableLabelMinWidth=false;this.currentDirection=undefined;this.items=[]}t.prototype.hideBorderWatcher=function(t){this.stzhHideBorderChange.emit({component:"stzh-datalist",value:t})};t.prototype.directionWatcher=function(){this.resizeHandler()};t.prototype.currentDirectionWatcher=function(t){this.stzhDirectionChange.emit({component:"stzh-datalist",value:t})};t.prototype.itemsWatcher=function(t){if(typeof t==="string"){this._items=JSON.parse(t)}else{this._items=t}};t.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.itemsWatcher(this.items);this.hideBorderWatcher(this.hideBorder);this.resizeHandler();return[2]}))}))};t.prototype.connectedCallback=function(){h(this.resizeHandler)};t.prototype.disconnectedCallback=function(){o(this.resizeHandler)};t.prototype.render=function(){var t;var i=(t={"stzh-datalist":true,"stzh-datalist--has-hidden-border":this.hideBorder},t["stzh-datalist--direction-".concat(this.currentDirection)]=!!this.currentDirection,t);return s(a,null,s("div",{class:i},s("div",{class:"stzh-datalist__list",role:"list"},this._items.map((function(t){return s("stzh-datalist-item",Object.assign({},t),t.items&&t.items.length>0&&s("stzh-datalist",{items:t.items}))})),s("slot",null))))};Object.defineProperty(t.prototype,"element",{get:function(){return n(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{hideBorder:["hideBorderWatcher"],direction:["directionWatcher"],directionSmall:["directionWatcher"],directionMedium:["directionWatcher"],directionLarge:["directionWatcher"],directionUltra:["directionWatcher"],currentDirection:["currentDirectionWatcher"],items:["itemsWatcher"]}},enumerable:false,configurable:true});return t}());c.style=d;var m='.sc-stzh-datalist-item-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:var(--stzh-font-style-regular);color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-datalist-item-h{display:none}.sc-stzh-datalist-item-h *.sc-stzh-datalist-item,.sc-stzh-datalist-item-h *.sc-stzh-datalist-item::before,.sc-stzh-datalist-item-h *.sc-stzh-datalist-item::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-datalist-item-h .has-focus.sc-stzh-datalist-item{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.3125rem}.sc-stzh-datalist-item-h .stzh-fylingfocus-focused.sc-stzh-datalist-item{outline-style:none !important}.sc-stzh-datalist-item-h .stzh-fylingfocus-focused.sc-stzh-datalist-item::-moz-focus-inner{border:0 !important}.sc-stzh-datalist-item-h{--font-family:var(--stzh-font-family-regular);--font-weight:var(--stzh-font-weight-regular);--color:inherit;--action-display:flex;--label-min-width:var(--item-label-min-width, none);--leading-icon-background-color:var(--stzh-color-grey5);--leading-icon-color:var(--stzh-color-grey70);--hover-leading-icon-background-color:var(--stzh-color-primary-hover, var(--stzh-color-zueribluedark));--hover-leading-icon-color:var(--stzh-color-white);--horizontal-min-height:3rem;display:contents}[href].sc-stzh-datalist-item-h:not([href=""]),[a11y-expanded].sc-stzh-datalist-item-h,[a11y-controls].sc-stzh-datalist-item-h{--color:var(--stzh-color-primary, var(--stzh-color-zueriblue));--hover-color:var(--stzh-color-primary-hover, var(--stzh-color-zueribluedark))}.sc-stzh-datalist-item-h .sc-stzh-datalist-item-s>stzh-datalist{margin-left:var(--stzh-space-large)}.stzh-datalist-item.sc-stzh-datalist-item{position:relative;-webkit-text-decoration-line:none;text-decoration-line:none}.stzh-datalist-item__vhidden.sc-stzh-datalist-item{border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%);width:0.0625rem;height:0.0625rem;overflow:hidden;padding:0;position:absolute}.stzh-datalist-item__wrapper.sc-stzh-datalist-item{-ms-flex-positive:1;flex-grow:1;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start}.stzh-datalist-item__leading.sc-stzh-datalist-item,.stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item__meta.sc-stzh-datalist-item,.stzh-datalist-item__action-list.sc-stzh-datalist-item{color:inherit;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;background:transparent;border:none;padding:0;-webkit-text-decoration-line:none;text-decoration-line:none}.stzh-datalist-item__leading.is-button.sc-stzh-datalist-item,.stzh-datalist-item__leading.is-link.sc-stzh-datalist-item,.stzh-datalist-item__value.is-button.sc-stzh-datalist-item,.stzh-datalist-item__value.is-link.sc-stzh-datalist-item,.stzh-datalist-item__label.is-button.sc-stzh-datalist-item,.stzh-datalist-item__label.is-link.sc-stzh-datalist-item,.stzh-datalist-item__meta.is-button.sc-stzh-datalist-item,.stzh-datalist-item__meta.is-link.sc-stzh-datalist-item,.stzh-datalist-item__action-list.is-button.sc-stzh-datalist-item,.stzh-datalist-item__action-list.is-link.sc-stzh-datalist-item{cursor:pointer}.stzh-datalist-item__leading.sc-stzh-datalist-item{-ms-flex-negative:0;flex-shrink:0}.stzh-datalist-item__leading.sc-stzh-datalist-item:not(:empty){padding-right:var(--stzh-space-xsmall)}.stzh-datalist-item__leading-icon-container.sc-stzh-datalist-item{color:var(--leading-icon-color);background-color:var(--leading-icon-background-color);width:2.5rem;height:2.5rem;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;border-radius:50%;-webkit-transition-property:color, background-color;transition-property:color, background-color;-webkit-transition-duration:var(--stzh-base-transition-animation-speed);transition-duration:var(--stzh-base-transition-animation-speed)}.stzh-datalist-item__value.sc-stzh-datalist-item{font-size:var(--stzh-font-curve-p1-default-font-size, var(--stzh-font-milli-font-size));line-height:var(--stzh-font-curve-p1-default-text-line-height, var(--stzh-font-milli-text-line-height));letter-spacing:var(--stzh-font-curve-p1-default-text-letter-spacing);font-family:var(--font-family);font-weight:var(--font-weight);-ms-flex-positive:1;flex-grow:1}@media screen and (min-width: 1024px){.stzh-datalist-item__value.sc-stzh-datalist-item{font-size:var(--stzh-font-curve-p1-medium-font-size, var(--stzh-font-centi-font-size));line-height:var(--stzh-font-curve-p1-medium-text-line-height, var(--stzh-font-centi-text-line-height));letter-spacing:var(--stzh-font-curve-p1-medium-text-letter-spacing)}}.stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item__icon.sc-stzh-datalist-item{color:var(--color)}.stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item__meta.sc-stzh-datalist-item{font-size:var(--stzh-font-curve-caption-default-font-size, var(--stzh-font-nano-font-size));line-height:var(--stzh-font-curve-caption-default-text-line-height, var(--stzh-font-nano-text-line-height))}@media screen and (min-width: 1024px){.stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item__meta.sc-stzh-datalist-item{font-size:var(--stzh-font-curve-caption-medium-font-size, var(--stzh-font-micro-font-size));line-height:var(--stzh-font-curve-caption-medium-text-line-height, var(--stzh-font-micro-text-line-height))}}.stzh-datalist-item__meta.sc-stzh-datalist-item{-ms-flex-pack:end;justify-content:flex-end}.stzh-datalist-item__label.sc-stzh-datalist-item{font-family:var(--stzh-font-family-medium);font-weight:var(--stzh-font-weight-medium);font-style:var(--stzh-font-style-medium);color:var(--stzh-base-lead-color)}.stzh-datalist-item__action-list.sc-stzh-datalist-item{display:var(--action-display);-ms-flex-pack:center;justify-content:center;text-align:center}.stzh-datalist-item__action-list.sc-stzh-datalist-item:not(:empty){padding-left:var(--stzh-space-xsmall)}.stzh-datalist-item__action.is-non-interactive.sc-stzh-datalist-item{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center;width:var(--stzh-form-input-tiny-height);height:var(--stzh-form-input-tiny-height)}.stzh-datalist-item__action.is-button[variant=tertiary].sc-stzh-datalist-item{--color:inherit}.stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item__icon.sc-stzh-datalist-item{-webkit-transition:color var(--stzh-base-transition-animation-speed);transition:color var(--stzh-base-transition-animation-speed)}.stzh-datalist-item__richtext.sc-stzh-datalist-item{color:inherit;font-family:inherit;font-weight:inherit}.stzh-datalist-item__interactive.sc-stzh-datalist-item{position:absolute;top:0;left:0}.stzh-datalist-item--is-button.sc-stzh-datalist-item .stzh-datalist-item__icon.is-open.sc-stzh-datalist-item{display:none}.stzh-datalist-item--is-button.stzh-datalist-item--is-expanded.sc-stzh-datalist-item .stzh-datalist-item__icon.is-closed.sc-stzh-datalist-item{display:none}.stzh-datalist-item--is-button.stzh-datalist-item--is-expanded.sc-stzh-datalist-item .stzh-datalist-item__icon.is-open.sc-stzh-datalist-item{display:-ms-inline-flexbox;display:inline-flex}.stzh-datalist-item--is-interactive.sc-stzh-datalist-item:hover .stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item--is-interactive.sc-stzh-datalist-item:hover .stzh-datalist-item__icon.sc-stzh-datalist-item{color:var(--hover-color)}.stzh-datalist-item--is-interactive.sc-stzh-datalist-item:hover .stzh-datalist-item__value.sc-stzh-datalist-item{-webkit-text-decoration-line:underline;text-decoration-line:underline}.stzh-datalist-item--is-interactive.sc-stzh-datalist-item:hover .stzh-datalist-item__leading-icon-container.sc-stzh-datalist-item,.stzh-datalist-item--is-interactive.sc-stzh-datalist-item:focus-within .stzh-datalist-item__leading-icon-container.sc-stzh-datalist-item{color:var(--hover-leading-icon-color);background-color:var(--hover-leading-icon-background-color)}.stzh-datalist-item--direction-vertical.sc-stzh-datalist-item{display:-ms-flexbox;display:flex;padding-top:var(--stzh-space-xsmall);padding-bottom:var(--stzh-space-xsmall)}.stzh-datalist-item--direction-vertical.stzh-datalist-item--has-hidden-border.sc-stzh-datalist-item{padding-top:calc(var(--stzh-space-xsmall) / 2);padding-bottom:calc(var(--stzh-space-xsmall) / 2)}.stzh-datalist-item--direction-vertical.sc-stzh-datalist-item:not(.stzh-datalist-item--has-hidden-border){border-bottom:0.0625rem solid var(--stzh-base-border-color)}.stzh-datalist-item--direction-vertical.sc-stzh-datalist-item .stzh-datalist-item__leading-icon-container.sc-stzh-datalist-item{width:2.5rem;height:2.5rem}.stzh-datalist-item--direction-vertical.sc-stzh-datalist-item .stzh-datalist-item__leading-icon.sc-stzh-datalist-item{--size:var(--stzh-icon-size-medium)}.stzh-datalist-item--direction-vertical.sc-stzh-datalist-item .stzh-datalist-item__meta.sc-stzh-datalist-item{-ms-flex-direction:column;flex-direction:column}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item+.stzh-datalist-item__nested.sc-stzh-datalist-item{display:contents}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item+.stzh-datalist-item__nested.sc-stzh-datalist-item .stzh-datalist-item__nested-inner.sc-stzh-datalist-item{grid-column:1/6}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__leading.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__meta.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__action-list.sc-stzh-datalist-item{min-height:var(--horizontal-min-height)}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__meta.sc-stzh-datalist-item{padding-top:var(--stzh-space-xsmall);padding-bottom:var(--stzh-space-xsmall)}.stzh-datalist-item--direction-horizontal.stzh-datalist-item--has-hidden-border.sc-stzh-datalist-item .stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.stzh-datalist-item--has-hidden-border.sc-stzh-datalist-item .stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.stzh-datalist-item--has-hidden-border.sc-stzh-datalist-item .stzh-datalist-item__meta.sc-stzh-datalist-item{padding-top:calc(var(--stzh-space-xsmall) / 2);padding-bottom:calc(var(--stzh-space-xsmall) / 2)}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item:not(.stzh-datalist-item--has-hidden-border) .stzh-datalist-item__label.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item:not(.stzh-datalist-item--has-hidden-border) .stzh-datalist-item__value.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item:not(.stzh-datalist-item--has-hidden-border) .stzh-datalist-item__meta.sc-stzh-datalist-item,.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item:not(.stzh-datalist-item--has-hidden-border) .stzh-datalist-item__action-list.sc-stzh-datalist-item{border-bottom:0.0625rem solid var(--stzh-base-border-color)}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__label.sc-stzh-datalist-item:not(:empty){min-width:var(--label-min-width);padding-right:var(--stzh-space-xsmall)}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__meta.sc-stzh-datalist-item:not(:empty){padding-left:var(--stzh-space-xsmall)}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__leading-icon-container.sc-stzh-datalist-item{width:2rem;height:2rem}.stzh-datalist-item--direction-horizontal.sc-stzh-datalist-item .stzh-datalist-item__meta-status.sc-stzh-datalist-item+.stzh-datalist-item__meta-text.sc-stzh-datalist-item{margin-left:var(--stzh-space-xsmall)}';var z=0;var u=t("stzh_datalist_item",function(){function t(t){var s=this;i(this,t);this.stzhItemActionClick=e(this,"stzhItemActionClick",7);this.actionClick=function(t){s.stzhItemActionClick.emit({component:"stzh-datalist-item",originalEvent:t})};this.handleDirectionChange=function(t){s.direction=t.detail.value};this.handleHideBorderChange=function(t){s.hideBorder=t.detail.value};this.localization=undefined;this.direction="vertical";this.href=undefined;this.rel=undefined;this.target=undefined;this.download=undefined;this.leadingIcon=undefined;this.icon=undefined;this.iconLabel=undefined;this.iconTooltip=undefined;this.label="";this.value="";this.meta="";this.statusLabel="";this.statusType="default";this.hideBorder=false;this.a11yExpanded=undefined;this.a11yControls=undefined;this.external=false}t.prototype.externalWatcher=function(){this.external=this.rel&&this.rel.includes("external")};t.prototype.renderInner=function(t){var i=t?"button":this.href?"a":"div";return s(l,null,s(i,{"aria-hidden":this.label?null:"true",tabindex:"-1",id:"".concat(this.datalistItemId,"-label"),class:{"stzh-datalist-item__label":true,"is-button":t,"is-link":!!this.href},href:this.href,rel:this.rel,target:this.target,download:this.download},this.label),s(i,{id:"".concat(this.datalistItemId,"-value"),class:{"stzh-datalist-item__value":true,"is-button":t,"is-link":!!this.href},href:this.href,rel:this.rel,target:this.target,download:this.download,"aria-labelledby":i!=="div"?"".concat(this.datalistItemId,"-label ").concat(this.datalistItemId,"-value ").concat(this.datalistItemId,"-meta"):null,"aria-controls":this.a11yControls||null,"aria-expanded":typeof this.a11yExpanded!=="undefined"?this.a11yExpanded?"true":"false":null},this.external&&s("div",{class:"stzh-datalist-item__vhidden"},this.localization.$globals.externalLinkLabel),this.download&&s("div",{class:"stzh-datalist-item__vhidden"},this.localization.$globals.downloadLinkLabel),s("stzh-richtext",{class:"stzh-datalist-item__richtext",innerHTML:this.value},s("slot",{name:"value"}))),s(i,{"aria-hidden":this.statusLabel||this.meta?null:"true",tabindex:"-1",id:"".concat(this.datalistItemId,"-meta"),class:{"stzh-datalist-item__meta":true,"is-button":t,"is-link":!!this.href},href:this.href,rel:this.rel,target:this.target,download:this.download},this.statusLabel&&s("stzh-status",{class:"stzh-datalist-item__meta-status",label:this.statusLabel,type:this.statusType}),this.meta&&s("span",{class:"stzh-datalist-item__meta-text"},this.meta)))};t.prototype.renderLeadingIcon=function(t){var i=t?"button":this.href?"a":"div";return s(i,{role:"presentation","aria-hidden":"true",tabindex:"-1",class:{"stzh-datalist-item__leading":true,"is-button":t,"is-link":!!this.href},href:this.href,rel:this.rel,target:this.target,download:this.download},this.leadingIcon&&s("div",{class:"stzh-datalist-item__leading-icon-container"},s("stzh-icon",{class:"stzh-datalist-item__leading-icon",name:this.leadingIcon})))};t.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.datalist=this.element.closest("stzh-datalist");if(this.datalist){this.direction=this.datalist.currentDirection;this.hideBorder=this.datalist.hideBorder;this.datalist.addEventListener("stzhDirectionChange",this.handleDirectionChange);this.datalist.addEventListener("stzhHideBorderChange",this.handleHideBorderChange)}return[2]}))}))};t.prototype.disconnectedCallback=function(){if(this.datalist){this.datalist.removeEventListener("stzhDirectionChange",this.handleDirectionChange);this.datalist.removeEventListener("stzhHideBorderChange",this.handleHideBorderChange);this.datalist=null}};t.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(i){switch(i.label){case 0:this.datalistItemId="stzh-datalist-item-".concat(z++);this.externalWatcher();if(!!this.localization)return[3,2];t=this;return[4,window.stzhComponents.utils.fetchTranslations(this.element,"datalist-item")];case 1:t.localization=i.sent();i.label=2;case 2:return[2]}}))}))};t.prototype.render=function(){var t;var i=this;var e=typeof this.a11yExpanded!=="undefined"||typeof this.a11yControls!=="undefined";var n=!this.href&&this.icon;var r=(t={"stzh-datalist-item":true,"stzh-datalist-item--is-interactive":!!this.href||e,"stzh-datalist-item--is-link":!!this.href,"stzh-datalist-item--is-button":e,"stzh-datalist-item--is-expanded":this.a11yExpanded,"stzh-datalist-item--has-hidden-border":this.hideBorder},t["stzh-datalist-item--direction-".concat(this.direction)]=!!this.direction,t);var h=e?"button":this.href?"a":"div";var o=function(){return s("stzh-button",{class:{"stzh-datalist-item__action":true,"is-button":true},variant:"tertiary",size:"tiny","aria-label":i.iconLabel||"".concat(i.label," ").concat(i.value),iconOnly:true,icon:i.icon,onClick:i.actionClick})};return s(a,{role:"listitem"},s("div",{class:r},this.direction==="horizontal"?s(l,null,this.renderLeadingIcon(e),this.renderInner(e)):s(l,null,this.renderLeadingIcon(e),s("div",{class:"stzh-datalist-item__wrapper"},this.renderInner(e))),s(h,{role:n?null:"presentation","aria-hidden":n?null:"true",tabindex:"-1",class:{"stzh-datalist-item__action-list":true,"is-button":e,"is-link":!!this.href},href:this.href,rel:this.rel,target:this.target,download:this.download},this.href&&(this.download?s("div",{class:"stzh-datalist-item__action is-non-interactive"},s("stzh-icon",{class:"stzh-datalist-item__icon",name:this.icon?this.icon:"download"})):s("div",{class:"stzh-datalist-item__action is-non-interactive"},s("stzh-icon",{class:"stzh-datalist-item__icon",name:this.icon?this.icon:this.external?"external-link":"arrow-right"}))),e&&s("div",{class:"stzh-datalist-item__action is-non-interactive"},s("stzh-icon",{class:"stzh-datalist-item__icon is-closed",name:this.icon?this.icon:"plus"}),s("stzh-icon",{class:"stzh-datalist-item__icon is-open",name:this.icon?this.icon:"minus"})),n&&(this.iconTooltip?s("stzh-tooltip",{content:this.iconTooltip},o()):o()))),s("div",{class:"stzh-datalist-item__nested"},s("div",{class:"stzh-datalist-item__nested-inner"},s("slot",null))))};Object.defineProperty(t.prototype,"element",{get:function(){return n(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{rel:["externalWatcher"]}},enumerable:false,configurable:true});return t}());u.style=m}}}));
|
|
2
|
+
//# sourceMappingURL=p-2d88c544.system.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stzhDatalistCss","StzhDatalist","exports","this","_items","resizeHandler","media","matches","_this","directionUltra","currentDirection","directionLarge","directionMedium","directionSmall","direction","class_1","prototype","hideBorderWatcher","newValue","stzhHideBorderChange","emit","component","value","directionWatcher","currentDirectionWatcher","stzhDirectionChange","itemsWatcher","JSON","parse","componentWillLoad","items","hideBorder","connectedCallback","addMediaChangeListener","disconnectedCallback","removeMediaChangeListener","render","classes","_a","concat","h","Host","class","role","map","item","Object","assign","length","stzhDatalistItemCss","datalistItemCounter","StzhDatalistItem","actionClick","originalEvent","stzhItemActionClick","handleDirectionChange","event","detail","handleHideBorderChange","class_2","externalWatcher","external","rel","includes","renderInner","isButton","Item","href","Fragment","label","tabindex","id","datalistItemId","target","download","a11yControls","a11yExpanded","localization","$globals","externalLinkLabel","downloadLinkLabel","innerHTML","name","statusLabel","meta","type","statusType","renderLeadingIcon","leadingIcon","datalist","element","closest","addEventListener","removeEventListener","window","stzhComponents","utils","fetchTranslations","_b","sent","hasActionButton","icon","ActionButton","variant","size","iconLabel","iconOnly","onClick","iconTooltip","content"],"sources":["src/components/stzh-datalist/stzh-datalist.scss?tag=stzh-datalist&encapsulation=scoped","src/components/stzh-datalist/stzh-datalist.tsx","src/components/stzh-datalist-item/stzh-datalist-item.scss?tag=stzh-datalist-item&encapsulation=scoped","src/components/stzh-datalist-item/stzh-datalist-item.tsx"],"sourcesContent":["/**\n * @prop --item-label-min-width: Min width of label\n */\n\n:host {\n --item-label-min-width: 120px;\n\n @include mq($from: smallheader) {\n --item-label-min-width: 144px;\n }\n\n &[disable-label-min-width]:not([disable-label-min-width=\"false\"]) {\n --item-label-min-width: none;\n }\n}\n\n:host ::slotted(stzh-details),\n.stzh-datalist stzh-details {\n --content-grid-column: 1 / 6;\n --content-padding: #{space('large')} 0 #{spaceCurveValue('medium')};\n --content-border-bottom: 1px solid #{$baseBorderColor};\n\n @include mq($from: medium) {\n --content-padding: #{space('large')} 0 #{spaceCurveValue('medium', 'medium')};\n }\n\n @include mq($from: large) {\n --content-padding: #{space('large')} 0 #{spaceCurveValue('medium', 'large')};\n }\n}\n\n.stzh-datalist {\n &__list {\n width: 100%;\n }\n\n /* Has hidden border variant */\n\n &--has-hidden-border &__list {\n margin-top: calc(#{space('xsmall')} / -2);\n margin-bottom: calc(#{space('xsmall')} / -2);\n }\n\n /* Vertical variant */\n\n &--direction-horizontal &__list {\n width: 100%;\n display: grid;\n border-collapse: collapse;\n grid-template-columns: auto auto minmax(auto, 1fr) minmax(auto, 1fr) auto;\n align-items: stretch;\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Watch,\n Prop,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhDatalistItemEntry,\n StzhDatalistDirectionChangeEvent,\n StzhDatalistHideBorderChangeEvent\n} from \"../../index\";\n\nimport {\n media,\n addMediaChangeListener,\n removeMediaChangeListener\n} from '../../utils/media-utils';\n\n/**\n */\n@Component({\n tag: \"stzh-datalist\",\n styleUrl: \"stzh-datalist.scss\",\n scoped: true\n})\nexport class StzhDatalist {\n /** Direction */\n @Prop({ reflect: true }) direction: \"vertical\" | \"horizontal\" = \"vertical\";\n\n /** Direction above small breakpoint */\n @Prop({ reflect: true }) directionSmall: \"vertical\" | \"horizontal\" | \"inherit\" = \"horizontal\";\n\n /** Direction above medium breakpoint */\n @Prop({ reflect: true }) directionMedium: \"vertical\" | \"horizontal\" | \"inherit\" = \"inherit\";\n\n /** Direction above large breakpoint */\n @Prop({ reflect: true }) directionLarge: \"vertical\" | \"horizontal\" | \"inherit\" = \"inherit\";\n\n /** Direction above ultra breakpoint */\n @Prop({ reflect: true }) directionUltra: \"vertical\" | \"horizontal\" | \"inherit\" = \"inherit\";\n\n /** Hide border lines between items */\n @Prop({ reflect: true }) hideBorder: boolean = false;\n\n /**\n * Whether to disable min-width of datalist item label for the `horizontal` variant.\n *\n * If `false`, the default `min-width` is `144px` (for >= 800px) and `120px` (for < 800px).\n * If `true`, the `min-width` is `none`, so the label column, will have the width of cell with the widest content.\n *\n * You can also overwrite the label min-width via CSS with the custom property `--item-label-min-width`.\n */\n @Prop({ reflect: true }) disableLabelMinWidth: boolean = false;\n\n /** Current direction in use (readonly) */\n @Prop({ reflect: true }) currentDirection: \"vertical\" | \"horizontal\";\n\n /**\n * Items in datalist\n * Array of objects that must at least include `value` attribute.\n * Can optionally contain `leadingIcon`, `label`, `meta`, `icon`, `iconLabel`, `iconTooltip`, `href`, `statusLabel`, `statusType` attribute and be nested to display deeper levels:\n * `[{\"value\":\"Value 1\", \"label\": \"Label 1\"}, {\"value\":\"Value 2\", \"label\": \"Label 2\", \"items\": [...]}]`\n */\n @Prop() items: StzhDatalistItemEntry[] | string = [];\n private _items: StzhDatalistItemEntry[] = [];\n\n\n /** Direction attribute change event */\n @Event() stzhDirectionChange: EventEmitter<StzhDatalistDirectionChangeEvent>;\n\n /** Hide border change event */\n @Event() stzhHideBorderChange: EventEmitter<StzhDatalistHideBorderChangeEvent>;\n\n @Element() element: HTMLStzhDatalistElement;\n\n @Watch(\"hideBorder\")\n hideBorderWatcher(newValue: boolean) {\n this.stzhHideBorderChange.emit({\n component: \"stzh-datalist\",\n value: newValue\n });\n }\n\n @Watch(\"direction\")\n @Watch(\"directionSmall\")\n @Watch(\"directionMedium\")\n @Watch(\"directionLarge\")\n @Watch(\"directionUltra\")\n directionWatcher() {\n this.resizeHandler();\n }\n\n @Watch(\"currentDirection\")\n currentDirectionWatcher(newValue: \"vertical\" | \"horizontal\") {\n this.stzhDirectionChange.emit({\n component: \"stzh-datalist\",\n value: newValue\n });\n }\n\n @Watch(\"items\")\n itemsWatcher(newValue: any[] | string) {\n if (typeof newValue === \"string\") {\n this._items = JSON.parse(newValue);\n } else {\n this._items = newValue;\n }\n }\n\n resizeHandler = () => {\n if (media(\"ultra\").matches && this.directionUltra !== \"inherit\") {\n this.currentDirection = this.directionUltra;\n } else if (media(\"large\").matches && this.directionLarge !== \"inherit\") {\n this.currentDirection = this.directionLarge;\n } else if (media(\"medium\").matches && this.directionMedium !== \"inherit\") {\n this.currentDirection = this.directionMedium;\n } else if (media(\"small\").matches && this.directionSmall !== \"inherit\") {\n this.currentDirection = this.directionSmall;\n } else {\n this.currentDirection = this.direction;\n }\n }\n\n async componentWillLoad() {\n this.itemsWatcher(this.items);\n this.hideBorderWatcher(this.hideBorder);\n this.resizeHandler();\n }\n\n connectedCallback() {\n addMediaChangeListener(this.resizeHandler);\n }\n\n disconnectedCallback() {\n removeMediaChangeListener(this.resizeHandler);\n }\n\n render() {\n const classes = {\n \"stzh-datalist\": true,\n \"stzh-datalist--has-hidden-border\": this.hideBorder,\n [`stzh-datalist--direction-${this.currentDirection}`]: !!this.currentDirection\n };\n\n return (\n <Host>\n <div class={classes}>\n <div class=\"stzh-datalist__list\" role=\"list\">\n {this._items.map((item) =>\n <stzh-datalist-item {...item}>\n {item.items && item.items.length > 0 &&\n <stzh-datalist items={item.items}></stzh-datalist>\n }\n </stzh-datalist-item>\n )}\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n",":host {\n --font-family: var(--stzh-font-family-regular);\n --font-weight: var(--stzh-font-weight-regular);\n --color: inherit;\n --action-display: flex;\n --label-min-width: var(--item-label-min-width, none);\n --leading-icon-background-color: #{$colorGrey5};\n --leading-icon-color: #{$colorGrey70};\n\n --hover-leading-icon-background-color: #{$colorPrimaryHover};\n --hover-leading-icon-color: #{$colorWhite};\n\n --horizontal-min-height: 48px;\n\n display: contents;\n\n &[href]:not([href=\"\"]),\n &[a11y-expanded],\n &[a11y-controls] {\n --color: #{$colorPrimary};\n --hover-color: #{$colorPrimaryHover};\n }\n\n ::slotted(stzh-datalist) {\n margin-left: space('large');\n }\n}\n\n.stzh-datalist-item {\n position: relative;\n text-decoration-line: none;\n\n &__vhidden {\n @include visuallyhidden;\n }\n\n &__wrapper {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n }\n\n &__leading,\n &__value,\n &__label,\n &__meta,\n &__action-list {\n color: inherit;\n display: flex;\n align-items: center;\n appearance: none;\n font-family: inherit;\n background: transparent;\n border: none;\n padding: 0;\n text-decoration-line: none;\n\n &.is-button,\n &.is-link {\n cursor: pointer;\n }\n }\n\n &__leading {\n flex-shrink: 0;\n\n &:not(:empty) {\n padding-right: space('xsmall');\n }\n }\n\n &__leading-icon-container {\n color: var(--leading-icon-color);\n background-color: var(--leading-icon-background-color);\n width: 40px;\n height: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 50%;\n transition-property: color, background-color;\n transition-duration: $baseTransitionAnimationSpeed;\n }\n\n &__value {\n @include fontCurve('p1');\n font-family: var(--font-family);\n font-weight: var(--font-weight);\n flex-grow: 1;\n }\n\n &__value,\n &__icon {\n color: var(--color);\n }\n\n &__label,\n &__meta {\n @include fontCurve('caption');\n }\n\n &__meta {\n justify-content: flex-end;\n }\n\n &__label {\n @include font('medium');\n color: $baseLeadColor;\n }\n\n &__action-list {\n display: var(--action-display);\n justify-content: center;\n text-align: center;\n\n &:not(:empty) {\n padding-left: space('xsmall');\n }\n }\n\n &__action {\n &.is-non-interactive {\n display: flex;\n justify-content: center;\n align-items: center;\n width: $formInputHeightTiny;\n height: $formInputHeightTiny;\n }\n\n &.is-button[variant=\"tertiary\"] {\n --color: inherit;\n }\n }\n\n &__value,\n &__icon {\n transition: color $baseTransitionAnimationSpeed;\n }\n\n &__richtext {\n color: inherit;\n font-family: inherit;\n font-weight: inherit;\n }\n\n &__interactive {\n position: absolute;\n top: 0;\n left: 0;\n }\n\n /* Button variant */\n\n &--is-button &__icon.is-open {\n display: none;\n }\n\n &--is-button#{&}--is-expanded &__icon {\n &.is-closed {\n display: none;\n }\n\n &.is-open {\n display: inline-flex;\n }\n }\n\n /* Interactive variant */\n\n &--is-interactive:hover &__value,\n &--is-interactive:hover &__icon {\n color: var(--hover-color);\n }\n\n &--is-interactive:hover &__value {\n text-decoration-line: underline;\n }\n\n &--is-interactive:hover &__leading-icon-container,\n &--is-interactive:focus-within &__leading-icon-container {\n color: var(--hover-leading-icon-color);\n background-color: var(--hover-leading-icon-background-color);\n }\n\n /* Vertical variant */\n\n &--direction-vertical {\n display: flex;\n padding-top: space('xsmall');\n padding-bottom: space('xsmall');\n }\n\n &--direction-vertical#{&}--has-hidden-border {\n padding-top: calc(#{space('xsmall')} / 2);\n padding-bottom: calc(#{space('xsmall')} / 2);\n }\n\n &--direction-vertical:not(#{&}--has-hidden-border) {\n border-bottom: 1px solid $baseBorderColor;\n }\n\n &--direction-vertical &__leading-icon-container {\n width: 40px;\n height: 40px;\n }\n\n &--direction-vertical &__leading-icon {\n --size: #{iconSize('medium')};\n }\n\n &--direction-vertical &__meta {\n flex-direction: column;\n }\n\n /* Horizontal variant */\n\n &--direction-horizontal,\n &--direction-horizontal + &__nested {\n display: contents;\n }\n\n &--direction-horizontal + &__nested &__nested-inner {\n grid-column: 1 / 6;\n }\n\n &--direction-horizontal &__leading,\n &--direction-horizontal &__value,\n &--direction-horizontal &__label,\n &--direction-horizontal &__meta,\n &--direction-horizontal &__action-list {\n min-height: var(--horizontal-min-height);\n }\n\n &--direction-horizontal &__label,\n &--direction-horizontal &__value,\n &--direction-horizontal &__meta {\n padding-top: space('xsmall');\n padding-bottom: space('xsmall');\n }\n\n &--direction-horizontal#{&}--has-hidden-border &__label,\n &--direction-horizontal#{&}--has-hidden-border &__value,\n &--direction-horizontal#{&}--has-hidden-border &__meta {\n padding-top: calc(#{space('xsmall')} / 2);\n padding-bottom: calc(#{space('xsmall')} / 2);\n }\n\n // &--direction-horizontal:not(#{&}--has-hidden-border) &__leading,\n &--direction-horizontal:not(#{&}--has-hidden-border) &__label,\n &--direction-horizontal:not(#{&}--has-hidden-border) &__value,\n &--direction-horizontal:not(#{&}--has-hidden-border) &__meta,\n &--direction-horizontal:not(#{&}--has-hidden-border) &__action-list {\n border-bottom: 1px solid $baseBorderColor;\n }\n\n &--direction-horizontal &__label {\n &:not(:empty) {\n min-width: var(--label-min-width);\n padding-right: space('xsmall');\n }\n }\n\n &--direction-horizontal &__meta {\n &:not(:empty) {\n padding-left: space('xsmall');\n }\n }\n\n &--direction-horizontal &__leading-icon-container {\n width: 32px;\n height: 32px;\n }\n\n &--direction-horizontal &__meta-status + &__meta-text {\n margin-left: space('xsmall');\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n Event,\n EventEmitter,\n Fragment,\n State,\n Watch\n} from \"@stencil/core\";\n\nimport {\n StzhDatalistItemActionClickEvent,\n StzhDatalistDirectionChangeEvent,\n StzhDatalistHideBorderChangeEvent\n} from \"../../index\";\n\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\nlet datalistItemCounter = 0;\n\n/**\n * @slot - Slot for nested datalist\n * @slot value - Slot for value (or use value slot instead)\n */\n@Component({\n tag: \"stzh-datalist-item\",\n styleUrl: \"stzh-datalist-item.scss\",\n scoped: true\n})\nexport class StzhDatalistItem {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Direction */\n @Prop({ reflect: true }) direction: \"vertical\" | \"horizontal\" = \"vertical\";\n\n /** Link */\n @Prop({ reflect: true }) href: string;\n\n /** Rel (if href is used) */\n @Prop() rel: string;\n\n /** Target (if href is used) */\n @Prop() target: string;\n\n /** Download attribute of link (if `href` used) */\n @Prop() download: string;\n\n /** Leading icon */\n @Prop() leadingIcon: string;\n\n /** Icon of action button (if href is used, will only be for presentation and default to link icon) */\n @Prop() icon: string;\n\n /** Overwrite aria-label of action button (default aria label is `label` and `value`). */\n @Prop() iconLabel: string;\n\n /** Tooltip content of action button. Overwrites aria-label (set by default or `iconLabel`) of action button. */\n @Prop() iconTooltip: string;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Value (or use value slot instead) */\n @Prop() value: string = \"\";\n\n /** Meta */\n @Prop() meta: string = \"\";\n\n /** Status Label */\n @Prop() statusLabel: string = \"\";\n\n /** Status Type */\n @Prop() statusType: \"default\" | \"success\" | \"warning\" | \"error\" | \"info\" = \"default\";\n\n /** Hide border lines */\n @Prop({ reflect: true }) hideBorder: boolean = false;\n\n /** Aria expanded of link/button */\n @Prop({ reflect: true, attribute: \"a11y-expanded\" }) a11yExpanded: boolean;\n\n /** Aria controls of link/button */\n @Prop({ attribute: \"a11y-controls\" }) a11yControls: string;\n\n /** Whether rel contains external */\n @State() external: boolean = false;\n\n /** Item action click event */\n @Event() stzhItemActionClick: EventEmitter<StzhDatalistItemActionClickEvent>;\n\n @Element() element: HTMLStzhDatalistItemElement;\n\n @Watch(\"rel\")\n externalWatcher() {\n this.external = this.rel && this.rel.includes(\"external\");\n }\n\n private datalist: HTMLStzhDatalistElement;\n private datalistItemId: string;\n\n private actionClick = (originalEvent: MouseEvent) => {\n this.stzhItemActionClick.emit({\n component: \"stzh-datalist-item\",\n originalEvent\n });\n }\n\n private handleDirectionChange = (event: CustomEvent<StzhDatalistDirectionChangeEvent>) => {\n this.direction = event.detail.value;\n }\n\n private handleHideBorderChange = (event: CustomEvent<StzhDatalistHideBorderChangeEvent>) => {\n this.hideBorder = event.detail.value;\n }\n\n private renderInner(isButton: boolean): DocumentFragment {\n const Item = isButton ? \"button\" : (this.href ? \"a\" : \"div\");\n\n return (\n <Fragment>\n <Item\n aria-hidden={this.label ? null : \"true\"}\n tabindex=\"-1\"\n id={`${this.datalistItemId}-label`}\n class={{\n \"stzh-datalist-item__label\": true,\n \"is-button\": isButton,\n \"is-link\": !!this.href\n }}\n href={this.href}\n rel={this.rel}\n target={this.target}\n download={this.download}\n >\n {this.label}\n </Item>\n\n <Item\n id={`${this.datalistItemId}-value`}\n class={{\n \"stzh-datalist-item__value\": true,\n \"is-button\": isButton,\n \"is-link\": !!this.href\n }}\n href={this.href}\n rel={this.rel}\n target={this.target}\n download={this.download}\n aria-labelledby={Item !== 'div' ? `${this.datalistItemId}-label ${this.datalistItemId}-value ${this.datalistItemId}-meta` : null}\n aria-controls={this.a11yControls || null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n >\n {this.external && <div class=\"stzh-datalist-item__vhidden\">{this.localization.$globals.externalLinkLabel}</div>}\n {this.download && <div class=\"stzh-datalist-item__vhidden\">{this.localization.$globals.downloadLinkLabel}</div>}\n <stzh-richtext class=\"stzh-datalist-item__richtext\" innerHTML={this.value}>\n <slot name=\"value\"></slot>\n </stzh-richtext>\n </Item>\n\n <Item\n aria-hidden={this.statusLabel || this.meta ? null : \"true\"}\n tabindex=\"-1\"\n id={`${this.datalistItemId}-meta`}\n class={{\n \"stzh-datalist-item__meta\": true,\n \"is-button\": isButton,\n \"is-link\": !!this.href\n }}\n href={this.href}\n rel={this.rel}\n target={this.target}\n download={this.download}\n >\n {this.statusLabel &&\n <stzh-status\n class=\"stzh-datalist-item__meta-status\"\n label={this.statusLabel}\n type={this.statusType}\n ></stzh-status>\n }\n {this.meta && <span class=\"stzh-datalist-item__meta-text\">{this.meta}</span>}\n </Item>\n </Fragment>\n )\n }\n\n private renderLeadingIcon(isButton: boolean): HTMLElement {\n const Item = isButton ? \"button\" : (this.href ? \"a\" : \"div\");\n\n return (\n <Item\n role=\"presentation\"\n aria-hidden=\"true\"\n tabindex=\"-1\"\n class={{\n \"stzh-datalist-item__leading\": true,\n \"is-button\": isButton,\n \"is-link\": !!this.href\n }}\n href={this.href}\n rel={this.rel}\n target={this.target}\n download={this.download}\n >\n {this.leadingIcon &&\n <div class=\"stzh-datalist-item__leading-icon-container\">\n <stzh-icon class=\"stzh-datalist-item__leading-icon\" name={this.leadingIcon}></stzh-icon>\n </div>\n }\n </Item>\n );\n }\n\n async connectedCallback() {\n this.datalist = this.element.closest(\"stzh-datalist\");\n\n if (this.datalist) {\n this.direction = this.datalist.currentDirection;\n this.hideBorder = this.datalist.hideBorder;\n\n this.datalist.addEventListener(\"stzhDirectionChange\", this.handleDirectionChange);\n this.datalist.addEventListener(\"stzhHideBorderChange\", this.handleHideBorderChange);\n }\n }\n\n disconnectedCallback() {\n if (this.datalist) {\n this.datalist.removeEventListener(\"stzhDirectionChange\", this.handleDirectionChange);\n this.datalist.removeEventListener(\"stzhHideBorderChange\", this.handleHideBorderChange);\n this.datalist = null;\n }\n }\n\n async componentWillLoad() {\n this.datalistItemId = `stzh-datalist-item-${datalistItemCounter++}`;\n this.externalWatcher();\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"datalist-item\");\n }\n }\n\n render() {\n const isButton = typeof this.a11yExpanded !== \"undefined\"\n || typeof this.a11yControls !== \"undefined\";\n\n const hasActionButton = !this.href && this.icon;\n\n const classes = {\n \"stzh-datalist-item\": true,\n \"stzh-datalist-item--is-interactive\": !!this.href || isButton,\n \"stzh-datalist-item--is-link\": !!this.href,\n \"stzh-datalist-item--is-button\": isButton,\n \"stzh-datalist-item--is-expanded\": this.a11yExpanded,\n \"stzh-datalist-item--has-hidden-border\": this.hideBorder,\n [`stzh-datalist-item--direction-${this.direction}`]: !!this.direction\n };\n\n const Item = isButton ? \"button\" : (this.href ? \"a\" : \"div\");\n\n const ActionButton = () => {\n return (\n <stzh-button\n class={{\n \"stzh-datalist-item__action\": true,\n \"is-button\": true\n }}\n variant=\"tertiary\"\n size=\"tiny\"\n aria-label={this.iconLabel || (`${this.label} ${this.value}`)}\n iconOnly={true}\n icon={this.icon}\n onClick={this.actionClick}\n ></stzh-button>\n );\n }\n\n return (\n <Host role=\"listitem\">\n <div class={classes}>\n {this.direction === \"horizontal\" ?\n <Fragment>\n {this.renderLeadingIcon(isButton)}\n {this.renderInner(isButton)}\n </Fragment>\n :\n <Fragment>\n {this.renderLeadingIcon(isButton)}\n <div class=\"stzh-datalist-item__wrapper\">\n {this.renderInner(isButton)}\n </div>\n </Fragment>\n }\n <Item\n role={hasActionButton ? null : \"presentation\"}\n aria-hidden={hasActionButton ? null : \"true\"}\n tabindex=\"-1\"\n class={{\n \"stzh-datalist-item__action-list\": true,\n \"is-button\": isButton,\n \"is-link\": !!this.href\n }}\n href={this.href}\n rel={this.rel}\n target={this.target}\n download={this.download}\n >\n {this.href &&\n (this.download ?\n <div class=\"stzh-datalist-item__action is-non-interactive\">\n <stzh-icon class=\"stzh-datalist-item__icon\" name={this.icon ? this.icon : \"download\"}></stzh-icon>\n </div>\n :\n <div class=\"stzh-datalist-item__action is-non-interactive\">\n <stzh-icon class=\"stzh-datalist-item__icon\" name={this.icon ? this.icon : (this.external ? \"external-link\" : \"arrow-right\")}></stzh-icon>\n </div>\n )\n }\n\n {isButton &&\n <div class=\"stzh-datalist-item__action is-non-interactive\">\n <stzh-icon class=\"stzh-datalist-item__icon is-closed\" name={this.icon ? this.icon : \"plus\"}></stzh-icon>\n <stzh-icon class=\"stzh-datalist-item__icon is-open\" name={this.icon ? this.icon : \"minus\"}></stzh-icon>\n </div>\n }\n\n {hasActionButton &&\n (this.iconTooltip ?\n <stzh-tooltip content={this.iconTooltip}>\n {ActionButton()}\n </stzh-tooltip>\n :\n ActionButton())\n }\n </Item>\n </div>\n\n <div class=\"stzh-datalist-item__nested\">\n <div class=\"stzh-datalist-item__nested-inner\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,c as s,h as i,a as h,g as c}from"./p-c92165bd.js";import{a as e,o}from"./p-cfdb06e4.js";import"./p-9b063923.js";const n='.sc-stzh-sticky-h{font-family:var(--stzh-font-family-regular);font-weight:var(--stzh-font-weight-regular);font-style:var(--stzh-font-style-regular);color:var(--stzh-base-color);-webkit-box-sizing:border-box;box-sizing:border-box;display:block}[hidden].sc-stzh-sticky-h{display:none}.sc-stzh-sticky-h *.sc-stzh-sticky,.sc-stzh-sticky-h *.sc-stzh-sticky::before,.sc-stzh-sticky-h *.sc-stzh-sticky::after{-webkit-box-sizing:border-box;box-sizing:border-box;text-underline-offset:var(--stzh-link-text-underline-offset);text-decoration-thickness:var(--stzh-link-text-decoration-thickness)}.sc-stzh-sticky-h .has-focus.sc-stzh-sticky{outline:var(--stzh-flyingfocus-color) solid 0.125rem;outline-offset:0.3125rem}.sc-stzh-sticky-h .stzh-fylingfocus-focused.sc-stzh-sticky{outline-style:none !important}.sc-stzh-sticky-h .stzh-fylingfocus-focused.sc-stzh-sticky::-moz-focus-inner{border:0 !important}.sc-stzh-sticky-h{--padding:var(--stzh-space-large) 0;display:contents}@media print{.sc-stzh-sticky-h{display:none}}.stzh-sticky.sc-stzh-sticky{display:contents}.stzh-sticky__sticky.sc-stzh-sticky{position:-webkit-sticky;position:sticky;top:-0.0625rem;bottom:-0.0625rem;z-index:var(--stzh-z-index-sticky)}.stzh-sticky__content.sc-stzh-sticky{position:relative;padding:var(--padding)}.stzh-sticky__content.sc-stzh-sticky::before,.stzh-sticky__content.sc-stzh-sticky::after{content:"";pointer-events:none;display:block;position:absolute;left:0;width:100%;height:var(--stzh-space-xxlarge);opacity:0;-webkit-transition:opacity var(--stzh-base-transition-animation-speed);transition:opacity var(--stzh-base-transition-animation-speed)}.stzh-sticky__content.sc-stzh-sticky::before{background:-webkit-gradient(linear, left bottom, left top, from(#FFFFFF), to(rgba(255, 255, 255, 0)));background:linear-gradient(0deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);top:0;-webkit-transform:translateY(-100%);transform:translateY(-100%)}.stzh-sticky__content.sc-stzh-sticky::after{background:-webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0)), to(#FFFFFF));background:linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);bottom:0;-webkit-transform:translateY(100%);transform:translateY(100%)}.stzh-sticky__spacer.sc-stzh-sticky{display:none}.stzh-sticky--is-disabled-sticky-top.sc-stzh-sticky .stzh-sticky__sticky.sc-stzh-sticky{top:auto}.stzh-sticky--is-disabled-sticky-bottom.sc-stzh-sticky .stzh-sticky__sticky.sc-stzh-sticky{bottom:auto}.stzh-sticky--is-stuck.sc-stzh-sticky .stzh-sticky__content.sc-stzh-sticky{background-color:var(--stzh-color-white)}.stzh-sticky--is-stuck-bottom.sc-stzh-sticky .stzh-sticky__content.sc-stzh-sticky::before{opacity:1}.stzh-sticky--is-stuck-top.sc-stzh-sticky .stzh-sticky__content.sc-stzh-sticky::after{opacity:1}.stzh-sticky--is-breakout.sc-stzh-sticky .stzh-sticky__content.sc-stzh-sticky{position:relative;left:50%;right:50%;margin-left:calc(-50vw + var(--stzh-scrollbar-width) / 2);margin-right:calc(-50vw + var(--stzh-scrollbar-width) / 2);width:calc(100vw - var(--stzh-scrollbar-width));max-width:calc(100vw - var(--stzh-scrollbar-width))}';const a=class{constructor(i){t(this,i);this.stzhStuckTop=s(this,"stzhStuckTop",7);this.stzhStuckBottom=s(this,"stzhStuckBottom",7);this.fixedHeight=0;this.fixedWidth=0;this.fixedLimit=null;this.handleScroll=()=>{if(this.debounceScroll){window.cancelAnimationFrame(this.debounceScroll)}this.debounceScroll=requestAnimationFrame(this.updateFixedByScroll)};this.handleResize=()=>{if(this.debounceResize){window.cancelAnimationFrame(this.debounceResize)}this.debounceResize=requestAnimationFrame(this.updateFixedByResize)};this.updateFixedByScroll=()=>{if(!e(this.stickyElement)){return}this.scrollX=window.scrollX;this.scrollY=window.scrollY;this.fixedLimit=this.getFixedLimit();if(this.isStuckTop||this.isStuckBottom){const t=o(this.spacerElement);this.fixedTop=t.top;this.fixedLeft=t.left}else{const t=o(this.stickyElement);this.fixedTop=t.top;this.fixedLeft=t.left}this.isStuckBottom=!this.disableStickyBottom&&this.scrollY+this.windowHeight<=this.fixedTop+this.fixedHeight;this.isStuckTop=!this.disableStickyTop&&this.scrollY>=this.fixedTop;this.hasReachedTopLimit=this.fixedLimit&&this.scrollY+this.windowHeight-this.fixedHeight<=this.fixedLimit.top;this.hasReachedBottomLimit=this.fixedLimit&&this.scrollY>=this.fixedLimit.bottom-this.fixedHeight;if(this.isStuckTop||this.isStuckBottom){this.setFixed()}else{this.setUnfixed()}};this.updateFixedByResize=()=>{this.setUnfixed();this.stickyElement.style.position="static";this.isStuckTop=false;this.isStuckBottom=false;if(e(this.stickyElement)){this.windowHeight=window.innerHeight;this.fixedHeight=this.stickyElement.offsetHeight;this.fixedWidth=this.stickyElement.offsetWidth;this.spacerElement.style.height=`${this.fixedHeight}px`;this.updateFixedByScroll()}};this.observe=()=>{this.updateStuck()};this.disableStickyTop=false;this.disableStickyBottom=false;this.breakout=false;this.position="sticky";this.isStuckTop=false;this.isStuckBottom=false;this.hasReachedTopLimit=false;this.hasReachedBottomLimit=false}disableStickyWatcher(){requestAnimationFrame((()=>{requestAnimationFrame((()=>{if(this.position==="fixed"){this.updateFixedByResize()}else{this.updateStuck()}}))}))}isStuckTopWatcher(t){this.stzhStuckTop.emit({component:"stzh-sticky",sticky:t})}isStuckBottomWatcher(t){this.stzhStuckBottom.emit({component:"stzh-sticky",sticky:t})}positionWatcher(t){if(t==="fixed"){if(this.observer){this.observer.disconnect()}window.addEventListener("scroll",this.handleScroll,{passive:true});window.addEventListener("resize",this.handleResize);this.updateFixedByResize()}else{window.removeEventListener("scroll",this.handleScroll);window.removeEventListener("resize",this.handleResize);this.setUnfixed();this.observer=new IntersectionObserver(this.observe,{threshold:[1]});this.observer.observe(this.stickyElement);this.updateStuck()}}updateStuck(){const t=parseInt(getComputedStyle(this.stickyElement).top,10);const s=parseInt(getComputedStyle(this.stickyElement).bottom,10);const i=this.stickyElement.getBoundingClientRect();if(t){this.isStuckTop=i.top<0}else{this.isStuckTop=false}if(s){this.isStuckBottom=document.documentElement.clientHeight<i.bottom}else{this.isStuckBottom=false}}getFixedLimit(){const t=this.element.closest("[data-stzh-sticky-container]");if(!t){return null}const s=o(t);return{top:s.top,bottom:s.top+t.scrollHeight}}setUnfixed(){Object.assign(this.stickyElement.style,{position:null,top:null,bottom:null,left:null,width:null});Object.assign(this.spacerElement.style,{display:"none"})}setFixed(){const t=this.hasReachedTopLimit||this.hasReachedBottomLimit?"absolute":"fixed";Object.assign(this.stickyElement.style,{position:t,top:t==="absolute"?`${this.isStuckTop?this.fixedLimit.bottom-this.fixedHeight:this.fixedLimit.top}px`:this.isStuckTop?"0px":"auto",bottom:this.isStuckTop||t==="absolute"?"auto":"0px",left:`${this.fixedLeft+(t==="fixed"?this.scrollX:0)}px`,width:`${this.fixedWidth}px`});Object.assign(this.spacerElement.style,{display:"block"})}componentDidLoad(){this.positionWatcher(this.position)}disconnectedCallback(){if(this.observer){this.observer.disconnect()}window.removeEventListener("scroll",this.handleScroll);window.removeEventListener("resize",this.handleResize)}render(){const t=this.isStuckTop||this.isStuckBottom;const s={"stzh-sticky":true,"stzh-sticky--is-stuck":t,"stzh-sticky--is-stuck-top":this.isStuckTop,"stzh-sticky--is-stuck-bottom":this.isStuckBottom,"stzh-sticky--is-breakout":this.breakout,"stzh-sticky--is-disabled-sticky-top":this.disableStickyTop,"stzh-sticky--is-disabled-sticky-bottom":this.disableStickyBottom,[`stzh-sticky--position-${this.position}`]:!!this.position};return i(h,{"is-stuck":this.isStuckTop||this.isStuckBottom,"is-stuck-top":this.isStuckTop,"is-stuck-bottom":this.isStuckBottom},i("div",{class:s},i("div",{ref:t=>this.spacerElement=t,class:"stzh-sticky__spacer"}),i("div",{ref:t=>this.stickyElement=t,class:"stzh-sticky__sticky"},i("div",{class:"stzh-sticky__content"},i("slot",null)))))}get element(){return c(this)}static get watchers(){return{disableStickyTop:["disableStickyWatcher"],disableStickyBottom:["disableStickyWatcher"],isStuckTop:["isStuckTopWatcher"],isStuckBottom:["isStuckBottomWatcher"],position:["positionWatcher"]}}};a.style=n;export{a as stzh_sticky};
|
|
2
|
+
//# sourceMappingURL=p-361996d1.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["stzhStickyCss","StzhSticky","this","fixedHeight","fixedWidth","fixedLimit","handleScroll","debounceScroll","window","cancelAnimationFrame","requestAnimationFrame","updateFixedByScroll","handleResize","debounceResize","updateFixedByResize","isVisible","stickyElement","scrollX","scrollY","getFixedLimit","isStuckTop","isStuckBottom","off","offset","spacerElement","fixedTop","top","fixedLeft","left","disableStickyBottom","windowHeight","disableStickyTop","hasReachedTopLimit","hasReachedBottomLimit","bottom","setFixed","setUnfixed","style","position","innerHeight","offsetHeight","offsetWidth","height","observe","updateStuck","disableStickyWatcher","isStuckTopWatcher","newValue","stzhStuckTop","emit","component","sticky","isStuckBottomWatcher","stzhStuckBottom","positionWatcher","observer","disconnect","addEventListener","passive","removeEventListener","IntersectionObserver","threshold","topCss","parseInt","getComputedStyle","bottomCss","rect","getBoundingClientRect","document","documentElement","clientHeight","stickyContainer","element","closest","scrollHeight","Object","assign","width","display","componentDidLoad","disconnectedCallback","render","isStuck","classes","breakout","h","Host","class","ref","el"],"sources":["src/components/stzh-sticky/stzh-sticky.scss?tag=stzh-sticky&encapsulation=scoped","src/components/stzh-sticky/stzh-sticky.tsx"],"sourcesContent":["/**\n * @prop --padding: Padding of sticky element\n */\n\n:host {\n --padding: #{space('large')} 0;\n\n display: contents;\n\n @media print {\n display: none;\n }\n}\n\n.stzh-sticky {\n display: contents;\n\n &__sticky {\n position: sticky;\n top: -1px;\n bottom: -1px;\n z-index: $zIndexSticky;\n }\n\n &__content {\n position: relative;\n padding: var(--padding);\n\n &::before,\n &::after {\n content: '';\n pointer-events: none;\n display: block;\n position: absolute;\n left: 0;\n width: 100%;\n height: space('xxlarge');\n opacity: 0;\n transition: opacity $baseTransitionAnimationSpeed;\n }\n\n &::before {\n background: linear-gradient(0deg, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);\n top: 0;\n transform: translateY(-100%);\n }\n\n &::after {\n background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);\n bottom: 0;\n transform: translateY(100%);\n }\n }\n\n &__spacer {\n display: none;\n }\n\n &--is-disabled-sticky-top &__sticky {\n top: auto;\n }\n\n &--is-disabled-sticky-bottom &__sticky {\n bottom: auto;\n }\n\n &--is-stuck &__content {\n background-color: $colorWhite;\n }\n\n &--is-stuck-bottom &__content {\n &::before {\n opacity: 1;\n }\n }\n\n &--is-stuck-top &__content {\n &::after {\n opacity: 1;\n }\n }\n\n /* Position sticky variant */\n\n &--is-breakout &__content {\n position: relative;\n left: 50%;\n right: 50%;\n margin-left: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n margin-right: calc(-50vw + var(--stzh-scrollbar-width) / 2);\n width: calc(100vw - var(--stzh-scrollbar-width));\n max-width: calc(100vw - var(--stzh-scrollbar-width));\n }\n}\n","import {\n Component,\n Host,\n h,\n Element,\n Prop,\n State,\n Watch,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhStickyStuckTopEvent,\n StzhStickyStuckBottomEvent\n} from \"../../index\";\n\nimport { isVisible, offset } from \"../../utils/utils\";\n\n/**\n *\n */\n@Component({\n tag: \"stzh-sticky\",\n styleUrl: \"stzh-sticky.scss\",\n scoped: true\n})\nexport class StzhSticky {\n /** Whether to disable sticking to top */\n @Prop({ reflect: true }) disableStickyTop: boolean = false;\n\n /** Whether to disable sticking to bottom */\n @Prop({ reflect: true }) disableStickyBottom: boolean = false;\n\n /** Whether to breakout container */\n @Prop({ reflect: true }) breakout: boolean = false;\n\n /**\n * Position type used.\n *\n * - sticky: used only css position sticky\n * - fixed: uses position fixed with js for positioning (`data-stzh-sticky-container` can be used on a container element to limit sticky position)\n */\n @Prop({ reflect: true }) position: \"sticky\" | \"fixed\" = \"sticky\";\n\n @Watch(\"disableStickyTop\")\n @Watch(\"disableStickyBottom\")\n disableStickyWatcher() {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n if (this.position === \"fixed\") {\n this.updateFixedByResize();\n } else {\n this.updateStuck();\n }\n });\n });\n }\n\n @Element() element: HTMLStzhStickyElement;\n\n @State() isStuckTop: boolean = false;\n @State() isStuckBottom: boolean = false;\n\n @State() hasReachedTopLimit: boolean = false;\n @State() hasReachedBottomLimit: boolean = false;\n\n @Watch(\"isStuckTop\")\n isStuckTopWatcher(newValue: boolean) {\n this.stzhStuckTop.emit({\n component: \"stzh-sticky\",\n sticky: newValue\n });\n }\n\n @Watch(\"isStuckBottom\")\n isStuckBottomWatcher(newValue: boolean) {\n this.stzhStuckBottom.emit({\n component: \"stzh-sticky\",\n sticky: newValue\n });\n }\n\n @Watch(\"position\")\n positionWatcher(newValue: string) {\n if (newValue === \"fixed\") {\n if (this.observer) {\n this.observer.disconnect();\n }\n\n window.addEventListener(\"scroll\", this.handleScroll, { passive: true });\n window.addEventListener(\"resize\", this.handleResize);\n\n this.updateFixedByResize();\n } else {\n window.removeEventListener(\"scroll\", this.handleScroll);\n window.removeEventListener(\"resize\", this.handleResize);\n this.setUnfixed();\n\n this.observer = new IntersectionObserver(this.observe, { threshold: [1] });\n this.observer.observe(this.stickyElement);\n\n this.updateStuck();\n }\n }\n\n /** Sticky stuck top event */\n @Event() stzhStuckTop: EventEmitter<StzhStickyStuckTopEvent>;\n\n /** Sticky stuck bottom event */\n @Event() stzhStuckBottom: EventEmitter<StzhStickyStuckBottomEvent>;\n\n private observer: IntersectionObserver;\n private debounceScroll: number;\n private debounceResize: number;\n private stickyElement: HTMLElement;\n private spacerElement: HTMLElement;\n\n private windowHeight: number;\n private scrollX: number;\n private scrollY: number;\n private fixedTop: number;\n private fixedLeft: number;\n private fixedHeight: number = 0;\n private fixedWidth: number = 0;\n private fixedLimit: { top: number, bottom: number } | null = null;\n\n private updateStuck() {\n const topCss = parseInt(getComputedStyle(this.stickyElement).top, 10);\n const bottomCss = parseInt(getComputedStyle(this.stickyElement).bottom, 10);\n const rect = this.stickyElement.getBoundingClientRect();\n\n if (topCss) {\n this.isStuckTop = rect.top < 0;\n } else {\n this.isStuckTop = false;\n }\n\n if (bottomCss) {\n this.isStuckBottom = document.documentElement.clientHeight < rect.bottom;\n } else {\n this.isStuckBottom = false;\n }\n }\n\n private getFixedLimit(): { top: number, bottom: number } | null {\n const stickyContainer = this.element.closest(\"[data-stzh-sticky-container]\");\n\n if (!stickyContainer) {\n return null;\n }\n\n const off = offset(stickyContainer);\n\n return {\n top: off.top,\n bottom: off.top + stickyContainer.scrollHeight,\n };\n }\n\n private setUnfixed() {\n Object.assign(this.stickyElement.style, {\n position: null,\n top: null,\n bottom: null,\n left: null,\n width: null,\n });\n\n Object.assign(this.spacerElement.style, {\n display: \"none\",\n });\n }\n\n private setFixed() {\n const position = (this.hasReachedTopLimit || this.hasReachedBottomLimit)\n ? \"absolute\"\n : \"fixed\";\n\n Object.assign(this.stickyElement.style, {\n position,\n top: position === \"absolute\"\n ? `${this.isStuckTop ? this.fixedLimit.bottom - this.fixedHeight : this.fixedLimit.top}px`\n : this.isStuckTop ? \"0px\" : \"auto\",\n bottom: this.isStuckTop || position === \"absolute\"\n ? \"auto\" : \"0px\",\n left: `${this.fixedLeft + (position === \"fixed\" ? this.scrollX : 0)}px`,\n width: `${this.fixedWidth}px`,\n });\n\n Object.assign(this.spacerElement.style, {\n display: \"block\",\n });\n }\n\n private handleScroll = () => {\n if (this.debounceScroll) {\n window.cancelAnimationFrame(this.debounceScroll);\n }\n\n this.debounceScroll = requestAnimationFrame(this.updateFixedByScroll);\n }\n\n private handleResize = () => {\n if (this.debounceResize) {\n window.cancelAnimationFrame(this.debounceResize);\n }\n\n this.debounceResize = requestAnimationFrame(this.updateFixedByResize);\n }\n\n private updateFixedByScroll = () => {\n if (!isVisible(this.stickyElement)) {\n return;\n }\n\n this.scrollX = window.scrollX;\n this.scrollY = window.scrollY;\n this.fixedLimit = this.getFixedLimit();\n\n if (this.isStuckTop || this.isStuckBottom) {\n const off = offset(this.spacerElement);\n\n this.fixedTop = off.top;\n this.fixedLeft = off.left;\n } else {\n const off = offset(this.stickyElement);\n\n this.fixedTop = off.top;\n this.fixedLeft = off.left;\n }\n\n // console.log(\n // this.scrollX,\n // this.scrollY,\n // this.windowHeight, \n // this.fixedTop,\n // this.fixedLeft,\n // this.fixedHeight,\n // this.fixedLimit,\n // );\n\n this.isStuckBottom = !this.disableStickyBottom\n && this.scrollY + this.windowHeight <= this.fixedTop + this.fixedHeight;\n this.isStuckTop = !this.disableStickyTop\n && this.scrollY >= this.fixedTop;\n\n this.hasReachedTopLimit = this.fixedLimit \n && this.scrollY + this.windowHeight - this.fixedHeight <= this.fixedLimit.top;\n this.hasReachedBottomLimit = this.fixedLimit \n && this.scrollY >= this.fixedLimit.bottom - this.fixedHeight;\n\n // console.log(\n // this.isStuckBottom,\n // this.isStuckTop,\n // this.hasReachedBottomLimit,\n // this.hasReachedTopLimit,\n // );\n\n if (this.isStuckTop || this.isStuckBottom) {\n this.setFixed();\n } else {\n this.setUnfixed();\n }\n }\n\n private updateFixedByResize = () => {\n // reset sticky so we can read current offsets\n this.setUnfixed();\n this.stickyElement.style.position = \"static\";\n this.isStuckTop = false;\n this.isStuckBottom = false;\n\n if (isVisible(this.stickyElement)) {\n this.windowHeight = window.innerHeight;\n this.fixedHeight = this.stickyElement.offsetHeight; \n this.fixedWidth = this.stickyElement.offsetWidth;\n this.spacerElement.style.height = `${this.fixedHeight}px`;\n\n this.updateFixedByScroll();\n }\n }\n\n private observe = () => {\n this.updateStuck();\n };\n\n componentDidLoad() {\n this.positionWatcher(this.position);\n }\n\n disconnectedCallback() {\n if (this.observer) {\n this.observer.disconnect();\n }\n\n window.removeEventListener(\"scroll\", this.handleScroll);\n window.removeEventListener(\"resize\", this.handleResize);\n }\n\n render() {\n const isStuck = this.isStuckTop || this.isStuckBottom;\n\n const classes = {\n \"stzh-sticky\": true,\n \"stzh-sticky--is-stuck\": isStuck,\n \"stzh-sticky--is-stuck-top\": this.isStuckTop,\n \"stzh-sticky--is-stuck-bottom\": this.isStuckBottom,\n \"stzh-sticky--is-breakout\": this.breakout,\n \"stzh-sticky--is-disabled-sticky-top\": this.disableStickyTop,\n \"stzh-sticky--is-disabled-sticky-bottom\": this.disableStickyBottom,\n [`stzh-sticky--position-${this.position}`]: !!this.position,\n };\n\n return (\n <Host\n is-stuck={this.isStuckTop || this.isStuckBottom}\n is-stuck-top={this.isStuckTop}\n is-stuck-bottom={this.isStuckBottom}\n >\n <div class={classes}>\n <div\n ref={(el) => (this.spacerElement = el as HTMLDivElement)}\n class=\"stzh-sticky__spacer\"\n ></div>\n <div\n ref={(el) => (this.stickyElement = el as HTMLDivElement)}\n class=\"stzh-sticky__sticky\"\n >\n <div class=\"stzh-sticky__content\">\n <slot></slot>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|