@swisspost/internet-header 1.13.2 → 1.13.4
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/{index-3423c7b3.js → index-f082854e.js} +19 -2
- package/dist/cjs/index-f082854e.js.map +1 -0
- package/dist/cjs/index.cjs.js +15 -16
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/{klp-widget.controller-7fbe23c3.js → klp-widget.controller-c807789c.js} +15 -10
- package/dist/cjs/klp-widget.controller-c807789c.js.map +1 -0
- package/dist/cjs/{language.service-4742451a.js → language.service-126b64f9.js} +2 -2
- package/dist/cjs/{language.service-4742451a.js.map → language.service-126b64f9.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{post-internet-breadcrumbs-15f878ef.js → post-internet-breadcrumbs-3734600f.js} +41 -15
- package/dist/cjs/post-internet-breadcrumbs-3734600f.js.map +1 -0
- package/dist/cjs/{post-internet-footer-5fa54b4d.js → post-internet-footer-b517b51d.js} +7 -6
- package/dist/cjs/post-internet-footer-b517b51d.js.map +1 -0
- package/dist/cjs/{post-internet-header-797beaef.js → post-internet-header-3c7fcb36.js} +27 -16
- package/dist/cjs/post-internet-header-3c7fcb36.js.map +1 -0
- package/dist/cjs/{post-klp-login-widget-b0093c44.js → post-klp-login-widget-cf74cffe.js} +8 -7
- package/dist/cjs/post-klp-login-widget-cf74cffe.js.map +1 -0
- package/dist/cjs/post-klp-login-widget.cjs.entry.js +5 -5
- package/dist/cjs/{post-language-switch-a2dacdd9.js → post-language-switch-e8b5524b.js} +8 -7
- package/dist/cjs/post-language-switch-e8b5524b.js.map +1 -0
- package/dist/cjs/post-language-switch.cjs.entry.js +6 -6
- package/dist/cjs/{post-logo-ac175767.js → post-logo-0a680f8a.js} +6 -5
- package/dist/cjs/post-logo-0a680f8a.js.map +1 -0
- package/dist/cjs/post-logo.cjs.entry.js +3 -3
- package/dist/cjs/{post-main-navigation-8ed49014.js → post-main-navigation-47a7bfa8.js} +8 -7
- package/dist/cjs/post-main-navigation-47a7bfa8.js.map +1 -0
- package/dist/cjs/post-main-navigation.cjs.entry.js +6 -6
- package/dist/cjs/{post-meta-navigation-35b2926d.js → post-meta-navigation-e5da62e3.js} +5 -4
- package/dist/cjs/post-meta-navigation-e5da62e3.js.map +1 -0
- package/dist/cjs/post-meta-navigation.cjs.entry.js +3 -3
- package/dist/cjs/{post-search-656fc0e6.js → post-search-0b908d72.js} +8 -7
- package/dist/cjs/post-search-0b908d72.js.map +1 -0
- package/dist/cjs/post-search.cjs.entry.js +6 -6
- package/dist/cjs/{post-skiplinks-857502b0.js → post-skiplinks-4c494b09.js} +7 -6
- package/dist/cjs/post-skiplinks-4c494b09.js.map +1 -0
- package/dist/cjs/post-skiplinks.cjs.entry.js +5 -5
- package/dist/cjs/{store-24f8d785.js → store-409eabd1.js} +2 -2
- package/dist/cjs/store-409eabd1.js.map +1 -0
- package/dist/cjs/{svg-icon.component-5355af90.js → svg-icon.component-6731b1e1.js} +2 -2
- package/dist/cjs/{svg-icon.component-5355af90.js.map → svg-icon.component-6731b1e1.js.map} +1 -1
- package/dist/cjs/{svg-sprite.component-4f4f4f30.js → svg-sprite.component-b7d7ef20.js} +2 -2
- package/dist/cjs/{svg-sprite.component-4f4f4f30.js.map → svg-sprite.component-b7d7ef20.js.map} +1 -1
- package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +6 -7
- package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js.map +1 -1
- package/dist/cjs/swisspost-internet-footer.cjs.entry.js +5 -5
- package/dist/cjs/swisspost-internet-header.cjs.entry.js +6 -6
- package/dist/cjs/swisspost-internet-header.cjs.js +2 -2
- package/dist/cjs/swisspost-internet-header.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/post-internet-breadcrumbs/components/focus-trap.component.js.map +1 -1
- package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js.map +1 -1
- package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js.map +1 -1
- package/dist/collection/components/post-internet-footer/post-internet-footer.js.map +1 -1
- package/dist/collection/components/post-internet-header/logo-animation/logo-animation.js.map +1 -1
- package/dist/collection/components/post-internet-header/post-internet-header.css +1 -1
- package/dist/collection/components/post-internet-header/post-internet-header.js.map +1 -1
- package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js.map +1 -1
- package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js.map +1 -1
- package/dist/collection/components/post-language-switch/post-language-switch.js.map +1 -1
- package/dist/collection/components/post-logo/post-logo.css +1 -1
- package/dist/collection/components/post-main-navigation/post-main-navigation.js.map +1 -1
- package/dist/collection/components/post-search/post-search.js.map +1 -1
- package/dist/collection/components/post-skiplinks/post-skiplinks.js.map +1 -1
- package/dist/collection/services/config.service.js.map +1 -1
- package/dist/collection/services/language.service.js.map +1 -1
- package/dist/collection/services/route.service.js.map +1 -1
- package/dist/collection/services/search/coveo.service.js.map +1 -1
- package/dist/collection/services/search/parcel.service.js.map +1 -1
- package/dist/collection/services/search/places.service.js.map +1 -1
- package/dist/collection/services/search/search.service.js.map +1 -1
- package/dist/collection/utils/if.component.js.map +1 -1
- package/dist/collection/utils/scrollparent.js.map +1 -1
- package/dist/components/klp-widget.controller.js +9 -4
- package/dist/components/klp-widget.controller.js.map +1 -1
- package/dist/components/post-klp-login-widget2.js +2 -1
- package/dist/components/post-klp-login-widget2.js.map +1 -1
- package/dist/components/post-language-switch2.js +2 -1
- package/dist/components/post-language-switch2.js.map +1 -1
- package/dist/components/post-logo2.js +3 -2
- package/dist/components/post-logo2.js.map +1 -1
- package/dist/components/post-main-navigation2.js +2 -1
- package/dist/components/post-main-navigation2.js.map +1 -1
- package/dist/components/post-meta-navigation2.js +2 -1
- package/dist/components/post-meta-navigation2.js.map +1 -1
- package/dist/components/post-search2.js +2 -1
- package/dist/components/post-search2.js.map +1 -1
- package/dist/components/post-skiplinks2.js +2 -1
- package/dist/components/post-skiplinks2.js.map +1 -1
- package/dist/components/store.js.map +1 -1
- package/dist/components/swisspost-internet-breadcrumbs.js +35 -9
- package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
- package/dist/components/swisspost-internet-footer.js +2 -1
- package/dist/components/swisspost-internet-footer.js.map +1 -1
- package/dist/components/swisspost-internet-header.js +21 -10
- package/dist/components/swisspost-internet-header.js.map +1 -1
- package/dist/docs.json +3 -3
- package/dist/esm/{index-42178863.js → index-f796221a.js} +19 -2
- package/dist/esm/index-f796221a.js.map +1 -0
- package/dist/esm/index.js +15 -16
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{klp-widget.controller-549d5132.js → klp-widget.controller-44b1ee83.js} +10 -5
- package/dist/esm/klp-widget.controller-44b1ee83.js.map +1 -0
- package/dist/esm/{language.service-8c9e6bc5.js → language.service-278970d4.js} +2 -2
- package/dist/esm/{language.service-8c9e6bc5.js.map → language.service-278970d4.js.map} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/esm/{post-internet-breadcrumbs-ca69e5ac.js → post-internet-breadcrumbs-14cd1ab2.js} +41 -15
- package/dist/esm/post-internet-breadcrumbs-14cd1ab2.js.map +1 -0
- package/dist/esm/{post-internet-footer-cdae34cd.js → post-internet-footer-5cec06ad.js} +7 -6
- package/dist/esm/post-internet-footer-5cec06ad.js.map +1 -0
- package/dist/esm/{post-internet-header-134f39f0.js → post-internet-header-a1b1e981.js} +27 -16
- package/dist/esm/post-internet-header-a1b1e981.js.map +1 -0
- package/dist/esm/{post-klp-login-widget-0b199a8c.js → post-klp-login-widget-2ba2331a.js} +8 -7
- package/dist/esm/post-klp-login-widget-2ba2331a.js.map +1 -0
- package/dist/esm/post-klp-login-widget.entry.js +5 -5
- package/dist/esm/{post-language-switch-a7291097.js → post-language-switch-a7461ffa.js} +8 -7
- package/dist/esm/post-language-switch-a7461ffa.js.map +1 -0
- package/dist/esm/post-language-switch.entry.js +6 -6
- package/dist/esm/{post-logo-a6bf90c5.js → post-logo-ad2a0fbe.js} +6 -5
- package/dist/esm/post-logo-ad2a0fbe.js.map +1 -0
- package/dist/esm/post-logo.entry.js +3 -3
- package/dist/esm/{post-main-navigation-733675fb.js → post-main-navigation-6fc9a1eb.js} +8 -7
- package/dist/esm/post-main-navigation-6fc9a1eb.js.map +1 -0
- package/dist/esm/post-main-navigation.entry.js +6 -6
- package/dist/esm/{post-meta-navigation-5c330dfa.js → post-meta-navigation-f231a663.js} +5 -4
- package/dist/esm/post-meta-navigation-f231a663.js.map +1 -0
- package/dist/esm/post-meta-navigation.entry.js +3 -3
- package/dist/esm/{post-search-0506c0d1.js → post-search-f41e3841.js} +8 -7
- package/dist/esm/post-search-f41e3841.js.map +1 -0
- package/dist/esm/post-search.entry.js +6 -6
- package/dist/esm/{post-skiplinks-9e5d3c8e.js → post-skiplinks-250a922c.js} +7 -6
- package/dist/esm/post-skiplinks-250a922c.js.map +1 -0
- package/dist/esm/post-skiplinks.entry.js +5 -5
- package/dist/esm/{store-c3a7c877.js → store-2e4643fc.js} +2 -2
- package/dist/esm/store-2e4643fc.js.map +1 -0
- package/dist/esm/{svg-icon.component-bac5b09e.js → svg-icon.component-811cf43a.js} +2 -2
- package/dist/esm/{svg-icon.component-bac5b09e.js.map → svg-icon.component-811cf43a.js.map} +1 -1
- package/dist/esm/{svg-sprite.component-1d9c1de3.js → svg-sprite.component-65ce87dc.js} +2 -2
- package/dist/esm/{svg-sprite.component-1d9c1de3.js.map → svg-sprite.component-65ce87dc.js.map} +1 -1
- package/dist/esm/swisspost-internet-breadcrumbs.entry.js +6 -7
- package/dist/esm/swisspost-internet-breadcrumbs.entry.js.map +1 -1
- package/dist/esm/swisspost-internet-footer.entry.js +5 -5
- package/dist/esm/swisspost-internet-header.entry.js +6 -6
- package/dist/esm/swisspost-internet-header.js +3 -3
- package/dist/esm/swisspost-internet-header.js.map +1 -1
- package/dist/esm-es5/bodyScrollLock.esm-afcc00e3.js.map +1 -1
- package/dist/esm-es5/index-d2256e06.js.map +1 -1
- package/dist/esm-es5/{index-42178863.js → index-f796221a.js} +2 -2
- package/dist/esm-es5/index-f796221a.js.map +1 -0
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/klp-widget.controller-44b1ee83.js +12 -0
- package/dist/{swisspost-internet-header/p-a7bc91ca.system.js.map → esm-es5/klp-widget.controller-44b1ee83.js.map} +1 -1
- package/dist/esm-es5/{language.service-8c9e6bc5.js → language.service-278970d4.js} +2 -2
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/post-internet-breadcrumbs-14cd1ab2.js +7 -0
- package/dist/esm-es5/post-internet-breadcrumbs-14cd1ab2.js.map +1 -0
- package/dist/esm-es5/{post-internet-footer-cdae34cd.js → post-internet-footer-5cec06ad.js} +2 -2
- package/dist/esm-es5/post-internet-footer-5cec06ad.js.map +1 -0
- package/dist/esm-es5/post-internet-header-a1b1e981.js +2 -0
- package/dist/esm-es5/post-internet-header-a1b1e981.js.map +1 -0
- package/dist/esm-es5/{post-klp-login-widget-0b199a8c.js → post-klp-login-widget-2ba2331a.js} +2 -2
- package/dist/esm-es5/post-klp-login-widget-2ba2331a.js.map +1 -0
- package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
- package/dist/esm-es5/{post-language-switch-a7291097.js → post-language-switch-a7461ffa.js} +2 -2
- package/dist/esm-es5/post-language-switch-a7461ffa.js.map +1 -0
- package/dist/esm-es5/post-language-switch.entry.js +1 -1
- package/dist/esm-es5/{post-logo-a6bf90c5.js → post-logo-ad2a0fbe.js} +2 -2
- package/dist/{esm/post-logo-a6bf90c5.js.map → esm-es5/post-logo-ad2a0fbe.js.map} +1 -1
- package/dist/esm-es5/post-logo.entry.js +1 -1
- package/dist/esm-es5/{post-main-navigation-733675fb.js → post-main-navigation-6fc9a1eb.js} +2 -2
- package/dist/esm-es5/post-main-navigation-6fc9a1eb.js.map +1 -0
- package/dist/esm-es5/post-main-navigation.entry.js +1 -1
- package/dist/esm-es5/{post-meta-navigation-5c330dfa.js → post-meta-navigation-f231a663.js} +2 -2
- package/dist/esm-es5/post-meta-navigation-f231a663.js.map +1 -0
- package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
- package/dist/esm-es5/{post-search-0506c0d1.js → post-search-f41e3841.js} +2 -2
- package/dist/esm-es5/post-search-f41e3841.js.map +1 -0
- package/dist/esm-es5/post-search.entry.js +1 -1
- package/dist/esm-es5/post-skiplinks-250a922c.js +2 -0
- package/dist/esm-es5/post-skiplinks-250a922c.js.map +1 -0
- package/dist/esm-es5/post-skiplinks.entry.js +1 -1
- package/dist/esm-es5/{store-c3a7c877.js → store-2e4643fc.js} +2 -2
- package/dist/esm-es5/store-2e4643fc.js.map +1 -0
- package/dist/esm-es5/{svg-icon.component-bac5b09e.js → svg-icon.component-811cf43a.js} +2 -2
- package/dist/esm-es5/{svg-sprite.component-1d9c1de3.js → svg-sprite.component-65ce87dc.js} +2 -2
- package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +1 -1
- 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/swisspost-internet-header.js.map +1 -1
- package/dist/swisspost-internet-header/index.esm.js +1 -1
- package/dist/swisspost-internet-header/p-0a6b234b.entry.js +2 -0
- package/dist/swisspost-internet-header/p-0ff6f7f4.entry.js +2 -0
- package/dist/swisspost-internet-header/p-1097010e.js +2 -0
- package/dist/swisspost-internet-header/p-1097010e.js.map +1 -0
- package/dist/swisspost-internet-header/{p-f038a170.system.js → p-19771ee8.system.js} +2 -2
- package/dist/swisspost-internet-header/p-19771ee8.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-197bbbde.js +3 -0
- package/dist/swisspost-internet-header/p-197bbbde.js.map +1 -0
- package/dist/swisspost-internet-header/{p-0df077ea.system.js → p-1d369fcc.system.js} +2 -2
- package/dist/swisspost-internet-header/p-1d369fcc.system.js.map +1 -0
- package/dist/swisspost-internet-header/{p-b9a1a146.system.js → p-1fcd0f72.system.js} +2 -2
- package/dist/swisspost-internet-header/p-1fcd0f72.system.js.map +1 -0
- package/dist/swisspost-internet-header/{p-fab8c31c.system.js → p-20c7d029.system.js} +2 -2
- package/dist/swisspost-internet-header/p-20c7d029.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-20f7e2b6.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-87d6ddc6.system.js → p-237918ac.system.js} +2 -2
- package/dist/swisspost-internet-header/p-237ac2bd.system.js +2 -0
- package/dist/swisspost-internet-header/p-237ac2bd.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-23b26931.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-271ed32d.js +7 -0
- package/dist/swisspost-internet-header/p-271ed32d.js.map +1 -0
- package/dist/swisspost-internet-header/p-2e38e01e.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-2f9df702.entry.js +2 -0
- package/dist/swisspost-internet-header/p-303b0b53.entry.js +2 -0
- package/dist/swisspost-internet-header/p-31512bdc.js +12 -0
- package/dist/swisspost-internet-header/{p-2a8d5787.js.map → p-31512bdc.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-05bb41bf.system.js → p-332e638f.system.js} +2 -2
- package/dist/swisspost-internet-header/p-332e638f.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-4363cd22.entry.js +2 -0
- package/dist/swisspost-internet-header/p-451d3317.js +2 -0
- package/dist/swisspost-internet-header/{p-0adc396f.js → p-501b0f06.js} +2 -2
- package/dist/swisspost-internet-header/p-501b0f06.js.map +1 -0
- package/dist/swisspost-internet-header/p-51260a1f.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-5c30b6e5.system.js +7 -0
- package/dist/swisspost-internet-header/p-5c30b6e5.system.js.map +1 -0
- package/dist/swisspost-internet-header/{p-90609524.system.js → p-636b0d26.system.js} +2 -2
- package/dist/swisspost-internet-header/p-636b0d26.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-6892caee.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-51a44f8a.js → p-7c655950.js} +2 -2
- package/dist/swisspost-internet-header/p-7c655950.js.map +1 -0
- package/dist/swisspost-internet-header/p-7f40ebc6.system.js +12 -0
- package/dist/{esm-es5/klp-widget.controller-549d5132.js.map → swisspost-internet-header/p-7f40ebc6.system.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-c8567a81.system.js → p-88424db0.system.js} +2 -2
- package/dist/swisspost-internet-header/{p-b62ac44c.js → p-914ada58.js} +2 -2
- package/dist/swisspost-internet-header/{p-3e59929c.js → p-94c5c08e.js} +2 -2
- package/dist/swisspost-internet-header/p-9b4d5e90.system.js.map +1 -1
- package/dist/swisspost-internet-header/{p-4e3b909b.js → p-9d2502ca.js} +2 -2
- package/dist/swisspost-internet-header/{p-7957177c.system.js.map → p-9d2502ca.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-8f6fb84d.js → p-9d84e280.js} +2 -2
- package/dist/swisspost-internet-header/p-9d84e280.js.map +1 -0
- package/dist/swisspost-internet-header/{p-266e6d3a.js → p-a9256af7.js} +2 -2
- package/dist/swisspost-internet-header/p-a9256af7.js.map +1 -0
- package/dist/swisspost-internet-header/p-a9bfbac2.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-b3014611.system.js.map +1 -1
- package/dist/swisspost-internet-header/p-b645daf7.system.js +2 -0
- package/dist/swisspost-internet-header/p-b645daf7.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-b8380f66.js +2 -0
- package/dist/swisspost-internet-header/p-b8380f66.js.map +1 -0
- package/dist/swisspost-internet-header/p-b978f6df.system.js +2 -0
- package/dist/swisspost-internet-header/p-c1b1ec14.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-e082d4fe.js → p-c34a0ce2.js} +2 -2
- package/dist/swisspost-internet-header/p-c34a0ce2.js.map +1 -0
- package/dist/swisspost-internet-header/p-c98c5063.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-c876af15.system.js → p-cb0d43c6.system.js} +2 -2
- package/dist/swisspost-internet-header/p-cb0d43c6.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-cff98d1f.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-2b163d9c.system.js → p-d0246e04.system.js} +2 -2
- package/dist/swisspost-internet-header/p-d03e7d05.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-62bb3696.system.js → p-d7a5b1c5.system.js} +2 -2
- package/dist/swisspost-internet-header/p-d7a5b1c5.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-d83602cb.system.js +3 -0
- package/dist/swisspost-internet-header/p-d83602cb.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-d8b3d18d.entry.js +2 -0
- package/dist/swisspost-internet-header/p-dff42a0c.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-7957177c.system.js → p-e6b6ae72.system.js} +2 -2
- package/dist/swisspost-internet-header/p-e6b6ae72.system.js.map +1 -0
- package/dist/swisspost-internet-header/p-edc198dc.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-e2b94a49.js → p-ee278b43.js} +2 -2
- package/dist/swisspost-internet-header/p-ee278b43.js.map +1 -0
- package/dist/swisspost-internet-header/{p-2133f8ff.js → p-f956d443.js} +2 -2
- package/dist/swisspost-internet-header/p-f956d443.js.map +1 -0
- package/dist/swisspost-internet-header/p-fcf86039.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-fe7f6fc9.system.entry.js +2 -0
- package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.esm.js.map +1 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.js +1 -1
- package/package.json +16 -7
- package/readme.md +1 -1
- package/dist/cjs/_commonjsHelpers-537d719a.js +0 -22
- package/dist/cjs/_commonjsHelpers-537d719a.js.map +0 -1
- package/dist/cjs/index-3423c7b3.js.map +0 -1
- package/dist/cjs/klp-widget.controller-7fbe23c3.js.map +0 -1
- package/dist/cjs/post-internet-breadcrumbs-15f878ef.js.map +0 -1
- package/dist/cjs/post-internet-footer-5fa54b4d.js.map +0 -1
- package/dist/cjs/post-internet-header-797beaef.js.map +0 -1
- package/dist/cjs/post-klp-login-widget-b0093c44.js.map +0 -1
- package/dist/cjs/post-language-switch-a2dacdd9.js.map +0 -1
- package/dist/cjs/post-logo-ac175767.js.map +0 -1
- package/dist/cjs/post-main-navigation-8ed49014.js.map +0 -1
- package/dist/cjs/post-meta-navigation-35b2926d.js.map +0 -1
- package/dist/cjs/post-search-656fc0e6.js.map +0 -1
- package/dist/cjs/post-skiplinks-857502b0.js.map +0 -1
- package/dist/cjs/store-24f8d785.js.map +0 -1
- package/dist/components/_commonjsHelpers.js +0 -19
- package/dist/components/_commonjsHelpers.js.map +0 -1
- package/dist/esm/_commonjsHelpers-9943807e.js +0 -19
- package/dist/esm/_commonjsHelpers-9943807e.js.map +0 -1
- package/dist/esm/index-42178863.js.map +0 -1
- package/dist/esm/klp-widget.controller-549d5132.js.map +0 -1
- package/dist/esm/post-internet-breadcrumbs-ca69e5ac.js.map +0 -1
- package/dist/esm/post-internet-footer-cdae34cd.js.map +0 -1
- package/dist/esm/post-internet-header-134f39f0.js.map +0 -1
- package/dist/esm/post-klp-login-widget-0b199a8c.js.map +0 -1
- package/dist/esm/post-language-switch-a7291097.js.map +0 -1
- package/dist/esm/post-main-navigation-733675fb.js.map +0 -1
- package/dist/esm/post-meta-navigation-5c330dfa.js.map +0 -1
- package/dist/esm/post-search-0506c0d1.js.map +0 -1
- package/dist/esm/post-skiplinks-9e5d3c8e.js.map +0 -1
- package/dist/esm/store-c3a7c877.js.map +0 -1
- package/dist/esm-es5/_commonjsHelpers-9943807e.js +0 -2
- package/dist/esm-es5/index-42178863.js.map +0 -1
- package/dist/esm-es5/klp-widget.controller-549d5132.js +0 -13
- package/dist/esm-es5/post-internet-breadcrumbs-ca69e5ac.js +0 -7
- package/dist/esm-es5/post-internet-breadcrumbs-ca69e5ac.js.map +0 -1
- package/dist/esm-es5/post-internet-footer-cdae34cd.js.map +0 -1
- package/dist/esm-es5/post-internet-header-134f39f0.js +0 -2
- package/dist/esm-es5/post-internet-header-134f39f0.js.map +0 -1
- package/dist/esm-es5/post-klp-login-widget-0b199a8c.js.map +0 -1
- package/dist/esm-es5/post-language-switch-a7291097.js.map +0 -1
- package/dist/esm-es5/post-logo-a6bf90c5.js.map +0 -1
- package/dist/esm-es5/post-main-navigation-733675fb.js.map +0 -1
- package/dist/esm-es5/post-meta-navigation-5c330dfa.js.map +0 -1
- package/dist/esm-es5/post-search-0506c0d1.js.map +0 -1
- package/dist/esm-es5/post-skiplinks-9e5d3c8e.js +0 -2
- package/dist/esm-es5/post-skiplinks-9e5d3c8e.js.map +0 -1
- package/dist/esm-es5/store-c3a7c877.js.map +0 -1
- package/dist/swisspost-internet-header/p-05bb41bf.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-0adc396f.js.map +0 -1
- package/dist/swisspost-internet-header/p-0df077ea.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-112455b1.js +0 -2
- package/dist/swisspost-internet-header/p-1668b002.entry.js +0 -2
- package/dist/swisspost-internet-header/p-2133f8ff.js.map +0 -1
- package/dist/swisspost-internet-header/p-266e6d3a.js.map +0 -1
- package/dist/swisspost-internet-header/p-2a8d5787.js +0 -13
- package/dist/swisspost-internet-header/p-31e7f09a.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-3abbb0bc.js +0 -3
- package/dist/swisspost-internet-header/p-3abbb0bc.js.map +0 -1
- package/dist/swisspost-internet-header/p-3e4285cd.entry.js +0 -2
- package/dist/swisspost-internet-header/p-461e53b1.js +0 -2
- package/dist/swisspost-internet-header/p-4e3b909b.js.map +0 -1
- package/dist/swisspost-internet-header/p-51a44f8a.js.map +0 -1
- package/dist/swisspost-internet-header/p-548291cb.system.js +0 -2
- package/dist/swisspost-internet-header/p-548291cb.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-550de753.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-56f249a0.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-62bb3696.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-66a7fdb3.js +0 -7
- package/dist/swisspost-internet-header/p-66a7fdb3.js.map +0 -1
- package/dist/swisspost-internet-header/p-85b6421e.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-8936d9c2.entry.js +0 -2
- package/dist/swisspost-internet-header/p-8f6fb84d.js.map +0 -1
- package/dist/swisspost-internet-header/p-90609524.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-9448353b.system.js +0 -7
- package/dist/swisspost-internet-header/p-9448353b.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-97a93bc5.entry.js +0 -2
- package/dist/swisspost-internet-header/p-9cb8483e.entry.js +0 -2
- package/dist/swisspost-internet-header/p-a49a2089.system.js +0 -3
- package/dist/swisspost-internet-header/p-a49a2089.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-a7bc91ca.system.js +0 -13
- package/dist/swisspost-internet-header/p-a9610d39.system.js +0 -2
- package/dist/swisspost-internet-header/p-a9610d39.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-aa836528.entry.js +0 -2
- package/dist/swisspost-internet-header/p-aae36739.entry.js +0 -2
- package/dist/swisspost-internet-header/p-b4ae4c6d.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-b588b3bf.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-b9a1a146.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-c857983f.entry.js +0 -2
- package/dist/swisspost-internet-header/p-c876af15.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-c91db812.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-ca6b8cae.js +0 -2
- package/dist/swisspost-internet-header/p-ca6b8cae.js.map +0 -1
- package/dist/swisspost-internet-header/p-cb958a70.entry.js +0 -2
- package/dist/swisspost-internet-header/p-d55807a5.entry.js +0 -2
- package/dist/swisspost-internet-header/p-da01a322.system.js +0 -2
- package/dist/swisspost-internet-header/p-e082d4fe.js.map +0 -1
- package/dist/swisspost-internet-header/p-e2b94a49.js.map +0 -1
- package/dist/swisspost-internet-header/p-ec8cc78c.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-f038a170.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-f6816aeb.js +0 -2
- package/dist/swisspost-internet-header/p-f6816aeb.js.map +0 -1
- package/dist/swisspost-internet-header/p-f887c8bb.system.js +0 -2
- package/dist/swisspost-internet-header/p-f887c8bb.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-fab8c31c.system.js.map +0 -1
- package/dist/swisspost-internet-header/p-fc3447a7.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-fc3447a7.system.entry.js.map +0 -1
- package/dist/swisspost-internet-header/p-fce5a989.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-fce5a989.system.entry.js.map +0 -1
- /package/dist/esm-es5/{language.service-8c9e6bc5.js.map → language.service-278970d4.js.map} +0 -0
- /package/dist/esm-es5/{svg-icon.component-bac5b09e.js.map → svg-icon.component-811cf43a.js.map} +0 -0
- /package/dist/esm-es5/{svg-sprite.component-1d9c1de3.js.map → svg-sprite.component-65ce87dc.js.map} +0 -0
- /package/dist/{esm-es5/_commonjsHelpers-9943807e.js.map → swisspost-internet-header/p-0a6b234b.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-112455b1.js.map → p-0ff6f7f4.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-1668b002.entry.js.map → p-20f7e2b6.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-87d6ddc6.system.js.map → p-237918ac.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-31e7f09a.system.entry.js.map → p-23b26931.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-3e4285cd.entry.js.map → p-2e38e01e.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-550de753.system.entry.js.map → p-2f9df702.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-56f249a0.system.entry.js.map → p-303b0b53.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-85b6421e.system.entry.js.map → p-4363cd22.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-461e53b1.js.map → p-451d3317.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-8936d9c2.entry.js.map → p-51260a1f.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-97a93bc5.entry.js.map → p-6892caee.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-c8567a81.system.js.map → p-88424db0.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-b62ac44c.js.map → p-914ada58.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-3e59929c.js.map → p-94c5c08e.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-9cb8483e.entry.js.map → p-a9bfbac2.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-aa836528.entry.js.map → p-b978f6df.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-aae36739.entry.js.map → p-c1b1ec14.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-b4ae4c6d.system.entry.js.map → p-c98c5063.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-b588b3bf.system.entry.js.map → p-cff98d1f.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-2b163d9c.system.js.map → p-d0246e04.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-c857983f.entry.js.map → p-d03e7d05.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-c91db812.system.entry.js.map → p-d8b3d18d.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-cb958a70.entry.js.map → p-dff42a0c.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-d55807a5.entry.js.map → p-edc198dc.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-da01a322.system.js.map → p-fcf86039.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-ec8cc78c.system.entry.js.map → p-fe7f6fc9.system.entry.js.map} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","_i","arguments","length","clearTimeout","setTimeout","apply","isConnected","maybeElement","cleanupElements","_b","keys","key","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","_a","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","unSet","newValue","unReset","use","subscriptions","unsubs","reduce","subscription","unsub","array","item","index","indexOf","createStore","projectId","currentLanguage","localizedConfig","environment","search","login","meta","stickyness"],"sources":["../../node_modules/.pnpm/@stencil+store@2.0.12_@stencil+core@4.9.0/node_modules/@stencil/store/dist/index.mjs","src/data/store.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { Environment, ILocalizedConfig, ILocalizedCustomConfig } from '../models/general.model';\nimport { NavMainEntity } from '../models/header.model';\nimport { IAvailableLanguage } from '../models/language.model';\nimport { StickynessOptions } from '../components';\n\nexport interface HeaderState {\n localizedConfig: ILocalizedConfig | null;\n currentLanguage: string | null;\n projectId: string | null;\n environment: Environment;\n search: boolean;\n login: boolean;\n meta: boolean;\n languageSwitchOverrides?: IAvailableLanguage[];\n localizedCustomConfig?: ILocalizedCustomConfig;\n osFlyoutOverrides?: NavMainEntity;\n stickyness: StickynessOptions;\n}\n\nexport const { state, reset, dispose } = createStore<HeaderState>({\n projectId: null,\n currentLanguage: null,\n localizedConfig: null,\n environment: 'prod',\n search: true,\n login: true,\n meta: true,\n stickyness: 'minimal',\n});\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","_i","arguments","length","clearTimeout","setTimeout","apply","isConnected","maybeElement","cleanupElements","_b","keys","key","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","_a","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","unSet","newValue","unReset","use","subscriptions","unsubs","reduce","subscription","unsub","array","item","index","indexOf","createStore","projectId","currentLanguage","localizedConfig","environment","search","login","meta","stickyness","exports","s","d"],"sources":["../../node_modules/.pnpm/@stencil+store@2.0.12_@stencil+core@4.9.0/node_modules/@stencil/store/dist/index.mjs","src/data/store.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { Environment, ILocalizedConfig, ILocalizedCustomConfig } from '../models/general.model';\nimport { NavMainEntity } from '../models/header.model';\nimport { IAvailableLanguage } from '../models/language.model';\nimport { StickynessOptions } from '../components';\n\nexport interface HeaderState {\n localizedConfig: ILocalizedConfig | null;\n currentLanguage: string | null;\n projectId: string | null;\n environment: Environment;\n search: boolean;\n login: boolean;\n meta: boolean;\n languageSwitchOverrides?: IAvailableLanguage[];\n localizedCustomConfig?: ILocalizedCustomConfig;\n osFlyoutOverrides?: NavMainEntity;\n stickyness: StickynessOptions;\n}\n\nexport const { state, reset, dispose } = createStore<HeaderState>({\n projectId: null,\n currentLanguage: null,\n localizedConfig: null,\n environment: 'prod',\n search: true,\n login: true,\n meta: true,\n stickyness: 'minimal',\n});\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["postMetaNavigationCss","PostMetaNavigation","render","_a","state","localizedConfig","header","navMeta","undefined","headerConfig","h","Host","class","this","orientation","fullWidth","translations","navMetaAriaLabel","_b","filter","meta","isHomeLink","map","key","url","active","isActive","target","href","text"],"sources":["src/components/post-meta-navigation/post-meta-navigation.scss?tag=post-meta-navigation&encapsulation=shadow","src/components/post-meta-navigation/post-meta-navigation.tsx"],"sourcesContent":["@use '@swisspost/design-system-styles/variables/color';\n@use '@swisspost/design-system-styles/functions';\n@use '../../utils/utils.scss';\n@use '../../utils/mixins.scss';\n\n:host {\n display: block;\n font-size: functions.px-to-rem(14px);\n}\n\n.meta-container {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n min-height: functions.px-to-rem(48px);\n\n background: color.$gray-background-light;\n\n @media (min-width: 1441px) {\n &:not(.full-width) {\n margin: 0 auto;\n max-width: 1440px;\n }\n }\n\n &.vertical {\n @include mixins.container-padding();\n\n flex-direction: column;\n align-items: flex-start;\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n\n @include mixins.min(lg) {\n display: none;\n }\n }\n\n &.horizontal {\n ::slotted(*) {\n --separator-display: block;\n --separator-height: #{functions.px-to-rem(34px)};\n }\n\n &::before {\n display: block;\n content: '';\n position: absolute;\n top: 0px;\n height: var(--meta-header-height);\n background-color: color.$gray-background-light;\n left: 50%;\n width: 50%;\n }\n }\n}\n\n.meta-navigation {\n .horizontal & {\n position: relative;\n padding-right: 1rem;\n }\n}\n\n.meta-list {\n @extend %no-list;\n display: flex;\n\n .vertical & {\n flex-direction: column;\n align-items: flex-start;\n }\n}\n\n.meta-link {\n @extend %nav-link;\n\n font-size: functions.px-to-rem(14px);\n display: flex;\n align-items: center;\n padding: 0 0.5rem;\n min-height: functions.px-to-rem(34px);\n border-radius: 3px;\n\n &.active {\n background: color.$yellow;\n color: black;\n }\n\n .vertical & {\n color: black;\n padding: 0;\n\n &.active {\n padding: 0 0.5rem;\n margin-left: -0.5rem;\n }\n }\n}\n","import { Component, Host, h, Prop } from '@stencil/core';\nimport { state } from '../../data/store';\n\n@Component({\n tag: 'post-meta-navigation',\n styleUrl: 'post-meta-navigation.scss',\n shadow: true,\n})\nexport class PostMetaNavigation {\n @Prop() orientation: 'horizontal' | 'vertical';\n @Prop() fullWidth?: boolean = false;\n\n render() {\n if (state.localizedConfig?.header.navMeta === undefined) return;\n const headerConfig = state.localizedConfig.header;\n\n return (\n <Host>\n <div class={`meta-container ${this.orientation}${this.fullWidth ? ' full-width' : ''}`}>\n <nav aria-label={headerConfig.translations.navMetaAriaLabel} class=\"meta-navigation\">\n <ul class=\"meta-list\">\n {headerConfig.navMeta\n ?.filter(meta => !meta.isHomeLink)\n .map(meta => (\n <li key={meta.url}>\n <a\n class={{ 'active': meta.isActive, 'meta-link': true }}\n target={meta.target}\n href={meta.url}\n >\n <span aria-hidden=\"true\">{meta.text}</span>\n </a>\n </li>\n ))}\n </ul>\n </nav>\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"sFAAA,MAAMA,EAAwB,0/L,MCQjBC,EAAkB,M,mEAEC,K,CAE9B,MAAAC,G,QACE,KAAIC,EAAAC,EAAMC,mBAAe,MAAAF,SAAA,SAAAA,EAAEG,OAAOC,WAAYC,UAAW,OACzD,MAAMC,EAAeL,EAAMC,gBAAgBC,OAE3C,OACEI,EAACC,EAAI,KACHD,EAAA,OAAKE,MAAO,kBAAkBC,KAAKC,cAAcD,KAAKE,UAAY,cAAgB,MAChFL,EAAA,oBAAiBD,EAAaO,aAAaC,iBAAkBL,MAAM,mBACjEF,EAAA,MAAIE,MAAM,cACPM,EAAAT,EAAaF,WAAO,MAAAW,SAAA,SAAAA,EACjBC,QAAOC,IAASA,EAAKC,aACtBC,KAAIF,GACHV,EAAA,MAAIa,IAAKH,EAAKI,KACZd,EAAA,KACEE,MAAO,CAAEa,OAAUL,EAAKM,SAAU,YAAa,MAC/CC,OAAQP,EAAKO,OACbC,KAAMR,EAAKI,KAEXd,EAAA,sBAAkB,QAAQU,EAAKS,YAM3CnB,EAAA,c"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["LevelOneAction","props","TagName","level","url","h","class","active","isActiveOverride","focus","isOpen","href","title","_a","trim","_b","_c","text","undefined","tabindex","noFlyout","onTouchEnd","e","onKeyDown","onClick","translate","postMainNavigationCss","PostMainNavigation","exports","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","class_1","prototype","connectedCallback","_this","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","concat","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","manageFocus","direction","userPrefersReducedMotion","querySelector","parentElement","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","toggleDropdown","force","mobileMenuOpen","dropdownToggled","open","element","setFocus","firstLink","setActiveFlyout","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","translations","navMainAriaLabel","role","navMain","map","levelOne","onMouseLeave","onMouseEnter","renderLevelOneFlyout","bind","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","i","linkList","link","target"],"sources":["src/components/post-main-navigation/components/level-one-action.component.tsx","src/components/post-main-navigation/post-main-navigation.scss?tag=post-main-navigation&encapsulation=shadow","src/components/post-main-navigation/post-main-navigation.tsx"],"sourcesContent":["import { h } from '@stencil/core';\nimport { NavMainEntity } from '../../../models/header.model';\nimport { translate } from '../../../services/language.service';\n\nexport const LevelOneAction = (props: {\n level: NavMainEntity;\n isOpen: boolean;\n onTouchEnd: (e: any) => void;\n onKeyDown: (e: any) => void;\n onClick: (e: any) => void;\n}) => {\n const TagName = props.level.url ? 'a' : 'button';\n\n return (\n <TagName\n class={{\n 'main-link': true,\n 'active': !!props.level.isActiveOverride,\n 'focus': props.isOpen,\n }}\n href={props.level.url}\n title={\n props.level.title?.trim() && props.level.title?.trim() !== props.level.text?.trim()\n ? props.level.title\n : undefined\n }\n tabindex={props.level.url ? undefined : 0}\n aria-haspopup={!props.level.noFlyout + ''}\n aria-expanded={props.level.noFlyout ? null : props.isOpen + ''}\n onTouchEnd={e => props.onTouchEnd(e)}\n onKeyDown={e => props.onKeyDown(e)}\n onClick={e => props.onClick(e)}\n >\n <span>{props.level.text}</span>\n {props.level.isActiveOverride ? (\n <span class=\"visually-hidden\">{translate('Active navigation element')}</span>\n ) : null}\n <svg aria-hidden=\"true\">\n <use href=\"#pi-pointy-arrow-right\" />\n </svg>\n </TagName>\n );\n};\n","@use '@swisspost/design-system-styles/variables/color';\n@use '@swisspost/design-system-styles/placeholders/text';\n@use '@swisspost/design-system-styles/functions';\n@use '@swisspost/design-system-styles/mixins/utilities';\n@use '../../utils/utils.scss';\n@use '../../utils/mixins.scss';\n\n:host {\n --host-window-height: var(--window-height, 100vh);\n --calculated-header-height: calc(var(--header-height) + 1px);\n\n display: block;\n min-width: 0;\n height: var(--header-height);\n flex-shrink: 0;\n}\n\n:host(.no-animation) {\n * {\n animation: none !important;\n transition: none !important;\n }\n}\n\n.main-navigation,\n.main-container,\n.main-container li,\n.main-link {\n @include mixins.min(lg) {\n height: 100%;\n }\n}\n\n.main-navigation {\n font-size: functions.px-to-rem(18px);\n\n @include mixins.min(lg) {\n font-size: functions.px-to-rem(16px);\n margin: 0 0.75rem;\n }\n\n @include mixins.min(xl) {\n font-size: functions.px-to-rem(18px);\n }\n\n @include mixins.min(xxl) {\n font-size: functions.px-to-rem(20px);\n }\n\n @include mixins.max(lg) {\n position: absolute;\n top: var(--calculated-header-height);\n left: 0;\n background: white;\n height: calc(var(--host-window-height) - var(--calculated-header-height));\n width: 100%;\n margin: 0;\n overflow: hidden scroll;\n -webkit-overflow-scrolling: touch;\n overscroll-behavior: contain;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n z-index: -1;\n visibility: hidden;\n transform: translateY(-100%);\n transition: transform 0.35s, visibility 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &.open {\n transform: translateY(0);\n visibility: visible;\n }\n }\n}\n\n.main-container {\n @extend %no-list;\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n @include mixins.max(lg) {\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-start;\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n\n > li + li {\n border-top: 1px solid color.$gray-10;\n }\n }\n\n @include mixins.min(lg) {\n padding-right: 0;\n padding-left: 0;\n }\n\n > li {\n flex: 0 1 auto;\n min-width: 0;\n }\n}\n\n.main-link {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n text-align: left;\n cursor: pointer;\n width: 100%;\n\n @include mixins.min(lg) {\n svg {\n display: none;\n }\n }\n\n @include mixins.max(lg) {\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-weight: 300;\n padding: 0.625rem 0;\n width: 100%;\n text-align: left;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n }\n\n span {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n}\n\n.main-link,\n.flyout-link {\n position: relative;\n color: black;\n\n &::after {\n content: '';\n position: absolute;\n bottom: -1px;\n left: 0;\n width: 100%;\n height: 4px;\n background-color: transparent;\n opacity: 0;\n transform: scaleX(0.8);\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n\n &:hover,\n &.focus {\n &::after {\n background-color: color.$gray-20;\n opacity: 1;\n transform: scale(1);\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n }\n }\n\n &.active {\n font-weight: 700;\n\n &::after {\n background-color: color.$yellow;\n opacity: 1;\n transform: scale(1);\n }\n }\n\n &:hover,\n &.focus,\n &.active {\n @include utilities.high-contrast-mode() {\n background-color: Highlight;\n }\n }\n}\n\n.flyout {\n left: 0;\n width: 100%;\n background: white;\n padding-bottom: 3rem;\n overflow: auto;\n overscroll-behavior: contain;\n visibility: hidden;\n\n @include mixins.min(lg) {\n position: absolute;\n top: 100%;\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\n z-index: -1;\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\n transform: translateY(-100%);\n\n &.open {\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\n transform: translateY(0);\n }\n }\n\n @include mixins.max(lg) {\n position: fixed;\n top: 0;\n height: 100%;\n z-index: 1;\n transform: translateX(100%);\n\n &.open {\n transform: translateX(0);\n }\n }\n\n &.open {\n visibility: visible;\n }\n\n &.animate {\n transition: transform 0.35s, visibility 0.35s, box-shadow 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n}\n\n.flyout-nav {\n @extend %font-curve-small;\n\n display: flex;\n justify-content: space-between;\n min-height: 3.5rem;\n\n // Change box-sizing to content-box to add 1px border width to flyout-nav hight.\n // This ensures flyout-nav has same hight as main-navigation-container.\n box-sizing: content-box;\n}\n\n.flyout-row {\n display: flex;\n gap: 1.5rem;\n\n @include mixins.max(lg) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n }\n\n @include mixins.max(rg) {\n grid-template-columns: 1fr;\n }\n}\n\n.flyout-column {\n flex: 1;\n max-width: 25%;\n\n @include mixins.max(lg) {\n max-width: none;\n }\n\n h3 {\n @extend %font-curve-small;\n margin-top: 0;\n }\n}\n\n.flyout-back-button {\n @include mixins.container-padding();\n\n display: flex;\n align-items: center;\n font-size: functions.px-to-rem(16px);\n font-weight: 400;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n\n.flyout-close-button {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n margin-left: auto;\n padding: 0 1.5rem;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.max(lg) {\n display: none;\n }\n}\n\n.flyout-linklist {\n @extend %no-list;\n\n li {\n border-top: 1px solid color.$gray-10;\n }\n\n &:first-child > li {\n border-top-color: transparent;\n }\n}\n\n.flyout-link {\n @extend %nav-link;\n\n display: block;\n padding: 0.75rem 0;\n}\n\n.flyout-title {\n @extend %font-curve-bigger-regular;\n\n margin: 2.5rem 0 1.5rem 0;\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, State } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { state } from '../../data/store';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n IsFocusable,\n NavMainEntity,\n} from '../../models/header.model';\nimport { userPrefersReducedMotion } from '../../services/ui.service';\nimport { translate } from '../../services/language.service';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { LevelOneAction } from './components/level-one-action.component';\n\n@Component({\n tag: 'post-main-navigation',\n styleUrl: 'post-main-navigation.scss',\n shadow: true,\n})\nexport class PostMainNavigation implements HasDropdown, IsFocusable {\n @State() activeFlyout: string | null;\n @State() mobileMenuOpen: boolean;\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\n @Event() flyoutToggled: EventEmitter<string | null>;\n @Element() host: DropdownElement;\n private throttledResize: throttle<() => void>;\n private resizeTimer: number | null = null;\n private mouseLeaveTimer: number | null = null;\n private mouseEnterTimer: number | null = null;\n\n connectedCallback() {\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n this.setWindowHeight();\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n if (this.mouseEnterTimer !== null) window.clearTimeout(this.mouseEnterTimer);\n if (this.mouseLeaveTimer !== null) window.clearTimeout(this.mouseLeaveTimer);\n }\n\n handleResize() {\n // Suspend all animations and transitions on window resize\n this.host.classList.add('no-animation');\n if (this.resizeTimer !== null) window.clearTimeout(this.resizeTimer);\n this.resizeTimer = window.setTimeout(() => {\n this.host.classList.remove('no-animation');\n }, 300);\n\n this.setWindowHeight();\n }\n\n // Update window height var\n setWindowHeight() {\n if (!this.host) {\n return;\n }\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n\n // Safari might or might not show a blank bar at the bottom where the browser\n // controls should be. This timeout waits for this bar to appear before resetting the available height\n window.setTimeout(() => {\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n }, 100);\n }\n\n openFlyout(id: string) {\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout && this.activeFlyout !== '') {\n // Add flyout animation if there's no flyout open\n this.addFlyoutAnimation(flyout, 'expand');\n }\n\n this.activeFlyout = id;\n this.flyoutToggled.emit(id);\n this.setWindowHeight();\n\n if (this.mouseLeaveTimer !== null) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n }\n\n closeFlyout(id?: string, manageFocus = true) {\n if (id === undefined) return;\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout) {\n // Add flyout animation for close action\n this.addFlyoutAnimation(flyout, 'collapse', manageFocus);\n }\n\n this.activeFlyout = null;\n this.flyoutToggled.emit();\n }\n\n addFlyoutAnimation(flyout: HTMLElement, direction?: 'expand' | 'collapse', manageFocus = true) {\n // Check if user prefers to see animations or not\n if (!userPrefersReducedMotion()) {\n flyout.classList.add('animate');\n\n // Remove flyout animation after transition ended\n flyout.addEventListener(\n 'transitionend',\n () => {\n if (manageFocus) {\n if (direction === 'expand') {\n flyout.querySelector<HTMLElement>('button.flyout-back-button')?.focus();\n } else if (direction === 'collapse') {\n flyout.parentElement?.querySelector<HTMLElement>('a.main-link')?.focus();\n }\n }\n\n flyout.classList.remove('animate');\n },\n {\n once: true,\n },\n );\n }\n }\n\n isActiveFlyout(id?: string) {\n return id === this.activeFlyout;\n }\n\n handleMouseEnter(level: NavMainEntity) {\n // Cancel opening the flyout if there already is one scheduled to open\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n this.mouseEnterTimer = null;\n }\n\n // Cancel closing if we enter again\n if (this.mouseLeaveTimer && this.activeFlyout === level.id) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0 && this.activeFlyout !== level.id) {\n // Delay opening the flyout for a moment to give users a chance to move the mouse over the navigation without triggering the flyout\n this.mouseEnterTimer = window.setTimeout(() => {\n this.mouseEnterTimer = null;\n if (level.id !== undefined) this.openFlyout(level.id);\n }, 200);\n }\n }\n\n handleMouseLeave(level: NavMainEntity) {\n // Cancel opening the flyout if a mouseleave event happens before the flyout opened\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n }\n\n // Don't close an open flyout if the mouseleave is from another mainnav entry\n if (this.activeFlyout && this.activeFlyout !== level.id) {\n return;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0) {\n // Allow the pointer to shortly leave the flyout without closing it. This\n // allows for user mistakes and makes the experience less nervous\n this.mouseLeaveTimer = window.setTimeout(() => {\n this.closeFlyout(level.id, false);\n }, 300);\n }\n }\n\n handleTouchEnd(event: TouchEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first touchstart and has a flyout, prevent link activation and open the flyout\n if (event.cancelable) event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleKeyPress(event: KeyboardEvent, level: NavMainEntity) {\n if (event.key === 'Enter' && !this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first enter keypress and has a flyout, prevent link activation and open the flyout\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleClick(event: MouseEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first click, always open the flyout, never the link\n // This is relevant for desktop with active screenreader which\n // translates an enter keypress to a click\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n /**\n * Toggle the main navigation (only visible on mobile)\n * @param force Force a state\n * @returns Boolean indicating new state\n */\n @Method()\n async toggleDropdown(force?: boolean) {\n this.mobileMenuOpen = force === undefined ? !this.mobileMenuOpen : force;\n this.dropdownToggled.emit({ open: this.mobileMenuOpen, element: this.host });\n\n if (force === false) {\n this.closeFlyout();\n }\n\n this.setWindowHeight();\n\n return this.mobileMenuOpen;\n }\n\n /**\n * Focus the main navigation toggle button\n */\n @Method()\n async setFocus() {\n const firstLink = this.host.shadowRoot?.querySelector<HTMLElement>('.main-link');\n if (firstLink) {\n firstLink.focus();\n }\n }\n\n /**\n * Open a specific flyout\n * @param id Flyout ID\n */\n @Method()\n async setActiveFlyout(id: string | null) {\n this.activeFlyout = id;\n this.flyoutToggled.emit(this.activeFlyout);\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) return;\n const headerConfig = state.localizedConfig.header;\n\n return (\n <Host>\n <SvgSprite />\n <nav\n aria-label={headerConfig.translations.navMainAriaLabel}\n id=\"post-internet-header-main-navigation\"\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\n role=\"menu\"\n >\n <ul class=\"main-container container\">\n {headerConfig.navMain.map(levelOne => (\n <li\n key={levelOne.text}\n onMouseLeave={() => this.handleMouseLeave(levelOne)}\n onMouseEnter={() => this.handleMouseEnter(levelOne)}\n >\n <LevelOneAction\n level={levelOne}\n isOpen={this.isActiveFlyout(levelOne.id)}\n onTouchEnd={e => this.handleTouchEnd(e, levelOne)}\n onKeyDown={e => this.handleKeyPress(e, levelOne)}\n onClick={e => this.handleClick(e, levelOne)}\n />\n {!levelOne.noFlyout ? renderLevelOneFlyout.bind(this)(levelOne) : null}\n </li>\n ))}\n </ul>\n <slot></slot>\n </nav>\n </Host>\n );\n\n function renderLevelOneFlyout(levelOne: NavMainEntity) {\n return (\n <div id={levelOne.id} class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}>\n <div class=\"wide-container\">\n <div class=\"flyout-nav\">\n <button\n class=\"nav-link flyout-back-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <SvgIcon name=\"pi-pointy-arrow-right\" classNames=\"mirrored\" />\n <span>{headerConfig.translations.backButtonText}</span>\n </button>\n <button class=\"flyout-close-button\" onClick={() => this.closeFlyout(levelOne.id)}>\n <span class=\"visually-hidden\">\n {levelOne.text}, {headerConfig.translations.mobileNavToggleClose}\n </span>\n <SvgIcon name=\"pi-close\" />\n </button>\n </div>\n <h2 class=\"flyout-title container\">\n <a href={levelOne.url} class=\"nav-link\">\n {levelOne.text}\n </a>\n </h2>\n <div class=\"flyout-row container\">\n {levelOne.flyout.map((flyout, i) => (\n <div key={flyout.title} class=\"flyout-column\">\n {flyout.title ? <h3 id={`${levelOne.id}-column-${i}`}>{flyout.title}</h3> : null}\n <ul\n class=\"flyout-linklist\"\n aria-labelledby={flyout.title ? `${levelOne.id}-column-${i}` : undefined}\n >\n {flyout.linkList.map(link => (\n <li key={link.url}>\n <a\n class={{\n 'flyout-link': true,\n 'active': !!link?.isActiveOverride,\n }}\n href={link.url}\n target={link.target}\n >\n {link.title}\n {link?.isActiveOverride ? (\n <span class=\"visually-hidden\">\n , {translate('Active navigation element')}\n </span>\n ) : null}\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var e=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{};function n(e,n,r){return r={path:n,exports:{},require:function(e,n){return o()}},e(r,r.exports),r.exports}function o(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}export{e as a,n as c};
|
|
2
|
-
//# sourceMappingURL=p-112455b1.js.map
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export{P as swisspost_internet_header}from"./p-f6816aeb.js";import"./p-3abbb0bc.js";import"./p-a74b380d.js";import"./p-3e59929c.js";import"./p-2133f8ff.js";import"./p-a39139a9.js";import"./p-b62ac44c.js";import"./p-461e53b1.js";import"./p-840aa5c6.js";
|
|
2
|
-
//# sourceMappingURL=p-1668b002.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","clearTimeout","setTimeout","isConnected","maybeElement","cleanupElements","key","keys","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","unwrap","val","createObservableMap","defaultState","shouldUpdate","a","b","unwrappedState","states","Object","entries","handlers","_a","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","unSet","newValue","unReset","use","subscriptions","unsubs","reduce","subscription","unsub","array","item","index","indexOf","length","createStore","projectId","currentLanguage","localizedConfig","environment","search","login","meta","stickyness"],"sources":["../../node_modules/.pnpm/@stencil+store@2.0.12_@stencil+core@4.9.0/node_modules/@stencil/store/dist/index.mjs","src/data/store.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { Environment, ILocalizedConfig, ILocalizedCustomConfig } from '../models/general.model';\nimport { NavMainEntity } from '../models/header.model';\nimport { IAvailableLanguage } from '../models/language.model';\nimport { StickynessOptions } from '../components';\n\nexport interface HeaderState {\n localizedConfig: ILocalizedConfig | null;\n currentLanguage: string | null;\n projectId: string | null;\n environment: Environment;\n search: boolean;\n login: boolean;\n meta: boolean;\n languageSwitchOverrides?: IAvailableLanguage[];\n localizedCustomConfig?: ILocalizedCustomConfig;\n osFlyoutOverrides?: NavMainEntity;\n stickyness: StickynessOptions;\n}\n\nexport const { state, reset, dispose } = createStore<HeaderState>({\n projectId: null,\n currentLanguage: null,\n localizedConfig: null,\n environment: 'prod',\n search: true,\n login: true,\n meta: true,\n stickyness: 'minimal',\n});\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["LevelOneAction","props","TagName","level","url","h","class","active","isActiveOverride","focus","isOpen","href","title","_a","trim","_b","_c","text","undefined","tabindex","noFlyout","onTouchEnd","e","onKeyDown","onClick","translate","postMainNavigationCss","PostMainNavigation","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","connectedCallback","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","manageFocus","direction","userPrefersReducedMotion","querySelector","parentElement","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","toggleDropdown","force","mobileMenuOpen","dropdownToggled","open","element","setFocus","firstLink","setActiveFlyout","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","translations","navMainAriaLabel","role","navMain","map","levelOne","onMouseLeave","onMouseEnter","renderLevelOneFlyout","bind","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","i","linkList","link","target"],"sources":["src/components/post-main-navigation/components/level-one-action.component.tsx","src/components/post-main-navigation/post-main-navigation.scss?tag=post-main-navigation&encapsulation=shadow","src/components/post-main-navigation/post-main-navigation.tsx"],"sourcesContent":["import { h } from '@stencil/core';\nimport { NavMainEntity } from '../../../models/header.model';\nimport { translate } from '../../../services/language.service';\n\nexport const LevelOneAction = (props: {\n level: NavMainEntity;\n isOpen: boolean;\n onTouchEnd: (e: any) => void;\n onKeyDown: (e: any) => void;\n onClick: (e: any) => void;\n}) => {\n const TagName = props.level.url ? 'a' : 'button';\n\n return (\n <TagName\n class={{\n 'main-link': true,\n 'active': !!props.level.isActiveOverride,\n 'focus': props.isOpen,\n }}\n href={props.level.url}\n title={\n props.level.title?.trim() && props.level.title?.trim() !== props.level.text?.trim()\n ? props.level.title\n : undefined\n }\n tabindex={props.level.url ? undefined : 0}\n aria-haspopup={!props.level.noFlyout + ''}\n aria-expanded={props.level.noFlyout ? null : props.isOpen + ''}\n onTouchEnd={e => props.onTouchEnd(e)}\n onKeyDown={e => props.onKeyDown(e)}\n onClick={e => props.onClick(e)}\n >\n <span>{props.level.text}</span>\n {props.level.isActiveOverride ? (\n <span class=\"visually-hidden\">{translate('Active navigation element')}</span>\n ) : null}\n <svg aria-hidden=\"true\">\n <use href=\"#pi-pointy-arrow-right\" />\n </svg>\n </TagName>\n );\n};\n","@use '@swisspost/design-system-styles/variables/color';\n@use '@swisspost/design-system-styles/placeholders/text';\n@use '@swisspost/design-system-styles/functions';\n@use '@swisspost/design-system-styles/mixins/utilities';\n@use '../../utils/utils.scss';\n@use '../../utils/mixins.scss';\n\n:host {\n --host-window-height: var(--window-height, 100vh);\n --calculated-header-height: calc(var(--header-height) + 1px);\n\n display: block;\n min-width: 0;\n height: var(--header-height);\n flex-shrink: 0;\n}\n\n:host(.no-animation) {\n * {\n animation: none !important;\n transition: none !important;\n }\n}\n\n.main-navigation,\n.main-container,\n.main-container li,\n.main-link {\n @include mixins.min(lg) {\n height: 100%;\n }\n}\n\n.main-navigation {\n font-size: functions.px-to-rem(18px);\n\n @include mixins.min(lg) {\n font-size: functions.px-to-rem(16px);\n margin: 0 0.75rem;\n }\n\n @include mixins.min(xl) {\n font-size: functions.px-to-rem(18px);\n }\n\n @include mixins.min(xxl) {\n font-size: functions.px-to-rem(20px);\n }\n\n @include mixins.max(lg) {\n position: absolute;\n top: var(--calculated-header-height);\n left: 0;\n background: white;\n height: calc(var(--host-window-height) - var(--calculated-header-height));\n width: 100%;\n margin: 0;\n overflow: hidden scroll;\n -webkit-overflow-scrolling: touch;\n overscroll-behavior: contain;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n z-index: -1;\n visibility: hidden;\n transform: translateY(-100%);\n transition: transform 0.35s, visibility 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &.open {\n transform: translateY(0);\n visibility: visible;\n }\n }\n}\n\n.main-container {\n @extend %no-list;\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n @include mixins.max(lg) {\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-start;\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n\n > li + li {\n border-top: 1px solid color.$gray-10;\n }\n }\n\n @include mixins.min(lg) {\n padding-right: 0;\n padding-left: 0;\n }\n\n > li {\n flex: 0 1 auto;\n min-width: 0;\n }\n}\n\n.main-link {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n text-align: left;\n cursor: pointer;\n width: 100%;\n\n @include mixins.min(lg) {\n svg {\n display: none;\n }\n }\n\n @include mixins.max(lg) {\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-weight: 300;\n padding: 0.625rem 0;\n width: 100%;\n text-align: left;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n }\n\n span {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n}\n\n.main-link,\n.flyout-link {\n position: relative;\n color: black;\n\n &::after {\n content: '';\n position: absolute;\n bottom: -1px;\n left: 0;\n width: 100%;\n height: 4px;\n background-color: transparent;\n opacity: 0;\n transform: scaleX(0.8);\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n\n &:hover,\n &.focus {\n &::after {\n background-color: color.$gray-20;\n opacity: 1;\n transform: scale(1);\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n }\n }\n\n &.active {\n font-weight: 700;\n\n &::after {\n background-color: color.$yellow;\n opacity: 1;\n transform: scale(1);\n }\n }\n\n &:hover,\n &.focus,\n &.active {\n @include utilities.high-contrast-mode() {\n background-color: Highlight;\n }\n }\n}\n\n.flyout {\n left: 0;\n width: 100%;\n background: white;\n padding-bottom: 3rem;\n overflow: auto;\n overscroll-behavior: contain;\n visibility: hidden;\n\n @include mixins.min(lg) {\n position: absolute;\n top: 100%;\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\n z-index: -1;\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\n transform: translateY(-100%);\n\n &.open {\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\n transform: translateY(0);\n }\n }\n\n @include mixins.max(lg) {\n position: fixed;\n top: 0;\n height: 100%;\n z-index: 1;\n transform: translateX(100%);\n\n &.open {\n transform: translateX(0);\n }\n }\n\n &.open {\n visibility: visible;\n }\n\n &.animate {\n transition: transform 0.35s, visibility 0.35s, box-shadow 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n}\n\n.flyout-nav {\n @extend %font-curve-small;\n\n display: flex;\n justify-content: space-between;\n min-height: 3.5rem;\n\n // Change box-sizing to content-box to add 1px border width to flyout-nav hight.\n // This ensures flyout-nav has same hight as main-navigation-container.\n box-sizing: content-box;\n}\n\n.flyout-row {\n display: flex;\n gap: 1.5rem;\n\n @include mixins.max(lg) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n }\n\n @include mixins.max(rg) {\n grid-template-columns: 1fr;\n }\n}\n\n.flyout-column {\n flex: 1;\n max-width: 25%;\n\n @include mixins.max(lg) {\n max-width: none;\n }\n\n h3 {\n @extend %font-curve-small;\n margin-top: 0;\n }\n}\n\n.flyout-back-button {\n @include mixins.container-padding();\n\n display: flex;\n align-items: center;\n font-size: functions.px-to-rem(16px);\n font-weight: 400;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n\n.flyout-close-button {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n margin-left: auto;\n padding: 0 1.5rem;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.max(lg) {\n display: none;\n }\n}\n\n.flyout-linklist {\n @extend %no-list;\n\n li {\n border-top: 1px solid color.$gray-10;\n }\n\n &:first-child > li {\n border-top-color: transparent;\n }\n}\n\n.flyout-link {\n @extend %nav-link;\n\n display: block;\n padding: 0.75rem 0;\n}\n\n.flyout-title {\n @extend %font-curve-bigger-regular;\n\n margin: 2.5rem 0 1.5rem 0;\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Method, State } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { state } from '../../data/store';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n IsFocusable,\n NavMainEntity,\n} from '../../models/header.model';\nimport { userPrefersReducedMotion } from '../../services/ui.service';\nimport { translate } from '../../services/language.service';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { LevelOneAction } from './components/level-one-action.component';\n\n@Component({\n tag: 'post-main-navigation',\n styleUrl: 'post-main-navigation.scss',\n shadow: true,\n})\nexport class PostMainNavigation implements HasDropdown, IsFocusable {\n @State() activeFlyout: string | null;\n @State() mobileMenuOpen: boolean;\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\n @Event() flyoutToggled: EventEmitter<string | null>;\n @Element() host: DropdownElement;\n private throttledResize: throttle<() => void>;\n private resizeTimer: number | null = null;\n private mouseLeaveTimer: number | null = null;\n private mouseEnterTimer: number | null = null;\n\n connectedCallback() {\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n this.setWindowHeight();\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n if (this.mouseEnterTimer !== null) window.clearTimeout(this.mouseEnterTimer);\n if (this.mouseLeaveTimer !== null) window.clearTimeout(this.mouseLeaveTimer);\n }\n\n handleResize() {\n // Suspend all animations and transitions on window resize\n this.host.classList.add('no-animation');\n if (this.resizeTimer !== null) window.clearTimeout(this.resizeTimer);\n this.resizeTimer = window.setTimeout(() => {\n this.host.classList.remove('no-animation');\n }, 300);\n\n this.setWindowHeight();\n }\n\n // Update window height var\n setWindowHeight() {\n if (!this.host) {\n return;\n }\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n\n // Safari might or might not show a blank bar at the bottom where the browser\n // controls should be. This timeout waits for this bar to appear before resetting the available height\n window.setTimeout(() => {\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n }, 100);\n }\n\n openFlyout(id: string) {\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout && this.activeFlyout !== '') {\n // Add flyout animation if there's no flyout open\n this.addFlyoutAnimation(flyout, 'expand');\n }\n\n this.activeFlyout = id;\n this.flyoutToggled.emit(id);\n this.setWindowHeight();\n\n if (this.mouseLeaveTimer !== null) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n }\n\n closeFlyout(id?: string, manageFocus = true) {\n if (id === undefined) return;\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout) {\n // Add flyout animation for close action\n this.addFlyoutAnimation(flyout, 'collapse', manageFocus);\n }\n\n this.activeFlyout = null;\n this.flyoutToggled.emit();\n }\n\n addFlyoutAnimation(flyout: HTMLElement, direction?: 'expand' | 'collapse', manageFocus = true) {\n // Check if user prefers to see animations or not\n if (!userPrefersReducedMotion()) {\n flyout.classList.add('animate');\n\n // Remove flyout animation after transition ended\n flyout.addEventListener(\n 'transitionend',\n () => {\n if (manageFocus) {\n if (direction === 'expand') {\n flyout.querySelector<HTMLElement>('button.flyout-back-button')?.focus();\n } else if (direction === 'collapse') {\n flyout.parentElement?.querySelector<HTMLElement>('a.main-link')?.focus();\n }\n }\n\n flyout.classList.remove('animate');\n },\n {\n once: true,\n },\n );\n }\n }\n\n isActiveFlyout(id?: string) {\n return id === this.activeFlyout;\n }\n\n handleMouseEnter(level: NavMainEntity) {\n // Cancel opening the flyout if there already is one scheduled to open\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n this.mouseEnterTimer = null;\n }\n\n // Cancel closing if we enter again\n if (this.mouseLeaveTimer && this.activeFlyout === level.id) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0 && this.activeFlyout !== level.id) {\n // Delay opening the flyout for a moment to give users a chance to move the mouse over the navigation without triggering the flyout\n this.mouseEnterTimer = window.setTimeout(() => {\n this.mouseEnterTimer = null;\n if (level.id !== undefined) this.openFlyout(level.id);\n }, 200);\n }\n }\n\n handleMouseLeave(level: NavMainEntity) {\n // Cancel opening the flyout if a mouseleave event happens before the flyout opened\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n }\n\n // Don't close an open flyout if the mouseleave is from another mainnav entry\n if (this.activeFlyout && this.activeFlyout !== level.id) {\n return;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0) {\n // Allow the pointer to shortly leave the flyout without closing it. This\n // allows for user mistakes and makes the experience less nervous\n this.mouseLeaveTimer = window.setTimeout(() => {\n this.closeFlyout(level.id, false);\n }, 300);\n }\n }\n\n handleTouchEnd(event: TouchEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first touchstart and has a flyout, prevent link activation and open the flyout\n if (event.cancelable) event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleKeyPress(event: KeyboardEvent, level: NavMainEntity) {\n if (event.key === 'Enter' && !this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first enter keypress and has a flyout, prevent link activation and open the flyout\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleClick(event: MouseEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first click, always open the flyout, never the link\n // This is relevant for desktop with active screenreader which\n // translates an enter keypress to a click\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n /**\n * Toggle the main navigation (only visible on mobile)\n * @param force Force a state\n * @returns Boolean indicating new state\n */\n @Method()\n async toggleDropdown(force?: boolean) {\n this.mobileMenuOpen = force === undefined ? !this.mobileMenuOpen : force;\n this.dropdownToggled.emit({ open: this.mobileMenuOpen, element: this.host });\n\n if (force === false) {\n this.closeFlyout();\n }\n\n this.setWindowHeight();\n\n return this.mobileMenuOpen;\n }\n\n /**\n * Focus the main navigation toggle button\n */\n @Method()\n async setFocus() {\n const firstLink = this.host.shadowRoot?.querySelector<HTMLElement>('.main-link');\n if (firstLink) {\n firstLink.focus();\n }\n }\n\n /**\n * Open a specific flyout\n * @param id Flyout ID\n */\n @Method()\n async setActiveFlyout(id: string | null) {\n this.activeFlyout = id;\n this.flyoutToggled.emit(this.activeFlyout);\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) return;\n const headerConfig = state.localizedConfig.header;\n\n return (\n <Host>\n <SvgSprite />\n <nav\n aria-label={headerConfig.translations.navMainAriaLabel}\n id=\"post-internet-header-main-navigation\"\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\n role=\"menu\"\n >\n <ul class=\"main-container container\">\n {headerConfig.navMain.map(levelOne => (\n <li\n key={levelOne.text}\n onMouseLeave={() => this.handleMouseLeave(levelOne)}\n onMouseEnter={() => this.handleMouseEnter(levelOne)}\n >\n <LevelOneAction\n level={levelOne}\n isOpen={this.isActiveFlyout(levelOne.id)}\n onTouchEnd={e => this.handleTouchEnd(e, levelOne)}\n onKeyDown={e => this.handleKeyPress(e, levelOne)}\n onClick={e => this.handleClick(e, levelOne)}\n />\n {!levelOne.noFlyout ? renderLevelOneFlyout.bind(this)(levelOne) : null}\n </li>\n ))}\n </ul>\n <slot></slot>\n </nav>\n </Host>\n );\n\n function renderLevelOneFlyout(levelOne: NavMainEntity) {\n return (\n <div id={levelOne.id} class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}>\n <div class=\"wide-container\">\n <div class=\"flyout-nav\">\n <button\n class=\"nav-link flyout-back-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <SvgIcon name=\"pi-pointy-arrow-right\" classNames=\"mirrored\" />\n <span>{headerConfig.translations.backButtonText}</span>\n </button>\n <button class=\"flyout-close-button\" onClick={() => this.closeFlyout(levelOne.id)}>\n <span class=\"visually-hidden\">\n {levelOne.text}, {headerConfig.translations.mobileNavToggleClose}\n </span>\n <SvgIcon name=\"pi-close\" />\n </button>\n </div>\n <h2 class=\"flyout-title container\">\n <a href={levelOne.url} class=\"nav-link\">\n {levelOne.text}\n </a>\n </h2>\n <div class=\"flyout-row container\">\n {levelOne.flyout.map((flyout, i) => (\n <div key={flyout.title} class=\"flyout-column\">\n {flyout.title ? <h3 id={`${levelOne.id}-column-${i}`}>{flyout.title}</h3> : null}\n <ul\n class=\"flyout-linklist\"\n aria-labelledby={flyout.title ? `${levelOne.id}-column-${i}` : undefined}\n >\n {flyout.linkList.map(link => (\n <li key={link.url}>\n <a\n class={{\n 'flyout-link': true,\n 'active': !!link?.isActiveOverride,\n }}\n href={link.url}\n target={link.target}\n >\n {link.title}\n {link?.isActiveOverride ? (\n <span class=\"visually-hidden\">\n , {translate('Active navigation element')}\n </span>\n ) : null}\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </div>\n </div>\n );\n }\n }\n}\n"],"mappings":"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"}
|