@swisspost/internet-header 1.5.0 → 1.5.1

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.
Files changed (25) hide show
  1. package/dist/cjs/post-main-navigation.cjs.entry.js +1 -1
  2. package/dist/cjs/post-main-navigation.cjs.entry.js.map +1 -1
  3. package/dist/cjs/swisspost-internet-header.cjs.entry.js +1 -1
  4. package/dist/collection/components/post-main-navigation/post-main-navigation.css +1 -1
  5. package/dist/components/post-main-navigation2.js +1 -1
  6. package/dist/components/post-main-navigation2.js.map +1 -1
  7. package/dist/components/swisspost-internet-header.js +1 -1
  8. package/dist/esm/post-main-navigation.entry.js +1 -1
  9. package/dist/esm/post-main-navigation.entry.js.map +1 -1
  10. package/dist/esm/swisspost-internet-header.entry.js +1 -1
  11. package/dist/esm-es5/post-main-navigation.entry.js +1 -1
  12. package/dist/esm-es5/post-main-navigation.entry.js.map +1 -1
  13. package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
  14. package/dist/swisspost-internet-header/p-17a47667.system.js +1 -1
  15. package/dist/swisspost-internet-header/{p-b228fe49.system.entry.js → p-3df823de.system.entry.js} +2 -2
  16. package/dist/swisspost-internet-header/{p-b228fe49.system.entry.js.map → p-3df823de.system.entry.js.map} +0 -0
  17. package/dist/swisspost-internet-header/{p-7ea26ee9.entry.js → p-7709ed5c.entry.js} +2 -2
  18. package/dist/swisspost-internet-header/{p-7ea26ee9.entry.js.map → p-7709ed5c.entry.js.map} +0 -0
  19. package/dist/swisspost-internet-header/{p-95b81c4d.entry.js → p-d33734b5.entry.js} +2 -2
  20. package/dist/swisspost-internet-header/{p-95b81c4d.entry.js.map → p-d33734b5.entry.js.map} +1 -1
  21. package/dist/swisspost-internet-header/{p-d6539597.system.entry.js → p-db87f3e3.system.entry.js} +2 -2
  22. package/dist/swisspost-internet-header/{p-d6539597.system.entry.js.map → p-db87f3e3.system.entry.js.map} +1 -1
  23. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
  24. package/package.json +1 -1
  25. package/readme.md +1 -1
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,n,i){function o(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i["throw"](e))}catch(e){r(e)}}function l(e){e.done?n(e.value):o(e.value).then(a,s)}l((i=i.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},i,o,r,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(e){return function(t){return l([e,t])}}function l(s){if(i)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(n=0)),n)try{if(i=1,o&&(r=s[0]&2?o["return"]:s[0]?o["throw"]||((r=o["return"])&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;if(o=0,r)s=[s[0]&2,r.value];switch(s[0]){case 0:case 1:r=s;break;case 4:n.label++;return{value:s[1],done:false};case 5:n.label++;o=s[1];s=[0];continue;case 7:s=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!r||s[1]>r[0]&&s[1]<r[3])){n.label=s[1];break}if(s[0]===6&&n.label<r[1]){n.label=r[1];r=s;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(s);break}if(r[2])n.ops.pop();n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e];o=0}finally{i=r=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,t,n){if(n||arguments.length===2)for(var i=0,o=t.length,r;i<o;i++){if(r||!(i in t)){if(!r)r=Array.prototype.slice.call(t,0,i);r[i]=t[i]}}return e.concat(r||Array.prototype.slice.call(t))};System.register(["./p-1b8f9bc8.system.js","./p-c8296f63.system.js","./p-3753a678.system.js","./p-0c5624c0.system.js","./p-7fcba2e7.system.js","./p-ffc59851.system.js","./p-ee119d2e.system.js","./p-edb2802d.system.js"],(function(e){"use strict";var t,n,i,o,r,a,s,l,d,u,c,h,f,g,p;return{setters:[function(e){t=e.r;n=e.c;i=e.h;o=e.H;r=e.g},function(e){a=e.t;s=e.d},function(e){l=e.g;d=e.p},function(e){u=e.u},function(e){c=e.s;h=e.d},function(e){f=e.S},function(e){g=e.S},function(e){p=e.I}],execute:function(){var v=this;var m=function(e,t){if(t===false){return e}var n;e=b(e);if(t==="auto"||t==="exact"){if(y(e)){return w(e)}n=new URL(window.location.href)}else{try{n=new URL(t,document.location.origin)}catch(n){console.warn("Active Route: ".concat(t," is not a valid URL. Navigation highlighting has been disabled."));return e}}var i=x(e,n,t);if(i.length===0){return e}var o=i[0];o.main.isActiveOverride=true;if(o.sub)o.sub.isActiveOverride=true;return e};var y=function(e){return e.filter((function(e){return e.isActive})).length>0};var w=function(e){return e.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:e.isActive,flyout:e.flyout.map((function(e){return Object.assign(Object.assign({},e),{linkList:e.linkList.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:e.isActive})}))})}))})}))};var b=function(e){return e.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:false,flyout:e.flyout.map((function(e){return Object.assign(Object.assign({},e),{linkList:e.linkList.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:false})}))})}))})}))};var x=function(e,t,n){var i=false;var o=[];e.forEach((function(e){if(i||!e){return}try{var r=k(t,new URL(e.url),n);if(r>0){if(r===Infinity)i=true;o.push({main:e,score:r})}}catch(e){}if(e.flyout.length){e.flyout.forEach((function(r){if(r.linkList){r.linkList.forEach((function(r){if(r.isActive&&(n==="auto"||n==="exact")){i=true;return}try{var a=new URL(r.url);var s=k(t,a,n);if(s>0){if(s===Infinity)i=true;o.push({main:e,sub:r,score:s})}}catch(e){}}))}}))}}));return o.sort((function(e,t){return t.score-e.score}))};var k=function(e,t,n){if(!e||!t||e.origin!==t.origin){return 0}if(e.pathname===t.pathname){return Infinity}if(e.pathname.length<t.pathname.length){return 0}if(n==="auto"){var i=__spreadArray([e.origin],e.pathname.split("/").filter((function(e){return!!e})),true);var o=__spreadArray([t.origin],t.pathname.split("/").filter((function(e){return!!e})),true);var r=C(i,o);return Math.min(i.length,o.length)===r?r:0}return 0};var C=function(e,t){if(!(e===null||e===void 0?void 0:e.length)||!(t===null||t===void 0?void 0:t.length)){return 0}var n=0;for(;n<Math.min(e.length,t.length);n++){if(e[n]!==t[n]){return 0}}return n};var O=null;var j=null;var _=function(e){var t=e.projectId,n=e.environment,i=e.language,o=e.cookieKey,r=e.localStorageKey,a=e.activeRouteProp,s=e.localizedCustomConfig,u=e.osFlyoutOverrides;return __awaiter(v,void 0,void 0,(function(){var e,c,h,f,g,p;return __generator(this,(function(v){switch(v.label){case 0:if(!O){O=S(t,n)}return[4,O];case 1:h=v.sent();f=l(Object.keys(h),i,r,o);if(f===undefined){throw new Error("Internet Header: unable to determine current language")}g=Object.assign({},h[f]);if(s){p=((e=s===null||s===void 0?void 0:s.header)===null||e===void 0?void 0:e.navMain)?Object.assign(Object.assign({},g.header),{navMain:__spreadArray(__spreadArray([],g.header.navMain,true),s.header.navMain,true)}):g.header;g=Object.assign(Object.assign({},g),{header:p})}if(u)g.header.navMain=L(g,u);if(a)g.header.navMain=m(g.header.navMain,a);D((c=g===null||g===void 0?void 0:g.header)===null||c===void 0?void 0:c.navMain);d(f,o,r);return[2,g]}}))}))};var L=function(e,t){if(!t)return e.header.navMain;return e.header.navMain.map((function(e){var n,i;if(e.id!=="flyout_os")return e;if(j===null){j=JSON.parse(JSON.stringify(e))}var o=(n=t.text)!==null&&n!==void 0?n:j.text;var r=(i=t.title)!==null&&i!==void 0?i:j.title;if(!j.flyout||j.flyout.length===0||!t.flyout||t.flyout.length===0)return Object.assign(Object.assign({},e),{title:r,text:o});var a=__spreadArray(__spreadArray([],j.flyout.map((function(e,n){var i;var o=t.flyout[n];var r=(i=o.title)!==null&&i!==void 0?i:e.title;var a=o.linkList?t.flyout[n].linkList:[];return{title:r,linkList:__spreadArray(__spreadArray([],e.linkList,true),a,true)}})),true),t.flyout.slice(j.flyout.length),true);return Object.assign(Object.assign({},e),{text:o,title:r,flyout:a})}))};var S=function(e,t){return __awaiter(v,void 0,void 0,(function(){var n,i,o;return __generator(this,(function(r){switch(r.label){case 0:if(!E(e)){throw new Error('Internet Header: invalid project id "'.concat(e,'"'))}if(e==="test"){t="int01"}n=F(e,t);r.label=1;case 1:r.trys.push([1,4,,5]);return[4,fetch(n)];case 2:i=r.sent();return[4,i.json()];case 3:return[2,r.sent()];case 4:o=r.sent();throw new Error("Internet Header: fetching config failed. ".concat(o.message));case 5:return[2]}}))}))};var F=function(e,t){if(e==="test")return"assets/config/test-configuration.json";var n=t.startsWith("int");var i="https://".concat(n?"int":"www",".post.ch");try{return new URL("".concat(i,"/api/headerjs/Json?serviceid=").concat(encodeURIComponent(e)).concat(n?"&environment="+t:"")).toString()}catch(e){throw new Error("Internet Header: Config URL is invalid.")}};var E=function(e){return e!==""&&e.length>0&&/^[a-zA-Z][\w-]*[a-zA-Z0-9]$/.test(e)};var z=function(e,t){var n;try{n=typeof e==="string"?JSON.parse(e):e}catch(e){throw new Error("Internet Header: Custom config is invalid. Make sure your custom config contains valid JSON syntax and matches the definition. ")}var i=n[t];if(i!==undefined)D(i.header.navMain);return i};var D=function(e){e.forEach((function(e){e.id=e.id==="flyout_os"?e.id:u("main-nav-")}))};var A="@swisspost/internet-header";var N="1.5.0";var R="Swiss Post Internet Header";var K="Apache-2.0";var M="loader/index.cjs.js";var P="loader/index.js";var I="loader/index.es2017.js";var W="loader/index.es2017.js";var T="loader/index.d.ts";var H="dist/collection/collection-manifest.json";var U="loader/cdn.js";var J={access:"public"};var B=["dist/","loader/"];var q={build:"npm run stencil:build",clean:"rimraf www dist loader storybook-static",start:"npm run stencil:serve",test:"jest",lint:"eslint src/**/*{.ts,.tsx}","lint:fix":"eslint src/**/*{.ts,.tsx} --fix","stencil:start":"stencil build --docs --watch","stencil:build":"stencil build --docs","stencil:serve":"stencil build --watch --serve --docs",generate:"stencil generate",jest:"jest","jest:watch":"jest --watch"};var G={"@sindresorhus/slugify":"2.2.0","@stencil/core":"3.0.0","@stencil/store":"2.0.3","body-scroll-lock":"4.0.0-beta.0","iframe-resizer":"4.3.2",jquery:"3.6.3",tabbable:"6.0.1","throttle-debounce":"3.0.1","url-polyfill":"1.1.12"};var X={"@babel/core":"7.20.12","@stencil/eslint-plugin":"0.4.0","@stencil/sass":"2.0.3","@swisspost/design-system-styles":"5.3.0","@types/iframe-resizer":"3.5.9","@types/jest":"27.5.2","@types/jquery":"3.5.16","@types/node":"18.11.18","@types/throttle-debounce":"2.1.0","babel-loader":"9.1.2",bootstrap:"5.1","eslint-plugin-react":"^7.32.0",globby:"13.1.3",jest:"27.5.1",rimraf:"3.0.2","rollup-plugin-node-polyfills":"0.2.1","rollup-plugin-scss":"4.0.0","rollup-plugin-visualizer":"5.9.0",sass:"1.57.1","start-server-and-test":"1.15.3","ts-jest":"27.1.5",typescript:"4.8.4"};var Y={name:A,version:N,description:R,license:K,main:M,module:P,es2015:I,es2017:W,"jsnext:main":"loader/index.es2017.js",types:T,collection:H,"collection:main":"dist/collection/index.js",unpkg:U,publishConfig:J,files:B,scripts:q,dependencies:G,devDependencies:X};var Z='@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.nav-link:hover,.nav-link:focus{color:black}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{display:block;position:relative;font-size:1rem;font-weight:300;z-index:var(--header-z-index, 10);--header-height:3.5rem;--meta-header-height:0px;--language-dropdown-margin-top:0px}@media (min-width: 1024px){:host{--meta-header-height:3rem;--header-height:4rem}}@media (min-width: 1280px){:host{--header-height:4.5rem}}:host([meta=false]){--meta-header-height:0px;--language-dropdown-margin-top:1px}@supports ((position: -webkit-sticky) or (position: sticky)){:host(:not(.stickyness-none)){position:-webkit-sticky;position:sticky}:host(.stickyness-full){top:0}:host(.stickyness-main){top:calc(var(--meta-header-height, 0px) * -1)}:host(.stickyness-minimal){top:calc((var(--header-height, 0px) + var(--meta-header-height, 0px)) * -1);-webkit-transition:top 200ms ease-in;transition:top 200ms ease-in}:host(.stickyness-minimal.scrolling-up),:host(.stickyness-minimal.dropdown-open){top:calc(var(--meta-header-height, 0px) * -1);-webkit-transition:top 200ms ease-out;transition:top 200ms ease-out}}.post-internet-header{border-bottom:1px solid #e6e6e6;background-color:white}.main-navigation-container{display:-ms-flexbox;display:flex}.main-navigation-container>.main-navigation-controls{-ms-flex:0 0 auto;flex:0 0 auto}.main-navigation{display:-ms-flexbox;display:flex}.sub-navigation-container{position:absolute;top:100%;left:0;width:100%;display:-ms-flexbox;display:flex;background:white;visibility:hidden}.main-navigation-item:hover .sub-navigation-container{visibility:visible}.main-navigation-controls{display:-ms-flexbox;display:flex;margin-left:auto}@media (max-width: 1023.98px){.main-navigation-controls{font-weight:400}}@media (min-width: 1024px){.main-navigation-controls{font-size:1.0625rem}}.main-navigation-controls>*{border-left:1px solid #e6e6e6}.menu-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 calc(1rem - 1px);font-weight:300;cursor:pointer;border-left:1px solid #e6e6e6;-ms-flex-order:1;order:1;}@media (min-width: 1024px){.menu-button{display:none}}@media (min-width: 600px) and (max-width: 1023.98px){.menu-button .visually-hidden{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible;margin-right:0.5rem}}.menu-button svg{width:1.5rem;height:1.5rem}.full-width .wide-container{max-width:none}';var V=e("swisspost_internet_header",function(){function e(e){t(this,e);this.headerLoaded=n(this,"headerLoaded",7);this.lastScrollTop=window.scrollY||document.documentElement.scrollTop;this.lastWindowWidth=window.innerWidth;this.handleClickOutsideBound=this.handleClickOutside.bind(this);this.project=undefined;this.stickyness="minimal";this.language=undefined;this.meta=true;this.login=true;this.search=true;this.skiplinks=true;this.configProxy=undefined;this.environment="prod";this.languageSwitchOverrides=undefined;this.customConfig=undefined;this.languageCookieKey=undefined;this.languageLocalStorageKey="swisspost-internet-header-language";this.activeRoute="auto";this.osFlyoutOverrides=undefined;this.fullWidth=false;this.activeFlyout=null;this.activeDropdownElement=null;if(this.project===undefined||this.project===""||!E(this.project)){throw new Error('Internet Header project key is "'.concat(this.project,'". Please provide a valid project key.'))}}e.prototype.getCurrentLanguage=function(){return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(t){return[2,(e=c.currentLanguage)!==null&&e!==void 0?e:"de"]}))}))};e.prototype.connectedCallback=function(){var e=this;this.throttledScroll=a(300,(function(){return e.handleScrollEvent()}));this.debouncedResize=s(200,(function(){return e.handleResize()}));window.addEventListener("scroll",this.throttledScroll,{passive:true});window.addEventListener("resize",this.debouncedResize,{passive:true})};e.prototype.disconnectedCallback=function(){window.removeEventListener("scroll",this.throttledScroll);window.removeEventListener("resize",this.debouncedResize);h()};e.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){var e,t;return __generator(this,(function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);c.projectId=this.project;c.environment=this.environment;if(this.language!==undefined)c.currentLanguage=this.language;c.languageSwitchOverrides=typeof this.languageSwitchOverrides==="string"?JSON.parse(this.languageSwitchOverrides):this.languageSwitchOverrides;c.osFlyoutOverrides=typeof this.osFlyoutOverrides==="string"?JSON.parse(this.osFlyoutOverrides):this.osFlyoutOverrides;if(this.customConfig!==undefined&&c.currentLanguage!==null){c.localizedCustomConfig=z(this.customConfig,c.currentLanguage)}e=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:e.localizedConfig=n.sent();return[3,3];case 2:t=n.sent();console.error(t);return[3,3];case 3:return[2]}}))}))};e.prototype.componentDidLoad=function(){var e=this;window.requestAnimationFrame((function(){e.handleResize();e.headerLoaded.emit();e.host.classList.add("header-loaded")}))};e.prototype.handleLanguageChange=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(n){switch(n.label){case 0:c.currentLanguage=e;t=c;return[4,_({projectId:this.project,environment:this.environment,language:e,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:t.localizedConfig=n.sent();if(this.customConfig)c.localizedCustomConfig=z(this.customConfig,e);return[2]}}))}))};e.prototype.handleAvailableLanguagesChage=function(e){c.languageSwitchOverrides=typeof e==="string"?JSON.parse(e):e};e.prototype.handleOsFlyoutOverrides=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(n){switch(n.label){case 0:c.osFlyoutOverrides=typeof e==="string"?JSON.parse(e):e;t=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:t.localizedConfig=n.sent();return[2]}}))}))};e.prototype.handleActiveRouteChange=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(n){switch(n.label){case 0:t=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:e,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:t.localizedConfig=n.sent();return[2]}}))}))};e.prototype.handleCustomConfigChange=function(e){return __awaiter(this,void 0,void 0,(function(){var t,n;return __generator(this,(function(i){switch(i.label){case 0:if(this.language===undefined)return[2];t=z(e,this.language);c.localizedCustomConfig=t;n=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:t,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:n.localizedConfig=i.sent();return[2]}}))}))};e.prototype.handleSearchChange=function(e){c.search=e};e.prototype.handleLoginChange=function(e){c.login=e};e.prototype.handleMetaChange=function(e){c.meta=e};e.prototype.handleLanguageChangeEvent=function(e){this.handleLanguageChange(e.detail)};e.prototype.handleClickOutside=function(e){if(this.activeDropdownElement&&!e.composedPath().includes(this.activeDropdownElement)){this.activeDropdownElement.toggleDropdown(false)}};e.prototype.handleKeyUp=function(e){if(e.key==="Escape"){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.toggleDropdown(false)}}};e.prototype.handleScrollEvent=function(){var e=window.scrollY||document.documentElement.scrollTop;if(this.stickyness==="minimal"){this.host.classList.toggle("scrolling-up",e<=this.lastScrollTop)}this.lastScrollTop=e<=0?0:e};e.prototype.handleResize=function(){var e;if(this.isMainNavOpen()&&this.lastWindowWidth<1024&&window.innerWidth>=1024){(e=this.activeDropdownElement)===null||e===void 0?void 0:e.toggleDropdown(false)}this.lastWindowWidth=window.innerWidth};e.prototype.handleDropdownToggled=function(e){var t=this;if(!e.detail.open&&this.activeDropdownElement!==e.detail.element){return}if(e.detail.open===true){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}this.activeDropdownElement=e.detail.element;if(window.innerWidth>=1024){window.setTimeout((function(){window.addEventListener("click",t.handleClickOutsideBound)}),10)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.setActiveFlyout(null)}}else{this.activeDropdownElement=null;window.removeEventListener("click",this.handleClickOutsideBound)}};e.prototype.handleFlyoutToggled=function(e){this.activeFlyout=e.detail;if(this.activeDropdownElement&&e.detail&&!this.isMainNavOpen()){this.activeDropdownElement.toggleDropdown(false)}};e.prototype.toggleMobileDropdown=function(){var e;(e=this.mainNav)===null||e===void 0?void 0:e.toggleDropdown()};e.prototype.isMainNavOpen=function(){return this.activeDropdownElement&&this.activeDropdownElement.tagName==="POST-MAIN-NAVIGATION"};e.prototype.render=function(){var e=this;var t,n,r;if(!((t=c.localizedConfig)===null||t===void 0?void 0:t.header)){console.error(new Error("Internet Header: Config cannot be loaded"));return}var a=c.localizedConfig;var s=this.meta&&a.header.navMeta!==undefined&&((n=a.header.navMeta)===null||n===void 0?void 0:n.filter((function(e){return!e.isHomeLink})).length)>0;var l=((r=this.login)!==null&&r!==void 0?r:!a.header.isLoginWidgetHidden)&&a.header.loginWidgetOptions;var d=a.header.navLang.length>1;return i(o,{class:"stickyness-".concat(this.stickyness," ").concat(this.activeDropdownElement||this.activeFlyout?"dropdown-open":""),"data-version":Y.version,onKeyup:function(t){return e.handleKeyUp(t)}},i("header",{class:"post-internet-header".concat(this.fullWidth?" full-width":"")},i(f,null),i(p,{condition:this.skiplinks===true},i("post-skiplinks",null)),i(p,{condition:s===true},i("post-meta-navigation",{orientation:"horizontal",class:"hidden-lg","full-width":this.fullWidth},i(p,{condition:d===true},i("post-language-switch",{id:"post-language-switch-desktop",mode:"dropdown",onDropdownToggled:function(t){return e.handleDropdownToggled(t)}})))),i("div",{class:"main-navigation-container wide-container"},i("post-logo",null),i("button",{class:"menu-button nav-link",onClick:function(){return e.toggleMobileDropdown()}},i("span",{class:"menu-button-text visually-hidden"},a.header.mobileMenu.text),i(g,{name:this.isMainNavOpen()?"pi-close":"pi-menu"})),i("post-main-navigation",{onDropdownToggled:function(t){return e.handleDropdownToggled(t)},onFlyoutToggled:function(t){return e.handleFlyoutToggled(t)},ref:function(t){return e.mainNav=t}},i(p,{condition:s===true},i("post-meta-navigation",{orientation:"vertical"},i(p,{condition:d===true},i("post-language-switch",{id:"post-language-switch-mobile",mode:"list"}))))),i("div",{class:"main-navigation-controls"},i(p,{condition:this.search!==false},i("post-search",{onDropdownToggled:function(t){return e.handleDropdownToggled(t)}})),i(p,{condition:!!l},i("post-klp-login-widget",null,i("slot",{name:"login-widget"}))),i(p,{condition:s===false&&d===true},i("post-language-switch",{id:"post-language-switch-no-meta",onDropdownToggled:function(t){return e.handleDropdownToggled(t)},mode:"dropdown"})),i("slot",{name:"main"})))))};Object.defineProperty(e.prototype,"host",{get:function(){return r(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{language:["handleLanguageChange"],languageSwitchOverrides:["handleAvailableLanguagesChage"],osFlyoutOverrides:["handleOsFlyoutOverrides"],activeRoute:["handleActiveRouteChange"],customConfig:["handleCustomConfigChange"],search:["handleSearchChange"],login:["handleLoginChange"],meta:["handleMetaChange"]}},enumerable:false,configurable:true});return e}());V.style=Z}}}));
2
- //# sourceMappingURL=p-b228fe49.system.entry.js.map
1
+ var __awaiter=this&&this.__awaiter||function(e,t,n,i){function o(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,r){function a(e){try{l(i.next(e))}catch(e){r(e)}}function s(e){try{l(i["throw"](e))}catch(e){r(e)}}function l(e){e.done?n(e.value):o(e.value).then(a,s)}l((i=i.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},i,o,r,a;return a={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function s(e){return function(t){return l([e,t])}}function l(s){if(i)throw new TypeError("Generator is already executing.");while(a&&(a=0,s[0]&&(n=0)),n)try{if(i=1,o&&(r=s[0]&2?o["return"]:s[0]?o["throw"]||((r=o["return"])&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;if(o=0,r)s=[s[0]&2,r.value];switch(s[0]){case 0:case 1:r=s;break;case 4:n.label++;return{value:s[1],done:false};case 5:n.label++;o=s[1];s=[0];continue;case 7:s=n.ops.pop();n.trys.pop();continue;default:if(!(r=n.trys,r=r.length>0&&r[r.length-1])&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!r||s[1]>r[0]&&s[1]<r[3])){n.label=s[1];break}if(s[0]===6&&n.label<r[1]){n.label=r[1];r=s;break}if(r&&n.label<r[2]){n.label=r[2];n.ops.push(s);break}if(r[2])n.ops.pop();n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e];o=0}finally{i=r=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,t,n){if(n||arguments.length===2)for(var i=0,o=t.length,r;i<o;i++){if(r||!(i in t)){if(!r)r=Array.prototype.slice.call(t,0,i);r[i]=t[i]}}return e.concat(r||Array.prototype.slice.call(t))};System.register(["./p-1b8f9bc8.system.js","./p-c8296f63.system.js","./p-3753a678.system.js","./p-0c5624c0.system.js","./p-7fcba2e7.system.js","./p-ffc59851.system.js","./p-ee119d2e.system.js","./p-edb2802d.system.js"],(function(e){"use strict";var t,n,i,o,r,a,s,l,d,u,c,h,f,g,p;return{setters:[function(e){t=e.r;n=e.c;i=e.h;o=e.H;r=e.g},function(e){a=e.t;s=e.d},function(e){l=e.g;d=e.p},function(e){u=e.u},function(e){c=e.s;h=e.d},function(e){f=e.S},function(e){g=e.S},function(e){p=e.I}],execute:function(){var v=this;var m=function(e,t){if(t===false){return e}var n;e=b(e);if(t==="auto"||t==="exact"){if(y(e)){return w(e)}n=new URL(window.location.href)}else{try{n=new URL(t,document.location.origin)}catch(n){console.warn("Active Route: ".concat(t," is not a valid URL. Navigation highlighting has been disabled."));return e}}var i=x(e,n,t);if(i.length===0){return e}var o=i[0];o.main.isActiveOverride=true;if(o.sub)o.sub.isActiveOverride=true;return e};var y=function(e){return e.filter((function(e){return e.isActive})).length>0};var w=function(e){return e.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:e.isActive,flyout:e.flyout.map((function(e){return Object.assign(Object.assign({},e),{linkList:e.linkList.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:e.isActive})}))})}))})}))};var b=function(e){return e.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:false,flyout:e.flyout.map((function(e){return Object.assign(Object.assign({},e),{linkList:e.linkList.map((function(e){return Object.assign(Object.assign({},e),{isActiveOverride:false})}))})}))})}))};var x=function(e,t,n){var i=false;var o=[];e.forEach((function(e){if(i||!e){return}try{var r=k(t,new URL(e.url),n);if(r>0){if(r===Infinity)i=true;o.push({main:e,score:r})}}catch(e){}if(e.flyout.length){e.flyout.forEach((function(r){if(r.linkList){r.linkList.forEach((function(r){if(r.isActive&&(n==="auto"||n==="exact")){i=true;return}try{var a=new URL(r.url);var s=k(t,a,n);if(s>0){if(s===Infinity)i=true;o.push({main:e,sub:r,score:s})}}catch(e){}}))}}))}}));return o.sort((function(e,t){return t.score-e.score}))};var k=function(e,t,n){if(!e||!t||e.origin!==t.origin){return 0}if(e.pathname===t.pathname){return Infinity}if(e.pathname.length<t.pathname.length){return 0}if(n==="auto"){var i=__spreadArray([e.origin],e.pathname.split("/").filter((function(e){return!!e})),true);var o=__spreadArray([t.origin],t.pathname.split("/").filter((function(e){return!!e})),true);var r=C(i,o);return Math.min(i.length,o.length)===r?r:0}return 0};var C=function(e,t){if(!(e===null||e===void 0?void 0:e.length)||!(t===null||t===void 0?void 0:t.length)){return 0}var n=0;for(;n<Math.min(e.length,t.length);n++){if(e[n]!==t[n]){return 0}}return n};var O=null;var j=null;var _=function(e){var t=e.projectId,n=e.environment,i=e.language,o=e.cookieKey,r=e.localStorageKey,a=e.activeRouteProp,s=e.localizedCustomConfig,u=e.osFlyoutOverrides;return __awaiter(v,void 0,void 0,(function(){var e,c,h,f,g,p;return __generator(this,(function(v){switch(v.label){case 0:if(!O){O=S(t,n)}return[4,O];case 1:h=v.sent();f=l(Object.keys(h),i,r,o);if(f===undefined){throw new Error("Internet Header: unable to determine current language")}g=Object.assign({},h[f]);if(s){p=((e=s===null||s===void 0?void 0:s.header)===null||e===void 0?void 0:e.navMain)?Object.assign(Object.assign({},g.header),{navMain:__spreadArray(__spreadArray([],g.header.navMain,true),s.header.navMain,true)}):g.header;g=Object.assign(Object.assign({},g),{header:p})}if(u)g.header.navMain=L(g,u);if(a)g.header.navMain=m(g.header.navMain,a);D((c=g===null||g===void 0?void 0:g.header)===null||c===void 0?void 0:c.navMain);d(f,o,r);return[2,g]}}))}))};var L=function(e,t){if(!t)return e.header.navMain;return e.header.navMain.map((function(e){var n,i;if(e.id!=="flyout_os")return e;if(j===null){j=JSON.parse(JSON.stringify(e))}var o=(n=t.text)!==null&&n!==void 0?n:j.text;var r=(i=t.title)!==null&&i!==void 0?i:j.title;if(!j.flyout||j.flyout.length===0||!t.flyout||t.flyout.length===0)return Object.assign(Object.assign({},e),{title:r,text:o});var a=__spreadArray(__spreadArray([],j.flyout.map((function(e,n){var i;var o=t.flyout[n];var r=(i=o.title)!==null&&i!==void 0?i:e.title;var a=o.linkList?t.flyout[n].linkList:[];return{title:r,linkList:__spreadArray(__spreadArray([],e.linkList,true),a,true)}})),true),t.flyout.slice(j.flyout.length),true);return Object.assign(Object.assign({},e),{text:o,title:r,flyout:a})}))};var S=function(e,t){return __awaiter(v,void 0,void 0,(function(){var n,i,o;return __generator(this,(function(r){switch(r.label){case 0:if(!E(e)){throw new Error('Internet Header: invalid project id "'.concat(e,'"'))}if(e==="test"){t="int01"}n=F(e,t);r.label=1;case 1:r.trys.push([1,4,,5]);return[4,fetch(n)];case 2:i=r.sent();return[4,i.json()];case 3:return[2,r.sent()];case 4:o=r.sent();throw new Error("Internet Header: fetching config failed. ".concat(o.message));case 5:return[2]}}))}))};var F=function(e,t){if(e==="test")return"assets/config/test-configuration.json";var n=t.startsWith("int");var i="https://".concat(n?"int":"www",".post.ch");try{return new URL("".concat(i,"/api/headerjs/Json?serviceid=").concat(encodeURIComponent(e)).concat(n?"&environment="+t:"")).toString()}catch(e){throw new Error("Internet Header: Config URL is invalid.")}};var E=function(e){return e!==""&&e.length>0&&/^[a-zA-Z][\w-]*[a-zA-Z0-9]$/.test(e)};var z=function(e,t){var n;try{n=typeof e==="string"?JSON.parse(e):e}catch(e){throw new Error("Internet Header: Custom config is invalid. Make sure your custom config contains valid JSON syntax and matches the definition. ")}var i=n[t];if(i!==undefined)D(i.header.navMain);return i};var D=function(e){e.forEach((function(e){e.id=e.id==="flyout_os"?e.id:u("main-nav-")}))};var A="@swisspost/internet-header";var N="1.5.1";var R="Swiss Post Internet Header";var K="Apache-2.0";var M="loader/index.cjs.js";var P="loader/index.js";var I="loader/index.es2017.js";var W="loader/index.es2017.js";var T="loader/index.d.ts";var H="dist/collection/collection-manifest.json";var U="loader/cdn.js";var J={access:"public"};var B=["dist/","loader/"];var q={build:"npm run stencil:build",clean:"rimraf www dist loader storybook-static",start:"npm run stencil:serve",test:"jest",lint:"eslint src/**/*{.ts,.tsx}","lint:fix":"eslint src/**/*{.ts,.tsx} --fix","stencil:start":"stencil build --docs --watch","stencil:build":"stencil build --docs","stencil:serve":"stencil build --watch --serve --docs",generate:"stencil generate",jest:"jest","jest:watch":"jest --watch"};var G={"@sindresorhus/slugify":"2.2.0","@stencil/core":"3.0.0","@stencil/store":"2.0.3","body-scroll-lock":"4.0.0-beta.0","iframe-resizer":"4.3.2",jquery:"3.6.3",tabbable:"6.0.1","throttle-debounce":"3.0.1","url-polyfill":"1.1.12"};var X={"@babel/core":"7.20.12","@stencil/eslint-plugin":"0.4.0","@stencil/sass":"2.0.3","@swisspost/design-system-styles":"5.3.0","@types/iframe-resizer":"3.5.9","@types/jest":"27.5.2","@types/jquery":"3.5.16","@types/node":"18.11.18","@types/throttle-debounce":"2.1.0","babel-loader":"9.1.2",bootstrap:"5.1","eslint-plugin-react":"^7.32.0",globby:"13.1.3",jest:"27.5.1",rimraf:"3.0.2","rollup-plugin-node-polyfills":"0.2.1","rollup-plugin-scss":"4.0.0","rollup-plugin-visualizer":"5.9.0",sass:"1.57.1","start-server-and-test":"1.15.3","ts-jest":"27.1.5",typescript:"4.8.4"};var Y={name:A,version:N,description:R,license:K,main:M,module:P,es2015:I,es2017:W,"jsnext:main":"loader/index.es2017.js",types:T,collection:H,"collection:main":"dist/collection/index.js",unpkg:U,publishConfig:J,files:B,scripts:q,dependencies:G,devDependencies:X};var Z='@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.nav-link:hover,.nav-link:focus{color:black}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{display:block;position:relative;font-size:1rem;font-weight:300;z-index:var(--header-z-index, 10);--header-height:3.5rem;--meta-header-height:0px;--language-dropdown-margin-top:0px}@media (min-width: 1024px){:host{--meta-header-height:3rem;--header-height:4rem}}@media (min-width: 1280px){:host{--header-height:4.5rem}}:host([meta=false]){--meta-header-height:0px;--language-dropdown-margin-top:1px}@supports ((position: -webkit-sticky) or (position: sticky)){:host(:not(.stickyness-none)){position:-webkit-sticky;position:sticky}:host(.stickyness-full){top:0}:host(.stickyness-main){top:calc(var(--meta-header-height, 0px) * -1)}:host(.stickyness-minimal){top:calc((var(--header-height, 0px) + var(--meta-header-height, 0px)) * -1);-webkit-transition:top 200ms ease-in;transition:top 200ms ease-in}:host(.stickyness-minimal.scrolling-up),:host(.stickyness-minimal.dropdown-open){top:calc(var(--meta-header-height, 0px) * -1);-webkit-transition:top 200ms ease-out;transition:top 200ms ease-out}}.post-internet-header{border-bottom:1px solid #e6e6e6;background-color:white}.main-navigation-container{display:-ms-flexbox;display:flex}.main-navigation-container>.main-navigation-controls{-ms-flex:0 0 auto;flex:0 0 auto}.main-navigation{display:-ms-flexbox;display:flex}.sub-navigation-container{position:absolute;top:100%;left:0;width:100%;display:-ms-flexbox;display:flex;background:white;visibility:hidden}.main-navigation-item:hover .sub-navigation-container{visibility:visible}.main-navigation-controls{display:-ms-flexbox;display:flex;margin-left:auto}@media (max-width: 1023.98px){.main-navigation-controls{font-weight:400}}@media (min-width: 1024px){.main-navigation-controls{font-size:1.0625rem}}.main-navigation-controls>*{border-left:1px solid #e6e6e6}.menu-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 calc(1rem - 1px);font-weight:300;cursor:pointer;border-left:1px solid #e6e6e6;-ms-flex-order:1;order:1;}@media (min-width: 1024px){.menu-button{display:none}}@media (min-width: 600px) and (max-width: 1023.98px){.menu-button .visually-hidden{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible;margin-right:0.5rem}}.menu-button svg{width:1.5rem;height:1.5rem}.full-width .wide-container{max-width:none}';var V=e("swisspost_internet_header",function(){function e(e){t(this,e);this.headerLoaded=n(this,"headerLoaded",7);this.lastScrollTop=window.scrollY||document.documentElement.scrollTop;this.lastWindowWidth=window.innerWidth;this.handleClickOutsideBound=this.handleClickOutside.bind(this);this.project=undefined;this.stickyness="minimal";this.language=undefined;this.meta=true;this.login=true;this.search=true;this.skiplinks=true;this.configProxy=undefined;this.environment="prod";this.languageSwitchOverrides=undefined;this.customConfig=undefined;this.languageCookieKey=undefined;this.languageLocalStorageKey="swisspost-internet-header-language";this.activeRoute="auto";this.osFlyoutOverrides=undefined;this.fullWidth=false;this.activeFlyout=null;this.activeDropdownElement=null;if(this.project===undefined||this.project===""||!E(this.project)){throw new Error('Internet Header project key is "'.concat(this.project,'". Please provide a valid project key.'))}}e.prototype.getCurrentLanguage=function(){return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(t){return[2,(e=c.currentLanguage)!==null&&e!==void 0?e:"de"]}))}))};e.prototype.connectedCallback=function(){var e=this;this.throttledScroll=a(300,(function(){return e.handleScrollEvent()}));this.debouncedResize=s(200,(function(){return e.handleResize()}));window.addEventListener("scroll",this.throttledScroll,{passive:true});window.addEventListener("resize",this.debouncedResize,{passive:true})};e.prototype.disconnectedCallback=function(){window.removeEventListener("scroll",this.throttledScroll);window.removeEventListener("resize",this.debouncedResize);h()};e.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){var e,t;return __generator(this,(function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);c.projectId=this.project;c.environment=this.environment;if(this.language!==undefined)c.currentLanguage=this.language;c.languageSwitchOverrides=typeof this.languageSwitchOverrides==="string"?JSON.parse(this.languageSwitchOverrides):this.languageSwitchOverrides;c.osFlyoutOverrides=typeof this.osFlyoutOverrides==="string"?JSON.parse(this.osFlyoutOverrides):this.osFlyoutOverrides;if(this.customConfig!==undefined&&c.currentLanguage!==null){c.localizedCustomConfig=z(this.customConfig,c.currentLanguage)}e=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:e.localizedConfig=n.sent();return[3,3];case 2:t=n.sent();console.error(t);return[3,3];case 3:return[2]}}))}))};e.prototype.componentDidLoad=function(){var e=this;window.requestAnimationFrame((function(){e.handleResize();e.headerLoaded.emit();e.host.classList.add("header-loaded")}))};e.prototype.handleLanguageChange=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(n){switch(n.label){case 0:c.currentLanguage=e;t=c;return[4,_({projectId:this.project,environment:this.environment,language:e,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:t.localizedConfig=n.sent();if(this.customConfig)c.localizedCustomConfig=z(this.customConfig,e);return[2]}}))}))};e.prototype.handleAvailableLanguagesChage=function(e){c.languageSwitchOverrides=typeof e==="string"?JSON.parse(e):e};e.prototype.handleOsFlyoutOverrides=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(n){switch(n.label){case 0:c.osFlyoutOverrides=typeof e==="string"?JSON.parse(e):e;t=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:t.localizedConfig=n.sent();return[2]}}))}))};e.prototype.handleActiveRouteChange=function(e){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(n){switch(n.label){case 0:t=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:e,localizedCustomConfig:c.localizedCustomConfig,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:t.localizedConfig=n.sent();return[2]}}))}))};e.prototype.handleCustomConfigChange=function(e){return __awaiter(this,void 0,void 0,(function(){var t,n;return __generator(this,(function(i){switch(i.label){case 0:if(this.language===undefined)return[2];t=z(e,this.language);c.localizedCustomConfig=t;n=c;return[4,_({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:t,osFlyoutOverrides:c.osFlyoutOverrides})];case 1:n.localizedConfig=i.sent();return[2]}}))}))};e.prototype.handleSearchChange=function(e){c.search=e};e.prototype.handleLoginChange=function(e){c.login=e};e.prototype.handleMetaChange=function(e){c.meta=e};e.prototype.handleLanguageChangeEvent=function(e){this.handleLanguageChange(e.detail)};e.prototype.handleClickOutside=function(e){if(this.activeDropdownElement&&!e.composedPath().includes(this.activeDropdownElement)){this.activeDropdownElement.toggleDropdown(false)}};e.prototype.handleKeyUp=function(e){if(e.key==="Escape"){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.toggleDropdown(false)}}};e.prototype.handleScrollEvent=function(){var e=window.scrollY||document.documentElement.scrollTop;if(this.stickyness==="minimal"){this.host.classList.toggle("scrolling-up",e<=this.lastScrollTop)}this.lastScrollTop=e<=0?0:e};e.prototype.handleResize=function(){var e;if(this.isMainNavOpen()&&this.lastWindowWidth<1024&&window.innerWidth>=1024){(e=this.activeDropdownElement)===null||e===void 0?void 0:e.toggleDropdown(false)}this.lastWindowWidth=window.innerWidth};e.prototype.handleDropdownToggled=function(e){var t=this;if(!e.detail.open&&this.activeDropdownElement!==e.detail.element){return}if(e.detail.open===true){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}this.activeDropdownElement=e.detail.element;if(window.innerWidth>=1024){window.setTimeout((function(){window.addEventListener("click",t.handleClickOutsideBound)}),10)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.setActiveFlyout(null)}}else{this.activeDropdownElement=null;window.removeEventListener("click",this.handleClickOutsideBound)}};e.prototype.handleFlyoutToggled=function(e){this.activeFlyout=e.detail;if(this.activeDropdownElement&&e.detail&&!this.isMainNavOpen()){this.activeDropdownElement.toggleDropdown(false)}};e.prototype.toggleMobileDropdown=function(){var e;(e=this.mainNav)===null||e===void 0?void 0:e.toggleDropdown()};e.prototype.isMainNavOpen=function(){return this.activeDropdownElement&&this.activeDropdownElement.tagName==="POST-MAIN-NAVIGATION"};e.prototype.render=function(){var e=this;var t,n,r;if(!((t=c.localizedConfig)===null||t===void 0?void 0:t.header)){console.error(new Error("Internet Header: Config cannot be loaded"));return}var a=c.localizedConfig;var s=this.meta&&a.header.navMeta!==undefined&&((n=a.header.navMeta)===null||n===void 0?void 0:n.filter((function(e){return!e.isHomeLink})).length)>0;var l=((r=this.login)!==null&&r!==void 0?r:!a.header.isLoginWidgetHidden)&&a.header.loginWidgetOptions;var d=a.header.navLang.length>1;return i(o,{class:"stickyness-".concat(this.stickyness," ").concat(this.activeDropdownElement||this.activeFlyout?"dropdown-open":""),"data-version":Y.version,onKeyup:function(t){return e.handleKeyUp(t)}},i("header",{class:"post-internet-header".concat(this.fullWidth?" full-width":"")},i(f,null),i(p,{condition:this.skiplinks===true},i("post-skiplinks",null)),i(p,{condition:s===true},i("post-meta-navigation",{orientation:"horizontal",class:"hidden-lg","full-width":this.fullWidth},i(p,{condition:d===true},i("post-language-switch",{id:"post-language-switch-desktop",mode:"dropdown",onDropdownToggled:function(t){return e.handleDropdownToggled(t)}})))),i("div",{class:"main-navigation-container wide-container"},i("post-logo",null),i("button",{class:"menu-button nav-link",onClick:function(){return e.toggleMobileDropdown()}},i("span",{class:"menu-button-text visually-hidden"},a.header.mobileMenu.text),i(g,{name:this.isMainNavOpen()?"pi-close":"pi-menu"})),i("post-main-navigation",{onDropdownToggled:function(t){return e.handleDropdownToggled(t)},onFlyoutToggled:function(t){return e.handleFlyoutToggled(t)},ref:function(t){return e.mainNav=t}},i(p,{condition:s===true},i("post-meta-navigation",{orientation:"vertical"},i(p,{condition:d===true},i("post-language-switch",{id:"post-language-switch-mobile",mode:"list"}))))),i("div",{class:"main-navigation-controls"},i(p,{condition:this.search!==false},i("post-search",{onDropdownToggled:function(t){return e.handleDropdownToggled(t)}})),i(p,{condition:!!l},i("post-klp-login-widget",null,i("slot",{name:"login-widget"}))),i(p,{condition:s===false&&d===true},i("post-language-switch",{id:"post-language-switch-no-meta",onDropdownToggled:function(t){return e.handleDropdownToggled(t)},mode:"dropdown"})),i("slot",{name:"main"})))))};Object.defineProperty(e.prototype,"host",{get:function(){return r(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{language:["handleLanguageChange"],languageSwitchOverrides:["handleAvailableLanguagesChage"],osFlyoutOverrides:["handleOsFlyoutOverrides"],activeRoute:["handleActiveRouteChange"],customConfig:["handleCustomConfigChange"],search:["handleSearchChange"],login:["handleLoginChange"],meta:["handleMetaChange"]}},enumerable:false,configurable:true});return e}());V.style=Z}}}));
2
+ //# sourceMappingURL=p-3df823de.system.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,c as e,h as i,H as n,g as o}from"./p-5032057e.js";import{t as s,d as a}from"./p-69c64c29.js";import{g as r,p as l}from"./p-0942595f.js";import{u as d}from"./p-8bf099a8.js";import{s as h,d as c}from"./p-06649b46.js";import{S as u}from"./p-f7c0cf7b.js";import{S as f}from"./p-ab1dd269.js";import{I as p}from"./p-a2f9d462.js";const g=(t,e)=>{if(e===false){return t}let i;t=v(t);if(e==="auto"||e==="exact"){if(m(t)){return w(t)}i=new URL(window.location.href)}else{try{i=new URL(e,document.location.origin)}catch(i){console.warn(`Active Route: ${e} is not a valid URL. Navigation highlighting has been disabled.`);return t}}const n=b(t,i,e);if(n.length===0){return t}const o=n[0];o.main.isActiveOverride=true;if(o.sub)o.sub.isActiveOverride=true;return t};const m=t=>t.filter((t=>t.isActive)).length>0;const w=t=>t.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:t.isActive,flyout:t.flyout.map((t=>Object.assign(Object.assign({},t),{linkList:t.linkList.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:t.isActive})))})))})));const v=t=>t.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:false,flyout:t.flyout.map((t=>Object.assign(Object.assign({},t),{linkList:t.linkList.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:false})))})))})));const b=(t,e,i)=>{let n=false;const o=[];t.forEach((t=>{if(n||!t){return}try{const s=x(e,new URL(t.url),i);if(s>0){if(s===Infinity)n=true;o.push({main:t,score:s})}}catch(t){}if(t.flyout.length){t.flyout.forEach((s=>{if(s.linkList){s.linkList.forEach((s=>{if(s.isActive&&(i==="auto"||i==="exact")){n=true;return}try{const a=new URL(s.url);const r=x(e,a,i);if(r>0){if(r===Infinity)n=true;o.push({main:t,sub:s,score:r})}}catch(t){}}))}}))}}));return o.sort(((t,e)=>e.score-t.score))};const x=(t,e,i)=>{if(!t||!e||t.origin!==e.origin){return 0}if(t.pathname===e.pathname){return Infinity}if(t.pathname.length<e.pathname.length){return 0}if(i==="auto"){const i=[t.origin,...t.pathname.split("/").filter((t=>!!t))];const n=[e.origin,...e.pathname.split("/").filter((t=>!!t))];const o=y(i,n);return Math.min(i.length,n.length)===o?o:0}return 0};const y=(t,e)=>{if(!(t===null||t===void 0?void 0:t.length)||!(e===null||e===void 0?void 0:e.length)){return 0}let i=0;for(;i<Math.min(t.length,e.length);i++){if(t[i]!==e[i]){return 0}}return i};let j=null;let k=null;const O=async({projectId:t,environment:e,language:i,cookieKey:n,localStorageKey:o,activeRouteProp:s,localizedCustomConfig:a,osFlyoutOverrides:d})=>{var h,c;if(!j){j=F(t,e)}const u=await j;const f=r(Object.keys(u),i,o,n);if(f===undefined){throw new Error("Internet Header: unable to determine current language")}let p=Object.assign({},u[f]);if(a){const t=((h=a===null||a===void 0?void 0:a.header)===null||h===void 0?void 0:h.navMain)?Object.assign(Object.assign({},p.header),{navMain:[...p.header.navMain,...a.header.navMain]}):p.header;p=Object.assign(Object.assign({},p),{header:t})}if(d)p.header.navMain=C(p,d);if(s)p.header.navMain=g(p.header.navMain,s);S((c=p===null||p===void 0?void 0:p.header)===null||c===void 0?void 0:c.navMain);l(f,n,o);return p};const C=(t,e)=>{if(!e)return t.header.navMain;return t.header.navMain.map((t=>{var i,n;if(t.id!=="flyout_os")return t;if(k===null){k=JSON.parse(JSON.stringify(t))}const o=(i=e.text)!==null&&i!==void 0?i:k.text;const s=(n=e.title)!==null&&n!==void 0?n:k.title;if(!k.flyout||k.flyout.length===0||!e.flyout||e.flyout.length===0)return Object.assign(Object.assign({},t),{title:s,text:o});const a=[...k.flyout.map(((t,i)=>{var n;const o=e.flyout[i];const s=(n=o.title)!==null&&n!==void 0?n:t.title;const a=o.linkList?e.flyout[i].linkList:[];return{title:s,linkList:[...t.linkList,...a]}})),...e.flyout.slice(k.flyout.length)];return Object.assign(Object.assign({},t),{text:o,title:s,flyout:a})}))};const F=async(t,e)=>{if(!N(t)){throw new Error(`Internet Header: invalid project id "${t}"`)}if(t==="test"){e="int01"}let i=L(t,e);try{const t=await fetch(i);return await t.json()}catch(t){throw new Error(`Internet Header: fetching config failed. ${t.message}`)}};const L=(t,e)=>{if(t==="test")return"assets/config/test-configuration.json";const i=e.startsWith("int");const n=`https://${i?"int":"www"}.post.ch`;try{return new URL(`${n}/api/headerjs/Json?serviceid=${encodeURIComponent(t)}${i?"&environment="+e:""}`).toString()}catch(t){throw new Error(`Internet Header: Config URL is invalid.`)}};const N=t=>t!==""&&t.length>0&&/^[a-zA-Z][\w-]*[a-zA-Z0-9]$/.test(t);const I=(t,e)=>{let i;try{i=typeof t==="string"?JSON.parse(t):t}catch(t){throw new Error(`Internet Header: Custom config is invalid. Make sure your custom config contains valid JSON syntax and matches the definition. `)}let n=i[e];if(n!==undefined)S(n.header.navMain);return n};const S=t=>{t.forEach((t=>{t.id=t.id==="flyout_os"?t.id:d("main-nav-")}))};const z="@swisspost/internet-header";const R="1.5.0";const P="Swiss Post Internet Header";const A="Apache-2.0";const K="loader/index.cjs.js";const $="loader/index.js";const E="loader/index.es2017.js";const H="loader/index.es2017.js";const J="loader/index.d.ts";const M="dist/collection/collection-manifest.json";const T="loader/cdn.js";const U={access:"public"};const D=["dist/","loader/"];const W={build:"npm run stencil:build",clean:"rimraf www dist loader storybook-static",start:"npm run stencil:serve",test:"jest",lint:"eslint src/**/*{.ts,.tsx}","lint:fix":"eslint src/**/*{.ts,.tsx} --fix","stencil:start":"stencil build --docs --watch","stencil:build":"stencil build --docs","stencil:serve":"stencil build --watch --serve --docs",generate:"stencil generate",jest:"jest","jest:watch":"jest --watch"};const _={"@sindresorhus/slugify":"2.2.0","@stencil/core":"3.0.0","@stencil/store":"2.0.3","body-scroll-lock":"4.0.0-beta.0","iframe-resizer":"4.3.2",jquery:"3.6.3",tabbable:"6.0.1","throttle-debounce":"3.0.1","url-polyfill":"1.1.12"};const q={"@babel/core":"7.20.12","@stencil/eslint-plugin":"0.4.0","@stencil/sass":"2.0.3","@swisspost/design-system-styles":"5.3.0","@types/iframe-resizer":"3.5.9","@types/jest":"27.5.2","@types/jquery":"3.5.16","@types/node":"18.11.18","@types/throttle-debounce":"2.1.0","babel-loader":"9.1.2",bootstrap:"5.1","eslint-plugin-react":"^7.32.0",globby:"13.1.3",jest:"27.5.1",rimraf:"3.0.2","rollup-plugin-node-polyfills":"0.2.1","rollup-plugin-scss":"4.0.0","rollup-plugin-visualizer":"5.9.0",sass:"1.57.1","start-server-and-test":"1.15.3","ts-jest":"27.1.5",typescript:"4.8.4"};const B={name:z,version:R,description:P,license:A,main:K,module:$,es2015:E,es2017:H,"jsnext:main":"loader/index.es2017.js",types:J,collection:M,"collection:main":"dist/collection/index.js",unpkg:T,publishConfig:U,files:D,scripts:W,dependencies:_,devDependencies:q};const X='@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.nav-link:hover,.nav-link:focus{color:black}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{display:block;position:relative;font-size:1rem;font-weight:300;z-index:var(--header-z-index, 10);--header-height:3.5rem;--meta-header-height:0px;--language-dropdown-margin-top:0px}@media (min-width: 1024px){:host{--meta-header-height:3rem;--header-height:4rem}}@media (min-width: 1280px){:host{--header-height:4.5rem}}:host([meta=false]){--meta-header-height:0px;--language-dropdown-margin-top:1px}@supports ((position: -webkit-sticky) or (position: sticky)){:host(:not(.stickyness-none)){position:-webkit-sticky;position:sticky}:host(.stickyness-full){top:0}:host(.stickyness-main){top:calc(var(--meta-header-height, 0px) * -1)}:host(.stickyness-minimal){top:calc((var(--header-height, 0px) + var(--meta-header-height, 0px)) * -1);-webkit-transition:top 200ms ease-in;transition:top 200ms ease-in}:host(.stickyness-minimal.scrolling-up),:host(.stickyness-minimal.dropdown-open){top:calc(var(--meta-header-height, 0px) * -1);-webkit-transition:top 200ms ease-out;transition:top 200ms ease-out}}.post-internet-header{border-bottom:1px solid #e6e6e6;background-color:white}.main-navigation-container{display:-ms-flexbox;display:flex}.main-navigation-container>.main-navigation-controls{-ms-flex:0 0 auto;flex:0 0 auto}.main-navigation{display:-ms-flexbox;display:flex}.sub-navigation-container{position:absolute;top:100%;left:0;width:100%;display:-ms-flexbox;display:flex;background:white;visibility:hidden}.main-navigation-item:hover .sub-navigation-container{visibility:visible}.main-navigation-controls{display:-ms-flexbox;display:flex;margin-left:auto}@media (max-width: 1023.98px){.main-navigation-controls{font-weight:400}}@media (min-width: 1024px){.main-navigation-controls{font-size:1.0625rem}}.main-navigation-controls>*{border-left:1px solid #e6e6e6}.menu-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 calc(1rem - 1px);font-weight:300;cursor:pointer;border-left:1px solid #e6e6e6;-ms-flex-order:1;order:1;}@media (min-width: 1024px){.menu-button{display:none}}@media (min-width: 600px) and (max-width: 1023.98px){.menu-button .visually-hidden{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible;margin-right:0.5rem}}.menu-button svg{width:1.5rem;height:1.5rem}.full-width .wide-container{max-width:none}';const Z=class{async getCurrentLanguage(){var t;return(t=h.currentLanguage)!==null&&t!==void 0?t:"de"}constructor(i){t(this,i);this.headerLoaded=e(this,"headerLoaded",7);this.lastScrollTop=window.scrollY||document.documentElement.scrollTop;this.lastWindowWidth=window.innerWidth;this.handleClickOutsideBound=this.handleClickOutside.bind(this);this.project=undefined;this.stickyness="minimal";this.language=undefined;this.meta=true;this.login=true;this.search=true;this.skiplinks=true;this.configProxy=undefined;this.environment="prod";this.languageSwitchOverrides=undefined;this.customConfig=undefined;this.languageCookieKey=undefined;this.languageLocalStorageKey="swisspost-internet-header-language";this.activeRoute="auto";this.osFlyoutOverrides=undefined;this.fullWidth=false;this.activeFlyout=null;this.activeDropdownElement=null;if(this.project===undefined||this.project===""||!N(this.project)){throw new Error(`Internet Header project key is "${this.project}". Please provide a valid project key.`)}}connectedCallback(){this.throttledScroll=s(300,(()=>this.handleScrollEvent()));this.debouncedResize=a(200,(()=>this.handleResize()));window.addEventListener("scroll",this.throttledScroll,{passive:true});window.addEventListener("resize",this.debouncedResize,{passive:true})}disconnectedCallback(){window.removeEventListener("scroll",this.throttledScroll);window.removeEventListener("resize",this.debouncedResize);c()}async componentWillLoad(){try{h.projectId=this.project;h.environment=this.environment;if(this.language!==undefined)h.currentLanguage=this.language;h.languageSwitchOverrides=typeof this.languageSwitchOverrides==="string"?JSON.parse(this.languageSwitchOverrides):this.languageSwitchOverrides;h.osFlyoutOverrides=typeof this.osFlyoutOverrides==="string"?JSON.parse(this.osFlyoutOverrides):this.osFlyoutOverrides;if(this.customConfig!==undefined&&h.currentLanguage!==null){h.localizedCustomConfig=I(this.customConfig,h.currentLanguage)}h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides})}catch(t){console.error(t)}}componentDidLoad(){window.requestAnimationFrame((()=>{this.handleResize();this.headerLoaded.emit();this.host.classList.add("header-loaded")}))}async handleLanguageChange(t){h.currentLanguage=t;h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:t,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides});if(this.customConfig)h.localizedCustomConfig=I(this.customConfig,t)}handleAvailableLanguagesChage(t){h.languageSwitchOverrides=typeof t==="string"?JSON.parse(t):t}async handleOsFlyoutOverrides(t){h.osFlyoutOverrides=typeof t==="string"?JSON.parse(t):t;h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides})}async handleActiveRouteChange(t){h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:t,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides})}async handleCustomConfigChange(t){if(this.language===undefined)return;const e=I(t,this.language);h.localizedCustomConfig=e;h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:e,osFlyoutOverrides:h.osFlyoutOverrides})}handleSearchChange(t){h.search=t}handleLoginChange(t){h.login=t}handleMetaChange(t){h.meta=t}handleLanguageChangeEvent(t){this.handleLanguageChange(t.detail)}handleClickOutside(t){if(this.activeDropdownElement&&!t.composedPath().includes(this.activeDropdownElement)){this.activeDropdownElement.toggleDropdown(false)}}handleKeyUp(t){if(t.key==="Escape"){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.toggleDropdown(false)}}}handleScrollEvent(){const t=window.scrollY||document.documentElement.scrollTop;if(this.stickyness==="minimal"){this.host.classList.toggle("scrolling-up",t<=this.lastScrollTop)}this.lastScrollTop=t<=0?0:t}handleResize(){var t;if(this.isMainNavOpen()&&this.lastWindowWidth<1024&&window.innerWidth>=1024){(t=this.activeDropdownElement)===null||t===void 0?void 0:t.toggleDropdown(false)}this.lastWindowWidth=window.innerWidth}handleDropdownToggled(t){if(!t.detail.open&&this.activeDropdownElement!==t.detail.element){return}if(t.detail.open===true){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}this.activeDropdownElement=t.detail.element;if(window.innerWidth>=1024){window.setTimeout((()=>{window.addEventListener("click",this.handleClickOutsideBound)}),10)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.setActiveFlyout(null)}}else{this.activeDropdownElement=null;window.removeEventListener("click",this.handleClickOutsideBound)}}handleFlyoutToggled(t){this.activeFlyout=t.detail;if(this.activeDropdownElement&&t.detail&&!this.isMainNavOpen()){this.activeDropdownElement.toggleDropdown(false)}}toggleMobileDropdown(){var t;(t=this.mainNav)===null||t===void 0?void 0:t.toggleDropdown()}isMainNavOpen(){return this.activeDropdownElement&&this.activeDropdownElement.tagName==="POST-MAIN-NAVIGATION"}render(){var t,e,o;if(!((t=h.localizedConfig)===null||t===void 0?void 0:t.header)){console.error(new Error("Internet Header: Config cannot be loaded"));return}const s=h.localizedConfig;const a=this.meta&&s.header.navMeta!==undefined&&((e=s.header.navMeta)===null||e===void 0?void 0:e.filter((t=>!t.isHomeLink)).length)>0;const r=((o=this.login)!==null&&o!==void 0?o:!s.header.isLoginWidgetHidden)&&s.header.loginWidgetOptions;const l=s.header.navLang.length>1;return i(n,{class:`stickyness-${this.stickyness} ${this.activeDropdownElement||this.activeFlyout?"dropdown-open":""}`,"data-version":B.version,onKeyup:t=>this.handleKeyUp(t)},i("header",{class:`post-internet-header${this.fullWidth?" full-width":""}`},i(u,null),i(p,{condition:this.skiplinks===true},i("post-skiplinks",null)),i(p,{condition:a===true},i("post-meta-navigation",{orientation:"horizontal",class:"hidden-lg","full-width":this.fullWidth},i(p,{condition:l===true},i("post-language-switch",{id:"post-language-switch-desktop",mode:"dropdown",onDropdownToggled:t=>this.handleDropdownToggled(t)})))),i("div",{class:"main-navigation-container wide-container"},i("post-logo",null),i("button",{class:"menu-button nav-link",onClick:()=>this.toggleMobileDropdown()},i("span",{class:"menu-button-text visually-hidden"},s.header.mobileMenu.text),i(f,{name:this.isMainNavOpen()?"pi-close":"pi-menu"})),i("post-main-navigation",{onDropdownToggled:t=>this.handleDropdownToggled(t),onFlyoutToggled:t=>this.handleFlyoutToggled(t),ref:t=>this.mainNav=t},i(p,{condition:a===true},i("post-meta-navigation",{orientation:"vertical"},i(p,{condition:l===true},i("post-language-switch",{id:"post-language-switch-mobile",mode:"list"}))))),i("div",{class:"main-navigation-controls"},i(p,{condition:this.search!==false},i("post-search",{onDropdownToggled:t=>this.handleDropdownToggled(t)})),i(p,{condition:!!r},i("post-klp-login-widget",null,i("slot",{name:"login-widget"}))),i(p,{condition:a===false&&l===true},i("post-language-switch",{id:"post-language-switch-no-meta",onDropdownToggled:t=>this.handleDropdownToggled(t),mode:"dropdown"})),i("slot",{name:"main"})))))}get host(){return o(this)}static get watchers(){return{language:["handleLanguageChange"],languageSwitchOverrides:["handleAvailableLanguagesChage"],osFlyoutOverrides:["handleOsFlyoutOverrides"],activeRoute:["handleActiveRouteChange"],customConfig:["handleCustomConfigChange"],search:["handleSearchChange"],login:["handleLoginChange"],meta:["handleMetaChange"]}}};Z.style=X;export{Z as swisspost_internet_header};
2
- //# sourceMappingURL=p-7ea26ee9.entry.js.map
1
+ import{r as t,c as e,h as i,H as n,g as o}from"./p-5032057e.js";import{t as s,d as a}from"./p-69c64c29.js";import{g as r,p as l}from"./p-0942595f.js";import{u as d}from"./p-8bf099a8.js";import{s as h,d as c}from"./p-06649b46.js";import{S as u}from"./p-f7c0cf7b.js";import{S as f}from"./p-ab1dd269.js";import{I as p}from"./p-a2f9d462.js";const g=(t,e)=>{if(e===false){return t}let i;t=v(t);if(e==="auto"||e==="exact"){if(m(t)){return w(t)}i=new URL(window.location.href)}else{try{i=new URL(e,document.location.origin)}catch(i){console.warn(`Active Route: ${e} is not a valid URL. Navigation highlighting has been disabled.`);return t}}const n=b(t,i,e);if(n.length===0){return t}const o=n[0];o.main.isActiveOverride=true;if(o.sub)o.sub.isActiveOverride=true;return t};const m=t=>t.filter((t=>t.isActive)).length>0;const w=t=>t.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:t.isActive,flyout:t.flyout.map((t=>Object.assign(Object.assign({},t),{linkList:t.linkList.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:t.isActive})))})))})));const v=t=>t.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:false,flyout:t.flyout.map((t=>Object.assign(Object.assign({},t),{linkList:t.linkList.map((t=>Object.assign(Object.assign({},t),{isActiveOverride:false})))})))})));const b=(t,e,i)=>{let n=false;const o=[];t.forEach((t=>{if(n||!t){return}try{const s=x(e,new URL(t.url),i);if(s>0){if(s===Infinity)n=true;o.push({main:t,score:s})}}catch(t){}if(t.flyout.length){t.flyout.forEach((s=>{if(s.linkList){s.linkList.forEach((s=>{if(s.isActive&&(i==="auto"||i==="exact")){n=true;return}try{const a=new URL(s.url);const r=x(e,a,i);if(r>0){if(r===Infinity)n=true;o.push({main:t,sub:s,score:r})}}catch(t){}}))}}))}}));return o.sort(((t,e)=>e.score-t.score))};const x=(t,e,i)=>{if(!t||!e||t.origin!==e.origin){return 0}if(t.pathname===e.pathname){return Infinity}if(t.pathname.length<e.pathname.length){return 0}if(i==="auto"){const i=[t.origin,...t.pathname.split("/").filter((t=>!!t))];const n=[e.origin,...e.pathname.split("/").filter((t=>!!t))];const o=y(i,n);return Math.min(i.length,n.length)===o?o:0}return 0};const y=(t,e)=>{if(!(t===null||t===void 0?void 0:t.length)||!(e===null||e===void 0?void 0:e.length)){return 0}let i=0;for(;i<Math.min(t.length,e.length);i++){if(t[i]!==e[i]){return 0}}return i};let j=null;let k=null;const O=async({projectId:t,environment:e,language:i,cookieKey:n,localStorageKey:o,activeRouteProp:s,localizedCustomConfig:a,osFlyoutOverrides:d})=>{var h,c;if(!j){j=F(t,e)}const u=await j;const f=r(Object.keys(u),i,o,n);if(f===undefined){throw new Error("Internet Header: unable to determine current language")}let p=Object.assign({},u[f]);if(a){const t=((h=a===null||a===void 0?void 0:a.header)===null||h===void 0?void 0:h.navMain)?Object.assign(Object.assign({},p.header),{navMain:[...p.header.navMain,...a.header.navMain]}):p.header;p=Object.assign(Object.assign({},p),{header:t})}if(d)p.header.navMain=C(p,d);if(s)p.header.navMain=g(p.header.navMain,s);S((c=p===null||p===void 0?void 0:p.header)===null||c===void 0?void 0:c.navMain);l(f,n,o);return p};const C=(t,e)=>{if(!e)return t.header.navMain;return t.header.navMain.map((t=>{var i,n;if(t.id!=="flyout_os")return t;if(k===null){k=JSON.parse(JSON.stringify(t))}const o=(i=e.text)!==null&&i!==void 0?i:k.text;const s=(n=e.title)!==null&&n!==void 0?n:k.title;if(!k.flyout||k.flyout.length===0||!e.flyout||e.flyout.length===0)return Object.assign(Object.assign({},t),{title:s,text:o});const a=[...k.flyout.map(((t,i)=>{var n;const o=e.flyout[i];const s=(n=o.title)!==null&&n!==void 0?n:t.title;const a=o.linkList?e.flyout[i].linkList:[];return{title:s,linkList:[...t.linkList,...a]}})),...e.flyout.slice(k.flyout.length)];return Object.assign(Object.assign({},t),{text:o,title:s,flyout:a})}))};const F=async(t,e)=>{if(!N(t)){throw new Error(`Internet Header: invalid project id "${t}"`)}if(t==="test"){e="int01"}let i=L(t,e);try{const t=await fetch(i);return await t.json()}catch(t){throw new Error(`Internet Header: fetching config failed. ${t.message}`)}};const L=(t,e)=>{if(t==="test")return"assets/config/test-configuration.json";const i=e.startsWith("int");const n=`https://${i?"int":"www"}.post.ch`;try{return new URL(`${n}/api/headerjs/Json?serviceid=${encodeURIComponent(t)}${i?"&environment="+e:""}`).toString()}catch(t){throw new Error(`Internet Header: Config URL is invalid.`)}};const N=t=>t!==""&&t.length>0&&/^[a-zA-Z][\w-]*[a-zA-Z0-9]$/.test(t);const I=(t,e)=>{let i;try{i=typeof t==="string"?JSON.parse(t):t}catch(t){throw new Error(`Internet Header: Custom config is invalid. Make sure your custom config contains valid JSON syntax and matches the definition. `)}let n=i[e];if(n!==undefined)S(n.header.navMain);return n};const S=t=>{t.forEach((t=>{t.id=t.id==="flyout_os"?t.id:d("main-nav-")}))};const z="@swisspost/internet-header";const R="1.5.1";const P="Swiss Post Internet Header";const A="Apache-2.0";const K="loader/index.cjs.js";const $="loader/index.js";const E="loader/index.es2017.js";const H="loader/index.es2017.js";const J="loader/index.d.ts";const M="dist/collection/collection-manifest.json";const T="loader/cdn.js";const U={access:"public"};const D=["dist/","loader/"];const W={build:"npm run stencil:build",clean:"rimraf www dist loader storybook-static",start:"npm run stencil:serve",test:"jest",lint:"eslint src/**/*{.ts,.tsx}","lint:fix":"eslint src/**/*{.ts,.tsx} --fix","stencil:start":"stencil build --docs --watch","stencil:build":"stencil build --docs","stencil:serve":"stencil build --watch --serve --docs",generate:"stencil generate",jest:"jest","jest:watch":"jest --watch"};const _={"@sindresorhus/slugify":"2.2.0","@stencil/core":"3.0.0","@stencil/store":"2.0.3","body-scroll-lock":"4.0.0-beta.0","iframe-resizer":"4.3.2",jquery:"3.6.3",tabbable:"6.0.1","throttle-debounce":"3.0.1","url-polyfill":"1.1.12"};const q={"@babel/core":"7.20.12","@stencil/eslint-plugin":"0.4.0","@stencil/sass":"2.0.3","@swisspost/design-system-styles":"5.3.0","@types/iframe-resizer":"3.5.9","@types/jest":"27.5.2","@types/jquery":"3.5.16","@types/node":"18.11.18","@types/throttle-debounce":"2.1.0","babel-loader":"9.1.2",bootstrap:"5.1","eslint-plugin-react":"^7.32.0",globby:"13.1.3",jest:"27.5.1",rimraf:"3.0.2","rollup-plugin-node-polyfills":"0.2.1","rollup-plugin-scss":"4.0.0","rollup-plugin-visualizer":"5.9.0",sass:"1.57.1","start-server-and-test":"1.15.3","ts-jest":"27.1.5",typescript:"4.8.4"};const B={name:z,version:R,description:P,license:A,main:K,module:$,es2015:E,es2017:H,"jsnext:main":"loader/index.es2017.js",types:J,collection:M,"collection:main":"dist/collection/index.js",unpkg:T,publishConfig:U,files:D,scripts:W,dependencies:_,devDependencies:q};const X='@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.nav-link:hover,.nav-link:focus{color:black}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{display:block;position:relative;font-size:1rem;font-weight:300;z-index:var(--header-z-index, 10);--header-height:3.5rem;--meta-header-height:0px;--language-dropdown-margin-top:0px}@media (min-width: 1024px){:host{--meta-header-height:3rem;--header-height:4rem}}@media (min-width: 1280px){:host{--header-height:4.5rem}}:host([meta=false]){--meta-header-height:0px;--language-dropdown-margin-top:1px}@supports ((position: -webkit-sticky) or (position: sticky)){:host(:not(.stickyness-none)){position:-webkit-sticky;position:sticky}:host(.stickyness-full){top:0}:host(.stickyness-main){top:calc(var(--meta-header-height, 0px) * -1)}:host(.stickyness-minimal){top:calc((var(--header-height, 0px) + var(--meta-header-height, 0px)) * -1);-webkit-transition:top 200ms ease-in;transition:top 200ms ease-in}:host(.stickyness-minimal.scrolling-up),:host(.stickyness-minimal.dropdown-open){top:calc(var(--meta-header-height, 0px) * -1);-webkit-transition:top 200ms ease-out;transition:top 200ms ease-out}}.post-internet-header{border-bottom:1px solid #e6e6e6;background-color:white}.main-navigation-container{display:-ms-flexbox;display:flex}.main-navigation-container>.main-navigation-controls{-ms-flex:0 0 auto;flex:0 0 auto}.main-navigation{display:-ms-flexbox;display:flex}.sub-navigation-container{position:absolute;top:100%;left:0;width:100%;display:-ms-flexbox;display:flex;background:white;visibility:hidden}.main-navigation-item:hover .sub-navigation-container{visibility:visible}.main-navigation-controls{display:-ms-flexbox;display:flex;margin-left:auto}@media (max-width: 1023.98px){.main-navigation-controls{font-weight:400}}@media (min-width: 1024px){.main-navigation-controls{font-size:1.0625rem}}.main-navigation-controls>*{border-left:1px solid #e6e6e6}.menu-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0 calc(1rem - 1px);font-weight:300;cursor:pointer;border-left:1px solid #e6e6e6;-ms-flex-order:1;order:1;}@media (min-width: 1024px){.menu-button{display:none}}@media (min-width: 600px) and (max-width: 1023.98px){.menu-button .visually-hidden{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible;margin-right:0.5rem}}.menu-button svg{width:1.5rem;height:1.5rem}.full-width .wide-container{max-width:none}';const Z=class{async getCurrentLanguage(){var t;return(t=h.currentLanguage)!==null&&t!==void 0?t:"de"}constructor(i){t(this,i);this.headerLoaded=e(this,"headerLoaded",7);this.lastScrollTop=window.scrollY||document.documentElement.scrollTop;this.lastWindowWidth=window.innerWidth;this.handleClickOutsideBound=this.handleClickOutside.bind(this);this.project=undefined;this.stickyness="minimal";this.language=undefined;this.meta=true;this.login=true;this.search=true;this.skiplinks=true;this.configProxy=undefined;this.environment="prod";this.languageSwitchOverrides=undefined;this.customConfig=undefined;this.languageCookieKey=undefined;this.languageLocalStorageKey="swisspost-internet-header-language";this.activeRoute="auto";this.osFlyoutOverrides=undefined;this.fullWidth=false;this.activeFlyout=null;this.activeDropdownElement=null;if(this.project===undefined||this.project===""||!N(this.project)){throw new Error(`Internet Header project key is "${this.project}". Please provide a valid project key.`)}}connectedCallback(){this.throttledScroll=s(300,(()=>this.handleScrollEvent()));this.debouncedResize=a(200,(()=>this.handleResize()));window.addEventListener("scroll",this.throttledScroll,{passive:true});window.addEventListener("resize",this.debouncedResize,{passive:true})}disconnectedCallback(){window.removeEventListener("scroll",this.throttledScroll);window.removeEventListener("resize",this.debouncedResize);c()}async componentWillLoad(){try{h.projectId=this.project;h.environment=this.environment;if(this.language!==undefined)h.currentLanguage=this.language;h.languageSwitchOverrides=typeof this.languageSwitchOverrides==="string"?JSON.parse(this.languageSwitchOverrides):this.languageSwitchOverrides;h.osFlyoutOverrides=typeof this.osFlyoutOverrides==="string"?JSON.parse(this.osFlyoutOverrides):this.osFlyoutOverrides;if(this.customConfig!==undefined&&h.currentLanguage!==null){h.localizedCustomConfig=I(this.customConfig,h.currentLanguage)}h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides})}catch(t){console.error(t)}}componentDidLoad(){window.requestAnimationFrame((()=>{this.handleResize();this.headerLoaded.emit();this.host.classList.add("header-loaded")}))}async handleLanguageChange(t){h.currentLanguage=t;h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:t,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides});if(this.customConfig)h.localizedCustomConfig=I(this.customConfig,t)}handleAvailableLanguagesChage(t){h.languageSwitchOverrides=typeof t==="string"?JSON.parse(t):t}async handleOsFlyoutOverrides(t){h.osFlyoutOverrides=typeof t==="string"?JSON.parse(t):t;h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides})}async handleActiveRouteChange(t){h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:t,localizedCustomConfig:h.localizedCustomConfig,osFlyoutOverrides:h.osFlyoutOverrides})}async handleCustomConfigChange(t){if(this.language===undefined)return;const e=I(t,this.language);h.localizedCustomConfig=e;h.localizedConfig=await O({projectId:this.project,environment:this.environment,language:this.language,cookieKey:this.languageCookieKey,localStorageKey:this.languageLocalStorageKey,activeRouteProp:this.activeRoute,localizedCustomConfig:e,osFlyoutOverrides:h.osFlyoutOverrides})}handleSearchChange(t){h.search=t}handleLoginChange(t){h.login=t}handleMetaChange(t){h.meta=t}handleLanguageChangeEvent(t){this.handleLanguageChange(t.detail)}handleClickOutside(t){if(this.activeDropdownElement&&!t.composedPath().includes(this.activeDropdownElement)){this.activeDropdownElement.toggleDropdown(false)}}handleKeyUp(t){if(t.key==="Escape"){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.toggleDropdown(false)}}}handleScrollEvent(){const t=window.scrollY||document.documentElement.scrollTop;if(this.stickyness==="minimal"){this.host.classList.toggle("scrolling-up",t<=this.lastScrollTop)}this.lastScrollTop=t<=0?0:t}handleResize(){var t;if(this.isMainNavOpen()&&this.lastWindowWidth<1024&&window.innerWidth>=1024){(t=this.activeDropdownElement)===null||t===void 0?void 0:t.toggleDropdown(false)}this.lastWindowWidth=window.innerWidth}handleDropdownToggled(t){if(!t.detail.open&&this.activeDropdownElement!==t.detail.element){return}if(t.detail.open===true){if(this.activeDropdownElement){this.activeDropdownElement.toggleDropdown(false)}this.activeDropdownElement=t.detail.element;if(window.innerWidth>=1024){window.setTimeout((()=>{window.addEventListener("click",this.handleClickOutsideBound)}),10)}if(this.activeFlyout!==null&&this.mainNav){this.mainNav.setActiveFlyout(null)}}else{this.activeDropdownElement=null;window.removeEventListener("click",this.handleClickOutsideBound)}}handleFlyoutToggled(t){this.activeFlyout=t.detail;if(this.activeDropdownElement&&t.detail&&!this.isMainNavOpen()){this.activeDropdownElement.toggleDropdown(false)}}toggleMobileDropdown(){var t;(t=this.mainNav)===null||t===void 0?void 0:t.toggleDropdown()}isMainNavOpen(){return this.activeDropdownElement&&this.activeDropdownElement.tagName==="POST-MAIN-NAVIGATION"}render(){var t,e,o;if(!((t=h.localizedConfig)===null||t===void 0?void 0:t.header)){console.error(new Error("Internet Header: Config cannot be loaded"));return}const s=h.localizedConfig;const a=this.meta&&s.header.navMeta!==undefined&&((e=s.header.navMeta)===null||e===void 0?void 0:e.filter((t=>!t.isHomeLink)).length)>0;const r=((o=this.login)!==null&&o!==void 0?o:!s.header.isLoginWidgetHidden)&&s.header.loginWidgetOptions;const l=s.header.navLang.length>1;return i(n,{class:`stickyness-${this.stickyness} ${this.activeDropdownElement||this.activeFlyout?"dropdown-open":""}`,"data-version":B.version,onKeyup:t=>this.handleKeyUp(t)},i("header",{class:`post-internet-header${this.fullWidth?" full-width":""}`},i(u,null),i(p,{condition:this.skiplinks===true},i("post-skiplinks",null)),i(p,{condition:a===true},i("post-meta-navigation",{orientation:"horizontal",class:"hidden-lg","full-width":this.fullWidth},i(p,{condition:l===true},i("post-language-switch",{id:"post-language-switch-desktop",mode:"dropdown",onDropdownToggled:t=>this.handleDropdownToggled(t)})))),i("div",{class:"main-navigation-container wide-container"},i("post-logo",null),i("button",{class:"menu-button nav-link",onClick:()=>this.toggleMobileDropdown()},i("span",{class:"menu-button-text visually-hidden"},s.header.mobileMenu.text),i(f,{name:this.isMainNavOpen()?"pi-close":"pi-menu"})),i("post-main-navigation",{onDropdownToggled:t=>this.handleDropdownToggled(t),onFlyoutToggled:t=>this.handleFlyoutToggled(t),ref:t=>this.mainNav=t},i(p,{condition:a===true},i("post-meta-navigation",{orientation:"vertical"},i(p,{condition:l===true},i("post-language-switch",{id:"post-language-switch-mobile",mode:"list"}))))),i("div",{class:"main-navigation-controls"},i(p,{condition:this.search!==false},i("post-search",{onDropdownToggled:t=>this.handleDropdownToggled(t)})),i(p,{condition:!!r},i("post-klp-login-widget",null,i("slot",{name:"login-widget"}))),i(p,{condition:a===false&&l===true},i("post-language-switch",{id:"post-language-switch-no-meta",onDropdownToggled:t=>this.handleDropdownToggled(t),mode:"dropdown"})),i("slot",{name:"main"})))))}get host(){return o(this)}static get watchers(){return{language:["handleLanguageChange"],languageSwitchOverrides:["handleAvailableLanguagesChage"],osFlyoutOverrides:["handleOsFlyoutOverrides"],activeRoute:["handleActiveRouteChange"],customConfig:["handleCustomConfigChange"],search:["handleSearchChange"],login:["handleLoginChange"],meta:["handleMetaChange"]}}};Z.style=X;export{Z as swisspost_internet_header};
2
+ //# sourceMappingURL=p-7709ed5c.entry.js.map
@@ -1,2 +1,2 @@
1
- import{h as i,r as t,c as n,H as e,g as o}from"./p-5032057e.js";import{t as a}from"./p-69c64c29.js";import{c as s,d as l,e as r}from"./p-a119b38d.js";import{s as d}from"./p-06649b46.js";import{u as f}from"./p-45db66a6.js";import{S as m}from"./p-f7c0cf7b.js";import{S as h}from"./p-ab1dd269.js";const u=t=>{var n,e,o;const a=t.level.url?"a":"button";return i(a,{class:{"main-link":true,active:!!t.level.isActiveOverride,focus:t.isOpen},href:t.level.url,title:((n=t.level.title)===null||n===void 0?void 0:n.trim())&&((e=t.level.title)===null||e===void 0?void 0:e.trim())!==((o=t.level.text)===null||o===void 0?void 0:o.trim())?t.level.title:undefined,tabindex:t.level.url?undefined:0,"aria-haspopup":!t.level.noFlyout+"","aria-expanded":t.level.noFlyout?null:t.isOpen+"",onTouchEnd:i=>t.onTouchEnd(i),onKeyDown:i=>t.onKeyDown(i),onClick:i=>t.onClick(i)},i("span",null,t.level.text),i("svg",{"aria-hidden":"true"},i("use",{href:"#pi-pointy-arrow-right"})))};const c='.flyout-nav,.flyout-column h3{font-size:0.9375rem;line-height:1.4}@media (min-width: 600px){.flyout-nav,.flyout-column h3{font-size:1rem}}@media (min-width: 1024px){.flyout-nav,.flyout-column h3{font-size:1.0625rem}}.flyout-title{font-size:1.0625rem;line-height:1.4}@media (min-width: 600px){.flyout-title{font-size:1.25rem}}@media (min-width: 1024px){.flyout-title{font-size:1.5rem;line-height:1.1}}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.main-container,.flyout-linklist,.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.main-link,.flyout-close-button,.flyout-link,.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.main-link:hover,.flyout-close-button:hover,.flyout-link:hover,.nav-link:hover,.main-link:focus,.flyout-close-button:focus,.flyout-link:focus,.nav-link:focus{color:black}.main-link>svg,.flyout-close-button>svg,.flyout-link>svg,.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.main-link>span,.flyout-close-button>span,.flyout-link>span,.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{--host-window-height:var(--window-height, 100vh);--calculated-header-height:calc(var(--header-height) + 1px);display:block;min-width:0;height:var(--header-height)}:host(.no-animation) *{-webkit-animation:none !important;animation:none !important;-webkit-transition:none !important;transition:none !important}@media (min-width: 1024px){.main-navigation,.main-container,.main-container li,.main-link{height:100%}}.main-navigation{font-size:1.125rem}@media (min-width: 1024px){.main-navigation{font-size:1rem}}@media (min-width: 1280px){.main-navigation{margin:0 0.75rem;font-size:1.125rem}}@media (min-width: 1441px){.main-navigation{font-size:1.25rem}}@media (max-width: 1023.98px){.main-navigation{position:absolute;top:var(--calculated-header-height);left:0;background:white;height:calc(var(--host-window-height) - var(--calculated-header-height));width:100%;margin:0;overflow:hidden scroll;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;z-index:-1;visibility:hidden;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:visibility 0.35s, -webkit-transform 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s;transition:transform 0.35s, visibility 0.35s;transition:transform 0.35s, visibility 0.35s, -webkit-transform 0.35s}}@media (max-width: 1023.98px) and (prefers-reduced-motion: reduce){.main-navigation{-webkit-transition:none;transition:none}}@media (max-width: 1023.98px){.main-navigation.open{-webkit-transform:translateY(0);transform:translateY(0);visibility:visible}}.main-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:start;justify-content:flex-start}@media (max-width: 1023.98px){.main-container{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:start;justify-content:flex-start;padding-top:2.5rem;padding-bottom:2.5rem}.main-container>li+li{border-top:1px solid #e6e6e6}}@media (min-width: 1024px){.main-container{padding-right:0;padding-left:0}}.main-container>li{-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}.main-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-right:0.75rem;padding-left:0.75rem;text-align:left;cursor:pointer;width:100%}@media (min-width: 1024px){.main-link svg{display:none}}@media (max-width: 1023.98px){.main-link{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;font-weight:300;padding:0.625rem 0;width:100%;text-align:left}.main-link svg{width:1.5rem;height:1.5rem}}.main-link span{overflow:hidden;text-overflow:ellipsis}.main-link,.flyout-link{position:relative;color:black}.main-link::after,.flyout-link::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:4px;background-color:transparent;opacity:0;-webkit-transform:scaleX(0.8);transform:scaleX(0.8);-webkit-transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1)}@media (prefers-reduced-motion: reduce){.main-link::after,.flyout-link::after{-webkit-transition:none;transition:none}}.main-link:hover::after,.main-link.focus::after,.flyout-link:hover::after,.flyout-link.focus::after{background-color:#cccccc;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.main-link.active,.flyout-link.active{font-weight:700}.main-link.active::after,.flyout-link.active::after{background-color:#fc0;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.flyout{left:0;width:100%;background:white;padding-bottom:3rem;overflow:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;visibility:hidden}@media (min-width: 1024px){.flyout{position:absolute;top:100%;max-height:calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);z-index:-1;-webkit-box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.flyout.open{-webkit-box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(0);transform:translateY(0)}}@media (max-width: 1023.98px){.flyout{position:fixed;top:0;height:100%;z-index:1;-webkit-transform:translateX(100%);transform:translateX(100%)}.flyout.open{-webkit-transform:translateX(0);transform:translateX(0)}}.flyout.open{visibility:visible}.flyout.animate{-webkit-transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s}@media (prefers-reduced-motion: reduce){.flyout.animate{-webkit-transition:none;transition:none}}.flyout-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;min-height:3.5rem;-webkit-box-sizing:content-box;box-sizing:content-box}.flyout-row{display:-ms-flexbox;display:flex;gap:1.5rem}@media (max-width: 1023.98px){.flyout-row{display:grid;grid-template-columns:1fr 1fr}}@media (max-width: 599.98px){.flyout-row{grid-template-columns:1fr}}.flyout-column{-ms-flex:1;flex:1;max-width:25%}@media (max-width: 1023.98px){.flyout-column{max-width:none}}.flyout-column h3{margin-top:0}.flyout-back-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:1rem;font-weight:400;cursor:pointer}@media (max-width: 599.98px){.flyout-back-button{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.flyout-back-button{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.flyout-back-button{padding-right:40px;padding-left:40px}}.flyout-back-button svg{width:1.5rem;height:1.5rem}@media (min-width: 1024px){.flyout-back-button{display:none}}.flyout-close-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-left:auto;padding:0 1.5rem;cursor:pointer}.flyout-close-button svg{width:1.5rem;height:1.5rem}@media (max-width: 1023.98px){.flyout-close-button{display:none}}.flyout-linklist li{border-top:1px solid #e6e6e6}.flyout-linklist:first-child>li{border-top-color:transparent}.flyout-link{display:block;padding:0.75rem 0}.flyout-title{margin:2.5rem 0 1.5rem 0}@media (min-width: 1024px){.flyout-title{display:none}}';const p=class{constructor(i){t(this,i);this.dropdownToggled=n(this,"dropdownToggled",7);this.flyoutToggled=n(this,"flyoutToggled",7);this.resizeTimer=null;this.mouseLeaveTimer=null;this.mouseEnterTimer=null;this.activeFlyout=undefined;this.mobileMenuOpen=undefined}connectedCallback(){this.throttledResize=a(300,(()=>this.handleResize()));window.addEventListener("resize",this.throttledResize,{passive:true});this.setWindowHeight()}disconnectedCallback(){window.removeEventListener("resize",this.throttledResize);s();if(this.mouseEnterTimer!==null)window.clearTimeout(this.mouseEnterTimer);if(this.mouseLeaveTimer!==null)window.clearTimeout(this.mouseLeaveTimer)}handleResize(){this.host.classList.add("no-animation");if(this.resizeTimer!==null)window.clearTimeout(this.resizeTimer);this.resizeTimer=window.setTimeout((()=>{this.host.classList.remove("no-animation")}),300);this.setWindowHeight()}setWindowHeight(){if(!this.host){return}this.host.style.setProperty("--window-height",`${window.innerHeight}px`);window.setTimeout((()=>{this.host.style.setProperty("--window-height",`${window.innerHeight}px`)}),100)}openFlyout(i){var t;const n=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.getElementById(i);if(n&&this.activeFlyout!==""){this.addFlyoutAnimation(n)}this.activeFlyout=i;this.flyoutToggled.emit(i);this.setWindowHeight();if(this.mouseLeaveTimer!==null){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}}closeFlyout(i){var t;if(i===undefined)return;const n=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.getElementById(i);if(n){this.addFlyoutAnimation(n)}this.activeFlyout=null;this.flyoutToggled.emit()}addFlyoutAnimation(i){if(!f()){i.classList.add("animate");i.addEventListener("transitionend",(()=>this.removeFlyoutAnimation(i)),{once:true})}}removeFlyoutAnimation(i){i.classList.remove("animate")}isActiveFlyout(i){return i===this.activeFlyout}handleMouseEnter(i){if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer);this.mouseEnterTimer=null}if(this.mouseLeaveTimer&&this.activeFlyout===i.id){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}if(window.innerWidth>=1024&&i.flyout.length>0&&this.activeFlyout!==i.id){this.mouseEnterTimer=window.setTimeout((()=>{this.mouseEnterTimer=null;if(i.id!==undefined)this.openFlyout(i.id)}),200)}}handleMouseLeave(i){if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer)}if(this.activeFlyout&&this.activeFlyout!==i.id){return}if(window.innerWidth>=1024&&i.flyout.length>0){this.mouseLeaveTimer=window.setTimeout((()=>{this.closeFlyout(i.id)}),300)}}handleTouchEnd(i,t){if(!this.isActiveFlyout(t.id)&&!t.noFlyout){if(i.cancelable)i.preventDefault();if(t.id)this.openFlyout(t.id)}}handleKeyPress(i,t){if(i.key==="Enter"&&!this.isActiveFlyout(t.id)&&!t.noFlyout){i.preventDefault();if(t.id)this.openFlyout(t.id)}}handleClick(i,t){if(!this.isActiveFlyout(t.id)&&!t.noFlyout){i.preventDefault();if(t.id)this.openFlyout(t.id)}}setBodyScroll(){if(this.mobileMenuOpen){l(this.flyoutElement)}else{r(this.flyoutElement)}}async toggleDropdown(i){this.mobileMenuOpen=i===undefined?!this.mobileMenuOpen:i;this.dropdownToggled.emit({open:this.mobileMenuOpen,element:this.host});if(i===false){this.closeFlyout()}this.setBodyScroll();this.setWindowHeight();return this.mobileMenuOpen}async setFocus(){var i;const t=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.querySelector(".main-link");if(t){t.focus()}}async setActiveFlyout(i){this.activeFlyout=i;this.flyoutToggled.emit(this.activeFlyout)}render(){var t;if(((t=d.localizedConfig)===null||t===void 0?void 0:t.header)===undefined)return;const n=d.localizedConfig.header;return i(e,null,i(m,null),i("nav",{id:"post-internet-header-main-navigation",class:{"main-navigation":true,open:this.mobileMenuOpen},ref:i=>this.flyoutElement=i},i("h2",{class:"visually-hidden"},n.translations.navMainAriaLabel),i("ul",{class:"main-container container"},n.navMain.map((t=>i("li",{key:t.text,onMouseLeave:()=>this.handleMouseLeave(t),onMouseEnter:()=>this.handleMouseEnter(t)},i(u,{level:t,isOpen:this.isActiveFlyout(t.id),onTouchEnd:i=>this.handleTouchEnd(i,t),onKeyDown:i=>this.handleKeyPress(i,t),onClick:i=>this.handleClick(i,t)}),!t.noFlyout?i("div",{id:t.id,class:{flyout:true,open:this.isActiveFlyout(t.id)}},i("div",{class:"wide-container"},i("div",{class:"flyout-nav"},i("button",{class:"nav-link flyout-back-button",onClick:()=>this.closeFlyout(t.id)},i(h,{name:"pi-pointy-arrow-right",classNames:"mirrored"}),i("span",null,n.translations.backButtonText)),i("button",{class:"flyout-close-button",onClick:()=>this.closeFlyout(t.id)},i("span",{class:"visually-hidden"},n.translations.mobileNavToggleClose),i(h,{name:"pi-close"}))),i("h2",{class:"flyout-title container"},i("a",{href:t.url,class:"nav-link"},t.text)),i("div",{class:"flyout-row container"},t.flyout.map((t=>i("div",{key:t.title,class:"flyout-column"},t.title?i("h3",null,t.title):null,i("ul",{class:"flyout-linklist"},t.linkList.map((t=>i("li",{key:t.url},i("a",{class:{"flyout-link":true,active:!!(t===null||t===void 0?void 0:t.isActiveOverride)},href:t.url,target:t.target},t.title))))))))))):null)))),i("slot",null)))}get host(){return o(this)}};p.style=c;export{p as post_main_navigation};
2
- //# sourceMappingURL=p-95b81c4d.entry.js.map
1
+ import{h as i,r as t,c as n,H as e,g as o}from"./p-5032057e.js";import{t as a}from"./p-69c64c29.js";import{c as s,d as l,e as r}from"./p-a119b38d.js";import{s as d}from"./p-06649b46.js";import{u as f}from"./p-45db66a6.js";import{S as m}from"./p-f7c0cf7b.js";import{S as h}from"./p-ab1dd269.js";const u=t=>{var n,e,o;const a=t.level.url?"a":"button";return i(a,{class:{"main-link":true,active:!!t.level.isActiveOverride,focus:t.isOpen},href:t.level.url,title:((n=t.level.title)===null||n===void 0?void 0:n.trim())&&((e=t.level.title)===null||e===void 0?void 0:e.trim())!==((o=t.level.text)===null||o===void 0?void 0:o.trim())?t.level.title:undefined,tabindex:t.level.url?undefined:0,"aria-haspopup":!t.level.noFlyout+"","aria-expanded":t.level.noFlyout?null:t.isOpen+"",onTouchEnd:i=>t.onTouchEnd(i),onKeyDown:i=>t.onKeyDown(i),onClick:i=>t.onClick(i)},i("span",null,t.level.text),i("svg",{"aria-hidden":"true"},i("use",{href:"#pi-pointy-arrow-right"})))};const c='.flyout-nav,.flyout-column h3{font-size:0.9375rem;line-height:1.4}@media (min-width: 600px){.flyout-nav,.flyout-column h3{font-size:1rem}}@media (min-width: 1024px){.flyout-nav,.flyout-column h3{font-size:1.0625rem}}.flyout-title{font-size:1.0625rem;line-height:1.4}@media (min-width: 600px){.flyout-title{font-size:1.25rem}}@media (min-width: 1024px){.flyout-title{font-size:1.5rem;line-height:1.1}}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.main-container,.flyout-linklist,.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.main-link,.flyout-close-button,.flyout-link,.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.main-link:hover,.flyout-close-button:hover,.flyout-link:hover,.nav-link:hover,.main-link:focus,.flyout-close-button:focus,.flyout-link:focus,.nav-link:focus{color:black}.main-link>svg,.flyout-close-button>svg,.flyout-link>svg,.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.main-link>span,.flyout-close-button>span,.flyout-link>span,.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{--host-window-height:var(--window-height, 100vh);--calculated-header-height:calc(var(--header-height) + 1px);display:block;min-width:0;height:var(--header-height)}:host(.no-animation) *{-webkit-animation:none !important;animation:none !important;-webkit-transition:none !important;transition:none !important}@media (min-width: 1024px){.main-navigation,.main-container,.main-container li,.main-link{height:100%}}.main-navigation{font-size:1.125rem}@media (min-width: 1024px){.main-navigation{font-size:1rem;margin:0 0.75rem}}@media (min-width: 1280px){.main-navigation{font-size:1.125rem}}@media (min-width: 1441px){.main-navigation{font-size:1.25rem}}@media (max-width: 1023.98px){.main-navigation{position:absolute;top:var(--calculated-header-height);left:0;background:white;height:calc(var(--host-window-height) - var(--calculated-header-height));width:100%;margin:0;overflow:hidden scroll;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;z-index:-1;visibility:hidden;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:visibility 0.35s, -webkit-transform 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s;transition:transform 0.35s, visibility 0.35s;transition:transform 0.35s, visibility 0.35s, -webkit-transform 0.35s}}@media (max-width: 1023.98px) and (prefers-reduced-motion: reduce){.main-navigation{-webkit-transition:none;transition:none}}@media (max-width: 1023.98px){.main-navigation.open{-webkit-transform:translateY(0);transform:translateY(0);visibility:visible}}.main-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:start;justify-content:flex-start}@media (max-width: 1023.98px){.main-container{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:start;justify-content:flex-start;padding-top:2.5rem;padding-bottom:2.5rem}.main-container>li+li{border-top:1px solid #e6e6e6}}@media (min-width: 1024px){.main-container{padding-right:0;padding-left:0}}.main-container>li{-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}.main-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-right:0.75rem;padding-left:0.75rem;text-align:left;cursor:pointer;width:100%}@media (min-width: 1024px){.main-link svg{display:none}}@media (max-width: 1023.98px){.main-link{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;font-weight:300;padding:0.625rem 0;width:100%;text-align:left}.main-link svg{width:1.5rem;height:1.5rem}}.main-link span{overflow:hidden;text-overflow:ellipsis}.main-link,.flyout-link{position:relative;color:black}.main-link::after,.flyout-link::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:4px;background-color:transparent;opacity:0;-webkit-transform:scaleX(0.8);transform:scaleX(0.8);-webkit-transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1)}@media (prefers-reduced-motion: reduce){.main-link::after,.flyout-link::after{-webkit-transition:none;transition:none}}.main-link:hover::after,.main-link.focus::after,.flyout-link:hover::after,.flyout-link.focus::after{background-color:#cccccc;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.main-link.active,.flyout-link.active{font-weight:700}.main-link.active::after,.flyout-link.active::after{background-color:#fc0;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.flyout{left:0;width:100%;background:white;padding-bottom:3rem;overflow:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;visibility:hidden}@media (min-width: 1024px){.flyout{position:absolute;top:100%;max-height:calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);z-index:-1;-webkit-box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.flyout.open{-webkit-box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(0);transform:translateY(0)}}@media (max-width: 1023.98px){.flyout{position:fixed;top:0;height:100%;z-index:1;-webkit-transform:translateX(100%);transform:translateX(100%)}.flyout.open{-webkit-transform:translateX(0);transform:translateX(0)}}.flyout.open{visibility:visible}.flyout.animate{-webkit-transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s}@media (prefers-reduced-motion: reduce){.flyout.animate{-webkit-transition:none;transition:none}}.flyout-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;min-height:3.5rem;-webkit-box-sizing:content-box;box-sizing:content-box}.flyout-row{display:-ms-flexbox;display:flex;gap:1.5rem}@media (max-width: 1023.98px){.flyout-row{display:grid;grid-template-columns:1fr 1fr}}@media (max-width: 599.98px){.flyout-row{grid-template-columns:1fr}}.flyout-column{-ms-flex:1;flex:1;max-width:25%}@media (max-width: 1023.98px){.flyout-column{max-width:none}}.flyout-column h3{margin-top:0}.flyout-back-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:1rem;font-weight:400;cursor:pointer}@media (max-width: 599.98px){.flyout-back-button{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.flyout-back-button{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.flyout-back-button{padding-right:40px;padding-left:40px}}.flyout-back-button svg{width:1.5rem;height:1.5rem}@media (min-width: 1024px){.flyout-back-button{display:none}}.flyout-close-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-left:auto;padding:0 1.5rem;cursor:pointer}.flyout-close-button svg{width:1.5rem;height:1.5rem}@media (max-width: 1023.98px){.flyout-close-button{display:none}}.flyout-linklist li{border-top:1px solid #e6e6e6}.flyout-linklist:first-child>li{border-top-color:transparent}.flyout-link{display:block;padding:0.75rem 0}.flyout-title{margin:2.5rem 0 1.5rem 0}@media (min-width: 1024px){.flyout-title{display:none}}';const p=class{constructor(i){t(this,i);this.dropdownToggled=n(this,"dropdownToggled",7);this.flyoutToggled=n(this,"flyoutToggled",7);this.resizeTimer=null;this.mouseLeaveTimer=null;this.mouseEnterTimer=null;this.activeFlyout=undefined;this.mobileMenuOpen=undefined}connectedCallback(){this.throttledResize=a(300,(()=>this.handleResize()));window.addEventListener("resize",this.throttledResize,{passive:true});this.setWindowHeight()}disconnectedCallback(){window.removeEventListener("resize",this.throttledResize);s();if(this.mouseEnterTimer!==null)window.clearTimeout(this.mouseEnterTimer);if(this.mouseLeaveTimer!==null)window.clearTimeout(this.mouseLeaveTimer)}handleResize(){this.host.classList.add("no-animation");if(this.resizeTimer!==null)window.clearTimeout(this.resizeTimer);this.resizeTimer=window.setTimeout((()=>{this.host.classList.remove("no-animation")}),300);this.setWindowHeight()}setWindowHeight(){if(!this.host){return}this.host.style.setProperty("--window-height",`${window.innerHeight}px`);window.setTimeout((()=>{this.host.style.setProperty("--window-height",`${window.innerHeight}px`)}),100)}openFlyout(i){var t;const n=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.getElementById(i);if(n&&this.activeFlyout!==""){this.addFlyoutAnimation(n)}this.activeFlyout=i;this.flyoutToggled.emit(i);this.setWindowHeight();if(this.mouseLeaveTimer!==null){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}}closeFlyout(i){var t;if(i===undefined)return;const n=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.getElementById(i);if(n){this.addFlyoutAnimation(n)}this.activeFlyout=null;this.flyoutToggled.emit()}addFlyoutAnimation(i){if(!f()){i.classList.add("animate");i.addEventListener("transitionend",(()=>this.removeFlyoutAnimation(i)),{once:true})}}removeFlyoutAnimation(i){i.classList.remove("animate")}isActiveFlyout(i){return i===this.activeFlyout}handleMouseEnter(i){if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer);this.mouseEnterTimer=null}if(this.mouseLeaveTimer&&this.activeFlyout===i.id){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}if(window.innerWidth>=1024&&i.flyout.length>0&&this.activeFlyout!==i.id){this.mouseEnterTimer=window.setTimeout((()=>{this.mouseEnterTimer=null;if(i.id!==undefined)this.openFlyout(i.id)}),200)}}handleMouseLeave(i){if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer)}if(this.activeFlyout&&this.activeFlyout!==i.id){return}if(window.innerWidth>=1024&&i.flyout.length>0){this.mouseLeaveTimer=window.setTimeout((()=>{this.closeFlyout(i.id)}),300)}}handleTouchEnd(i,t){if(!this.isActiveFlyout(t.id)&&!t.noFlyout){if(i.cancelable)i.preventDefault();if(t.id)this.openFlyout(t.id)}}handleKeyPress(i,t){if(i.key==="Enter"&&!this.isActiveFlyout(t.id)&&!t.noFlyout){i.preventDefault();if(t.id)this.openFlyout(t.id)}}handleClick(i,t){if(!this.isActiveFlyout(t.id)&&!t.noFlyout){i.preventDefault();if(t.id)this.openFlyout(t.id)}}setBodyScroll(){if(this.mobileMenuOpen){l(this.flyoutElement)}else{r(this.flyoutElement)}}async toggleDropdown(i){this.mobileMenuOpen=i===undefined?!this.mobileMenuOpen:i;this.dropdownToggled.emit({open:this.mobileMenuOpen,element:this.host});if(i===false){this.closeFlyout()}this.setBodyScroll();this.setWindowHeight();return this.mobileMenuOpen}async setFocus(){var i;const t=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.querySelector(".main-link");if(t){t.focus()}}async setActiveFlyout(i){this.activeFlyout=i;this.flyoutToggled.emit(this.activeFlyout)}render(){var t;if(((t=d.localizedConfig)===null||t===void 0?void 0:t.header)===undefined)return;const n=d.localizedConfig.header;return i(e,null,i(m,null),i("nav",{id:"post-internet-header-main-navigation",class:{"main-navigation":true,open:this.mobileMenuOpen},ref:i=>this.flyoutElement=i},i("h2",{class:"visually-hidden"},n.translations.navMainAriaLabel),i("ul",{class:"main-container container"},n.navMain.map((t=>i("li",{key:t.text,onMouseLeave:()=>this.handleMouseLeave(t),onMouseEnter:()=>this.handleMouseEnter(t)},i(u,{level:t,isOpen:this.isActiveFlyout(t.id),onTouchEnd:i=>this.handleTouchEnd(i,t),onKeyDown:i=>this.handleKeyPress(i,t),onClick:i=>this.handleClick(i,t)}),!t.noFlyout?i("div",{id:t.id,class:{flyout:true,open:this.isActiveFlyout(t.id)}},i("div",{class:"wide-container"},i("div",{class:"flyout-nav"},i("button",{class:"nav-link flyout-back-button",onClick:()=>this.closeFlyout(t.id)},i(h,{name:"pi-pointy-arrow-right",classNames:"mirrored"}),i("span",null,n.translations.backButtonText)),i("button",{class:"flyout-close-button",onClick:()=>this.closeFlyout(t.id)},i("span",{class:"visually-hidden"},n.translations.mobileNavToggleClose),i(h,{name:"pi-close"}))),i("h2",{class:"flyout-title container"},i("a",{href:t.url,class:"nav-link"},t.text)),i("div",{class:"flyout-row container"},t.flyout.map((t=>i("div",{key:t.title,class:"flyout-column"},t.title?i("h3",null,t.title):null,i("ul",{class:"flyout-linklist"},t.linkList.map((t=>i("li",{key:t.url},i("a",{class:{"flyout-link":true,active:!!(t===null||t===void 0?void 0:t.isActiveOverride)},href:t.url,target:t.target},t.title))))))))))):null)))),i("slot",null)))}get host(){return o(this)}};p.style=c;export{p as post_main_navigation};
2
+ //# sourceMappingURL=p-d33734b5.entry.js.map
@@ -1 +1 @@
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","postMainNavigationCss","PostMainNavigation","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","connectedCallback","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","userPrefersReducedMotion","removeFlyoutAnimation","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","setBodyScroll","mobileMenuOpen","disableBodyScroll","flyoutElement","enableBodyScroll","async","force","dropdownToggled","open","element","firstLink","querySelector","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","ref","el","translations","navMainAriaLabel","navMain","map","levelOne","onMouseLeave","onMouseEnter","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","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';\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 <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 '../../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}\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 }\n\n @include mixins.min(xl) {\n margin: 0 0.75rem;\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 }\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\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, Host, h, State, Method, Event, Element, EventEmitter } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\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 { 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 private flyoutElement: HTMLElement | undefined;\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 clearAllBodyScrollLocks();\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);\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) {\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);\n }\n\n this.activeFlyout = null;\n this.flyoutToggled.emit();\n }\n\n addFlyoutAnimation(flyout: HTMLElement) {\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('transitionend', () => this.removeFlyoutAnimation(flyout), {\n once: true,\n });\n }\n }\n\n removeFlyoutAnimation(flyout: HTMLElement) {\n flyout.classList.remove('animate');\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);\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 * Disable or re-enable body scrolling, depending on whether mobile menu is open or closed\n */\n setBodyScroll() {\n if (this.mobileMenuOpen) {\n disableBodyScroll(this.flyoutElement);\n } else {\n enableBodyScroll(this.flyoutElement);\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.setBodyScroll();\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 id=\"post-internet-header-main-navigation\"\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\n ref={el => (this.flyoutElement = el)}\n >\n <h2 class=\"visually-hidden\">{headerConfig.translations.navMainAriaLabel}</h2>\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 ? (\n <div\n id={levelOne.id}\n class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}\n >\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\n class=\"flyout-close-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <span class=\"visually-hidden\">\n {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 => (\n <div key={flyout.title} class=\"flyout-column\">\n {flyout.title ? <h3>{flyout.title}</h3> : null}\n <ul class=\"flyout-linklist\">\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 </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </div>\n </div>\n ) : null}\n </li>\n ))}\n </ul>\n <slot></slot>\n </nav>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
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","postMainNavigationCss","PostMainNavigation","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","connectedCallback","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","userPrefersReducedMotion","removeFlyoutAnimation","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","setBodyScroll","mobileMenuOpen","disableBodyScroll","flyoutElement","enableBodyScroll","async","force","dropdownToggled","open","element","firstLink","querySelector","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","ref","el","translations","navMainAriaLabel","navMain","map","levelOne","onMouseLeave","onMouseEnter","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","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';\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 <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 '../../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}\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 }\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\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, Host, h, State, Method, Event, Element, EventEmitter } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\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 { 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 private flyoutElement: HTMLElement | undefined;\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 clearAllBodyScrollLocks();\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);\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) {\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);\n }\n\n this.activeFlyout = null;\n this.flyoutToggled.emit();\n }\n\n addFlyoutAnimation(flyout: HTMLElement) {\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('transitionend', () => this.removeFlyoutAnimation(flyout), {\n once: true,\n });\n }\n }\n\n removeFlyoutAnimation(flyout: HTMLElement) {\n flyout.classList.remove('animate');\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);\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 * Disable or re-enable body scrolling, depending on whether mobile menu is open or closed\n */\n setBodyScroll() {\n if (this.mobileMenuOpen) {\n disableBodyScroll(this.flyoutElement);\n } else {\n enableBodyScroll(this.flyoutElement);\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.setBodyScroll();\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 id=\"post-internet-header-main-navigation\"\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\n ref={el => (this.flyoutElement = el)}\n >\n <h2 class=\"visually-hidden\">{headerConfig.translations.navMainAriaLabel}</h2>\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 ? (\n <div\n id={levelOne.id}\n class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}\n >\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\n class=\"flyout-close-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <span class=\"visually-hidden\">\n {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 => (\n <div key={flyout.title} class=\"flyout-column\">\n {flyout.title ? <h3>{flyout.title}</h3> : null}\n <ul class=\"flyout-linklist\">\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 </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </div>\n </div>\n ) : null}\n </li>\n ))}\n </ul>\n <slot></slot>\n </nav>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var __awaiter=this&&this.__awaiter||function(t,i,e,n){function o(t){return t instanceof e?t:new e((function(i){i(t)}))}return new(e||(e=Promise))((function(e,r){function a(t){try{s(n.next(t))}catch(t){r(t)}}function l(t){try{s(n["throw"](t))}catch(t){r(t)}}function s(t){t.done?e(t.value):o(t.value).then(a,l)}s((n=n.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var e={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},n,o,r,a;return a={next:l(0),throw:l(1),return:l(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function l(t){return function(i){return s([t,i])}}function s(l){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,l[0]&&(e=0)),e)try{if(n=1,o&&(r=l[0]&2?o["return"]:l[0]?o["throw"]||((r=o["return"])&&r.call(o),0):o.next)&&!(r=r.call(o,l[1])).done)return r;if(o=0,r)l=[l[0]&2,r.value];switch(l[0]){case 0:case 1:r=l;break;case 4:e.label++;return{value:l[1],done:false};case 5:e.label++;o=l[1];l=[0];continue;case 7:l=e.ops.pop();e.trys.pop();continue;default:if(!(r=e.trys,r=r.length>0&&r[r.length-1])&&(l[0]===6||l[0]===2)){e=0;continue}if(l[0]===3&&(!r||l[1]>r[0]&&l[1]<r[3])){e.label=l[1];break}if(l[0]===6&&e.label<r[1]){e.label=r[1];r=l;break}if(r&&e.label<r[2]){e.label=r[2];e.ops.push(l);break}if(r[2])e.ops.pop();e.trys.pop();continue}l=i.call(t,e)}catch(t){l=[6,t];o=0}finally{n=r=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:true}}};System.register(["./p-1b8f9bc8.system.js","./p-c8296f63.system.js","./p-b3014611.system.js","./p-7fcba2e7.system.js","./p-88aac12c.system.js","./p-ffc59851.system.js","./p-ee119d2e.system.js"],(function(t){"use strict";var i,e,n,o,r,a,l,s,u,d,f,m,c;return{setters:[function(t){i=t.h;e=t.r;n=t.c;o=t.H;r=t.g},function(t){a=t.t},function(t){l=t.c;s=t.d;u=t.e},function(t){d=t.s},function(t){f=t.u},function(t){m=t.S},function(t){c=t.S}],execute:function(){var h=function(t){var e,n,o;var r=t.level.url?"a":"button";return i(r,{class:{"main-link":true,active:!!t.level.isActiveOverride,focus:t.isOpen},href:t.level.url,title:((e=t.level.title)===null||e===void 0?void 0:e.trim())&&((n=t.level.title)===null||n===void 0?void 0:n.trim())!==((o=t.level.text)===null||o===void 0?void 0:o.trim())?t.level.title:undefined,tabindex:t.level.url?undefined:0,"aria-haspopup":!t.level.noFlyout+"","aria-expanded":t.level.noFlyout?null:t.isOpen+"",onTouchEnd:function(i){return t.onTouchEnd(i)},onKeyDown:function(i){return t.onKeyDown(i)},onClick:function(i){return t.onClick(i)}},i("span",null,t.level.text),i("svg",{"aria-hidden":"true"},i("use",{href:"#pi-pointy-arrow-right"})))};var p='.flyout-nav,.flyout-column h3{font-size:0.9375rem;line-height:1.4}@media (min-width: 600px){.flyout-nav,.flyout-column h3{font-size:1rem}}@media (min-width: 1024px){.flyout-nav,.flyout-column h3{font-size:1.0625rem}}.flyout-title{font-size:1.0625rem;line-height:1.4}@media (min-width: 600px){.flyout-title{font-size:1.25rem}}@media (min-width: 1024px){.flyout-title{font-size:1.5rem;line-height:1.1}}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.main-container,.flyout-linklist,.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.main-link,.flyout-close-button,.flyout-link,.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.main-link:hover,.flyout-close-button:hover,.flyout-link:hover,.nav-link:hover,.main-link:focus,.flyout-close-button:focus,.flyout-link:focus,.nav-link:focus{color:black}.main-link>svg,.flyout-close-button>svg,.flyout-link>svg,.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.main-link>span,.flyout-close-button>span,.flyout-link>span,.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{--host-window-height:var(--window-height, 100vh);--calculated-header-height:calc(var(--header-height) + 1px);display:block;min-width:0;height:var(--header-height)}:host(.no-animation) *{-webkit-animation:none !important;animation:none !important;-webkit-transition:none !important;transition:none !important}@media (min-width: 1024px){.main-navigation,.main-container,.main-container li,.main-link{height:100%}}.main-navigation{font-size:1.125rem}@media (min-width: 1024px){.main-navigation{font-size:1rem}}@media (min-width: 1280px){.main-navigation{margin:0 0.75rem;font-size:1.125rem}}@media (min-width: 1441px){.main-navigation{font-size:1.25rem}}@media (max-width: 1023.98px){.main-navigation{position:absolute;top:var(--calculated-header-height);left:0;background:white;height:calc(var(--host-window-height) - var(--calculated-header-height));width:100%;margin:0;overflow:hidden scroll;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;z-index:-1;visibility:hidden;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:visibility 0.35s, -webkit-transform 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s;transition:transform 0.35s, visibility 0.35s;transition:transform 0.35s, visibility 0.35s, -webkit-transform 0.35s}}@media (max-width: 1023.98px) and (prefers-reduced-motion: reduce){.main-navigation{-webkit-transition:none;transition:none}}@media (max-width: 1023.98px){.main-navigation.open{-webkit-transform:translateY(0);transform:translateY(0);visibility:visible}}.main-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:start;justify-content:flex-start}@media (max-width: 1023.98px){.main-container{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:start;justify-content:flex-start;padding-top:2.5rem;padding-bottom:2.5rem}.main-container>li+li{border-top:1px solid #e6e6e6}}@media (min-width: 1024px){.main-container{padding-right:0;padding-left:0}}.main-container>li{-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}.main-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-right:0.75rem;padding-left:0.75rem;text-align:left;cursor:pointer;width:100%}@media (min-width: 1024px){.main-link svg{display:none}}@media (max-width: 1023.98px){.main-link{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;font-weight:300;padding:0.625rem 0;width:100%;text-align:left}.main-link svg{width:1.5rem;height:1.5rem}}.main-link span{overflow:hidden;text-overflow:ellipsis}.main-link,.flyout-link{position:relative;color:black}.main-link::after,.flyout-link::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:4px;background-color:transparent;opacity:0;-webkit-transform:scaleX(0.8);transform:scaleX(0.8);-webkit-transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1)}@media (prefers-reduced-motion: reduce){.main-link::after,.flyout-link::after{-webkit-transition:none;transition:none}}.main-link:hover::after,.main-link.focus::after,.flyout-link:hover::after,.flyout-link.focus::after{background-color:#cccccc;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.main-link.active,.flyout-link.active{font-weight:700}.main-link.active::after,.flyout-link.active::after{background-color:#fc0;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.flyout{left:0;width:100%;background:white;padding-bottom:3rem;overflow:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;visibility:hidden}@media (min-width: 1024px){.flyout{position:absolute;top:100%;max-height:calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);z-index:-1;-webkit-box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.flyout.open{-webkit-box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(0);transform:translateY(0)}}@media (max-width: 1023.98px){.flyout{position:fixed;top:0;height:100%;z-index:1;-webkit-transform:translateX(100%);transform:translateX(100%)}.flyout.open{-webkit-transform:translateX(0);transform:translateX(0)}}.flyout.open{visibility:visible}.flyout.animate{-webkit-transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s}@media (prefers-reduced-motion: reduce){.flyout.animate{-webkit-transition:none;transition:none}}.flyout-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;min-height:3.5rem;-webkit-box-sizing:content-box;box-sizing:content-box}.flyout-row{display:-ms-flexbox;display:flex;gap:1.5rem}@media (max-width: 1023.98px){.flyout-row{display:grid;grid-template-columns:1fr 1fr}}@media (max-width: 599.98px){.flyout-row{grid-template-columns:1fr}}.flyout-column{-ms-flex:1;flex:1;max-width:25%}@media (max-width: 1023.98px){.flyout-column{max-width:none}}.flyout-column h3{margin-top:0}.flyout-back-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:1rem;font-weight:400;cursor:pointer}@media (max-width: 599.98px){.flyout-back-button{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.flyout-back-button{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.flyout-back-button{padding-right:40px;padding-left:40px}}.flyout-back-button svg{width:1.5rem;height:1.5rem}@media (min-width: 1024px){.flyout-back-button{display:none}}.flyout-close-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-left:auto;padding:0 1.5rem;cursor:pointer}.flyout-close-button svg{width:1.5rem;height:1.5rem}@media (max-width: 1023.98px){.flyout-close-button{display:none}}.flyout-linklist li{border-top:1px solid #e6e6e6}.flyout-linklist:first-child>li{border-top-color:transparent}.flyout-link{display:block;padding:0.75rem 0}.flyout-title{margin:2.5rem 0 1.5rem 0}@media (min-width: 1024px){.flyout-title{display:none}}';var y=t("post_main_navigation",function(){function t(t){e(this,t);this.dropdownToggled=n(this,"dropdownToggled",7);this.flyoutToggled=n(this,"flyoutToggled",7);this.resizeTimer=null;this.mouseLeaveTimer=null;this.mouseEnterTimer=null;this.activeFlyout=undefined;this.mobileMenuOpen=undefined}t.prototype.connectedCallback=function(){var t=this;this.throttledResize=a(300,(function(){return t.handleResize()}));window.addEventListener("resize",this.throttledResize,{passive:true});this.setWindowHeight()};t.prototype.disconnectedCallback=function(){window.removeEventListener("resize",this.throttledResize);l();if(this.mouseEnterTimer!==null)window.clearTimeout(this.mouseEnterTimer);if(this.mouseLeaveTimer!==null)window.clearTimeout(this.mouseLeaveTimer)};t.prototype.handleResize=function(){var t=this;this.host.classList.add("no-animation");if(this.resizeTimer!==null)window.clearTimeout(this.resizeTimer);this.resizeTimer=window.setTimeout((function(){t.host.classList.remove("no-animation")}),300);this.setWindowHeight()};t.prototype.setWindowHeight=function(){var t=this;if(!this.host){return}this.host.style.setProperty("--window-height","".concat(window.innerHeight,"px"));window.setTimeout((function(){t.host.style.setProperty("--window-height","".concat(window.innerHeight,"px"))}),100)};t.prototype.openFlyout=function(t){var i;var e=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.getElementById(t);if(e&&this.activeFlyout!==""){this.addFlyoutAnimation(e)}this.activeFlyout=t;this.flyoutToggled.emit(t);this.setWindowHeight();if(this.mouseLeaveTimer!==null){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}};t.prototype.closeFlyout=function(t){var i;if(t===undefined)return;var e=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.getElementById(t);if(e){this.addFlyoutAnimation(e)}this.activeFlyout=null;this.flyoutToggled.emit()};t.prototype.addFlyoutAnimation=function(t){var i=this;if(!f()){t.classList.add("animate");t.addEventListener("transitionend",(function(){return i.removeFlyoutAnimation(t)}),{once:true})}};t.prototype.removeFlyoutAnimation=function(t){t.classList.remove("animate")};t.prototype.isActiveFlyout=function(t){return t===this.activeFlyout};t.prototype.handleMouseEnter=function(t){var i=this;if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer);this.mouseEnterTimer=null}if(this.mouseLeaveTimer&&this.activeFlyout===t.id){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}if(window.innerWidth>=1024&&t.flyout.length>0&&this.activeFlyout!==t.id){this.mouseEnterTimer=window.setTimeout((function(){i.mouseEnterTimer=null;if(t.id!==undefined)i.openFlyout(t.id)}),200)}};t.prototype.handleMouseLeave=function(t){var i=this;if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer)}if(this.activeFlyout&&this.activeFlyout!==t.id){return}if(window.innerWidth>=1024&&t.flyout.length>0){this.mouseLeaveTimer=window.setTimeout((function(){i.closeFlyout(t.id)}),300)}};t.prototype.handleTouchEnd=function(t,i){if(!this.isActiveFlyout(i.id)&&!i.noFlyout){if(t.cancelable)t.preventDefault();if(i.id)this.openFlyout(i.id)}};t.prototype.handleKeyPress=function(t,i){if(t.key==="Enter"&&!this.isActiveFlyout(i.id)&&!i.noFlyout){t.preventDefault();if(i.id)this.openFlyout(i.id)}};t.prototype.handleClick=function(t,i){if(!this.isActiveFlyout(i.id)&&!i.noFlyout){t.preventDefault();if(i.id)this.openFlyout(i.id)}};t.prototype.setBodyScroll=function(){if(this.mobileMenuOpen){s(this.flyoutElement)}else{u(this.flyoutElement)}};t.prototype.toggleDropdown=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){this.mobileMenuOpen=t===undefined?!this.mobileMenuOpen:t;this.dropdownToggled.emit({open:this.mobileMenuOpen,element:this.host});if(t===false){this.closeFlyout()}this.setBodyScroll();this.setWindowHeight();return[2,this.mobileMenuOpen]}))}))};t.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){var t,i;return __generator(this,(function(e){i=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.querySelector(".main-link");if(i){i.focus()}return[2]}))}))};t.prototype.setActiveFlyout=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){this.activeFlyout=t;this.flyoutToggled.emit(this.activeFlyout);return[2]}))}))};t.prototype.render=function(){var t=this;var e;if(((e=d.localizedConfig)===null||e===void 0?void 0:e.header)===undefined)return;var n=d.localizedConfig.header;return i(o,null,i(m,null),i("nav",{id:"post-internet-header-main-navigation",class:{"main-navigation":true,open:this.mobileMenuOpen},ref:function(i){return t.flyoutElement=i}},i("h2",{class:"visually-hidden"},n.translations.navMainAriaLabel),i("ul",{class:"main-container container"},n.navMain.map((function(e){return i("li",{key:e.text,onMouseLeave:function(){return t.handleMouseLeave(e)},onMouseEnter:function(){return t.handleMouseEnter(e)}},i(h,{level:e,isOpen:t.isActiveFlyout(e.id),onTouchEnd:function(i){return t.handleTouchEnd(i,e)},onKeyDown:function(i){return t.handleKeyPress(i,e)},onClick:function(i){return t.handleClick(i,e)}}),!e.noFlyout?i("div",{id:e.id,class:{flyout:true,open:t.isActiveFlyout(e.id)}},i("div",{class:"wide-container"},i("div",{class:"flyout-nav"},i("button",{class:"nav-link flyout-back-button",onClick:function(){return t.closeFlyout(e.id)}},i(c,{name:"pi-pointy-arrow-right",classNames:"mirrored"}),i("span",null,n.translations.backButtonText)),i("button",{class:"flyout-close-button",onClick:function(){return t.closeFlyout(e.id)}},i("span",{class:"visually-hidden"},n.translations.mobileNavToggleClose),i(c,{name:"pi-close"}))),i("h2",{class:"flyout-title container"},i("a",{href:e.url,class:"nav-link"},e.text)),i("div",{class:"flyout-row container"},e.flyout.map((function(t){return i("div",{key:t.title,class:"flyout-column"},t.title?i("h3",null,t.title):null,i("ul",{class:"flyout-linklist"},t.linkList.map((function(t){return i("li",{key:t.url},i("a",{class:{"flyout-link":true,active:!!(t===null||t===void 0?void 0:t.isActiveOverride)},href:t.url,target:t.target},t.title))}))))}))))):null)}))),i("slot",null)))};Object.defineProperty(t.prototype,"host",{get:function(){return r(this)},enumerable:false,configurable:true});return t}());y.style=p}}}));
2
- //# sourceMappingURL=p-d6539597.system.entry.js.map
1
+ var __awaiter=this&&this.__awaiter||function(t,i,e,n){function o(t){return t instanceof e?t:new e((function(i){i(t)}))}return new(e||(e=Promise))((function(e,r){function a(t){try{s(n.next(t))}catch(t){r(t)}}function l(t){try{s(n["throw"](t))}catch(t){r(t)}}function s(t){t.done?e(t.value):o(t.value).then(a,l)}s((n=n.apply(t,i||[])).next())}))};var __generator=this&&this.__generator||function(t,i){var e={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},n,o,r,a;return a={next:l(0),throw:l(1),return:l(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function l(t){return function(i){return s([t,i])}}function s(l){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,l[0]&&(e=0)),e)try{if(n=1,o&&(r=l[0]&2?o["return"]:l[0]?o["throw"]||((r=o["return"])&&r.call(o),0):o.next)&&!(r=r.call(o,l[1])).done)return r;if(o=0,r)l=[l[0]&2,r.value];switch(l[0]){case 0:case 1:r=l;break;case 4:e.label++;return{value:l[1],done:false};case 5:e.label++;o=l[1];l=[0];continue;case 7:l=e.ops.pop();e.trys.pop();continue;default:if(!(r=e.trys,r=r.length>0&&r[r.length-1])&&(l[0]===6||l[0]===2)){e=0;continue}if(l[0]===3&&(!r||l[1]>r[0]&&l[1]<r[3])){e.label=l[1];break}if(l[0]===6&&e.label<r[1]){e.label=r[1];r=l;break}if(r&&e.label<r[2]){e.label=r[2];e.ops.push(l);break}if(r[2])e.ops.pop();e.trys.pop();continue}l=i.call(t,e)}catch(t){l=[6,t];o=0}finally{n=r=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:true}}};System.register(["./p-1b8f9bc8.system.js","./p-c8296f63.system.js","./p-b3014611.system.js","./p-7fcba2e7.system.js","./p-88aac12c.system.js","./p-ffc59851.system.js","./p-ee119d2e.system.js"],(function(t){"use strict";var i,e,n,o,r,a,l,s,u,d,f,m,c;return{setters:[function(t){i=t.h;e=t.r;n=t.c;o=t.H;r=t.g},function(t){a=t.t},function(t){l=t.c;s=t.d;u=t.e},function(t){d=t.s},function(t){f=t.u},function(t){m=t.S},function(t){c=t.S}],execute:function(){var h=function(t){var e,n,o;var r=t.level.url?"a":"button";return i(r,{class:{"main-link":true,active:!!t.level.isActiveOverride,focus:t.isOpen},href:t.level.url,title:((e=t.level.title)===null||e===void 0?void 0:e.trim())&&((n=t.level.title)===null||n===void 0?void 0:n.trim())!==((o=t.level.text)===null||o===void 0?void 0:o.trim())?t.level.title:undefined,tabindex:t.level.url?undefined:0,"aria-haspopup":!t.level.noFlyout+"","aria-expanded":t.level.noFlyout?null:t.isOpen+"",onTouchEnd:function(i){return t.onTouchEnd(i)},onKeyDown:function(i){return t.onKeyDown(i)},onClick:function(i){return t.onClick(i)}},i("span",null,t.level.text),i("svg",{"aria-hidden":"true"},i("use",{href:"#pi-pointy-arrow-right"})))};var p='.flyout-nav,.flyout-column h3{font-size:0.9375rem;line-height:1.4}@media (min-width: 600px){.flyout-nav,.flyout-column h3{font-size:1rem}}@media (min-width: 1024px){.flyout-nav,.flyout-column h3{font-size:1.0625rem}}.flyout-title{font-size:1.0625rem;line-height:1.4}@media (min-width: 600px){.flyout-title{font-size:1.25rem}}@media (min-width: 1024px){.flyout-title{font-size:1.5rem;line-height:1.1}}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.main-container,.flyout-linklist,.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.main-link,.flyout-close-button,.flyout-link,.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.main-link:hover,.flyout-close-button:hover,.flyout-link:hover,.nav-link:hover,.main-link:focus,.flyout-close-button:focus,.flyout-link:focus,.nav-link:focus{color:black}.main-link>svg,.flyout-close-button>svg,.flyout-link>svg,.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.main-link>span,.flyout-close-button>span,.flyout-link>span,.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{--host-window-height:var(--window-height, 100vh);--calculated-header-height:calc(var(--header-height) + 1px);display:block;min-width:0;height:var(--header-height)}:host(.no-animation) *{-webkit-animation:none !important;animation:none !important;-webkit-transition:none !important;transition:none !important}@media (min-width: 1024px){.main-navigation,.main-container,.main-container li,.main-link{height:100%}}.main-navigation{font-size:1.125rem}@media (min-width: 1024px){.main-navigation{font-size:1rem;margin:0 0.75rem}}@media (min-width: 1280px){.main-navigation{font-size:1.125rem}}@media (min-width: 1441px){.main-navigation{font-size:1.25rem}}@media (max-width: 1023.98px){.main-navigation{position:absolute;top:var(--calculated-header-height);left:0;background:white;height:calc(var(--host-window-height) - var(--calculated-header-height));width:100%;margin:0;overflow:hidden scroll;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;z-index:-1;visibility:hidden;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:visibility 0.35s, -webkit-transform 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s;transition:transform 0.35s, visibility 0.35s;transition:transform 0.35s, visibility 0.35s, -webkit-transform 0.35s}}@media (max-width: 1023.98px) and (prefers-reduced-motion: reduce){.main-navigation{-webkit-transition:none;transition:none}}@media (max-width: 1023.98px){.main-navigation.open{-webkit-transform:translateY(0);transform:translateY(0);visibility:visible}}.main-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:start;justify-content:flex-start}@media (max-width: 1023.98px){.main-container{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:start;justify-content:flex-start;padding-top:2.5rem;padding-bottom:2.5rem}.main-container>li+li{border-top:1px solid #e6e6e6}}@media (min-width: 1024px){.main-container{padding-right:0;padding-left:0}}.main-container>li{-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}.main-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-right:0.75rem;padding-left:0.75rem;text-align:left;cursor:pointer;width:100%}@media (min-width: 1024px){.main-link svg{display:none}}@media (max-width: 1023.98px){.main-link{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;font-weight:300;padding:0.625rem 0;width:100%;text-align:left}.main-link svg{width:1.5rem;height:1.5rem}}.main-link span{overflow:hidden;text-overflow:ellipsis}.main-link,.flyout-link{position:relative;color:black}.main-link::after,.flyout-link::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:4px;background-color:transparent;opacity:0;-webkit-transform:scaleX(0.8);transform:scaleX(0.8);-webkit-transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1)}@media (prefers-reduced-motion: reduce){.main-link::after,.flyout-link::after{-webkit-transition:none;transition:none}}.main-link:hover::after,.main-link.focus::after,.flyout-link:hover::after,.flyout-link.focus::after{background-color:#cccccc;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.main-link.active,.flyout-link.active{font-weight:700}.main-link.active::after,.flyout-link.active::after{background-color:#fc0;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.flyout{left:0;width:100%;background:white;padding-bottom:3rem;overflow:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;visibility:hidden}@media (min-width: 1024px){.flyout{position:absolute;top:100%;max-height:calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);z-index:-1;-webkit-box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.flyout.open{-webkit-box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(0);transform:translateY(0)}}@media (max-width: 1023.98px){.flyout{position:fixed;top:0;height:100%;z-index:1;-webkit-transform:translateX(100%);transform:translateX(100%)}.flyout.open{-webkit-transform:translateX(0);transform:translateX(0)}}.flyout.open{visibility:visible}.flyout.animate{-webkit-transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s}@media (prefers-reduced-motion: reduce){.flyout.animate{-webkit-transition:none;transition:none}}.flyout-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;min-height:3.5rem;-webkit-box-sizing:content-box;box-sizing:content-box}.flyout-row{display:-ms-flexbox;display:flex;gap:1.5rem}@media (max-width: 1023.98px){.flyout-row{display:grid;grid-template-columns:1fr 1fr}}@media (max-width: 599.98px){.flyout-row{grid-template-columns:1fr}}.flyout-column{-ms-flex:1;flex:1;max-width:25%}@media (max-width: 1023.98px){.flyout-column{max-width:none}}.flyout-column h3{margin-top:0}.flyout-back-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:1rem;font-weight:400;cursor:pointer}@media (max-width: 599.98px){.flyout-back-button{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.flyout-back-button{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.flyout-back-button{padding-right:40px;padding-left:40px}}.flyout-back-button svg{width:1.5rem;height:1.5rem}@media (min-width: 1024px){.flyout-back-button{display:none}}.flyout-close-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-left:auto;padding:0 1.5rem;cursor:pointer}.flyout-close-button svg{width:1.5rem;height:1.5rem}@media (max-width: 1023.98px){.flyout-close-button{display:none}}.flyout-linklist li{border-top:1px solid #e6e6e6}.flyout-linklist:first-child>li{border-top-color:transparent}.flyout-link{display:block;padding:0.75rem 0}.flyout-title{margin:2.5rem 0 1.5rem 0}@media (min-width: 1024px){.flyout-title{display:none}}';var y=t("post_main_navigation",function(){function t(t){e(this,t);this.dropdownToggled=n(this,"dropdownToggled",7);this.flyoutToggled=n(this,"flyoutToggled",7);this.resizeTimer=null;this.mouseLeaveTimer=null;this.mouseEnterTimer=null;this.activeFlyout=undefined;this.mobileMenuOpen=undefined}t.prototype.connectedCallback=function(){var t=this;this.throttledResize=a(300,(function(){return t.handleResize()}));window.addEventListener("resize",this.throttledResize,{passive:true});this.setWindowHeight()};t.prototype.disconnectedCallback=function(){window.removeEventListener("resize",this.throttledResize);l();if(this.mouseEnterTimer!==null)window.clearTimeout(this.mouseEnterTimer);if(this.mouseLeaveTimer!==null)window.clearTimeout(this.mouseLeaveTimer)};t.prototype.handleResize=function(){var t=this;this.host.classList.add("no-animation");if(this.resizeTimer!==null)window.clearTimeout(this.resizeTimer);this.resizeTimer=window.setTimeout((function(){t.host.classList.remove("no-animation")}),300);this.setWindowHeight()};t.prototype.setWindowHeight=function(){var t=this;if(!this.host){return}this.host.style.setProperty("--window-height","".concat(window.innerHeight,"px"));window.setTimeout((function(){t.host.style.setProperty("--window-height","".concat(window.innerHeight,"px"))}),100)};t.prototype.openFlyout=function(t){var i;var e=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.getElementById(t);if(e&&this.activeFlyout!==""){this.addFlyoutAnimation(e)}this.activeFlyout=t;this.flyoutToggled.emit(t);this.setWindowHeight();if(this.mouseLeaveTimer!==null){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}};t.prototype.closeFlyout=function(t){var i;if(t===undefined)return;var e=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.getElementById(t);if(e){this.addFlyoutAnimation(e)}this.activeFlyout=null;this.flyoutToggled.emit()};t.prototype.addFlyoutAnimation=function(t){var i=this;if(!f()){t.classList.add("animate");t.addEventListener("transitionend",(function(){return i.removeFlyoutAnimation(t)}),{once:true})}};t.prototype.removeFlyoutAnimation=function(t){t.classList.remove("animate")};t.prototype.isActiveFlyout=function(t){return t===this.activeFlyout};t.prototype.handleMouseEnter=function(t){var i=this;if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer);this.mouseEnterTimer=null}if(this.mouseLeaveTimer&&this.activeFlyout===t.id){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}if(window.innerWidth>=1024&&t.flyout.length>0&&this.activeFlyout!==t.id){this.mouseEnterTimer=window.setTimeout((function(){i.mouseEnterTimer=null;if(t.id!==undefined)i.openFlyout(t.id)}),200)}};t.prototype.handleMouseLeave=function(t){var i=this;if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer)}if(this.activeFlyout&&this.activeFlyout!==t.id){return}if(window.innerWidth>=1024&&t.flyout.length>0){this.mouseLeaveTimer=window.setTimeout((function(){i.closeFlyout(t.id)}),300)}};t.prototype.handleTouchEnd=function(t,i){if(!this.isActiveFlyout(i.id)&&!i.noFlyout){if(t.cancelable)t.preventDefault();if(i.id)this.openFlyout(i.id)}};t.prototype.handleKeyPress=function(t,i){if(t.key==="Enter"&&!this.isActiveFlyout(i.id)&&!i.noFlyout){t.preventDefault();if(i.id)this.openFlyout(i.id)}};t.prototype.handleClick=function(t,i){if(!this.isActiveFlyout(i.id)&&!i.noFlyout){t.preventDefault();if(i.id)this.openFlyout(i.id)}};t.prototype.setBodyScroll=function(){if(this.mobileMenuOpen){s(this.flyoutElement)}else{u(this.flyoutElement)}};t.prototype.toggleDropdown=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){this.mobileMenuOpen=t===undefined?!this.mobileMenuOpen:t;this.dropdownToggled.emit({open:this.mobileMenuOpen,element:this.host});if(t===false){this.closeFlyout()}this.setBodyScroll();this.setWindowHeight();return[2,this.mobileMenuOpen]}))}))};t.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){var t,i;return __generator(this,(function(e){i=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.querySelector(".main-link");if(i){i.focus()}return[2]}))}))};t.prototype.setActiveFlyout=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(i){this.activeFlyout=t;this.flyoutToggled.emit(this.activeFlyout);return[2]}))}))};t.prototype.render=function(){var t=this;var e;if(((e=d.localizedConfig)===null||e===void 0?void 0:e.header)===undefined)return;var n=d.localizedConfig.header;return i(o,null,i(m,null),i("nav",{id:"post-internet-header-main-navigation",class:{"main-navigation":true,open:this.mobileMenuOpen},ref:function(i){return t.flyoutElement=i}},i("h2",{class:"visually-hidden"},n.translations.navMainAriaLabel),i("ul",{class:"main-container container"},n.navMain.map((function(e){return i("li",{key:e.text,onMouseLeave:function(){return t.handleMouseLeave(e)},onMouseEnter:function(){return t.handleMouseEnter(e)}},i(h,{level:e,isOpen:t.isActiveFlyout(e.id),onTouchEnd:function(i){return t.handleTouchEnd(i,e)},onKeyDown:function(i){return t.handleKeyPress(i,e)},onClick:function(i){return t.handleClick(i,e)}}),!e.noFlyout?i("div",{id:e.id,class:{flyout:true,open:t.isActiveFlyout(e.id)}},i("div",{class:"wide-container"},i("div",{class:"flyout-nav"},i("button",{class:"nav-link flyout-back-button",onClick:function(){return t.closeFlyout(e.id)}},i(c,{name:"pi-pointy-arrow-right",classNames:"mirrored"}),i("span",null,n.translations.backButtonText)),i("button",{class:"flyout-close-button",onClick:function(){return t.closeFlyout(e.id)}},i("span",{class:"visually-hidden"},n.translations.mobileNavToggleClose),i(c,{name:"pi-close"}))),i("h2",{class:"flyout-title container"},i("a",{href:e.url,class:"nav-link"},e.text)),i("div",{class:"flyout-row container"},e.flyout.map((function(t){return i("div",{key:t.title,class:"flyout-column"},t.title?i("h3",null,t.title):null,i("ul",{class:"flyout-linklist"},t.linkList.map((function(t){return i("li",{key:t.url},i("a",{class:{"flyout-link":true,active:!!(t===null||t===void 0?void 0:t.isActiveOverride)},href:t.url,target:t.target},t.title))}))))}))))):null)}))),i("slot",null)))};Object.defineProperty(t.prototype,"host",{get:function(){return r(this)},enumerable:false,configurable:true});return t}());y.style=p}}}));
2
+ //# sourceMappingURL=p-db87f3e3.system.entry.js.map