@oiz/stzh-components 3.2.0-beta1 → 3.2.0
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-efe6d21d.js → app-globals-d07dad99.js} +2 -2
- package/dist/cjs/{app-globals-efe6d21d.js.map → app-globals-d07dad99.js.map} +1 -1
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/stzh-audio.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-badge_3.cjs.entry.js +3 -3
- package/dist/cjs/stzh-badge_3.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-breadcrumb_2.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-card-navigation.cjs.entry.js +6 -4
- package/dist/cjs/stzh-card-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-card-searchresult.cjs.entry.js +3 -1
- package/dist/cjs/stzh-card-searchresult.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-card-superteaser.cjs.entry.js +8 -20
- package/dist/cjs/stzh-card-superteaser.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-carousel.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-chart.cjs.entry.js +1 -1
- package/dist/cjs/stzh-chart.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-clamp.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-components.cjs.js +2 -2
- package/dist/cjs/stzh-datalist_2.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-datamessagelist.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-datatable.cjs.entry.js +98 -79
- package/dist/cjs/stzh-datatable.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-disturber.cjs.entry.js +1 -1
- package/dist/cjs/stzh-disturber.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-ghettobox_3.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-header.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-link.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-pagebottom.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-pagecontent.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-pagetitle-hero.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-pagetitle.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-pi-pagetitle.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-pi-quote.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-progressbar.cjs.entry.js +1 -1
- package/dist/cjs/stzh-progressbar.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-search.cjs.entry.js +3 -4
- package/dist/cjs/stzh-search.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-sticky-actions.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-sticky.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-table.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-vbz-intro.cjs.entry.js.map +1 -1
- package/dist/cjs/stzh-youtube.cjs.entry.js.map +1 -1
- package/dist/collection/components/stzh-audio/stzh-audio.js +1 -0
- package/dist/collection/components/stzh-audio/stzh-audio.js.map +1 -1
- package/dist/collection/components/stzh-badge/stzh-badge.js +1 -1
- package/dist/collection/components/stzh-badge/stzh-badge.js.map +1 -1
- package/dist/collection/components/stzh-breadcrumb/stzh-breadcrumb.js +1 -1
- package/dist/collection/components/stzh-breadcrumb/stzh-breadcrumb.js.map +1 -1
- package/dist/collection/components/stzh-button/stzh-button.js +2 -2
- package/dist/collection/components/stzh-button/stzh-button.js.map +1 -1
- package/dist/collection/components/stzh-card-navigation/stzh-card-navigation.css +5 -0
- package/dist/collection/components/stzh-card-navigation/stzh-card-navigation.js +24 -4
- package/dist/collection/components/stzh-card-navigation/stzh-card-navigation.js.map +1 -1
- package/dist/collection/components/stzh-card-navigation/stzh-card-navigation.stories.js +14 -7
- package/dist/collection/components/stzh-card-searchresult/stzh-card-searchresult.css +5 -0
- package/dist/collection/components/stzh-card-searchresult/stzh-card-searchresult.js +20 -0
- package/dist/collection/components/stzh-card-searchresult/stzh-card-searchresult.js.map +1 -1
- package/dist/collection/components/stzh-card-searchresult/stzh-card-searchresult.stories.js +129 -109
- package/dist/collection/components/stzh-card-superteaser/stzh-card-superteaser.css +5 -0
- package/dist/collection/components/stzh-card-superteaser/stzh-card-superteaser.js +25 -19
- package/dist/collection/components/stzh-card-superteaser/stzh-card-superteaser.js.map +1 -1
- package/dist/collection/components/stzh-card-superteaser/stzh-card-superteaser.stories.js +116 -98
- package/dist/collection/components/stzh-carousel/stzh-carousel.js +1 -1
- package/dist/collection/components/stzh-carousel/stzh-carousel.js.map +1 -1
- package/dist/collection/components/stzh-chart/stzh-chart.js +1 -1
- package/dist/collection/components/stzh-chart/stzh-chart.js.map +1 -1
- package/dist/collection/components/stzh-clamp/stzh-clamp.js +1 -1
- package/dist/collection/components/stzh-clamp/stzh-clamp.js.map +1 -1
- package/dist/collection/components/stzh-datalist/stzh-datalist.js +1 -0
- package/dist/collection/components/stzh-datalist/stzh-datalist.js.map +1 -1
- package/dist/collection/components/stzh-datamessagelist/stzh-datamessagelist.js +1 -0
- package/dist/collection/components/stzh-datamessagelist/stzh-datamessagelist.js.map +1 -1
- package/dist/collection/components/stzh-datatable/stzh-datatable.js +100 -80
- package/dist/collection/components/stzh-datatable/stzh-datatable.js.map +1 -1
- package/dist/collection/components/stzh-datatable/stzh-datatable.stories.js +110 -39
- package/dist/collection/components/stzh-dialog/stzh-dialog.js +1 -0
- package/dist/collection/components/stzh-dialog/stzh-dialog.js.map +1 -1
- package/dist/collection/components/stzh-disturber/stzh-disturber.css +1 -0
- package/dist/collection/components/stzh-ghettobox/stzh-ghettobox.js +1 -0
- package/dist/collection/components/stzh-ghettobox/stzh-ghettobox.js.map +1 -1
- package/dist/collection/components/stzh-header/stzh-header.js +1 -0
- package/dist/collection/components/stzh-header/stzh-header.js.map +1 -1
- package/dist/collection/components/stzh-link/stzh-link.js +1 -1
- package/dist/collection/components/stzh-link/stzh-link.js.map +1 -1
- package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.js +1 -0
- package/dist/collection/components/stzh-pagebottom/stzh-pagebottom.js.map +1 -1
- package/dist/collection/components/stzh-pagecontent/stzh-pagecontent.js +1 -0
- package/dist/collection/components/stzh-pagecontent/stzh-pagecontent.js.map +1 -1
- package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.js +2 -1
- package/dist/collection/components/stzh-pagetitle/stzh-pagetitle.js.map +1 -1
- package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.js +1 -0
- package/dist/collection/components/stzh-pagetitle-hero/stzh-pagetitle-hero.js.map +1 -1
- package/dist/collection/components/stzh-pi-pagetitle/stzh-pi-pagetitle.js +4 -0
- package/dist/collection/components/stzh-pi-pagetitle/stzh-pi-pagetitle.js.map +1 -1
- package/dist/collection/components/stzh-pi-quote/stzh-pi-quote.js +3 -0
- package/dist/collection/components/stzh-pi-quote/stzh-pi-quote.js.map +1 -1
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js +1 -1
- package/dist/collection/components/stzh-progressbar/stzh-progressbar.js.map +1 -1
- package/dist/collection/components/stzh-search/stzh-search.js +4 -4
- package/dist/collection/components/stzh-search/stzh-search.js.map +1 -1
- package/dist/collection/components/stzh-sticky/stzh-sticky.js +1 -1
- package/dist/collection/components/stzh-sticky/stzh-sticky.js.map +1 -1
- package/dist/collection/components/stzh-sticky-actions/stzh-sticky-actions.js +2 -0
- package/dist/collection/components/stzh-sticky-actions/stzh-sticky-actions.js.map +1 -1
- package/dist/collection/components/stzh-table/stzh-table.js +2 -0
- package/dist/collection/components/stzh-table/stzh-table.js.map +1 -1
- package/dist/collection/components/stzh-vbz-intro/stzh-vbz-intro.js +3 -0
- package/dist/collection/components/stzh-vbz-intro/stzh-vbz-intro.js.map +1 -1
- package/dist/collection/components/stzh-youtube/stzh-youtube.js +2 -1
- package/dist/collection/components/stzh-youtube/stzh-youtube.js.map +1 -1
- package/dist/collection/index.js.map +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index2.js.map +1 -1
- package/dist/components/stzh-audio.js.map +1 -1
- package/dist/components/stzh-badge2.js +2 -2
- package/dist/components/stzh-badge2.js.map +1 -1
- package/dist/components/stzh-breadcrumb2.js.map +1 -1
- package/dist/components/stzh-button2.js +2 -2
- package/dist/components/stzh-button2.js.map +1 -1
- package/dist/components/stzh-card-navigation.js +8 -5
- package/dist/components/stzh-card-navigation.js.map +1 -1
- package/dist/components/stzh-card-searchresult.js +5 -2
- package/dist/components/stzh-card-searchresult.js.map +1 -1
- package/dist/components/stzh-card-superteaser.js +10 -21
- package/dist/components/stzh-card-superteaser.js.map +1 -1
- package/dist/components/stzh-carousel2.js.map +1 -1
- package/dist/components/stzh-chart.js +2 -2
- package/dist/components/stzh-chart.js.map +1 -1
- package/dist/components/stzh-clamp2.js.map +1 -1
- package/dist/components/stzh-datalist2.js.map +1 -1
- package/dist/components/stzh-datamessagelist.js.map +1 -1
- package/dist/components/stzh-datatable.js +98 -79
- package/dist/components/stzh-datatable.js.map +1 -1
- package/dist/components/stzh-dialog2.js.map +1 -1
- package/dist/components/stzh-disturber.js +1 -1
- package/dist/components/stzh-disturber.js.map +1 -1
- package/dist/components/stzh-ghettobox2.js.map +1 -1
- package/dist/components/stzh-header.js.map +1 -1
- package/dist/components/stzh-link2.js.map +1 -1
- package/dist/components/stzh-pagebottom.js.map +1 -1
- package/dist/components/stzh-pagecontent.js.map +1 -1
- package/dist/components/stzh-pagetitle-hero.js.map +1 -1
- package/dist/components/stzh-pagetitle.js.map +1 -1
- package/dist/components/stzh-pi-pagetitle.js.map +1 -1
- package/dist/components/stzh-pi-quote.js.map +1 -1
- package/dist/components/stzh-progressbar.js +2 -2
- package/dist/components/stzh-progressbar.js.map +1 -1
- package/dist/components/stzh-search.js +3 -4
- package/dist/components/stzh-search.js.map +1 -1
- package/dist/components/stzh-sticky-actions.js.map +1 -1
- package/dist/components/stzh-sticky2.js.map +1 -1
- package/dist/components/stzh-table.js.map +1 -1
- package/dist/components/stzh-vbz-intro.js.map +1 -1
- package/dist/components/stzh-youtube.js.map +1 -1
- package/dist/esm/{app-globals-93678901.js → app-globals-b0bdc495.js} +2 -2
- package/dist/esm/{app-globals-93678901.js.map → app-globals-b0bdc495.js.map} +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/stzh-audio.entry.js.map +1 -1
- package/dist/esm/stzh-badge_3.entry.js +3 -3
- package/dist/esm/stzh-badge_3.entry.js.map +1 -1
- package/dist/esm/stzh-breadcrumb_2.entry.js.map +1 -1
- package/dist/esm/stzh-card-navigation.entry.js +6 -4
- package/dist/esm/stzh-card-navigation.entry.js.map +1 -1
- package/dist/esm/stzh-card-searchresult.entry.js +3 -1
- package/dist/esm/stzh-card-searchresult.entry.js.map +1 -1
- package/dist/esm/stzh-card-superteaser.entry.js +8 -20
- package/dist/esm/stzh-card-superteaser.entry.js.map +1 -1
- package/dist/esm/stzh-carousel.entry.js.map +1 -1
- package/dist/esm/stzh-chart.entry.js +1 -1
- package/dist/esm/stzh-chart.entry.js.map +1 -1
- package/dist/esm/stzh-clamp.entry.js.map +1 -1
- package/dist/esm/stzh-components.js +2 -2
- package/dist/esm/stzh-datalist_2.entry.js.map +1 -1
- package/dist/esm/stzh-datamessagelist.entry.js.map +1 -1
- package/dist/esm/stzh-datatable.entry.js +98 -79
- package/dist/esm/stzh-datatable.entry.js.map +1 -1
- package/dist/esm/stzh-dialog.entry.js.map +1 -1
- package/dist/esm/stzh-disturber.entry.js +1 -1
- package/dist/esm/stzh-disturber.entry.js.map +1 -1
- package/dist/esm/stzh-ghettobox_3.entry.js.map +1 -1
- package/dist/esm/stzh-header.entry.js.map +1 -1
- package/dist/esm/stzh-link.entry.js.map +1 -1
- package/dist/esm/stzh-pagebottom.entry.js.map +1 -1
- package/dist/esm/stzh-pagecontent.entry.js.map +1 -1
- package/dist/esm/stzh-pagetitle-hero.entry.js.map +1 -1
- package/dist/esm/stzh-pagetitle.entry.js.map +1 -1
- package/dist/esm/stzh-pi-pagetitle.entry.js.map +1 -1
- package/dist/esm/stzh-pi-quote.entry.js.map +1 -1
- package/dist/esm/stzh-progressbar.entry.js +1 -1
- package/dist/esm/stzh-progressbar.entry.js.map +1 -1
- package/dist/esm/stzh-search.entry.js +3 -4
- package/dist/esm/stzh-search.entry.js.map +1 -1
- package/dist/esm/stzh-sticky-actions.entry.js.map +1 -1
- package/dist/esm/stzh-sticky.entry.js.map +1 -1
- package/dist/esm/stzh-table.entry.js.map +1 -1
- package/dist/esm/stzh-vbz-intro.entry.js.map +1 -1
- package/dist/esm/stzh-youtube.entry.js.map +1 -1
- package/dist/stzh-components/index.esm.js.map +1 -1
- package/dist/stzh-components/p-069e181f.entry.js.map +1 -1
- package/dist/stzh-components/p-09480ffe.entry.js.map +1 -1
- package/dist/stzh-components/p-1c75b53f.entry.js +2 -0
- package/dist/stzh-components/p-1c75b53f.entry.js.map +1 -0
- package/dist/stzh-components/p-29c1cb5c.entry.js.map +1 -1
- package/dist/stzh-components/p-30a522e0.entry.js.map +1 -1
- package/dist/stzh-components/p-32cb5b94.entry.js.map +1 -1
- package/dist/stzh-components/p-3cc6f193.entry.js.map +1 -1
- package/dist/stzh-components/p-429d2a9b.entry.js.map +1 -1
- package/dist/stzh-components/{p-30a7c058.entry.js → p-4b0cb255.entry.js} +2 -2
- package/dist/stzh-components/p-4b0cb255.entry.js.map +1 -0
- package/dist/stzh-components/p-513b7fcd.entry.js +2 -0
- package/dist/stzh-components/p-513b7fcd.entry.js.map +1 -0
- package/dist/stzh-components/p-6e49f741.js +2 -0
- package/dist/stzh-components/{p-2d405b51.js.map → p-6e49f741.js.map} +1 -1
- package/dist/stzh-components/{p-3912a256.entry.js → p-8273e37d.entry.js} +2 -2
- package/dist/stzh-components/p-8273e37d.entry.js.map +1 -0
- package/dist/stzh-components/p-909f7fc0.entry.js.map +1 -1
- package/dist/stzh-components/p-94947ab0.entry.js.map +1 -1
- package/dist/stzh-components/{p-d9fa718c.entry.js → p-995bee31.entry.js} +2 -2
- package/dist/stzh-components/p-995bee31.entry.js.map +1 -0
- package/dist/stzh-components/p-9c1b3929.entry.js.map +1 -1
- package/dist/stzh-components/p-aa3e4203.entry.js.map +1 -1
- package/dist/stzh-components/p-b273f95c.entry.js.map +1 -1
- package/dist/stzh-components/p-b397337c.entry.js.map +1 -1
- package/dist/stzh-components/p-b41d255f.entry.js.map +1 -1
- package/dist/stzh-components/{p-2ba166dd.entry.js → p-b5c781bc.entry.js} +2 -2
- package/dist/stzh-components/{p-2ba166dd.entry.js.map → p-b5c781bc.entry.js.map} +1 -1
- package/dist/stzh-components/{p-ab2aee99.entry.js → p-b87781f5.entry.js} +2 -2
- package/dist/stzh-components/{p-ab2aee99.entry.js.map → p-b87781f5.entry.js.map} +1 -1
- package/dist/stzh-components/p-ba716237.entry.js.map +1 -1
- package/dist/stzh-components/p-bdff55a6.entry.js.map +1 -1
- package/dist/stzh-components/p-bfe8d5cc.entry.js +2 -0
- package/dist/stzh-components/p-bfe8d5cc.entry.js.map +1 -0
- package/dist/stzh-components/p-cb569e91.entry.js.map +1 -1
- package/dist/stzh-components/p-d0ecdd5b.entry.js.map +1 -1
- package/dist/stzh-components/p-d48ecb2f.entry.js.map +1 -1
- package/dist/stzh-components/p-d7697cf8.entry.js.map +1 -1
- package/dist/stzh-components/p-dcfe93da.entry.js.map +1 -1
- package/dist/stzh-components/{p-8b04698a.entry.js → p-f18978b5.entry.js} +2 -2
- package/dist/stzh-components/p-f18978b5.entry.js.map +1 -0
- package/dist/stzh-components/stzh-components.esm.js +1 -1
- package/dist/stzh-components/stzh-components.esm.js.map +1 -1
- package/dist/types/components/stzh-audio/stzh-audio.d.ts +1 -0
- package/dist/types/components/stzh-breadcrumb/stzh-breadcrumb.d.ts +1 -1
- package/dist/types/components/stzh-card-navigation/stzh-card-navigation.d.ts +2 -0
- package/dist/types/components/stzh-card-searchresult/stzh-card-searchresult.d.ts +2 -0
- package/dist/types/components/stzh-card-superteaser/stzh-card-superteaser.d.ts +3 -1
- package/dist/types/components/stzh-carousel/stzh-carousel.d.ts +1 -1
- package/dist/types/components/stzh-clamp/stzh-clamp.d.ts +1 -1
- package/dist/types/components/stzh-datalist/stzh-datalist.d.ts +1 -0
- package/dist/types/components/stzh-datamessagelist/stzh-datamessagelist.d.ts +1 -0
- package/dist/types/components/stzh-datatable/stzh-datatable.d.ts +2 -1
- package/dist/types/components/stzh-dialog/stzh-dialog.d.ts +1 -0
- package/dist/types/components/stzh-ghettobox/stzh-ghettobox.d.ts +1 -0
- package/dist/types/components/stzh-header/stzh-header.d.ts +1 -0
- package/dist/types/components/stzh-link/stzh-link.d.ts +1 -1
- package/dist/types/components/stzh-pagebottom/stzh-pagebottom.d.ts +1 -0
- package/dist/types/components/stzh-pagecontent/stzh-pagecontent.d.ts +1 -0
- package/dist/types/components/stzh-pagetitle/stzh-pagetitle.d.ts +2 -1
- package/dist/types/components/stzh-pagetitle-hero/stzh-pagetitle-hero.d.ts +1 -0
- package/dist/types/components/stzh-pi-pagetitle/stzh-pi-pagetitle.d.ts +4 -0
- package/dist/types/components/stzh-pi-quote/stzh-pi-quote.d.ts +3 -0
- package/dist/types/components/stzh-search/stzh-search.d.ts +1 -0
- package/dist/types/components/stzh-sticky/stzh-sticky.d.ts +1 -1
- package/dist/types/components/stzh-sticky-actions/stzh-sticky-actions.d.ts +2 -0
- package/dist/types/components/stzh-table/stzh-table.d.ts +2 -0
- package/dist/types/components/stzh-vbz-intro/stzh-vbz-intro.d.ts +3 -0
- package/dist/types/components/stzh-youtube/stzh-youtube.d.ts +2 -1
- package/dist/types/components.d.ts +26 -2
- package/dist/types/index.d.ts +4 -0
- package/dist/vscode-data.json +13 -1
- package/package.json +1 -1
- package/dist/stzh-components/p-2d405b51.js +0 -2
- package/dist/stzh-components/p-30a7c058.entry.js.map +0 -1
- package/dist/stzh-components/p-3912a256.entry.js.map +0 -1
- package/dist/stzh-components/p-39acdb68.entry.js +0 -2
- package/dist/stzh-components/p-39acdb68.entry.js.map +0 -1
- package/dist/stzh-components/p-8b04698a.entry.js.map +0 -1
- package/dist/stzh-components/p-acef653a.entry.js +0 -2
- package/dist/stzh-components/p-acef653a.entry.js.map +0 -1
- package/dist/stzh-components/p-c169f243.entry.js +0 -2
- package/dist/stzh-components/p-c169f243.entry.js.map +0 -1
- package/dist/stzh-components/p-d9fa718c.entry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-header.js","sourceRoot":"","sources":["../../../../src/components/stzh-header/stzh-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Listen,\n Method,\n Prop,\n readTask,\n State,\n Watch,\n writeTask,\n} from \"@stencil/core\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { media } from \"../../utils/media-utils\";\nimport {\n StzhDropdownOption,\n StzhHeaderLanguageChangeEvent,\n StzhHeaderMenuItem,\n StzhHeaderMenuItemClickEvent,\n StzhHeaderMetanavItem,\n StzhHeaderMetanavItemButton,\n StzhHeaderMetanavItemButtonClickEvent,\n StzhHeaderMetanavItemChild,\n StzhHeaderMetanavItemChildClickEvent,\n StzhHeaderMetanavItemClickEvent,\n StzhHeaderSearchChangedEvent,\n StzhHeaderSearchChangeEvent,\n} from \"../../index\";\n\nimport { tabbable } from \"tabbable\";\nimport { createBaseFocusTrapOptions } from \"../../utils/overlay-utils\";\nimport { createFocusTrap, FocusTrap } from \"focus-trap\";\n\nimport { StzhHeaderLocalizedText } from \"./stzh-header.localization\";\n\nconst CLASS_BODY_OPEN = \"stzh-header-open\";\n\n// for flyout a11y see also: https://www.w3.org/WAI/tutorials/menus/flyout/\n\n/**\n * @slot logo - Slot for brand logo\n * @slot menu-before - Slot for custom elements before other menu elements\n * @slot menu-after - Slot for custom elements after other menu elements\n * @slot metanav-before - Slot for custom elements before other metanav elements\n * @slot metanav-after - Slot for custom elements after other metanav elements\n */\n@Component({\n tag: \"stzh-header\",\n styleUrl: \"stzh-header.scss\",\n scoped: true,\n})\nexport class StzhHeader {\n /** Translation strings */\n @Prop() localization: StzhHeaderLocalizedText;\n\n /** Portal link (for logo) */\n @Prop() href: string = \"https://www.stadt-zuerich.ch\";\n\n /** Menu element ID */\n @Prop() menuId: string = \"anchorNavMain\";\n\n /** Search element ID */\n @Prop() searchId: string = \"anchorSearch\";\n\n /** Metanav element ID */\n @Prop() metanavId: string = \"anchorNavMeta\";\n\n /** Language element ID */\n @Prop() languageId: string = \"anchorNavLang\";\n\n /**\n * Type of logo (used for setting the correct height).\n * Will enlarge the logo to 100% by default (default logos are using whitespace).\n */\n @Prop({ reflect: true }) logoType: \"default\" | \"vbz\" | \"aoz\" | \"pkzh\" | \"uvz\" = \"default\";\n\n /** Menu navigation items */\n @Prop() menuItems: StzhHeaderMenuItem[] | string = [];\n private _menuItems: StzhHeaderMenuItem[];\n\n /** Overwrite menu back label */\n @Prop() menuBackLabel: string;\n\n /** Meta navigation items */\n @Prop() metanavItems: StzhHeaderMetanavItem[] | string = [];\n private _metanavItems: StzhHeaderMetanavItem[];\n\n /** Current language page path */\n @Prop({ mutable: true }) languageActive: string;\n\n /** Available language (paths) in language switch */\n @Prop() languages: StzhDropdownOption[] | string = [];\n private _languages: StzhDropdownOption[];\n\n /** Prevent url change when language has changed (will only fire `stzhLanguageChange`) */\n @Prop() languagePreventUrlchange: boolean = false;\n\n /** Whether language switch should stay on mobile */\n @Prop() languageStay: boolean = false;\n\n /** Whether language switch should stay on mobile */\n @Prop() hideMetabar: boolean = false;\n\n /** Search form action (if given, searchfield will be shown) */\n @Prop() searchAction: string;\n\n /** Search field name */\n @Prop() searchFieldName: string = \"q\";\n\n /** Search input value */\n @Prop() searchValue: string = \"\";\n\n /** Sticky behaviour */\n @Prop() sticky: \"default\" | \"disabled\" | \"always-full\" | \"always\" = \"default\";\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the logo link element.\n * Default value is \"Header Logo\".\n */\n @Prop() logoAnalyticsId: string;\n\n @State() hideLogo: boolean = false;\n @State() headerHeight: number;\n @State() paddingTop: number;\n @State() stickyActive: boolean = false;\n @State() flyoutOpen: boolean = false;\n @State() flyoutSearchOpen: boolean = false;\n @State() searchFilled: boolean;\n\n @State() fixed: boolean = false;\n @State() fixedTransition: boolean = false;\n\n @State() currentOpenMenuItem: StzhHeaderMenuItem = null;\n @State() currentOpenMetanavItem: StzhHeaderMetanavItem = null;\n @State() currentOpenLanguage: boolean = false;\n private openSubmenuElement: HTMLElement;\n\n @Element() element: HTMLStzhHeaderElement;\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeydown(event: KeyboardEvent) {\n if (event.key === \"Escape\") {\n this.flyoutOpen = false;\n this.flyoutSearchOpen = false;\n }\n }\n\n @Listen(\"stzhOverlayCloseClick\")\n flyoutCloseClicked() {\n this.flyoutSearchOpen = false;\n this.updatePosition();\n }\n\n @Watch(\"flyoutOpen\")\n @Watch(\"flyoutSearchOpen\")\n async flyoutOpenWatcher(open: boolean) {\n if (!open) {\n // reset current open menu when flyout was closed\n this.currentOpenMenuItem = null;\n this.currentOpenMetanavItem = null;\n this.currentOpenLanguage = null;\n // reset further flags\n this.flyoutOpenedByMetanavItem = false;\n\n document.body.classList.remove(CLASS_BODY_OPEN);\n this.enableSiblings();\n\n if (this.trap) {\n this.trap.deactivate();\n }\n } else {\n document.body.classList.add(CLASS_BODY_OPEN);\n this.disableSiblings();\n\n if (this.trap) {\n this.trap.activate();\n }\n }\n }\n\n @Watch(\"fixed\")\n @Watch(\"flyoutOpen\")\n @Watch(\"flyoutSearchOpen\")\n @Watch(\"headerHeight\")\n async fixedWatcher() {\n this.paddingTop = this.fixed || this.flyoutOpen || this.flyoutSearchOpen ? this.headerHeight : 0;\n // we don't want to run transitions on applying fixed class (out transition),\n // so we set them in the next render\n await this.waitForNextRender();\n this.fixedTransition = this.fixed || this.flyoutOpen || this.flyoutSearchOpen;\n }\n\n @Watch(\"sticky\")\n stickyWatcher() {\n this.updatePosition();\n }\n\n /** Update position / sticky state of header */\n @Method()\n async updatePosition() {\n if (this.flyoutOpen || this.flyoutSearchOpen) {\n return;\n }\n\n const activateSticky = () => {\n this.stickyActive = true;\n document.documentElement.style.setProperty(\"--stzh-header-is-stuck\", \"1\");\n document.documentElement.style.setProperty(\"--stzh-header-is-not-stuck\", \"0\");\n };\n\n const disableSticky = () => {\n document.documentElement.style.setProperty(\"--stzh-header-is-stuck\", \"0\");\n document.documentElement.style.setProperty(\"--stzh-header-is-not-stuck\", \"1\");\n this.stickyActive = false;\n };\n\n if (this.sticky === \"disabled\") {\n disableSticky();\n } else if (this.sticky === \"always-full\") {\n activateSticky();\n } else if (this.sticky === \"always\") {\n if (this.belowStayStickyPoint) {\n activateSticky();\n } else {\n disableSticky();\n }\n } else {\n if (this.scrollingUp && this.belowStayStickyPoint) {\n if (!this.stickyActive && this.belowStartStickyPoint) {\n activateSticky();\n }\n } else {\n if (this.stickyActive && this.belowStayStickyPoint) {\n disableSticky();\n } else {\n disableSticky();\n }\n }\n }\n }\n\n @Listen(\"scroll\", { target: \"window\" })\n scrollListener() {\n if (this.sticky === \"disabled\") {\n return;\n }\n\n readTask(() => {\n this.currentScrollY = window.scrollY;\n this.scrollingUp = this.lastScrollY && this.lastScrollY > this.currentScrollY;\n this.lastScrollY = this.currentScrollY;\n\n this.belowStayStickyPoint = this.currentScrollY > this.logobarHeight;\n this.belowStartStickyPoint = this.currentScrollY > this.headerHeight;\n\n this.fixed =\n this.belowStartStickyPoint ||\n (this.scrollingUp && this.belowStayStickyPoint && this.stickyActive) ||\n (this.sticky === \"always\" && this.belowStayStickyPoint) ||\n this.sticky === \"always-full\";\n\n this.headerOverlap = (this.headerTop - this.currentScrollY) / -1;\n this.hideLogo = this.sticky !== \"always-full\" && this.isMedium && this.headerOverlap > 1;\n });\n\n writeTask(() => {\n this.updatePosition();\n });\n }\n\n /** Metanav item click event */\n @Event() stzhMetanavItemClick: EventEmitter<StzhHeaderMetanavItemClickEvent>;\n\n /** Metanav item child click event */\n @Event() stzhMetanavItemChildClick: EventEmitter<StzhHeaderMetanavItemChildClickEvent>;\n\n /** Metanav item button click event */\n @Event() stzhMetanavItemButtonClick: EventEmitter<StzhHeaderMetanavItemButtonClickEvent>;\n\n /** Metanav item click event */\n @Event() stzhMenuItemClick: EventEmitter<StzhHeaderMenuItemClickEvent>;\n\n /** Language change event */\n @Event() stzhLanguageChange: EventEmitter<StzhHeaderLanguageChangeEvent>;\n\n /** Search input change event */\n @Event() stzhSearchChange: EventEmitter<StzhHeaderSearchChangeEvent>;\n\n /** Search input changed event */\n @Event() stzhSearchChanged: EventEmitter<StzhHeaderSearchChangedEvent>;\n\n @Watch(\"searchValue\")\n searchValueWatcher(newValue: string) {\n this.searchFilled = newValue !== \"\";\n }\n\n @Watch(\"menuItems\")\n menuItemsWatcher(newValue: StzhHeaderMenuItem[] | string) {\n if (typeof newValue === \"string\") {\n this._menuItems = JSON.parse(newValue);\n } else {\n this._menuItems = newValue;\n }\n\n this._menuItems = this._menuItems.map((menuItem, index) => ({\n id: `submenu-${index}`,\n ...menuItem,\n }));\n }\n\n @Watch(\"metanavItems\")\n metanavItemsWatcher(newValue: StzhHeaderMetanavItem[] | string) {\n if (typeof newValue === \"string\") {\n this._metanavItems = JSON.parse(newValue);\n } else {\n this._metanavItems = newValue;\n }\n\n this._metanavItems = this._metanavItems.map((metanavItem, index) => ({\n id: `metanav-submenu-${index}`,\n ...metanavItem,\n }));\n }\n\n @Watch(\"languages\")\n languagesWatcher(newValue: StzhDropdownOption[] | string) {\n if (typeof newValue === \"string\") {\n this._languages = JSON.parse(newValue);\n } else {\n this._languages = newValue;\n }\n }\n\n private renderPromiseResolve: (value?: unknown) => void;\n\n private currentScrollY: number;\n private lastScrollY: number;\n private headerOverlap: number;\n private scrollingUp: boolean;\n private belowStayStickyPoint: boolean;\n private belowStartStickyPoint: boolean;\n\n private headerTop: number;\n // private innerHeight: number;\n private mainHeight: number;\n private metabarHeight: number;\n private logobarHeight: number;\n\n private isMedium: boolean;\n\n private debounceResize: number;\n private resizeObserver: ResizeObserver;\n private flyoutResizeObserver: ResizeObserver;\n\n // private innerElement: HTMLDivElement;\n private mainElement: HTMLDivElement;\n private logobarElement: HTMLDivElement;\n private metabarElement: HTMLDivElement;\n private menunavElement: HTMLElement;\n private flyoutElement: HTMLElement;\n private flyoutSearchElement: HTMLElement;\n\n private searchInput: HTMLInputElement;\n\n private lastOpener: HTMLButtonElement | null = null;\n private flyoutOpenedByMetanavItem: boolean = null;\n\n private trap: FocusTrap;\n private _parentElement: HTMLElement;\n\n private getSiblings() {\n if (!this._parentElement) {\n return [];\n }\n\n return Array.from(this._parentElement.children).filter(child => child !== this.element);\n }\n\n private disableSiblings() {\n this.getSiblings().forEach(sibling => {\n sibling.setAttribute(\"aria-hidden\", \"true\");\n });\n }\n\n private enableSiblings() {\n this.getSiblings().forEach(sibling => {\n sibling.removeAttribute(\"aria-hidden\");\n });\n }\n\n private waitForNextRender() {\n return new Promise(resolve => (this.renderPromiseResolve = resolve));\n }\n\n private resizeMenunavElement() {\n // reset height when metanav is sticky, or on medium or no submenu element is open\n if (media(\"headerMetanavSticky\").matches || media(\"medium\").matches || !this.openSubmenuElement) {\n Object.assign(this.menunavElement.style, {\n height: null,\n });\n } else {\n const { height } = this.openSubmenuElement.getBoundingClientRect();\n Object.assign(this.menunavElement.style, {\n height: `${height}px`,\n });\n }\n }\n\n private async openMenuItem(event: MouseEvent, menuItem: StzhHeaderMenuItem) {\n this.flyoutOpen = true;\n\n this.lastOpener = event.currentTarget as HTMLButtonElement;\n this.openSubmenuElement = this.element.querySelector(`#${menuItem.id}`) as HTMLElement;\n this.currentOpenMenuItem = menuItem;\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n this.menunavElement.scrollTop = 0;\n\n const firstButtonOrLink = this.openSubmenuElement && tabbable(this.openSubmenuElement)[0];\n firstButtonOrLink?.focus();\n\n this.resizeMenunavElement();\n });\n }\n\n private async closeMenuItem(focusOpener: boolean = true) {\n this.openSubmenuElement = null;\n this.currentOpenMenuItem = null;\n await this.waitForNextRender();\n\n if (focusOpener) {\n requestAnimationFrame(() => {\n this.lastOpener.focus();\n this.lastOpener = null;\n\n this.resizeMenunavElement();\n });\n }\n }\n\n private async openMetanavItem(event: MouseEvent, metanavItem: StzhHeaderMetanavItem) {\n if (!this.flyoutOpen) {\n this.flyoutOpenedByMetanavItem = true;\n this.flyoutOpen = true;\n }\n\n this.lastOpener = event.currentTarget as HTMLButtonElement;\n this.currentOpenMetanavItem = metanavItem;\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n const openMetanavSubmenuElement = this.element.querySelector(`#${metanavItem.id}`);\n const firstButtonOrLink = openMetanavSubmenuElement && tabbable(openMetanavSubmenuElement)[0];\n firstButtonOrLink?.focus();\n });\n }\n\n private async closeMetanavItem() {\n this.currentOpenMetanavItem = null;\n\n if (this.flyoutOpenedByMetanavItem) {\n this.flyoutOpen = false;\n }\n\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n this.lastOpener.focus();\n this.lastOpener = null;\n });\n }\n\n private async openLanguage(event: MouseEvent) {\n if (!this.flyoutOpen) {\n this.flyoutOpenedByMetanavItem = true;\n this.flyoutOpen = true;\n }\n\n this.lastOpener = event.currentTarget as HTMLButtonElement;\n this.currentOpenLanguage = true;\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n const openMetanavSubmenuElement = this.element.querySelector(\"#submenu-languages\");\n const firstButtonOrLink = openMetanavSubmenuElement && tabbable(openMetanavSubmenuElement)[0];\n firstButtonOrLink?.focus();\n });\n }\n\n private async closeLanguage() {\n this.currentOpenLanguage = false;\n\n if (this.flyoutOpenedByMetanavItem) {\n this.flyoutOpen = false;\n }\n\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n this.lastOpener.focus();\n this.lastOpener = null;\n });\n }\n\n private handleMenuListFocusout = (event: FocusEvent) => {\n const isNextFocusOutOfMenuList = !(event.currentTarget as HTMLElement).contains(event.relatedTarget as HTMLElement);\n\n if (this.isMedium && isNextFocusOutOfMenuList) {\n this.closeMenuItem(false);\n }\n };\n\n private handleBurgerClick = async () => {\n if (this.flyoutOpenedByMetanavItem) {\n this.flyoutOpenedByMetanavItem = false;\n this.closeMetanavItem();\n } else {\n this.flyoutSearchOpen = false;\n this.flyoutOpen = !this.flyoutOpen;\n }\n\n // focus first menu item\n const element = this.element.querySelector(\".stzh-header__menu-item\") as HTMLElement;\n\n if (element) {\n window.setTimeout(() => {\n element.focus();\n }, 100);\n }\n\n this.updatePosition();\n };\n\n private handleSearchButtonClick = async () => {\n this.flyoutOpen = false;\n this.flyoutSearchOpen = !this.flyoutSearchOpen;\n\n // focus first search input\n const element = this.element.querySelector(\".stzh-search input[type='search']\") as HTMLElement;\n\n if (element) {\n window.setTimeout(() => {\n element.focus();\n }, 100);\n }\n this.updatePosition();\n };\n\n private handleBackdropClick = async () => {\n this.flyoutOpen = false;\n this.updatePosition();\n };\n\n private handleBackdropSearchClick = async () => {\n this.flyoutSearchOpen = false;\n this.updatePosition();\n };\n\n private handleMetanavItemClick = (event: MouseEvent, item: StzhHeaderMetanavItem) => {\n this.stzhMetanavItemClick.emit({\n component: \"stzh-header\",\n item,\n originalEvent: event,\n });\n };\n\n private handleMetanavItemChildClick = (event: MouseEvent, itemChild: StzhHeaderMetanavItemChild) => {\n this.stzhMetanavItemChildClick.emit({\n component: \"stzh-header\",\n itemChild: itemChild,\n originalEvent: event,\n });\n };\n\n private handleMetanavItemButtonClick = (event: MouseEvent, itemButton: StzhHeaderMetanavItemButton) => {\n this.stzhMetanavItemButtonClick.emit({\n component: \"stzh-header\",\n itemButton: itemButton,\n originalEvent: event,\n });\n };\n\n private handleMenuItemClick = (event: MouseEvent, item: StzhHeaderMenuItem) => {\n this.flyoutOpen = false;\n this.stzhMenuItemClick.emit({\n component: \"stzh-header\",\n item,\n originalEvent: event,\n });\n };\n\n private handleSearchInput = (event: InputEvent) => {\n this.searchValue = this.searchInput.value;\n\n this.stzhSearchChange.emit({\n component: \"stzh-header\",\n originalEvent: event,\n value: this.searchValue,\n });\n };\n\n private handleSearchChange = (event: InputEvent) => {\n this.searchValue = this.searchInput.value;\n this.stzhSearchChanged.emit({\n component: \"stzh-header\",\n originalEvent: event,\n value: this.searchValue,\n });\n };\n\n private handleLanguageClick = (event: MouseEvent, dropdownOption: StzhDropdownOption) => {\n if (this.languagePreventUrlchange) {\n event.preventDefault();\n }\n this.languageActive = dropdownOption.value;\n\n this.stzhLanguageChange.emit({\n component: \"stzh-header\",\n value: this.languageActive,\n });\n };\n\n private handleFlyoutResize = () => {\n this.resizeMenunavElement();\n };\n\n private handleResize = () => {\n if (this.sticky === \"disabled\") {\n return;\n }\n\n if (this.debounceResize) {\n window.cancelAnimationFrame(this.debounceResize);\n }\n\n this.debounceResize = requestAnimationFrame(() => {\n readTask(() => {\n this.isMedium = media(\"medium\").matches;\n\n this.mainHeight = this.mainElement?.offsetHeight || 0;\n this.metabarHeight = this.metabarElement?.offsetHeight || 0;\n this.logobarHeight = this.logobarElement?.offsetHeight || 0;\n\n this.headerTop = this.element.offsetTop;\n this.headerHeight = this.metabarHeight + this.logobarHeight;\n });\n\n writeTask(() => {\n document.documentElement.style.setProperty(\"--stzh-header-height\", `${this.headerHeight}px`);\n document.documentElement.style.setProperty(\"--stzh-header-main-height\", `${this.mainHeight}px`);\n document.documentElement.style.setProperty(\"--stzh-header-metabar-height\", `${this.metabarHeight}px`);\n document.documentElement.style.setProperty(\"--stzh-header-logobar-height\", `${this.logobarHeight}px`);\n });\n\n this.scrollListener();\n });\n };\n\n async componentWillLoad() {\n this.menuItemsWatcher(this.menuItems);\n this.metanavItemsWatcher(this.metanavItems);\n this.languagesWatcher(this.languages);\n this.searchValueWatcher(this.searchValue);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"header\");\n }\n }\n\n componentDidRender() {\n if (this.renderPromiseResolve) {\n this.renderPromiseResolve();\n }\n\n if (this.flyoutElement && this.flyoutResizeObserver) {\n this.flyoutResizeObserver.observe(this.flyoutElement);\n }\n if (this.flyoutSearchElement && this.flyoutResizeObserver) {\n this.flyoutResizeObserver.observe(this.flyoutSearchElement);\n }\n }\n\n componentDidLoad() {\n this.trap = createFocusTrap(this.element, {\n ...createBaseFocusTrapOptions(),\n initialFocus: false,\n });\n\n this.flyoutResizeObserver = new ResizeObserver(this.handleFlyoutResize);\n if (this.flyoutElement) {\n this.flyoutResizeObserver.observe(this.flyoutElement);\n }\n }\n\n connectedCallback() {\n this._parentElement = this.element.parentElement;\n\n this.resizeObserver = new ResizeObserver(this.handleResize);\n this.resizeObserver.observe(this.element);\n }\n\n disconnectedCallback() {\n this.flyoutOpenWatcher(false);\n this.resizeObserver?.disconnect();\n this.flyoutResizeObserver?.disconnect();\n }\n\n render() {\n const metanavBeforeUsed: boolean = hasSlot(this.element, \"metanav-before\");\n const metanavAfterUsed: boolean = hasSlot(this.element, \"metanav-after\");\n\n const classes = {\n \"stzh-header\": true,\n \"stzh-header--is-flyout-open\": this.flyoutOpen,\n \"stzh-header--is-flyout-search-open\": this.flyoutSearchOpen,\n \"stzh-header--is-search-filled\": this.searchFilled,\n \"stzh-header--is-fixed\": this.fixed,\n \"stzh-header--is-fixed-transition\": this.fixedTransition,\n \"stzh-header--is-sticky\": this.stickyActive,\n \"stzh-header--is-sticky-transition\": this.stickyActive && this.fixedTransition,\n \"stzh-header--hide-logo\": this.hideLogo,\n \"stzh-header--has-empty-metabar-mobile\":\n !metanavBeforeUsed &&\n !metanavAfterUsed &&\n this._metanavItems.filter(item => item.stay || item.stayAndShowInMobileMenu).length === 0 &&\n this._menuItems.length === 0 &&\n (this._languages.length === 0 || (this._languages.length > 0 && !this.languageStay)) &&\n !this.searchAction,\n \"stzh-header--has-empty-metabar\":\n !metanavBeforeUsed &&\n !metanavAfterUsed &&\n this._metanavItems.length === 0 &&\n this._menuItems.length === 0 &&\n this._languages.length === 0 &&\n !this.searchAction,\n [`stzh-header--sticky-${this.sticky}`]: !!this.sticky,\n };\n\n const activeLanguage = this.languageActive || window.stzhComponents.utils.getLocale(this.element);\n const activeLanguageOption =\n this._languages?.find(({ value }) => value === activeLanguage) || this._languages?.[0] || null;\n\n const renderMetanavItemButton = (\n item: StzhHeaderMetanavItem,\n additionalClasses?: { [className: string]: boolean },\n additionalAttributes?: any\n ) => {\n const Element = item.items?.length > 0 || item.itemButton || !item.href ? \"button\" : \"a\";\n\n return (\n <Element\n {...additionalAttributes}\n href={Element === \"a\" && item.href}\n target={Element === \"a\" && item.target}\n class={{\n \"stzh-header__metanav-item\": true,\n \"is-heavy\": item.important,\n \"is-stay\": item.stay || item.stayAndShowInMobileMenu,\n ...(additionalClasses || {}),\n }}\n >\n <span\n class={{\n \"stzh-header__metanav-item-text\": true,\n \"is-vhidden\": item.labelHidden,\n \"has-no-short-label\": !item.labelShort,\n }}\n >\n <span class=\"stzh-header__metanav-item-text-label-long\">{item.label}</span>\n <span class=\"stzh-header__metanav-item-text-label-short\" aria-hidden=\"true\">\n {item.labelShort}\n </span>\n </span>\n {item.icon && (\n <span class=\"stzh-header__metanav-icon-wrapper\">\n {item.icon && (\n <stzh-icon\n class={`stzh-header__metanav-icon ${item.iconOpen ? \"is-close\" : \"\"}`}\n name={item.icon}\n ></stzh-icon>\n )}\n {item.iconOpen && <stzh-icon class=\"stzh-header__metanav-icon is-open\" name={item.iconOpen}></stzh-icon>}\n {(item.badge || item.badgeEmpty) && (\n <stzh-badge\n class=\"stzh-header__metanav-icon-badge\"\n label={item.badge}\n type={typeof item.badgeType === \"undefined\" ? \"error\" : item.badgeType}\n ></stzh-badge>\n )}\n </span>\n )}\n </Element>\n );\n };\n\n return (\n <Host>\n <header class={classes}>\n <div class=\"stzh-header__header\" style={{ paddingTop: `${this.paddingTop}px` }}>\n <div\n class=\"stzh-header__inner\"\n // ref={(el) => (this.innerElement = el as HTMLDivElement)}\n >\n <div class=\"stzh-header__main\" ref={el => (this.mainElement = el as HTMLDivElement)}>\n <div class=\"stzh-header__logobar\" ref={el => (this.logobarElement = el as HTMLDivElement)}>\n <div class=\"stzh-header__logobar-logo\">\n <a\n href={this.href}\n class=\"stzh-header__logo-link\"\n s-object-id={this.logoAnalyticsId || \"Header Logo\"}\n >\n <slot name=\"logo\"></slot>\n </a>\n </div>\n <div class=\"stzh-header__logobar-decoration\"></div>\n </div>\n\n {!this.hideMetabar && (\n <div class=\"stzh-header__metabar\" ref={el => (this.metabarElement = el as HTMLDivElement)}>\n <div class=\"stzh-header__metabar-inner\">\n <slot name=\"menu-before\"></slot>\n\n {this._menuItems.length > 0 && (\n <button\n id={this.menuId}\n class={`stzh-header__burger ${\n this.flyoutOpen && !this.flyoutOpenedByMetanavItem && \"is-open\"\n }`}\n onClick={this.handleBurgerClick}\n >\n <stzh-icon class=\"stzh-header__burger-icon is-close\" name=\"menu\"></stzh-icon>\n <stzh-icon class=\"stzh-header__burger-icon is-open\" name=\"close\"></stzh-icon>\n <div class=\"stzh-header__burger-text\">{this.localization.menuLabel}</div>\n </button>\n )}\n {this.searchAction && !hasSlot(this.element, \"search\") && (\n <form class=\"stzh-header__metabar-search\" action={this.searchAction} role=\"search\">\n <label class=\"stzh-header__search\">\n <input\n id={this.searchId}\n ref={el => (this.searchInput = el as HTMLInputElement)}\n class=\"stzh-header__search-input\"\n type=\"search\"\n name={this.searchFieldName}\n onChange={this.handleSearchChange}\n onInput={this.handleSearchInput}\n ></input>\n <stzh-icon class=\"stzh-header__search-icon\" name=\"search\"></stzh-icon>\n <div class=\"stzh-header__search-text\">{this.localization.searchLabel}</div>\n </label>\n </form>\n )}\n {hasSlot(this.element, \"search\") && (\n <stzh-button\n iconPosition={\"left\"}\n onClick={this.handleSearchButtonClick}\n variant=\"tertiary-plain\"\n size=\"small\"\n >\n <stzh-icon\n slot=\"icon\"\n name=\"search\"\n class={this.flyoutSearchOpen ? \"stzh-header__search-button--is-hidden\" : \"\"}\n ></stzh-icon>\n <stzh-icon\n slot=\"icon\"\n name=\"close\"\n class={this.flyoutSearchOpen ? \"\" : \"stzh-header__search-button--is-hidden\"}\n ></stzh-icon>\n {this.localization.searchLabel}\n </stzh-button>\n )}\n\n <slot name=\"menu-after\"></slot>\n\n <div class=\"stzh-header__metabar-nav\" id={this.metanavId}>\n <slot name=\"metanav-before\"></slot>\n\n {this._metanavItems.map(item =>\n item.items?.length > 0 || item.itemButton ? (\n <Fragment>\n {renderMetanavItemButton(\n item,\n {\n \"is-popover-mobile\": true,\n },\n {\n \"aria-expanded\": item === this.currentOpenMetanavItem ? \"true\" : \"false\",\n \"aria-controls\": item.id,\n onClick: (e: MouseEvent) => {\n if (item === this.currentOpenMetanavItem) {\n this.closeMetanavItem();\n } else {\n this.openMetanavItem(e, item);\n }\n\n this.handleMetanavItemClick(e, item);\n },\n }\n )}\n <stzh-popover\n class={{\n \"stzh-header__metanav-popover\": true,\n }}\n placement=\"bottom-end\"\n distance={20}\n variant={item.variant}\n size={typeof item.size === \"undefined\" ? \"large\" : item.size}\n >\n {renderMetanavItemButton(\n item,\n {\n \"is-popover-desktop\": true,\n },\n {\n onClick: (e: MouseEvent) => {\n this.handleMetanavItemClick(e, item);\n },\n }\n )}\n <div slot=\"content\">\n {item.items?.length > 0 && (\n <stzh-menu>\n {item.items.map(childItem => (\n <stzh-menu-item\n class={{\n \"stzh-header__metanav-menu-item\": true,\n \"is-heavy\":\n typeof item.importantSubmenu === \"undefined\" || item.importantSubmenu,\n }}\n size={typeof item.size === \"undefined\" ? \"large\" : item.size}\n variant={item.variant}\n href={childItem.href}\n target={childItem.target}\n icon={childItem.icon}\n counter={childItem.counter}\n badge={childItem.badge}\n badgeType={childItem.badgeType}\n onClick={(e: MouseEvent) => {this.handleMetanavItemChildClick(e, childItem)}}\n >\n {childItem.label}\n </stzh-menu-item>\n ))}\n </stzh-menu>\n )}\n </div>\n {item.itemButton && (\n <stzh-button\n slot=\"action\"\n size={item.itemButton.size}\n href={item.itemButton.href}\n target={item.itemButton.target}\n onClick={(e: MouseEvent) => {this.handleMetanavItemButtonClick(e, item.itemButton)}}\n >\n {item.itemButton.label}\n </stzh-button>\n )}\n </stzh-popover>\n </Fragment>\n ) : (\n renderMetanavItemButton(\n item,\n {},\n {\n onClick: (e: MouseEvent) => {\n this.handleMetanavItemClick(e, item);\n },\n }\n )\n )\n )}\n\n {this._languages?.length > 0 && (\n <Fragment>\n <h2 id={this.languageId} class=\"stzh-header__vhidden\">\n {this.localization.languageLabel}\n </h2>\n {this._menuItems.length > 0 && this.languageStay && (\n <button\n class={{\n \"stzh-header__metanav-item\": true,\n \"is-popover-mobile\": true,\n \"is-stay\": this.languageStay,\n }}\n aria-expanded={this.currentOpenLanguage ? \"true\" : \"false\"}\n aria-controls=\"submenu-languages\"\n onClick={(e: MouseEvent) => {\n if (this.currentOpenLanguage) {\n this.closeLanguage();\n } else {\n this.openLanguage(e);\n }\n }}\n >\n <span class=\"stzh-header__metanav-item-text\">{activeLanguageOption?.text}</span>\n <stzh-icon class=\"stzh-header__metanav-icon is-close\" name=\"angle-down\"></stzh-icon>\n <stzh-icon class=\"stzh-header__metanav-icon is-open\" name=\"angle-up\"></stzh-icon>\n </button>\n )}\n <stzh-popover\n class=\"stzh-header__metanav-popover is-langnav\"\n placement=\"bottom-end\"\n distance={20}\n >\n <button\n class={{\n \"stzh-header__metanav-item\": true,\n \"is-popover-desktop\": this._menuItems.length > 0,\n \"is-stay\": this.languageStay,\n }}\n >\n <span class=\"stzh-header__metanav-item-text\">{activeLanguageOption?.text}</span>\n <stzh-icon class=\"stzh-header__metanav-icon is-close\" name=\"angle-down\"></stzh-icon>\n <stzh-icon class=\"stzh-header__metanav-icon is-open\" name=\"angle-up\"></stzh-icon>\n </button>\n <div slot=\"content\">\n <stzh-menu>\n {this._languages.map(language => (\n <stzh-menu-item\n class=\"stzh-header__metanav-menu-item\"\n active={activeLanguageOption?.value === language.value}\n href={language.value}\n onClick={event => this.handleLanguageClick(event, language)}\n >\n {language.text}\n </stzh-menu-item>\n ))}\n </stzh-menu>\n </div>\n </stzh-popover>\n </Fragment>\n )}\n\n <slot name=\"metanav-after\"></slot>\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n\n {this._menuItems.length > 0 && (\n <div ref={el => (this.flyoutElement = el as HTMLElement)} class=\"stzh-header__flyout\">\n <div class=\"stzh-header__flyout-backdrop\" onClick={this.handleBackdropClick}></div>\n <div class=\"stzh-header__flyout-scrollbar\"></div>\n <div class=\"stzh-header__menu\">\n <nav\n class=\"stzh-header__menu-nav\"\n ref={el => (this.menunavElement = el as HTMLElement)}\n aria-label={this.localization.navigationLabel}\n >\n <ul class=\"stzh-header__menu-list is-level-1\">\n {this._menuItems.map(item => (\n <li\n class={{\n \"stzh-header__menu-list-item\": true,\n \"is-open\": item === this.currentOpenMenuItem,\n }}\n >\n {item.items?.length > 0 ? (\n <button\n aria-expanded={item === this.currentOpenMenuItem ? \"true\" : \"false\"}\n aria-controls={item.id}\n class=\"stzh-header__menu-item is-level-1 has-items\"\n onClick={\n item === this.currentOpenMenuItem\n ? () => this.closeMenuItem()\n : e => this.openMenuItem(e, item)\n }\n >\n {item.label}\n </button>\n ) : (\n <a\n href={item.href}\n onClick={(e: MouseEvent) => this.handleMenuItemClick(e, item)}\n class=\"stzh-header__menu-item is-level-1\"\n >\n {item.label}\n </a>\n )}\n {item.items?.length > 0 && (\n <ul\n id={item.id}\n class=\"stzh-header__menu-list is-level-2\"\n onFocusout={this.handleMenuListFocusout}\n >\n <li class=\"stzh-header__menu-list-item is-backlink\">\n <button\n class=\"stzh-header__menu-item is-level-2 is-backlink\"\n onClick={() => this.closeMenuItem()}\n >\n <stzh-icon name=\"angle-left\"></stzh-icon>\n <span>{this.menuBackLabel ? this.menuBackLabel : this.localization.menuBackLabel}</span>\n </button>\n </li>\n <li class=\"stzh-header__menu-list-item\">\n <a\n href={item.href}\n onClick={(e: MouseEvent) => this.handleMenuItemClick(e, item)}\n class=\"stzh-header__menu-item is-level-2 is-main\"\n >\n {item.label}\n </a>\n </li>\n {item.items.map(item => (\n <li class=\"stzh-header__menu-list-item\">\n <a\n href={item.href}\n onClick={(e: MouseEvent) => this.handleMenuItemClick(e, item)}\n class=\"stzh-header__menu-item is-level-2\"\n >\n {item.label}\n </a>\n </li>\n ))}\n </ul>\n )}\n </li>\n ))}\n </ul>\n </nav>\n\n {(this._metanavItems?.length > 0 || this._languages?.length > 0) && (\n <div class=\"stzh-header__menu-metanav\">\n <nav class=\"stzh-header__menu-metanav-nav\">\n <ul class=\"stzh-header__menu-metanav-list is-level-1\">\n {this._metanavItems.map(item => (\n <li\n class={{\n \"stzh-header__menu-metanav-list-item\": true,\n \"is-open\": item === this.currentOpenMetanavItem,\n }}\n >\n {item.items?.length > 0 ? (\n <button\n aria-expanded={item === this.currentOpenMetanavItem ? \"true\" : \"false\"}\n aria-controls={item.id}\n class={{\n \"stzh-header__menu-metanav-item is-level-1\": true,\n \"is-hidden\": item.stay && !item.stayAndShowInMobileMenu,\n }}\n onClick={(e: MouseEvent) => {\n if (item === this.currentOpenMetanavItem) {\n this.closeMetanavItem();\n } else {\n this.openMetanavItem(e, item);\n }\n\n this.handleMetanavItemClick(e, item);\n }}\n >\n <span\n class={{\n \"stzh-header__menu-metanav-item-text\": true,\n \"is-vhidden\": item.labelHidden,\n }}\n >\n {item.label}\n </span>\n {item.icon && (\n <stzh-icon class=\"stzh-header__menu-metanav-item-icon\" name={item.icon}></stzh-icon>\n )}\n </button>\n ) : (\n <a\n href={item.href}\n class={{\n \"stzh-header__menu-metanav-item is-level-1\": true,\n \"is-hidden\": item.stay && !item.stayAndShowInMobileMenu,\n }}\n onClick={(e: MouseEvent) => {\n this.handleMetanavItemClick(e, item);\n }}\n >\n <span\n class={{\n \"stzh-header__menu-metanav-item-text\": true,\n \"is-vhidden\": item.labelHidden,\n }}\n >\n {item.label}\n </span>\n {item.icon && (\n <stzh-icon class=\"stzh-header__menu-metanav-item-icon\" name={item.icon}></stzh-icon>\n )}\n </a>\n )}\n {item.items?.length > 0 && (\n <ul id={item.id} class=\"stzh-header__menu-metanav-list is-level-2\">\n <li class=\"stzh-header__menu-metanav-list-item\">\n <div class=\"stzh-header__menu-metanav-item is-level-2 is-title\">\n <span>{item.label}</span>\n <stzh-button\n class=\"stzh-header__menu-metanav-item-icon\"\n variant=\"tertiary\"\n icon=\"close\"\n iconOnly={true}\n label={this.localization.closeMetanavMenuLabel?.replace(\n /\\{itemLabel\\}/gi,\n item.label\n )}\n onClick={() => this.closeMetanavItem()}\n ></stzh-button>\n </div>\n </li>\n {item.items.map(item => (\n <li class=\"stzh-header__menu-metanav-list-item\">\n <a href={item.href} class=\"stzh-header__menu-metanav-item is-level-2\">\n {item.icon && (\n <stzh-icon\n class=\"stzh-header__menu-metanav-item-icon\"\n name={item.icon}\n ></stzh-icon>\n )}\n <span class=\"stzh-header__menu-metanav-item-text\">\n <span>{item.label}</span>\n {item.counter && (\n <span class=\"stzh-header__menu-metanav-item-counter\">({item.counter})</span>\n )}\n </span>\n </a>\n </li>\n ))}\n\n {item.itemButton && (\n <li class=\"stzh-header__menu-metanav-list-item\">\n <div class=\"stzh-header__menu-metanav-item is-level-2 is-action\">\n <stzh-button href={item.itemButton.href} target={item.itemButton.target}>\n {item.itemButton.label}\n </stzh-button>\n </div>\n </li>\n )}\n </ul>\n )}\n </li>\n ))}\n\n {this._languages?.length > 0 && (\n <li\n class={{\n \"stzh-header__menu-metanav-list-item\": true,\n \"is-open\": this.currentOpenLanguage,\n }}\n >\n <button\n aria-expanded={this.currentOpenLanguage ? \"true\" : \"false\"}\n aria-controls=\"submenu-languages\"\n class=\"stzh-header__menu-metanav-item is-level-1\"\n onClick={e => this.openLanguage(e)}\n >\n <span>{activeLanguageOption?.text}</span>\n <stzh-icon class=\"stzh-header__menu-metanav-item-icon\" name=\"angle-down\"></stzh-icon>\n </button>\n <ul id=\"submenu-languages\" class=\"stzh-header__menu-metanav-list is-level-2\">\n <div class=\"stzh-header__menu-metanav-item is-level-2 is-title\">\n <span>{this.localization.dialogLanguageTitle}</span>\n <stzh-button\n class=\"stzh-header__menu-metanav-item-icon\"\n variant=\"tertiary\"\n icon=\"close\"\n iconOnly={true}\n label={\"Sprach-Dialog schliessen\"}\n onClick={() => this.closeLanguage()}\n ></stzh-button>\n </div>\n {this._languages.map(language => (\n <li class=\"stzh-header__menu-metanav-list-item\">\n <a\n class=\"stzh-header__menu-metanav-item is-level-2 is-language\"\n href={language.value}\n onClick={event => this.handleLanguageClick(event, language)}\n >\n <span>{language.text}</span>\n {activeLanguageOption?.value === language.value && (\n <stzh-icon\n class=\"stzh-header__menu-metanav-item-icon\"\n name=\"checkmark\"\n ></stzh-icon>\n )}\n </a>\n </li>\n ))}\n </ul>\n </li>\n )}\n </ul>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n\n {hasSlot(this.element, \"search\") && (\n <div ref={el => (this.flyoutSearchElement = el as HTMLElement)} class=\"stzh-header__flyout-search\">\n <div class=\"stzh-header__flyout-backdrop\" onClick={this.handleBackdropSearchClick}></div>\n <div class=\"stzh-header__flyout-scrollbar\"></div>\n <div class=\"stzh-header__flyout-search-main\">\n <slot name=\"search\"></slot>\n </div>\n </div>\n )}\n </header>\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"stzh-header.js","sourceRoot":"","sources":["../../../../src/components/stzh-header/stzh-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n Fragment,\n h,\n Host,\n Listen,\n Method,\n Prop,\n readTask,\n State,\n Watch,\n writeTask,\n} from \"@stencil/core\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { media } from \"../../utils/media-utils\";\nimport {\n StzhDropdownOption,\n StzhHeaderLanguageChangeEvent,\n StzhHeaderMenuItem,\n StzhHeaderMenuItemClickEvent,\n StzhHeaderMetanavItem,\n StzhHeaderMetanavItemButton,\n StzhHeaderMetanavItemButtonClickEvent,\n StzhHeaderMetanavItemChild,\n StzhHeaderMetanavItemChildClickEvent,\n StzhHeaderMetanavItemClickEvent,\n StzhHeaderSearchChangedEvent,\n StzhHeaderSearchChangeEvent,\n} from \"../../index\";\n\nimport { tabbable } from \"tabbable\";\nimport { createBaseFocusTrapOptions } from \"../../utils/overlay-utils\";\nimport { createFocusTrap, FocusTrap } from \"focus-trap\";\n\nimport { StzhHeaderLocalizedText } from \"./stzh-header.localization\";\n\nconst CLASS_BODY_OPEN = \"stzh-header-open\";\n\n// for flyout a11y see also: https://www.w3.org/WAI/tutorials/menus/flyout/\n\n/**\n * @slot logo - Slot for brand logo\n * @slot menu-before - Slot for custom elements before other menu elements\n * @slot menu-after - Slot for custom elements after other menu elements\n * @slot metanav-before - Slot for custom elements before other metanav elements\n * @slot metanav-after - Slot for custom elements after other metanav elements\n * @slot search - Slot for search element\n */\n@Component({\n tag: \"stzh-header\",\n styleUrl: \"stzh-header.scss\",\n scoped: true,\n})\nexport class StzhHeader {\n /** Translation strings */\n @Prop() localization: StzhHeaderLocalizedText;\n\n /** Portal link (for logo) */\n @Prop() href: string = \"https://www.stadt-zuerich.ch\";\n\n /** Menu element ID */\n @Prop() menuId: string = \"anchorNavMain\";\n\n /** Search element ID */\n @Prop() searchId: string = \"anchorSearch\";\n\n /** Metanav element ID */\n @Prop() metanavId: string = \"anchorNavMeta\";\n\n /** Language element ID */\n @Prop() languageId: string = \"anchorNavLang\";\n\n /**\n * Type of logo (used for setting the correct height).\n * Will enlarge the logo to 100% by default (default logos are using whitespace).\n */\n @Prop({ reflect: true }) logoType: \"default\" | \"vbz\" | \"aoz\" | \"pkzh\" | \"uvz\" = \"default\";\n\n /** Menu navigation items */\n @Prop() menuItems: StzhHeaderMenuItem[] | string = [];\n private _menuItems: StzhHeaderMenuItem[];\n\n /** Overwrite menu back label */\n @Prop() menuBackLabel: string;\n\n /** Meta navigation items */\n @Prop() metanavItems: StzhHeaderMetanavItem[] | string = [];\n private _metanavItems: StzhHeaderMetanavItem[];\n\n /** Current language page path */\n @Prop({ mutable: true }) languageActive: string;\n\n /** Available language (paths) in language switch */\n @Prop() languages: StzhDropdownOption[] | string = [];\n private _languages: StzhDropdownOption[];\n\n /** Prevent url change when language has changed (will only fire `stzhLanguageChange`) */\n @Prop() languagePreventUrlchange: boolean = false;\n\n /** Whether language switch should stay on mobile */\n @Prop() languageStay: boolean = false;\n\n /** Whether language switch should stay on mobile */\n @Prop() hideMetabar: boolean = false;\n\n /** Search form action (if given, searchfield will be shown) */\n @Prop() searchAction: string;\n\n /** Search field name */\n @Prop() searchFieldName: string = \"q\";\n\n /** Search input value */\n @Prop() searchValue: string = \"\";\n\n /** Sticky behaviour */\n @Prop() sticky: \"default\" | \"disabled\" | \"always-full\" | \"always\" = \"default\";\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the logo link element.\n * Default value is \"Header Logo\".\n */\n @Prop() logoAnalyticsId: string;\n\n @State() hideLogo: boolean = false;\n @State() headerHeight: number;\n @State() paddingTop: number;\n @State() stickyActive: boolean = false;\n @State() flyoutOpen: boolean = false;\n @State() flyoutSearchOpen: boolean = false;\n @State() searchFilled: boolean;\n\n @State() fixed: boolean = false;\n @State() fixedTransition: boolean = false;\n\n @State() currentOpenMenuItem: StzhHeaderMenuItem = null;\n @State() currentOpenMetanavItem: StzhHeaderMetanavItem = null;\n @State() currentOpenLanguage: boolean = false;\n private openSubmenuElement: HTMLElement;\n\n @Element() element: HTMLStzhHeaderElement;\n\n @Listen(\"keydown\", { target: \"document\" })\n handleKeydown(event: KeyboardEvent) {\n if (event.key === \"Escape\") {\n this.flyoutOpen = false;\n this.flyoutSearchOpen = false;\n }\n }\n\n @Listen(\"stzhOverlayCloseClick\")\n flyoutCloseClicked() {\n this.flyoutSearchOpen = false;\n this.updatePosition();\n }\n\n @Watch(\"flyoutOpen\")\n @Watch(\"flyoutSearchOpen\")\n async flyoutOpenWatcher(open: boolean) {\n if (!open) {\n // reset current open menu when flyout was closed\n this.currentOpenMenuItem = null;\n this.currentOpenMetanavItem = null;\n this.currentOpenLanguage = null;\n // reset further flags\n this.flyoutOpenedByMetanavItem = false;\n\n document.body.classList.remove(CLASS_BODY_OPEN);\n this.enableSiblings();\n\n if (this.trap) {\n this.trap.deactivate();\n }\n } else {\n document.body.classList.add(CLASS_BODY_OPEN);\n this.disableSiblings();\n\n if (this.trap) {\n this.trap.activate();\n }\n }\n }\n\n @Watch(\"fixed\")\n @Watch(\"flyoutOpen\")\n @Watch(\"flyoutSearchOpen\")\n @Watch(\"headerHeight\")\n async fixedWatcher() {\n this.paddingTop = this.fixed || this.flyoutOpen || this.flyoutSearchOpen ? this.headerHeight : 0;\n // we don't want to run transitions on applying fixed class (out transition),\n // so we set them in the next render\n await this.waitForNextRender();\n this.fixedTransition = this.fixed || this.flyoutOpen || this.flyoutSearchOpen;\n }\n\n @Watch(\"sticky\")\n stickyWatcher() {\n this.updatePosition();\n }\n\n /** Update position / sticky state of header */\n @Method()\n async updatePosition() {\n if (this.flyoutOpen || this.flyoutSearchOpen) {\n return;\n }\n\n const activateSticky = () => {\n this.stickyActive = true;\n document.documentElement.style.setProperty(\"--stzh-header-is-stuck\", \"1\");\n document.documentElement.style.setProperty(\"--stzh-header-is-not-stuck\", \"0\");\n };\n\n const disableSticky = () => {\n document.documentElement.style.setProperty(\"--stzh-header-is-stuck\", \"0\");\n document.documentElement.style.setProperty(\"--stzh-header-is-not-stuck\", \"1\");\n this.stickyActive = false;\n };\n\n if (this.sticky === \"disabled\") {\n disableSticky();\n } else if (this.sticky === \"always-full\") {\n activateSticky();\n } else if (this.sticky === \"always\") {\n if (this.belowStayStickyPoint) {\n activateSticky();\n } else {\n disableSticky();\n }\n } else {\n if (this.scrollingUp && this.belowStayStickyPoint) {\n if (!this.stickyActive && this.belowStartStickyPoint) {\n activateSticky();\n }\n } else {\n if (this.stickyActive && this.belowStayStickyPoint) {\n disableSticky();\n } else {\n disableSticky();\n }\n }\n }\n }\n\n @Listen(\"scroll\", { target: \"window\" })\n scrollListener() {\n if (this.sticky === \"disabled\") {\n return;\n }\n\n readTask(() => {\n this.currentScrollY = window.scrollY;\n this.scrollingUp = this.lastScrollY && this.lastScrollY > this.currentScrollY;\n this.lastScrollY = this.currentScrollY;\n\n this.belowStayStickyPoint = this.currentScrollY > this.logobarHeight;\n this.belowStartStickyPoint = this.currentScrollY > this.headerHeight;\n\n this.fixed =\n this.belowStartStickyPoint ||\n (this.scrollingUp && this.belowStayStickyPoint && this.stickyActive) ||\n (this.sticky === \"always\" && this.belowStayStickyPoint) ||\n this.sticky === \"always-full\";\n\n this.headerOverlap = (this.headerTop - this.currentScrollY) / -1;\n this.hideLogo = this.sticky !== \"always-full\" && this.isMedium && this.headerOverlap > 1;\n });\n\n writeTask(() => {\n this.updatePosition();\n });\n }\n\n /** Metanav item click event */\n @Event() stzhMetanavItemClick: EventEmitter<StzhHeaderMetanavItemClickEvent>;\n\n /** Metanav item child click event */\n @Event() stzhMetanavItemChildClick: EventEmitter<StzhHeaderMetanavItemChildClickEvent>;\n\n /** Metanav item button click event */\n @Event() stzhMetanavItemButtonClick: EventEmitter<StzhHeaderMetanavItemButtonClickEvent>;\n\n /** Metanav item click event */\n @Event() stzhMenuItemClick: EventEmitter<StzhHeaderMenuItemClickEvent>;\n\n /** Language change event */\n @Event() stzhLanguageChange: EventEmitter<StzhHeaderLanguageChangeEvent>;\n\n /** Search input change event */\n @Event() stzhSearchChange: EventEmitter<StzhHeaderSearchChangeEvent>;\n\n /** Search input changed event */\n @Event() stzhSearchChanged: EventEmitter<StzhHeaderSearchChangedEvent>;\n\n @Watch(\"searchValue\")\n searchValueWatcher(newValue: string) {\n this.searchFilled = newValue !== \"\";\n }\n\n @Watch(\"menuItems\")\n menuItemsWatcher(newValue: StzhHeaderMenuItem[] | string) {\n if (typeof newValue === \"string\") {\n this._menuItems = JSON.parse(newValue);\n } else {\n this._menuItems = newValue;\n }\n\n this._menuItems = this._menuItems.map((menuItem, index) => ({\n id: `submenu-${index}`,\n ...menuItem,\n }));\n }\n\n @Watch(\"metanavItems\")\n metanavItemsWatcher(newValue: StzhHeaderMetanavItem[] | string) {\n if (typeof newValue === \"string\") {\n this._metanavItems = JSON.parse(newValue);\n } else {\n this._metanavItems = newValue;\n }\n\n this._metanavItems = this._metanavItems.map((metanavItem, index) => ({\n id: `metanav-submenu-${index}`,\n ...metanavItem,\n }));\n }\n\n @Watch(\"languages\")\n languagesWatcher(newValue: StzhDropdownOption[] | string) {\n if (typeof newValue === \"string\") {\n this._languages = JSON.parse(newValue);\n } else {\n this._languages = newValue;\n }\n }\n\n private renderPromiseResolve: (value?: unknown) => void;\n\n private currentScrollY: number;\n private lastScrollY: number;\n private headerOverlap: number;\n private scrollingUp: boolean;\n private belowStayStickyPoint: boolean;\n private belowStartStickyPoint: boolean;\n\n private headerTop: number;\n // private innerHeight: number;\n private mainHeight: number;\n private metabarHeight: number;\n private logobarHeight: number;\n\n private isMedium: boolean;\n\n private debounceResize: number;\n private resizeObserver: ResizeObserver;\n private flyoutResizeObserver: ResizeObserver;\n\n // private innerElement: HTMLDivElement;\n private mainElement: HTMLDivElement;\n private logobarElement: HTMLDivElement;\n private metabarElement: HTMLDivElement;\n private menunavElement: HTMLElement;\n private flyoutElement: HTMLElement;\n private flyoutSearchElement: HTMLElement;\n\n private searchInput: HTMLInputElement;\n\n private lastOpener: HTMLButtonElement | null = null;\n private flyoutOpenedByMetanavItem: boolean = null;\n\n private trap: FocusTrap;\n private _parentElement: HTMLElement;\n\n private getSiblings() {\n if (!this._parentElement) {\n return [];\n }\n\n return Array.from(this._parentElement.children).filter(child => child !== this.element);\n }\n\n private disableSiblings() {\n this.getSiblings().forEach(sibling => {\n sibling.setAttribute(\"aria-hidden\", \"true\");\n });\n }\n\n private enableSiblings() {\n this.getSiblings().forEach(sibling => {\n sibling.removeAttribute(\"aria-hidden\");\n });\n }\n\n private waitForNextRender() {\n return new Promise(resolve => (this.renderPromiseResolve = resolve));\n }\n\n private resizeMenunavElement() {\n // reset height when metanav is sticky, or on medium or no submenu element is open\n if (media(\"headerMetanavSticky\").matches || media(\"medium\").matches || !this.openSubmenuElement) {\n Object.assign(this.menunavElement.style, {\n height: null,\n });\n } else {\n const { height } = this.openSubmenuElement.getBoundingClientRect();\n Object.assign(this.menunavElement.style, {\n height: `${height}px`,\n });\n }\n }\n\n private async openMenuItem(event: MouseEvent, menuItem: StzhHeaderMenuItem) {\n this.flyoutOpen = true;\n\n this.lastOpener = event.currentTarget as HTMLButtonElement;\n this.openSubmenuElement = this.element.querySelector(`#${menuItem.id}`) as HTMLElement;\n this.currentOpenMenuItem = menuItem;\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n this.menunavElement.scrollTop = 0;\n\n const firstButtonOrLink = this.openSubmenuElement && tabbable(this.openSubmenuElement)[0];\n firstButtonOrLink?.focus();\n\n this.resizeMenunavElement();\n });\n }\n\n private async closeMenuItem(focusOpener: boolean = true) {\n this.openSubmenuElement = null;\n this.currentOpenMenuItem = null;\n await this.waitForNextRender();\n\n if (focusOpener) {\n requestAnimationFrame(() => {\n this.lastOpener.focus();\n this.lastOpener = null;\n\n this.resizeMenunavElement();\n });\n }\n }\n\n private async openMetanavItem(event: MouseEvent, metanavItem: StzhHeaderMetanavItem) {\n if (!this.flyoutOpen) {\n this.flyoutOpenedByMetanavItem = true;\n this.flyoutOpen = true;\n }\n\n this.lastOpener = event.currentTarget as HTMLButtonElement;\n this.currentOpenMetanavItem = metanavItem;\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n const openMetanavSubmenuElement = this.element.querySelector(`#${metanavItem.id}`);\n const firstButtonOrLink = openMetanavSubmenuElement && tabbable(openMetanavSubmenuElement)[0];\n firstButtonOrLink?.focus();\n });\n }\n\n private async closeMetanavItem() {\n this.currentOpenMetanavItem = null;\n\n if (this.flyoutOpenedByMetanavItem) {\n this.flyoutOpen = false;\n }\n\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n this.lastOpener.focus();\n this.lastOpener = null;\n });\n }\n\n private async openLanguage(event: MouseEvent) {\n if (!this.flyoutOpen) {\n this.flyoutOpenedByMetanavItem = true;\n this.flyoutOpen = true;\n }\n\n this.lastOpener = event.currentTarget as HTMLButtonElement;\n this.currentOpenLanguage = true;\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n const openMetanavSubmenuElement = this.element.querySelector(\"#submenu-languages\");\n const firstButtonOrLink = openMetanavSubmenuElement && tabbable(openMetanavSubmenuElement)[0];\n firstButtonOrLink?.focus();\n });\n }\n\n private async closeLanguage() {\n this.currentOpenLanguage = false;\n\n if (this.flyoutOpenedByMetanavItem) {\n this.flyoutOpen = false;\n }\n\n await this.waitForNextRender();\n\n requestAnimationFrame(() => {\n this.lastOpener.focus();\n this.lastOpener = null;\n });\n }\n\n private handleMenuListFocusout = (event: FocusEvent) => {\n const isNextFocusOutOfMenuList = !(event.currentTarget as HTMLElement).contains(event.relatedTarget as HTMLElement);\n\n if (this.isMedium && isNextFocusOutOfMenuList) {\n this.closeMenuItem(false);\n }\n };\n\n private handleBurgerClick = async () => {\n if (this.flyoutOpenedByMetanavItem) {\n this.flyoutOpenedByMetanavItem = false;\n this.closeMetanavItem();\n } else {\n this.flyoutSearchOpen = false;\n this.flyoutOpen = !this.flyoutOpen;\n }\n\n // focus first menu item\n const element = this.element.querySelector(\".stzh-header__menu-item\") as HTMLElement;\n\n if (element) {\n window.setTimeout(() => {\n element.focus();\n }, 100);\n }\n\n this.updatePosition();\n };\n\n private handleSearchButtonClick = async () => {\n this.flyoutOpen = false;\n this.flyoutSearchOpen = !this.flyoutSearchOpen;\n\n // focus first search input\n const element = this.element.querySelector(\".stzh-search input[type='search']\") as HTMLElement;\n\n if (element) {\n window.setTimeout(() => {\n element.focus();\n }, 100);\n }\n this.updatePosition();\n };\n\n private handleBackdropClick = async () => {\n this.flyoutOpen = false;\n this.updatePosition();\n };\n\n private handleBackdropSearchClick = async () => {\n this.flyoutSearchOpen = false;\n this.updatePosition();\n };\n\n private handleMetanavItemClick = (event: MouseEvent, item: StzhHeaderMetanavItem) => {\n this.stzhMetanavItemClick.emit({\n component: \"stzh-header\",\n item,\n originalEvent: event,\n });\n };\n\n private handleMetanavItemChildClick = (event: MouseEvent, itemChild: StzhHeaderMetanavItemChild) => {\n this.stzhMetanavItemChildClick.emit({\n component: \"stzh-header\",\n itemChild: itemChild,\n originalEvent: event,\n });\n };\n\n private handleMetanavItemButtonClick = (event: MouseEvent, itemButton: StzhHeaderMetanavItemButton) => {\n this.stzhMetanavItemButtonClick.emit({\n component: \"stzh-header\",\n itemButton: itemButton,\n originalEvent: event,\n });\n };\n\n private handleMenuItemClick = (event: MouseEvent, item: StzhHeaderMenuItem) => {\n this.flyoutOpen = false;\n this.stzhMenuItemClick.emit({\n component: \"stzh-header\",\n item,\n originalEvent: event,\n });\n };\n\n private handleSearchInput = (event: InputEvent) => {\n this.searchValue = this.searchInput.value;\n\n this.stzhSearchChange.emit({\n component: \"stzh-header\",\n originalEvent: event,\n value: this.searchValue,\n });\n };\n\n private handleSearchChange = (event: InputEvent) => {\n this.searchValue = this.searchInput.value;\n this.stzhSearchChanged.emit({\n component: \"stzh-header\",\n originalEvent: event,\n value: this.searchValue,\n });\n };\n\n private handleLanguageClick = (event: MouseEvent, dropdownOption: StzhDropdownOption) => {\n if (this.languagePreventUrlchange) {\n event.preventDefault();\n }\n this.languageActive = dropdownOption.value;\n\n this.stzhLanguageChange.emit({\n component: \"stzh-header\",\n value: this.languageActive,\n });\n };\n\n private handleFlyoutResize = () => {\n this.resizeMenunavElement();\n };\n\n private handleResize = () => {\n if (this.sticky === \"disabled\") {\n return;\n }\n\n if (this.debounceResize) {\n window.cancelAnimationFrame(this.debounceResize);\n }\n\n this.debounceResize = requestAnimationFrame(() => {\n readTask(() => {\n this.isMedium = media(\"medium\").matches;\n\n this.mainHeight = this.mainElement?.offsetHeight || 0;\n this.metabarHeight = this.metabarElement?.offsetHeight || 0;\n this.logobarHeight = this.logobarElement?.offsetHeight || 0;\n\n this.headerTop = this.element.offsetTop;\n this.headerHeight = this.metabarHeight + this.logobarHeight;\n });\n\n writeTask(() => {\n document.documentElement.style.setProperty(\"--stzh-header-height\", `${this.headerHeight}px`);\n document.documentElement.style.setProperty(\"--stzh-header-main-height\", `${this.mainHeight}px`);\n document.documentElement.style.setProperty(\"--stzh-header-metabar-height\", `${this.metabarHeight}px`);\n document.documentElement.style.setProperty(\"--stzh-header-logobar-height\", `${this.logobarHeight}px`);\n });\n\n this.scrollListener();\n });\n };\n\n async componentWillLoad() {\n this.menuItemsWatcher(this.menuItems);\n this.metanavItemsWatcher(this.metanavItems);\n this.languagesWatcher(this.languages);\n this.searchValueWatcher(this.searchValue);\n\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"header\");\n }\n }\n\n componentDidRender() {\n if (this.renderPromiseResolve) {\n this.renderPromiseResolve();\n }\n\n if (this.flyoutElement && this.flyoutResizeObserver) {\n this.flyoutResizeObserver.observe(this.flyoutElement);\n }\n if (this.flyoutSearchElement && this.flyoutResizeObserver) {\n this.flyoutResizeObserver.observe(this.flyoutSearchElement);\n }\n }\n\n componentDidLoad() {\n this.trap = createFocusTrap(this.element, {\n ...createBaseFocusTrapOptions(),\n initialFocus: false,\n });\n\n this.flyoutResizeObserver = new ResizeObserver(this.handleFlyoutResize);\n if (this.flyoutElement) {\n this.flyoutResizeObserver.observe(this.flyoutElement);\n }\n }\n\n connectedCallback() {\n this._parentElement = this.element.parentElement;\n\n this.resizeObserver = new ResizeObserver(this.handleResize);\n this.resizeObserver.observe(this.element);\n }\n\n disconnectedCallback() {\n this.flyoutOpenWatcher(false);\n this.resizeObserver?.disconnect();\n this.flyoutResizeObserver?.disconnect();\n }\n\n render() {\n const metanavBeforeUsed: boolean = hasSlot(this.element, \"metanav-before\");\n const metanavAfterUsed: boolean = hasSlot(this.element, \"metanav-after\");\n\n const classes = {\n \"stzh-header\": true,\n \"stzh-header--is-flyout-open\": this.flyoutOpen,\n \"stzh-header--is-flyout-search-open\": this.flyoutSearchOpen,\n \"stzh-header--is-search-filled\": this.searchFilled,\n \"stzh-header--is-fixed\": this.fixed,\n \"stzh-header--is-fixed-transition\": this.fixedTransition,\n \"stzh-header--is-sticky\": this.stickyActive,\n \"stzh-header--is-sticky-transition\": this.stickyActive && this.fixedTransition,\n \"stzh-header--hide-logo\": this.hideLogo,\n \"stzh-header--has-empty-metabar-mobile\":\n !metanavBeforeUsed &&\n !metanavAfterUsed &&\n this._metanavItems.filter(item => item.stay || item.stayAndShowInMobileMenu).length === 0 &&\n this._menuItems.length === 0 &&\n (this._languages.length === 0 || (this._languages.length > 0 && !this.languageStay)) &&\n !this.searchAction,\n \"stzh-header--has-empty-metabar\":\n !metanavBeforeUsed &&\n !metanavAfterUsed &&\n this._metanavItems.length === 0 &&\n this._menuItems.length === 0 &&\n this._languages.length === 0 &&\n !this.searchAction,\n [`stzh-header--sticky-${this.sticky}`]: !!this.sticky,\n };\n\n const activeLanguage = this.languageActive || window.stzhComponents.utils.getLocale(this.element);\n const activeLanguageOption =\n this._languages?.find(({ value }) => value === activeLanguage) || this._languages?.[0] || null;\n\n const renderMetanavItemButton = (\n item: StzhHeaderMetanavItem,\n additionalClasses?: { [className: string]: boolean },\n additionalAttributes?: any\n ) => {\n const Element = item.items?.length > 0 || item.itemButton || !item.href ? \"button\" : \"a\";\n\n return (\n <Element\n {...additionalAttributes}\n href={Element === \"a\" && item.href}\n target={Element === \"a\" && item.target}\n class={{\n \"stzh-header__metanav-item\": true,\n \"is-heavy\": item.important,\n \"is-stay\": item.stay || item.stayAndShowInMobileMenu,\n ...(additionalClasses || {}),\n }}\n >\n <span\n class={{\n \"stzh-header__metanav-item-text\": true,\n \"is-vhidden\": item.labelHidden,\n \"has-no-short-label\": !item.labelShort,\n }}\n >\n <span class=\"stzh-header__metanav-item-text-label-long\">{item.label}</span>\n <span class=\"stzh-header__metanav-item-text-label-short\" aria-hidden=\"true\">\n {item.labelShort}\n </span>\n </span>\n {item.icon && (\n <span class=\"stzh-header__metanav-icon-wrapper\">\n {item.icon && (\n <stzh-icon\n class={`stzh-header__metanav-icon ${item.iconOpen ? \"is-close\" : \"\"}`}\n name={item.icon}\n ></stzh-icon>\n )}\n {item.iconOpen && <stzh-icon class=\"stzh-header__metanav-icon is-open\" name={item.iconOpen}></stzh-icon>}\n {(item.badge || item.badgeEmpty) && (\n <stzh-badge\n class=\"stzh-header__metanav-icon-badge\"\n label={item.badge}\n type={typeof item.badgeType === \"undefined\" ? \"error\" : item.badgeType}\n ></stzh-badge>\n )}\n </span>\n )}\n </Element>\n );\n };\n\n return (\n <Host>\n <header class={classes}>\n <div class=\"stzh-header__header\" style={{ paddingTop: `${this.paddingTop}px` }}>\n <div\n class=\"stzh-header__inner\"\n // ref={(el) => (this.innerElement = el as HTMLDivElement)}\n >\n <div class=\"stzh-header__main\" ref={el => (this.mainElement = el as HTMLDivElement)}>\n <div class=\"stzh-header__logobar\" ref={el => (this.logobarElement = el as HTMLDivElement)}>\n <div class=\"stzh-header__logobar-logo\">\n <a\n href={this.href}\n class=\"stzh-header__logo-link\"\n s-object-id={this.logoAnalyticsId || \"Header Logo\"}\n >\n <slot name=\"logo\"></slot>\n </a>\n </div>\n <div class=\"stzh-header__logobar-decoration\"></div>\n </div>\n\n {!this.hideMetabar && (\n <div class=\"stzh-header__metabar\" ref={el => (this.metabarElement = el as HTMLDivElement)}>\n <div class=\"stzh-header__metabar-inner\">\n <slot name=\"menu-before\"></slot>\n\n {this._menuItems.length > 0 && (\n <button\n id={this.menuId}\n class={`stzh-header__burger ${\n this.flyoutOpen && !this.flyoutOpenedByMetanavItem && \"is-open\"\n }`}\n onClick={this.handleBurgerClick}\n >\n <stzh-icon class=\"stzh-header__burger-icon is-close\" name=\"menu\"></stzh-icon>\n <stzh-icon class=\"stzh-header__burger-icon is-open\" name=\"close\"></stzh-icon>\n <div class=\"stzh-header__burger-text\">{this.localization.menuLabel}</div>\n </button>\n )}\n {this.searchAction && !hasSlot(this.element, \"search\") && (\n <form class=\"stzh-header__metabar-search\" action={this.searchAction} role=\"search\">\n <label class=\"stzh-header__search\">\n <input\n id={this.searchId}\n ref={el => (this.searchInput = el as HTMLInputElement)}\n class=\"stzh-header__search-input\"\n type=\"search\"\n name={this.searchFieldName}\n onChange={this.handleSearchChange}\n onInput={this.handleSearchInput}\n ></input>\n <stzh-icon class=\"stzh-header__search-icon\" name=\"search\"></stzh-icon>\n <div class=\"stzh-header__search-text\">{this.localization.searchLabel}</div>\n </label>\n </form>\n )}\n {hasSlot(this.element, \"search\") && (\n <stzh-button\n iconPosition={\"left\"}\n onClick={this.handleSearchButtonClick}\n variant=\"tertiary-plain\"\n size=\"small\"\n >\n <stzh-icon\n slot=\"icon\"\n name=\"search\"\n class={this.flyoutSearchOpen ? \"stzh-header__search-button--is-hidden\" : \"\"}\n ></stzh-icon>\n <stzh-icon\n slot=\"icon\"\n name=\"close\"\n class={this.flyoutSearchOpen ? \"\" : \"stzh-header__search-button--is-hidden\"}\n ></stzh-icon>\n {this.localization.searchLabel}\n </stzh-button>\n )}\n\n <slot name=\"menu-after\"></slot>\n\n <div class=\"stzh-header__metabar-nav\" id={this.metanavId}>\n <slot name=\"metanav-before\"></slot>\n\n {this._metanavItems.map(item =>\n item.items?.length > 0 || item.itemButton ? (\n <Fragment>\n {renderMetanavItemButton(\n item,\n {\n \"is-popover-mobile\": true,\n },\n {\n \"aria-expanded\": item === this.currentOpenMetanavItem ? \"true\" : \"false\",\n \"aria-controls\": item.id,\n onClick: (e: MouseEvent) => {\n if (item === this.currentOpenMetanavItem) {\n this.closeMetanavItem();\n } else {\n this.openMetanavItem(e, item);\n }\n\n this.handleMetanavItemClick(e, item);\n },\n }\n )}\n <stzh-popover\n class={{\n \"stzh-header__metanav-popover\": true,\n }}\n placement=\"bottom-end\"\n distance={20}\n variant={item.variant}\n size={typeof item.size === \"undefined\" ? \"large\" : item.size}\n >\n {renderMetanavItemButton(\n item,\n {\n \"is-popover-desktop\": true,\n },\n {\n onClick: (e: MouseEvent) => {\n this.handleMetanavItemClick(e, item);\n },\n }\n )}\n <div slot=\"content\">\n {item.items?.length > 0 && (\n <stzh-menu>\n {item.items.map(childItem => (\n <stzh-menu-item\n class={{\n \"stzh-header__metanav-menu-item\": true,\n \"is-heavy\":\n typeof item.importantSubmenu === \"undefined\" || item.importantSubmenu,\n }}\n size={typeof item.size === \"undefined\" ? \"large\" : item.size}\n variant={item.variant}\n href={childItem.href}\n target={childItem.target}\n icon={childItem.icon}\n counter={childItem.counter}\n badge={childItem.badge}\n badgeType={childItem.badgeType}\n onClick={(e: MouseEvent) => {this.handleMetanavItemChildClick(e, childItem)}}\n >\n {childItem.label}\n </stzh-menu-item>\n ))}\n </stzh-menu>\n )}\n </div>\n {item.itemButton && (\n <stzh-button\n slot=\"action\"\n size={item.itemButton.size}\n href={item.itemButton.href}\n target={item.itemButton.target}\n onClick={(e: MouseEvent) => {this.handleMetanavItemButtonClick(e, item.itemButton)}}\n >\n {item.itemButton.label}\n </stzh-button>\n )}\n </stzh-popover>\n </Fragment>\n ) : (\n renderMetanavItemButton(\n item,\n {},\n {\n onClick: (e: MouseEvent) => {\n this.handleMetanavItemClick(e, item);\n },\n }\n )\n )\n )}\n\n {this._languages?.length > 0 && (\n <Fragment>\n <h2 id={this.languageId} class=\"stzh-header__vhidden\">\n {this.localization.languageLabel}\n </h2>\n {this._menuItems.length > 0 && this.languageStay && (\n <button\n class={{\n \"stzh-header__metanav-item\": true,\n \"is-popover-mobile\": true,\n \"is-stay\": this.languageStay,\n }}\n aria-expanded={this.currentOpenLanguage ? \"true\" : \"false\"}\n aria-controls=\"submenu-languages\"\n onClick={(e: MouseEvent) => {\n if (this.currentOpenLanguage) {\n this.closeLanguage();\n } else {\n this.openLanguage(e);\n }\n }}\n >\n <span class=\"stzh-header__metanav-item-text\">{activeLanguageOption?.text}</span>\n <stzh-icon class=\"stzh-header__metanav-icon is-close\" name=\"angle-down\"></stzh-icon>\n <stzh-icon class=\"stzh-header__metanav-icon is-open\" name=\"angle-up\"></stzh-icon>\n </button>\n )}\n <stzh-popover\n class=\"stzh-header__metanav-popover is-langnav\"\n placement=\"bottom-end\"\n distance={20}\n >\n <button\n class={{\n \"stzh-header__metanav-item\": true,\n \"is-popover-desktop\": this._menuItems.length > 0,\n \"is-stay\": this.languageStay,\n }}\n >\n <span class=\"stzh-header__metanav-item-text\">{activeLanguageOption?.text}</span>\n <stzh-icon class=\"stzh-header__metanav-icon is-close\" name=\"angle-down\"></stzh-icon>\n <stzh-icon class=\"stzh-header__metanav-icon is-open\" name=\"angle-up\"></stzh-icon>\n </button>\n <div slot=\"content\">\n <stzh-menu>\n {this._languages.map(language => (\n <stzh-menu-item\n class=\"stzh-header__metanav-menu-item\"\n active={activeLanguageOption?.value === language.value}\n href={language.value}\n onClick={event => this.handleLanguageClick(event, language)}\n >\n {language.text}\n </stzh-menu-item>\n ))}\n </stzh-menu>\n </div>\n </stzh-popover>\n </Fragment>\n )}\n\n <slot name=\"metanav-after\"></slot>\n </div>\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n\n {this._menuItems.length > 0 && (\n <div ref={el => (this.flyoutElement = el as HTMLElement)} class=\"stzh-header__flyout\">\n <div class=\"stzh-header__flyout-backdrop\" onClick={this.handleBackdropClick}></div>\n <div class=\"stzh-header__flyout-scrollbar\"></div>\n <div class=\"stzh-header__menu\">\n <nav\n class=\"stzh-header__menu-nav\"\n ref={el => (this.menunavElement = el as HTMLElement)}\n aria-label={this.localization.navigationLabel}\n >\n <ul class=\"stzh-header__menu-list is-level-1\">\n {this._menuItems.map(item => (\n <li\n class={{\n \"stzh-header__menu-list-item\": true,\n \"is-open\": item === this.currentOpenMenuItem,\n }}\n >\n {item.items?.length > 0 ? (\n <button\n aria-expanded={item === this.currentOpenMenuItem ? \"true\" : \"false\"}\n aria-controls={item.id}\n class=\"stzh-header__menu-item is-level-1 has-items\"\n onClick={\n item === this.currentOpenMenuItem\n ? () => this.closeMenuItem()\n : e => this.openMenuItem(e, item)\n }\n >\n {item.label}\n </button>\n ) : (\n <a\n href={item.href}\n onClick={(e: MouseEvent) => this.handleMenuItemClick(e, item)}\n class=\"stzh-header__menu-item is-level-1\"\n >\n {item.label}\n </a>\n )}\n {item.items?.length > 0 && (\n <ul\n id={item.id}\n class=\"stzh-header__menu-list is-level-2\"\n onFocusout={this.handleMenuListFocusout}\n >\n <li class=\"stzh-header__menu-list-item is-backlink\">\n <button\n class=\"stzh-header__menu-item is-level-2 is-backlink\"\n onClick={() => this.closeMenuItem()}\n >\n <stzh-icon name=\"angle-left\"></stzh-icon>\n <span>{this.menuBackLabel ? this.menuBackLabel : this.localization.menuBackLabel}</span>\n </button>\n </li>\n <li class=\"stzh-header__menu-list-item\">\n <a\n href={item.href}\n onClick={(e: MouseEvent) => this.handleMenuItemClick(e, item)}\n class=\"stzh-header__menu-item is-level-2 is-main\"\n >\n {item.label}\n </a>\n </li>\n {item.items.map(item => (\n <li class=\"stzh-header__menu-list-item\">\n <a\n href={item.href}\n onClick={(e: MouseEvent) => this.handleMenuItemClick(e, item)}\n class=\"stzh-header__menu-item is-level-2\"\n >\n {item.label}\n </a>\n </li>\n ))}\n </ul>\n )}\n </li>\n ))}\n </ul>\n </nav>\n\n {(this._metanavItems?.length > 0 || this._languages?.length > 0) && (\n <div class=\"stzh-header__menu-metanav\">\n <nav class=\"stzh-header__menu-metanav-nav\">\n <ul class=\"stzh-header__menu-metanav-list is-level-1\">\n {this._metanavItems.map(item => (\n <li\n class={{\n \"stzh-header__menu-metanav-list-item\": true,\n \"is-open\": item === this.currentOpenMetanavItem,\n }}\n >\n {item.items?.length > 0 ? (\n <button\n aria-expanded={item === this.currentOpenMetanavItem ? \"true\" : \"false\"}\n aria-controls={item.id}\n class={{\n \"stzh-header__menu-metanav-item is-level-1\": true,\n \"is-hidden\": item.stay && !item.stayAndShowInMobileMenu,\n }}\n onClick={(e: MouseEvent) => {\n if (item === this.currentOpenMetanavItem) {\n this.closeMetanavItem();\n } else {\n this.openMetanavItem(e, item);\n }\n\n this.handleMetanavItemClick(e, item);\n }}\n >\n <span\n class={{\n \"stzh-header__menu-metanav-item-text\": true,\n \"is-vhidden\": item.labelHidden,\n }}\n >\n {item.label}\n </span>\n {item.icon && (\n <stzh-icon class=\"stzh-header__menu-metanav-item-icon\" name={item.icon}></stzh-icon>\n )}\n </button>\n ) : (\n <a\n href={item.href}\n class={{\n \"stzh-header__menu-metanav-item is-level-1\": true,\n \"is-hidden\": item.stay && !item.stayAndShowInMobileMenu,\n }}\n onClick={(e: MouseEvent) => {\n this.handleMetanavItemClick(e, item);\n }}\n >\n <span\n class={{\n \"stzh-header__menu-metanav-item-text\": true,\n \"is-vhidden\": item.labelHidden,\n }}\n >\n {item.label}\n </span>\n {item.icon && (\n <stzh-icon class=\"stzh-header__menu-metanav-item-icon\" name={item.icon}></stzh-icon>\n )}\n </a>\n )}\n {item.items?.length > 0 && (\n <ul id={item.id} class=\"stzh-header__menu-metanav-list is-level-2\">\n <li class=\"stzh-header__menu-metanav-list-item\">\n <div class=\"stzh-header__menu-metanav-item is-level-2 is-title\">\n <span>{item.label}</span>\n <stzh-button\n class=\"stzh-header__menu-metanav-item-icon\"\n variant=\"tertiary\"\n icon=\"close\"\n iconOnly={true}\n label={this.localization.closeMetanavMenuLabel?.replace(\n /\\{itemLabel\\}/gi,\n item.label\n )}\n onClick={() => this.closeMetanavItem()}\n ></stzh-button>\n </div>\n </li>\n {item.items.map(item => (\n <li class=\"stzh-header__menu-metanav-list-item\">\n <a href={item.href} class=\"stzh-header__menu-metanav-item is-level-2\">\n {item.icon && (\n <stzh-icon\n class=\"stzh-header__menu-metanav-item-icon\"\n name={item.icon}\n ></stzh-icon>\n )}\n <span class=\"stzh-header__menu-metanav-item-text\">\n <span>{item.label}</span>\n {item.counter && (\n <span class=\"stzh-header__menu-metanav-item-counter\">({item.counter})</span>\n )}\n </span>\n </a>\n </li>\n ))}\n\n {item.itemButton && (\n <li class=\"stzh-header__menu-metanav-list-item\">\n <div class=\"stzh-header__menu-metanav-item is-level-2 is-action\">\n <stzh-button href={item.itemButton.href} target={item.itemButton.target}>\n {item.itemButton.label}\n </stzh-button>\n </div>\n </li>\n )}\n </ul>\n )}\n </li>\n ))}\n\n {this._languages?.length > 0 && (\n <li\n class={{\n \"stzh-header__menu-metanav-list-item\": true,\n \"is-open\": this.currentOpenLanguage,\n }}\n >\n <button\n aria-expanded={this.currentOpenLanguage ? \"true\" : \"false\"}\n aria-controls=\"submenu-languages\"\n class=\"stzh-header__menu-metanav-item is-level-1\"\n onClick={e => this.openLanguage(e)}\n >\n <span>{activeLanguageOption?.text}</span>\n <stzh-icon class=\"stzh-header__menu-metanav-item-icon\" name=\"angle-down\"></stzh-icon>\n </button>\n <ul id=\"submenu-languages\" class=\"stzh-header__menu-metanav-list is-level-2\">\n <div class=\"stzh-header__menu-metanav-item is-level-2 is-title\">\n <span>{this.localization.dialogLanguageTitle}</span>\n <stzh-button\n class=\"stzh-header__menu-metanav-item-icon\"\n variant=\"tertiary\"\n icon=\"close\"\n iconOnly={true}\n label={\"Sprach-Dialog schliessen\"}\n onClick={() => this.closeLanguage()}\n ></stzh-button>\n </div>\n {this._languages.map(language => (\n <li class=\"stzh-header__menu-metanav-list-item\">\n <a\n class=\"stzh-header__menu-metanav-item is-level-2 is-language\"\n href={language.value}\n onClick={event => this.handleLanguageClick(event, language)}\n >\n <span>{language.text}</span>\n {activeLanguageOption?.value === language.value && (\n <stzh-icon\n class=\"stzh-header__menu-metanav-item-icon\"\n name=\"checkmark\"\n ></stzh-icon>\n )}\n </a>\n </li>\n ))}\n </ul>\n </li>\n )}\n </ul>\n </nav>\n </div>\n )}\n </div>\n </div>\n )}\n\n {hasSlot(this.element, \"search\") && (\n <div ref={el => (this.flyoutSearchElement = el as HTMLElement)} class=\"stzh-header__flyout-search\">\n <div class=\"stzh-header__flyout-backdrop\" onClick={this.handleBackdropSearchClick}></div>\n <div class=\"stzh-header__flyout-scrollbar\"></div>\n <div class=\"stzh-header__flyout-search-main\">\n <slot name=\"search\"></slot>\n </div>\n </div>\n )}\n </header>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Host, Fragment, h } from "@stencil/core";
|
|
2
2
|
import { hasSlot } from "../../utils/utils";
|
|
3
3
|
/**
|
|
4
|
-
* @slot - Slot for text content
|
|
5
4
|
* @slot icon - Slot for icon element
|
|
5
|
+
* @slot - Slot for label/text content
|
|
6
6
|
*/
|
|
7
7
|
export class StzhLink {
|
|
8
8
|
constructor() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-link.js","sourceRoot":"","sources":["../../../../src/components/stzh-link/stzh-link.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,CAAC,EACD,IAAI,EACJ,KAAK,EAEN,MAAM,eAAe,CAAC;AAUvB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG5C;;;GAGG;AAMH,MAAM,OAAO,QAAQ;;IA2HX,mBAAc,GAAY,KAAK,CAAC;IAEhC,gBAAW,GAAG,GAAG,EAAE;MACzB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;QACxB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;OACnB;MAED,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAC9B,CAAC,CAAA;IAEO,YAAO,GAAG,CAAC,KAAiB,EAAE,EAAE;MACtC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;MAE3B,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE;QACzC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;OAClB,CAAC,CAAC;MAEH,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;MACvC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAClB,SAAS,EAAE,WAAW;QACtB,aAAa,EAAE,KAAK;OACrB,CAAC,CAAC;IACL,CAAC,CAAA;IAEO,WAAM,GAAG,CAAC,KAAiB,EAAE,EAAE;MACrC,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE;QACvC,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;OAClB,CAAC,CAAC;MAEH,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;MACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACjB,SAAS,EAAE,WAAW;QACtB,aAAa,EAAE,KAAK;OACrB,CAAC,CAAC;IACL,CAAC,CAAA;IAEO,YAAO,GAAG,CAAC,KAAiB,EAAE,EAAE;MACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAClB,SAAS,EAAE,WAAW;QACtB,aAAa,EAAE,KAAK;QACpB,IAAI,EAAE,IAAI,CAAC,IAAI;OAChB,CAAC,CAAC;IACL,CAAC,CAAA;;gBApKsB,EAAE;wBAGiC,MAAM;kBAGV,SAAS;gBAGjB,SAAS;;;;;gBAehC,EAAE;;kBAMA,EAAE;;gBAMmB,QAAQ;mBAGe,SAAS;qBAGhC,KAAK;qBAG6C,SAAS;iBAGjF,EAAE;qBAG0B,SAAS;sBAGd,KAAK;yBAGM,MAAM;oBAGnB,KAAK;kBAGP,KAAK;oBAGH,KAAK;iBAG1B,EAAE;;;;2BAYyC,EAAE;;;;;;;;EAqF7D,UAAU;IAChB,OAAO,CACL,WAAK,KAAK,EAAC,yBAAyB;MACjC,IAAI,CAAC,IAAI,CAAC,CAAC;QACV,iBAAW,KAAK,EAAC,iBAAiB,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAc;QAChE,CAAC;UACD,YAAM,IAAI,EAAC,MAAM,GAAQ;MAE1B,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC;QAC9B,kBAAY,KAAK,EAAC,kBAAkB,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,GAAe,CAEzF,CACP,CAAC;EACJ,CAAC;EAEO,aAAa;IACnB,OAAO,CACL,WAAK,KAAK,EAAC,iBAAiB;MACzB,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,WAAK,KAAK,EAAC,oBAAoB,IAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAO;MACjI,IAAI,CAAC,QAAQ,IAAI,WAAK,KAAK,EAAC,oBAAoB,IAAE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAO;MACtG,WAAK,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,EAAoB,CAAC,IAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,eAAa,CAAO,CACjG,CACP,CAAC;EACJ,CAAC;EAEO,WAAW,CAAC,QAAiB;IACnC,OAAO,CACL,EAAC,QAAQ;MACP,WAAK,KAAK,EAAC,kBAAkB;QAC1B,IAAI,CAAC,YAAY,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE;QACjD,IAAI,CAAC,aAAa,EAAE;QACpB,IAAI,CAAC,YAAY,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,CAC/C;MACL,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ;QAC3C,kBAAY,KAAK,EAAC,kBAAkB,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,GAAe,CAEpF,CACZ,CAAC;EACJ,CAAC;EAED,KAAK,CAAC,iBAAiB;IACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;MACtB,IAAI,CAAC,YAAY,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;KAC/F;EACH,CAAC;EAED,kBAAkB;IAChB,qBAAqB,CAAC,GAAG,EAAE;;MACzB,MAAA,IAAI,CAAC,IAAI,0CAAE,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;EACL,CAAC;EAED,MAAM;IACJ,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAC9D,MAAM,OAAO,GAAG;MACd,WAAW,EAAE,IAAI;MACjB,qBAAqB,EAAE,QAAQ;MAC/B,0BAA0B,EAAE,IAAI,CAAC,QAAQ;MACzC,sBAAsB,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK;MACpC,yBAAyB,EAAE,IAAI,CAAC,SAAS;MACzC,wBAAwB,EAAE,IAAI,CAAC,QAAQ;MACvC,sBAAsB,EAAE,IAAI,CAAC,MAAM;MACnC,CAAC,6BAA6B,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa;MACzE,CAAC,oBAAoB,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;MACxD,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO;KAC/C,CAAC;IAEF,OAAO,CACL,EAAC,IAAI,IAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,WAAW,IACnE,IAAI,CAAC,IAAI,CAAC,CAAC;MACV,SACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,EAAuB,CAAC,EAClD,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,KAAK,EAAE,OAAO,EACd,EAAE,EAAE,IAAI,CAAC,MAAM,EACf,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,QAAQ,EAAE,IAAI,CAAC,YAAY,gBACf,IAAI,CAAC,SAAS,IAAI,IAAI,sBAChB,IAAI,CAAC,eAAe,IAAI,IAAI,mBAC/B,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;UACrD,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,mBAClC,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;UACrD,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,mBAClC,IAAI,CAAC,YAAY,IAAI,IAAI,kBAC1B,IAAI,CAAC,WAAW,IAAI,IAAI,EACtC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,IAElB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CACzB;MACJ,CAAC;QACD,cACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,EAAuB,CAAC,EAClD,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,EAAE,EAAE,IAAI,CAAC,MAAM,EACf,SAAS,EAAE,IAAI,CAAC,aAAa,EAC7B,QAAQ,EAAE,IAAI,CAAC,YAAY,gBACf,IAAI,CAAC,SAAS,IAAI,IAAI,sBAChB,IAAI,CAAC,eAAe,IAAI,IAAI,mBAC/B,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;YACrD,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,mBAClC,OAAO,IAAI,CAAC,YAAY,KAAK,WAAW;YACrD,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,mBAClC,IAAI,CAAC,YAAY,IAAI,IAAI,kBAC1B,IAAI,CAAC,WAAW,IAAI,IAAI,EACtC,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,MAAM,EAAE,IAAI,CAAC,MAAM,IAElB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CACpB,CAEN,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n Component,\n Host,\n Fragment,\n Element,\n h,\n Prop,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhLinkFocusEvent,\n StzhLinkBlurEvent,\n StzhLinkSize,\n StzhBadgeType,\n StzhLinkClickEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\n/**\n * @slot - Slot for text content\n * @slot icon - Slot for icon element\n */\n@Component({\n tag: \"stzh-link\",\n styleUrl: \"stzh-link.scss\",\n scoped: true\n})\nexport class StzhLink {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Icon Position */\n @Prop({ reflect: true }) iconPosition: \"left\" | \"right\" = \"left\";\n\n /** Height variant (none prevent setting min-height for mikro and small breakpoint) */\n @Prop({ reflect: true }) height: \"default\" | \"auto\" = \"default\";\n\n /** Size variant */\n @Prop({ reflect: true }) size: StzhLinkSize = \"default\";\n\n /** Size variant (above small breakpoint) */\n @Prop({ reflect: true }) sizeSmall: StzhLinkSize;\n\n /** Size variant (above medium breakpoint) */\n @Prop({ reflect: true }) sizeMedium: StzhLinkSize;\n\n /** Size variant (above large breakpoint) */\n @Prop({ reflect: true }) sizeLarge: StzhLinkSize;\n\n /** Size variant (above ultra breakpoint) */\n @Prop({ reflect: true }) sizeUltra: StzhLinkSize;\n\n /** href attribute of the link */\n @Prop() href: string = \"\";\n\n /** Rel (if href is used) */\n @Prop() rel: string;\n\n /** target if the button is used as link (if href used) */\n @Prop() target: string = \"\";\n\n /** Download attribute of link (if `href` used) */\n @Prop() download: string;\n\n /** type of the button, if used as button (if no href used) */\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n\n /** Variant style */\n @Prop({ reflect: true }) variant: \"default\" | \"secondary\" | \"back\" = \"default\";\n\n /** Whether the link is full width */\n @Prop({ reflect: true }) fullwidth: boolean = false;\n\n /** Text alignment */\n @Prop({ reflect: true }) textAlign: \"left\" | \"center\" | \"right\" | \"space-between\" | \"default\" = \"default\";\n\n /** Badge text */\n @Prop() badge: string = \"\";\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: StzhBadgeType = \"default\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Badge position */\n @Prop({ reflect: true }) badgePosition: \"icon\" | \"link\" = \"icon\";\n\n /** Disabled status */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Active status */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Whether only an icon is used inside the link */\n @Prop({ reflect: true }) iconOnly: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Access key of link (usually a number e.g. 1) */\n @Prop() linkAccesskey: string;\n\n /** ID of link element */\n @Prop() linkId: string;\n\n /** Accessible label for screen readers to replace visible text */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string;\n\n /** Id for element which describes the button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Aria expanded of link/button */\n @Prop({ reflect: true, attribute: \"a11y-expanded\" }) a11yExpanded: boolean;\n\n /** Aria disabled of link/button */\n @Prop({ reflect: true, attribute: \"a11y-disabled\" }) a11yDisabled: boolean;\n\n /** Aria controls of link/button */\n @Prop({ attribute: \"a11y-controls\" }) a11yControls: string;\n\n /** Tabindex of link/button */\n @Prop({ attribute: \"a11y-tabindex\" }) a11yTabindex: string;\n\n /** Aria current of link/button */\n @Prop({ attribute: \"a11y-current\" }) a11yCurrent: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link/button element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhLinkElement;\n\n /** Click event */\n @Event() stzhClick: EventEmitter<StzhLinkClickEvent>;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhLinkFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhLinkBlurEvent>;\n\n private link: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLDivElement;\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.link.focus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent(\"blur\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private onClick = (event: MouseEvent) => {\n this.stzhClick.emit({\n component: \"stzh-link\",\n originalEvent: event,\n href: this.href\n });\n }\n\n private renderIcon(): HTMLInputElement {\n return (\n <div class=\"stzh-link__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-link__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n {(this.badge || this.badgeEmpty) &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n return (\n <div class=\"stzh-link__text\">\n {this.rel && this.rel.includes('external') && <div class=\"stzh-link__vhidden\">{this.localization.$globals.externalLinkLabel}</div>}\n {this.download && <div class=\"stzh-link__vhidden\">{this.localization.$globals.downloadLinkLabel}</div>}\n <div ref={(el) => (this.text = el as HTMLDivElement)}>{this.label ? this.label : <slot></slot>}</div>\n </div>\n );\n }\n\n private renderInner(iconUsed: boolean): DocumentFragment {\n return (\n <Fragment>\n <div class=\"stzh-link__inner\">\n {this.iconPosition === \"left\" && this.renderIcon()}\n {this.renderContent()}\n {this.iconPosition === \"right\" && this.renderIcon()}\n </div>\n {(this.badge || this.badgeEmpty) && !iconUsed &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </Fragment>\n );\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"link\");\n }\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.link?.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n render() {\n const iconUsed = hasSlot(this.element, \"icon\") || !!this.icon;\n const classes = {\n \"stzh-link\": true,\n \"stzh-link--has-icon\": iconUsed,\n \"stzh-link--has-icon-only\": this.iconOnly,\n \"stzh-link--has-badge\": !!this.badge,\n \"stzh-link--is-fullwidth\": this.fullwidth,\n \"stzh-link--is-disabled\": this.disabled,\n \"stzh-link--is-active\": this.active,\n [`stzh-link--badge-position-${this.badgePosition}`]: !!this.badgePosition,\n [`stzh-link--align-${this.textAlign}`]: !!this.textAlign,\n [`stzh-link--${this.variant}`]: !!this.variant,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n {this.href ?\n <a\n ref={(el) => (this.link = el as HTMLAnchorElement)}\n href={this.disabled ? null : this.href}\n download={this.download}\n rel={this.rel}\n target={this.target}\n class={classes}\n id={this.linkId}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls || null}\n aria-current={this.a11yCurrent || null}\n onClick={this.onClick}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </a>\n :\n <button\n ref={(el) => (this.link = el as HTMLButtonElement)}\n class={classes}\n type={this.type}\n disabled={this.disabled}\n id={this.linkId}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls || null}\n aria-current={this.a11yCurrent || null}\n onClick={this.onClick}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </button>\n }\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"stzh-link.js","sourceRoot":"","sources":["../../../../src/components/stzh-link/stzh-link.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n Fragment,\n Element,\n h,\n Prop,\n Event,\n EventEmitter\n} from \"@stencil/core\";\n\nimport {\n StzhLinkFocusEvent,\n StzhLinkBlurEvent,\n StzhLinkSize,\n StzhBadgeType,\n StzhLinkClickEvent\n} from \"../../index\";\n\nimport { hasSlot } from \"../../utils/utils\";\nimport { StzhLocaleComponent } from \"../../utils/translation-utils\";\n\n/**\n * @slot icon - Slot for icon element\n * @slot - Slot for label/text content\n */\n@Component({\n tag: \"stzh-link\",\n styleUrl: \"stzh-link.scss\",\n scoped: true\n})\nexport class StzhLink {\n /** Translation strings */\n @Prop() localization: StzhLocaleComponent;\n\n /** Icon (use instead of icon slot) */\n @Prop() icon: string = \"\";\n\n /** Icon Position */\n @Prop({ reflect: true }) iconPosition: \"left\" | \"right\" = \"left\";\n\n /** Height variant (none prevent setting min-height for mikro and small breakpoint) */\n @Prop({ reflect: true }) height: \"default\" | \"auto\" = \"default\";\n\n /** Size variant */\n @Prop({ reflect: true }) size: StzhLinkSize = \"default\";\n\n /** Size variant (above small breakpoint) */\n @Prop({ reflect: true }) sizeSmall: StzhLinkSize;\n\n /** Size variant (above medium breakpoint) */\n @Prop({ reflect: true }) sizeMedium: StzhLinkSize;\n\n /** Size variant (above large breakpoint) */\n @Prop({ reflect: true }) sizeLarge: StzhLinkSize;\n\n /** Size variant (above ultra breakpoint) */\n @Prop({ reflect: true }) sizeUltra: StzhLinkSize;\n\n /** href attribute of the link */\n @Prop() href: string = \"\";\n\n /** Rel (if href is used) */\n @Prop() rel: string;\n\n /** target if the button is used as link (if href used) */\n @Prop() target: string = \"\";\n\n /** Download attribute of link (if `href` used) */\n @Prop() download: string;\n\n /** type of the button, if used as button (if no href used) */\n @Prop() type: \"button\" | \"submit\" | \"reset\" = \"button\";\n\n /** Variant style */\n @Prop({ reflect: true }) variant: \"default\" | \"secondary\" | \"back\" = \"default\";\n\n /** Whether the link is full width */\n @Prop({ reflect: true }) fullwidth: boolean = false;\n\n /** Text alignment */\n @Prop({ reflect: true }) textAlign: \"left\" | \"center\" | \"right\" | \"space-between\" | \"default\" = \"default\";\n\n /** Badge text */\n @Prop() badge: string = \"\";\n\n /** Badge type */\n @Prop({ reflect: true }) badgeType: StzhBadgeType = \"default\";\n\n /** Whether badge should be displayed empty */\n @Prop({ reflect: true }) badgeEmpty: boolean = false;\n\n /** Badge position */\n @Prop({ reflect: true }) badgePosition: \"icon\" | \"link\" = \"icon\";\n\n /** Disabled status */\n @Prop({ reflect: true }) disabled: boolean = false;\n\n /** Active status */\n @Prop({ reflect: true }) active: boolean = false;\n\n /** Whether only an icon is used inside the link */\n @Prop({ reflect: true }) iconOnly: boolean = false;\n\n /** Label */\n @Prop() label: string = \"\";\n\n /** Access key of link (usually a number e.g. 1) */\n @Prop() linkAccesskey: string;\n\n /** ID of link element */\n @Prop() linkId: string;\n\n /** Accessible label for screen readers to replace visible text */\n @Prop({ attribute: \"a11y-label\" }) a11yLabel: string;\n\n /** Id for element which describes the button (this will be overwritten if description prop or slot is used, used by stzh-radiogroup) */\n @Prop({ attribute: \"a11y-describedby\" }) a11yDescribedby: string = \"\";\n\n /** Aria expanded of link/button */\n @Prop({ reflect: true, attribute: \"a11y-expanded\" }) a11yExpanded: boolean;\n\n /** Aria disabled of link/button */\n @Prop({ reflect: true, attribute: \"a11y-disabled\" }) a11yDisabled: boolean;\n\n /** Aria controls of link/button */\n @Prop({ attribute: \"a11y-controls\" }) a11yControls: string;\n\n /** Tabindex of link/button */\n @Prop({ attribute: \"a11y-tabindex\" }) a11yTabindex: string;\n\n /** Aria current of link/button */\n @Prop({ attribute: \"a11y-current\" }) a11yCurrent: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the link/button element.\n * Default value will be taken from `label` prop or default slot.\n */\n @Prop() analyticsId: string;\n\n @Element() element: HTMLStzhLinkElement;\n\n /** Click event */\n @Event() stzhClick: EventEmitter<StzhLinkClickEvent>;\n\n /** Focus event */\n @Event() stzhFocus: EventEmitter<StzhLinkFocusEvent>;\n\n /** Input blur event */\n @Event() stzhBlur: EventEmitter<StzhLinkBlurEvent>;\n\n private link: HTMLButtonElement | HTMLAnchorElement;\n private text: HTMLDivElement;\n private focusedByInput: boolean = false;\n\n private onRootFocus = () => {\n if (!this.focusedByInput) {\n this.link.focus();\n }\n\n this.focusedByInput = false;\n }\n\n private onFocus = (event: FocusEvent) => {\n this.focusedByInput = true;\n\n const focusEvent = new FocusEvent(\"focus\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(focusEvent);\n this.stzhFocus.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private onBlur = (event: FocusEvent) => {\n const blurEvent = new FocusEvent(\"blur\", {\n view: window,\n bubbles: false,\n cancelable: false\n });\n\n this.element.dispatchEvent(blurEvent);\n this.stzhBlur.emit({\n component: \"stzh-link\",\n originalEvent: event\n });\n }\n\n private onClick = (event: MouseEvent) => {\n this.stzhClick.emit({\n component: \"stzh-link\",\n originalEvent: event,\n href: this.href\n });\n }\n\n private renderIcon(): HTMLInputElement {\n return (\n <div class=\"stzh-link__icon-wrapper\">\n {this.icon ?\n <stzh-icon class=\"stzh-link__icon\" name={this.icon}></stzh-icon>\n :\n <slot name=\"icon\"></slot>\n }\n {(this.badge || this.badgeEmpty) &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </div>\n );\n }\n\n private renderContent(): HTMLDivElement {\n return (\n <div class=\"stzh-link__text\">\n {this.rel && this.rel.includes('external') && <div class=\"stzh-link__vhidden\">{this.localization.$globals.externalLinkLabel}</div>}\n {this.download && <div class=\"stzh-link__vhidden\">{this.localization.$globals.downloadLinkLabel}</div>}\n <div ref={(el) => (this.text = el as HTMLDivElement)}>{this.label ? this.label : <slot></slot>}</div>\n </div>\n );\n }\n\n private renderInner(iconUsed: boolean): DocumentFragment {\n return (\n <Fragment>\n <div class=\"stzh-link__inner\">\n {this.iconPosition === \"left\" && this.renderIcon()}\n {this.renderContent()}\n {this.iconPosition === \"right\" && this.renderIcon()}\n </div>\n {(this.badge || this.badgeEmpty) && !iconUsed &&\n <stzh-badge class=\"stzh-link__badge\" label={this.badge} type={this.badgeType}></stzh-badge>\n }\n </Fragment>\n );\n }\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"link\");\n }\n }\n\n componentDidRender() {\n requestAnimationFrame(() => {\n this.link?.setAttribute(\"s-object-id\", this.analyticsId || this.text.innerText);\n });\n }\n\n render() {\n const iconUsed = hasSlot(this.element, \"icon\") || !!this.icon;\n const classes = {\n \"stzh-link\": true,\n \"stzh-link--has-icon\": iconUsed,\n \"stzh-link--has-icon-only\": this.iconOnly,\n \"stzh-link--has-badge\": !!this.badge,\n \"stzh-link--is-fullwidth\": this.fullwidth,\n \"stzh-link--is-disabled\": this.disabled,\n \"stzh-link--is-active\": this.active,\n [`stzh-link--badge-position-${this.badgePosition}`]: !!this.badgePosition,\n [`stzh-link--align-${this.textAlign}`]: !!this.textAlign,\n [`stzh-link--${this.variant}`]: !!this.variant,\n };\n\n return (\n <Host tabindex={this.disabled ? null : \"-1\"} onFocus={this.onRootFocus}>\n {this.href ?\n <a\n ref={(el) => (this.link = el as HTMLAnchorElement)}\n href={this.disabled ? null : this.href}\n download={this.download}\n rel={this.rel}\n target={this.target}\n class={classes}\n id={this.linkId}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls || null}\n aria-current={this.a11yCurrent || null}\n onClick={this.onClick}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </a>\n :\n <button\n ref={(el) => (this.link = el as HTMLButtonElement)}\n class={classes}\n type={this.type}\n disabled={this.disabled}\n id={this.linkId}\n accessKey={this.linkAccesskey}\n tabindex={this.a11yTabindex}\n aria-label={this.a11yLabel || null}\n aria-describedby={this.a11yDescribedby || null}\n aria-disabled={typeof this.a11yDisabled !== \"undefined\"\n ? (this.a11yDisabled ? \"true\" : \"false\") : null}\n aria-expanded={typeof this.a11yExpanded !== \"undefined\"\n ? (this.a11yExpanded ? \"true\" : \"false\") : null}\n aria-controls={this.a11yControls || null}\n aria-current={this.a11yCurrent || null}\n onClick={this.onClick}\n onFocus={this.onFocus}\n onBlur={this.onBlur}\n >\n {this.renderInner(iconUsed)}\n </button>\n }\n </Host>\n );\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-pagebottom.js","sourceRoot":"","sources":["../../../../src/components/stzh-pagebottom/stzh-pagebottom.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,OAAO,EACP,IAAI,GACL,MAAM,eAAe,CAAC;AAOvB;
|
|
1
|
+
{"version":3,"file":"stzh-pagebottom.js","sourceRoot":"","sources":["../../../../src/components/stzh-pagebottom/stzh-pagebottom.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,OAAO,EACP,IAAI,GACL,MAAM,eAAe,CAAC;AAOvB;;GAEG;AAMH,MAAM,OAAO,cAAc;;;sBAKI,EAAE;;;;;;oBAqBJ,8BAA8B;;;;EAoBzD,KAAK,CAAC,iBAAiB;IACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;MACtB,IAAI,CAAC,YAAY,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;KACrG;EACH,CAAC;EAED,MAAM;IACJ,6DAA6D;IAC7D,2DAA2D;IAE3D,MAAM,OAAO,GAAG;MACd,iBAAiB,EAAE,IAAI;MACvB,SAAS,EAAE,IAAI,CAAC,mDAAmD;KACpE,CAAC;IAEF,OAAO,CACL,EAAC,IAAI;MACH,WAAK,KAAK,EAAE,OAAO;QACjB,WAAK,KAAK,EAAC,0BAA0B;UACnC,WAAK,KAAK,EAAC,uBAAuB;YAC/B,IAAI,CAAC,SAAS;cACb,WAAK,KAAK,EAAC,wBAAwB;gBACjC;kBACE,mBACE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,EACnC,OAAO,EAAC,gBAAgB,EACxB,IAAI,EAAC,OAAO,EACZ,aAAa,EAAE,IAAI,EACnB,cAAc,EAAE,IAAI,EACpB,WAAW,EAAE,IAAI,CAAC,gBAAgB,GACrB,CACJ,CACT;YAGP,CAAC,IAAI,CAAC,aAAa;cAClB,WAAK,KAAK,EAAC,gCAAgC;gBACxC,IAAI,CAAC,UAAU;kBACd,WAAK,KAAK,EAAC,8BAA8B,IAAE,IAAI,CAAC,UAAU,CAAO;gBAEnE,kBACE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAClB,QAAQ,EAAE,IAAI,CAAC,aAAa,EAC5B,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAClC,QAAQ,EAAE,IAAI,CAAC,aAAa,GAChB,CACV,CAEJ;UAEN,WAAK,KAAK,EAAC,iCAAiC;YAC1C,YAAM,IAAI,EAAC,gBAAgB,GAAQ,CAC/B,CACF,CAaF,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n Component,\n Host,\n h,\n Element,\n Prop,\n} from \"@stencil/core\";\n\nimport { ShareService } from \"../../index\";\n// import { hasSlot } from \"../../utils/utils\";\n\nimport { StzhPagebottomLocalizedText } from \"./stzh-pagebottom.localization\";\n\n/**\n * @slot sticky-actions - Slot for sticky actions\n */\n@Component({\n tag: \"stzh-pagebottom\",\n styleUrl: \"stzh-pagebottom.scss\",\n scoped: true\n})\nexport class StzhPagebottom {\n /** Translation strings. */\n @Prop() localization: StzhPagebottomLocalizedText;\n\n /** Share Title */\n @Prop() shareTitle: string = \"\";\n\n /** URL of current site (uses full URL by default) */\n @Prop() shareUrl: string;\n\n /**\n * Array of enabled share buttons.\n * Possible services: `facebook` / `twitter` / `linkedin` / `xing` / `mail`\n */\n @Prop() shareServices: ShareService[] | string;\n\n /** Whether to show share */\n @Prop({ reflect: true }) shareDisabled: boolean;\n\n /** Overwrite share mail subject translation */\n @Prop() shareMailSubject: string;\n\n /** Overwrite share mail body translation */\n @Prop() shareMailBody: string;\n\n /** Logo href */\n @Prop() logoHref: string = \"https://www.stadt-zuerich.ch\";\n\n /** Whether to show print button */\n @Prop({ reflect: true }) withPrint: boolean;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute of the print button element.\n */\n @Prop() printAnalyticsId: string;\n\n /**\n * For Adobe Analytics.\n * Will be rendered as value of `s-object-id` attribute to the logo link element.\n * Default value will be \"Footer Logo\"\n */\n // @Prop() logoAnalyticsId: string;\n\n @Element() element: HTMLStzhPagebottomElement;\n\n async componentWillLoad() {\n if (!this.localization) {\n this.localization = await window.stzhComponents.utils.fetchTranslations(this.element, \"pagebottom\");\n }\n }\n\n render() {\n // const printUsed: boolean = hasSlot(this.element, \"print\");\n // const logoUsed: boolean = hasSlot(this.element, \"logo\");\n\n const classes = {\n \"stzh-pagebottom\": true,\n \"rs_skip\": true // will prevent component being read by readspeaker\n };\n\n return (\n <Host>\n <div class={classes}>\n <div class=\"stzh-pagebottom__wrapper\">\n <div class=\"stzh-pagebottom__left\">\n {this.withPrint &&\n <div class=\"stzh-pagebottom__print\">\n <stzh-print>\n <stzh-button\n label={this.localization.printLabel}\n variant=\"tertiary-plain\"\n size=\"small\"\n noPaddingLeft={true}\n noPaddingRight={true}\n analyticsId={this.printAnalyticsId}\n ></stzh-button>\n </stzh-print>\n </div>\n }\n\n {!this.shareDisabled &&\n <div class=\"stzh-pagebottom__share-wrapper\">\n {this.shareTitle &&\n <div class=\"stzh-pagebottom__share-title\">{this.shareTitle}</div>\n }\n <stzh-share\n url={this.shareUrl}\n services={this.shareServices}\n mailSubject={this.shareMailSubject}\n mailBody={this.shareMailBody}\n ></stzh-share>\n </div>\n }\n </div>\n\n <div class=\"stzh-pagebottom__sticky-actions\">\n <slot name=\"sticky-actions\"></slot>\n </div>\n </div>\n\n {/* {logoUsed &&\n <div class=\"stzh-pagebottom__logo\">\n <a\n href={this.logoHref}\n class=\"stzh-pagebottom__logo-link\"\n s-object-id={this.logoAnalyticsId || \"Footer Logo\"}\n >\n <slot name=\"logo\"></slot>\n </a>\n </div>\n } */}\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stzh-pagecontent.js","sourceRoot":"","sources":["../../../../src/components/stzh-pagecontent/stzh-pagecontent.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,OAAO,EACR,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C
|
|
1
|
+
{"version":3,"file":"stzh-pagecontent.js","sourceRoot":"","sources":["../../../../src/components/stzh-pagecontent/stzh-pagecontent.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,IAAI,EACJ,CAAC,EACD,OAAO,EACR,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C;;;;GAIG;AAMH,MAAM,OAAO,eAAe;EAG1B,MAAM;IACJ,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG;MACd,kBAAkB,EAAE,IAAI;MACxB,kCAAkC,EAAE,YAAY,IAAI,YAAY;MAChE,qCAAqC,EAAE,CAAC,YAAY,IAAI,CAAC,YAAY;KACtE,CAAC;IAEF,OAAO,CACL,EAAC,IAAI;MACH,WAAK,KAAK,EAAE,OAAO;QACjB,aAAO,KAAK,EAAC,8BAA8B;UACzC,WAAK,KAAK,EAAC,6BAA6B;YACtC,YAAM,IAAI,EAAC,WAAW,GAAQ,CAC1B;UACN,YAAM,IAAI,EAAC,YAAY,GAAQ,CACzB;QACR,WAAK,KAAK,EAAC,2BAA2B;UACpC,eAAa,CACT,CACF,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;CACF","sourcesContent":["import {\n Component,\n Host,\n h,\n Element\n} from \"@stencil/core\";\n\nimport { hasSlot } from \"../../utils/utils\";\n\n/**\n * @slot anchornav - Slot for anchornav\n * @slot aside-left - Slot for aside left content\n * @slot - Slot for content\n */\n@Component({\n tag: \"stzh-pagecontent\",\n styleUrl: \"stzh-pagecontent.scss\",\n scoped: true\n})\nexport class StzhPagecontent {\n @Element() element: HTMLStzhPagecontentElement;\n\n render() {\n const hasAsideLeft = hasSlot(this.element, \"aside-left\");\n const hasAnchornav = hasSlot(this.element, \"anchornav\");\n\n const classes = {\n \"stzh-pagecontent\": true,\n \"stzh-pagecontent--has-aside-left\": hasAsideLeft || hasAnchornav,\n \"stzh-pagecontent--has-no-aside-left\": !hasAsideLeft && !hasAnchornav,\n };\n\n return (\n <Host>\n <div class={classes}>\n <aside class=\"stzh-pagecontent__aside-left\">\n <div class=\"stzh-pagecontent__anchornav\">\n <slot name=\"anchornav\"></slot>\n </div>\n <slot slot=\"aside-left\"></slot>\n </aside>\n <div class=\"stzh-pagecontent__content\">\n <slot></slot>\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -7,6 +7,7 @@ import { media } from "../../utils/media-utils";
|
|
|
7
7
|
* @slot lead - Slot for `stzh-text` element
|
|
8
8
|
* @slot tag - Slot for `stzh-tag` element
|
|
9
9
|
* @slot readspeaker - Slot for `stzh-readspeaker` element
|
|
10
|
+
* @slot disturber - Slot for disturber content
|
|
10
11
|
*/
|
|
11
12
|
export class StzhPagetitle {
|
|
12
13
|
constructor() {
|
|
@@ -176,7 +177,7 @@ export class StzhPagetitle {
|
|
|
176
177
|
"optional": false,
|
|
177
178
|
"docs": {
|
|
178
179
|
"tags": [],
|
|
179
|
-
"text": "
|
|
180
|
+
"text": "Automatic Hyphens"
|
|
180
181
|
},
|
|
181
182
|
"attribute": "hyphens-enabled",
|
|
182
183
|
"reflect": true,
|