@swisspost/internet-header 1.5.6 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{index-d5b7ae1a.js → index-eb482698.js} +1 -1
- package/dist/cjs/{index-d5b7ae1a.js.map → index-eb482698.js.map} +1 -1
- package/dist/cjs/{language.service-f769504f.js → language.service-830d8d9b.js} +2 -2
- package/dist/cjs/{language.service-f769504f.js.map → language.service-830d8d9b.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/cjs/post-klp-login-widget.cjs.entry.js +4 -4
- package/dist/cjs/post-klp-login-widget.cjs.entry.js.map +1 -1
- package/dist/cjs/post-language-switch.cjs.entry.js +5 -5
- package/dist/cjs/post-logo.cjs.entry.js +4 -17
- package/dist/cjs/post-logo.cjs.entry.js.map +1 -1
- package/dist/cjs/post-main-navigation.cjs.entry.js +5 -5
- package/dist/cjs/post-main-navigation.cjs.entry.js.map +1 -1
- package/dist/cjs/post-meta-navigation.cjs.entry.js +2 -2
- package/dist/cjs/post-search.cjs.entry.js +6 -6
- package/dist/cjs/post-search.cjs.entry.js.map +1 -1
- package/dist/cjs/post-skiplinks.cjs.entry.js +4 -4
- package/dist/cjs/{store-8b73c1d2.js → store-a866bc4a.js} +2 -2
- package/dist/cjs/{store-8b73c1d2.js.map → store-a866bc4a.js.map} +1 -1
- package/dist/cjs/{svg-icon.component-a7308b93.js → svg-icon.component-83a42c36.js} +2 -2
- package/dist/cjs/{svg-icon.component-a7308b93.js.map → svg-icon.component-83a42c36.js.map} +1 -1
- package/dist/cjs/{svg-sprite.component-7cb54614.js → svg-sprite.component-b8f7a7a7.js} +2 -2
- package/dist/cjs/{svg-sprite.component-7cb54614.js.map → svg-sprite.component-b8f7a7a7.js.map} +1 -1
- package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +6 -6
- package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js.map +1 -1
- package/dist/cjs/swisspost-internet-footer.cjs.entry.js +4 -4
- package/dist/cjs/swisspost-internet-footer.cjs.entry.js.map +1 -1
- package/dist/cjs/swisspost-internet-header.cjs.entry.js +45 -29
- package/dist/cjs/swisspost-internet-header.cjs.entry.js.map +1 -1
- package/dist/cjs/swisspost-internet-header.cjs.js +2 -2
- package/dist/cjs/swisspost-internet-header.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.css +0 -1
- package/dist/collection/components/post-internet-footer/post-internet-footer.css +0 -1
- package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.css +0 -1
- package/dist/collection/components/post-logo/post-logo.css +2 -21
- package/dist/collection/components/post-logo/post-logo.js +1 -2
- package/dist/collection/components/post-logo/post-logo.js.map +1 -1
- package/dist/collection/components/post-main-navigation/post-main-navigation.css +0 -3
- package/dist/collection/components/post-search/post-search.css +43 -46
- package/dist/collection/components/post-search/post-search.js +1 -1
- package/dist/collection/components/post-search/post-search.js.map +1 -1
- package/dist/collection/services/config.service.js +25 -8
- package/dist/collection/services/config.service.js.map +1 -1
- package/dist/components/post-klp-login-widget2.js +2 -2
- package/dist/components/post-klp-login-widget2.js.map +1 -1
- package/dist/components/post-language-switch2.js +1 -1
- package/dist/components/post-logo2.js +4 -17
- package/dist/components/post-logo2.js.map +1 -1
- package/dist/components/post-main-navigation2.js +2 -2
- package/dist/components/post-main-navigation2.js.map +1 -1
- package/dist/components/post-meta-navigation2.js +1 -1
- package/dist/components/post-search2.js +3 -3
- package/dist/components/post-search2.js.map +1 -1
- package/dist/components/post-skiplinks2.js +1 -1
- package/dist/components/store.js.map +1 -1
- package/dist/components/swisspost-internet-breadcrumbs.js +2 -2
- package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
- package/dist/components/swisspost-internet-footer.js +2 -2
- package/dist/components/swisspost-internet-footer.js.map +1 -1
- package/dist/components/swisspost-internet-header.js +41 -25
- package/dist/components/swisspost-internet-header.js.map +1 -1
- package/dist/esm/{index-2c50ce20.js → index-78606a15.js} +1 -1
- package/dist/esm/{index-2c50ce20.js.map → index-78606a15.js.map} +1 -1
- package/dist/esm/{language.service-1a20901e.js → language.service-b62eadfa.js} +2 -2
- package/dist/esm/{language.service-1a20901e.js.map → language.service-b62eadfa.js.map} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/loader.js.map +1 -1
- package/dist/esm/post-klp-login-widget.entry.js +4 -4
- package/dist/esm/post-klp-login-widget.entry.js.map +1 -1
- package/dist/esm/post-language-switch.entry.js +5 -5
- package/dist/esm/post-logo.entry.js +4 -17
- package/dist/esm/post-logo.entry.js.map +1 -1
- package/dist/esm/post-main-navigation.entry.js +5 -5
- package/dist/esm/post-main-navigation.entry.js.map +1 -1
- package/dist/esm/post-meta-navigation.entry.js +2 -2
- package/dist/esm/post-search.entry.js +6 -6
- package/dist/esm/post-search.entry.js.map +1 -1
- package/dist/esm/post-skiplinks.entry.js +4 -4
- package/dist/esm/{store-b8f9cf53.js → store-17acb817.js} +2 -2
- package/dist/esm/{store-b8f9cf53.js.map → store-17acb817.js.map} +1 -1
- package/dist/esm/{svg-icon.component-ecb1700c.js → svg-icon.component-1497ec37.js} +2 -2
- package/dist/esm/{svg-icon.component-ecb1700c.js.map → svg-icon.component-1497ec37.js.map} +1 -1
- package/dist/esm/{svg-sprite.component-93c29b17.js → svg-sprite.component-bbdea5b3.js} +2 -2
- package/dist/esm/{svg-sprite.component-93c29b17.js.map → svg-sprite.component-bbdea5b3.js.map} +1 -1
- package/dist/esm/swisspost-internet-breadcrumbs.entry.js +6 -6
- package/dist/esm/swisspost-internet-breadcrumbs.entry.js.map +1 -1
- package/dist/esm/swisspost-internet-footer.entry.js +4 -4
- package/dist/esm/swisspost-internet-footer.entry.js.map +1 -1
- package/dist/esm/swisspost-internet-header.entry.js +45 -29
- package/dist/esm/swisspost-internet-header.entry.js.map +1 -1
- package/dist/esm/swisspost-internet-header.js +3 -3
- package/dist/esm/swisspost-internet-header.js.map +1 -1
- package/dist/esm-es5/{index-2c50ce20.js → index-78606a15.js} +1 -1
- package/dist/esm-es5/{index-2c50ce20.js.map → index-78606a15.js.map} +1 -1
- package/dist/esm-es5/{language.service-1a20901e.js → language.service-b62eadfa.js} +2 -2
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/loader.js.map +1 -1
- package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
- package/dist/esm-es5/post-klp-login-widget.entry.js.map +1 -1
- package/dist/esm-es5/post-language-switch.entry.js +1 -1
- package/dist/esm-es5/post-logo.entry.js +1 -1
- package/dist/esm-es5/post-logo.entry.js.map +1 -1
- package/dist/esm-es5/post-main-navigation.entry.js +1 -1
- package/dist/esm-es5/post-main-navigation.entry.js.map +1 -1
- package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
- package/dist/esm-es5/post-search.entry.js +1 -1
- package/dist/esm-es5/post-search.entry.js.map +1 -1
- package/dist/esm-es5/post-skiplinks.entry.js +1 -1
- package/dist/esm-es5/{store-b8f9cf53.js → store-17acb817.js} +2 -2
- package/dist/esm-es5/{store-b8f9cf53.js.map → store-17acb817.js.map} +1 -1
- package/dist/esm-es5/svg-icon.component-1497ec37.js +2 -0
- package/dist/esm-es5/{svg-sprite.component-93c29b17.js → svg-sprite.component-bbdea5b3.js} +2 -2
- package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +2 -2
- package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js.map +1 -1
- package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
- package/dist/esm-es5/swisspost-internet-footer.entry.js.map +1 -1
- package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
- package/dist/esm-es5/swisspost-internet-header.entry.js.map +1 -1
- package/dist/esm-es5/swisspost-internet-header.js +1 -1
- package/dist/esm-es5/swisspost-internet-header.js.map +1 -1
- package/dist/swisspost-internet-header/{p-d11cfbf6.entry.js → p-03a31033.entry.js} +2 -2
- package/dist/swisspost-internet-header/p-03f017ef.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-03f017ef.system.entry.js.map +1 -0
- package/dist/swisspost-internet-header/p-0f245a12.js +2 -0
- package/dist/swisspost-internet-header/{p-0e63e0aa.js → p-10df5210.js} +2 -2
- package/dist/swisspost-internet-header/{p-0e63e0aa.js.map → p-10df5210.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-d93a7553.js → p-1be304cd.js} +2 -2
- package/dist/swisspost-internet-header/{p-19520037.system.entry.js → p-1d492bf7.system.entry.js} +2 -2
- package/dist/swisspost-internet-header/{p-6e24784e.system.js → p-1e5511b0.system.js} +2 -2
- package/dist/swisspost-internet-header/{p-f529e4b9.system.entry.js → p-208f6e0d.system.entry.js} +2 -2
- package/dist/swisspost-internet-header/{p-f529e4b9.system.entry.js.map → p-208f6e0d.system.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-2ff142da.system.entry.js → p-20d95fad.system.entry.js} +2 -2
- package/dist/swisspost-internet-header/p-248800c9.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-2c0aaaf5.system.entry.js.map → p-248800c9.system.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/p-2d6bb138.system.entry.js +7 -0
- package/dist/swisspost-internet-header/{p-478e297c.system.entry.js.map → p-2d6bb138.system.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-b8b59050.system.js → p-3d4741e0.system.js} +2 -2
- package/dist/swisspost-internet-header/{p-b8b59050.system.js.map → p-3d4741e0.system.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-5ac43fe4.entry.js → p-491deab8.entry.js} +2 -2
- package/dist/swisspost-internet-header/{p-5ac43fe4.entry.js.map → p-491deab8.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/p-536e6ce1.entry.js +2 -0
- package/dist/swisspost-internet-header/p-536e6ce1.entry.js.map +1 -0
- package/dist/swisspost-internet-header/{p-f115d8f1.system.js → p-6ae971d9.system.js} +2 -2
- package/dist/swisspost-internet-header/p-7198fb8e.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-42e2fc84.entry.js.map → p-7198fb8e.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-50910fe5.system.entry.js → p-7d94c528.system.entry.js} +2 -2
- package/dist/swisspost-internet-header/{p-df383e1a.system.js → p-8e7844f9.system.js} +1 -1
- package/dist/swisspost-internet-header/{p-df383e1a.system.js.map → p-8e7844f9.system.js.map} +1 -1
- package/dist/swisspost-internet-header/p-9bbabe3d.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-3da1c444.entry.js.map → p-9bbabe3d.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-12c07c17.js → p-9e003388.js} +1 -1
- package/dist/swisspost-internet-header/{p-12c07c17.js.map → p-9e003388.js.map} +1 -1
- package/dist/swisspost-internet-header/p-a6cde721.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-62896d7a.system.entry.js.map → p-a6cde721.system.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/p-c6df26bc.system.entry.js +2 -0
- package/dist/swisspost-internet-header/p-c6df26bc.system.entry.js.map +1 -0
- package/dist/swisspost-internet-header/p-caaccb1b.entry.js +7 -0
- package/dist/swisspost-internet-header/{p-e604a987.entry.js.map → p-caaccb1b.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-15192462.system.js → p-d05c1317.system.js} +2 -2
- package/dist/swisspost-internet-header/{p-15192462.system.js.map → p-d05c1317.system.js.map} +1 -1
- package/dist/swisspost-internet-header/p-d18bd8c3.system.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-5e362f9d.system.entry.js.map → p-d18bd8c3.system.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-bc79a64a.entry.js → p-d4c4656c.entry.js} +2 -2
- package/dist/swisspost-internet-header/p-e350a2cd.entry.js +2 -0
- package/dist/swisspost-internet-header/{p-58b4b6f9.entry.js.map → p-e350a2cd.entry.js.map} +1 -1
- package/dist/swisspost-internet-header/{p-bb7f28f0.system.js → p-ee5ae350.system.js} +2 -2
- package/dist/swisspost-internet-header/p-f7e7c0ff.entry.js +2 -0
- package/dist/swisspost-internet-header/p-f7e7c0ff.entry.js.map +1 -0
- package/dist/swisspost-internet-header/{p-6423a6ea.js → p-f98e732f.js} +2 -2
- package/dist/swisspost-internet-header/{p-10dc2991.entry.js → p-fdbd28fa.entry.js} +2 -2
- package/dist/swisspost-internet-header/swisspost-internet-header.css +1 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.esm.js.map +1 -1
- package/dist/swisspost-internet-header/swisspost-internet-header.js +1 -1
- package/loader/index.d.ts +1 -1
- package/package.json +15 -16
- package/dist/collection/components/post-logo/logo-sprite.component.js +0 -4
- package/dist/collection/components/post-logo/logo-sprite.component.js.map +0 -1
- package/dist/esm-es5/svg-icon.component-ecb1700c.js +0 -2
- package/dist/swisspost-internet-header/p-2c0aaaf5.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-3a566b21.entry.js +0 -2
- package/dist/swisspost-internet-header/p-3a566b21.entry.js.map +0 -1
- package/dist/swisspost-internet-header/p-3da1c444.entry.js +0 -2
- package/dist/swisspost-internet-header/p-42e2fc84.entry.js +0 -2
- package/dist/swisspost-internet-header/p-478e297c.system.entry.js +0 -7
- package/dist/swisspost-internet-header/p-4a2492f9.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-4a2492f9.system.entry.js.map +0 -1
- package/dist/swisspost-internet-header/p-58b4b6f9.entry.js +0 -2
- package/dist/swisspost-internet-header/p-5e362f9d.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-62896d7a.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-9bc33c5f.js +0 -2
- package/dist/swisspost-internet-header/p-cd85c4fe.entry.js +0 -2
- package/dist/swisspost-internet-header/p-cd85c4fe.entry.js.map +0 -1
- package/dist/swisspost-internet-header/p-dc228941.system.entry.js +0 -2
- package/dist/swisspost-internet-header/p-dc228941.system.entry.js.map +0 -1
- package/dist/swisspost-internet-header/p-e604a987.entry.js +0 -7
- package/dist/types/components/post-logo/logo-sprite.component.d.ts +0 -4
- /package/dist/esm-es5/{language.service-1a20901e.js.map → language.service-b62eadfa.js.map} +0 -0
- /package/dist/esm-es5/{svg-icon.component-ecb1700c.js.map → svg-icon.component-1497ec37.js.map} +0 -0
- /package/dist/esm-es5/{svg-sprite.component-93c29b17.js.map → svg-sprite.component-bbdea5b3.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-d11cfbf6.entry.js.map → p-03a31033.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-9bc33c5f.js.map → p-0f245a12.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-d93a7553.js.map → p-1be304cd.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-19520037.system.entry.js.map → p-1d492bf7.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-6e24784e.system.js.map → p-1e5511b0.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-2ff142da.system.entry.js.map → p-20d95fad.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-f115d8f1.system.js.map → p-6ae971d9.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-50910fe5.system.entry.js.map → p-7d94c528.system.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-bc79a64a.entry.js.map → p-d4c4656c.entry.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-bb7f28f0.system.js.map → p-ee5ae350.system.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-6423a6ea.js.map → p-f98e732f.js.map} +0 -0
- /package/dist/swisspost-internet-header/{p-10dc2991.entry.js.map → p-fdbd28fa.entry.js.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{h as o,r as t,c as e,H as r,g as i}from"./p-9e003388.js";import{t as a}from"./p-a74b380d.js";import{c as l,d as n,e as s}from"./p-a119b38d.js";import{s as m}from"./p-10df5210.js";import{e as d,u as f}from"./p-45db66a6.js";import{S as c}from"./p-f98e732f.js";import{S as g}from"./p-0f245a12.js";import{I as u}from"./p-a2f9d462.js";const p=o=>{const t=m.currentLanguage;return`https://www.post.ch/${t}/api/trackandtrace?id=${encodeURIComponent(o)}`};const h=(o,{packageTrackingRedirectUrl:t})=>t.replace("{trackingNumber}",encodeURIComponent(o));const x=async(o,t)=>{const e=await b(o,t);return e.ok};const b=async(o,{redirectPattern:t})=>{const e=new RegExp(t);if(e.test(o)){try{const t=await fetch(p(o));const e=await t.json();return Object.assign(Object.assign({},e),{ok:e.ok==="true"})}catch(o){console.warn(`Could not check track and trace API due to error: ${o.message}`)}}return{ok:false,timestamp:(new Date).toDateString()}};const w=async(o,t)=>{const e=await b(o,t);return e.ok?Object.assign(Object.assign({},e),{url:h(o,t)}):null};const v=async(o,t)=>{const e=await x(o,t);return e?h(o,t):k(o)};const k=o=>{var t;if(((t=m.localizedConfig)===null||t===void 0?void 0:t.header.search)===undefined){return}const{searchPageUrl:e}=m.localizedConfig.header.search;const r=`#q=${encodeURIComponent(o)}`;return`${e}${r}&t=AllTab`};const y=(o,t,e=7)=>{const r=o.slice(0,Math.max(e/2,e-t.length));return[r,t.slice(0,e-r.length)]};const z={url:"https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest",environment:{prod:{organisation:"postchagprod6ef4sbet",token:"xx5b629890-23b9-4fbe-b601-0e8719186969"},int01:{organisation:"postchagnonprods5sq57qt",token:"xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4"},int02:{organisation:"postchagnonprods5sq57qt",token:"xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4"},dev01:{organisation:"postchagnonprods5sq57qt",token:"xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4"},dev02:{organisation:"postchagnonprods5sq57qt",token:"xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4"},devs1:{organisation:"postchagnonprods5sq57qt",token:"xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4"},test:{organisation:"postchagnonprods5sq57qt",token:"xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4"}}};const E=async o=>{var t,e;if(((e=(t=m.localizedConfig)===null||t===void 0?void 0:t.header)===null||e===void 0?void 0:e.search)===undefined)return[];const r=m.localizedConfig.header.search;const{token:i,organisation:a}=z.environment[m.environment];const l=`${z.url}?q=${o}&locale=${m.currentLanguage}&searchHub=${r.searchHubName}&pipeline=${r.searchPipelineName}&organizationId=${a}`;let n;try{const o=await fetch(l,{method:"GET",headers:{Authorization:`Bearer ${i}`}});const t=await o.json();n=t.completions.map((o=>Object.assign(Object.assign({},o),{redirectUrl:k(o.expression)})))}catch(o){console.error('Connection to coveo failed. Did you add "*.coveo.com" to your connect-src content security policy and tried turning off your adblocker?')}return n===undefined?[]:n};const C="https://places.post.ch/StandortSuche/StaoCacheService";const T="https://places.post.ch";const I=o=>o.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"");const L=async o=>{if(o.length===0){return[]}const t=Object.entries({query:encodeURIComponent(o),lang:m.currentLanguage,limit:7}).reduce(((o,[t,e],r)=>`${o}${r===0?"?":"&"}${t}=${e}`),"");const e=`${C}/Geocode${t}`;try{const o=await fetch(e);const t=await o.json();if(!t.ok){throw new Error(t.info)}return t.locations}catch(o){console.error('Fetching places failed. Did you add "places.post.ch" to your connect-src content security policy?');throw o}};const R=(o,t)=>{if(o===undefined)return t;const e=I(t);const r=I(o);const i=e.indexOf(r);if(i<0){return t}return`${t.substring(0,i)}{${t.substring(i,i+o.length)}}${t.substring(i+o.length,t.length)}`};const F=o=>{let t;if(o.id){t=`${T}/${m.currentLanguage}/${o.id}/detail`}else{t=`${T}?preselecttext=${encodeURIComponent(o.name)}`}return t};const N=t=>{var e;const r=(e=t.highlightClass)!==null&&e!==void 0?e:"bold";const i=t.text.replace(/[{(]/g,`<span class="${r}">`).replace(/[})]/g,"</span>").replace(/[\[\]]/g,"");return o("span",{innerHTML:i})};const O="@charset \"UTF-8\";/*!\n * Bootstrap Utilities v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n\n * The MIT License (MIT)\n\n * Copyright (c) 2011-2020 Twitter, Inc.\n * Copyright (c) 2011-2020 The Bootstrap Authors\n\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */.form-label{margin-bottom:0.5rem;color:rgba(var(--post-contrast-color-rgb), 0.8)}.col-form-label{padding-top:calc(0.875rem + 2px);padding-bottom:calc(0.875rem + 2px);margin-bottom:0;font-size:inherit;line-height:1.5;color:rgba(var(--post-contrast-color-rgb), 0.8)}.col-form-label-lg{padding-top:calc(1.25rem + 2px);padding-bottom:calc(1.25rem + 2px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.375rem + 2px);padding-bottom:calc(0.375rem + 2px);font-size:0.875rem}.form-text{margin-top:0.25rem;font-size:0.8125rem;color:var(--post-contrast-color)}.form-control{display:block;width:100%;padding:0.875rem 1.125rem;font-size:1rem;font-weight:400;line-height:1.5;color:#000;background-color:#fff;background-clip:padding-box;border:2px solid hsl(0, 0%, 40%);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;-webkit-transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{-webkit-transition:none;transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#000;background-color:#fff;border-color:#000;outline:0;-webkit-box-shadow:0 0 0 0.125rem rgba(51, 51, 51, 0.25);box-shadow:0 0 0 0.125rem rgba(51, 51, 51, 0.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-webkit-input-placeholder{color:hsl(0, 0%, 40%);opacity:1}.form-control::-moz-placeholder{color:hsl(0, 0%, 40%);opacity:1}.form-control:-ms-input-placeholder{color:hsl(0, 0%, 40%);opacity:1}.form-control::-ms-input-placeholder{color:hsl(0, 0%, 40%);opacity:1}.form-control::placeholder{color:hsl(0, 0%, 40%);opacity:1}.form-control:disabled{color:hsl(0, 0%, 40%);background-color:rgba(var(--post-contrast-color-inverted-rgb), 0.6);border-color:hsl(0, 0%, 80%);opacity:1}.form-control::-webkit-file-upload-button{padding:0.875rem 1.125rem;margin:-0.875rem -1.125rem;-webkit-margin-end:1.125rem;margin-inline-end:1.125rem;color:#000;background-color:rgba(var(--post-contrast-color-inverted-rgb), 0.6);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:2px;border-radius:0;-webkit-transition:opacity 250ms, border-color 250ms, background-color 250ms, color 250ms;transition:opacity 250ms, border-color 250ms, background-color 250ms, color 250ms}.form-control::file-selector-button{padding:0.875rem 1.125rem;margin:-0.875rem -1.125rem;-webkit-margin-end:1.125rem;margin-inline-end:1.125rem;color:#000;background-color:rgba(var(--post-contrast-color-inverted-rgb), 0.6);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:2px;border-radius:0;-webkit-transition:opacity 250ms, border-color 250ms, background-color 250ms, color 250ms;transition:opacity 250ms, border-color 250ms, background-color 250ms, color 250ms}@media (prefers-reduced-motion: reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#fff}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#fff}.form-control-plaintext{display:block;width:100%;padding:0.875rem 0;margin-bottom:0;line-height:1.5;color:var(--post-contrast-color);background-color:transparent;border:solid transparent;border-width:2px 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg,.form-floating>.form-control-plaintext.form-control,.form-floating>.form-control-plaintext.form-select{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.96875rem + 4px);padding:0.375rem 0.875rem;font-size:0.875rem;border-radius:0}.form-control-sm::-webkit-file-upload-button{padding:0.375rem 0.875rem;margin:-0.375rem -0.875rem;-webkit-margin-end:0.875rem;margin-inline-end:0.875rem}.form-control-sm::file-selector-button{padding:0.375rem 0.875rem;margin:-0.375rem -0.875rem;-webkit-margin-end:0.875rem;margin-inline-end:0.875rem}.form-control-lg,.form-floating>.form-control,.form-floating>.form-select{min-height:calc(4.375rem + 4px);padding:1.25rem 1.375rem;font-size:1.25rem;border-radius:0}.form-control-lg::-webkit-file-upload-button,.form-floating>.form-control::-webkit-file-upload-button,.form-floating>.form-select::-webkit-file-upload-button{padding:1.25rem 1.375rem;margin:-1.25rem -1.375rem;-webkit-margin-end:1.375rem;margin-inline-end:1.375rem}.form-control-lg::file-selector-button,.form-floating>.form-control::file-selector-button,.form-floating>.form-select::file-selector-button{padding:1.25rem 1.375rem;margin:-1.25rem -1.375rem;-webkit-margin-end:1.375rem;margin-inline-end:1.375rem}textarea.form-control{min-height:calc(3.25rem + 4px)}textarea.form-control-sm{min-height:calc(1.96875rem + 4px)}textarea.form-control-lg,.form-floating>textarea.form-control,.form-floating>textarea.form-select{min-height:calc(4.375rem + 4px)}.form-control-color{width:3rem;height:calc(3.25rem + 4px);padding:0.875rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:0}.form-control-color::-webkit-color-swatch{border-radius:0}.form-control-color.form-control-sm{height:calc(1.96875rem + 4px)}.form-control-color.form-control-lg,.form-floating>.form-control-color.form-control,.form-floating>.form-control-color.form-select{height:calc(4.375rem + 4px)}.form-select{display:block;width:100%;padding:0.875rem 3.375rem 0.875rem 1.125rem;-moz-padding-start:calc(1.125rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#000;background-color:#fff;background-image:url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath opacity='1' fill='%23000000' d='M27.6 10.667l-11.6 11.6-11.467-11.6-1.067 1.067 12.533 12.4 12.533-12.4z'%3E%3C/path%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:right 1.125rem center;background-size:14px 14px;border:2px solid hsl(0, 0%, 40%);border-radius:0;-webkit-transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.form-select{-webkit-transition:none;transition:none}}.form-select:focus{border-color:#000;outline:0;-webkit-box-shadow:0 0 0 0.125rem rgba(51, 51, 51, 0.25);box-shadow:0 0 0 0.125rem rgba(51, 51, 51, 0.25)}.form-select[multiple],.form-select[size]:not([size=\"1\"]){padding-right:1.125rem;background-image:none}.form-select:disabled{color:hsl(0, 0%, 40%);background-color:rgba(var(--post-contrast-color-inverted-rgb), 0.6);border-color:hsl(0, 0%, 80%)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}.form-select-sm{padding-top:0.375rem;padding-bottom:0.375rem;padding-left:0.875rem;font-size:0.875rem;border-radius:0}.form-select-lg{padding-top:1.25rem;padding-bottom:1.25rem;padding-left:1.375rem;font-size:1.25rem;border-radius:0}.form-check{display:block;min-height:1.5rem;padding-left:0;margin-bottom:1rem}.form-check .form-check-input{float:left;margin-left:0}.form-check-reverse{padding-right:0;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:0;margin-left:0}.form-check-input{width:1.5rem;height:1.5rem;margin-top:0rem;vertical-align:top;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:contain;border:2px solid hsl(0, 0%, 40%);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:0}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{-webkit-filter:none;filter:none}.form-check-input:focus{border-color:#000;outline:0;-webkit-box-shadow:0 0 0 0.125rem rgba(0, 0, 0, 0.25);box-shadow:0 0 0 0.125rem rgba(0, 0, 0, 0.25)}.form-check-input:checked{background-color:transparent;border-color:#000}.form-check-input:checked[type=checkbox]{background-image:url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath opacity='1' fill='%23000000' d='M12.667 23.6l-7.2-7.067 1.067-1.067 6.133 6.267 12.8-12.933 1.067 1.067z'%3E%3C/path%3E%3C/svg%3E\")}.form-check-input:checked[type=radio]{background-image:url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='-3 -3 6 6'%3E%3Ccircle opacity='1' fill='%23000000' r='2'%3E%3C/circle%3E%3C/svg%3E\")}.form-check-input[type=checkbox]:indeterminate{background-color:transparent;border-color:#000;background-image:url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath opacity='1' fill='%23000000' d='M5.333 16.010l20-0.021 0.001 1.333-20 0.021-0.001-1.333z'%3E%3C/path%3E%3C/svg%3E\")}.form-check-input:disabled{pointer-events:none;-webkit-filter:none;filter:none;opacity:0.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{cursor:default;opacity:0.5}.form-check-label{color:rgba(var(--post-contrast-color-rgb), 0.8);cursor:pointer}.form-switch{padding-left:0}.form-switch .form-check-input{width:4rem;margin-left:0;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-16 -16 32 32'%3e%3ccircle r='15' stroke='hsl%280, 0%, 40%%29' stroke-width='2' fill='%23fff'/%3e%3c/svg%3e\");background-position:left center;border-radius:4rem;-webkit-transition:background-position 250ms cubic-bezier(0.4, 0, 0.2, 1), background-color 250ms;transition:background-position 250ms cubic-bezier(0.4, 0, 0.2, 1), background-color 250ms}@media (prefers-reduced-motion: reduce){.form-switch .form-check-input{-webkit-transition:none;transition:none}}.form-switch .form-check-input:focus{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-16 -16 32 32'%3e%3ccircle r='15' stroke='%23000' stroke-width='2' fill='%23fff'/%3e%3c/svg%3e\")}.form-switch .form-check-input:checked{background-position:right center;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-16 -16 32 32'%3e%3ccircle r='15' stroke='%23000' stroke-width='2' fill='%23fff'/%3e%3c/svg%3e\")}.form-switch.form-check-reverse{padding-right:0;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:0;margin-left:0}.form-check-inline{display:inline-block;margin-right:1.5rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;-webkit-filter:none;filter:none;opacity:0.4}.form-range{width:100%;height:2.4rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #000, 0 0 0 0.2rem rgba(51, 51, 51, 0.25);box-shadow:0 0 0 1px #000, 0 0 0 0.2rem rgba(51, 51, 51, 0.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #000, 0 0 0 0.2rem rgba(51, 51, 51, 0.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:2rem;height:2rem;margin-top:-0.9rem;background-color:#fff;border:2px solid #000;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#fff}.form-range::-webkit-slider-runnable-track{width:100%;height:0.2rem;color:transparent;cursor:pointer;background-color:hsl(0, 0%, 80%);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:2rem;height:2rem;background-color:#fff;border:2px solid #000;border-radius:1rem;-moz-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#fff}.form-range::-moz-range-track{width:100%;height:0.2rem;color:transparent;cursor:pointer;background-color:hsl(0, 0%, 80%);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#fff}.form-range:disabled::-moz-range-thumb{background-color:#fff}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(4.375rem + 4px);line-height:1.5}.form-floating>label{position:absolute;top:0;left:0;width:100%;height:100%;padding:1.25rem 1.375rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:2px solid transparent;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1);transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1)}@media (prefers-reduced-motion: reduce){.form-floating>label{-webkit-transition:none;transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1.25rem 1.375rem}.form-floating>.form-control::-webkit-input-placeholder,.form-floating>.form-control-plaintext::-webkit-input-placeholder{color:transparent}.form-floating>.form-control::-moz-placeholder,.form-floating>.form-control-plaintext::-moz-placeholder{color:transparent}.form-floating>.form-control:-ms-input-placeholder,.form-floating>.form-control-plaintext:-ms-input-placeholder{color:transparent}.form-floating>.form-control::-ms-input-placeholder,.form-floating>.form-control-plaintext::-ms-input-placeholder{color:transparent}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:transparent}.form-floating>.form-control:not(:-moz-placeholder-shown),.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown){padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:not(:-ms-input-placeholder),.form-floating>.form-control-plaintext:not(:-ms-input-placeholder){padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.5rem;padding-bottom:0}.form-floating>.form-select{padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:1;transform:scale(0.7647058824)}.form-floating>.form-control:not(:-ms-input-placeholder)~label{opacity:1;transform:scale(0.7647058824)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{opacity:1;-webkit-transform:scale(0.7647058824);transform:scale(0.7647058824)}.form-floating>.form-control:-webkit-autofill~label{opacity:1;-webkit-transform:scale(0.7647058824);transform:scale(0.7647058824)}.form-floating>.form-control-plaintext~label{border-width:2px 0}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0.875rem 1.125rem;font-size:1rem;font-weight:400;line-height:1.5;color:#000;text-align:center;white-space:nowrap;background-color:rgba(var(--post-contrast-color-inverted-rgb), 0.6);border:2px solid hsl(0, 0%, 40%);border-radius:0}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:1.25rem 1.375rem;font-size:1.25rem;border-radius:0}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:0.375rem 0.875rem;font-size:0.875rem;border-radius:0}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:4.5rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-2px;border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:0;font-size:1rem;color:hsl(0, 0%, 40%)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:0.25rem 0.5rem;margin-top:0.1rem;font-size:1rem;color:#fff;background-color:#666666;border-radius:0}.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip,.is-valid~.valid-feedback,.is-valid~.valid-tooltip{display:block}.was-validated .form-control:valid,.form-control.is-valid{border-color:hsl(0, 0%, 40%);padding-right:3.25rem;background-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24pt' height='24pt' viewBox='0 0 24 24' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb%280%25,50.588235%25,22.745098%25%29;fill-opacity:1;' d='M 9.5 18.398438 L 3.800781 12.699219 L 5.199219 11.300781 L 9.5 15.597656 L 18.800781 6.300781 L 20.199219 7.699219 Z M 9.5 18.398438 '/%3E%3C/g%3E%3C/svg%3E%0A\");background-repeat:no-repeat;background-position:right calc(0.375em + 0.4375rem) center;background-size:calc(0.75em + 0.875rem) calc(0.75em + 0.875rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:hsl(0, 0%, 40%);-webkit-box-shadow:0 0 0 0.125rem rgba(102, 102, 102, 0.25);box-shadow:0 0 0 0.125rem rgba(102, 102, 102, 0.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:3.25rem;background-position:top calc(0.375em + 0.4375rem) right calc(0.375em + 0.4375rem)}.was-validated .form-select:valid,.form-select.is-valid{border-color:hsl(0, 0%, 40%)}.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size=\"1\"],.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size=\"1\"]{padding-right:6.1875rem;background-image:url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath opacity='1' fill='%23000000' d='M27.6 10.667l-11.6 11.6-11.467-11.6-1.067 1.067 12.533 12.4 12.533-12.4z'%3E%3C/path%3E%3C/svg%3E\"), url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24pt' height='24pt' viewBox='0 0 24 24' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb%280%25,50.588235%25,22.745098%25%29;fill-opacity:1;' d='M 9.5 18.398438 L 3.800781 12.699219 L 5.199219 11.300781 L 9.5 15.597656 L 18.800781 6.300781 L 20.199219 7.699219 Z M 9.5 18.398438 '/%3E%3C/g%3E%3C/svg%3E%0A\");background-position:right 1.125rem center, center right 3.375rem;background-size:14px 14px, calc(0.75em + 0.875rem) calc(0.75em + 0.875rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:hsl(0, 0%, 40%);-webkit-box-shadow:0 0 0 0.125rem rgba(102, 102, 102, 0.25);box-shadow:0 0 0 0.125rem rgba(102, 102, 102, 0.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:6.25rem}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:hsl(0, 0%, 40%)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:hsl(0, 0%, 40%)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{-webkit-box-shadow:0 0 0 0.125rem rgba(102, 102, 102, 0.25);box-shadow:0 0 0 0.125rem rgba(102, 102, 102, 0.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:hsl(0, 0%, 40%)}.form-check-inline .form-check-input~.valid-feedback{margin-left:0.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:0;font-size:1rem;color:#a51728}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:0.25rem 0.5rem;margin-top:0.1rem;font-size:1rem;color:#fff;background-color:#a51728;border-radius:0}.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip,.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip{display:block}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#a51728;padding-right:3.25rem;background-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24pt' height='24pt' viewBox='0 0 24 24' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb%2864.705882%25,9.019608%25,15.686275%25%29;fill-opacity:1;' d='M 11 3 L 13 3 L 13 17 L 11 17 Z M 11 3 '/%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb%2864.705882%25,9.019608%25,15.686275%25%29;fill-opacity:1;' d='M 11 19 L 13 19 L 13 21 L 11 21 Z M 11 19 '/%3E%3C/g%3E%3C/svg%3E%0A\");background-repeat:no-repeat;background-position:right calc(0.375em + 0.4375rem) center;background-size:calc(0.75em + 0.875rem) calc(0.75em + 0.875rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#a51728;-webkit-box-shadow:0 0 0 0.125rem rgba(165, 23, 40, 0.25);box-shadow:0 0 0 0.125rem rgba(165, 23, 40, 0.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:3.25rem;background-position:top calc(0.375em + 0.4375rem) right calc(0.375em + 0.4375rem)}.was-validated .form-select:invalid,.form-select.is-invalid{border-color:#a51728}.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size=\"1\"],.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size=\"1\"]{padding-right:6.1875rem;background-image:url(\"data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath opacity='1' fill='%23000000' d='M27.6 10.667l-11.6 11.6-11.467-11.6-1.067 1.067 12.533 12.4 12.533-12.4z'%3E%3C/path%3E%3C/svg%3E\"), url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='24pt' height='24pt' viewBox='0 0 24 24' version='1.1'%3E%3Cg id='surface1'%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb%2864.705882%25,9.019608%25,15.686275%25%29;fill-opacity:1;' d='M 11 3 L 13 3 L 13 17 L 11 17 Z M 11 3 '/%3E%3Cpath style=' stroke:none;fill-rule:nonzero;fill:rgb%2864.705882%25,9.019608%25,15.686275%25%29;fill-opacity:1;' d='M 11 19 L 13 19 L 13 21 L 11 21 Z M 11 19 '/%3E%3C/g%3E%3C/svg%3E%0A\");background-position:right 1.125rem center, center right 3.375rem;background-size:14px 14px, calc(0.75em + 0.875rem) calc(0.75em + 0.875rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:#a51728;-webkit-box-shadow:0 0 0 0.125rem rgba(165, 23, 40, 0.25);box-shadow:0 0 0 0.125rem rgba(165, 23, 40, 0.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:6.25rem}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:#a51728}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:#a51728}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{-webkit-box-shadow:0 0 0 0.125rem rgba(165, 23, 40, 0.25);box-shadow:0 0 0 0.125rem rgba(165, 23, 40, 0.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:#a51728}.form-check-inline .form-check-input~.invalid-feedback{margin-left:0.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.form-control-rg{height:calc(2.75rem + 4px);padding:0.625rem 0.875rem;font-size:1rem;line-height:1.5}select.form-control-rg:not([size]):not([multiple]){height:calc(2.75rem + 4px)}.form-control{position:relative}.form-control:disabled{color:hsl(0, 0%, 40%)}.form-control[readonly]:not(:disabled){border-color:hsl(0, 0%, 40%);background-color:#fff}.form-control[type=file]{min-height:calc(3.25rem + 4px)}.form-control[type=file]::-webkit-file-upload-button{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0;margin-inline-end:0;padding-left:0;padding-right:0;width:0;border:0 none}.form-control[type=file]::file-selector-button{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0;margin-inline-end:0;padding-left:0;padding-right:0;width:0;border:0 none}.form-control[type=file]::after{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;content:\"Choose File\";position:absolute;top:0;bottom:0;right:0;z-index:2;padding-left:inherit;padding-right:inherit;background-color:inherit;border-left:inherit;text-align:center}[lang=de] .form-control[type=file]::after{content:\"Datei auswählen\"}[lang=fr] .form-control[type=file]::after{content:\"Choisir un fichier\"}[lang=it] .form-control[type=file]::after{content:\"Scegli file\"}.form-control[type=file].form-control-sm{min-height:calc(2.25rem + 4px)}.form-control[type=file].form-control-rg{min-height:calc(2.75rem + 4px)}.form-control[type=file].form-control-lg{min-height:calc(4rem + 4px)}@media (forced-colors: active), (-ms-high-contrast: active), (-ms-high-contrast: white-on-black){.form-control:hover,.form-control:focus{border-color:Highlight}.form-control:hover[type=file]::after,.form-control:focus[type=file]::after{border-color:Highlight}}.form-floating>label{display:block;top:2px;left:2px;margin:0;padding-inline:1.375rem;padding-block:calc(\n 2px + 2.1875rem - 0.796875rem\n );height:4.375rem;border:0;color:hsl(0, 0%, 40%);font-size:1.0625rem;max-width:calc(100% - 4px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-transform-origin:1.375rem 0;transform-origin:1.375rem 0;-webkit-transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms linear;transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms linear}.form-floating>.form-control{}.form-floating>.form-control[type=file]::-webkit-file-upload-button{padding-top:1.75rem}.form-floating>.form-control[type=file]::file-selector-button{padding-top:1.75rem}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:not(:-ms-input-placeholder){padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.5rem;padding-bottom:0}.form-floating>.form-control:not(:-moz-placeholder-shown)[type=file]::file-selector-button{padding-top:1.75rem}.form-floating>.form-control:not(:-ms-input-placeholder)[type=file]::file-selector-button{padding-top:1.75rem}.form-floating>.form-control:focus[type=file]::-webkit-file-upload-button,.form-floating>.form-control:not(:placeholder-shown)[type=file]::-webkit-file-upload-button{padding-top:1.75rem}.form-floating>.form-control:focus[type=file]::file-selector-button,.form-floating>.form-control:not(:placeholder-shown)[type=file]::file-selector-button{padding-top:1.75rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{padding-top:0.7rem;max-width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px);-moz-transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1);transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1)}.form-floating>.form-control:not(:-ms-input-placeholder)~label{padding-top:0.7rem;max-width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px);-ms-transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1);transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label{padding-top:0.7rem;max-width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px);-webkit-transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1);transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1)}.form-floating>.form-select{padding-top:1.5rem;padding-bottom:0}.form-floating>.form-select~label{padding-top:0.7rem;max-width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px);-webkit-transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1);transition:all 250ms cubic-bezier(0.4, 0, 0.2, 1), width 0ms 250ms cubic-bezier(0.4, 0, 0.2, 1)}.form-floating>.form-select:empty{padding-top:1.5rem;padding-bottom:0}.form-floating>.form-select:empty~label{padding-top:1.25rem;max-width:calc(100% - 4px);-webkit-transform:none;transform:none}.form-floating>.form-select[multiple]{padding-top:2.25rem;padding-bottom:0;height:auto}.form-floating>.form-select[multiple]~label{padding-top:0.9558823529rem;padding-bottom:0;width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem);height:auto;background:#fff}.form-floating>.form-select[multiple]:empty~label{padding-top:1.25rem;padding-bottom:1.25rem;width:calc(100% - 4px - 1.375rem);height:4.375rem}.form-floating>textarea.form-control{padding-top:1.875rem;padding-bottom:1.25rem;height:auto}.form-floating>textarea.form-control~label{padding-bottom:0;width:calc(100% - 4px);max-width:none;height:unset}.form-floating>textarea.form-control:not(:-moz-placeholder-shown){padding-top:1.875rem;padding-bottom:1.25rem}.form-floating>textarea.form-control:not(:-ms-input-placeholder){padding-top:1.875rem;padding-bottom:1.25rem}.form-floating>textarea.form-control:focus,.form-floating>textarea.form-control:not(:placeholder-shown){padding-top:1.875rem;padding-bottom:1.25rem}.form-floating>textarea.form-control:not(:-moz-placeholder-shown)~label{padding-top:0.9558823529rem;width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem);max-width:none;background:#fff}.form-floating>textarea.form-control:not(:-ms-input-placeholder)~label{padding-top:0.9558823529rem;width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem);max-width:none;background:#fff}.form-floating>textarea.form-control:focus~label,.form-floating>textarea.form-control:not(:placeholder-shown)~label{padding-top:0.9558823529rem;width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem);max-width:none;background:#fff}.form-floating>textarea.form-control:is(.is-valid,.is-invalid)~label{width:calc(100% - 4px - 1.375rem - 0.5rem - 2rem)}.form-floating>textarea.form-control:is(.is-valid,.is-invalid):not(:-moz-placeholder-shown)~label{width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem - 0.6538461538rem - 2.6153846154rem)}.form-floating>textarea.form-control:is(.is-valid,.is-invalid):not(:-ms-input-placeholder)~label{width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem - 0.6538461538rem - 2.6153846154rem)}.form-floating>textarea.form-control:is(.is-valid,.is-invalid):focus~label,.form-floating>textarea.form-control:is(.is-valid,.is-invalid):not(:placeholder-shown)~label{width:calc(130.7692307692% - 0.8461538462rem - 5.2307692308px - 1.7980769231rem - 0.6538461538rem - 2.6153846154rem)}@media (forced-colors: active), (-ms-high-contrast: active), (-ms-high-contrast: white-on-black){.form-floating>input,.form-floating>textarea{}.form-floating>input::-webkit-input-placeholder,.form-floating>textarea::-webkit-input-placeholder{opacity:0}.form-floating>input::-moz-placeholder,.form-floating>textarea::-moz-placeholder{opacity:0}.form-floating>input:-ms-input-placeholder,.form-floating>textarea:-ms-input-placeholder{opacity:0}.form-floating>input::-ms-input-placeholder,.form-floating>textarea::-ms-input-placeholder{opacity:0}.form-floating>input::placeholder,.form-floating>textarea::placeholder{opacity:0}.form-floating>input::input-placeholder,.form-floating>textarea::input-placeholder{opacity:0}}.row{--bs-gutter-x:30px;--bs-gutter-y:0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-0.5 * var(--bs-gutter-x));margin-left:calc(-0.5 * var(--bs-gutter-x))}.row>*{-ms-flex-negative:0;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * 0.5);padding-left:calc(var(--bs-gutter-x) * 0.5);margin-top:var(--bs-gutter-y)}.col{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width: 400px){.col-sm{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-sm-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-sm-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-sm-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-sm-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-sm-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-sm-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-sm-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-sm-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-sm-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-sm-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-sm-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width: 600px){.col-rg{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-rg-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-rg-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-rg-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-rg-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-rg-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-rg-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-rg-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-rg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-rg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-rg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-rg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-rg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-rg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-rg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-rg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-rg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-rg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-rg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-rg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-rg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-rg-0{margin-left:0}.offset-rg-1{margin-left:8.33333333%}.offset-rg-2{margin-left:16.66666667%}.offset-rg-3{margin-left:25%}.offset-rg-4{margin-left:33.33333333%}.offset-rg-5{margin-left:41.66666667%}.offset-rg-6{margin-left:50%}.offset-rg-7{margin-left:58.33333333%}.offset-rg-8{margin-left:66.66666667%}.offset-rg-9{margin-left:75%}.offset-rg-10{margin-left:83.33333333%}.offset-rg-11{margin-left:91.66666667%}.g-rg-0,.gx-rg-0{--bs-gutter-x:0}.g-rg-0,.gy-rg-0{--bs-gutter-y:0}.g-rg-1,.gx-rg-1{--bs-gutter-x:0.25rem}.g-rg-1,.gy-rg-1{--bs-gutter-y:0.25rem}.g-rg-2,.gx-rg-2{--bs-gutter-x:0.5rem}.g-rg-2,.gy-rg-2{--bs-gutter-y:0.5rem}.g-rg-3,.gx-rg-3{--bs-gutter-x:1rem}.g-rg-3,.gy-rg-3{--bs-gutter-y:1rem}.g-rg-4,.gx-rg-4{--bs-gutter-x:1.5rem}.g-rg-4,.gy-rg-4{--bs-gutter-y:1.5rem}.g-rg-5,.gx-rg-5{--bs-gutter-x:3rem}.g-rg-5,.gy-rg-5{--bs-gutter-y:3rem}}@media (min-width: 780px){.col-md{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-md-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-md-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-md-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-md-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-md-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-md-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-md-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-md-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-md-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-md-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-md-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-md-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-md-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-md-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-md-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-md-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width: 1024px){.col-lg{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-lg-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-lg-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-lg-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-lg-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-lg-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-lg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-lg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-lg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-lg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-lg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-lg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width: 1280px){.col-xl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-xl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-xl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-xl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-xl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-xl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width: 1441px){.col-xxl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xxl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xxl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xxl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xxl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xxl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xxl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-xxl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-xxl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-xxl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-xxl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-xxl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-xxl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-xxl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-xxl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-xxl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-xxl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-xxl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.container,.container-fluid,.container-xs{--bs-gutter-x:30px;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * 0.5);padding-left:calc(var(--bs-gutter-x) * 0.5);margin-right:auto;margin-left:auto}.container{max-width:1440px}.vertical-gutters{margin-bottom:-30px}.vertical-gutters>.col,.vertical-gutters>[class*=col-]{padding-bottom:30px}.row.border-gutters{margin-right:-1px;margin-bottom:-1px;margin-left:0}.row.border-gutters>.col,.row.border-gutters>[class*=col-]{padding-right:1px;padding-bottom:1px;padding-left:0}.container{padding-right:12px;padding-left:12px}.container-reset{margin-right:-12px;margin-left:-12px}.container-reset-left{margin-left:-12px}.container-reset-right{margin-right:-12px}@media (max-width: 399.98px){.container-fluid-xs{padding-right:1rem;padding-left:1rem}}@media (min-width: 400px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 400px){.container-reset{margin-right:-16px;margin-left:-16px}}@media (min-width: 400px){.container-reset-left{margin-left:-16px}}@media (min-width: 400px){.container-reset-right{margin-right:-16px}}@media (min-width: 400px) and (max-width: 599.98px){.container-fluid-sm{padding-right:1rem;padding-left:1rem}}@media (min-width: 600px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 600px){.container-reset{margin-right:-32px;margin-left:-32px}}@media (min-width: 600px){.container-reset-left{margin-left:-32px}}@media (min-width: 600px){.container-reset-right{margin-right:-32px}}@media (min-width: 600px) and (max-width: 779.98px){.container-fluid-rg{padding-right:1rem;padding-left:1rem}}@media (min-width: 780px) and (max-width: 1023.98px){.container-fluid-md{padding-right:1rem;padding-left:1rem}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}@media (min-width: 1024px){.container-reset{margin-right:-40px;margin-left:-40px}}@media (min-width: 1024px){.container-reset-left{margin-left:-40px}}@media (min-width: 1024px){.container-reset-right{margin-right:-40px}}@media (min-width: 1024px) and (max-width: 1279.98px){.container-fluid-lg{padding-right:1rem;padding-left:1rem}}@media (min-width: 1280px){.container{padding-right:128px;padding-left:128px}}@media (min-width: 1280px){.container-reset{margin-right:-128px;margin-left:-128px}}@media (min-width: 1280px){.container-reset-left{margin-left:-128px}}@media (min-width: 1280px){.container-reset-right{margin-right:-128px}}@media (min-width: 1280px) and (max-width: 1440.98px){.container-fluid-xl{padding-right:1rem;padding-left:1rem}}@media (min-width: 1441px){.container-fluid-xxl{padding-right:1rem;padding-left:1rem}}@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}.search-button,.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}.search-button:hover,.nav-link:hover,.search-button:focus,.nav-link:focus{color:black}.search-button>svg,.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.search-button>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{display:block}.search,:host{height:100%}.search-button{height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;cursor:pointer;padding-right:calc(1rem - 1px);padding-left:calc(1rem - 1px)}@media (min-width: 1024px){.search-button{padding:0 calc(1.125rem - 1px)}}@media (min-width: 1280px){.search-button{padding:0 calc(1.5rem - 1px)}}.search-button svg{width:1.5rem;height:1.5rem}@media (min-width: 600px) and (max-width: 1023.98px){.search-button .visually-hidden{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible;font-weight:300;margin-right:0.5rem;cursor:pointer}}.flyout{position:absolute;top:100%;left:0;width:100%;background:white;overflow:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;padding-top:3.25rem;padding-bottom:3.25rem;z-index:-1;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:-webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:-webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:transform 0.35s, box-shadow 0.35s;transition:transform 0.35s, box-shadow 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s}@media (prefers-reduced-motion: reduce){.flyout{-webkit-transition:none;transition:none}}@media (min-width: 1024px){.flyout{max-height:calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);-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)}.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)}}@media (max-width: 1023.98px){.flyout{height:calc(100vh - var(--header-height) - 1px)}}.flyout.open{-webkit-transform:translateY(0);transform:translateY(0)}.form-floating .form-control{padding-right:3.5rem}.start-search-button{position:absolute;top:0;right:0;height:100%;padding-right:1rem;padding-left:1rem;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;cursor:pointer}.start-search-button svg{width:1.5rem;height:1.5rem}.suggestions{margin:1.5rem 0}.suggestions a{padding:0.75rem 1rem}.suggestions a:hover,.suggestions a:focus,.suggestions a.selected{background:#f4f3f1}.suggestions a.parcel-suggestion{-ms-flex-wrap:wrap;flex-wrap:wrap}.search-recommendation__icon{height:1.5em;width:1.5em}";const S=class{constructor(o){t(this,o);this.dropdownToggled=e(this,"dropdownToggled",7);this.searchDropdownOpen=false;this.coveoSuggestions=[];this.placeSuggestions=[];this.parcelSuggestion=null}connectedCallback(){this.throttledResize=a(300,(()=>this.handleResize()));window.addEventListener("resize",this.throttledResize,{passive:true})}disconnectedCallback(){window.removeEventListener("resize",this.throttledResize);l()}componentWillUpdate(){if(this.searchFlyout&&!this.searchDropdownOpen){this.searchFlyout.classList.remove("open");if(d(this.searchFlyout,"transform")&&!f()){return new Promise((o=>{if(this.searchFlyout===undefined){return o(true)}this.searchFlyout.addEventListener("transitionend",(t=>{if(t.propertyName==="transform"){o(true)}}))}))}}}componentDidUpdate(){if(this.searchFlyout&&this.searchDropdownOpen){this.searchFlyout.getBoundingClientRect();this.searchFlyout.classList.add("open")}if(this.searchDropdownOpen&&this.searchBox){this.searchBox.focus({preventScroll:true})}}async toggleDropdown(o){this.searchDropdownOpen=o===undefined||typeof o!=="boolean"?!this.searchDropdownOpen:o;this.dropdownToggled.emit({open:this.searchDropdownOpen,element:this.host});if(!this.searchDropdownOpen){this.coveoSuggestions=[];this.placeSuggestions=[];if(this.searchBox)this.searchBox.value="";this.setFocus()}else{try{this.coveoSuggestions=await E("")}catch(o){}}this.setBodyScroll();return this.searchDropdownOpen}async setFocus(){const o=this.host.shadowRoot;if(o===null){return}const t=o.querySelector(".search-button");if(t){t.focus()}}handleResize(){if(this.searchDropdownOpen){this.setBodyScroll()}}setBodyScroll(){if(this.searchDropdownOpen&&window.innerWidth<1024){n(this.searchFlyout)}else{s(this.searchFlyout)}}async handleSearchInput(){var o;if(this.searchBox===undefined||((o=m.localizedConfig)===null||o===void 0?void 0:o.header.search)===undefined){return}const t=this.searchBox.value.trim();const[e,r,i]=await Promise.all([L(t),E(t),w(t,m.localizedConfig.header.search)]);this.parcelSuggestion=i;if(i){this.placeSuggestions=[];this.coveoSuggestions=[]}else{[this.coveoSuggestions,this.placeSuggestions]=y(r,e,7)}this.deselectSuggestion()}handleKeyDown(o){var t,e,r,i;if(this.searchFlyout===undefined){return}let a=this.searchFlyout.querySelector(".suggestions > li > a.selected");switch(o.key.toLowerCase()){case"enter":if(a){const o=a.getAttribute("href");if(o!==null){window.location.href=o}}else{this.startSearch()}break;case"arrowdown":case"arrowup":const l=this.searchFlyout.querySelectorAll(".suggestions > li > a");this.deselectSuggestion();if(o.key.toLowerCase()==="arrowdown"){if((e=(t=a===null||a===void 0?void 0:a.parentElement)===null||t===void 0?void 0:t.nextElementSibling)===null||e===void 0?void 0:e.firstElementChild){a.parentElement.nextElementSibling.firstElementChild.classList.add("selected")}else{if(l.length>0){l[0].classList.add("selected")}}}else if(o.key.toLowerCase()==="arrowup"){if((i=(r=a===null||a===void 0?void 0:a.parentElement)===null||r===void 0?void 0:r.previousElementSibling)===null||i===void 0?void 0:i.firstElementChild){a.parentElement.previousElementSibling.firstElementChild.classList.add("selected")}else{if(l.length>0){l[l.length-1].classList.add("selected")}}}a=this.searchFlyout.querySelector(".suggestions > li > a.selected");const n=a===null||a===void 0?void 0:a.dataset.suggestionText;if(n!==undefined&&this.searchBox){this.searchBox.value=n}break}}handleMouseEnterSuggestion(o){this.deselectSuggestion();o.target.classList.add("selected")}handleMouseLeaveSuggestions(){this.deselectSuggestion()}deselectSuggestion(){if(this.searchFlyout===undefined)return;const o=this.searchFlyout.querySelector(".suggestions .selected");if(o){o.classList.remove("selected")}}async startSearch(){var o;if(this.searchBox&&((o=m.localizedConfig)===null||o===void 0?void 0:o.header.search)){const o=await v(this.searchBox.value.trim(),m.localizedConfig.header.search);if(!o)return;window.location.href=o}}render(){var t,e,i,a,l,n,s,d,f,p,h,x,b,w;if(((t=m.localizedConfig)===null||t===void 0?void 0:t.header)===undefined){return}const{translations:v,search:k}=m.localizedConfig.header;const y=((e=this.searchBox)===null||e===void 0?void 0:e.value)===""&&((i=k.searchRecommendations)===null||i===void 0?void 0:i.links.length)>0;return o(r,null,o(c,null),o("div",{class:"search"},o("button",{id:"post-internet-header-search-button",class:"search-button",type:"button","aria-expanded":`${this.searchDropdownOpen}`,onClick:o=>this.toggleDropdown(o)},o("span",{class:"visually-hidden"},this.searchDropdownOpen?v.searchToggleExpanded:v.searchToggle),o(g,{name:this.searchDropdownOpen?"pi-close":"pi-search"})),o(u,{condition:this.searchDropdownOpen},o("div",{class:"flyout",ref:o=>this.searchFlyout=o},o("div",{class:"container box"},o("div",{class:"row"},o("div",{class:"col-xs-12 col-md-10 col-lg-8"},o("div",{class:"form-group form-floating"},o("input",{type:"text",id:"searchBox",class:"form-control form-control-lg",placeholder:v.flyoutSearchBoxFloatingLabel,autocomplete:"off",ref:o=>this.searchBox=o,onInput:()=>this.handleSearchInput(),onKeyDown:o=>this.handleKeyDown(o)}),o("label",{htmlFor:"searchBox"},v.flyoutSearchBoxFloatingLabel),o("button",{onClick:()=>this.startSearch(),class:"nav-link start-search-button"},o("span",{class:"visually-hidden"},v.searchSubmit),o(g,{name:"pi-search"}))),y&&o("h2",{class:"bold"},k.searchRecommendations.title),o("ul",{class:"suggestions no-list",onMouseLeave:()=>this.handleMouseLeaveSuggestions()},y&&k.searchRecommendations.links.map((t=>o("li",{key:t.href},o("a",{class:"nav-link search-recommendation",href:new URL(t.href,"https://post.ch").href,"data-suggestion-text":t.label,onMouseEnter:o=>this.handleMouseEnterSuggestion(o)},o("span",{class:"search-recommendation__icon",innerHTML:t.inlineSvg}),o("span",null,t.label))))),this.parcelSuggestion&&this.parcelSuggestion.ok&&o("li",null,o("a",{class:"nav-link parcel-suggestion",href:this.parcelSuggestion.url,"data-suggestion-text":(a=this.searchBox)===null||a===void 0?void 0:a.value,onMouseEnter:o=>this.handleMouseEnterSuggestion(o)},o(g,{name:"pi-letter-parcel"}),o("span",{class:"bold"},(n=(l=this.parcelSuggestion)===null||l===void 0?void 0:l.sending)===null||n===void 0?void 0:n.id,": "),o("span",null,(d=(s=this.parcelSuggestion)===null||s===void 0?void 0:s.sending)===null||d===void 0?void 0:d.product,","," ",(p=(f=this.parcelSuggestion)===null||f===void 0?void 0:f.sending)===null||p===void 0?void 0:p.recipient.zipcode," ",(x=(h=this.parcelSuggestion)===null||h===void 0?void 0:h.sending)===null||x===void 0?void 0:x.recipient.city,","," ",(w=(b=this.parcelSuggestion)===null||b===void 0?void 0:b.sending)===null||w===void 0?void 0:w.state))),!y&&this.coveoSuggestions&&this.coveoSuggestions.map((t=>o("li",{key:t.objectId},o("a",{class:"nav-link",href:t.redirectUrl,"data-suggestion-text":t.expression,onMouseEnter:o=>this.handleMouseEnterSuggestion(o)},o(g,{name:"pi-search"}),o(N,{text:t.highlighted}))))),!y&&this.placeSuggestions&&this.placeSuggestions.map((t=>{var e,r;return o("li",{key:t.id},o("a",{class:"nav-link",href:F(t),"data-suggestion-text":t.name,onMouseEnter:o=>this.handleMouseEnterSuggestion(o)},o(g,{name:"pi-place"}),o(N,{text:R((r=(e=this.searchBox)===null||e===void 0?void 0:e.value)===null||r===void 0?void 0:r.trim(),t.name)})))}))))))))))}get host(){return i(this)}};S.style=O;export{S as post_search};
|
|
2
|
+
//# sourceMappingURL=p-e350a2cd.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getTrackAndTraceApiUrl","id","lang","state","currentLanguage","encodeURIComponent","getTrackAndTraceRedirectUrl","query","packageTrackingRedirectUrl","replace","isParcel","async","searchConfig","parcelInfo","getParcelInfo","ok","redirectPattern","trackingNrPattern","RegExp","test","trackAndTraceReqest","fetch","trackAndTraceResult","json","Object","assign","error","console","warn","message","timestamp","Date","toDateString","getParcelSuggestion","url","getSearchRedirectUrl","isTrackTraceId","getSearchPageUrl","_a","localizedConfig","header","search","undefined","searchPageUrl","searchParam","equalizeArrays","arrayA","arrayB","maxLength","coveoSliced","slice","Math","max","length","coveo","environment","prod","organisation","token","int01","int02","dev01","dev02","devs1","getCoveoSuggestions","_b","config","searchHubName","searchPipelineName","coveoCompletions","coveoResponse","method","headers","Authorization","coveoJSON","completions","map","completion","redirectUrl","expression","gisAPIUrl","placesUrl","hardNormalize","str","toLowerCase","normalize","queryPlaces","searchParameters","entries","limit","reduce","s","k","v","i","geocoderUrl","geocodeResponse","geocodeJSON","Error","info","locations","highlightPlacesString","place","reference","q","indexOfQuery","indexOf","substring","getPlacesUrl","location","name","HighlightedText","props","highlightClass","highlightedString","text","h","innerHTML","postSearchCss","PostSearch","connectedCallback","this","throttledResize","throttle","handleResize","window","addEventListener","passive","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","componentWillUpdate","searchFlyout","searchDropdownOpen","classList","remove","elementHasTransition","userPrefersReducedMotion","Promise","resolve","event","propertyName","componentDidUpdate","getBoundingClientRect","add","searchBox","focus","preventScroll","force","dropdownToggled","emit","open","element","host","coveoSuggestions","placeSuggestions","value","setFocus","setBodyScroll","shadowRoot","toggleButton","querySelector","innerWidth","disableBodyScroll","enableBodyScroll","trim","trackAndTraceInfo","all","parcelSuggestion","deselectSuggestion","handleKeyDown","selectedSuggestion","key","selectedHref","getAttribute","href","startSearch","suggestions","querySelectorAll","parentElement","nextElementSibling","firstElementChild","_d","_c","previousElementSibling","suggestedText","dataset","suggestionText","handleMouseEnterSuggestion","target","handleMouseLeaveSuggestions","render","translations","showPortalRecommendations","searchRecommendations","links","Host","SvgSprite","class","type","onClick","e","toggleDropdown","searchToggleExpanded","searchToggle","SvgIcon","If","condition","ref","placeholder","flyoutSearchBoxFloatingLabel","autocomplete","el","onInput","handleSearchInput","onKeyDown","htmlFor","searchSubmit","title","onMouseLeave","recommendation","URL","label","onMouseEnter","inlineSvg","_f","_e","sending","_h","_g","product","_k","_j","recipient","zipcode","_m","_l","city","_p","_o","suggestion","objectId","highlighted"],"sources":["./src/services/search/parcel.service.ts","./src/services/search/search.service.ts","./src/services/search/coveo.settings.ts","./src/services/search/coveo.service.ts","./src/services/search/places.settings.ts","./src/services/search/search-utilities.ts","./src/services/search/places.service.ts","./src/utils/highlighted.component.tsx","./src/components/post-search/post-search.scss?tag=post-search&encapsulation=shadow","./src/components/post-search/post-search.tsx"],"sourcesContent":["import { state } from '../../data/store';\nimport { ISearchConfig } from '../../models/header.model';\nimport { TrackAndTraceInfo } from '../../models/track-and-trace.model';\n\n// https://www.post.ch/api/trackandtrace?id=99.00.306600.01004883\n\n// Track and trace URL\nexport const getTrackAndTraceApiUrl = (id: string) => {\n const lang = state.currentLanguage;\n return `https://www.post.ch/${lang}/api/trackandtrace?id=${encodeURIComponent(id)}`;\n};\n\n// Get the redire\nexport const getTrackAndTraceRedirectUrl = (\n query: string,\n { packageTrackingRedirectUrl }: ISearchConfig,\n) => {\n return packageTrackingRedirectUrl.replace('{trackingNumber}', encodeURIComponent(query));\n};\n\n/**\n * Check whether a query is a tracking id\n *\n * @param query User query\n * @returns Boolean\n */\nexport const isParcel = async (query: string, searchConfig: ISearchConfig): Promise<boolean> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return parcelInfo.ok;\n};\n\n/**\n * Try to get parcel info from a query that is possibly a tracking id.\n * This is mainly used to check if a search should redirect to track&trace instead of the regular search.\n *\n * @param query User query that is possibly a tracking number\n * @returns Track and trace info\n */\nexport const getParcelInfo = async (\n query: string,\n { redirectPattern }: ISearchConfig,\n): Promise<TrackAndTraceInfo> => {\n const trackingNrPattern = new RegExp(redirectPattern);\n\n if (trackingNrPattern.test(query)) {\n try {\n const trackAndTraceReqest = await fetch(getTrackAndTraceApiUrl(query));\n const trackAndTraceResult = await trackAndTraceReqest.json();\n return { ...trackAndTraceResult, ok: trackAndTraceResult.ok === 'true' };\n } catch (error) {\n console.warn(`Could not check track and trace API due to error: ${error.message}`);\n }\n }\n\n return { ok: false, timestamp: new Date().toDateString() };\n};\n\n/**\n * Get parcel info if query is a parcel or null\n *\n * @param query Parcel id\n * @returns Parcel info and a redirect url or null if not a parcel\n */\nexport const getParcelSuggestion = async (\n query: string,\n searchConfig: ISearchConfig,\n): Promise<(TrackAndTraceInfo & { url: string }) | null> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return parcelInfo.ok\n ? { ...parcelInfo, url: getTrackAndTraceRedirectUrl(query, searchConfig) }\n : null;\n};\n","import { state } from '../../data/store';\nimport { ISearchConfig } from '../../models/header.model';\nimport { getTrackAndTraceRedirectUrl, isParcel } from './parcel.service';\n\n/**\n * Construct a search page url from a query\n *\n * @param query Search term\n * @returns\n */\nexport const getSearchRedirectUrl = async (\n query: string,\n searchConfig: ISearchConfig,\n): Promise<string | undefined> => {\n const isTrackTraceId = await isParcel(query, searchConfig);\n return isTrackTraceId\n ? getTrackAndTraceRedirectUrl(query, searchConfig)\n : getSearchPageUrl(query);\n};\n\n/**\n * Stitch toghether the search page URL\n *\n * @param query Search term\n * @returns Search page URL\n */\nexport const getSearchPageUrl = (query: string): string | undefined => {\n if (state.localizedConfig?.header.search === undefined) {\n return;\n }\n const { searchPageUrl } = state.localizedConfig.header.search;\n const searchParam = `#q=${encodeURIComponent(query)}`;\n return `${searchPageUrl}${searchParam}&t=AllTab`;\n};\n\n/**\n * Equalize the length of two arrays while filling up empty slots up to max. length\n *\n * @param arrayA First array\n * @param arrayB Second array\n * @param maxLength Max. length of result array\n * @returns Array with two resulting arrays\n */\nexport const equalizeArrays = <A, B>(arrayA: A[], arrayB: B[], maxLength = 7): [A[], B[]] => {\n const coveoSliced = arrayA.slice(0, Math.max(maxLength / 2, maxLength - arrayB.length));\n return [coveoSliced, arrayB.slice(0, maxLength - coveoSliced.length)];\n};\n","import { CoveoOptions } from '../../models/coveo.model';\n\n// Coveo constants\nexport const coveo: CoveoOptions = {\n url: 'https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest',\n environment: {\n prod: {\n organisation: 'postchagprod6ef4sbet',\n token: 'xx5b629890-23b9-4fbe-b601-0e8719186969',\n },\n int01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n int02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n devs1: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n test: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n },\n};\n","import { state } from '../../data/store';\nimport { CoveoCompletion, CoveoResponse } from '../../models/coveo.model';\nimport { coveo } from './coveo.settings';\nimport { getSearchPageUrl } from './search.service';\n\n/**\n * Get suggestions from coveo\n * https://docs.coveo.com/en/1459/build-a-search-ui/get-query-suggestions#context-object\n *\n * @param query Search term\n * @returns\n */\nexport const getCoveoSuggestions = async (query: string): Promise<CoveoCompletion[]> => {\n if (state.localizedConfig?.header?.search === undefined) return [];\n const config = state.localizedConfig.header.search;\n const { token, organisation } = coveo.environment[state.environment];\n const url = `${coveo.url}?q=${query}&locale=${state.currentLanguage}&searchHub=${config.searchHubName}&pipeline=${config.searchPipelineName}&organizationId=${organisation}`;\n let coveoCompletions: CoveoCompletion[] | undefined;\n\n try {\n const coveoResponse = await fetch(url, {\n method: 'GET',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n const coveoJSON = (await coveoResponse.json()) as CoveoResponse;\n coveoCompletions = coveoJSON.completions.map(completion => ({\n ...completion,\n redirectUrl: getSearchPageUrl(completion.expression),\n }));\n } catch (error) {\n console.error(\n 'Connection to coveo failed. Did you add \"*.coveo.com\" to your connect-src content security policy and tried turning off your adblocker?',\n );\n }\n\n return coveoCompletions === undefined ? [] : coveoCompletions;\n};\n","// Implement some TOPOS logic into the header search\nexport const gisAPIUrl = 'https://places.post.ch/StandortSuche/StaoCacheService';\nexport const placesUrl = 'https://places.post.ch';\nexport const pois = [\n '001PST',\n '001MP24',\n '001AG-PICK',\n '001PFFIL',\n '001PFST',\n '001BZ',\n '001LZB',\n '001PZ',\n '001LZP',\n '001AL',\n];\n","/**\n * Transform to lowercase, extract accents to separate unicode chars,\n * replace all accent unicode chars so only standard latin chars remain\n * https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript/37511463#37511463\n *\n * @param str Input string\n * @returns\n */\nexport const hardNormalize = (str: string): string =>\n str\n .toLowerCase()\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '');\n","import { state } from '../../data/store';\nimport { GeocodeLocation, GeocodeResponse } from '../../models/geocode.model';\nimport { gisAPIUrl, placesUrl } from './places.settings';\nimport { hardNormalize } from './search-utilities';\n\n/**\n * Query the Gis API for locations and localities (pois)\n *\n * @param query User input string\n * @returns\n */\nexport const queryPlaces = async (query: string): Promise<GeocodeLocation[]> => {\n if (query.length === 0) {\n return [];\n }\n\n const searchParameters = Object.entries({\n query: encodeURIComponent(query),\n lang: state.currentLanguage,\n limit: 7,\n }).reduce((s, [k, v], i) => `${s}${i === 0 ? '?' : '&'}${k}=${v}`, '');\n\n const geocoderUrl = `${gisAPIUrl}/Geocode${searchParameters}`;\n\n try {\n const geocodeResponse = await fetch(geocoderUrl);\n const geocodeJSON = (await geocodeResponse.json()) as GeocodeResponse;\n if (!geocodeJSON.ok) {\n throw new Error(geocodeJSON.info);\n }\n return geocodeJSON.locations;\n } catch (error) {\n console.error(\n 'Fetching places failed. Did you add \"places.post.ch\" to your connect-src content security policy?',\n );\n throw error;\n }\n};\n\n/**\n * Try to highlight place suggestions\n * Limitation: accented chars are not handled by this basic function\n *\n * @param query Search term\n * @param place Name of the suggested place\n * @returns\n */\nexport const highlightPlacesString = (query: string | undefined, place: string) => {\n if (query === undefined) return place;\n\n // Strip accents from the string\n const reference = hardNormalize(place);\n const q = hardNormalize(query);\n const indexOfQuery = reference.indexOf(q);\n\n if (indexOfQuery < 0) {\n return place;\n }\n\n return `${place.substring(0, indexOfQuery)}{${place.substring(\n indexOfQuery,\n indexOfQuery + query.length,\n )}}${place.substring(indexOfQuery + query.length, place.length)}`;\n};\n\n/**\n * Get the deeplink to any location found via geocoder\n *\n * @param location A location from the Gis API Geocode endpoint\n * @returns\n */\nexport const getPlacesUrl = (location: GeocodeLocation): string => {\n let url: string;\n\n if (location.id) {\n url = `${placesUrl}/${state.currentLanguage}/${location.id}/detail`;\n } else {\n url = `${placesUrl}?preselecttext=${encodeURIComponent(location.name)}`;\n }\n\n return url;\n};\n","import { h } from '@stencil/core';\n\nexport const HighlightedText = (props: { text: string; highlightClass?: string }) => {\n const highlightClass = props.highlightClass ?? 'bold';\n const highlightedString = props.text\n .replace(/[{(]/g, `<span class=\"${highlightClass}\">`)\n .replace(/[})]/g, '</span>')\n .replace(/[\\[\\]]/g, '');\n return <span innerHTML={highlightedString}></span>;\n};\n","@use \"@swisspost/design-system-styles/variables/color\";\n@use \"@swisspost/design-system-styles/components/forms\";\n@use \"@swisspost/design-system-styles/components/floating-label\";\n@use \"@swisspost/design-system-styles/components/grid\";\n@use \"../../utils/utils.scss\";\n@use \"../../utils/mixins.scss\";\n\n:host {\n display: block;\n}\n\n.search,\n:host {\n height: 100%;\n}\n\n.search-button {\n @extend %nav-link;\n\n height: 100%;\n display: flex;\n align-items: center;\n cursor: pointer;\n padding-right: calc(1rem - 1px);\n padding-left: calc(1rem - 1px);\n\n @include mixins.min(lg) {\n padding: 0 calc(1.125rem - 1px);\n }\n\n @include mixins.min(xl) {\n padding: 0 calc(1.5rem - 1px);\n }\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n .visually-hidden {\n @include mixins.between(rg, lg) {\n @include mixins.reset-visually-hidden();\n\n font-weight: 300;\n margin-right: 0.5rem;\n cursor: pointer;\n }\n }\n}\n\n.flyout {\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n background: white;\n overflow: auto;\n overscroll-behavior: contain;\n padding-top: 3.25rem;\n padding-bottom: 3.25rem;\n z-index: -1;\n transform: translateY(-100%);\n transition: transform 0.35s, box-shadow 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n @include mixins.min(lg) {\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\n\n &.open {\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\n }\n }\n\n @include mixins.max(lg) {\n height: calc(100vh - var(--header-height) - 1px);\n }\n\n &.open {\n transform: translateY(0);\n }\n}\n\n.form-floating {\n .form-control {\n padding-right: 3.5rem;\n }\n}\n\n.start-search-button {\n position: absolute;\n top: 0;\n right: 0;\n height: 100%;\n padding-right: 1rem;\n padding-left: 1rem;\n display: flex;\n align-items: center;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n}\n\n.suggestions {\n margin: 1.5rem 0;\n\n a {\n padding: 0.75rem 1rem;\n\n &:hover,\n &:focus,\n &.selected {\n background: color.$gray-background;\n }\n\n &.parcel-suggestion {\n flex-wrap: wrap;\n }\n }\n}\n\n.search-recommendation__icon {\n height: 1.5em;\n width: 1.5em;\n}\n","import { Component, Host, h, State, Event, EventEmitter, Method, Element } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\nimport { state } from '../../data/store';\nimport { CoveoCompletion } from '../../models/coveo.model';\nimport { GeocodeLocation } from '../../models/geocode.model';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n IsFocusable,\n} from '../../models/header.model';\nimport { getSearchRedirectUrl, equalizeArrays } from '../../services/search/search.service';\nimport { getCoveoSuggestions } from '../../services/search/coveo.service';\nimport {\n getPlacesUrl,\n highlightPlacesString,\n queryPlaces,\n} from '../../services/search/places.service';\nimport { userPrefersReducedMotion, elementHasTransition } from '../../services/ui.service';\nimport { HighlightedText } from '../../utils/highlighted.component';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { TrackAndTraceInfo } from '../../models/track-and-trace.model';\nimport { getParcelSuggestion } from '../../services/search/parcel.service';\nimport { If } from '../../utils/if.component';\n\n@Component({\n tag: 'post-search',\n styleUrl: 'post-search.scss',\n shadow: true,\n})\nexport class PostSearch implements HasDropdown, IsFocusable {\n @State() searchDropdownOpen = false;\n @State() coveoSuggestions: CoveoCompletion[] = [];\n @State() placeSuggestions: GeocodeLocation[] = [];\n @State() parcelSuggestion: (TrackAndTraceInfo & { url: string }) | null = null;\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\n @Element() host: DropdownElement;\n private searchBox?: HTMLInputElement;\n private searchFlyout: HTMLElement | undefined;\n private throttledResize: throttle<() => void>;\n\n connectedCallback() {\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n clearAllBodyScrollLocks();\n }\n\n componentWillUpdate() {\n // Check if search flyout got set to close\n if (this.searchFlyout && !this.searchDropdownOpen) {\n this.searchFlyout.classList.remove('open');\n\n // Check if element has transition applied and whether user prefers to see animations or not\n if (elementHasTransition(this.searchFlyout, 'transform') && !userPrefersReducedMotion()) {\n // Wait for CSS transition 'transform' to end before continuing\n return new Promise<boolean>(resolve => {\n if (this.searchFlyout === undefined) {\n return resolve(true);\n }\n\n this.searchFlyout.addEventListener('transitionend', event => {\n if (event.propertyName === 'transform') {\n resolve(true);\n }\n });\n });\n }\n }\n }\n\n componentDidUpdate() {\n // Search flyout got set to open\n if (this.searchFlyout && this.searchDropdownOpen) {\n // Force browser to redraw/refresh DOM before adding 'open' class\n this.searchFlyout.getBoundingClientRect();\n this.searchFlyout.classList.add('open');\n }\n\n // Focus on the searchBox whenever the dropdown is opened\n if (this.searchDropdownOpen && this.searchBox) {\n this.searchBox.focus({ preventScroll: true });\n }\n }\n\n public async toggleDropdown(event?: Event): Promise<boolean>;\n public async toggleDropdown(force?: boolean): Promise<boolean>;\n\n /**\n * Toggle the dropdown and optionally force an open/closed state\n * @param force Boolean to force open/closed state\n * @returns Boolean indicating open state of the component\n */\n @Method()\n async toggleDropdown(force?: unknown) {\n this.searchDropdownOpen =\n force === undefined || typeof force !== 'boolean' ? !this.searchDropdownOpen : force;\n this.dropdownToggled.emit({ open: this.searchDropdownOpen, element: this.host });\n\n if (!this.searchDropdownOpen) {\n // Reset suggestions when dropdown closes\n this.coveoSuggestions = [];\n this.placeSuggestions = [];\n if (this.searchBox) this.searchBox.value = '';\n this.setFocus();\n } else {\n // Get basic suggestions when dropdown opens\n try {\n this.coveoSuggestions = await getCoveoSuggestions('');\n } catch {}\n }\n\n this.setBodyScroll();\n\n return this.searchDropdownOpen;\n }\n\n /**\n * Sets the focus on the search button\n */\n @Method()\n public async setFocus() {\n const shadowRoot = this.host.shadowRoot;\n if (shadowRoot === null) {\n return;\n }\n const toggleButton = shadowRoot.querySelector<HTMLElement>('.search-button');\n if (toggleButton) {\n toggleButton.focus();\n }\n }\n\n private handleResize() {\n // Only enable/disable body scroll on resize if the search dropdown is open, otherwise this could lead to side effects in other controls\n if (this.searchDropdownOpen) {\n this.setBodyScroll();\n }\n }\n\n /**\n * Disable or re-enable body scrolling, depending on whether search dropdown is open or closed in mobile view (width < 1024px)\n */\n private setBodyScroll() {\n if (this.searchDropdownOpen && window.innerWidth < 1024) {\n disableBodyScroll(this.searchFlyout);\n } else {\n enableBodyScroll(this.searchFlyout);\n }\n }\n\n /**\n * Fetch suggestions from all available sources\n */\n private async handleSearchInput() {\n if (this.searchBox === undefined || state.localizedConfig?.header.search === undefined) {\n return;\n }\n const query = this.searchBox.value.trim();\n\n const [placeSuggestions, coveoSuggestions, trackAndTraceInfo] = await Promise.all([\n queryPlaces(query),\n getCoveoSuggestions(query),\n getParcelSuggestion(query, state.localizedConfig.header.search),\n ]);\n\n // Parcel suggestion is more important than any other\n if (trackAndTraceInfo) {\n this.parcelSuggestion = trackAndTraceInfo;\n this.placeSuggestions = [];\n this.coveoSuggestions = [];\n } else {\n [this.coveoSuggestions, this.placeSuggestions] = equalizeArrays(\n coveoSuggestions,\n placeSuggestions,\n 7,\n );\n }\n\n this.deselectSuggestion();\n }\n\n /**\n * Start search on enter\n * @param event\n */\n private handleKeyDown(event: KeyboardEvent) {\n if (this.searchFlyout === undefined) {\n return;\n }\n\n let selectedSuggestion = this.searchFlyout.querySelector<HTMLElement>(\n '.suggestions > li > a.selected',\n );\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n if (selectedSuggestion) {\n const selectedHref = selectedSuggestion.getAttribute('href');\n if (selectedHref !== null) {\n window.location.href = selectedHref;\n }\n } else {\n this.startSearch();\n }\n\n break;\n case 'arrowdown':\n case 'arrowup':\n const suggestions = this.searchFlyout.querySelectorAll('.suggestions > li > a');\n\n this.deselectSuggestion();\n\n if (event.key.toLowerCase() === 'arrowdown') {\n if (selectedSuggestion?.parentElement?.nextElementSibling?.firstElementChild) {\n // Select next suggestion if there's any, otherwise none will be selected\n selectedSuggestion.parentElement.nextElementSibling.firstElementChild.classList.add(\n 'selected',\n );\n } else {\n // If there are any suggestions, select first suggestion in list\n if (suggestions.length > 0) {\n suggestions[0].classList.add('selected');\n }\n }\n } else if (event.key.toLowerCase() === 'arrowup') {\n if (selectedSuggestion?.parentElement?.previousElementSibling?.firstElementChild) {\n // Select previous suggestion if there's any, otherwise none will be selected\n\n selectedSuggestion.parentElement.previousElementSibling.firstElementChild.classList.add(\n 'selected',\n );\n } else {\n // If there are any suggestions, select last suggestion in list\n if (suggestions.length > 0) {\n suggestions[suggestions.length - 1].classList.add('selected');\n }\n }\n }\n\n // Get the newly selected suggestion\n selectedSuggestion = this.searchFlyout.querySelector('.suggestions > li > a.selected');\n const suggestedText = selectedSuggestion?.dataset.suggestionText;\n\n // Update search box value with selected suggestion text\n if (suggestedText !== undefined && this.searchBox) {\n this.searchBox.value = suggestedText;\n }\n\n break;\n }\n }\n\n /**\n * Set selected suggestion on mouse enter\n * @param event\n */\n private handleMouseEnterSuggestion(event: MouseEvent) {\n this.deselectSuggestion();\n\n // Set hovered suggestion element as selected\n (event.target as HTMLElement).classList.add('selected');\n }\n\n /**\n * Set selected suggestion on mouse enter\n * @param event\n */\n private handleMouseLeaveSuggestions() {\n this.deselectSuggestion();\n }\n\n /**\n * Deselect any previously selected suggestion\n */\n private deselectSuggestion() {\n if (this.searchFlyout === undefined) return;\n\n const selectedSuggestion = this.searchFlyout.querySelector('.suggestions .selected');\n\n if (selectedSuggestion) {\n selectedSuggestion.classList.remove('selected');\n }\n }\n\n /**\n * Redirect to the post search page\n */\n private async startSearch() {\n if (this.searchBox && state.localizedConfig?.header.search) {\n const redirectUrl = await getSearchRedirectUrl(\n this.searchBox.value.trim(),\n state.localizedConfig.header.search,\n );\n if (!redirectUrl) return;\n window.location.href = redirectUrl;\n }\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) {\n return;\n }\n const { translations, search } = state.localizedConfig.header;\n const showPortalRecommendations =\n this.searchBox?.value === '' && search.searchRecommendations?.links.length > 0;\n\n return (\n <Host>\n <SvgSprite />\n <div class=\"search\">\n <button\n id=\"post-internet-header-search-button\"\n class=\"search-button\"\n type=\"button\"\n aria-expanded={`${this.searchDropdownOpen}`}\n onClick={e => this.toggleDropdown(e)}\n >\n <span class=\"visually-hidden\">\n {this.searchDropdownOpen\n ? translations.searchToggleExpanded\n : translations.searchToggle}\n </span>\n <SvgIcon name={this.searchDropdownOpen ? 'pi-close' : 'pi-search'} />\n </button>\n <If condition={this.searchDropdownOpen}>\n <div class=\"flyout\" ref={e => (this.searchFlyout = e)}>\n <div class=\"container box\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-md-10 col-lg-8\">\n <div class=\"form-group form-floating\">\n <input\n type=\"text\"\n id=\"searchBox\"\n class=\"form-control form-control-lg\"\n placeholder={translations.flyoutSearchBoxFloatingLabel}\n autocomplete=\"off\"\n ref={el => (this.searchBox = el)}\n onInput={() => this.handleSearchInput()}\n onKeyDown={e => this.handleKeyDown(e)}\n />\n <label htmlFor=\"searchBox\">{translations.flyoutSearchBoxFloatingLabel}</label>\n <button\n onClick={() => this.startSearch()}\n class=\"nav-link start-search-button\"\n >\n <span class=\"visually-hidden\">{translations.searchSubmit}</span>\n <SvgIcon name=\"pi-search\" />\n </button>\n </div>\n {showPortalRecommendations && (\n <h2 class=\"bold\">{search.searchRecommendations.title}</h2>\n )}\n <ul\n class=\"suggestions no-list\"\n onMouseLeave={() => this.handleMouseLeaveSuggestions()}\n >\n {showPortalRecommendations &&\n search.searchRecommendations.links.map(recommendation => (\n <li key={recommendation.href}>\n <a\n class=\"nav-link search-recommendation\"\n href={new URL(recommendation.href, 'https://post.ch').href}\n data-suggestion-text={recommendation.label}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <span\n class=\"search-recommendation__icon\"\n innerHTML={recommendation.inlineSvg}\n ></span>\n <span>{recommendation.label}</span>\n </a>\n </li>\n ))}\n {this.parcelSuggestion && this.parcelSuggestion.ok && (\n <li>\n <a\n class=\"nav-link parcel-suggestion\"\n href={this.parcelSuggestion.url}\n data-suggestion-text={this.searchBox?.value}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <SvgIcon name=\"pi-letter-parcel\" />\n <span class=\"bold\">{this.parcelSuggestion?.sending?.id}: </span>\n <span>\n {this.parcelSuggestion?.sending?.product},{' '}\n {this.parcelSuggestion?.sending?.recipient.zipcode}{' '}\n {this.parcelSuggestion?.sending?.recipient.city},{' '}\n {this.parcelSuggestion?.sending?.state}\n </span>\n </a>\n </li>\n )}\n {!showPortalRecommendations &&\n this.coveoSuggestions &&\n this.coveoSuggestions.map(suggestion => (\n <li key={suggestion.objectId}>\n <a\n class=\"nav-link\"\n href={suggestion.redirectUrl}\n data-suggestion-text={suggestion.expression}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <SvgIcon name=\"pi-search\" />\n <HighlightedText text={suggestion.highlighted} />\n </a>\n </li>\n ))}\n {!showPortalRecommendations &&\n this.placeSuggestions &&\n this.placeSuggestions.map(suggestion => (\n <li key={suggestion.id}>\n <a\n class=\"nav-link\"\n href={getPlacesUrl(suggestion)}\n data-suggestion-text={suggestion.name}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <SvgIcon name=\"pi-place\" />\n <HighlightedText\n text={highlightPlacesString(\n this.searchBox?.value?.trim(),\n suggestion.name,\n )}\n />\n </a>\n </li>\n ))}\n </ul>\n </div>\n </div>\n </div>\n </div>\n </If>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["getTrackAndTraceApiUrl","id","lang","state","currentLanguage","encodeURIComponent","getTrackAndTraceRedirectUrl","query","packageTrackingRedirectUrl","replace","isParcel","async","searchConfig","parcelInfo","getParcelInfo","ok","redirectPattern","trackingNrPattern","RegExp","test","trackAndTraceReqest","fetch","trackAndTraceResult","json","Object","assign","error","console","warn","message","timestamp","Date","toDateString","getParcelSuggestion","url","getSearchRedirectUrl","isTrackTraceId","getSearchPageUrl","_a","localizedConfig","header","search","undefined","searchPageUrl","searchParam","equalizeArrays","arrayA","arrayB","maxLength","coveoSliced","slice","Math","max","length","coveo","environment","prod","organisation","token","int01","int02","dev01","dev02","devs1","getCoveoSuggestions","_b","config","searchHubName","searchPipelineName","coveoCompletions","coveoResponse","method","headers","Authorization","coveoJSON","completions","map","completion","redirectUrl","expression","gisAPIUrl","placesUrl","hardNormalize","str","toLowerCase","normalize","queryPlaces","searchParameters","entries","limit","reduce","s","k","v","i","geocoderUrl","geocodeResponse","geocodeJSON","Error","info","locations","highlightPlacesString","place","reference","q","indexOfQuery","indexOf","substring","getPlacesUrl","location","name","HighlightedText","props","highlightClass","highlightedString","text","h","innerHTML","postSearchCss","PostSearch","connectedCallback","this","throttledResize","throttle","handleResize","window","addEventListener","passive","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","componentWillUpdate","searchFlyout","searchDropdownOpen","classList","remove","elementHasTransition","userPrefersReducedMotion","Promise","resolve","event","propertyName","componentDidUpdate","getBoundingClientRect","add","searchBox","focus","preventScroll","force","dropdownToggled","emit","open","element","host","coveoSuggestions","placeSuggestions","value","setFocus","setBodyScroll","shadowRoot","toggleButton","querySelector","innerWidth","disableBodyScroll","enableBodyScroll","trim","trackAndTraceInfo","all","parcelSuggestion","deselectSuggestion","handleKeyDown","selectedSuggestion","key","selectedHref","getAttribute","href","startSearch","suggestions","querySelectorAll","parentElement","nextElementSibling","firstElementChild","_d","_c","previousElementSibling","suggestedText","dataset","suggestionText","handleMouseEnterSuggestion","target","handleMouseLeaveSuggestions","render","translations","showPortalRecommendations","searchRecommendations","links","Host","SvgSprite","class","type","onClick","e","toggleDropdown","searchToggleExpanded","searchToggle","SvgIcon","If","condition","ref","placeholder","flyoutSearchBoxFloatingLabel","autocomplete","el","onInput","handleSearchInput","onKeyDown","htmlFor","searchSubmit","title","onMouseLeave","recommendation","URL","label","onMouseEnter","inlineSvg","_f","_e","sending","_h","_g","product","_k","_j","recipient","zipcode","_m","_l","city","_p","_o","suggestion","objectId","highlighted"],"sources":["./src/services/search/parcel.service.ts","./src/services/search/search.service.ts","./src/services/search/coveo.settings.ts","./src/services/search/coveo.service.ts","./src/services/search/places.settings.ts","./src/services/search/search-utilities.ts","./src/services/search/places.service.ts","./src/utils/highlighted.component.tsx","./src/components/post-search/post-search.scss?tag=post-search&encapsulation=shadow","./src/components/post-search/post-search.tsx"],"sourcesContent":["import { state } from '../../data/store';\nimport { ISearchConfig } from '../../models/header.model';\nimport { TrackAndTraceInfo } from '../../models/track-and-trace.model';\n\n// https://www.post.ch/api/trackandtrace?id=99.00.306600.01004883\n\n// Track and trace URL\nexport const getTrackAndTraceApiUrl = (id: string) => {\n const lang = state.currentLanguage;\n return `https://www.post.ch/${lang}/api/trackandtrace?id=${encodeURIComponent(id)}`;\n};\n\n// Get the redire\nexport const getTrackAndTraceRedirectUrl = (\n query: string,\n { packageTrackingRedirectUrl }: ISearchConfig,\n) => {\n return packageTrackingRedirectUrl.replace('{trackingNumber}', encodeURIComponent(query));\n};\n\n/**\n * Check whether a query is a tracking id\n *\n * @param query User query\n * @returns Boolean\n */\nexport const isParcel = async (query: string, searchConfig: ISearchConfig): Promise<boolean> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return parcelInfo.ok;\n};\n\n/**\n * Try to get parcel info from a query that is possibly a tracking id.\n * This is mainly used to check if a search should redirect to track&trace instead of the regular search.\n *\n * @param query User query that is possibly a tracking number\n * @returns Track and trace info\n */\nexport const getParcelInfo = async (\n query: string,\n { redirectPattern }: ISearchConfig,\n): Promise<TrackAndTraceInfo> => {\n const trackingNrPattern = new RegExp(redirectPattern);\n\n if (trackingNrPattern.test(query)) {\n try {\n const trackAndTraceReqest = await fetch(getTrackAndTraceApiUrl(query));\n const trackAndTraceResult = await trackAndTraceReqest.json();\n return { ...trackAndTraceResult, ok: trackAndTraceResult.ok === 'true' };\n } catch (error) {\n console.warn(`Could not check track and trace API due to error: ${error.message}`);\n }\n }\n\n return { ok: false, timestamp: new Date().toDateString() };\n};\n\n/**\n * Get parcel info if query is a parcel or null\n *\n * @param query Parcel id\n * @returns Parcel info and a redirect url or null if not a parcel\n */\nexport const getParcelSuggestion = async (\n query: string,\n searchConfig: ISearchConfig,\n): Promise<(TrackAndTraceInfo & { url: string }) | null> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return parcelInfo.ok\n ? { ...parcelInfo, url: getTrackAndTraceRedirectUrl(query, searchConfig) }\n : null;\n};\n","import { state } from '../../data/store';\nimport { ISearchConfig } from '../../models/header.model';\nimport { getTrackAndTraceRedirectUrl, isParcel } from './parcel.service';\n\n/**\n * Construct a search page url from a query\n *\n * @param query Search term\n * @returns\n */\nexport const getSearchRedirectUrl = async (\n query: string,\n searchConfig: ISearchConfig,\n): Promise<string | undefined> => {\n const isTrackTraceId = await isParcel(query, searchConfig);\n return isTrackTraceId\n ? getTrackAndTraceRedirectUrl(query, searchConfig)\n : getSearchPageUrl(query);\n};\n\n/**\n * Stitch toghether the search page URL\n *\n * @param query Search term\n * @returns Search page URL\n */\nexport const getSearchPageUrl = (query: string): string | undefined => {\n if (state.localizedConfig?.header.search === undefined) {\n return;\n }\n const { searchPageUrl } = state.localizedConfig.header.search;\n const searchParam = `#q=${encodeURIComponent(query)}`;\n return `${searchPageUrl}${searchParam}&t=AllTab`;\n};\n\n/**\n * Equalize the length of two arrays while filling up empty slots up to max. length\n *\n * @param arrayA First array\n * @param arrayB Second array\n * @param maxLength Max. length of result array\n * @returns Array with two resulting arrays\n */\nexport const equalizeArrays = <A, B>(arrayA: A[], arrayB: B[], maxLength = 7): [A[], B[]] => {\n const coveoSliced = arrayA.slice(0, Math.max(maxLength / 2, maxLength - arrayB.length));\n return [coveoSliced, arrayB.slice(0, maxLength - coveoSliced.length)];\n};\n","import { CoveoOptions } from '../../models/coveo.model';\n\n// Coveo constants\nexport const coveo: CoveoOptions = {\n url: 'https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest',\n environment: {\n prod: {\n organisation: 'postchagprod6ef4sbet',\n token: 'xx5b629890-23b9-4fbe-b601-0e8719186969',\n },\n int01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n int02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n devs1: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n test: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n },\n};\n","import { state } from '../../data/store';\nimport { CoveoCompletion, CoveoResponse } from '../../models/coveo.model';\nimport { coveo } from './coveo.settings';\nimport { getSearchPageUrl } from './search.service';\n\n/**\n * Get suggestions from coveo\n * https://docs.coveo.com/en/1459/build-a-search-ui/get-query-suggestions#context-object\n *\n * @param query Search term\n * @returns\n */\nexport const getCoveoSuggestions = async (query: string): Promise<CoveoCompletion[]> => {\n if (state.localizedConfig?.header?.search === undefined) return [];\n const config = state.localizedConfig.header.search;\n const { token, organisation } = coveo.environment[state.environment];\n const url = `${coveo.url}?q=${query}&locale=${state.currentLanguage}&searchHub=${config.searchHubName}&pipeline=${config.searchPipelineName}&organizationId=${organisation}`;\n let coveoCompletions: CoveoCompletion[] | undefined;\n\n try {\n const coveoResponse = await fetch(url, {\n method: 'GET',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n const coveoJSON = (await coveoResponse.json()) as CoveoResponse;\n coveoCompletions = coveoJSON.completions.map(completion => ({\n ...completion,\n redirectUrl: getSearchPageUrl(completion.expression),\n }));\n } catch (error) {\n console.error(\n 'Connection to coveo failed. Did you add \"*.coveo.com\" to your connect-src content security policy and tried turning off your adblocker?',\n );\n }\n\n return coveoCompletions === undefined ? [] : coveoCompletions;\n};\n","// Implement some TOPOS logic into the header search\nexport const gisAPIUrl = 'https://places.post.ch/StandortSuche/StaoCacheService';\nexport const placesUrl = 'https://places.post.ch';\nexport const pois = [\n '001PST',\n '001MP24',\n '001AG-PICK',\n '001PFFIL',\n '001PFST',\n '001BZ',\n '001LZB',\n '001PZ',\n '001LZP',\n '001AL',\n];\n","/**\n * Transform to lowercase, extract accents to separate unicode chars,\n * replace all accent unicode chars so only standard latin chars remain\n * https://stackoverflow.com/questions/990904/remove-accents-diacritics-in-a-string-in-javascript/37511463#37511463\n *\n * @param str Input string\n * @returns\n */\nexport const hardNormalize = (str: string): string =>\n str\n .toLowerCase()\n .normalize('NFD')\n .replace(/[\\u0300-\\u036f]/g, '');\n","import { state } from '../../data/store';\nimport { GeocodeLocation, GeocodeResponse } from '../../models/geocode.model';\nimport { gisAPIUrl, placesUrl } from './places.settings';\nimport { hardNormalize } from './search-utilities';\n\n/**\n * Query the Gis API for locations and localities (pois)\n *\n * @param query User input string\n * @returns\n */\nexport const queryPlaces = async (query: string): Promise<GeocodeLocation[]> => {\n if (query.length === 0) {\n return [];\n }\n\n const searchParameters = Object.entries({\n query: encodeURIComponent(query),\n lang: state.currentLanguage,\n limit: 7,\n }).reduce((s, [k, v], i) => `${s}${i === 0 ? '?' : '&'}${k}=${v}`, '');\n\n const geocoderUrl = `${gisAPIUrl}/Geocode${searchParameters}`;\n\n try {\n const geocodeResponse = await fetch(geocoderUrl);\n const geocodeJSON = (await geocodeResponse.json()) as GeocodeResponse;\n if (!geocodeJSON.ok) {\n throw new Error(geocodeJSON.info);\n }\n return geocodeJSON.locations;\n } catch (error) {\n console.error(\n 'Fetching places failed. Did you add \"places.post.ch\" to your connect-src content security policy?',\n );\n throw error;\n }\n};\n\n/**\n * Try to highlight place suggestions\n * Limitation: accented chars are not handled by this basic function\n *\n * @param query Search term\n * @param place Name of the suggested place\n * @returns\n */\nexport const highlightPlacesString = (query: string | undefined, place: string) => {\n if (query === undefined) return place;\n\n // Strip accents from the string\n const reference = hardNormalize(place);\n const q = hardNormalize(query);\n const indexOfQuery = reference.indexOf(q);\n\n if (indexOfQuery < 0) {\n return place;\n }\n\n return `${place.substring(0, indexOfQuery)}{${place.substring(\n indexOfQuery,\n indexOfQuery + query.length,\n )}}${place.substring(indexOfQuery + query.length, place.length)}`;\n};\n\n/**\n * Get the deeplink to any location found via geocoder\n *\n * @param location A location from the Gis API Geocode endpoint\n * @returns\n */\nexport const getPlacesUrl = (location: GeocodeLocation): string => {\n let url: string;\n\n if (location.id) {\n url = `${placesUrl}/${state.currentLanguage}/${location.id}/detail`;\n } else {\n url = `${placesUrl}?preselecttext=${encodeURIComponent(location.name)}`;\n }\n\n return url;\n};\n","import { h } from '@stencil/core';\n\nexport const HighlightedText = (props: { text: string; highlightClass?: string }) => {\n const highlightClass = props.highlightClass ?? 'bold';\n const highlightedString = props.text\n .replace(/[{(]/g, `<span class=\"${highlightClass}\">`)\n .replace(/[})]/g, '</span>')\n .replace(/[\\[\\]]/g, '');\n return <span innerHTML={highlightedString}></span>;\n};\n","@use \"@swisspost/design-system-styles/variables/color\";\n@use \"@swisspost/design-system-styles/components/forms\";\n@use \"@swisspost/design-system-styles/components/floating-label\";\n@use \"@swisspost/design-system-styles/components/grid\";\n@use \"../../utils/utils.scss\";\n@use \"../../utils/mixins.scss\";\n\n:host {\n display: block;\n}\n\n.search,\n:host {\n height: 100%;\n}\n\n.search-button {\n @extend %nav-link;\n\n height: 100%;\n display: flex;\n align-items: center;\n cursor: pointer;\n padding-right: calc(1rem - 1px);\n padding-left: calc(1rem - 1px);\n\n @include mixins.min(lg) {\n padding: 0 calc(1.125rem - 1px);\n }\n\n @include mixins.min(xl) {\n padding: 0 calc(1.5rem - 1px);\n }\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n .visually-hidden {\n @include mixins.between(rg, lg) {\n @include mixins.reset-visually-hidden();\n\n font-weight: 300;\n margin-right: 0.5rem;\n cursor: pointer;\n }\n }\n}\n\n.flyout {\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n background: white;\n overflow: auto;\n overscroll-behavior: contain;\n padding-top: 3.25rem;\n padding-bottom: 3.25rem;\n z-index: -1;\n transform: translateY(-100%);\n transition: transform 0.35s, box-shadow 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n @include mixins.min(lg) {\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\n\n &.open {\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\n }\n }\n\n @include mixins.max(lg) {\n height: calc(100vh - var(--header-height) - 1px);\n }\n\n &.open {\n transform: translateY(0);\n }\n}\n\n.form-floating {\n .form-control {\n padding-right: 3.5rem;\n }\n}\n\n.start-search-button {\n position: absolute;\n top: 0;\n right: 0;\n height: 100%;\n padding-right: 1rem;\n padding-left: 1rem;\n display: flex;\n align-items: center;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n}\n\n.suggestions {\n margin: 1.5rem 0;\n\n a {\n padding: 0.75rem 1rem;\n\n &:hover,\n &:focus,\n &.selected {\n background: color.$gray-background;\n }\n\n &.parcel-suggestion {\n flex-wrap: wrap;\n }\n }\n}\n\n.search-recommendation__icon {\n height: 1.5em;\n width: 1.5em;\n}\n","import { Component, Host, h, State, Event, EventEmitter, Method, Element } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\nimport { state } from '../../data/store';\nimport { CoveoCompletion } from '../../models/coveo.model';\nimport { GeocodeLocation } from '../../models/geocode.model';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n IsFocusable,\n} from '../../models/header.model';\nimport { getSearchRedirectUrl, equalizeArrays } from '../../services/search/search.service';\nimport { getCoveoSuggestions } from '../../services/search/coveo.service';\nimport {\n getPlacesUrl,\n highlightPlacesString,\n queryPlaces,\n} from '../../services/search/places.service';\nimport { userPrefersReducedMotion, elementHasTransition } from '../../services/ui.service';\nimport { HighlightedText } from '../../utils/highlighted.component';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { TrackAndTraceInfo } from '../../models/track-and-trace.model';\nimport { getParcelSuggestion } from '../../services/search/parcel.service';\nimport { If } from '../../utils/if.component';\n\n@Component({\n tag: 'post-search',\n styleUrl: 'post-search.scss',\n shadow: true,\n})\nexport class PostSearch implements HasDropdown, IsFocusable {\n @State() searchDropdownOpen = false;\n @State() coveoSuggestions: CoveoCompletion[] = [];\n @State() placeSuggestions: GeocodeLocation[] = [];\n @State() parcelSuggestion: (TrackAndTraceInfo & { url: string }) | null = null;\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\n @Element() host: DropdownElement;\n private searchBox?: HTMLInputElement;\n private searchFlyout: HTMLElement | undefined;\n private throttledResize: throttle<() => void>;\n\n connectedCallback() {\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n clearAllBodyScrollLocks();\n }\n\n componentWillUpdate() {\n // Check if search flyout got set to close\n if (this.searchFlyout && !this.searchDropdownOpen) {\n this.searchFlyout.classList.remove('open');\n\n // Check if element has transition applied and whether user prefers to see animations or not\n if (elementHasTransition(this.searchFlyout, 'transform') && !userPrefersReducedMotion()) {\n // Wait for CSS transition 'transform' to end before continuing\n return new Promise<boolean>(resolve => {\n if (this.searchFlyout === undefined) {\n return resolve(true);\n }\n\n this.searchFlyout.addEventListener('transitionend', event => {\n if (event.propertyName === 'transform') {\n resolve(true);\n }\n });\n });\n }\n }\n }\n\n componentDidUpdate() {\n // Search flyout got set to open\n if (this.searchFlyout && this.searchDropdownOpen) {\n // Force browser to redraw/refresh DOM before adding 'open' class\n this.searchFlyout.getBoundingClientRect();\n this.searchFlyout.classList.add('open');\n }\n\n // Focus on the searchBox whenever the dropdown is opened\n if (this.searchDropdownOpen && this.searchBox) {\n this.searchBox.focus({ preventScroll: true });\n }\n }\n\n public async toggleDropdown(event?: Event): Promise<boolean>;\n public async toggleDropdown(force?: boolean): Promise<boolean>;\n\n /**\n * Toggle the dropdown and optionally force an open/closed state\n * @param force Boolean to force open/closed state\n * @returns Boolean indicating open state of the component\n */\n @Method()\n async toggleDropdown(force?: unknown) {\n this.searchDropdownOpen =\n force === undefined || typeof force !== 'boolean' ? !this.searchDropdownOpen : force;\n this.dropdownToggled.emit({ open: this.searchDropdownOpen, element: this.host });\n\n if (!this.searchDropdownOpen) {\n // Reset suggestions when dropdown closes\n this.coveoSuggestions = [];\n this.placeSuggestions = [];\n if (this.searchBox) this.searchBox.value = '';\n this.setFocus();\n } else {\n // Get basic suggestions when dropdown opens\n try {\n this.coveoSuggestions = await getCoveoSuggestions('');\n } catch {}\n }\n\n this.setBodyScroll();\n\n return this.searchDropdownOpen;\n }\n\n /**\n * Sets the focus on the search button\n */\n @Method()\n public async setFocus() {\n const shadowRoot = this.host.shadowRoot;\n if (shadowRoot === null) {\n return;\n }\n const toggleButton = shadowRoot.querySelector<HTMLElement>('.search-button');\n if (toggleButton) {\n toggleButton.focus();\n }\n }\n\n private handleResize() {\n // Only enable/disable body scroll on resize if the search dropdown is open, otherwise this could lead to side effects in other controls\n if (this.searchDropdownOpen) {\n this.setBodyScroll();\n }\n }\n\n /**\n * Disable or re-enable body scrolling, depending on whether search dropdown is open or closed in mobile view (width < 1024px)\n */\n private setBodyScroll() {\n if (this.searchDropdownOpen && window.innerWidth < 1024) {\n disableBodyScroll(this.searchFlyout);\n } else {\n enableBodyScroll(this.searchFlyout);\n }\n }\n\n /**\n * Fetch suggestions from all available sources\n */\n private async handleSearchInput() {\n if (this.searchBox === undefined || state.localizedConfig?.header.search === undefined) {\n return;\n }\n const query = this.searchBox.value.trim();\n\n const [placeSuggestions, coveoSuggestions, trackAndTraceInfo] = await Promise.all([\n queryPlaces(query),\n getCoveoSuggestions(query),\n getParcelSuggestion(query, state.localizedConfig.header.search),\n ]);\n\n this.parcelSuggestion = trackAndTraceInfo;\n\n // Parcel suggestion is more important than any other\n if (trackAndTraceInfo) {\n this.placeSuggestions = [];\n this.coveoSuggestions = [];\n } else {\n [this.coveoSuggestions, this.placeSuggestions] = equalizeArrays(\n coveoSuggestions,\n placeSuggestions,\n 7,\n );\n }\n\n this.deselectSuggestion();\n }\n\n /**\n * Start search on enter\n * @param event\n */\n private handleKeyDown(event: KeyboardEvent) {\n if (this.searchFlyout === undefined) {\n return;\n }\n\n let selectedSuggestion = this.searchFlyout.querySelector<HTMLElement>(\n '.suggestions > li > a.selected',\n );\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n if (selectedSuggestion) {\n const selectedHref = selectedSuggestion.getAttribute('href');\n if (selectedHref !== null) {\n window.location.href = selectedHref;\n }\n } else {\n this.startSearch();\n }\n\n break;\n case 'arrowdown':\n case 'arrowup':\n const suggestions = this.searchFlyout.querySelectorAll('.suggestions > li > a');\n\n this.deselectSuggestion();\n\n if (event.key.toLowerCase() === 'arrowdown') {\n if (selectedSuggestion?.parentElement?.nextElementSibling?.firstElementChild) {\n // Select next suggestion if there's any, otherwise none will be selected\n selectedSuggestion.parentElement.nextElementSibling.firstElementChild.classList.add(\n 'selected',\n );\n } else {\n // If there are any suggestions, select first suggestion in list\n if (suggestions.length > 0) {\n suggestions[0].classList.add('selected');\n }\n }\n } else if (event.key.toLowerCase() === 'arrowup') {\n if (selectedSuggestion?.parentElement?.previousElementSibling?.firstElementChild) {\n // Select previous suggestion if there's any, otherwise none will be selected\n\n selectedSuggestion.parentElement.previousElementSibling.firstElementChild.classList.add(\n 'selected',\n );\n } else {\n // If there are any suggestions, select last suggestion in list\n if (suggestions.length > 0) {\n suggestions[suggestions.length - 1].classList.add('selected');\n }\n }\n }\n\n // Get the newly selected suggestion\n selectedSuggestion = this.searchFlyout.querySelector('.suggestions > li > a.selected');\n const suggestedText = selectedSuggestion?.dataset.suggestionText;\n\n // Update search box value with selected suggestion text\n if (suggestedText !== undefined && this.searchBox) {\n this.searchBox.value = suggestedText;\n }\n\n break;\n }\n }\n\n /**\n * Set selected suggestion on mouse enter\n * @param event\n */\n private handleMouseEnterSuggestion(event: MouseEvent) {\n this.deselectSuggestion();\n\n // Set hovered suggestion element as selected\n (event.target as HTMLElement).classList.add('selected');\n }\n\n /**\n * Set selected suggestion on mouse enter\n * @param event\n */\n private handleMouseLeaveSuggestions() {\n this.deselectSuggestion();\n }\n\n /**\n * Deselect any previously selected suggestion\n */\n private deselectSuggestion() {\n if (this.searchFlyout === undefined) return;\n\n const selectedSuggestion = this.searchFlyout.querySelector('.suggestions .selected');\n\n if (selectedSuggestion) {\n selectedSuggestion.classList.remove('selected');\n }\n }\n\n /**\n * Redirect to the post search page\n */\n private async startSearch() {\n if (this.searchBox && state.localizedConfig?.header.search) {\n const redirectUrl = await getSearchRedirectUrl(\n this.searchBox.value.trim(),\n state.localizedConfig.header.search,\n );\n if (!redirectUrl) return;\n window.location.href = redirectUrl;\n }\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) {\n return;\n }\n const { translations, search } = state.localizedConfig.header;\n const showPortalRecommendations =\n this.searchBox?.value === '' && search.searchRecommendations?.links.length > 0;\n\n return (\n <Host>\n <SvgSprite />\n <div class=\"search\">\n <button\n id=\"post-internet-header-search-button\"\n class=\"search-button\"\n type=\"button\"\n aria-expanded={`${this.searchDropdownOpen}`}\n onClick={e => this.toggleDropdown(e)}\n >\n <span class=\"visually-hidden\">\n {this.searchDropdownOpen\n ? translations.searchToggleExpanded\n : translations.searchToggle}\n </span>\n <SvgIcon name={this.searchDropdownOpen ? 'pi-close' : 'pi-search'} />\n </button>\n <If condition={this.searchDropdownOpen}>\n <div class=\"flyout\" ref={e => (this.searchFlyout = e)}>\n <div class=\"container box\">\n <div class=\"row\">\n <div class=\"col-xs-12 col-md-10 col-lg-8\">\n <div class=\"form-group form-floating\">\n <input\n type=\"text\"\n id=\"searchBox\"\n class=\"form-control form-control-lg\"\n placeholder={translations.flyoutSearchBoxFloatingLabel}\n autocomplete=\"off\"\n ref={el => (this.searchBox = el)}\n onInput={() => this.handleSearchInput()}\n onKeyDown={e => this.handleKeyDown(e)}\n />\n <label htmlFor=\"searchBox\">{translations.flyoutSearchBoxFloatingLabel}</label>\n <button\n onClick={() => this.startSearch()}\n class=\"nav-link start-search-button\"\n >\n <span class=\"visually-hidden\">{translations.searchSubmit}</span>\n <SvgIcon name=\"pi-search\" />\n </button>\n </div>\n {showPortalRecommendations && (\n <h2 class=\"bold\">{search.searchRecommendations.title}</h2>\n )}\n <ul\n class=\"suggestions no-list\"\n onMouseLeave={() => this.handleMouseLeaveSuggestions()}\n >\n {showPortalRecommendations &&\n search.searchRecommendations.links.map(recommendation => (\n <li key={recommendation.href}>\n <a\n class=\"nav-link search-recommendation\"\n href={new URL(recommendation.href, 'https://post.ch').href}\n data-suggestion-text={recommendation.label}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <span\n class=\"search-recommendation__icon\"\n innerHTML={recommendation.inlineSvg}\n ></span>\n <span>{recommendation.label}</span>\n </a>\n </li>\n ))}\n {this.parcelSuggestion && this.parcelSuggestion.ok && (\n <li>\n <a\n class=\"nav-link parcel-suggestion\"\n href={this.parcelSuggestion.url}\n data-suggestion-text={this.searchBox?.value}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <SvgIcon name=\"pi-letter-parcel\" />\n <span class=\"bold\">{this.parcelSuggestion?.sending?.id}: </span>\n <span>\n {this.parcelSuggestion?.sending?.product},{' '}\n {this.parcelSuggestion?.sending?.recipient.zipcode}{' '}\n {this.parcelSuggestion?.sending?.recipient.city},{' '}\n {this.parcelSuggestion?.sending?.state}\n </span>\n </a>\n </li>\n )}\n {!showPortalRecommendations &&\n this.coveoSuggestions &&\n this.coveoSuggestions.map(suggestion => (\n <li key={suggestion.objectId}>\n <a\n class=\"nav-link\"\n href={suggestion.redirectUrl}\n data-suggestion-text={suggestion.expression}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <SvgIcon name=\"pi-search\" />\n <HighlightedText text={suggestion.highlighted} />\n </a>\n </li>\n ))}\n {!showPortalRecommendations &&\n this.placeSuggestions &&\n this.placeSuggestions.map(suggestion => (\n <li key={suggestion.id}>\n <a\n class=\"nav-link\"\n href={getPlacesUrl(suggestion)}\n data-suggestion-text={suggestion.name}\n onMouseEnter={e => this.handleMouseEnterSuggestion(e)}\n >\n <SvgIcon name=\"pi-place\" />\n <HighlightedText\n text={highlightPlacesString(\n this.searchBox?.value?.trim(),\n suggestion.name,\n )}\n />\n </a>\n </li>\n ))}\n </ul>\n </div>\n </div>\n </div>\n </div>\n </If>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["./p-
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
System.register(["./p-8e7844f9.system.js"],(function(l){"use strict";var c;return{setters:[function(l){c=l.h}],execute:function(){var o=l("S",(function(){return c("svg",{"aria-hidden":"true",style:{display:"none"}},c("symbol",{id:"pi-close",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M22.6 23.5L16 17l-6.5 6.6-.9-.9 6.5-6.6-6.6-6.7.9-.9 6.6 6.6 6.5-6.6.9.9L17 16l6.6 6.6-1 .9z"})),c("symbol",{id:"pi-search",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M32 28.2l-11-11c1.1-1.7 1.7-3.7 1.7-5.9C22.7 5.1 17.6 0 11.3 0 5.1 0 0 5.1 0 11.3c0 6.3 5.1 11.3 11.3 11.3 2.2 0 4.2-.6 5.9-1.7l11 11 3.8-3.7zM1.3 11.3c0-5.5 4.5-10 10-10s10 4.5 10 10-4.5 10-10 10-10-4.4-10-10zm17.2 8.8c.1 0 .1-.1.2-.1.6-.5 1.1-1 1.6-1.6l9.8 9.8-1.9 1.9-9.8-9.8c0-.1.1-.1.1-.2z"})),c("symbol",{id:"pi-arrow-down",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M23.6,13.2l-7.5,7.6l-7.6-7.6l0.9-0.9l6.6,6.6l6.6-6.6L23.6,13.2z"})),c("symbol",{id:"pi-menu",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M26.7 8v1.3H5.4V8h21.3zM5.4 17.3h21.3V16H5.4v1.3zm0 8.1h21.3V24H5.4v1.4z"})),c("symbol",{id:"pi-pointy-arrow-right",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M29.4 17.4H0V16h29.5L18.8 5.3h1.9L32 16.7 20.6 28h-1.9l10.7-10.6z"})),c("symbol",{id:"8004_facebook",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M22.8 10.5l-.5 5.4h-4.5V32h-6.4V15.9H8v-5.5h3.4V6.1c0-4 2.2-6.2 7-6.2h4.5v5.6h-3.5c-1.2 0-1.5.5-1.5 1.8v3.1h4.9z"})),c("symbol",{id:"8007_instagram",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M23.1 0H8.9C4 0 0 4 0 8.9v14.2C0 28 4 32 8.9 32h14.2c4.9 0 8.9-4 8.9-8.9V8.9C32 4 28 0 23.1 0zM29 23.1c0 3.3-2.7 5.9-5.9 5.9H8.9C5.6 29 3 26.4 3 23.1V8.9C3 5.6 5.6 3 8.9 3h14.2C26.4 3 29 5.6 29 8.9v14.2zM16 7.5c-4.7 0-8.5 3.8-8.5 8.5s3.8 8.5 8.5 8.5 8.5-3.8 8.5-8.5-3.8-8.5-8.5-8.5zm0 14c-3 0-5.5-2.5-5.5-5.5s2.5-5.5 5.5-5.5 5.5 2.5 5.5 5.5-2.5 5.5-5.5 5.5zM26.5 7.3c0 1-.8 1.9-1.9 1.9-1 0-1.9-.8-1.9-1.9s.8-1.9 1.9-1.9c1 .1 1.9.9 1.9 1.9z"})),c("symbol",{id:"8002_youtube",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M12.7 20.1v-9l8.6 4.5-8.6 4.5zm19-10.5s-.3-2.2-1.3-3.2c-1.2-1.3-2.6-1.3-3.2-1.4-4.5-.3-11.2-.3-11.2-.3s-6.7 0-11.2.3c-.6.1-2 .1-3.2 1.4C.6 7.4.3 9.6.3 9.6S0 12.2 0 14.8v2.4c0 2.6.3 5.2.3 5.2s.3 2.2 1.3 3.2c1.2 1.3 2.8 1.2 3.5 1.4 2.6.2 10.9.2 10.9.2s6.7 0 11.2-.3c.6-.1 2-.1 3.2-1.4 1-1 1.3-3.2 1.3-3.2s.3-2.6.3-5.2v-2.4c0-2.5-.3-5.1-.3-5.1"})),c("symbol",{id:"8017_snapchat",viewBox:"0 0 32 32"},c("path",{d:"M16.328.714h.003c1.396 0 6.121.389 8.35 5.385.721 1.619.616 4.076.488 6.144.081-.031.17-.068.265-.113a2.415 2.415 0 0 1 1.008-.213c.356 0 .71.07.964.178.956.338 1.584 1.122 1.6 1.996.015.717-.35 1.722-2.165 2.44a8.441 8.441 0 0 1-.498.17c-.23.072-.812.257-1.015.424.011.048.037.13.095.248l.023.047.014.032c.016.039 1.684 3.838 5.202 4.418a1.648 1.648 0 0 1 1.377 1.723c-.013.218-.064.43-.148.624-.436 1.02-1.671 1.66-4.085 2.1l-.004.017c-.056.254-.113.504-.19.765-.226.776-.87 1.257-1.712 1.257-.236 0-.522-.033-.874-.103a6.86 6.86 0 0 0-1.399-.15c-.315 0-.644.028-.975.083-.526.087-1.079.478-1.72.931-1.132.801-2.541 1.798-4.705 1.798-.07 0-.14-.002-.21-.004a3.37 3.37 0 0 1-.16.004c-2.163 0-3.572-.996-4.704-1.797-.642-.453-1.196-.845-1.72-.932a6.011 6.011 0 0 0-.976-.083c-.57 0-1.028.09-1.397.162h-.002c-.3.059-.582.114-.874.114-.827 0-1.483-.486-1.712-1.267a11.05 11.05 0 0 1-.19-.772l-.004-.02C1.864 25.88.628 25.238.19 24.21a1.869 1.869 0 0 1-.146-.622 1.644 1.644 0 0 1 1.378-1.719c3.517-.579 5.185-4.379 5.2-4.413l.02-.05.018-.034c.058-.119.084-.2.095-.248-.202-.167-.784-.352-1.019-.426a8.141 8.141 0 0 1-.497-.17c-2.147-.849-2.256-2.091-2.13-2.756.219-1.15 1.425-1.837 2.465-1.837.327 0 .633.065.91.195.166.077.31.133.433.173-.129-2.083-.242-4.57.486-6.203C9.63 1.108 14.347.72 15.737.72l.518-.005h.073Z",fill:"currentColor"})),c("symbol",{id:"8000_twitter",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M32 6.4c-.9 1.3-2 2.5-3.3 3.4.4 9.2-6.5 19.5-18.7 19.5-3.7 0-7.2-1.1-10.1-2.9 3.5.4 7-.6 9.7-2.7-2.9-.1-5.3-2-6.1-4.6 1 .2 2 .1 3-.1a6.6 6.6 0 01-5.3-6.5c.9.5 1.9.8 3 .8a6.6 6.6 0 01-2-8.8c3.2 4 8.1 6.6 13.5 6.9a6.6 6.6 0 016.4-8.1c1.9 0 3.6.8 4.8 2.1 1.5-.3 2.9-.8 4.2-1.6a6.5 6.5 0 01-2.9 3.6c1.4-.1 2.6-.5 3.8-1z"})),c("symbol",{id:"8001_xing",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M13.9 12.7l-5.5 9.7H1.8l5.5-9.7-3.7-6.4h6.6l3.7 6.4zM30 0h-6.6L12.7 19.1 19.8 32h6.5l-7-12.9L30 0z"})),c("symbol",{id:"8005_linkedin",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M7.8 3.9c0 2.2-1.7 3.9-3.9 3.9A3.8 3.8 0 010 3.9a3.9 3.9 0 017.8 0zM.6 32h6.6V10.7H.6V32zm23.6-22c-4.5 0-6.4 3.5-6.4 3.5v-2.9h-6.3V32h6.3V20.8c0-3 1.4-4.8 4-4.8 2.4 0 3.6 1.7 3.6 4.8V32H32V18.5c0-5.7-3.3-8.5-7.8-8.5z"})),c("symbol",{id:"8008_kununu",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M27.2 26l-.1 5.1c0 .4-.4.8-.8.8h-5c-.5 0-.8-.4-.8-.8v-6.7c0-1.8-1.5-3.2-3.3-3.2h-1.8c-1.8 0-3.3 1.4-3.3 3.2v6.7c0 .4-.4.8-.8.8h-5c-.5 0-.8-.4-.8-.8V.8c-.2-.4.2-.8.7-.8h5c.4 0 .8.4.8.8v14.3c1-.4 2.2-.6 3.3-.6H17c1.8 0 3.3-1.4 3.3-3.2l.1-1.6c.1-.4.4-.7.8-.7h5c.4 0 .8.3.8.7v1.6c0 2.5-1 4.8-2.5 6.5 1.6 1.7 2.6 4 2.6 6.6V26z"})),c("symbol",{id:"2064_arrow-enter",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M32 0v32H13.3v-1.3h17.3V1.3H13.3V0H32zM12.3 9.3h-1.9l6.7 6.7H0v1.3h17.1L10.4 24h1.9l7.3-7.3-7.3-7.4z"})),c("symbol",{id:"pi-home",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M16 .7L0 16h5.3v16h8V21.3h5.3V32h8V16H32L16 .7zm9.3 14v16H20V20h-8V30.6H6.7V14.7H3.4L16 2.5l12.7 12.2h-3.4z"})),c("symbol",{id:"3033_question-mark",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M22.7 10.7c0 3.2-2.7 5-4.7 6.2-.9.6-2 1.3-2 1.8v4h-1.3v-4c0-1.2 1.2-1.9 2.6-2.9 1.9-1.3 4.1-2.7 4.1-5.1 0-2.9-2.4-5.3-5.3-5.3s-5.3 2.4-5.3 5.3H9.3C9.3 7 12.3 4 16 4s6.7 3 6.7 6.7zm-8 17.3H16v-2.7h-1.3V28z"})),c("symbol",{id:"3073_phone",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M5.5 2.1c.1 0 .1 0 0 0 .3 0 .5.1.6.3l2.8 4.8c.1.3.1.6-.1.8L7.2 9.6l-.7.7.5 1c3.4 5.6 8.2 10.4 13.8 13.8l.9.6.7-.8 1.5-1.5c.1-.1.3-.2.5-.2.1 0 .2 0 .3.1l4.8 2.8c.2.1.3.3.3.5s0 .4-.2.6l-2 2-.8.8C13.9 28.6 3.4 18.1 2.2 5.1l.9-.9 2-2c.1 0 .3-.1.4-.1m0-1.3c-.5 0-1 .2-1.4.6l-2 2L.9 4.6v.1c1 14 12.3 25.4 26.4 26.5h.1l1.3-1.3 2-2c.4-.4.7-1.1.6-1.7-.1-.6-.4-1.2-1-1.5l-4.8-2.8c-.3-.2-.7-.3-1-.3-.5 0-1 .2-1.4.6l-1.5 1.5c-5.4-3.3-10-7.9-13.4-13.4L9.7 9c.6-.6.8-1.6.3-2.4L7.3 1.8C7 1.2 6.4.9 5.8.8h-.3z"})),c("symbol",{id:"pi-place",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M16 1.3c5.1 0 9.3 4.2 9.3 9.3 0 1.6-.4 3.3-1.3 4.7l-8.1 14-8-14c-.8-1.4-1.2-3-1.2-4.6 0-5.2 4.2-9.4 9.3-9.4M16 0C10.1 0 5.3 4.8 5.3 10.7c0 1.8.5 3.7 1.4 5.3L16 32l9.2-16c.9-1.6 1.4-3.5 1.4-5.4C26.7 4.8 21.9 0 16 0zm0 8c1.5 0 2.7 1.2 2.7 2.7s-1.2 2.7-2.7 2.7-2.7-1.2-2.7-2.7S14.5 8 16 8m0-1.3c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4z"})),c("symbol",{id:"pi-letter-parcel",viewBox:"0 0 32 32"},c("path",{fill:"currentColor",d:"M20.667 2.667l-4 4h5.867l4-4h-5.867zM22 5.333h-2.133L21.2 4h2.133L22 5.333z"}),c("path",{fill:"currentColor",d:"M12.4 0L4 8.4v8.933H0V32h21.333v-4H23.6l8.4-8.4V0H12.4zm6.667 18.667L11.2 26.534a.644.644 0 0 1-.933 0l-8-7.867h16.8zM1.333 19.6L6.4 24.667l-5.067 5.067V19.601zm.934 11.067L7.334 25.6l1.867 1.867c.8.8 2 .8 2.8 0l1.867-1.867 5.067 5.067H2.268zM20 29.733l-5.067-5.067L20 19.599v10.133zm2.667-3.066h-1.333v-9.333h-16v-8h17.333v17.333zM23.067 8h-16.8l6.667-6.667h16.8L23.067 8zm7.6 11.067L24 25.734v-16.8l6.667-6.667v16.8z"})))}))}}}));
|
|
2
|
+
//# sourceMappingURL=p-ee5ae350.system.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as t,h as i,H as e,g as o}from"./p-9e003388.js";import{t as n}from"./p-a74b380d.js";import{s as r}from"./p-10df5210.js";const s='@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}.logo{display:block;-ms-flex-align:center;align-items:center;background:#fc0}.logo svg{display:block;width:var(--header-height);height:var(--header-height)}';const a=class{constructor(i){t(this,i);this.showFaviconLogo=undefined;this.throttledResize=n(300,(()=>this.handleResize()));window.addEventListener("resize",this.throttledResize,{passive:true});this.resizeObserver=new ResizeObserver(this.handleResize.bind(this));this.handleResize()}componentDidLoad(){var t;const i=(t=this.host.parentElement)===null||t===void 0?void 0:t.querySelector(".main-navigation-controls");if(i){this.resizeObserver.observe(i)}}disconnectedCallback(){window.removeEventListener("resize",this.throttledResize);this.resizeObserver.disconnect()}handleResize(){var t,i;const e=(t=this.host.parentElement)===null||t===void 0?void 0:t.querySelector(".main-navigation-controls");const o=(i=this.host.parentElement)===null||i===void 0?void 0:i.querySelector(".menu-button");if(e&&o)this.showFaviconLogo=window.innerWidth-(150+e.clientWidth+o.clientWidth)<=0}render(){var t;if(((t=r.localizedConfig)===null||t===void 0?void 0:t.header.logo)===undefined)return;const o=r.localizedConfig.header.logo;return i(e,null,i("a",{href:o.logoLink,class:"logo"},i("span",{class:"visually-hidden"},o.logoLinkTitle),i("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 72 72","aria-hidden":"true"},i("g",{id:"Logo"},i("rect",{fill:"#ffcc00",x:"0",y:"0",width:"72",height:"72"}),i("polygon",{fill:"#ff0000",points:"34,32.3 34,19 19.7,19 19.7,29.1 10,29.1 10,42.9 19.7,42.9 19.7,53 34,53 34,39.7 30.6,39.7 30.6,49.8 23.1,49.8 23.1,39.7 13.4,39.7 13.4,32.3 23.1,32.3 23.1,22.2 30.6,22.2 30.6,32.3"}),i("path",{d:"M53.56234,31.10526c0,2.41272-1.99154,4.29475-4.51723,4.29475H45.2v-8.3h3.84511C51.66802,27.1,53.56234,28.78889,53.56234,31.10526z M50.69666,19H36v34h9.2V42.9h5.49666c6.75131,0,11.9971-5.15137,11.9971-11.8057C62.69376,24.39136,57.35099,19,50.69666,19z"})))))}get host(){return o(this)}};a.style=s;export{a as post_logo};
|
|
2
|
+
//# sourceMappingURL=p-f7e7c0ff.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["postLogoCss","PostLogo","constructor","hostRef","this","throttledResize","throttle","handleResize","window","addEventListener","passive","resizeObserver","ResizeObserver","bind","componentDidLoad","mainNavControls","_a","host","parentElement","querySelector","observe","disconnectedCallback","removeEventListener","disconnect","menuButton","_b","showFaviconLogo","innerWidth","clientWidth","render","state","localizedConfig","header","logo","undefined","config","h","Host","href","logoLink","class","logoLinkTitle","xmlns","viewBox","id","fill","x","y","width","height","points","d"],"sources":["./src/components/post-logo/post-logo.scss?tag=post-logo&encapsulation=shadow","./src/components/post-logo/post-logo.tsx"],"sourcesContent":["@use '@swisspost/design-system-styles/variables/color';\n@use '../../utils/utils.scss';\n@use '../../utils/mixins.scss';\n\n:host {\n display: block;\n}\n\n.logo {\n display: block;\n align-items: center;\n background: color.$yellow;\n\n svg {\n display: block;\n width: var(--header-height);\n height: var(--header-height);\n }\n}\n","import { Component, Host, h, State, Element } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { state } from '../../data/store';\n\n@Component({\n tag: 'post-logo',\n styleUrl: 'post-logo.scss',\n shadow: true,\n})\nexport class PostLogo {\n @State() showFaviconLogo: boolean;\n @Element() host: HTMLPostLogoElement;\n private throttledResize: throttle<() => void>;\n private resizeObserver: ResizeObserver;\n\n constructor() {\n // Register window resize event listener and a resize observer on the mainnav controls (they change size while controls are being loaded) to display an accurately sized logo\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n this.resizeObserver = new ResizeObserver(this.handleResize.bind(this));\n\n // Initially call the resize handler\n this.handleResize();\n }\n\n componentDidLoad() {\n const mainNavControls = this.host.parentElement?.querySelector('.main-navigation-controls');\n if (mainNavControls) {\n this.resizeObserver.observe(mainNavControls);\n }\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n this.resizeObserver.disconnect();\n }\n\n handleResize() {\n const mainNavControls = this.host.parentElement?.querySelector('.main-navigation-controls');\n const menuButton = this.host.parentElement?.querySelector('.menu-button');\n if (mainNavControls && menuButton)\n this.showFaviconLogo =\n window.innerWidth - (150 + mainNavControls.clientWidth + menuButton.clientWidth) <= 0;\n }\n\n render() {\n if (state.localizedConfig?.header.logo === undefined) return;\n const config = state.localizedConfig.header.logo;\n\n return (\n <Host>\n <a href={config.logoLink} class=\"logo\">\n <span class=\"visually-hidden\">{config.logoLinkTitle}</span>\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 72 72\" aria-hidden=\"true\">\n <g id=\"Logo\">\n <rect fill=\"#ffcc00\" x=\"0\" y=\"0\" width=\"72\" height=\"72\" />\n <polygon\n fill=\"#ff0000\"\n points=\"34,32.3 34,19 19.7,19 19.7,29.1 10,29.1 10,42.9 19.7,42.9 19.7,53 34,53 34,39.7 30.6,39.7 30.6,49.8 23.1,49.8 23.1,39.7 13.4,39.7 13.4,32.3 23.1,32.3 23.1,22.2 30.6,22.2 30.6,32.3\"\n />\n <path d=\"M53.56234,31.10526c0,2.41272-1.99154,4.29475-4.51723,4.29475H45.2v-8.3h3.84511C51.66802,27.1,53.56234,28.78889,53.56234,31.10526z M50.69666,19H36v34h9.2V42.9h5.49666c6.75131,0,11.9971-5.15137,11.9971-11.8057C62.69376,24.39136,57.35099,19,50.69666,19z\" />\n </g>\n </svg>\n </a>\n </Host>\n );\n }\n}\n"],"mappings":"iIAAA,MAAMA,EAAc,8kG,MCSPC,EAAQ,MAMnBC,YAAAC,G,yCAEEC,KAAKC,gBAAkBC,EAAS,KAAK,IAAMF,KAAKG,iBAChDC,OAAOC,iBAAiB,SAAUL,KAAKC,gBAAiB,CAAEK,QAAS,OACnEN,KAAKO,eAAiB,IAAIC,eAAeR,KAAKG,aAAaM,KAAKT,OAGhEA,KAAKG,c,CAGPO,mB,MACE,MAAMC,GAAkBC,EAAAZ,KAAKa,KAAKC,iBAAa,MAAAF,SAAA,SAAAA,EAAEG,cAAc,6BAC/D,GAAIJ,EAAiB,CACnBX,KAAKO,eAAeS,QAAQL,E,EAIhCM,uBACEb,OAAOc,oBAAoB,SAAUlB,KAAKC,iBAC1CD,KAAKO,eAAeY,Y,CAGtBhB,e,QACE,MAAMQ,GAAkBC,EAAAZ,KAAKa,KAAKC,iBAAa,MAAAF,SAAA,SAAAA,EAAEG,cAAc,6BAC/D,MAAMK,GAAaC,EAAArB,KAAKa,KAAKC,iBAAa,MAAAO,SAAA,SAAAA,EAAEN,cAAc,gBAC1D,GAAIJ,GAAmBS,EACrBpB,KAAKsB,gBACHlB,OAAOmB,YAAc,IAAMZ,EAAgBa,YAAcJ,EAAWI,cAAgB,C,CAG1FC,S,MACE,KAAIb,EAAAc,EAAMC,mBAAe,MAAAf,SAAA,SAAAA,EAAEgB,OAAOC,QAASC,UAAW,OACtD,MAAMC,EAASL,EAAMC,gBAAgBC,OAAOC,KAE5C,OACEG,EAACC,EAAI,KACHD,EAAA,KAAGE,KAAMH,EAAOI,SAAUC,MAAM,QAC9BJ,EAAA,QAAMI,MAAM,mBAAmBL,EAAOM,eACtCL,EAAA,OAAKM,MAAM,6BAA6BC,QAAQ,YAAW,cAAa,QACtEP,EAAA,KAAGQ,GAAG,QACJR,EAAA,QAAMS,KAAK,UAAUC,EAAE,IAAIC,EAAE,IAAIC,MAAM,KAAKC,OAAO,OACnDb,EAAA,WACES,KAAK,UACLK,OAAO,wLAETd,EAAA,QAAMe,EAAE,kQ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{h as l}from"./p-
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{h as l}from"./p-9e003388.js";const c=()=>l("svg",{"aria-hidden":"true",style:{display:"none"}},l("symbol",{id:"pi-close",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M22.6 23.5L16 17l-6.5 6.6-.9-.9 6.5-6.6-6.6-6.7.9-.9 6.6 6.6 6.5-6.6.9.9L17 16l6.6 6.6-1 .9z"})),l("symbol",{id:"pi-search",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M32 28.2l-11-11c1.1-1.7 1.7-3.7 1.7-5.9C22.7 5.1 17.6 0 11.3 0 5.1 0 0 5.1 0 11.3c0 6.3 5.1 11.3 11.3 11.3 2.2 0 4.2-.6 5.9-1.7l11 11 3.8-3.7zM1.3 11.3c0-5.5 4.5-10 10-10s10 4.5 10 10-4.5 10-10 10-10-4.4-10-10zm17.2 8.8c.1 0 .1-.1.2-.1.6-.5 1.1-1 1.6-1.6l9.8 9.8-1.9 1.9-9.8-9.8c0-.1.1-.1.1-.2z"})),l("symbol",{id:"pi-arrow-down",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M23.6,13.2l-7.5,7.6l-7.6-7.6l0.9-0.9l6.6,6.6l6.6-6.6L23.6,13.2z"})),l("symbol",{id:"pi-menu",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M26.7 8v1.3H5.4V8h21.3zM5.4 17.3h21.3V16H5.4v1.3zm0 8.1h21.3V24H5.4v1.4z"})),l("symbol",{id:"pi-pointy-arrow-right",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M29.4 17.4H0V16h29.5L18.8 5.3h1.9L32 16.7 20.6 28h-1.9l10.7-10.6z"})),l("symbol",{id:"8004_facebook",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M22.8 10.5l-.5 5.4h-4.5V32h-6.4V15.9H8v-5.5h3.4V6.1c0-4 2.2-6.2 7-6.2h4.5v5.6h-3.5c-1.2 0-1.5.5-1.5 1.8v3.1h4.9z"})),l("symbol",{id:"8007_instagram",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M23.1 0H8.9C4 0 0 4 0 8.9v14.2C0 28 4 32 8.9 32h14.2c4.9 0 8.9-4 8.9-8.9V8.9C32 4 28 0 23.1 0zM29 23.1c0 3.3-2.7 5.9-5.9 5.9H8.9C5.6 29 3 26.4 3 23.1V8.9C3 5.6 5.6 3 8.9 3h14.2C26.4 3 29 5.6 29 8.9v14.2zM16 7.5c-4.7 0-8.5 3.8-8.5 8.5s3.8 8.5 8.5 8.5 8.5-3.8 8.5-8.5-3.8-8.5-8.5-8.5zm0 14c-3 0-5.5-2.5-5.5-5.5s2.5-5.5 5.5-5.5 5.5 2.5 5.5 5.5-2.5 5.5-5.5 5.5zM26.5 7.3c0 1-.8 1.9-1.9 1.9-1 0-1.9-.8-1.9-1.9s.8-1.9 1.9-1.9c1 .1 1.9.9 1.9 1.9z"})),l("symbol",{id:"8002_youtube",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M12.7 20.1v-9l8.6 4.5-8.6 4.5zm19-10.5s-.3-2.2-1.3-3.2c-1.2-1.3-2.6-1.3-3.2-1.4-4.5-.3-11.2-.3-11.2-.3s-6.7 0-11.2.3c-.6.1-2 .1-3.2 1.4C.6 7.4.3 9.6.3 9.6S0 12.2 0 14.8v2.4c0 2.6.3 5.2.3 5.2s.3 2.2 1.3 3.2c1.2 1.3 2.8 1.2 3.5 1.4 2.6.2 10.9.2 10.9.2s6.7 0 11.2-.3c.6-.1 2-.1 3.2-1.4 1-1 1.3-3.2 1.3-3.2s.3-2.6.3-5.2v-2.4c0-2.5-.3-5.1-.3-5.1"})),l("symbol",{id:"8017_snapchat",viewBox:"0 0 32 32"},l("path",{d:"M16.328.714h.003c1.396 0 6.121.389 8.35 5.385.721 1.619.616 4.076.488 6.144.081-.031.17-.068.265-.113a2.415 2.415 0 0 1 1.008-.213c.356 0 .71.07.964.178.956.338 1.584 1.122 1.6 1.996.015.717-.35 1.722-2.165 2.44a8.441 8.441 0 0 1-.498.17c-.23.072-.812.257-1.015.424.011.048.037.13.095.248l.023.047.014.032c.016.039 1.684 3.838 5.202 4.418a1.648 1.648 0 0 1 1.377 1.723c-.013.218-.064.43-.148.624-.436 1.02-1.671 1.66-4.085 2.1l-.004.017c-.056.254-.113.504-.19.765-.226.776-.87 1.257-1.712 1.257-.236 0-.522-.033-.874-.103a6.86 6.86 0 0 0-1.399-.15c-.315 0-.644.028-.975.083-.526.087-1.079.478-1.72.931-1.132.801-2.541 1.798-4.705 1.798-.07 0-.14-.002-.21-.004a3.37 3.37 0 0 1-.16.004c-2.163 0-3.572-.996-4.704-1.797-.642-.453-1.196-.845-1.72-.932a6.011 6.011 0 0 0-.976-.083c-.57 0-1.028.09-1.397.162h-.002c-.3.059-.582.114-.874.114-.827 0-1.483-.486-1.712-1.267a11.05 11.05 0 0 1-.19-.772l-.004-.02C1.864 25.88.628 25.238.19 24.21a1.869 1.869 0 0 1-.146-.622 1.644 1.644 0 0 1 1.378-1.719c3.517-.579 5.185-4.379 5.2-4.413l.02-.05.018-.034c.058-.119.084-.2.095-.248-.202-.167-.784-.352-1.019-.426a8.141 8.141 0 0 1-.497-.17c-2.147-.849-2.256-2.091-2.13-2.756.219-1.15 1.425-1.837 2.465-1.837.327 0 .633.065.91.195.166.077.31.133.433.173-.129-2.083-.242-4.57.486-6.203C9.63 1.108 14.347.72 15.737.72l.518-.005h.073Z",fill:"currentColor"})),l("symbol",{id:"8000_twitter",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M32 6.4c-.9 1.3-2 2.5-3.3 3.4.4 9.2-6.5 19.5-18.7 19.5-3.7 0-7.2-1.1-10.1-2.9 3.5.4 7-.6 9.7-2.7-2.9-.1-5.3-2-6.1-4.6 1 .2 2 .1 3-.1a6.6 6.6 0 01-5.3-6.5c.9.5 1.9.8 3 .8a6.6 6.6 0 01-2-8.8c3.2 4 8.1 6.6 13.5 6.9a6.6 6.6 0 016.4-8.1c1.9 0 3.6.8 4.8 2.1 1.5-.3 2.9-.8 4.2-1.6a6.5 6.5 0 01-2.9 3.6c1.4-.1 2.6-.5 3.8-1z"})),l("symbol",{id:"8001_xing",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M13.9 12.7l-5.5 9.7H1.8l5.5-9.7-3.7-6.4h6.6l3.7 6.4zM30 0h-6.6L12.7 19.1 19.8 32h6.5l-7-12.9L30 0z"})),l("symbol",{id:"8005_linkedin",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M7.8 3.9c0 2.2-1.7 3.9-3.9 3.9A3.8 3.8 0 010 3.9a3.9 3.9 0 017.8 0zM.6 32h6.6V10.7H.6V32zm23.6-22c-4.5 0-6.4 3.5-6.4 3.5v-2.9h-6.3V32h6.3V20.8c0-3 1.4-4.8 4-4.8 2.4 0 3.6 1.7 3.6 4.8V32H32V18.5c0-5.7-3.3-8.5-7.8-8.5z"})),l("symbol",{id:"8008_kununu",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M27.2 26l-.1 5.1c0 .4-.4.8-.8.8h-5c-.5 0-.8-.4-.8-.8v-6.7c0-1.8-1.5-3.2-3.3-3.2h-1.8c-1.8 0-3.3 1.4-3.3 3.2v6.7c0 .4-.4.8-.8.8h-5c-.5 0-.8-.4-.8-.8V.8c-.2-.4.2-.8.7-.8h5c.4 0 .8.4.8.8v14.3c1-.4 2.2-.6 3.3-.6H17c1.8 0 3.3-1.4 3.3-3.2l.1-1.6c.1-.4.4-.7.8-.7h5c.4 0 .8.3.8.7v1.6c0 2.5-1 4.8-2.5 6.5 1.6 1.7 2.6 4 2.6 6.6V26z"})),l("symbol",{id:"2064_arrow-enter",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M32 0v32H13.3v-1.3h17.3V1.3H13.3V0H32zM12.3 9.3h-1.9l6.7 6.7H0v1.3h17.1L10.4 24h1.9l7.3-7.3-7.3-7.4z"})),l("symbol",{id:"pi-home",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M16 .7L0 16h5.3v16h8V21.3h5.3V32h8V16H32L16 .7zm9.3 14v16H20V20h-8V30.6H6.7V14.7H3.4L16 2.5l12.7 12.2h-3.4z"})),l("symbol",{id:"3033_question-mark",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M22.7 10.7c0 3.2-2.7 5-4.7 6.2-.9.6-2 1.3-2 1.8v4h-1.3v-4c0-1.2 1.2-1.9 2.6-2.9 1.9-1.3 4.1-2.7 4.1-5.1 0-2.9-2.4-5.3-5.3-5.3s-5.3 2.4-5.3 5.3H9.3C9.3 7 12.3 4 16 4s6.7 3 6.7 6.7zm-8 17.3H16v-2.7h-1.3V28z"})),l("symbol",{id:"3073_phone",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M5.5 2.1c.1 0 .1 0 0 0 .3 0 .5.1.6.3l2.8 4.8c.1.3.1.6-.1.8L7.2 9.6l-.7.7.5 1c3.4 5.6 8.2 10.4 13.8 13.8l.9.6.7-.8 1.5-1.5c.1-.1.3-.2.5-.2.1 0 .2 0 .3.1l4.8 2.8c.2.1.3.3.3.5s0 .4-.2.6l-2 2-.8.8C13.9 28.6 3.4 18.1 2.2 5.1l.9-.9 2-2c.1 0 .3-.1.4-.1m0-1.3c-.5 0-1 .2-1.4.6l-2 2L.9 4.6v.1c1 14 12.3 25.4 26.4 26.5h.1l1.3-1.3 2-2c.4-.4.7-1.1.6-1.7-.1-.6-.4-1.2-1-1.5l-4.8-2.8c-.3-.2-.7-.3-1-.3-.5 0-1 .2-1.4.6l-1.5 1.5c-5.4-3.3-10-7.9-13.4-13.4L9.7 9c.6-.6.8-1.6.3-2.4L7.3 1.8C7 1.2 6.4.9 5.8.8h-.3z"})),l("symbol",{id:"pi-place",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M16 1.3c5.1 0 9.3 4.2 9.3 9.3 0 1.6-.4 3.3-1.3 4.7l-8.1 14-8-14c-.8-1.4-1.2-3-1.2-4.6 0-5.2 4.2-9.4 9.3-9.4M16 0C10.1 0 5.3 4.8 5.3 10.7c0 1.8.5 3.7 1.4 5.3L16 32l9.2-16c.9-1.6 1.4-3.5 1.4-5.4C26.7 4.8 21.9 0 16 0zm0 8c1.5 0 2.7 1.2 2.7 2.7s-1.2 2.7-2.7 2.7-2.7-1.2-2.7-2.7S14.5 8 16 8m0-1.3c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4z"})),l("symbol",{id:"pi-letter-parcel",viewBox:"0 0 32 32"},l("path",{fill:"currentColor",d:"M20.667 2.667l-4 4h5.867l4-4h-5.867zM22 5.333h-2.133L21.2 4h2.133L22 5.333z"}),l("path",{fill:"currentColor",d:"M12.4 0L4 8.4v8.933H0V32h21.333v-4H23.6l8.4-8.4V0H12.4zm6.667 18.667L11.2 26.534a.644.644 0 0 1-.933 0l-8-7.867h16.8zM1.333 19.6L6.4 24.667l-5.067 5.067V19.601zm.934 11.067L7.334 25.6l1.867 1.867c.8.8 2 .8 2.8 0l1.867-1.867 5.067 5.067H2.268zM20 29.733l-5.067-5.067L20 19.599v10.133zm2.667-3.066h-1.333v-9.333h-16v-8h17.333v17.333zM23.067 8h-16.8l6.667-6.667h16.8L23.067 8zm7.6 11.067L24 25.734v-16.8l6.667-6.667v16.8z"})));export{c as S};
|
|
2
|
+
//# sourceMappingURL=p-f98e732f.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as i,h as s,H as n,g as t}from"./p-
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{r as i,h as s,H as n,g as t}from"./p-9e003388.js";import{s as l}from"./p-10df5210.js";import{t as e}from"./p-1be304cd.js";import{S as a}from"./p-0f245a12.js";const o=":host{display:block}.skiplinks a{position:absolute;top:0.5rem;left:0.5rem;clip:rect(0 0 0 0);width:1px;overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:0.25rem;background:white}.skiplinks a:focus-visible{clip:unset;width:auto}";const r=class{constructor(s){i(this,s)}getMainId(){var i;return(i=document.querySelector("main[id]"))===null||i===void 0?void 0:i.getAttribute("id")}setFocus(i){const s=this.host.closest(".post-internet-header");if(!s){return}const n=s.querySelector(i);if(n){n.setFocus()}}focusMain(){this.setFocus("post-main-navigation")}focusSearch(){this.setFocus("post-search")}focusLogin(){this.setFocus("post-klp-login-widget")}render(){var i;const t=(i=l.localizedConfig)===null||i===void 0?void 0:i.header;const o=this.getMainId();if(t===undefined){return}return s(n,null,s("div",{class:"skiplinks"},s("h1",{class:"visually-hidden"},e("Navigate on post.ch")),s("ul",{class:"no-list"},s("li",null,s("a",{class:"nav-link",href:t.logo.logoLink,accessKey:"0",title:"[ALT + 0]"},s("span",null,t.logo.logoLinkTitle),s(a,{name:"pi-pointy-arrow-right"}))),s("li",null,s("a",{class:"nav-link",href:"#post-internet-header-main-navigation",accessKey:"1",title:"[ALT + 1]",onClick:()=>this.focusMain()},s("span",null,t.translations.navMainAriaLabel),s(a,{name:"pi-pointy-arrow-right"}))),o?s("li",null,s("a",{class:"nav-link",href:`#${o}`,accessKey:"2",title:"[ALT + 2]"},s("span",null,e("Go to main content")),s(a,{name:"pi-pointy-arrow-right"}))):null,l.search?s("li",null,s("a",{class:"nav-link",href:"#post-internet-header-search-button",accessKey:"3",title:"[ALT + 3]",onClick:()=>this.focusSearch()},s("span",null,e("Go to search")),s(a,{name:"pi-pointy-arrow-right"}))):null,l.login?s("li",null,s("a",{class:"nav-link",href:"#post-klp-login-widget",accessKey:"4",title:"[ALT + 4]",onClick:()=>this.focusLogin()},s("span",null,e("Go to login")),s(a,{name:"pi-pointy-arrow-right"}))):null)))}get host(){return t(this)}};r.style=o;export{r as post_skiplinks};
|
|
2
|
+
//# sourceMappingURL=p-fdbd28fa.entry.js.map
|