@swisspost/internet-header 1.17.0 → 10.1.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/_commonjsHelpers-BJu3ubxk.js +10 -0
- package/dist/cjs/ar-B-n6-52-.js +56 -0
- package/dist/cjs/bg-DXwp1AJo.js +56 -0
- package/dist/cjs/breakpoints-CI0Xuh1L.js +46 -0
- package/dist/cjs/ca-DzXDkiON.js +56 -0
- package/dist/cjs/component-on-ready-CifOTqw1.js +24 -0
- package/dist/cjs/create-validator-decorator-CJK3Xf77.js +223 -0
- package/dist/cjs/cs-c0Y4EfUF.js +56 -0
- package/dist/cjs/da-DFMBgc6C.js +56 -0
- package/dist/cjs/de-DUAVb6Ak.js +56 -0
- package/dist/cjs/debounce-BsIBi_-2.js +13 -0
- package/dist/cjs/el-CbYcnCa3.js +56 -0
- package/dist/cjs/en-CrTBxie0.js +56 -0
- package/dist/cjs/es-DVC34Sen.js +56 -0
- package/dist/cjs/eu-zLFC9jS7.js +56 -0
- package/dist/cjs/event-from-CwMw19f8.js +121 -0
- package/dist/cjs/fade-CPQhl1fP.js +26 -0
- package/dist/cjs/fade-slide-dPhQa-I1.js +38 -0
- package/dist/cjs/fi-DKf7Bwed.js +56 -0
- package/dist/cjs/focusable-COT2uiEV.js +5037 -0
- package/dist/cjs/fr--iQzTO3c.js +56 -0
- package/dist/cjs/get-focusable-children-BGVgg7Te.js +93 -0
- package/dist/cjs/get-root-B1FnQ50K.js +15 -0
- package/dist/cjs/hr-YvmCfo4N.js +56 -0
- package/dist/cjs/hu-tf8VP2jG.js +56 -0
- package/dist/cjs/id-ddjNpn4H.js +56 -0
- package/dist/cjs/index-B5ypPkK3.js +2404 -0
- package/dist/cjs/index-CggFmZ8n.js +164 -0
- package/dist/cjs/index.cjs.js +6 -32
- package/dist/cjs/it-DnNyP8lg.js +56 -0
- package/dist/cjs/ja-Bx4WkhVw.js +56 -0
- package/dist/cjs/ko-B9B6WoKJ.js +56 -0
- package/dist/cjs/loader.cjs.js +3 -5
- package/dist/cjs/nanoid-CmjyF1Cm.js +20 -0
- package/dist/cjs/nb-xcvCV-TT.js +56 -0
- package/dist/cjs/nl-DBREQ-lG.js +56 -0
- package/dist/cjs/one-of-7TSi182P.js +27 -0
- package/dist/cjs/package-E6EPRPpB.js +260 -0
- package/dist/cjs/package-MGiZpKVI.js +5 -0
- package/dist/cjs/pattern-BlBN9eIw.js +27 -0
- package/dist/cjs/pl-DLfbvgEj.js +56 -0
- package/dist/cjs/placement-qEFR9hmI.js +18 -0
- package/dist/cjs/post-accordion_4.cjs.entry.js +403 -0
- package/dist/cjs/post-autocomplete.cjs.entry.js +219 -0
- package/dist/cjs/post-avatar.cjs.entry.js +171 -0
- package/dist/cjs/post-back-to-top.cjs.entry.js +106 -0
- package/dist/cjs/post-banner.cjs.entry.js +73 -0
- package/dist/cjs/post-breadcrumb-item.cjs.entry.js +62 -0
- package/dist/cjs/post-breadcrumbs.cjs.entry.js +131 -0
- package/dist/cjs/post-closebutton.cjs.entry.js +96 -0
- package/dist/cjs/post-date-picker.cjs.entry.js +4951 -0
- package/dist/cjs/post-footer.cjs.entry.js +76 -0
- package/dist/cjs/post-header.cjs.entry.js +337 -0
- package/dist/cjs/post-icon.cjs.entry.js +137 -0
- package/dist/cjs/post-language-menu-item.cjs.entry.js +81 -0
- package/dist/cjs/post-language-menu.cjs.entry.js +126 -0
- package/dist/cjs/post-linkarea.cjs.entry.js +77 -0
- package/dist/cjs/post-listbox-option.cjs.entry.js +26 -0
- package/dist/cjs/post-listbox.cjs.entry.js +148 -0
- package/dist/cjs/post-logo.cjs.entry.js +44 -0
- package/dist/cjs/post-mainnavigation.cjs.entry.js +150 -0
- package/dist/cjs/post-megadropdown-trigger.cjs.entry.js +94 -0
- package/dist/cjs/post-megadropdown.cjs.entry.js +352 -0
- package/dist/cjs/post-menu-item.cjs.entry.js +19 -0
- package/dist/cjs/post-menu_2.cjs.entry.js +291 -0
- package/dist/cjs/post-number-input.cjs.entry.js +140 -0
- package/dist/cjs/post-pagination.cjs.entry.js +584 -0
- package/dist/cjs/post-popover-trigger.cjs.entry.js +132 -0
- package/dist/cjs/post-popover.cjs.entry.js +110 -0
- package/dist/cjs/post-popovercontainer.cjs.entry.js +3128 -0
- package/dist/cjs/post-progressbar.cjs.entry.js +146 -0
- package/dist/cjs/post-rating.cjs.entry.js +120 -0
- package/dist/cjs/post-side-navigation-trigger.cjs.entry.js +108 -0
- package/dist/cjs/post-side-navigation.cjs.entry.js +147 -0
- package/dist/cjs/post-stepper-item.cjs.entry.js +18 -0
- package/dist/cjs/post-stepper.cjs.entry.js +152 -0
- package/dist/cjs/post-tab-item.cjs.entry.js +59 -0
- package/dist/cjs/post-tab-panel.cjs.entry.js +41 -0
- package/dist/cjs/post-tabs.cjs.entry.js +447 -0
- package/dist/cjs/post-togglebutton.cjs.entry.js +41 -0
- package/dist/cjs/post-tooltip-trigger.cjs.entry.js +196 -0
- package/dist/cjs/post-tooltip.cjs.entry.js +86 -0
- package/dist/cjs/pt-Dc_OE8cp.js +56 -0
- package/dist/cjs/required-_r1rzbps.js +44 -0
- package/dist/cjs/ro-8IO45_lH.js +56 -0
- package/dist/cjs/ru-Bi6PEUjH.js +56 -0
- package/dist/cjs/si-CxTTL-2p.js +56 -0
- package/dist/cjs/sk-DIyQ5csO.js +56 -0
- package/dist/cjs/sl-CMtcjEtd.js +56 -0
- package/dist/cjs/sv-D5mS1eJd.js +56 -0
- package/dist/cjs/swisspost-internet-footer.cjs.entry.js +98 -8
- package/dist/cjs/swisspost-internet-header.cjs.entry.js +547 -11
- package/dist/cjs/swisspost-internet-header.cjs.js +7 -7
- package/dist/cjs/switch-variants-DyPKloa0.js +5 -0
- package/dist/cjs/th-C7H8s82u.js +56 -0
- package/dist/cjs/tr-B-O6cbA-.js +56 -0
- package/dist/cjs/type-CAeEC3oM.js +30 -0
- package/dist/cjs/uk-2o78OfNL.js +56 -0
- package/dist/cjs/url-Cykxre4X.js +34 -0
- package/dist/cjs/utils-s05L2ulk.js +26 -0
- package/dist/cjs/zh-CMprT73y.js +56 -0
- package/dist/collection/assets/config/test-configuration.json +299 -3997
- package/dist/collection/collection-manifest.json +55 -13
- package/dist/collection/components/internal/Avatar.js +2 -0
- package/dist/collection/components/internal/Link.js +6 -0
- package/dist/collection/components/internal/MegaDropdown.js +17 -0
- package/dist/collection/components/internal/Title.js +24 -0
- package/dist/collection/components/internal/UserMenu.js +28 -0
- package/dist/collection/components/internal/index.js +5 -0
- package/dist/collection/components/post-internet-footer/post-internet-footer.css +1 -29
- package/dist/collection/components/post-internet-footer/post-internet-footer.js +83 -27
- package/dist/collection/components/post-internet-header/post-internet-header.js +289 -532
- package/dist/collection/data/store.js +3 -6
- package/dist/collection/index.js +1 -9
- package/dist/collection/services/config.service.js +44 -128
- package/dist/collection/services/language.service.js +27 -78
- package/dist/collection/services/route.service.js +96 -125
- package/dist/collection/tests/setup-tests.js +13 -0
- package/dist/collection/utils/create-id-from.js +13 -0
- package/dist/collection/utils/get-text.js +3 -0
- package/dist/components/_commonjsHelpers.js +1 -0
- package/dist/components/ar.js +1 -0
- package/dist/components/bg.js +1 -0
- package/dist/components/breakpoints.js +1 -0
- package/dist/components/ca.js +1 -0
- package/dist/components/component-on-ready.js +1 -0
- package/dist/components/create-validator-decorator.js +1 -0
- package/dist/components/cs.js +1 -0
- package/dist/components/da.js +1 -0
- package/dist/components/de.js +1 -0
- package/dist/components/debounce.js +1 -0
- package/dist/components/el.js +1 -0
- package/dist/components/en.js +1 -0
- package/dist/components/es.js +1 -0
- package/dist/components/eu.js +1 -0
- package/dist/components/event-from.js +1 -0
- package/dist/components/fade-slide.js +1 -0
- package/dist/components/fade.js +1 -0
- package/dist/components/fi.js +1 -0
- package/dist/components/focusable.js +1 -0
- package/dist/components/fr.js +1 -0
- package/dist/components/get-focusable-children.js +1 -0
- package/dist/components/get-root.js +1 -0
- package/dist/components/hr.js +1 -0
- package/dist/components/hu.js +1 -0
- package/dist/components/id.js +1 -0
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +1 -46
- package/dist/components/index2.js +1 -161
- package/dist/components/it.js +1 -0
- package/dist/components/ja.js +1 -0
- package/dist/components/ko.js +1 -0
- package/dist/components/nanoid.js +1 -0
- package/dist/components/nb.js +1 -0
- package/dist/components/nl.js +1 -0
- package/dist/components/one-of.js +1 -0
- package/dist/components/package.js +1 -0
- package/dist/components/package2.js +1 -0
- package/dist/components/pattern.js +1 -0
- package/dist/components/pl.js +1 -0
- package/dist/components/post-accordion-item.js +1 -0
- package/dist/components/post-accordion-item2.js +1 -0
- package/dist/components/post-accordion.js +1 -0
- package/dist/components/post-accordion2.js +1 -0
- package/dist/components/post-autocomplete.js +1 -0
- package/dist/components/post-avatar.js +1 -0
- package/dist/components/post-back-to-top.js +1 -0
- package/dist/components/post-banner.js +1 -0
- package/dist/components/post-breadcrumb-item.js +1 -0
- package/dist/components/post-breadcrumbs.js +1 -0
- package/dist/components/post-closebutton.js +1 -0
- package/dist/components/post-closebutton2.js +1 -0
- package/dist/components/post-collapsible-trigger.js +1 -0
- package/dist/components/post-collapsible-trigger2.js +1 -0
- package/dist/components/post-collapsible.js +1 -0
- package/dist/components/post-collapsible2.js +1 -0
- package/dist/components/post-date-picker.js +1 -0
- package/dist/components/post-footer.js +1 -0
- package/dist/components/post-footer2.js +1 -0
- package/dist/components/post-header.js +1 -0
- package/dist/components/post-header2.js +1 -0
- package/dist/components/post-icon.js +1 -0
- package/dist/components/post-icon2.js +1 -0
- package/dist/components/post-language-menu-item.js +1 -0
- package/dist/components/post-language-menu-item2.js +1 -0
- package/dist/components/post-language-menu.js +1 -0
- package/dist/components/post-language-menu2.js +1 -0
- package/dist/components/post-linkarea.js +1 -0
- package/dist/components/post-listbox-option.js +1 -0
- package/dist/components/post-listbox.js +1 -0
- package/dist/components/post-logo.js +1 -37
- package/dist/components/post-logo2.js +1 -0
- package/dist/components/post-mainnavigation.js +1 -0
- package/dist/components/post-mainnavigation2.js +1 -0
- package/dist/components/post-megadropdown-trigger.js +1 -0
- package/dist/components/post-megadropdown.js +1 -0
- package/dist/components/post-menu-item.js +1 -0
- package/dist/components/post-menu-item2.js +1 -0
- package/dist/components/post-menu-trigger.js +1 -0
- package/dist/components/post-menu-trigger2.js +1 -0
- package/dist/components/post-menu.js +1 -0
- package/dist/components/post-menu2.js +1 -0
- package/dist/components/post-number-input.js +1 -0
- package/dist/components/post-pagination.js +1 -0
- package/dist/components/post-popover-trigger.js +1 -0
- package/dist/components/post-popover.js +1 -0
- package/dist/components/post-popovercontainer.js +1 -0
- package/dist/components/post-popovercontainer2.js +1 -0
- package/dist/components/post-progressbar.js +1 -0
- package/dist/components/post-rating.js +1 -0
- package/dist/components/post-side-navigation-trigger.js +1 -0
- package/dist/components/post-side-navigation.js +1 -0
- package/dist/components/post-stepper-item.js +1 -0
- package/dist/components/post-stepper.js +1 -0
- package/dist/components/post-tab-item.js +1 -0
- package/dist/components/post-tab-panel.js +1 -0
- package/dist/components/post-tabs.js +1 -0
- package/dist/components/post-togglebutton.js +1 -0
- package/dist/components/post-togglebutton2.js +1 -0
- package/dist/components/post-tooltip-trigger.js +1 -0
- package/dist/components/post-tooltip.js +1 -0
- package/dist/components/pt.js +1 -0
- package/dist/components/required.js +1 -0
- package/dist/components/ro.js +1 -0
- package/dist/components/ru.js +1 -0
- package/dist/components/si.js +1 -0
- package/dist/components/sk.js +1 -0
- package/dist/components/sl.js +1 -0
- package/dist/components/sv.js +1 -0
- package/dist/components/swisspost-internet-footer.js +1 -182
- package/dist/components/swisspost-internet-header.js +1 -987
- package/dist/components/switch-variants.js +1 -0
- package/dist/components/th.js +1 -0
- package/dist/components/tr.js +1 -0
- package/dist/components/type.js +1 -0
- package/dist/components/uk.js +1 -0
- package/dist/components/url.js +1 -0
- package/dist/components/utils.js +1 -17
- package/dist/components/zh.js +1 -0
- package/dist/docs.d.ts +45 -0
- package/dist/docs.json +224 -1184
- package/dist/esm/_commonjsHelpers-BFTU3MAI.js +7 -0
- package/dist/esm/ar-qmsePlo9.js +54 -0
- package/dist/esm/bg-ZwPeL6oI.js +54 -0
- package/dist/esm/breakpoints-C3jWktf-.js +44 -0
- package/dist/esm/ca-ISi6eci_.js +54 -0
- package/dist/esm/component-on-ready-lpWRZjJp.js +22 -0
- package/dist/esm/create-validator-decorator--a-qkYfP.js +218 -0
- package/dist/esm/cs-DGzvkTrE.js +54 -0
- package/dist/esm/da-BR7-7EdA.js +54 -0
- package/dist/esm/de-Cqz-boHe.js +54 -0
- package/dist/esm/debounce-C9hMpmsD.js +11 -0
- package/dist/esm/el-DU9G8oSc.js +54 -0
- package/dist/esm/en-lxF4YBLI.js +54 -0
- package/dist/esm/es-_tWE7z8a.js +54 -0
- package/dist/esm/eu-BowKnChG.js +54 -0
- package/dist/esm/event-from-rEfV4v4a.js +119 -0
- package/dist/esm/fade-DsgPYmAa.js +24 -0
- package/dist/esm/fade-slide-CvOvauo9.js +36 -0
- package/dist/esm/fi-CC2W9CX5.js +54 -0
- package/dist/esm/focusable-C7afHKmo.js +5034 -0
- package/dist/esm/fr-DlMHXJTg.js +54 -0
- package/dist/esm/get-focusable-children-DxYnH2ye.js +90 -0
- package/dist/esm/get-root-08F-DB-d.js +13 -0
- package/dist/esm/hr-BZdkBqJE.js +54 -0
- package/dist/esm/hu-BlwH1sUP.js +54 -0
- package/dist/esm/id-BCexutvr.js +54 -0
- package/dist/esm/index-bR8vy6-s.js +161 -0
- package/dist/esm/index-h3opCZqH.js +2375 -0
- package/dist/esm/index.js +4 -20
- package/dist/esm/it-B7CtP_zH.js +54 -0
- package/dist/esm/ja-GwQmiRrY.js +54 -0
- package/dist/esm/ko-Bog4AaS3.js +54 -0
- package/dist/esm/loader.js +4 -4
- package/dist/esm/nanoid-8LXe8Zt_.js +18 -0
- package/dist/esm/nb-C0rJhv3t.js +54 -0
- package/dist/esm/nl-DTAYnhrt.js +54 -0
- package/dist/esm/one-of-w2eXPAzD.js +25 -0
- package/dist/esm/package-ClQfdhMK.js +252 -0
- package/dist/esm/package-jK9tFtoG.js +3 -0
- package/dist/esm/pattern-Der2DK75.js +25 -0
- package/dist/esm/pl-Dc18GnEP.js +54 -0
- package/dist/esm/placement-DRiVosES.js +16 -0
- package/dist/esm/post-accordion_4.entry.js +398 -0
- package/dist/esm/post-autocomplete.entry.js +217 -0
- package/dist/esm/post-avatar.entry.js +169 -0
- package/dist/esm/post-back-to-top.entry.js +104 -0
- package/dist/esm/post-banner.entry.js +71 -0
- package/dist/esm/post-breadcrumb-item.entry.js +60 -0
- package/dist/esm/post-breadcrumbs.entry.js +129 -0
- package/dist/esm/post-closebutton.entry.js +94 -0
- package/dist/esm/post-date-picker.entry.js +4949 -0
- package/dist/esm/post-footer.entry.js +74 -0
- package/dist/esm/post-header.entry.js +335 -0
- package/dist/esm/post-icon.entry.js +135 -0
- package/dist/esm/post-language-menu-item.entry.js +79 -0
- package/dist/esm/post-language-menu.entry.js +124 -0
- package/dist/esm/post-linkarea.entry.js +75 -0
- package/dist/esm/post-listbox-option.entry.js +24 -0
- package/dist/esm/post-listbox.entry.js +146 -0
- package/dist/esm/post-logo.entry.js +42 -0
- package/dist/esm/post-mainnavigation.entry.js +148 -0
- package/dist/esm/post-megadropdown-trigger.entry.js +92 -0
- package/dist/esm/post-megadropdown.entry.js +350 -0
- package/dist/esm/post-menu-item.entry.js +17 -0
- package/dist/esm/post-menu_2.entry.js +288 -0
- package/dist/esm/post-number-input.entry.js +138 -0
- package/dist/esm/post-pagination.entry.js +582 -0
- package/dist/esm/post-popover-trigger.entry.js +130 -0
- package/dist/esm/post-popover.entry.js +108 -0
- package/dist/esm/post-popovercontainer.entry.js +3126 -0
- package/dist/esm/post-progressbar.entry.js +144 -0
- package/dist/esm/post-rating.entry.js +118 -0
- package/dist/esm/post-side-navigation-trigger.entry.js +106 -0
- package/dist/esm/post-side-navigation.entry.js +145 -0
- package/dist/esm/post-stepper-item.entry.js +16 -0
- package/dist/esm/post-stepper.entry.js +150 -0
- package/dist/esm/post-tab-item.entry.js +57 -0
- package/dist/esm/post-tab-panel.entry.js +39 -0
- package/dist/esm/post-tabs.entry.js +445 -0
- package/dist/esm/post-togglebutton.entry.js +39 -0
- package/dist/esm/post-tooltip-trigger.entry.js +194 -0
- package/dist/esm/post-tooltip.entry.js +84 -0
- package/dist/esm/pt-CvvuIVLG.js +54 -0
- package/dist/esm/required-tHxh_hWW.js +42 -0
- package/dist/esm/ro-BOcX9wJt.js +54 -0
- package/dist/esm/ru-CNbbLA5W.js +54 -0
- package/dist/esm/si-CBbBs36T.js +54 -0
- package/dist/esm/sk-DBNkuluD.js +54 -0
- package/dist/esm/sl-Daq-FtDz.js +54 -0
- package/dist/esm/sv-BfSAzCsG.js +54 -0
- package/dist/esm/swisspost-internet-footer.entry.js +101 -5
- package/dist/esm/swisspost-internet-header.entry.js +551 -9
- package/dist/esm/swisspost-internet-header.js +6 -5
- package/dist/esm/switch-variants-DjIHLduJ.js +3 -0
- package/dist/esm/th-DnzvZaNa.js +54 -0
- package/dist/esm/tr-O5ciRquU.js +54 -0
- package/dist/esm/type-Daxpt5v6.js +28 -0
- package/dist/esm/uk-COulUFGY.js +54 -0
- package/dist/esm/url-B61rZU6Z.js +32 -0
- package/dist/esm/utils-CoDiS_Ik.js +24 -0
- package/dist/esm/zh-bL3e3TZi.js +54 -0
- package/dist/esm-es5/_commonjsHelpers-BFTU3MAI.js +1 -0
- package/dist/esm-es5/ar-qmsePlo9.js +1 -0
- package/dist/esm-es5/bg-ZwPeL6oI.js +1 -0
- package/dist/esm-es5/breakpoints-C3jWktf-.js +1 -0
- package/dist/esm-es5/ca-ISi6eci_.js +1 -0
- package/dist/esm-es5/component-on-ready-lpWRZjJp.js +1 -0
- package/dist/esm-es5/create-validator-decorator--a-qkYfP.js +1 -0
- package/dist/esm-es5/cs-DGzvkTrE.js +1 -0
- package/dist/esm-es5/da-BR7-7EdA.js +1 -0
- package/dist/esm-es5/de-Cqz-boHe.js +1 -0
- package/dist/esm-es5/debounce-C9hMpmsD.js +1 -0
- package/dist/esm-es5/el-DU9G8oSc.js +1 -0
- package/dist/esm-es5/en-lxF4YBLI.js +1 -0
- package/dist/esm-es5/es-_tWE7z8a.js +1 -0
- package/dist/esm-es5/eu-BowKnChG.js +1 -0
- package/dist/esm-es5/event-from-rEfV4v4a.js +1 -0
- package/dist/esm-es5/fade-DsgPYmAa.js +1 -0
- package/dist/esm-es5/fade-slide-CvOvauo9.js +1 -0
- package/dist/esm-es5/fi-CC2W9CX5.js +1 -0
- package/dist/esm-es5/focusable-C7afHKmo.js +8 -0
- package/dist/esm-es5/fr-DlMHXJTg.js +1 -0
- package/dist/esm-es5/get-focusable-children-DxYnH2ye.js +1 -0
- package/dist/esm-es5/get-root-08F-DB-d.js +1 -0
- package/dist/esm-es5/hr-BZdkBqJE.js +1 -0
- package/dist/esm-es5/hu-BlwH1sUP.js +1 -0
- package/dist/esm-es5/id-BCexutvr.js +1 -0
- package/dist/esm-es5/index-bR8vy6-s.js +1 -0
- package/dist/esm-es5/index-h3opCZqH.js +1 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/it-B7CtP_zH.js +1 -0
- package/dist/esm-es5/ja-GwQmiRrY.js +1 -0
- package/dist/esm-es5/ko-Bog4AaS3.js +1 -0
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/nanoid-8LXe8Zt_.js +1 -0
- package/dist/esm-es5/nb-C0rJhv3t.js +1 -0
- package/dist/esm-es5/nl-DTAYnhrt.js +1 -0
- package/dist/esm-es5/one-of-w2eXPAzD.js +1 -0
- package/dist/esm-es5/package-ClQfdhMK.js +1 -0
- package/dist/esm-es5/package-jK9tFtoG.js +1 -0
- package/dist/esm-es5/pattern-Der2DK75.js +1 -0
- package/dist/esm-es5/pl-Dc18GnEP.js +1 -0
- package/dist/esm-es5/placement-DRiVosES.js +1 -0
- package/dist/esm-es5/post-accordion_4.entry.js +1 -0
- package/dist/esm-es5/post-autocomplete.entry.js +1 -0
- package/dist/esm-es5/post-avatar.entry.js +1 -0
- package/dist/esm-es5/post-back-to-top.entry.js +1 -0
- package/dist/esm-es5/post-banner.entry.js +1 -0
- package/dist/esm-es5/post-breadcrumb-item.entry.js +1 -0
- package/dist/esm-es5/post-breadcrumbs.entry.js +1 -0
- package/dist/esm-es5/post-closebutton.entry.js +1 -0
- package/dist/esm-es5/post-date-picker.entry.js +1 -0
- package/dist/esm-es5/post-footer.entry.js +1 -0
- package/dist/esm-es5/post-header.entry.js +1 -0
- package/dist/esm-es5/post-icon.entry.js +1 -0
- package/dist/esm-es5/post-language-menu-item.entry.js +1 -0
- package/dist/esm-es5/post-language-menu.entry.js +1 -0
- package/dist/esm-es5/post-linkarea.entry.js +1 -0
- package/dist/esm-es5/post-listbox-option.entry.js +1 -0
- package/dist/esm-es5/post-listbox.entry.js +1 -0
- package/dist/esm-es5/post-logo.entry.js +1 -0
- package/dist/esm-es5/post-mainnavigation.entry.js +1 -0
- package/dist/esm-es5/post-megadropdown-trigger.entry.js +1 -0
- package/dist/esm-es5/post-megadropdown.entry.js +1 -0
- package/dist/esm-es5/post-menu-item.entry.js +1 -0
- package/dist/esm-es5/post-menu_2.entry.js +1 -0
- package/dist/esm-es5/post-number-input.entry.js +1 -0
- package/dist/esm-es5/post-pagination.entry.js +1 -0
- package/dist/esm-es5/post-popover-trigger.entry.js +1 -0
- package/dist/esm-es5/post-popover.entry.js +1 -0
- package/dist/esm-es5/post-popovercontainer.entry.js +1 -0
- package/dist/esm-es5/post-progressbar.entry.js +1 -0
- package/dist/esm-es5/post-rating.entry.js +1 -0
- package/dist/esm-es5/post-side-navigation-trigger.entry.js +1 -0
- package/dist/esm-es5/post-side-navigation.entry.js +1 -0
- package/dist/esm-es5/post-stepper-item.entry.js +1 -0
- package/dist/esm-es5/post-stepper.entry.js +1 -0
- package/dist/esm-es5/post-tab-item.entry.js +1 -0
- package/dist/esm-es5/post-tab-panel.entry.js +1 -0
- package/dist/esm-es5/post-tabs.entry.js +1 -0
- package/dist/esm-es5/post-togglebutton.entry.js +1 -0
- package/dist/esm-es5/post-tooltip-trigger.entry.js +1 -0
- package/dist/esm-es5/post-tooltip.entry.js +1 -0
- package/dist/esm-es5/pt-CvvuIVLG.js +1 -0
- package/dist/esm-es5/required-tHxh_hWW.js +1 -0
- package/dist/esm-es5/ro-BOcX9wJt.js +1 -0
- package/dist/esm-es5/ru-CNbbLA5W.js +1 -0
- package/dist/esm-es5/si-CBbBs36T.js +1 -0
- package/dist/esm-es5/sk-DBNkuluD.js +1 -0
- package/dist/esm-es5/sl-Daq-FtDz.js +1 -0
- package/dist/esm-es5/sv-BfSAzCsG.js +1 -0
- package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
- package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
- package/dist/esm-es5/swisspost-internet-header.js +1 -1
- package/dist/esm-es5/switch-variants-DjIHLduJ.js +1 -0
- package/dist/esm-es5/th-DnzvZaNa.js +1 -0
- package/dist/esm-es5/tr-O5ciRquU.js +1 -0
- package/dist/esm-es5/type-Daxpt5v6.js +1 -0
- package/dist/esm-es5/uk-COulUFGY.js +1 -0
- package/dist/esm-es5/url-B61rZU6Z.js +1 -0
- package/dist/esm-es5/utils-CoDiS_Ik.js +1 -0
- package/dist/esm-es5/zh-bL3e3TZi.js +1 -0
- package/dist/swisspost-internet-header/assets/config/test-configuration.json +299 -3997
- package/dist/swisspost-internet-header/index.esm.js +1 -1
- package/dist/swisspost-internet-header/p-01f39bb3.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-05cab026.entry.js +1 -0
- package/dist/swisspost-internet-header/p-08F-DB-d.js +1 -0
- package/dist/swisspost-internet-header/p-0bf25ebc.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-10bdbca2.entry.js +1 -0
- package/dist/swisspost-internet-header/p-1386d1d4.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-15820529.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-18a84bc1.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-1b9a5275.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-1c40acd2.entry.js +1 -0
- package/dist/swisspost-internet-header/p-1jKm5Gii.system.js +1 -0
- package/dist/swisspost-internet-header/p-200dc938.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-20a0a7e7.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-23fa3342.entry.js +1 -0
- package/dist/swisspost-internet-header/p-2a8e1e33.entry.js +1 -0
- package/dist/swisspost-internet-header/p-2d1355fa.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-3028df9f.entry.js +1 -0
- package/dist/swisspost-internet-header/p-4107bc25.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-45af06c6.entry.js +1 -0
- package/dist/swisspost-internet-header/p-45d5a353.entry.js +1 -0
- package/dist/swisspost-internet-header/p-4d49c5ef.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-4f70afb5.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-50d3eb3c.entry.js +1 -0
- package/dist/swisspost-internet-header/p-520d3f06.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-5329e0b0.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-5ae377df.entry.js +1 -0
- package/dist/swisspost-internet-header/p-5bucphsC.js +1 -0
- package/dist/swisspost-internet-header/p-5daa12df.entry.js +1 -0
- package/dist/swisspost-internet-header/p-63b15be9.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-6427c6b0.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-64428c96.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-67889b8a.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-68dcd52c.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-6b19deb1.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-6zNP6ghZ.system.js +1 -0
- package/dist/swisspost-internet-header/p-72187f34.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-73d21f06.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-77199d61.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-779e1686.entry.js +1 -0
- package/dist/swisspost-internet-header/p-786e11c5.entry.js +1 -0
- package/dist/swisspost-internet-header/p-7cdf89dc.entry.js +1 -0
- package/dist/swisspost-internet-header/p-7f0d52e1.entry.js +1 -0
- package/dist/swisspost-internet-header/p-806b3bb9.entry.js +1 -0
- package/dist/swisspost-internet-header/p-8LXe8Zt_.js +1 -0
- package/dist/swisspost-internet-header/p-8bd09f9e.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-8f06d58d.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-9776463e.entry.js +1 -0
- package/dist/swisspost-internet-header/p-97eaecab.entry.js +1 -0
- package/dist/swisspost-internet-header/p-99c19dd2.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-9c5c32af.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-9d0b4493.entry.js +1 -0
- package/dist/swisspost-internet-header/p-B-8pFQ5m.system.js +1 -0
- package/dist/swisspost-internet-header/p-BBIc4yKQ.js +1 -0
- package/dist/swisspost-internet-header/p-BCAukqif.system.js +1 -0
- package/dist/swisspost-internet-header/p-BEtiMUfS.system.js +1 -0
- package/dist/swisspost-internet-header/p-BFTU3MAI.js +1 -0
- package/dist/swisspost-internet-header/p-BIAUtR0M.system.js +1 -0
- package/dist/swisspost-internet-header/p-BMZcKRx0.system.js +1 -0
- package/dist/swisspost-internet-header/p-BOvyPo43.js +1 -0
- package/dist/swisspost-internet-header/p-BRJfGtws.js +1 -0
- package/dist/swisspost-internet-header/p-BVCjnh6Q.js +1 -0
- package/dist/swisspost-internet-header/p-BYB4z0RW.system.js +1 -0
- package/dist/swisspost-internet-header/p-BayPSiTy.system.js +1 -0
- package/dist/swisspost-internet-header/p-BegUt68n.js +1 -0
- package/dist/swisspost-internet-header/p-Bh2tk0zI.js +1 -0
- package/dist/swisspost-internet-header/p-BlM7JurO.js +1 -0
- package/dist/swisspost-internet-header/p-BpIOvyQ5.system.js +1 -0
- package/dist/swisspost-internet-header/p-BpMc1tlF.system.js +1 -0
- package/dist/swisspost-internet-header/p-BrY4VWTQ.js +1 -0
- package/dist/swisspost-internet-header/p-BthnT4-E.system.js +1 -0
- package/dist/swisspost-internet-header/p-Bw0TBI7D.system.js +1 -0
- package/dist/swisspost-internet-header/p-Bwi1IyPf.system.js +1 -0
- package/dist/swisspost-internet-header/p-Bzy18UgU.system.js +1 -0
- package/dist/swisspost-internet-header/p-C0vbg-zz.js +1 -0
- package/dist/swisspost-internet-header/p-C1pxTt7y.system.js +1 -0
- package/dist/swisspost-internet-header/p-C2jKSjmt.js +1 -0
- package/dist/swisspost-internet-header/p-C6RsLT58.js +1 -0
- package/dist/swisspost-internet-header/p-C6zfwDtv.system.js +1 -0
- package/dist/swisspost-internet-header/p-C9hMpmsD.js +1 -0
- package/dist/swisspost-internet-header/p-CADoVT5-.system.js +1 -0
- package/dist/swisspost-internet-header/p-CAKTqU-w.js +1 -0
- package/dist/swisspost-internet-header/p-CDL0cxX6.system.js +1 -0
- package/dist/swisspost-internet-header/p-CDvD7acy.system.js +1 -0
- package/dist/swisspost-internet-header/p-CGtndO2e.system.js +1 -0
- package/dist/swisspost-internet-header/p-CHIhqOmO.system.js +1 -0
- package/dist/swisspost-internet-header/p-CHXKOBaU.js +1 -0
- package/dist/swisspost-internet-header/p-CNZqHwmo.js +1 -0
- package/dist/swisspost-internet-header/p-CN_0KCBp.system.js +2 -0
- package/dist/swisspost-internet-header/p-CQ_qts4t.system.js +1 -0
- package/dist/swisspost-internet-header/p-CS5VvAXO.js +1 -0
- package/dist/swisspost-internet-header/p-Cc7IsiYa.system.js +1 -0
- package/dist/swisspost-internet-header/p-CiwQnVr3.system.js +1 -0
- package/dist/swisspost-internet-header/p-Ck6UMUSA.js +1 -0
- package/dist/swisspost-internet-header/p-CkyG9hlM.system.js +1 -0
- package/dist/swisspost-internet-header/p-ClZlLe-y.js +1 -0
- package/dist/swisspost-internet-header/p-CnaHa6Aq.js +1 -0
- package/dist/swisspost-internet-header/p-CoDiS_Ik.js +1 -0
- package/dist/swisspost-internet-header/p-CrnWWY1E.js +1 -0
- package/dist/swisspost-internet-header/p-Cv89eU6e.js +1 -0
- package/dist/swisspost-internet-header/p-D4wq7hIE.system.js +1 -0
- package/dist/swisspost-internet-header/p-D5knoiyy.js +1 -0
- package/dist/swisspost-internet-header/p-D6qSFhdu.system.js +1 -0
- package/dist/swisspost-internet-header/p-DAh_7RzL.system.js +1 -0
- package/dist/swisspost-internet-header/p-DBjhKewN.js +1 -0
- package/dist/swisspost-internet-header/p-DC5_ck-0.system.js +1 -0
- package/dist/swisspost-internet-header/p-DCyIQfZ2.system.js +1 -0
- package/dist/swisspost-internet-header/p-DHzcjw9T.system.js +1 -0
- package/dist/swisspost-internet-header/p-DHzu1YG6.js +1 -0
- package/dist/swisspost-internet-header/p-DIiKaF8J.system.js +1 -0
- package/dist/swisspost-internet-header/p-DL9N-CT3.js +1 -0
- package/dist/swisspost-internet-header/p-DLha4BpQ.system.js +1 -0
- package/dist/swisspost-internet-header/p-DP3-NSR_.js +1 -0
- package/dist/swisspost-internet-header/p-DPFNFi0H.system.js +1 -0
- package/dist/swisspost-internet-header/p-DPR1GhBu.system.js +1 -0
- package/dist/swisspost-internet-header/p-DRiVosES.js +1 -0
- package/dist/swisspost-internet-header/p-DV36pI4M.js +1 -0
- package/dist/swisspost-internet-header/p-DWXd2GX-.system.js +1 -0
- package/dist/swisspost-internet-header/p-DYYpZAAV.js +1 -0
- package/dist/swisspost-internet-header/p-DZMUeI8H.js +1 -0
- package/dist/swisspost-internet-header/p-DaxAbTyB.system.js +1 -0
- package/dist/swisspost-internet-header/p-Dce9UusA.js +1 -0
- package/dist/swisspost-internet-header/p-DdrRvy2c.js +1 -0
- package/dist/swisspost-internet-header/p-DeDqpA-c.system.js +1 -0
- package/dist/swisspost-internet-header/p-DiYoqWHh.system.js +1 -0
- package/dist/swisspost-internet-header/p-Dj9sWsqU.system.js +1 -0
- package/dist/swisspost-internet-header/p-DjIHLduJ.js +1 -0
- package/dist/swisspost-internet-header/p-DoVr7uzg.system.js +8 -0
- package/dist/swisspost-internet-header/p-Drxf8XVU.js +1 -0
- package/dist/swisspost-internet-header/p-DtANKl_H.system.js +1 -0
- package/dist/swisspost-internet-header/p-DtfyHFUW.js +1 -0
- package/dist/swisspost-internet-header/p-DvaRK2lz.js +1 -0
- package/dist/swisspost-internet-header/p-FvYuLOr1.js +1 -0
- package/dist/swisspost-internet-header/p-Gs2JNy9V.js +1 -0
- package/dist/swisspost-internet-header/p-OPBQrtNK.js +1 -0
- package/dist/swisspost-internet-header/p-R5BnOD0U.system.js +1 -0
- package/dist/swisspost-internet-header/p-V3SCivhq.system.js +1 -0
- package/dist/swisspost-internet-header/p-ViHQ5Vzz.js +1 -0
- package/dist/swisspost-internet-header/p-_cjgMHk9.js +1 -0
- package/dist/swisspost-internet-header/p-_g4W0HO6.js +1 -0
- package/dist/swisspost-internet-header/p-a1b94999.entry.js +1 -0
- package/dist/swisspost-internet-header/p-a2b_YLeP.system.js +1 -0
- package/dist/swisspost-internet-header/p-a5705a24.entry.js +1 -0
- package/dist/swisspost-internet-header/p-aa4ed181.entry.js +1 -0
- package/dist/swisspost-internet-header/p-ad77e312.entry.js +1 -0
- package/dist/swisspost-internet-header/p-ad91f6c0.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-b5665fc8.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-b94bcb65.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-bR8vy6-s.js +1 -0
- package/dist/swisspost-internet-header/p-ba63e3e0.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-bebf0896.entry.js +1 -0
- package/dist/swisspost-internet-header/p-bff2014b.entry.js +1 -0
- package/dist/swisspost-internet-header/p-c16adcb7.entry.js +1 -0
- package/dist/swisspost-internet-header/p-c6e57a0c.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-ca000634.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-cccfd211.entry.js +1 -0
- package/dist/swisspost-internet-header/p-cd2583f5.entry.js +1 -0
- package/dist/swisspost-internet-header/p-cfcSoWNm.js +1 -0
- package/dist/swisspost-internet-header/p-d2599e7b.entry.js +1 -0
- package/dist/swisspost-internet-header/p-d2fa80e5.entry.js +1 -0
- package/dist/swisspost-internet-header/p-d42d1570.entry.js +1 -0
- package/dist/swisspost-internet-header/p-d4f8cba4.entry.js +1 -0
- package/dist/swisspost-internet-header/p-d558b697.entry.js +1 -0
- package/dist/swisspost-internet-header/p-d604cf73.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-da88d37e.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-dc287805.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-dfbe1d02.entry.js +1 -0
- package/dist/swisspost-internet-header/p-e25b4f0b.entry.js +1 -0
- package/dist/swisspost-internet-header/p-e655c88c.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-e9ae044e.entry.js +1 -0
- package/dist/swisspost-internet-header/p-ea8c458a.entry.js +1 -0
- package/dist/swisspost-internet-header/p-ec3c17b7.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-ef183dab.entry.js +1 -0
- package/dist/swisspost-internet-header/p-f074310f.entry.js +1 -0
- package/dist/swisspost-internet-header/p-f606f337.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-f986d587.entry.js +1 -0
- package/dist/swisspost-internet-header/p-faca91f3.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-fc6ef72b.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-fcf9631e.entry.js +1 -0
- package/dist/swisspost-internet-header/p-fe6a6a22.entry.js +1 -0
- package/dist/swisspost-internet-header/p-fec8e79e.system.entry.js +1 -0
- package/dist/swisspost-internet-header/p-h3opCZqH.js +2 -0
- package/dist/swisspost-internet-header/p-i0lB-o1h.system.js +1 -0
- package/dist/swisspost-internet-header/p-jHNdUN6D.js +1 -0
- package/dist/swisspost-internet-header/p-jK9tFtoG.js +1 -0
- package/dist/swisspost-internet-header/p-k8JcCfwd.js +1 -0
- package/dist/swisspost-internet-header/p-kC_vSmNI.system.js +1 -0
- package/dist/swisspost-internet-header/p-lpWRZjJp.js +1 -0
- package/dist/swisspost-internet-header/p-mkWktU-n.system.js +1 -0
- package/dist/swisspost-internet-header/p-nkh1tem5.system.js +1 -0
- package/dist/swisspost-internet-header/p-oqI6maRP.system.js +1 -0
- package/dist/swisspost-internet-header/p-qFxyG4GI.system.js +1 -0
- package/dist/swisspost-internet-header/p-qZj3hjL-.system.js +1 -0
- package/dist/swisspost-internet-header/p-qsCJzdGu.system.js +1 -0
- package/dist/swisspost-internet-header/p-rEfV4v4a.js +1 -0
- package/dist/swisspost-internet-header/p-tBnwOTPV.system.js +1 -0
- package/dist/swisspost-internet-header/p-u0jzgGDa.system.js +1 -0
- package/dist/swisspost-internet-header/p-uEVdce-r.system.js +1 -0
- package/dist/swisspost-internet-header/p-vAzHgwTd.js +1 -0
- package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.js +1 -1
- package/dist/types/components/internal/Avatar.d.ts +7 -0
- package/dist/types/components/internal/Link.d.ts +10 -0
- package/dist/types/components/internal/MegaDropdown.d.ts +10 -0
- package/dist/types/components/internal/Title.d.ts +14 -0
- package/dist/types/components/internal/UserMenu.d.ts +11 -0
- package/dist/types/components/internal/index.d.ts +5 -0
- package/dist/types/components/post-internet-footer/post-internet-footer.d.ts +9 -0
- package/dist/types/components/post-internet-header/post-internet-header.d.ts +43 -99
- package/dist/types/components.d.ts +92 -391
- package/dist/types/data/store.d.ts +7 -14
- package/dist/types/index.d.ts +1 -9
- package/dist/types/models/footer.model.d.ts +9 -47
- package/dist/types/models/general.model.d.ts +13 -46
- package/dist/types/models/header.model.d.ts +62 -163
- package/dist/types/models/shared.model.d.ts +24 -0
- package/dist/types/models/user.model.d.ts +9 -0
- package/dist/types/services/config.service.d.ts +13 -34
- package/dist/types/services/language.service.d.ts +4 -107
- package/dist/types/services/route.service.d.ts +12 -28
- package/dist/types/stencil-public-runtime.d.ts +194 -8
- package/dist/types/tests/setup-tests.d.ts +0 -0
- package/dist/types/utils/create-id-from.d.ts +1 -0
- package/dist/types/utils/get-text.d.ts +2 -0
- package/package.json +47 -39
- package/dist/cjs/bodyScrollLock.esm-59f17217.js +0 -283
- package/dist/cjs/focus-trap.cjs.entry.js +0 -1553
- package/dist/cjs/if.component-31542061.js +0 -10
- package/dist/cjs/index-ecd8c9bb.js +0 -1708
- package/dist/cjs/index-fbcc9ff3.js +0 -164
- package/dist/cjs/klp-widget.controller-7a8a5ddc.js +0 -15530
- package/dist/cjs/language.service-15af0e29.js +0 -195
- package/dist/cjs/post-header-logo.cjs.entry.js +0 -11
- package/dist/cjs/post-internet-breadcrumbs-6c043d02.js +0 -3095
- package/dist/cjs/post-internet-footer-9e46e1fc.js +0 -163
- package/dist/cjs/post-internet-header-cd62f5f3.js +0 -891
- package/dist/cjs/post-klp-login-widget-75dfc12f.js +0 -97
- package/dist/cjs/post-klp-login-widget.cjs.entry.js +0 -13
- package/dist/cjs/post-language-switch-0730827b.js +0 -105
- package/dist/cjs/post-language-switch.cjs.entry.js +0 -15
- package/dist/cjs/post-logo-4c1f9387.js +0 -24
- package/dist/cjs/post-main-navigation-bd2473fb.js +0 -242
- package/dist/cjs/post-main-navigation.cjs.entry.js +0 -16
- package/dist/cjs/post-meta-navigation-6cd7492f.js +0 -25
- package/dist/cjs/post-meta-navigation.cjs.entry.js +0 -11
- package/dist/cjs/post-search-1894421f.js +0 -603
- package/dist/cjs/post-search.cjs.entry.js +0 -18
- package/dist/cjs/post-skiplinks-469cc355.js +0 -51
- package/dist/cjs/post-skiplinks.cjs.entry.js +0 -13
- package/dist/cjs/store-c3e61d64.js +0 -210
- package/dist/cjs/svg-icon.component-00e315a8.js +0 -8
- package/dist/cjs/svg-sprite.component-aff81fb2.js +0 -51
- package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +0 -17
- package/dist/cjs/ui.service-7334148b.js +0 -33
- package/dist/cjs/utils-0a793763.js +0 -20
- package/dist/collection/assets/i18n/translations.js +0 -82
- package/dist/collection/assets/js/klp-login-widget.js +0 -1661
- package/dist/collection/assets/js/sockjs-client.js +0 -5134
- package/dist/collection/components/post-internet-breadcrumbs/components/breadcrumb-list.component.js +0 -10
- package/dist/collection/components/post-internet-breadcrumbs/components/middle-dropdown.component.js +0 -7
- package/dist/collection/components/post-internet-breadcrumbs/components/middle-links.component.js +0 -5
- package/dist/collection/components/post-internet-breadcrumbs/components/overlay.component.js +0 -10
- package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.css +0 -29
- package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js +0 -323
- package/dist/collection/components/post-internet-footer/components/post-footer-block-address.component.js +0 -11
- package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js +0 -26
- package/dist/collection/components/post-internet-footer/components/post-footer-block-custom.component.js +0 -5
- package/dist/collection/components/post-internet-footer/components/post-footer-block-list.component.js +0 -5
- package/dist/collection/components/post-internet-footer/components/post-footer-block-socials.component.js +0 -4
- package/dist/collection/components/post-internet-header/logo-animation/logo-animation.js +0 -37
- package/dist/collection/components/post-internet-header/logo-animation/logo-scale.js +0 -31
- package/dist/collection/components/post-internet-header/post-internet-header.css +0 -1
- package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js +0 -12
- package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.css +0 -7
- package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js +0 -162
- package/dist/collection/components/post-language-switch/components/post-language-switch-list.js +0 -15
- package/dist/collection/components/post-language-switch/post-language-switch.css +0 -1
- package/dist/collection/components/post-language-switch/post-language-switch.js +0 -185
- package/dist/collection/components/post-logo/post-logo.css +0 -1
- package/dist/collection/components/post-logo/post-logo.js +0 -24
- package/dist/collection/components/post-main-navigation/components/level-one-action.component.js +0 -13
- package/dist/collection/components/post-main-navigation/post-main-navigation.css +0 -1
- package/dist/collection/components/post-main-navigation/post-main-navigation.js +0 -348
- package/dist/collection/components/post-meta-navigation/post-meta-navigation.css +0 -1
- package/dist/collection/components/post-meta-navigation/post-meta-navigation.js +0 -66
- package/dist/collection/components/post-search/post-search.css +0 -54
- package/dist/collection/components/post-search/post-search.js +0 -420
- package/dist/collection/components/post-skiplinks/post-skiplinks.css +0 -1
- package/dist/collection/components/post-skiplinks/post-skiplinks.js +0 -50
- package/dist/collection/components/shared/focus-trap.js +0 -78
- package/dist/collection/models/geocode.model.js +0 -8
- package/dist/collection/models/implementor.model.js +0 -1
- package/dist/collection/models/language.model.js +0 -1
- package/dist/collection/models/track-and-trace.model.js +0 -1
- package/dist/collection/services/search/coveo.service.js +0 -42
- package/dist/collection/services/search/coveo.settings.js +0 -34
- package/dist/collection/services/search/parcel.service.js +0 -63
- package/dist/collection/services/search/places.service.js +0 -75
- package/dist/collection/services/search/places.settings.js +0 -15
- package/dist/collection/services/search/search-utilities.js +0 -12
- package/dist/collection/services/search/search.service.js +0 -41
- package/dist/collection/services/ui.service.js +0 -29
- package/dist/collection/utils/highlighted.component.js +0 -10
- package/dist/collection/utils/if.component.js +0 -6
- package/dist/collection/utils/scrollparent.js +0 -23
- package/dist/collection/utils/svg-icon.component.js +0 -2
- package/dist/collection/utils/svg-sprite.component.js +0 -2
- package/dist/collection/utils/utils.js +0 -15
- package/dist/components/bodyScrollLock.esm.js +0 -279
- package/dist/components/focus-trap.d.ts +0 -11
- package/dist/components/focus-trap.js +0 -6
- package/dist/components/focus-trap2.js +0 -1568
- package/dist/components/klp-widget.controller.js +0 -15528
- package/dist/components/language.service.js +0 -191
- package/dist/components/post-header-logo.d.ts +0 -11
- package/dist/components/post-header-logo.js +0 -6
- package/dist/components/post-klp-login-widget.d.ts +0 -11
- package/dist/components/post-klp-login-widget.js +0 -6
- package/dist/components/post-klp-login-widget2.js +0 -114
- package/dist/components/post-language-switch.d.ts +0 -11
- package/dist/components/post-language-switch.js +0 -6
- package/dist/components/post-language-switch2.js +0 -122
- package/dist/components/post-main-navigation.d.ts +0 -11
- package/dist/components/post-main-navigation.js +0 -6
- package/dist/components/post-main-navigation2.js +0 -261
- package/dist/components/post-meta-navigation.d.ts +0 -11
- package/dist/components/post-meta-navigation.js +0 -6
- package/dist/components/post-meta-navigation2.js +0 -41
- package/dist/components/post-search.d.ts +0 -11
- package/dist/components/post-search.js +0 -6
- package/dist/components/post-search2.js +0 -635
- package/dist/components/post-skiplinks.d.ts +0 -11
- package/dist/components/post-skiplinks.js +0 -6
- package/dist/components/post-skiplinks2.js +0 -63
- package/dist/components/store.js +0 -207
- package/dist/components/svg-icon.component.js +0 -6
- package/dist/components/svg-sprite.component.js +0 -49
- package/dist/components/swisspost-internet-breadcrumbs.d.ts +0 -11
- package/dist/components/swisspost-internet-breadcrumbs.js +0 -3128
- package/dist/components/ui.service.js +0 -30
- package/dist/esm/bodyScrollLock.esm-afcc00e3.js +0 -279
- package/dist/esm/focus-trap.entry.js +0 -1549
- package/dist/esm/if.component-d88d9e48.js +0 -8
- package/dist/esm/index-bb0e68fd.js +0 -1677
- package/dist/esm/index-d3f1363d.js +0 -161
- package/dist/esm/klp-widget.controller-6f5a7586.js +0 -15528
- package/dist/esm/language.service-2960ab93.js +0 -191
- package/dist/esm/post-header-logo.entry.js +0 -3
- package/dist/esm/post-internet-breadcrumbs-ee507bec.js +0 -3093
- package/dist/esm/post-internet-footer-cae59692.js +0 -161
- package/dist/esm/post-internet-header-c629061c.js +0 -889
- package/dist/esm/post-klp-login-widget-6aeb2fd2.js +0 -95
- package/dist/esm/post-klp-login-widget.entry.js +0 -5
- package/dist/esm/post-language-switch-d9159f47.js +0 -103
- package/dist/esm/post-language-switch.entry.js +0 -7
- package/dist/esm/post-logo-2c3faf36.js +0 -22
- package/dist/esm/post-main-navigation-58b5c03d.js +0 -240
- package/dist/esm/post-main-navigation.entry.js +0 -8
- package/dist/esm/post-meta-navigation-4bf72315.js +0 -23
- package/dist/esm/post-meta-navigation.entry.js +0 -3
- package/dist/esm/post-search-daf7d66d.js +0 -601
- package/dist/esm/post-search.entry.js +0 -10
- package/dist/esm/post-skiplinks-0779348d.js +0 -49
- package/dist/esm/post-skiplinks.entry.js +0 -5
- package/dist/esm/store-629cab77.js +0 -207
- package/dist/esm/svg-icon.component-70692acc.js +0 -6
- package/dist/esm/svg-sprite.component-abb69a1b.js +0 -49
- package/dist/esm/swisspost-internet-breadcrumbs.entry.js +0 -9
- package/dist/esm/ui.service-22f2c593.js +0 -30
- package/dist/esm/utils-c8805f81.js +0 -17
- package/dist/esm-es5/bodyScrollLock.esm-afcc00e3.js +0 -1
- package/dist/esm-es5/focus-trap.entry.js +0 -10
- package/dist/esm-es5/if.component-d88d9e48.js +0 -1
- package/dist/esm-es5/index-bb0e68fd.js +0 -1
- package/dist/esm-es5/index-d3f1363d.js +0 -1
- package/dist/esm-es5/klp-widget.controller-6f5a7586.js +0 -11
- package/dist/esm-es5/language.service-2960ab93.js +0 -1
- package/dist/esm-es5/post-header-logo.entry.js +0 -1
- package/dist/esm-es5/post-internet-breadcrumbs-ee507bec.js +0 -1
- package/dist/esm-es5/post-internet-footer-cae59692.js +0 -1
- package/dist/esm-es5/post-internet-header-c629061c.js +0 -1
- package/dist/esm-es5/post-klp-login-widget-6aeb2fd2.js +0 -1
- package/dist/esm-es5/post-klp-login-widget.entry.js +0 -1
- package/dist/esm-es5/post-language-switch-d9159f47.js +0 -1
- package/dist/esm-es5/post-language-switch.entry.js +0 -1
- package/dist/esm-es5/post-logo-2c3faf36.js +0 -1
- package/dist/esm-es5/post-main-navigation-58b5c03d.js +0 -1
- package/dist/esm-es5/post-main-navigation.entry.js +0 -1
- package/dist/esm-es5/post-meta-navigation-4bf72315.js +0 -1
- package/dist/esm-es5/post-meta-navigation.entry.js +0 -1
- package/dist/esm-es5/post-search-daf7d66d.js +0 -1
- package/dist/esm-es5/post-search.entry.js +0 -1
- package/dist/esm-es5/post-skiplinks-0779348d.js +0 -1
- package/dist/esm-es5/post-skiplinks.entry.js +0 -1
- package/dist/esm-es5/store-629cab77.js +0 -1
- package/dist/esm-es5/svg-icon.component-70692acc.js +0 -1
- package/dist/esm-es5/svg-sprite.component-abb69a1b.js +0 -1
- package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +0 -1
- package/dist/esm-es5/ui.service-22f2c593.js +0 -1
- package/dist/esm-es5/utils-c8805f81.js +0 -1
- package/dist/swisspost-internet-header/p-04fd7d46.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-06f51515.system.js +0 -1
- package/dist/swisspost-internet-header/p-08153cdd.system.js +0 -1
- package/dist/swisspost-internet-header/p-0fd62e04.entry.js +0 -1
- package/dist/swisspost-internet-header/p-151d419a.js +0 -1
- package/dist/swisspost-internet-header/p-1560e8a8.entry.js +0 -1
- package/dist/swisspost-internet-header/p-158715a0.js +0 -1
- package/dist/swisspost-internet-header/p-19871189.system.js +0 -1
- package/dist/swisspost-internet-header/p-1a4bb959.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-1baf0e1e.entry.js +0 -1
- package/dist/swisspost-internet-header/p-1d65df23.system.js +0 -11
- package/dist/swisspost-internet-header/p-1e791ed5.js +0 -1
- package/dist/swisspost-internet-header/p-1fd8561a.system.js +0 -1
- package/dist/swisspost-internet-header/p-29d246c8.entry.js +0 -1
- package/dist/swisspost-internet-header/p-2aced2a4.entry.js +0 -1
- package/dist/swisspost-internet-header/p-2f3fec1b.js +0 -1
- package/dist/swisspost-internet-header/p-33c4018e.system.js +0 -1
- package/dist/swisspost-internet-header/p-34e560bf.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-363c44ec.system.js +0 -1
- package/dist/swisspost-internet-header/p-4d24ffae.js +0 -1
- package/dist/swisspost-internet-header/p-4d5bddc5.system.entry.js +0 -10
- package/dist/swisspost-internet-header/p-511f2bdf.js +0 -1
- package/dist/swisspost-internet-header/p-5600adca.system.js +0 -2
- package/dist/swisspost-internet-header/p-5692afb1.entry.js +0 -1
- package/dist/swisspost-internet-header/p-5b13976a.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-63047c81.js +0 -1
- package/dist/swisspost-internet-header/p-6339b18e.js +0 -1
- package/dist/swisspost-internet-header/p-6708f094.system.js +0 -1
- package/dist/swisspost-internet-header/p-67f6b5a8.js +0 -2
- package/dist/swisspost-internet-header/p-693ba981.system.js +0 -1
- package/dist/swisspost-internet-header/p-695fe962.system.js +0 -1
- package/dist/swisspost-internet-header/p-6c4128db.js +0 -1
- package/dist/swisspost-internet-header/p-6c5a684e.entry.js +0 -1
- package/dist/swisspost-internet-header/p-6dfbb3f2.js +0 -1
- package/dist/swisspost-internet-header/p-6fd592eb.system.js +0 -1
- package/dist/swisspost-internet-header/p-707faa23.js +0 -1
- package/dist/swisspost-internet-header/p-78d28548.js +0 -1
- package/dist/swisspost-internet-header/p-7950c3fc.system.js +0 -1
- package/dist/swisspost-internet-header/p-812782e0.system.js +0 -1
- package/dist/swisspost-internet-header/p-840aa5c6.js +0 -1
- package/dist/swisspost-internet-header/p-88295f48.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-944e8412.entry.js +0 -11
- package/dist/swisspost-internet-header/p-95285051.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-9ba6f8b6.system.js +0 -1
- package/dist/swisspost-internet-header/p-9d5dbac8.entry.js +0 -1
- package/dist/swisspost-internet-header/p-9f6b64df.js +0 -11
- package/dist/swisspost-internet-header/p-a0313d87.js +0 -1
- package/dist/swisspost-internet-header/p-a06f4e27.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-a119b38d.js +0 -1
- package/dist/swisspost-internet-header/p-a39139a9.js +0 -1
- package/dist/swisspost-internet-header/p-abf306bd.system.js +0 -1
- package/dist/swisspost-internet-header/p-b3014611.system.js +0 -1
- package/dist/swisspost-internet-header/p-cce8bd3f.entry.js +0 -1
- package/dist/swisspost-internet-header/p-cdb473a4.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-cf4d8f82.js +0 -1
- package/dist/swisspost-internet-header/p-d7e221af.system.js +0 -1
- package/dist/swisspost-internet-header/p-dc2f1d20.js +0 -1
- package/dist/swisspost-internet-header/p-ddb5c853.system.js +0 -1
- package/dist/swisspost-internet-header/p-e673cc0a.entry.js +0 -1
- package/dist/swisspost-internet-header/p-eefdd3f5.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-f0a9cc89.system.js +0 -1
- package/dist/swisspost-internet-header/p-f5d48ed5.system.js +0 -1
- package/dist/swisspost-internet-header/p-f65ba1be.system.entry.js +0 -1
- package/dist/swisspost-internet-header/p-fa4599e6.js +0 -1
- package/dist/swisspost-internet-header/p-fb69b98c.system.js +0 -1
- package/dist/swisspost-internet-header/p-fc668bdc.system.js +0 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.css +0 -1
- package/dist/types/assets/i18n/translations.d.ts +0 -82
- package/dist/types/components/post-internet-breadcrumbs/components/breadcrumb-list.component.d.ts +0 -9
- package/dist/types/components/post-internet-breadcrumbs/components/middle-dropdown.component.d.ts +0 -7
- package/dist/types/components/post-internet-breadcrumbs/components/middle-links.component.d.ts +0 -6
- package/dist/types/components/post-internet-breadcrumbs/components/overlay.component.d.ts +0 -16
- package/dist/types/components/post-internet-breadcrumbs/post-internet-breadcrumbs.d.ts +0 -57
- package/dist/types/components/post-internet-footer/components/post-footer-block-address.component.d.ts +0 -5
- package/dist/types/components/post-internet-footer/components/post-footer-block-contact.component.d.ts +0 -6
- package/dist/types/components/post-internet-footer/components/post-footer-block-custom.component.d.ts +0 -4
- package/dist/types/components/post-internet-footer/components/post-footer-block-list.component.d.ts +0 -5
- package/dist/types/components/post-internet-footer/components/post-footer-block-socials.component.d.ts +0 -5
- package/dist/types/components/post-internet-header/logo-animation/logo-animation.d.ts +0 -1
- package/dist/types/components/post-internet-header/logo-animation/logo-scale.d.ts +0 -4
- package/dist/types/components/post-klp-login-widget/klp-widget.controller.d.ts +0 -3
- package/dist/types/components/post-klp-login-widget/post-klp-login-widget.d.ts +0 -21
- package/dist/types/components/post-language-switch/components/post-language-switch-list.d.ts +0 -6
- package/dist/types/components/post-language-switch/post-language-switch.d.ts +0 -37
- package/dist/types/components/post-logo/post-logo.d.ts +0 -4
- package/dist/types/components/post-main-navigation/components/level-one-action.component.d.ts +0 -8
- package/dist/types/components/post-main-navigation/post-main-navigation.d.ts +0 -48
- package/dist/types/components/post-meta-navigation/post-meta-navigation.d.ts +0 -12
- package/dist/types/components/post-search/post-search.d.ts +0 -79
- package/dist/types/components/post-skiplinks/post-skiplinks.d.ts +0 -9
- package/dist/types/components/shared/focus-trap.d.ts +0 -17
- package/dist/types/models/breadcrumbs.model.d.ts +0 -36
- package/dist/types/models/coveo.model.d.ts +0 -22
- package/dist/types/models/geocode.model.d.ts +0 -53
- package/dist/types/models/implementor.model.d.ts +0 -22
- package/dist/types/models/language.model.d.ts +0 -6
- package/dist/types/models/track-and-trace.model.d.ts +0 -25
- package/dist/types/services/search/coveo.service.d.ts +0 -9
- package/dist/types/services/search/coveo.settings.d.ts +0 -2
- package/dist/types/services/search/parcel.service.d.ts +0 -28
- package/dist/types/services/search/places.service.d.ts +0 -24
- package/dist/types/services/search/places.settings.d.ts +0 -3
- package/dist/types/services/search/search-utilities.d.ts +0 -9
- package/dist/types/services/search/search.service.d.ts +0 -24
- package/dist/types/services/ui.service.d.ts +0 -23
- package/dist/types/utils/highlighted.component.d.ts +0 -4
- package/dist/types/utils/if.component.d.ts +0 -4
- package/dist/types/utils/scrollparent.d.ts +0 -1
- package/dist/types/utils/svg-icon.component.d.ts +0 -4
- package/dist/types/utils/svg-sprite.component.d.ts +0 -1
- package/dist/types/utils/utils.d.ts +0 -8
- package/loader/package.json +0 -11
- /package/dist/cjs/{app-globals-3a1e7e63.js → app-globals-V2Kpy_OQ.js} +0 -0
- /package/dist/collection/models/{breadcrumbs.model.js → shared.model.js} +0 -0
- /package/dist/collection/models/{coveo.model.js → user.model.js} +0 -0
- /package/dist/esm/{app-globals-0f993ce5.js → app-globals-DQuL1Twl.js} +0 -0
- /package/dist/esm-es5/{app-globals-0f993ce5.js → app-globals-DQuL1Twl.js} +0 -0
- /package/dist/swisspost-internet-header/{p-56ba5cbf.system.js → p-BbPAtVJG.system.js} +0 -0
- /package/dist/swisspost-internet-header/{p-e1255160.js → p-DQuL1Twl.js} +0 -0
|
@@ -1,889 +0,0 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-bb0e68fd.js';
|
|
2
|
-
import { d as debounce, t as throttle } from './index-d3f1363d.js';
|
|
3
|
-
import { g as getUserLang, p as persistLanguageChoice, t as translate } from './language.service-2960ab93.js';
|
|
4
|
-
import { u as uniqueId } from './utils-c8805f81.js';
|
|
5
|
-
import { s as state, d as dispose } from './store-629cab77.js';
|
|
6
|
-
import { S as SvgSprite } from './svg-sprite.component-abb69a1b.js';
|
|
7
|
-
import { S as SvgIcon } from './svg-icon.component-70692acc.js';
|
|
8
|
-
import { I as If } from './if.component-d88d9e48.js';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Activate the current route based on the config and the match mode
|
|
12
|
-
* @param config Main Navigation Config
|
|
13
|
-
* @param activeRouteProp Match mode or custom URL to compare against
|
|
14
|
-
* @returns Modified Main Navigation Config
|
|
15
|
-
*/
|
|
16
|
-
const markActiveRoute = (config, activeRouteProp) => {
|
|
17
|
-
// Don't highlight any route
|
|
18
|
-
if (activeRouteProp === false) {
|
|
19
|
-
return config;
|
|
20
|
-
}
|
|
21
|
-
// Set reference URL to compare nav items against
|
|
22
|
-
let referenceUrl;
|
|
23
|
-
let isRelativeReference = false;
|
|
24
|
-
config = resetOverrideConfig(config);
|
|
25
|
-
if (activeRouteProp === 'auto' || activeRouteProp === 'exact') {
|
|
26
|
-
// Check if an active route is already configured, set override to that and return
|
|
27
|
-
if (hasActivePortalRoute(config)) {
|
|
28
|
-
return resetActiveStateToPortalConfig(config);
|
|
29
|
-
}
|
|
30
|
-
referenceUrl = new URL(window.location.href);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
try {
|
|
34
|
-
isRelativeReference = activeRouteProp.startsWith('/') || activeRouteProp.startsWith('./');
|
|
35
|
-
referenceUrl = new URL(activeRouteProp, window.location.href);
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
console.warn(`Active Route: ${activeRouteProp} is not a valid URL. Navigation highlighting has been disabled.`);
|
|
39
|
-
return config;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
const scoreList = compileScoreList(config, referenceUrl, activeRouteProp, isRelativeReference);
|
|
43
|
-
if (scoreList.length === 0) {
|
|
44
|
-
// No match found or already active links defined
|
|
45
|
-
return config;
|
|
46
|
-
}
|
|
47
|
-
const winnerPair = scoreList[0];
|
|
48
|
-
winnerPair.main.isActiveOverride = true;
|
|
49
|
-
if (winnerPair.sub)
|
|
50
|
-
winnerPair.sub.isActiveOverride = true;
|
|
51
|
-
return config;
|
|
52
|
-
};
|
|
53
|
-
/**
|
|
54
|
-
* Check if the portal config set any active route
|
|
55
|
-
* @param config Main navigation config
|
|
56
|
-
* @returns True if portal set any route as active
|
|
57
|
-
*/
|
|
58
|
-
const hasActivePortalRoute = (config) => {
|
|
59
|
-
return config.filter(nav => nav.isActive).length > 0;
|
|
60
|
-
};
|
|
61
|
-
const resetActiveStateToPortalConfig = (config) => {
|
|
62
|
-
return config.map(nav => {
|
|
63
|
-
var _a;
|
|
64
|
-
return (Object.assign(Object.assign({}, nav), { isActiveOverride: nav.isActive, flyout: (_a = nav.flyout) === null || _a === void 0 ? void 0 : _a.map(flyout => (Object.assign(Object.assign({}, flyout), { linkList: flyout.linkList.map(link => (Object.assign(Object.assign({}, link), { isActiveOverride: link.isActive }))) }))) }));
|
|
65
|
-
});
|
|
66
|
-
};
|
|
67
|
-
const resetOverrideConfig = (config) => {
|
|
68
|
-
return config.map(nav => {
|
|
69
|
-
var _a;
|
|
70
|
-
return (Object.assign(Object.assign({}, nav), { isActiveOverride: false,
|
|
71
|
-
// Initialize flyout as an empty array if it's undefined
|
|
72
|
-
flyout: ((_a = nav.flyout) === null || _a === void 0 ? void 0 : _a.map(flyout => (Object.assign(Object.assign({}, flyout), { linkList: flyout.linkList.map(link => (Object.assign(Object.assign({}, link), { isActiveOverride: false }))) })))) || [] }));
|
|
73
|
-
});
|
|
74
|
-
};
|
|
75
|
-
/**
|
|
76
|
-
* Compile a list of scores based on how well nav items match the reference URL
|
|
77
|
-
* @param config Main Nav Config
|
|
78
|
-
* @param referenceUrl URL to compare nav items against (window.location or custom)
|
|
79
|
-
* @param activeRouteProp Match mode
|
|
80
|
-
* @returns A list of scored URLs if any matched
|
|
81
|
-
*/
|
|
82
|
-
const compileScoreList = (config, referenceUrl, activeRouteProp, isRelativeReference) => {
|
|
83
|
-
// Flag to check if the Portal set any active links or if there are any exact matches
|
|
84
|
-
let hadAnyActiveLink = false;
|
|
85
|
-
const scoreList = [];
|
|
86
|
-
config
|
|
87
|
-
.filter(mainNav => !hadAnyActiveLink && mainNav)
|
|
88
|
-
.forEach(mainNav => {
|
|
89
|
-
var _a;
|
|
90
|
-
try {
|
|
91
|
-
const navItemUrl = new URL(mainNav.url);
|
|
92
|
-
const score = compareRoutes(referenceUrl, navItemUrl, isRelativeReference, activeRouteProp);
|
|
93
|
-
hadAnyActiveLink = updateScoreList(scoreList, score, { main: mainNav, score }, hadAnyActiveLink);
|
|
94
|
-
}
|
|
95
|
-
catch (_b) {
|
|
96
|
-
// Not a valid url, continue
|
|
97
|
-
}
|
|
98
|
-
// Loop through flyout links 2nd level
|
|
99
|
-
(_a = mainNav.flyout) === null || _a === void 0 ? void 0 : _a.forEach(flyout => {
|
|
100
|
-
var _a;
|
|
101
|
-
(_a = flyout.linkList) === null || _a === void 0 ? void 0 : _a.forEach(linklist => {
|
|
102
|
-
// Don't override if any link is already active
|
|
103
|
-
if (linklist.isActive && (activeRouteProp === 'auto' || activeRouteProp === 'exact')) {
|
|
104
|
-
hadAnyActiveLink = true;
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
107
|
-
try {
|
|
108
|
-
const flyoutNavUrl = new URL(linklist.url);
|
|
109
|
-
const score = compareRoutes(referenceUrl, flyoutNavUrl, isRelativeReference, activeRouteProp);
|
|
110
|
-
hadAnyActiveLink = updateScoreList(scoreList, score, { main: mainNav, sub: linklist, score }, hadAnyActiveLink);
|
|
111
|
-
}
|
|
112
|
-
catch (_a) {
|
|
113
|
-
// Not a valid URL, continue
|
|
114
|
-
}
|
|
115
|
-
});
|
|
116
|
-
});
|
|
117
|
-
});
|
|
118
|
-
return scoreList.sort((a, b) => b.score - a.score);
|
|
119
|
-
};
|
|
120
|
-
/**
|
|
121
|
-
* Update score list
|
|
122
|
-
*/
|
|
123
|
-
function updateScoreList(scoreList, score, scoreListItem, hadAnyActiveLink) {
|
|
124
|
-
let hadActiveLink = hadAnyActiveLink;
|
|
125
|
-
if (score > 0) {
|
|
126
|
-
if (score === Infinity)
|
|
127
|
-
hadActiveLink = true;
|
|
128
|
-
// Push score
|
|
129
|
-
scoreList.push(scoreListItem);
|
|
130
|
-
}
|
|
131
|
-
return hadActiveLink;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Compare a nav item URL against the reference URL for similarity
|
|
135
|
-
* @param referenceUrl URL we're comparing against (from window.location or custom)
|
|
136
|
-
* @param navItemUrl URL from the navigation item
|
|
137
|
-
* @param matchMode exact or auto matching
|
|
138
|
-
* @returns Score indicating how well the URLs match
|
|
139
|
-
*/
|
|
140
|
-
const compareRoutes = (referenceUrl, navItemUrl, isRelativeReference, matchMode) => {
|
|
141
|
-
if (referenceUrl === null || navItemUrl === null) {
|
|
142
|
-
return 0;
|
|
143
|
-
}
|
|
144
|
-
// Only compare origins if reference URL is not relative
|
|
145
|
-
if (!isRelativeReference && referenceUrl.origin !== navItemUrl.origin) {
|
|
146
|
-
return 0;
|
|
147
|
-
}
|
|
148
|
-
const referenceUrlPath = referenceUrl.pathname.toLocaleLowerCase();
|
|
149
|
-
const navItemUrlPath = navItemUrl.pathname.toLocaleLowerCase();
|
|
150
|
-
// Exact match, pathname is the same
|
|
151
|
-
if (referenceUrlPath === navItemUrlPath) {
|
|
152
|
-
return Infinity;
|
|
153
|
-
}
|
|
154
|
-
// The reference path is shorter than nav item path, a match is impossible
|
|
155
|
-
if (referenceUrl.pathname.length < navItemUrl.pathname.length) {
|
|
156
|
-
return 0;
|
|
157
|
-
}
|
|
158
|
-
if (matchMode === 'auto') {
|
|
159
|
-
const referenceSegments = [
|
|
160
|
-
referenceUrl.origin.toLocaleLowerCase(),
|
|
161
|
-
...referenceUrlPath.split('/').filter(x => x !== null && x !== ''),
|
|
162
|
-
];
|
|
163
|
-
const navItemSegments = [
|
|
164
|
-
navItemUrl.origin.toLocaleLowerCase(),
|
|
165
|
-
...navItemUrlPath.split('/').filter(x => x !== null && x !== ''),
|
|
166
|
-
];
|
|
167
|
-
const score = getSimilarityScore(referenceSegments, navItemSegments);
|
|
168
|
-
return Math.min(referenceSegments.length, navItemSegments.length) === score ? score : 0;
|
|
169
|
-
}
|
|
170
|
-
return 0;
|
|
171
|
-
};
|
|
172
|
-
/**
|
|
173
|
-
* Check how many items in an array match
|
|
174
|
-
* @param a Reference array
|
|
175
|
-
* @param b Nav item array to compare
|
|
176
|
-
* @returns Score
|
|
177
|
-
*/
|
|
178
|
-
const getSimilarityScore = (a, b) => {
|
|
179
|
-
if (a == null || b == null || a.length === 0 || b.length === 0) {
|
|
180
|
-
return 0;
|
|
181
|
-
}
|
|
182
|
-
let i = 0;
|
|
183
|
-
for (; i < Math.min(a.length, b.length); i++) {
|
|
184
|
-
if (a[i] !== b[i]) {
|
|
185
|
-
return 0;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
return i;
|
|
189
|
-
};
|
|
190
|
-
|
|
191
|
-
// Prevent double requests
|
|
192
|
-
let request = null;
|
|
193
|
-
// Cache the original os flyout to use it for updates
|
|
194
|
-
let osFlyoutCache = null;
|
|
195
|
-
const getPPMConfig = () => {
|
|
196
|
-
const ppmConfigScript = document.querySelector('#PPM_HEADER_DATA');
|
|
197
|
-
if ((ppmConfigScript === null || ppmConfigScript === void 0 ? void 0 : ppmConfigScript.textContent) != null) {
|
|
198
|
-
return JSON.parse(ppmConfigScript.textContent);
|
|
199
|
-
}
|
|
200
|
-
return null;
|
|
201
|
-
};
|
|
202
|
-
/**
|
|
203
|
-
* Get a localized config object
|
|
204
|
-
*
|
|
205
|
-
* @param projectId String identifying the project
|
|
206
|
-
* @param language [optional] Preferred language
|
|
207
|
-
* @returns Localized config object
|
|
208
|
-
*/
|
|
209
|
-
const getLocalizedConfig = async ({ projectId, environment, language, cookieKey, localStorageKey, activeRouteProp, localizedCustomConfig, osFlyoutOverrides, }) => {
|
|
210
|
-
var _a, _b;
|
|
211
|
-
const ppmConfig = getPPMConfig();
|
|
212
|
-
let localizedConfig;
|
|
213
|
-
let config = null;
|
|
214
|
-
let lang;
|
|
215
|
-
if (ppmConfig) {
|
|
216
|
-
localizedConfig = ppmConfig;
|
|
217
|
-
lang = document.documentElement.lang;
|
|
218
|
-
}
|
|
219
|
-
else {
|
|
220
|
-
if (request == null) {
|
|
221
|
-
request = fetchConfig(projectId, environment);
|
|
222
|
-
}
|
|
223
|
-
config = await request;
|
|
224
|
-
lang = getUserLang(Object.keys(config), language, localStorageKey, cookieKey);
|
|
225
|
-
if (lang === undefined) {
|
|
226
|
-
throw new Error('Internet Header: unable to determine current language');
|
|
227
|
-
}
|
|
228
|
-
// Clone config for more predictable state updates
|
|
229
|
-
localizedConfig = Object.assign({}, config[lang]);
|
|
230
|
-
}
|
|
231
|
-
// Merge custom config with portal config
|
|
232
|
-
if (localizedCustomConfig) {
|
|
233
|
-
const header = ((_a = localizedCustomConfig === null || localizedCustomConfig === void 0 ? void 0 : localizedCustomConfig.header) === null || _a === void 0 ? void 0 : _a.navMain)
|
|
234
|
-
? Object.assign(Object.assign({}, localizedConfig.header), { navMain: [...localizedConfig.header.navMain, ...localizedCustomConfig.header.navMain] }) : localizedConfig.header;
|
|
235
|
-
localizedConfig = Object.assign(Object.assign({}, localizedConfig), { header });
|
|
236
|
-
}
|
|
237
|
-
// Add entries to flyout_os
|
|
238
|
-
if (osFlyoutOverrides)
|
|
239
|
-
localizedConfig.header.navMain = mergeOsFlyoutOverrides(localizedConfig, osFlyoutOverrides);
|
|
240
|
-
// Mark active route
|
|
241
|
-
if (activeRouteProp != null)
|
|
242
|
-
localizedConfig.header.navMain = markActiveRoute(localizedConfig.header.navMain, activeRouteProp);
|
|
243
|
-
setMainNavigationIds((_b = localizedConfig === null || localizedConfig === void 0 ? void 0 : localizedConfig.header) === null || _b === void 0 ? void 0 : _b.navMain);
|
|
244
|
-
// Set the new language choice
|
|
245
|
-
persistLanguageChoice(lang, cookieKey, localStorageKey);
|
|
246
|
-
return localizedConfig;
|
|
247
|
-
};
|
|
248
|
-
/**
|
|
249
|
-
* Merge portal config with custom os flyout overrides
|
|
250
|
-
* @param config Localized config
|
|
251
|
-
* @param osFlyoutOverrides Overrides for the flyout
|
|
252
|
-
* @returns Merged localized config
|
|
253
|
-
*/
|
|
254
|
-
const mergeOsFlyoutOverrides = (config, osFlyoutOverrides) => {
|
|
255
|
-
if (osFlyoutOverrides == null)
|
|
256
|
-
return config.header.navMain;
|
|
257
|
-
return config.header.navMain.map(mainNav => {
|
|
258
|
-
var _a, _b, _c;
|
|
259
|
-
if (mainNav.id !== 'flyout_os')
|
|
260
|
-
return mainNav;
|
|
261
|
-
if (osFlyoutCache === null) {
|
|
262
|
-
osFlyoutCache = JSON.parse(JSON.stringify(mainNav));
|
|
263
|
-
}
|
|
264
|
-
const mainNavText = (_a = osFlyoutOverrides.text) !== null && _a !== void 0 ? _a : osFlyoutCache.text;
|
|
265
|
-
const mainNavTitle = (_b = osFlyoutOverrides.title) !== null && _b !== void 0 ? _b : osFlyoutCache.title;
|
|
266
|
-
if (osFlyoutCache.flyout == null ||
|
|
267
|
-
osFlyoutCache.flyout.length === 0 ||
|
|
268
|
-
osFlyoutOverrides.flyout == null ||
|
|
269
|
-
osFlyoutOverrides.flyout.length === 0)
|
|
270
|
-
return Object.assign(Object.assign({}, mainNav), { title: mainNavTitle, text: mainNavText });
|
|
271
|
-
// Add entries for os flyout columns without overriding existing config
|
|
272
|
-
const mainNavFlyout = [
|
|
273
|
-
...osFlyoutCache.flyout.map((col, index) => {
|
|
274
|
-
var _a, _b;
|
|
275
|
-
const overrides = (_a = osFlyoutOverrides.flyout) === null || _a === void 0 ? void 0 : _a[index]; // Check if overrides exist
|
|
276
|
-
const title = (_b = overrides === null || overrides === void 0 ? void 0 : overrides.title) !== null && _b !== void 0 ? _b : col.title;
|
|
277
|
-
// Check if the linkList exists in the overrides and then use it
|
|
278
|
-
const linkList = (overrides === null || overrides === void 0 ? void 0 : overrides.linkList) != null ? overrides.linkList : [];
|
|
279
|
-
return {
|
|
280
|
-
title,
|
|
281
|
-
linkList: [...col.linkList, ...linkList],
|
|
282
|
-
};
|
|
283
|
-
}),
|
|
284
|
-
...(((_c = osFlyoutOverrides.flyout) === null || _c === void 0 ? void 0 : _c.slice(osFlyoutCache.flyout.length)) || []),
|
|
285
|
-
];
|
|
286
|
-
return Object.assign(Object.assign({}, mainNav), { text: mainNavText, title: mainNavTitle, flyout: mainNavFlyout });
|
|
287
|
-
});
|
|
288
|
-
};
|
|
289
|
-
/**
|
|
290
|
-
* Fetch the general config based on project id
|
|
291
|
-
*
|
|
292
|
-
* @returns Promise for Post Portal general config
|
|
293
|
-
*/
|
|
294
|
-
const fetchConfig = async (projectId, environment) => {
|
|
295
|
-
// Check if project id is sanitized
|
|
296
|
-
if (!isValidProjectId(projectId)) {
|
|
297
|
-
throw new Error(`Internet Header: invalid project id "${projectId}"`);
|
|
298
|
-
}
|
|
299
|
-
if (projectId === 'test') {
|
|
300
|
-
environment = 'int01';
|
|
301
|
-
}
|
|
302
|
-
let url = generateConfigUrl(projectId, environment);
|
|
303
|
-
// Get the config if cache is invalid
|
|
304
|
-
try {
|
|
305
|
-
const res = await fetch(url);
|
|
306
|
-
return (await res.json());
|
|
307
|
-
}
|
|
308
|
-
catch (error) {
|
|
309
|
-
throw new Error(`Internet Header: fetching config failed. ${error.message}`);
|
|
310
|
-
}
|
|
311
|
-
};
|
|
312
|
-
/**
|
|
313
|
-
* Generate an URL with all necessary query params to get the configuration.
|
|
314
|
-
* Project id "test" will return a test configuration
|
|
315
|
-
* @param projectId string
|
|
316
|
-
* @param environment int01, int02 or prod
|
|
317
|
-
* @returns URL pointing to the project config
|
|
318
|
-
*/
|
|
319
|
-
const generateConfigUrl = (projectId, environment) => {
|
|
320
|
-
if (projectId === 'test')
|
|
321
|
-
return 'assets/config/test-configuration.json';
|
|
322
|
-
const parsedEnvironment = environment.toLowerCase();
|
|
323
|
-
const isProd = parsedEnvironment === 'prod';
|
|
324
|
-
const host = `https://${isProd ? 'www' : 'int'}.post.ch`;
|
|
325
|
-
try {
|
|
326
|
-
// Use URL to validate the generated URL
|
|
327
|
-
return new URL(`${host}/api/headerjs/Json?serviceid=${encodeURIComponent(projectId)}${!isProd ? '&environment=' + parsedEnvironment : ''}`).toString();
|
|
328
|
-
}
|
|
329
|
-
catch (error) {
|
|
330
|
-
throw new Error(`Internet Header: Config URL is invalid.`);
|
|
331
|
-
}
|
|
332
|
-
};
|
|
333
|
-
/**
|
|
334
|
-
* Check if project id contains only URL safe characters
|
|
335
|
-
*
|
|
336
|
-
* @param projectId Project Id string
|
|
337
|
-
* @returns The valid project id
|
|
338
|
-
*/
|
|
339
|
-
const isValidProjectId = (projectId) => {
|
|
340
|
-
return projectId !== '' && projectId.length > 0 && /^[a-zA-Z][\w-]*[a-zA-Z0-9]$/.test(projectId);
|
|
341
|
-
};
|
|
342
|
-
/**
|
|
343
|
-
* Get the localized config object from a custom config
|
|
344
|
-
*
|
|
345
|
-
* @param config String or json object of the custom config
|
|
346
|
-
* @param language Specific language
|
|
347
|
-
* @returns Localized custom config object
|
|
348
|
-
*/
|
|
349
|
-
const getLocalizedCustomConfig = (config, language) => {
|
|
350
|
-
var _a;
|
|
351
|
-
let customConfig;
|
|
352
|
-
try {
|
|
353
|
-
customConfig = typeof config === 'string' ? JSON.parse(config) : config;
|
|
354
|
-
}
|
|
355
|
-
catch (error) {
|
|
356
|
-
throw new Error(`Internet Header: Custom config is invalid. Make sure your custom config contains valid JSON syntax and matches the definition. `);
|
|
357
|
-
}
|
|
358
|
-
let localizedCustomConfig = customConfig[language];
|
|
359
|
-
if ((_a = localizedCustomConfig === null || localizedCustomConfig === void 0 ? void 0 : localizedCustomConfig.header) === null || _a === void 0 ? void 0 : _a.navMain)
|
|
360
|
-
setMainNavigationIds(localizedCustomConfig.header.navMain);
|
|
361
|
-
return localizedCustomConfig;
|
|
362
|
-
};
|
|
363
|
-
/**
|
|
364
|
-
* Set unique ID's on main navigation entities but conserve flyout_os to be able to
|
|
365
|
-
* identify the online-service flyout, which can be configured by osFlyoutOverrides
|
|
366
|
-
*/
|
|
367
|
-
const setMainNavigationIds = (navMainEntities) => {
|
|
368
|
-
navMainEntities.forEach(navMainEntity => {
|
|
369
|
-
navMainEntity.id = navMainEntity.id === 'flyout_os' ? navMainEntity.id : uniqueId('main-nav-');
|
|
370
|
-
});
|
|
371
|
-
};
|
|
372
|
-
|
|
373
|
-
const name = "@swisspost/internet-header";
|
|
374
|
-
const version = "1.17.0";
|
|
375
|
-
const description = "The header for client facing applications.";
|
|
376
|
-
const author = "Swiss Post <design-system@post.ch>";
|
|
377
|
-
const license = "Apache-2.0";
|
|
378
|
-
const repository = {
|
|
379
|
-
type: "git",
|
|
380
|
-
url: "https://github.com/swisspost/design-system.git"
|
|
381
|
-
};
|
|
382
|
-
const homepage = "https://design-system.post.ch";
|
|
383
|
-
const bugs = {
|
|
384
|
-
url: "https://github.com/swisspost/design-system/issues"
|
|
385
|
-
};
|
|
386
|
-
const main = "loader/index.cjs.js";
|
|
387
|
-
const module = "loader/index.js";
|
|
388
|
-
const es2017 = "loader/index.es2017.js";
|
|
389
|
-
const types = "loader/index.d.ts";
|
|
390
|
-
const collection = "dist/collection/collection-manifest.json";
|
|
391
|
-
const unpkg = "dist/swisspost-internet-header/swisspost-internet-header.esm.js";
|
|
392
|
-
const publishConfig = {
|
|
393
|
-
access: "public"
|
|
394
|
-
};
|
|
395
|
-
const files = [
|
|
396
|
-
"dist/",
|
|
397
|
-
"loader/"
|
|
398
|
-
];
|
|
399
|
-
const scripts = {
|
|
400
|
-
dev: "stencil build --serve --port 9310 --watch --docs-readme --dev --config stencil.config.dev.ts",
|
|
401
|
-
start: "stencil build --watch --docs-readme",
|
|
402
|
-
build: "stencil build --docs-readme",
|
|
403
|
-
clean: "rimraf www dist loader",
|
|
404
|
-
test: "pnpm run unit",
|
|
405
|
-
unit: "jest",
|
|
406
|
-
"unit:watch": "jest --watch",
|
|
407
|
-
e2e: "cypress run",
|
|
408
|
-
"e2e:ci": "xvfb-run -a cypress run",
|
|
409
|
-
"e2e:watch": "cypress open",
|
|
410
|
-
lint: "eslint src/**/*{.ts,.tsx}",
|
|
411
|
-
"lint:fix": "eslint src/**/*{.ts,.tsx} --fix",
|
|
412
|
-
generate: "stencil generate"
|
|
413
|
-
};
|
|
414
|
-
const dependencies = {
|
|
415
|
-
"@swisspost/design-system-styles": "workspace:9.13.0",
|
|
416
|
-
"body-scroll-lock": "4.0.0-beta.0",
|
|
417
|
-
"iframe-resizer": "4.4.5",
|
|
418
|
-
jquery: "3.7.1",
|
|
419
|
-
"throttle-debounce": "5.0.2",
|
|
420
|
-
"url-polyfill": "1.1.12"
|
|
421
|
-
};
|
|
422
|
-
const devDependencies = {
|
|
423
|
-
"@babel/core": "7.25.2",
|
|
424
|
-
"@percy/cli": "1.29.1",
|
|
425
|
-
"@percy/cypress": "3.1.2",
|
|
426
|
-
"@stencil-community/eslint-plugin": "0.8.0",
|
|
427
|
-
"@stencil/core": "4.19.2",
|
|
428
|
-
"@stencil/sass": "3.0.12",
|
|
429
|
-
"@stencil/store": "2.0.16",
|
|
430
|
-
"@types/body-scroll-lock": "3.1.2",
|
|
431
|
-
"@types/iframe-resizer": "3.5.13",
|
|
432
|
-
"@types/jest": "29.5.12",
|
|
433
|
-
"@types/jquery": "3.5.30",
|
|
434
|
-
"@types/node": "20.14.14",
|
|
435
|
-
"@types/throttle-debounce": "5.0.2",
|
|
436
|
-
"babel-loader": "9.1.3",
|
|
437
|
-
bootstrap: "5.3.3",
|
|
438
|
-
cypress: "15.14.2",
|
|
439
|
-
"cypress-each": "1.14.0",
|
|
440
|
-
"cypress-storybook": "1.0.0",
|
|
441
|
-
eslint: "8.57.0",
|
|
442
|
-
"eslint-plugin-react": "7.35.0",
|
|
443
|
-
"focus-trap": "7.5.4",
|
|
444
|
-
globby: "14.0.2",
|
|
445
|
-
jest: "29.7.0",
|
|
446
|
-
"jest-environment-jsdom": "29.7.0",
|
|
447
|
-
rimraf: "6.0.1",
|
|
448
|
-
"rollup-plugin-node-polyfills": "0.2.1",
|
|
449
|
-
"rollup-plugin-scss": "4.0.0",
|
|
450
|
-
"rollup-plugin-visualizer": "5.12.0",
|
|
451
|
-
sass: "1.77.8",
|
|
452
|
-
"start-server-and-test": "2.0.5",
|
|
453
|
-
"ts-jest": "29.2.4",
|
|
454
|
-
typescript: "5.9.3"
|
|
455
|
-
};
|
|
456
|
-
const keywords = [
|
|
457
|
-
"components",
|
|
458
|
-
"web-components",
|
|
459
|
-
"header",
|
|
460
|
-
"stencil",
|
|
461
|
-
"design-system",
|
|
462
|
-
"ui",
|
|
463
|
-
"frontend"
|
|
464
|
-
];
|
|
465
|
-
const packageJson = {
|
|
466
|
-
name: name,
|
|
467
|
-
version: version,
|
|
468
|
-
description: description,
|
|
469
|
-
author: author,
|
|
470
|
-
license: license,
|
|
471
|
-
repository: repository,
|
|
472
|
-
homepage: homepage,
|
|
473
|
-
bugs: bugs,
|
|
474
|
-
main: main,
|
|
475
|
-
module: module,
|
|
476
|
-
es2017: es2017,
|
|
477
|
-
types: types,
|
|
478
|
-
collection: collection,
|
|
479
|
-
"collection:main": "dist/collection/index.js",
|
|
480
|
-
unpkg: unpkg,
|
|
481
|
-
publishConfig: publishConfig,
|
|
482
|
-
files: files,
|
|
483
|
-
scripts: scripts,
|
|
484
|
-
dependencies: dependencies,
|
|
485
|
-
devDependencies: devDependencies,
|
|
486
|
-
keywords: keywords
|
|
487
|
-
};
|
|
488
|
-
|
|
489
|
-
const isScrollable = (node) => {
|
|
490
|
-
if (!(node instanceof HTMLElement || node instanceof SVGElement)) {
|
|
491
|
-
return false;
|
|
492
|
-
}
|
|
493
|
-
const style = getComputedStyle(node);
|
|
494
|
-
return ['overflow', 'overflow-x', 'overflow-y'].some(propertyName => {
|
|
495
|
-
const value = style.getPropertyValue(propertyName);
|
|
496
|
-
return value === 'auto' || value === 'scroll';
|
|
497
|
-
});
|
|
498
|
-
};
|
|
499
|
-
const getScrollParent = (node) => {
|
|
500
|
-
let currentParent = node.parentElement;
|
|
501
|
-
while (currentParent) {
|
|
502
|
-
if (currentParent.nodeName === 'BODY') {
|
|
503
|
-
return document;
|
|
504
|
-
}
|
|
505
|
-
if (isScrollable(currentParent)) {
|
|
506
|
-
return currentParent;
|
|
507
|
-
}
|
|
508
|
-
currentParent = currentParent.parentElement;
|
|
509
|
-
}
|
|
510
|
-
return document;
|
|
511
|
-
};
|
|
512
|
-
|
|
513
|
-
/**
|
|
514
|
-
* Returns intersection ratio
|
|
515
|
-
*/
|
|
516
|
-
const getLogoScale = (headerRef, metaHeaderRef) => {
|
|
517
|
-
const scrollParent = getScrollParent(headerRef);
|
|
518
|
-
const scrollDistance = scrollParent instanceof Element
|
|
519
|
-
? scrollParent.scrollTop
|
|
520
|
-
: scrollParent.documentElement.scrollTop;
|
|
521
|
-
const scrollY = state.stickyness === 'full' ? 0 : scrollDistance;
|
|
522
|
-
let adjustedHeaderHeight, metaHeaderHeight;
|
|
523
|
-
if (metaHeaderRef) {
|
|
524
|
-
// Minus 1px border at the bottom that the logo is not covering
|
|
525
|
-
adjustedHeaderHeight = headerRef.clientHeight - 1;
|
|
526
|
-
metaHeaderHeight = metaHeaderRef.clientHeight;
|
|
527
|
-
}
|
|
528
|
-
else {
|
|
529
|
-
const headerStyles = window.getComputedStyle(headerRef);
|
|
530
|
-
const fontSize = parseFloat(headerStyles.getPropertyValue('font-size'));
|
|
531
|
-
metaHeaderHeight = parseFloat(headerStyles.getPropertyValue('--meta-header-height')) * fontSize;
|
|
532
|
-
adjustedHeaderHeight =
|
|
533
|
-
metaHeaderHeight + parseFloat(headerStyles.getPropertyValue('--header-height')) * fontSize;
|
|
534
|
-
}
|
|
535
|
-
// If meta navigation is not visible (mobile, not configured), scale should just be 1
|
|
536
|
-
let scale = 1;
|
|
537
|
-
if (metaHeaderHeight > 0) {
|
|
538
|
-
scale = Math.max((adjustedHeaderHeight - Math.max(scrollY, 0)) / (adjustedHeaderHeight - metaHeaderHeight), 1);
|
|
539
|
-
}
|
|
540
|
-
return scale.toString();
|
|
541
|
-
};
|
|
542
|
-
|
|
543
|
-
const registerLogoAnimationObserver = (target, headerRef) => {
|
|
544
|
-
const scrollParent = getScrollParent(headerRef);
|
|
545
|
-
/**
|
|
546
|
-
* Set intersection ratio as CSS custom property
|
|
547
|
-
*/
|
|
548
|
-
const handleScroll = () => {
|
|
549
|
-
headerRef.style.setProperty('--logo-scale', getLogoScale(headerRef, target));
|
|
550
|
-
};
|
|
551
|
-
const debounced = debounce(150, handleScroll);
|
|
552
|
-
/**
|
|
553
|
-
* Observe the meta navigation in order to not track scroll events throughout the whole page.
|
|
554
|
-
* This ensures that the scroll listener is only active while the meta navigation is visible.
|
|
555
|
-
*/
|
|
556
|
-
const observer = new IntersectionObserver(entries => {
|
|
557
|
-
entries.forEach(entry => {
|
|
558
|
-
if (entry.isIntersecting && entry.intersectionRatio > 0) {
|
|
559
|
-
scrollParent.addEventListener('scroll', handleScroll, { passive: true });
|
|
560
|
-
window.addEventListener('resize', debounced);
|
|
561
|
-
// Ensure callback is called at least once in case main thread is too busy while scrolling up
|
|
562
|
-
window.requestAnimationFrame(handleScroll);
|
|
563
|
-
}
|
|
564
|
-
else {
|
|
565
|
-
scrollParent.removeEventListener('scroll', handleScroll);
|
|
566
|
-
window.removeEventListener('resize', debounced);
|
|
567
|
-
window.requestAnimationFrame(handleScroll);
|
|
568
|
-
}
|
|
569
|
-
});
|
|
570
|
-
}, {
|
|
571
|
-
// Fires when element leaves viewport (0) and when it just about enters it (0.001)
|
|
572
|
-
threshold: [0, 0.001],
|
|
573
|
-
});
|
|
574
|
-
observer.observe(target);
|
|
575
|
-
return handleScroll;
|
|
576
|
-
};
|
|
577
|
-
|
|
578
|
-
const postInternetHeaderCss = ":host{--post-contrast-color:#000;--post-focus-color:#1976c8;--post-contrast-color-inverted:#fff;--post-gray-10:hsl(0, 0%, 90%);--post-gray-20:hsl(0, 0%, 80%);--post-gray-40:hsl(0, 0%, 60%);--post-gray-60:hsl(0, 0%, 40%);--post-gray-80:hsl(0, 0%, 20%);--post-yellow:#fc0;--post-white:#fff;--post-light:#faf9f8;--post-gray:#f4f3f1;--post-dark:hsl(0, 0%, 20%);--post-black:#000;--post-primary:hsl(0, 0%, 20%);--post-secondary:hsl(0, 0%, 40%);--post-success:#2c871d;--post-warning:#f49e00;--post-error:#a51728;--post-info:#cce4ee;--post-success-background:#c0debb;--post-warning-background:#fce2b2;--post-error-background:#ffdade;--post-nightblue:#004976;--post-nightblue-bright:#0076a8;--post-petrol:#006d68;--post-petrol-bright:#00968f;--post-coral:#9e2a2f;--post-coral-bright:#e03c31;--post-olive:#716135;--post-olive-bright:#aa9d2e;--post-purple:#80276c;--post-purple-bright:#c5299b;--post-aubergine:#523178;--post-aubergine-bright:#7566a0;--post-contrast-color-rgb:0, 0, 0;--post-contrast-color-inverted-rgb:255, 255, 255;--post-gray-10-rgb:230, 230, 230;--post-gray-20-rgb:204, 204, 204;--post-gray-40-rgb:153, 153, 153;--post-gray-60-rgb:102, 102, 102;--post-gray-80-rgb:51, 51, 51;--post-black-alpha-10-rgba:rgba(0, 0, 0, 0.1);--post-black-alpha-20-rgba:rgba(0, 0, 0, 0.2);--post-black-alpha-40-rgba:rgba(0, 0, 0, 0.4);--post-black-alpha-60-rgba:rgba(0, 0, 0, 0.6);--post-black-alpha-80-rgba:rgba(0, 0, 0, 0.8);--post-white-alpha-10-rgba:rgba(255, 255, 255, 0.1);--post-white-alpha-20-rgba:rgba(255, 255, 255, 0.2);--post-white-alpha-40-rgba:rgba(255, 255, 255, 0.4);--post-white-alpha-60-rgba:rgba(255, 255, 255, 0.6);--post-white-alpha-80-rgba:rgba(255, 255, 255, 0.8);--post-yellow-rgb:255, 204, 0;--post-white-rgb:255, 255, 255;--post-light-rgb:250, 249, 248;--post-gray-rgb:244, 243, 241;--post-dark-rgb:51, 51, 51;--post-black-rgb:0, 0, 0;--post-primary-rgb:51, 51, 51;--post-secondary-rgb:102, 102, 102;--post-success-rgb:44, 135, 29;--post-warning-rgb:244, 158, 0;--post-error-rgb:165, 23, 40;--post-info-rgb:204, 228, 238;--post-success-background-rgb:192, 222, 187;--post-warning-background-rgb:252, 226, 178;--post-error-background-rgb:255, 218, 222;--post-nightblue-rgb:0, 73, 118;--post-nightblue-bright-rgb:0, 118, 168;--post-petrol-rgb:0, 109, 104;--post-petrol-bright-rgb:0, 150, 143;--post-coral-rgb:158, 42, 47;--post-coral-bright-rgb:224, 60, 49;--post-olive-rgb:113, 97, 53;--post-olive-bright-rgb:170, 157, 46;--post-purple-rgb:128, 39, 108;--post-purple-bright-rgb:197, 41, 155;--post-aubergine-rgb:82, 49, 120;--post-aubergine-bright-rgb:117, 102, 160}@font-face{font-display:swap;font-family:\"Swiss Post Sans\";font-weight:700;src:url(\"https://fonts.post.ch/swiss-post-sans/v1/SwissPostSans-Bold.woff2\") format(\"woff2\"),url(\"https://fonts.post.ch/swiss-post-sans/v1/SwissPostSans-Bold.woff\") format(\"woff\")}@font-face{font-display:swap;font-family:\"Swiss Post Sans\";font-weight:400;src:url(\"https://fonts.post.ch/swiss-post-sans/v1/SwissPostSans-Regular.woff2\") format(\"woff2\"),url(\"https://fonts.post.ch/swiss-post-sans/v1/SwissPostSans-Regular.woff\") format(\"woff\")}@font-face{font-display:swap;font-family:\"Swiss Post Sans\";font-weight:300;src:url(\"https://fonts.post.ch/swiss-post-sans/v1/SwissPostSans-Light.woff2\") format(\"woff2\"),url(\"https://fonts.post.ch/swiss-post-sans/v1/SwissPostSans-Light.woff\") format(\"woff\")}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}.btn-blank{background-color:rgba(0,0,0,0);border:none;border-radius:0;padding:0}.nav-link{outline:none;outline-offset:2px;text-decoration:none;color:rgba(0,0,0,.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:rgba(0,0,0,0);-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:.5rem}.nav-link:is(:focus-visible,:focus-within,.pretend-focus){outline:2px solid var(--post-contrast-color)}.nav-link:hover,.nav-link:focus{color:#000}.nav-link:is(:focus-visible,:focus-within,.pretend-focus){z-index:1;position:relative}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:\"Swiss Post Sans\",-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,sans-serif}button{font:inherit;padding:0}a,button{border-radius:4px;outline:none;outline-offset:2px}a:is(:focus-visible,:focus-within,.pretend-focus),button:is(:focus-visible,:focus-within,.pretend-focus){outline:2px solid var(--post-contrast-color);border-radius:4px}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){svg{color:currentColor;forced-color-adjust:preserve-parent-color}}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-none{display:none !important}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px)and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1439.98px){.hidden-xxl{display:none}}:host{--logo-scale:1}@media (max-width: 1023.98px){:host{--logo-scale:1 !important}}post-header-logo{height:var(--header-height);width:var(--header-height);-webkit-transform-origin:bottom left;transform-origin:bottom left;-webkit-transform:scale(var(--logo-scale));transform:scale(var(--logo-scale))}post-main-navigation{margin-left:calc(var(--header-height)*var(--logo-scale) - var(--header-height))}:host{display:block;position:relative;font-size:1rem;font-weight:300;z-index:var(--header-z-index, 10);--language-dropdown-margin-top:0px;--meta-header-height:var(--post-meta-header-height, 0px);--header-height:var(--post-header-height, 3.5rem)}@media (min-width: 1024px){:host{--meta-header-height:var(--post-meta-header-height, 3rem)}}@media (min-width: 1024px){:host{--header-height:var(--post-header-height, 4rem)}}@media (min-width: 1280px){:host{--header-height:var(--post-header-height, 4.5rem)}}:host([meta=false]){--meta-header-height:0px;--language-dropdown-margin-top:1px}@supports ((position: -webkit-sticky) or (position: sticky)){:host(:not(.stickyness-none)){position:-webkit-sticky;position:sticky}:host(.stickyness-full){top:0}:host(.stickyness-main){top:calc(var(--meta-header-height, 0px)*-1)}:host(.stickyness-minimal){top:calc((var(--header-height, 0px) + var(--meta-header-height, 0px) + 1px)*-1);-webkit-transition:top 200ms ease-in;transition:top 200ms ease-in}:host(.stickyness-minimal.scrolling-up),:host(.stickyness-minimal.dropdown-open){top:calc(var(--meta-header-height, 0px)*-1);--header-slide-in-transition:var(--post-header-slide-in-transition, top 200ms ease-out);-webkit-transition:var(--header-slide-in-transition);transition:var(--header-slide-in-transition)}}.post-internet-header{border-bottom:1px solid #e6e6e6;background-color:#fff}.main-navigation-container{display:-ms-flexbox;display:flex}.main-navigation-container>.main-navigation-controls{-ms-flex:0 1 auto;flex:0 1 auto}.main-navigation{display:-ms-flexbox;display:flex}.sub-navigation-container{position:absolute;top:100%;left:0;width:100%;display:-ms-flexbox;display:flex;background:#fff;visibility:hidden}.main-navigation-item:hover .sub-navigation-container{visibility:visible}.main-navigation-controls{display:-ms-flexbox;display:flex;margin-left:auto}@media (max-width: 1023.98px){.main-navigation-controls{font-weight:400}}@media (min-width: 1024px){.main-navigation-controls{font-size:1.0625rem}}.main-navigation-controls>*{border-left:1px solid #e6e6e6;-ms-flex:0 0 auto;flex:0 0 auto}.main-navigation-custom-content{max-height:var(--header-height);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-negative:1;flex-shrink:1}.menu-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 calc(1rem - 1px);font-weight:300;cursor:pointer;border-left:1px solid #e6e6e6;-ms-flex-order:1;order:1}@media (min-width: 1024px){.menu-button{display:none}}@media (min-width: 600px)and (max-width: 1023.98px){.menu-button .visually-hidden{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible;margin-right:.5rem}}.menu-button svg{width:1.5rem;height:1.5rem}.full-width .wide-container{max-width:none}";
|
|
579
|
-
const SwisspostInternetHeaderStyle0 = postInternetHeaderCss;
|
|
580
|
-
|
|
581
|
-
const PostInternetHeader = class {
|
|
582
|
-
/**
|
|
583
|
-
* Get the currently set language as a two letter string ("de", "fr" "it" or "en")
|
|
584
|
-
* @returns string
|
|
585
|
-
*/
|
|
586
|
-
async getCurrentLanguage() {
|
|
587
|
-
var _a;
|
|
588
|
-
return (_a = state.currentLanguage) !== null && _a !== void 0 ? _a : 'de';
|
|
589
|
-
}
|
|
590
|
-
constructor(hostRef) {
|
|
591
|
-
registerInstance(this, hostRef);
|
|
592
|
-
this.headerLoaded = createEvent(this, "headerLoaded", 7);
|
|
593
|
-
this.lastScrollTop = window.scrollY || document.documentElement.scrollTop;
|
|
594
|
-
this.lastWindowWidth = window.innerWidth;
|
|
595
|
-
this.handleClickOutsideBound = this.handleClickOutside.bind(this);
|
|
596
|
-
this.project = undefined;
|
|
597
|
-
this.stickyness = 'minimal';
|
|
598
|
-
this.language = undefined;
|
|
599
|
-
this.meta = true;
|
|
600
|
-
this.login = true;
|
|
601
|
-
this.search = true;
|
|
602
|
-
this.skiplinks = true;
|
|
603
|
-
this.configProxy = undefined;
|
|
604
|
-
this.environment = 'prod';
|
|
605
|
-
this.languageSwitchOverrides = undefined;
|
|
606
|
-
this.customConfig = undefined;
|
|
607
|
-
this.languageCookieKey = undefined;
|
|
608
|
-
this.languageLocalStorageKey = 'swisspost-internet-header-language';
|
|
609
|
-
this.logoutUrl = undefined;
|
|
610
|
-
this.selfAdminOrigin = undefined;
|
|
611
|
-
this.activeRoute = 'auto';
|
|
612
|
-
this.osFlyoutOverrides = undefined;
|
|
613
|
-
this.fullWidth = false;
|
|
614
|
-
this.activeFlyout = null;
|
|
615
|
-
this.activeDropdownElement = null;
|
|
616
|
-
this.isMainSlotEmpty = true;
|
|
617
|
-
if (this.project === undefined || this.project === '' || !isValidProjectId(this.project)) {
|
|
618
|
-
throw new Error(`Internet Header project key is "${this.project}". Please provide a valid project key.`);
|
|
619
|
-
}
|
|
620
|
-
}
|
|
621
|
-
connectedCallback() {
|
|
622
|
-
this.throttledScroll = throttle(300, () => this.handleScrollEvent());
|
|
623
|
-
this.debouncedResize = debounce(200, () => this.handleResize());
|
|
624
|
-
}
|
|
625
|
-
disconnectedCallback() {
|
|
626
|
-
this.scrollParent.removeEventListener('scroll', this.throttledScroll);
|
|
627
|
-
this.scrollParent.removeEventListener('resize', this.debouncedResize);
|
|
628
|
-
// Reset the store to its original state
|
|
629
|
-
dispose();
|
|
630
|
-
}
|
|
631
|
-
async componentWillLoad() {
|
|
632
|
-
this.scrollParent = getScrollParent(this.host);
|
|
633
|
-
this.scrollParent.addEventListener('scroll', this.throttledScroll, { passive: true });
|
|
634
|
-
this.scrollParent.addEventListener('resize', this.debouncedResize, { passive: true });
|
|
635
|
-
// Wait for the config to arrive, then render the header
|
|
636
|
-
try {
|
|
637
|
-
state.projectId = this.project;
|
|
638
|
-
state.stickyness = this.stickyness;
|
|
639
|
-
state.environment = this.environment.toLocaleLowerCase();
|
|
640
|
-
if (this.language !== undefined)
|
|
641
|
-
state.currentLanguage = this.language;
|
|
642
|
-
state.languageSwitchOverrides =
|
|
643
|
-
typeof this.languageSwitchOverrides === 'string'
|
|
644
|
-
? JSON.parse(this.languageSwitchOverrides)
|
|
645
|
-
: this.languageSwitchOverrides;
|
|
646
|
-
state.osFlyoutOverrides =
|
|
647
|
-
typeof this.osFlyoutOverrides === 'string'
|
|
648
|
-
? JSON.parse(this.osFlyoutOverrides)
|
|
649
|
-
: this.osFlyoutOverrides;
|
|
650
|
-
if (this.customConfig !== undefined) {
|
|
651
|
-
const langs = Object.keys(typeof this.customConfig === 'string' ? JSON.parse(this.customConfig) : this.customConfig);
|
|
652
|
-
const lang = state.currentLanguage || getUserLang(langs, this.language);
|
|
653
|
-
state.localizedCustomConfig = getLocalizedCustomConfig(this.customConfig, lang);
|
|
654
|
-
}
|
|
655
|
-
state.localizedConfig = await getLocalizedConfig({
|
|
656
|
-
projectId: this.project,
|
|
657
|
-
environment: state.environment,
|
|
658
|
-
language: this.language,
|
|
659
|
-
cookieKey: this.languageCookieKey,
|
|
660
|
-
localStorageKey: this.languageLocalStorageKey,
|
|
661
|
-
activeRouteProp: this.activeRoute,
|
|
662
|
-
localizedCustomConfig: state.localizedCustomConfig,
|
|
663
|
-
osFlyoutOverrides: state.osFlyoutOverrides,
|
|
664
|
-
});
|
|
665
|
-
}
|
|
666
|
-
catch (error) {
|
|
667
|
-
console.error(error);
|
|
668
|
-
}
|
|
669
|
-
}
|
|
670
|
-
componentDidLoad() {
|
|
671
|
-
window.requestAnimationFrame(() => {
|
|
672
|
-
this.handleResize();
|
|
673
|
-
this.headerLoaded.emit();
|
|
674
|
-
this.host.classList.add('header-loaded');
|
|
675
|
-
if (this.meta && this.metaNav) {
|
|
676
|
-
this.updateLogoAnimation = registerLogoAnimationObserver(this.metaNav, this.host);
|
|
677
|
-
}
|
|
678
|
-
else {
|
|
679
|
-
// Set height to 0 if meta is never visible and global variables are defined
|
|
680
|
-
const rootStyles = window.getComputedStyle(document.documentElement);
|
|
681
|
-
if (rootStyles.getPropertyValue('--post-meta-header-height') !== '') {
|
|
682
|
-
document.documentElement.style.setProperty('--post-meta-header-height', '0px');
|
|
683
|
-
}
|
|
684
|
-
}
|
|
685
|
-
});
|
|
686
|
-
if (this.stickyness === 'full')
|
|
687
|
-
console.warn('Internet Header: The stickyness="full" option is deprecated.');
|
|
688
|
-
}
|
|
689
|
-
async handleLanguageChange(newValue) {
|
|
690
|
-
state.currentLanguage = newValue;
|
|
691
|
-
state.localizedConfig = await getLocalizedConfig({
|
|
692
|
-
projectId: this.project,
|
|
693
|
-
environment: this.environment,
|
|
694
|
-
language: newValue,
|
|
695
|
-
cookieKey: this.languageCookieKey,
|
|
696
|
-
localStorageKey: this.languageLocalStorageKey,
|
|
697
|
-
activeRouteProp: this.activeRoute,
|
|
698
|
-
localizedCustomConfig: state.localizedCustomConfig,
|
|
699
|
-
osFlyoutOverrides: state.osFlyoutOverrides,
|
|
700
|
-
});
|
|
701
|
-
if (this.customConfig !== undefined)
|
|
702
|
-
state.localizedCustomConfig = getLocalizedCustomConfig(this.customConfig, newValue);
|
|
703
|
-
}
|
|
704
|
-
handleAvailableLanguagesChange(newValue) {
|
|
705
|
-
state.languageSwitchOverrides = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;
|
|
706
|
-
}
|
|
707
|
-
async handleOsFlyoutOverrides(newValue) {
|
|
708
|
-
state.osFlyoutOverrides = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;
|
|
709
|
-
state.localizedConfig = await getLocalizedConfig({
|
|
710
|
-
projectId: this.project,
|
|
711
|
-
environment: this.environment,
|
|
712
|
-
language: this.language,
|
|
713
|
-
cookieKey: this.languageCookieKey,
|
|
714
|
-
localStorageKey: this.languageLocalStorageKey,
|
|
715
|
-
activeRouteProp: this.activeRoute,
|
|
716
|
-
localizedCustomConfig: state.localizedCustomConfig,
|
|
717
|
-
osFlyoutOverrides: state.osFlyoutOverrides,
|
|
718
|
-
});
|
|
719
|
-
}
|
|
720
|
-
async handleActiveRouteChange(newValue) {
|
|
721
|
-
state.localizedConfig = await getLocalizedConfig({
|
|
722
|
-
projectId: this.project,
|
|
723
|
-
environment: this.environment,
|
|
724
|
-
language: this.language,
|
|
725
|
-
cookieKey: this.languageCookieKey,
|
|
726
|
-
localStorageKey: this.languageLocalStorageKey,
|
|
727
|
-
activeRouteProp: newValue,
|
|
728
|
-
localizedCustomConfig: state.localizedCustomConfig,
|
|
729
|
-
osFlyoutOverrides: state.osFlyoutOverrides,
|
|
730
|
-
});
|
|
731
|
-
}
|
|
732
|
-
async handleCustomConfigChange(newValue) {
|
|
733
|
-
if (this.language === undefined)
|
|
734
|
-
return;
|
|
735
|
-
const localizedCustomConfig = getLocalizedCustomConfig(newValue, this.language);
|
|
736
|
-
state.localizedCustomConfig = localizedCustomConfig;
|
|
737
|
-
state.localizedConfig = await getLocalizedConfig({
|
|
738
|
-
projectId: this.project,
|
|
739
|
-
environment: this.environment,
|
|
740
|
-
language: this.language,
|
|
741
|
-
cookieKey: this.languageCookieKey,
|
|
742
|
-
localStorageKey: this.languageLocalStorageKey,
|
|
743
|
-
activeRouteProp: this.activeRoute,
|
|
744
|
-
localizedCustomConfig: localizedCustomConfig,
|
|
745
|
-
osFlyoutOverrides: state.osFlyoutOverrides,
|
|
746
|
-
});
|
|
747
|
-
}
|
|
748
|
-
handleSearchChange(newValue) {
|
|
749
|
-
state.search = newValue;
|
|
750
|
-
}
|
|
751
|
-
handleLoginChange(newValue) {
|
|
752
|
-
state.login = newValue;
|
|
753
|
-
}
|
|
754
|
-
handleMetaChange(newValue) {
|
|
755
|
-
state.meta = newValue;
|
|
756
|
-
}
|
|
757
|
-
handleLanguageChangeEvent(event) {
|
|
758
|
-
void this.handleLanguageChange(event.detail);
|
|
759
|
-
}
|
|
760
|
-
handleStickynessChange(newValue) {
|
|
761
|
-
state.stickyness = newValue;
|
|
762
|
-
if (typeof this.updateLogoAnimation === 'function')
|
|
763
|
-
this.updateLogoAnimation();
|
|
764
|
-
}
|
|
765
|
-
handleClickOutside(event) {
|
|
766
|
-
// Close active dropdown element on click outside of it
|
|
767
|
-
if (this.activeDropdownElement && !event.composedPath().includes(this.activeDropdownElement)) {
|
|
768
|
-
void this.activeDropdownElement.toggleDropdown(false);
|
|
769
|
-
}
|
|
770
|
-
}
|
|
771
|
-
handleKeyUp(event) {
|
|
772
|
-
if (event.key === 'Escape') {
|
|
773
|
-
if (this.activeDropdownElement) {
|
|
774
|
-
void this.activeDropdownElement.toggleDropdown(false);
|
|
775
|
-
}
|
|
776
|
-
if (this.activeFlyout !== null && this.mainNav) {
|
|
777
|
-
void this.mainNav.toggleDropdown(false);
|
|
778
|
-
}
|
|
779
|
-
}
|
|
780
|
-
}
|
|
781
|
-
handleScrollEvent() {
|
|
782
|
-
// Credits: "https://github.com/qeremy/so/blob/master/so.dom.js#L426"
|
|
783
|
-
const st = this.scrollParent instanceof Document
|
|
784
|
-
? this.scrollParent.documentElement.scrollTop
|
|
785
|
-
: this.scrollParent.scrollTop;
|
|
786
|
-
// Toggle class without re-rendering the component if stickyness is minimal
|
|
787
|
-
// the other stickyness modes do not need the class
|
|
788
|
-
if (this.stickyness === 'minimal') {
|
|
789
|
-
this.host.classList.toggle('scrolling-up', st <= this.lastScrollTop);
|
|
790
|
-
}
|
|
791
|
-
// For Mobile or negative scrolling
|
|
792
|
-
this.lastScrollTop = st <= 0 ? 0 : st;
|
|
793
|
-
}
|
|
794
|
-
handleResize() {
|
|
795
|
-
var _a;
|
|
796
|
-
// Close main navigation dropdown if size changed to bigger than 1024px (search dropdown will be kept open)
|
|
797
|
-
if (this.isMainNavOpen() && this.lastWindowWidth < 1024 && window.innerWidth >= 1024) {
|
|
798
|
-
(_a = this.activeDropdownElement) === null || _a === void 0 ? void 0 : _a.toggleDropdown(false);
|
|
799
|
-
}
|
|
800
|
-
this.lastWindowWidth = window.innerWidth;
|
|
801
|
-
}
|
|
802
|
-
/**
|
|
803
|
-
* Close open dropdown menus if another is being opened
|
|
804
|
-
*
|
|
805
|
-
* @param event Dropdown toggled event
|
|
806
|
-
* @returns void
|
|
807
|
-
*/
|
|
808
|
-
handleDropdownToggled(event) {
|
|
809
|
-
if (!event.detail.open && this.activeDropdownElement !== event.detail.element) {
|
|
810
|
-
// Some dropdown got closed programmatically (possibly by this function). To prevent
|
|
811
|
-
// a circle or an outdated state, we'll not handle this event
|
|
812
|
-
return;
|
|
813
|
-
}
|
|
814
|
-
if (event.detail.open) {
|
|
815
|
-
if (this.activeDropdownElement) {
|
|
816
|
-
void this.activeDropdownElement.toggleDropdown(false);
|
|
817
|
-
}
|
|
818
|
-
this.activeDropdownElement = event.detail.element;
|
|
819
|
-
if (window.innerWidth >= 1024) {
|
|
820
|
-
// Add event listener to close active dropdown element on click outside of it
|
|
821
|
-
// Also adds 10ms delay in case of an external interaction:
|
|
822
|
-
// Some button on the page calls toggleDropdown() -> dropdown opens
|
|
823
|
-
// Click event bubbles to the window, this.handleClickOutsideBound closes dropdown again
|
|
824
|
-
window.setTimeout(() => {
|
|
825
|
-
window.addEventListener('click', this.handleClickOutsideBound);
|
|
826
|
-
}, 10);
|
|
827
|
-
}
|
|
828
|
-
if (this.activeFlyout !== null && this.mainNav) {
|
|
829
|
-
void this.mainNav.setActiveFlyout(null);
|
|
830
|
-
}
|
|
831
|
-
}
|
|
832
|
-
else {
|
|
833
|
-
this.activeDropdownElement = null;
|
|
834
|
-
// Remove event listener as it is not needed if no dropdown element is active
|
|
835
|
-
window.removeEventListener('click', this.handleClickOutsideBound);
|
|
836
|
-
}
|
|
837
|
-
}
|
|
838
|
-
/**
|
|
839
|
-
* Close open dropdowns if the flyout is being opened
|
|
840
|
-
* @param event Flyout toggle event
|
|
841
|
-
*/
|
|
842
|
-
handleFlyoutToggled(event) {
|
|
843
|
-
this.activeFlyout = event.detail;
|
|
844
|
-
if (this.activeDropdownElement && event.detail !== null && !this.isMainNavOpen()) {
|
|
845
|
-
void this.activeDropdownElement.toggleDropdown(false);
|
|
846
|
-
}
|
|
847
|
-
}
|
|
848
|
-
toggleMobileDropdown() {
|
|
849
|
-
var _a;
|
|
850
|
-
(_a = this.mainNav) === null || _a === void 0 ? void 0 : _a.toggleDropdown();
|
|
851
|
-
}
|
|
852
|
-
isMainNavOpen() {
|
|
853
|
-
return (this.activeDropdownElement && this.activeDropdownElement.tagName === 'POST-MAIN-NAVIGATION');
|
|
854
|
-
}
|
|
855
|
-
handleMainSlotChange(e) {
|
|
856
|
-
const mainSlot = e.target;
|
|
857
|
-
this.isMainSlotEmpty = mainSlot.assignedElements().length === 0;
|
|
858
|
-
}
|
|
859
|
-
render() {
|
|
860
|
-
var _a, _b, _c;
|
|
861
|
-
if (!((_a = state.localizedConfig) === null || _a === void 0 ? void 0 : _a.header)) {
|
|
862
|
-
console.error(new Error('Internet Header: Config cannot be loaded'));
|
|
863
|
-
return;
|
|
864
|
-
}
|
|
865
|
-
const config = state.localizedConfig;
|
|
866
|
-
const renderMetaNavigation = this.meta &&
|
|
867
|
-
config.header.navMeta !== undefined &&
|
|
868
|
-
((_b = config.header.navMeta) === null || _b === void 0 ? void 0 : _b.filter(meta => !meta.isHomeLink).length) > 0;
|
|
869
|
-
const renderLogin = ((_c = this.login) !== null && _c !== void 0 ? _c : !config.header.isLoginWidgetHidden) && config.header.loginWidgetOptions;
|
|
870
|
-
const renderLanguageSwitch = config.header.navLang.length > 1;
|
|
871
|
-
const initialLogoScale = renderMetaNavigation ? getLogoScale(this.host) : '1';
|
|
872
|
-
return (h(Host, { class: `stickyness-${this.stickyness} ${Boolean(this.activeDropdownElement) || Boolean(this.activeFlyout) ? 'dropdown-open' : ''}`, "data-version": packageJson.version, onKeyup: (e) => this.handleKeyUp(e), style: { '--logo-scale': initialLogoScale } }, h("header", { class: `post-internet-header${this.fullWidth ? ' full-width' : ''}` }, h(SvgSprite, null), h("h1", { class: "visually-hidden" }, translate('Navigate on post.ch')), h(If, { condition: this.skiplinks }, h("post-skiplinks", null)), h(If, { condition: renderMetaNavigation }, h("post-meta-navigation", { orientation: "horizontal", class: "hidden-lg", "full-width": this.fullWidth, ref: el => (this.metaNav = el) }, h(If, { condition: renderLanguageSwitch }, h("post-language-switch", { id: "post-language-switch-desktop", mode: "dropdown", onDropdownToggled: e => this.handleDropdownToggled(e) })))), h("div", { class: "main-navigation-container wide-container" }, h("post-header-logo", null), h("button", { class: "menu-button nav-link", onClick: () => this.toggleMobileDropdown(), "aria-haspopup": "menu", "aria-controls": "post-internet-header-main-navigation", "aria-expanded": this.activeDropdownElement ? 'true' : 'false' }, h("span", { class: "menu-button-text visually-hidden" }, config.header.mobileMenu.text), h(SvgIcon, { name: this.isMainNavOpen() ? 'pi-close' : 'pi-menu' })), h("post-main-navigation", { onDropdownToggled: e => this.handleDropdownToggled(e), onFlyoutToggled: e => this.handleFlyoutToggled(e), ref: el => (this.mainNav = el) }, h(If, { condition: renderMetaNavigation }, h("post-meta-navigation", { orientation: "vertical" }, h(If, { condition: renderLanguageSwitch }, h("post-language-switch", { id: "post-language-switch-mobile", mode: "list" }))))), h("div", { class: "main-navigation-controls" }, h("div", { class: `main-navigation-custom-content${this.isMainSlotEmpty ? ' d-none' : ''}` }, h("slot", { name: "main", onSlotchange: e => this.handleMainSlotChange(e) })), h(If, { condition: this.search }, h("post-search", { onDropdownToggled: e => this.handleDropdownToggled(e) })), h(If, { condition: !!renderLogin }, h("post-klp-login-widget", { "logout-url": this.logoutUrl, "self-admin-origin": this.selfAdminOrigin }, h("slot", { name: "login-widget" }))), h(If, { condition: !renderMetaNavigation && renderLanguageSwitch }, h("post-language-switch", { id: "post-language-switch-no-meta", onDropdownToggled: e => this.handleDropdownToggled(e), mode: "dropdown" })))))));
|
|
873
|
-
}
|
|
874
|
-
get host() { return getElement(this); }
|
|
875
|
-
static get watchers() { return {
|
|
876
|
-
"language": ["handleLanguageChange"],
|
|
877
|
-
"languageSwitchOverrides": ["handleAvailableLanguagesChange"],
|
|
878
|
-
"osFlyoutOverrides": ["handleOsFlyoutOverrides"],
|
|
879
|
-
"activeRoute": ["handleActiveRouteChange"],
|
|
880
|
-
"customConfig": ["handleCustomConfigChange"],
|
|
881
|
-
"search": ["handleSearchChange"],
|
|
882
|
-
"login": ["handleLoginChange"],
|
|
883
|
-
"meta": ["handleMetaChange"],
|
|
884
|
-
"stickyness": ["handleStickynessChange"]
|
|
885
|
-
}; }
|
|
886
|
-
};
|
|
887
|
-
PostInternetHeader.style = SwisspostInternetHeaderStyle0;
|
|
888
|
-
|
|
889
|
-
export { PostInternetHeader as P };
|