@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.
Files changed (213) hide show
  1. package/dist/cjs/{index-d5b7ae1a.js → index-eb482698.js} +1 -1
  2. package/dist/cjs/{index-d5b7ae1a.js.map → index-eb482698.js.map} +1 -1
  3. package/dist/cjs/{language.service-f769504f.js → language.service-830d8d9b.js} +2 -2
  4. package/dist/cjs/{language.service-f769504f.js.map → language.service-830d8d9b.js.map} +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/loader.cjs.js.map +1 -1
  7. package/dist/cjs/post-klp-login-widget.cjs.entry.js +4 -4
  8. package/dist/cjs/post-klp-login-widget.cjs.entry.js.map +1 -1
  9. package/dist/cjs/post-language-switch.cjs.entry.js +5 -5
  10. package/dist/cjs/post-logo.cjs.entry.js +4 -17
  11. package/dist/cjs/post-logo.cjs.entry.js.map +1 -1
  12. package/dist/cjs/post-main-navigation.cjs.entry.js +5 -5
  13. package/dist/cjs/post-main-navigation.cjs.entry.js.map +1 -1
  14. package/dist/cjs/post-meta-navigation.cjs.entry.js +2 -2
  15. package/dist/cjs/post-search.cjs.entry.js +6 -6
  16. package/dist/cjs/post-search.cjs.entry.js.map +1 -1
  17. package/dist/cjs/post-skiplinks.cjs.entry.js +4 -4
  18. package/dist/cjs/{store-8b73c1d2.js → store-a866bc4a.js} +2 -2
  19. package/dist/cjs/{store-8b73c1d2.js.map → store-a866bc4a.js.map} +1 -1
  20. package/dist/cjs/{svg-icon.component-a7308b93.js → svg-icon.component-83a42c36.js} +2 -2
  21. package/dist/cjs/{svg-icon.component-a7308b93.js.map → svg-icon.component-83a42c36.js.map} +1 -1
  22. package/dist/cjs/{svg-sprite.component-7cb54614.js → svg-sprite.component-b8f7a7a7.js} +2 -2
  23. package/dist/cjs/{svg-sprite.component-7cb54614.js.map → svg-sprite.component-b8f7a7a7.js.map} +1 -1
  24. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +6 -6
  25. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js.map +1 -1
  26. package/dist/cjs/swisspost-internet-footer.cjs.entry.js +4 -4
  27. package/dist/cjs/swisspost-internet-footer.cjs.entry.js.map +1 -1
  28. package/dist/cjs/swisspost-internet-header.cjs.entry.js +45 -29
  29. package/dist/cjs/swisspost-internet-header.cjs.entry.js.map +1 -1
  30. package/dist/cjs/swisspost-internet-header.cjs.js +2 -2
  31. package/dist/cjs/swisspost-internet-header.cjs.js.map +1 -1
  32. package/dist/collection/collection-manifest.json +1 -1
  33. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.css +0 -1
  34. package/dist/collection/components/post-internet-footer/post-internet-footer.css +0 -1
  35. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.css +0 -1
  36. package/dist/collection/components/post-logo/post-logo.css +2 -21
  37. package/dist/collection/components/post-logo/post-logo.js +1 -2
  38. package/dist/collection/components/post-logo/post-logo.js.map +1 -1
  39. package/dist/collection/components/post-main-navigation/post-main-navigation.css +0 -3
  40. package/dist/collection/components/post-search/post-search.css +43 -46
  41. package/dist/collection/components/post-search/post-search.js +1 -1
  42. package/dist/collection/components/post-search/post-search.js.map +1 -1
  43. package/dist/collection/services/config.service.js +25 -8
  44. package/dist/collection/services/config.service.js.map +1 -1
  45. package/dist/components/post-klp-login-widget2.js +2 -2
  46. package/dist/components/post-klp-login-widget2.js.map +1 -1
  47. package/dist/components/post-language-switch2.js +1 -1
  48. package/dist/components/post-logo2.js +4 -17
  49. package/dist/components/post-logo2.js.map +1 -1
  50. package/dist/components/post-main-navigation2.js +2 -2
  51. package/dist/components/post-main-navigation2.js.map +1 -1
  52. package/dist/components/post-meta-navigation2.js +1 -1
  53. package/dist/components/post-search2.js +3 -3
  54. package/dist/components/post-search2.js.map +1 -1
  55. package/dist/components/post-skiplinks2.js +1 -1
  56. package/dist/components/store.js.map +1 -1
  57. package/dist/components/swisspost-internet-breadcrumbs.js +2 -2
  58. package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
  59. package/dist/components/swisspost-internet-footer.js +2 -2
  60. package/dist/components/swisspost-internet-footer.js.map +1 -1
  61. package/dist/components/swisspost-internet-header.js +41 -25
  62. package/dist/components/swisspost-internet-header.js.map +1 -1
  63. package/dist/esm/{index-2c50ce20.js → index-78606a15.js} +1 -1
  64. package/dist/esm/{index-2c50ce20.js.map → index-78606a15.js.map} +1 -1
  65. package/dist/esm/{language.service-1a20901e.js → language.service-b62eadfa.js} +2 -2
  66. package/dist/esm/{language.service-1a20901e.js.map → language.service-b62eadfa.js.map} +1 -1
  67. package/dist/esm/loader.js +3 -3
  68. package/dist/esm/loader.js.map +1 -1
  69. package/dist/esm/post-klp-login-widget.entry.js +4 -4
  70. package/dist/esm/post-klp-login-widget.entry.js.map +1 -1
  71. package/dist/esm/post-language-switch.entry.js +5 -5
  72. package/dist/esm/post-logo.entry.js +4 -17
  73. package/dist/esm/post-logo.entry.js.map +1 -1
  74. package/dist/esm/post-main-navigation.entry.js +5 -5
  75. package/dist/esm/post-main-navigation.entry.js.map +1 -1
  76. package/dist/esm/post-meta-navigation.entry.js +2 -2
  77. package/dist/esm/post-search.entry.js +6 -6
  78. package/dist/esm/post-search.entry.js.map +1 -1
  79. package/dist/esm/post-skiplinks.entry.js +4 -4
  80. package/dist/esm/{store-b8f9cf53.js → store-17acb817.js} +2 -2
  81. package/dist/esm/{store-b8f9cf53.js.map → store-17acb817.js.map} +1 -1
  82. package/dist/esm/{svg-icon.component-ecb1700c.js → svg-icon.component-1497ec37.js} +2 -2
  83. package/dist/esm/{svg-icon.component-ecb1700c.js.map → svg-icon.component-1497ec37.js.map} +1 -1
  84. package/dist/esm/{svg-sprite.component-93c29b17.js → svg-sprite.component-bbdea5b3.js} +2 -2
  85. package/dist/esm/{svg-sprite.component-93c29b17.js.map → svg-sprite.component-bbdea5b3.js.map} +1 -1
  86. package/dist/esm/swisspost-internet-breadcrumbs.entry.js +6 -6
  87. package/dist/esm/swisspost-internet-breadcrumbs.entry.js.map +1 -1
  88. package/dist/esm/swisspost-internet-footer.entry.js +4 -4
  89. package/dist/esm/swisspost-internet-footer.entry.js.map +1 -1
  90. package/dist/esm/swisspost-internet-header.entry.js +45 -29
  91. package/dist/esm/swisspost-internet-header.entry.js.map +1 -1
  92. package/dist/esm/swisspost-internet-header.js +3 -3
  93. package/dist/esm/swisspost-internet-header.js.map +1 -1
  94. package/dist/esm-es5/{index-2c50ce20.js → index-78606a15.js} +1 -1
  95. package/dist/esm-es5/{index-2c50ce20.js.map → index-78606a15.js.map} +1 -1
  96. package/dist/esm-es5/{language.service-1a20901e.js → language.service-b62eadfa.js} +2 -2
  97. package/dist/esm-es5/loader.js +1 -1
  98. package/dist/esm-es5/loader.js.map +1 -1
  99. package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
  100. package/dist/esm-es5/post-klp-login-widget.entry.js.map +1 -1
  101. package/dist/esm-es5/post-language-switch.entry.js +1 -1
  102. package/dist/esm-es5/post-logo.entry.js +1 -1
  103. package/dist/esm-es5/post-logo.entry.js.map +1 -1
  104. package/dist/esm-es5/post-main-navigation.entry.js +1 -1
  105. package/dist/esm-es5/post-main-navigation.entry.js.map +1 -1
  106. package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
  107. package/dist/esm-es5/post-search.entry.js +1 -1
  108. package/dist/esm-es5/post-search.entry.js.map +1 -1
  109. package/dist/esm-es5/post-skiplinks.entry.js +1 -1
  110. package/dist/esm-es5/{store-b8f9cf53.js → store-17acb817.js} +2 -2
  111. package/dist/esm-es5/{store-b8f9cf53.js.map → store-17acb817.js.map} +1 -1
  112. package/dist/esm-es5/svg-icon.component-1497ec37.js +2 -0
  113. package/dist/esm-es5/{svg-sprite.component-93c29b17.js → svg-sprite.component-bbdea5b3.js} +2 -2
  114. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +2 -2
  115. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js.map +1 -1
  116. package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
  117. package/dist/esm-es5/swisspost-internet-footer.entry.js.map +1 -1
  118. package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
  119. package/dist/esm-es5/swisspost-internet-header.entry.js.map +1 -1
  120. package/dist/esm-es5/swisspost-internet-header.js +1 -1
  121. package/dist/esm-es5/swisspost-internet-header.js.map +1 -1
  122. package/dist/swisspost-internet-header/{p-d11cfbf6.entry.js → p-03a31033.entry.js} +2 -2
  123. package/dist/swisspost-internet-header/p-03f017ef.system.entry.js +2 -0
  124. package/dist/swisspost-internet-header/p-03f017ef.system.entry.js.map +1 -0
  125. package/dist/swisspost-internet-header/p-0f245a12.js +2 -0
  126. package/dist/swisspost-internet-header/{p-0e63e0aa.js → p-10df5210.js} +2 -2
  127. package/dist/swisspost-internet-header/{p-0e63e0aa.js.map → p-10df5210.js.map} +1 -1
  128. package/dist/swisspost-internet-header/{p-d93a7553.js → p-1be304cd.js} +2 -2
  129. package/dist/swisspost-internet-header/{p-19520037.system.entry.js → p-1d492bf7.system.entry.js} +2 -2
  130. package/dist/swisspost-internet-header/{p-6e24784e.system.js → p-1e5511b0.system.js} +2 -2
  131. package/dist/swisspost-internet-header/{p-f529e4b9.system.entry.js → p-208f6e0d.system.entry.js} +2 -2
  132. package/dist/swisspost-internet-header/{p-f529e4b9.system.entry.js.map → p-208f6e0d.system.entry.js.map} +1 -1
  133. package/dist/swisspost-internet-header/{p-2ff142da.system.entry.js → p-20d95fad.system.entry.js} +2 -2
  134. package/dist/swisspost-internet-header/p-248800c9.system.entry.js +2 -0
  135. package/dist/swisspost-internet-header/{p-2c0aaaf5.system.entry.js.map → p-248800c9.system.entry.js.map} +1 -1
  136. package/dist/swisspost-internet-header/p-2d6bb138.system.entry.js +7 -0
  137. package/dist/swisspost-internet-header/{p-478e297c.system.entry.js.map → p-2d6bb138.system.entry.js.map} +1 -1
  138. package/dist/swisspost-internet-header/{p-b8b59050.system.js → p-3d4741e0.system.js} +2 -2
  139. package/dist/swisspost-internet-header/{p-b8b59050.system.js.map → p-3d4741e0.system.js.map} +1 -1
  140. package/dist/swisspost-internet-header/{p-5ac43fe4.entry.js → p-491deab8.entry.js} +2 -2
  141. package/dist/swisspost-internet-header/{p-5ac43fe4.entry.js.map → p-491deab8.entry.js.map} +1 -1
  142. package/dist/swisspost-internet-header/p-536e6ce1.entry.js +2 -0
  143. package/dist/swisspost-internet-header/p-536e6ce1.entry.js.map +1 -0
  144. package/dist/swisspost-internet-header/{p-f115d8f1.system.js → p-6ae971d9.system.js} +2 -2
  145. package/dist/swisspost-internet-header/p-7198fb8e.entry.js +2 -0
  146. package/dist/swisspost-internet-header/{p-42e2fc84.entry.js.map → p-7198fb8e.entry.js.map} +1 -1
  147. package/dist/swisspost-internet-header/{p-50910fe5.system.entry.js → p-7d94c528.system.entry.js} +2 -2
  148. package/dist/swisspost-internet-header/{p-df383e1a.system.js → p-8e7844f9.system.js} +1 -1
  149. package/dist/swisspost-internet-header/{p-df383e1a.system.js.map → p-8e7844f9.system.js.map} +1 -1
  150. package/dist/swisspost-internet-header/p-9bbabe3d.entry.js +2 -0
  151. package/dist/swisspost-internet-header/{p-3da1c444.entry.js.map → p-9bbabe3d.entry.js.map} +1 -1
  152. package/dist/swisspost-internet-header/{p-12c07c17.js → p-9e003388.js} +1 -1
  153. package/dist/swisspost-internet-header/{p-12c07c17.js.map → p-9e003388.js.map} +1 -1
  154. package/dist/swisspost-internet-header/p-a6cde721.system.entry.js +2 -0
  155. package/dist/swisspost-internet-header/{p-62896d7a.system.entry.js.map → p-a6cde721.system.entry.js.map} +1 -1
  156. package/dist/swisspost-internet-header/p-c6df26bc.system.entry.js +2 -0
  157. package/dist/swisspost-internet-header/p-c6df26bc.system.entry.js.map +1 -0
  158. package/dist/swisspost-internet-header/p-caaccb1b.entry.js +7 -0
  159. package/dist/swisspost-internet-header/{p-e604a987.entry.js.map → p-caaccb1b.entry.js.map} +1 -1
  160. package/dist/swisspost-internet-header/{p-15192462.system.js → p-d05c1317.system.js} +2 -2
  161. package/dist/swisspost-internet-header/{p-15192462.system.js.map → p-d05c1317.system.js.map} +1 -1
  162. package/dist/swisspost-internet-header/p-d18bd8c3.system.entry.js +2 -0
  163. package/dist/swisspost-internet-header/{p-5e362f9d.system.entry.js.map → p-d18bd8c3.system.entry.js.map} +1 -1
  164. package/dist/swisspost-internet-header/{p-bc79a64a.entry.js → p-d4c4656c.entry.js} +2 -2
  165. package/dist/swisspost-internet-header/p-e350a2cd.entry.js +2 -0
  166. package/dist/swisspost-internet-header/{p-58b4b6f9.entry.js.map → p-e350a2cd.entry.js.map} +1 -1
  167. package/dist/swisspost-internet-header/{p-bb7f28f0.system.js → p-ee5ae350.system.js} +2 -2
  168. package/dist/swisspost-internet-header/p-f7e7c0ff.entry.js +2 -0
  169. package/dist/swisspost-internet-header/p-f7e7c0ff.entry.js.map +1 -0
  170. package/dist/swisspost-internet-header/{p-6423a6ea.js → p-f98e732f.js} +2 -2
  171. package/dist/swisspost-internet-header/{p-10dc2991.entry.js → p-fdbd28fa.entry.js} +2 -2
  172. package/dist/swisspost-internet-header/swisspost-internet-header.css +1 -1
  173. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
  174. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js.map +1 -1
  175. package/dist/swisspost-internet-header/swisspost-internet-header.js +1 -1
  176. package/loader/index.d.ts +1 -1
  177. package/package.json +15 -16
  178. package/dist/collection/components/post-logo/logo-sprite.component.js +0 -4
  179. package/dist/collection/components/post-logo/logo-sprite.component.js.map +0 -1
  180. package/dist/esm-es5/svg-icon.component-ecb1700c.js +0 -2
  181. package/dist/swisspost-internet-header/p-2c0aaaf5.system.entry.js +0 -2
  182. package/dist/swisspost-internet-header/p-3a566b21.entry.js +0 -2
  183. package/dist/swisspost-internet-header/p-3a566b21.entry.js.map +0 -1
  184. package/dist/swisspost-internet-header/p-3da1c444.entry.js +0 -2
  185. package/dist/swisspost-internet-header/p-42e2fc84.entry.js +0 -2
  186. package/dist/swisspost-internet-header/p-478e297c.system.entry.js +0 -7
  187. package/dist/swisspost-internet-header/p-4a2492f9.system.entry.js +0 -2
  188. package/dist/swisspost-internet-header/p-4a2492f9.system.entry.js.map +0 -1
  189. package/dist/swisspost-internet-header/p-58b4b6f9.entry.js +0 -2
  190. package/dist/swisspost-internet-header/p-5e362f9d.system.entry.js +0 -2
  191. package/dist/swisspost-internet-header/p-62896d7a.system.entry.js +0 -2
  192. package/dist/swisspost-internet-header/p-9bc33c5f.js +0 -2
  193. package/dist/swisspost-internet-header/p-cd85c4fe.entry.js +0 -2
  194. package/dist/swisspost-internet-header/p-cd85c4fe.entry.js.map +0 -1
  195. package/dist/swisspost-internet-header/p-dc228941.system.entry.js +0 -2
  196. package/dist/swisspost-internet-header/p-dc228941.system.entry.js.map +0 -1
  197. package/dist/swisspost-internet-header/p-e604a987.entry.js +0 -7
  198. package/dist/types/components/post-logo/logo-sprite.component.d.ts +0 -4
  199. /package/dist/esm-es5/{language.service-1a20901e.js.map → language.service-b62eadfa.js.map} +0 -0
  200. /package/dist/esm-es5/{svg-icon.component-ecb1700c.js.map → svg-icon.component-1497ec37.js.map} +0 -0
  201. /package/dist/esm-es5/{svg-sprite.component-93c29b17.js.map → svg-sprite.component-bbdea5b3.js.map} +0 -0
  202. /package/dist/swisspost-internet-header/{p-d11cfbf6.entry.js.map → p-03a31033.entry.js.map} +0 -0
  203. /package/dist/swisspost-internet-header/{p-9bc33c5f.js.map → p-0f245a12.js.map} +0 -0
  204. /package/dist/swisspost-internet-header/{p-d93a7553.js.map → p-1be304cd.js.map} +0 -0
  205. /package/dist/swisspost-internet-header/{p-19520037.system.entry.js.map → p-1d492bf7.system.entry.js.map} +0 -0
  206. /package/dist/swisspost-internet-header/{p-6e24784e.system.js.map → p-1e5511b0.system.js.map} +0 -0
  207. /package/dist/swisspost-internet-header/{p-2ff142da.system.entry.js.map → p-20d95fad.system.entry.js.map} +0 -0
  208. /package/dist/swisspost-internet-header/{p-f115d8f1.system.js.map → p-6ae971d9.system.js.map} +0 -0
  209. /package/dist/swisspost-internet-header/{p-50910fe5.system.entry.js.map → p-7d94c528.system.entry.js.map} +0 -0
  210. /package/dist/swisspost-internet-header/{p-bc79a64a.entry.js.map → p-d4c4656c.entry.js.map} +0 -0
  211. /package/dist/swisspost-internet-header/{p-bb7f28f0.system.js.map → p-ee5ae350.system.js.map} +0 -0
  212. /package/dist/swisspost-internet-header/{p-6423a6ea.js.map → p-f98e732f.js.map} +0 -0
  213. /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 i,r as t,c as n,H as e,g as o}from"./p-9e003388.js";import{t as a}from"./p-a74b380d.js";import{c as s,d as l,e as r}from"./p-a119b38d.js";import{s as d}from"./p-10df5210.js";import{u as f}from"./p-45db66a6.js";import{S as m}from"./p-f98e732f.js";import{S as h}from"./p-0f245a12.js";const u=t=>{var n,e,o;const a=t.level.url?"a":"button";return i(a,{class:{"main-link":true,active:!!t.level.isActiveOverride,focus:t.isOpen},href:t.level.url,title:((n=t.level.title)===null||n===void 0?void 0:n.trim())&&((e=t.level.title)===null||e===void 0?void 0:e.trim())!==((o=t.level.text)===null||o===void 0?void 0:o.trim())?t.level.title:undefined,tabindex:t.level.url?undefined:0,"aria-haspopup":!t.level.noFlyout+"","aria-expanded":t.level.noFlyout?null:t.isOpen+"",onTouchEnd:i=>t.onTouchEnd(i),onKeyDown:i=>t.onKeyDown(i),onClick:i=>t.onClick(i)},i("span",null,t.level.text),i("svg",{"aria-hidden":"true"},i("use",{href:"#pi-pointy-arrow-right"})))};const c='.flyout-nav,.flyout-column h3{font-size:0.9375rem}@media (min-width: 600px){.flyout-nav,.flyout-column h3{font-size:1rem}}@media (min-width: 1024px){.flyout-nav,.flyout-column h3{font-size:1.0625rem}}.flyout-title{font-size:1.0625rem}@media (min-width: 600px){.flyout-title{font-size:1.25rem}}@media (min-width: 1024px){.flyout-title{font-size:1.5rem}}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.main-container,.flyout-linklist,.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.main-link,.flyout-close-button,.flyout-link,.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.main-link:hover,.flyout-close-button:hover,.flyout-link:hover,.nav-link:hover,.main-link:focus,.flyout-close-button:focus,.flyout-link:focus,.nav-link:focus{color:black}.main-link>svg,.flyout-close-button>svg,.flyout-link>svg,.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.main-link>span,.flyout-close-button>span,.flyout-link>span,.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{--host-window-height:var(--window-height, 100vh);--calculated-header-height:calc(var(--header-height) + 1px);display:block;min-width:0;height:var(--header-height)}:host(.no-animation) *{-webkit-animation:none !important;animation:none !important;-webkit-transition:none !important;transition:none !important}@media (min-width: 1024px){.main-navigation,.main-container,.main-container li,.main-link{height:100%}}.main-navigation{font-size:1.125rem}@media (min-width: 1024px){.main-navigation{font-size:1rem;margin:0 0.75rem}}@media (min-width: 1280px){.main-navigation{font-size:1.125rem}}@media (min-width: 1441px){.main-navigation{font-size:1.25rem}}@media (max-width: 1023.98px){.main-navigation{position:absolute;top:var(--calculated-header-height);left:0;background:white;height:calc(var(--host-window-height) - var(--calculated-header-height));width:100%;margin:0;overflow:hidden scroll;-webkit-overflow-scrolling:touch;-ms-scroll-chaining:none;overscroll-behavior:contain;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:justify;justify-content:space-between;z-index:-1;visibility:hidden;-webkit-transform:translateY(-100%);transform:translateY(-100%);-webkit-transition:visibility 0.35s, -webkit-transform 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s;transition:transform 0.35s, visibility 0.35s;transition:transform 0.35s, visibility 0.35s, -webkit-transform 0.35s}}@media (max-width: 1023.98px) and (prefers-reduced-motion: reduce){.main-navigation{-webkit-transition:none;transition:none}}@media (max-width: 1023.98px){.main-navigation.open{-webkit-transform:translateY(0);transform:translateY(0);visibility:visible}}.main-container{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:start;justify-content:flex-start}@media (max-width: 1023.98px){.main-container{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch;-ms-flex-pack:start;justify-content:flex-start;padding-top:2.5rem;padding-bottom:2.5rem}.main-container>li+li{border-top:1px solid hsl(0, 0%, 90%)}}@media (min-width: 1024px){.main-container{padding-right:0;padding-left:0}}.main-container>li{-ms-flex:0 1 auto;flex:0 1 auto;min-width:0}.main-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding-right:0.75rem;padding-left:0.75rem;text-align:left;cursor:pointer;width:100%}@media (min-width: 1024px){.main-link svg{display:none}}@media (max-width: 1023.98px){.main-link{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center;font-weight:300;padding:0.625rem 0;width:100%;text-align:left}.main-link svg{width:1.5rem;height:1.5rem}}.main-link span{overflow:hidden;text-overflow:ellipsis}.main-link,.flyout-link{position:relative;color:black}.main-link::after,.flyout-link::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:4px;background-color:transparent;opacity:0;-webkit-transform:scaleX(0.8);transform:scaleX(0.8);-webkit-transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);transition:opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.25s cubic-bezier(0.4, 0, 0.2, 1)}@media (prefers-reduced-motion: reduce){.main-link::after,.flyout-link::after{-webkit-transition:none;transition:none}}.main-link:hover::after,.main-link.focus::after,.flyout-link:hover::after,.flyout-link.focus::after{background-color:hsl(0, 0%, 80%);opacity:1;-webkit-transform:scale(1);transform:scale(1)}.main-link.active,.flyout-link.active{font-weight:700}.main-link.active::after,.flyout-link.active::after{background-color:#fc0;opacity:1;-webkit-transform:scale(1);transform:scale(1)}.flyout{left:0;width:100%;background:white;padding-bottom:3rem;overflow:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;visibility:hidden}@media (min-width: 1024px){.flyout{position:absolute;top:100%;max-height:calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);z-index:-1;-webkit-box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 1px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.flyout.open{-webkit-box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);box-shadow:0 0 8px 0 rgba(0, 0, 0, 0.4);-webkit-transform:translateY(0);transform:translateY(0)}}@media (max-width: 1023.98px){.flyout{position:fixed;top:0;height:100%;z-index:1;-webkit-transform:translateX(100%);transform:translateX(100%)}.flyout.open{-webkit-transform:translateX(0);transform:translateX(0)}}.flyout.open{visibility:visible}.flyout.animate{-webkit-transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:visibility 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s;transition:transform 0.35s, visibility 0.35s, box-shadow 0.35s, -webkit-transform 0.35s, -webkit-box-shadow 0.35s}@media (prefers-reduced-motion: reduce){.flyout.animate{-webkit-transition:none;transition:none}}.flyout-nav{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;min-height:3.5rem;-webkit-box-sizing:content-box;box-sizing:content-box}.flyout-row{display:-ms-flexbox;display:flex;gap:1.5rem}@media (max-width: 1023.98px){.flyout-row{display:grid;grid-template-columns:1fr 1fr}}@media (max-width: 599.98px){.flyout-row{grid-template-columns:1fr}}.flyout-column{-ms-flex:1;flex:1;max-width:25%}@media (max-width: 1023.98px){.flyout-column{max-width:none}}.flyout-column h3{margin-top:0}.flyout-back-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;font-size:1rem;font-weight:400;cursor:pointer}@media (max-width: 599.98px){.flyout-back-button{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.flyout-back-button{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.flyout-back-button{padding-right:40px;padding-left:40px}}.flyout-back-button svg{width:1.5rem;height:1.5rem}@media (min-width: 1024px){.flyout-back-button{display:none}}.flyout-close-button{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;margin-left:auto;padding:0 1.5rem;cursor:pointer}.flyout-close-button svg{width:1.5rem;height:1.5rem}@media (max-width: 1023.98px){.flyout-close-button{display:none}}.flyout-linklist li{border-top:1px solid hsl(0, 0%, 90%)}.flyout-linklist:first-child>li{border-top-color:transparent}.flyout-link{display:block;padding:0.75rem 0}.flyout-title{margin:2.5rem 0 1.5rem 0}@media (min-width: 1024px){.flyout-title{display:none}}';const p=class{constructor(i){t(this,i);this.dropdownToggled=n(this,"dropdownToggled",7);this.flyoutToggled=n(this,"flyoutToggled",7);this.resizeTimer=null;this.mouseLeaveTimer=null;this.mouseEnterTimer=null;this.activeFlyout=undefined;this.mobileMenuOpen=undefined}connectedCallback(){this.throttledResize=a(300,(()=>this.handleResize()));window.addEventListener("resize",this.throttledResize,{passive:true});this.setWindowHeight()}disconnectedCallback(){window.removeEventListener("resize",this.throttledResize);s();if(this.mouseEnterTimer!==null)window.clearTimeout(this.mouseEnterTimer);if(this.mouseLeaveTimer!==null)window.clearTimeout(this.mouseLeaveTimer)}handleResize(){this.host.classList.add("no-animation");if(this.resizeTimer!==null)window.clearTimeout(this.resizeTimer);this.resizeTimer=window.setTimeout((()=>{this.host.classList.remove("no-animation")}),300);this.setWindowHeight()}setWindowHeight(){if(!this.host){return}this.host.style.setProperty("--window-height",`${window.innerHeight}px`);window.setTimeout((()=>{this.host.style.setProperty("--window-height",`${window.innerHeight}px`)}),100)}openFlyout(i){var t;const n=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.getElementById(i);if(n&&this.activeFlyout!==""){this.addFlyoutAnimation(n)}this.activeFlyout=i;this.flyoutToggled.emit(i);this.setWindowHeight();if(this.mouseLeaveTimer!==null){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}}closeFlyout(i){var t;if(i===undefined)return;const n=(t=this.host.shadowRoot)===null||t===void 0?void 0:t.getElementById(i);if(n){this.addFlyoutAnimation(n)}this.activeFlyout=null;this.flyoutToggled.emit()}addFlyoutAnimation(i){if(!f()){i.classList.add("animate");i.addEventListener("transitionend",(()=>this.removeFlyoutAnimation(i)),{once:true})}}removeFlyoutAnimation(i){i.classList.remove("animate")}isActiveFlyout(i){return i===this.activeFlyout}handleMouseEnter(i){if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer);this.mouseEnterTimer=null}if(this.mouseLeaveTimer&&this.activeFlyout===i.id){window.clearTimeout(this.mouseLeaveTimer);this.mouseLeaveTimer=null}if(window.innerWidth>=1024&&i.flyout.length>0&&this.activeFlyout!==i.id){this.mouseEnterTimer=window.setTimeout((()=>{this.mouseEnterTimer=null;if(i.id!==undefined)this.openFlyout(i.id)}),200)}}handleMouseLeave(i){if(this.mouseEnterTimer!==null){window.clearTimeout(this.mouseEnterTimer)}if(this.activeFlyout&&this.activeFlyout!==i.id){return}if(window.innerWidth>=1024&&i.flyout.length>0){this.mouseLeaveTimer=window.setTimeout((()=>{this.closeFlyout(i.id)}),300)}}handleTouchEnd(i,t){if(!this.isActiveFlyout(t.id)&&!t.noFlyout){if(i.cancelable)i.preventDefault();if(t.id)this.openFlyout(t.id)}}handleKeyPress(i,t){if(i.key==="Enter"&&!this.isActiveFlyout(t.id)&&!t.noFlyout){i.preventDefault();if(t.id)this.openFlyout(t.id)}}handleClick(i,t){if(!this.isActiveFlyout(t.id)&&!t.noFlyout){i.preventDefault();if(t.id)this.openFlyout(t.id)}}setBodyScroll(){if(this.mobileMenuOpen){l(this.flyoutElement)}else{r(this.flyoutElement)}}async toggleDropdown(i){this.mobileMenuOpen=i===undefined?!this.mobileMenuOpen:i;this.dropdownToggled.emit({open:this.mobileMenuOpen,element:this.host});if(i===false){this.closeFlyout()}this.setBodyScroll();this.setWindowHeight();return this.mobileMenuOpen}async setFocus(){var i;const t=(i=this.host.shadowRoot)===null||i===void 0?void 0:i.querySelector(".main-link");if(t){t.focus()}}async setActiveFlyout(i){this.activeFlyout=i;this.flyoutToggled.emit(this.activeFlyout)}render(){var t;if(((t=d.localizedConfig)===null||t===void 0?void 0:t.header)===undefined)return;const n=d.localizedConfig.header;return i(e,null,i(m,null),i("nav",{id:"post-internet-header-main-navigation",class:{"main-navigation":true,open:this.mobileMenuOpen},ref:i=>this.flyoutElement=i},i("h1",{class:"visually-hidden"},n.translations.navMainAriaLabel),i("ul",{class:"main-container container"},n.navMain.map((t=>i("li",{key:t.text,onMouseLeave:()=>this.handleMouseLeave(t),onMouseEnter:()=>this.handleMouseEnter(t)},i(u,{level:t,isOpen:this.isActiveFlyout(t.id),onTouchEnd:i=>this.handleTouchEnd(i,t),onKeyDown:i=>this.handleKeyPress(i,t),onClick:i=>this.handleClick(i,t)}),!t.noFlyout?i("div",{id:t.id,class:{flyout:true,open:this.isActiveFlyout(t.id)}},i("div",{class:"wide-container"},i("div",{class:"flyout-nav"},i("button",{class:"nav-link flyout-back-button",onClick:()=>this.closeFlyout(t.id)},i(h,{name:"pi-pointy-arrow-right",classNames:"mirrored"}),i("span",null,n.translations.backButtonText)),i("button",{class:"flyout-close-button",onClick:()=>this.closeFlyout(t.id)},i("span",{class:"visually-hidden"},n.translations.mobileNavToggleClose),i(h,{name:"pi-close"}))),i("h2",{class:"flyout-title container"},i("a",{href:t.url,class:"nav-link"},t.text)),i("div",{class:"flyout-row container"},t.flyout.map((t=>i("div",{key:t.title,class:"flyout-column"},t.title?i("h3",null,t.title):null,i("ul",{class:"flyout-linklist"},t.linkList.map((t=>i("li",{key:t.url},i("a",{class:{"flyout-link":true,active:!!(t===null||t===void 0?void 0:t.isActiveOverride)},href:t.url,target:t.target},t.title))))))))))):null)))),i("slot",null)))}get host(){return o(this)}};p.style=c;export{p as post_main_navigation};
2
+ //# sourceMappingURL=p-9bbabe3d.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["LevelOneAction","props","TagName","level","url","h","class","active","isActiveOverride","focus","isOpen","href","title","_a","trim","_b","_c","text","undefined","tabindex","noFlyout","onTouchEnd","e","onKeyDown","onClick","postMainNavigationCss","PostMainNavigation","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","connectedCallback","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","userPrefersReducedMotion","removeFlyoutAnimation","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","setBodyScroll","mobileMenuOpen","disableBodyScroll","flyoutElement","enableBodyScroll","async","force","dropdownToggled","open","element","firstLink","querySelector","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","ref","el","translations","navMainAriaLabel","navMain","map","levelOne","onMouseLeave","onMouseEnter","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","linkList","link","target"],"sources":["./src/components/post-main-navigation/components/level-one-action.component.tsx","./src/components/post-main-navigation/post-main-navigation.scss?tag=post-main-navigation&encapsulation=shadow","./src/components/post-main-navigation/post-main-navigation.tsx"],"sourcesContent":["import { h } from '@stencil/core';\nimport { NavMainEntity } from '../../../models/header.model';\n\nexport const LevelOneAction = (props: {\n level: NavMainEntity;\n isOpen: boolean;\n onTouchEnd: (e: any) => void;\n onKeyDown: (e: any) => void;\n onClick: (e: any) => void;\n}) => {\n const TagName = props.level.url ? 'a' : 'button';\n\n return (\n <TagName\n class={{\n 'main-link': true,\n 'active': !!props.level.isActiveOverride,\n 'focus': props.isOpen,\n }}\n href={props.level.url}\n title={\n props.level.title?.trim() && props.level.title?.trim() !== props.level.text?.trim()\n ? props.level.title\n : undefined\n }\n tabindex={props.level.url ? undefined : 0}\n aria-haspopup={!props.level.noFlyout + ''}\n aria-expanded={props.level.noFlyout ? null : props.isOpen + ''}\n onTouchEnd={e => props.onTouchEnd(e)}\n onKeyDown={e => props.onKeyDown(e)}\n onClick={e => props.onClick(e)}\n >\n <span>{props.level.text}</span>\n <svg aria-hidden=\"true\">\n <use href=\"#pi-pointy-arrow-right\" />\n </svg>\n </TagName>\n );\n};\n","@use '@swisspost/design-system-styles/variables/color';\n@use '@swisspost/design-system-styles/placeholders/text';\n@use '@swisspost/design-system-styles/functions';\n@use '../../utils/utils.scss';\n@use '../../utils/mixins.scss';\n\n:host {\n --host-window-height: var(--window-height, 100vh);\n --calculated-header-height: calc(var(--header-height) + 1px);\n\n display: block;\n min-width: 0;\n height: var(--header-height);\n}\n\n:host(.no-animation) {\n * {\n animation: none !important;\n transition: none !important;\n }\n}\n\n.main-navigation,\n.main-container,\n.main-container li,\n.main-link {\n @include mixins.min(lg) {\n height: 100%;\n }\n}\n\n.main-navigation {\n font-size: functions.px-to-rem(18px);\n\n @include mixins.min(lg) {\n font-size: functions.px-to-rem(16px);\n margin: 0 0.75rem;\n }\n\n @include mixins.min(xl) {\n font-size: functions.px-to-rem(18px);\n }\n\n @include mixins.min(xxl) {\n font-size: functions.px-to-rem(20px);\n }\n\n @include mixins.max(lg) {\n position: absolute;\n top: var(--calculated-header-height);\n left: 0;\n background: white;\n height: calc(var(--host-window-height) - var(--calculated-header-height));\n width: 100%;\n margin: 0;\n overflow: hidden scroll;\n -webkit-overflow-scrolling: touch;\n overscroll-behavior: contain;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n z-index: -1;\n visibility: hidden;\n transform: translateY(-100%);\n transition: transform 0.35s, visibility 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &.open {\n transform: translateY(0);\n visibility: visible;\n }\n }\n}\n\n.main-container {\n @extend %no-list;\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n @include mixins.max(lg) {\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-start;\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n\n > li + li {\n border-top: 1px solid color.$gray-10;\n }\n }\n\n @include mixins.min(lg) {\n padding-right: 0;\n padding-left: 0;\n }\n\n > li {\n flex: 0 1 auto;\n min-width: 0;\n }\n}\n\n.main-link {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n text-align: left;\n cursor: pointer;\n width: 100%;\n\n @include mixins.min(lg) {\n svg {\n display: none;\n }\n }\n\n @include mixins.max(lg) {\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-weight: 300;\n padding: 0.625rem 0;\n width: 100%;\n text-align: left;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n }\n\n span {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n}\n\n.main-link,\n.flyout-link {\n position: relative;\n color: black;\n\n &::after {\n content: '';\n position: absolute;\n bottom: -1px;\n left: 0;\n width: 100%;\n height: 4px;\n background-color: transparent;\n opacity: 0;\n transform: scaleX(0.8);\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n\n &:hover,\n &.focus {\n &::after {\n background-color: color.$gray-20;\n opacity: 1;\n transform: scale(1);\n }\n }\n\n &.active {\n font-weight: 700;\n\n &::after {\n background-color: color.$yellow;\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n.flyout {\n left: 0;\n width: 100%;\n background: white;\n padding-bottom: 3rem;\n overflow: auto;\n overscroll-behavior: contain;\n visibility: hidden;\n\n @include mixins.min(lg) {\n position: absolute;\n top: 100%;\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\n z-index: -1;\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\n transform: translateY(-100%);\n\n &.open {\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\n transform: translateY(0);\n }\n }\n\n @include mixins.max(lg) {\n position: fixed;\n top: 0;\n height: 100%;\n z-index: 1;\n transform: translateX(100%);\n\n &.open {\n transform: translateX(0);\n }\n }\n\n &.open {\n visibility: visible;\n }\n\n &.animate {\n transition: transform 0.35s, visibility 0.35s, box-shadow 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n}\n\n.flyout-nav {\n @extend %font-curve-small;\n\n display: flex;\n justify-content: space-between;\n min-height: 3.5rem;\n\n // Change box-sizing to content-box to add 1px border width to flyout-nav hight.\n // This ensures flyout-nav has same hight as main-navigation-container.\n box-sizing: content-box;\n}\n\n.flyout-row {\n display: flex;\n gap: 1.5rem;\n\n @include mixins.max(lg) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n }\n\n @include mixins.max(rg) {\n grid-template-columns: 1fr;\n }\n}\n\n.flyout-column {\n flex: 1;\n max-width: 25%;\n\n @include mixins.max(lg) {\n max-width: none;\n }\n\n h3 {\n @extend %font-curve-small;\n margin-top: 0;\n }\n}\n\n.flyout-back-button {\n @include mixins.container-padding();\n\n display: flex;\n align-items: center;\n font-size: functions.px-to-rem(16px);\n font-weight: 400;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n\n.flyout-close-button {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n margin-left: auto;\n padding: 0 1.5rem;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.max(lg) {\n display: none;\n }\n}\n\n.flyout-linklist {\n @extend %no-list;\n\n li {\n border-top: 1px solid color.$gray-10;\n }\n\n &:first-child > li {\n border-top-color: transparent;\n }\n}\n\n.flyout-link {\n @extend %nav-link;\n\n display: block;\n padding: 0.75rem 0;\n}\n\n.flyout-title {\n @extend %font-curve-bigger-regular;\n\n margin: 2.5rem 0 1.5rem 0;\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n","import { Component, Host, h, State, Method, Event, Element, EventEmitter } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\nimport { state } from '../../data/store';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n IsFocusable,\n NavMainEntity,\n} from '../../models/header.model';\nimport { userPrefersReducedMotion } from '../../services/ui.service';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { LevelOneAction } from './components/level-one-action.component';\n\n@Component({\n tag: 'post-main-navigation',\n styleUrl: 'post-main-navigation.scss',\n shadow: true,\n})\nexport class PostMainNavigation implements HasDropdown, IsFocusable {\n @State() activeFlyout: string | null;\n @State() mobileMenuOpen: boolean;\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\n @Event() flyoutToggled: EventEmitter<string | null>;\n @Element() host: DropdownElement;\n private throttledResize: throttle<() => void>;\n private resizeTimer: number | null = null;\n private mouseLeaveTimer: number | null = null;\n private mouseEnterTimer: number | null = null;\n private flyoutElement: HTMLElement | undefined;\n\n connectedCallback() {\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n this.setWindowHeight();\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n clearAllBodyScrollLocks();\n if (this.mouseEnterTimer !== null) window.clearTimeout(this.mouseEnterTimer);\n if (this.mouseLeaveTimer !== null) window.clearTimeout(this.mouseLeaveTimer);\n }\n\n handleResize() {\n // Suspend all animations and transitions on window resize\n this.host.classList.add('no-animation');\n if (this.resizeTimer !== null) window.clearTimeout(this.resizeTimer);\n this.resizeTimer = window.setTimeout(() => {\n this.host.classList.remove('no-animation');\n }, 300);\n\n this.setWindowHeight();\n }\n\n // Update window height var\n setWindowHeight() {\n if (!this.host) {\n return;\n }\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n\n // Safari might or might not show a blank bar at the bottom where the browser\n // controls should be. This timeout waits for this bar to appear before resetting the available height\n window.setTimeout(() => {\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n }, 100);\n }\n\n openFlyout(id: string) {\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout && this.activeFlyout !== '') {\n // Add flyout animation if there's no flyout open\n this.addFlyoutAnimation(flyout);\n }\n\n this.activeFlyout = id;\n this.flyoutToggled.emit(id);\n this.setWindowHeight();\n\n if (this.mouseLeaveTimer !== null) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n }\n\n closeFlyout(id?: string) {\n if (id === undefined) return;\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout) {\n // Add flyout animation for close action\n this.addFlyoutAnimation(flyout);\n }\n\n this.activeFlyout = null;\n this.flyoutToggled.emit();\n }\n\n addFlyoutAnimation(flyout: HTMLElement) {\n // Check if user prefers to see animations or not\n if (!userPrefersReducedMotion()) {\n flyout.classList.add('animate');\n\n // Remove flyout animation after transition ended\n flyout.addEventListener('transitionend', () => this.removeFlyoutAnimation(flyout), {\n once: true,\n });\n }\n }\n\n removeFlyoutAnimation(flyout: HTMLElement) {\n flyout.classList.remove('animate');\n }\n\n isActiveFlyout(id?: string) {\n return id === this.activeFlyout;\n }\n\n handleMouseEnter(level: NavMainEntity) {\n // Cancel opening the flyout if there already is one scheduled to open\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n this.mouseEnterTimer = null;\n }\n\n // Cancel closing if we enter again\n if (this.mouseLeaveTimer && this.activeFlyout === level.id) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0 && this.activeFlyout !== level.id) {\n // Delay opening the flyout for a moment to give users a chance to move the mouse over the navigation without triggering the flyout\n this.mouseEnterTimer = window.setTimeout(() => {\n this.mouseEnterTimer = null;\n if (level.id !== undefined) this.openFlyout(level.id);\n }, 200);\n }\n }\n\n handleMouseLeave(level: NavMainEntity) {\n // Cancel opening the flyout if a mouseleave event happens before the flyout opened\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n }\n\n // Don't close an open flyout if the mouseleave is from another mainnav entry\n if (this.activeFlyout && this.activeFlyout !== level.id) {\n return;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0) {\n // Allow the pointer to shortly leave the flyout without closing it. This\n // allows for user mistakes and makes the experience less nervous\n this.mouseLeaveTimer = window.setTimeout(() => {\n this.closeFlyout(level.id);\n }, 300);\n }\n }\n\n handleTouchEnd(event: TouchEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first touchstart and has a flyout, prevent link activation and open the flyout\n if (event.cancelable) event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleKeyPress(event: KeyboardEvent, level: NavMainEntity) {\n if (event.key === 'Enter' && !this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first enter keypress and has a flyout, prevent link activation and open the flyout\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleClick(event: MouseEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first click, always open the flyout, never the link\n // This is relevant for desktop with active screenreader which\n // translates an enter keypress to a click\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n /**\n * Disable or re-enable body scrolling, depending on whether mobile menu is open or closed\n */\n setBodyScroll() {\n if (this.mobileMenuOpen) {\n disableBodyScroll(this.flyoutElement);\n } else {\n enableBodyScroll(this.flyoutElement);\n }\n }\n\n /**\n * Toggle the main navigation (only visible on mobile)\n * @param force Force a state\n * @returns Boolean indicating new state\n */\n @Method()\n async toggleDropdown(force?: boolean) {\n this.mobileMenuOpen = force === undefined ? !this.mobileMenuOpen : force;\n this.dropdownToggled.emit({ open: this.mobileMenuOpen, element: this.host });\n\n if (force === false) {\n this.closeFlyout();\n }\n\n this.setBodyScroll();\n this.setWindowHeight();\n\n return this.mobileMenuOpen;\n }\n\n /**\n * Focus the main navigation toggle button\n */\n @Method()\n async setFocus() {\n const firstLink = this.host.shadowRoot?.querySelector<HTMLElement>('.main-link');\n if (firstLink) {\n firstLink.focus();\n }\n }\n\n /**\n * Open a specific flyout\n * @param id Flyout ID\n */\n @Method()\n async setActiveFlyout(id: string | null) {\n this.activeFlyout = id;\n this.flyoutToggled.emit(this.activeFlyout);\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) return;\n const headerConfig = state.localizedConfig.header;\n\n return (\n <Host>\n <SvgSprite />\n <nav\n id=\"post-internet-header-main-navigation\"\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\n ref={el => (this.flyoutElement = el)}\n >\n <h1 class=\"visually-hidden\">{headerConfig.translations.navMainAriaLabel}</h1>\n <ul class=\"main-container container\">\n {headerConfig.navMain.map(levelOne => (\n <li\n key={levelOne.text}\n onMouseLeave={() => this.handleMouseLeave(levelOne)}\n onMouseEnter={() => this.handleMouseEnter(levelOne)}\n >\n <LevelOneAction\n level={levelOne}\n isOpen={this.isActiveFlyout(levelOne.id)}\n onTouchEnd={e => this.handleTouchEnd(e, levelOne)}\n onKeyDown={e => this.handleKeyPress(e, levelOne)}\n onClick={e => this.handleClick(e, levelOne)}\n />\n {!levelOne.noFlyout ? (\n <div\n id={levelOne.id}\n class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}\n >\n <div class=\"wide-container\">\n <div class=\"flyout-nav\">\n <button\n class=\"nav-link flyout-back-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <SvgIcon name=\"pi-pointy-arrow-right\" classNames=\"mirrored\" />\n <span>{headerConfig.translations.backButtonText}</span>\n </button>\n <button\n class=\"flyout-close-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <span class=\"visually-hidden\">\n {headerConfig.translations.mobileNavToggleClose}\n </span>\n <SvgIcon name=\"pi-close\" />\n </button>\n </div>\n <h2 class=\"flyout-title container\">\n <a href={levelOne.url} class=\"nav-link\">\n {levelOne.text}\n </a>\n </h2>\n <div class=\"flyout-row container\">\n {levelOne.flyout.map(flyout => (\n <div key={flyout.title} class=\"flyout-column\">\n {flyout.title ? <h3>{flyout.title}</h3> : null}\n <ul class=\"flyout-linklist\">\n {flyout.linkList.map(link => (\n <li key={link.url}>\n <a\n class={{\n 'flyout-link': true,\n 'active': !!link?.isActiveOverride,\n }}\n href={link.url}\n target={link.target}\n >\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </div>\n </div>\n ) : null}\n </li>\n ))}\n </ul>\n <slot></slot>\n </nav>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["LevelOneAction","props","TagName","level","url","h","class","active","isActiveOverride","focus","isOpen","href","title","_a","trim","_b","_c","text","undefined","tabindex","noFlyout","onTouchEnd","e","onKeyDown","onClick","postMainNavigationCss","PostMainNavigation","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","connectedCallback","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","userPrefersReducedMotion","removeFlyoutAnimation","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","setBodyScroll","mobileMenuOpen","disableBodyScroll","flyoutElement","enableBodyScroll","async","force","dropdownToggled","open","element","firstLink","querySelector","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","ref","el","translations","navMainAriaLabel","navMain","map","levelOne","onMouseLeave","onMouseEnter","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","linkList","link","target"],"sources":["./src/components/post-main-navigation/components/level-one-action.component.tsx","./src/components/post-main-navigation/post-main-navigation.scss?tag=post-main-navigation&encapsulation=shadow","./src/components/post-main-navigation/post-main-navigation.tsx"],"sourcesContent":["import { h } from '@stencil/core';\nimport { NavMainEntity } from '../../../models/header.model';\n\nexport const LevelOneAction = (props: {\n level: NavMainEntity;\n isOpen: boolean;\n onTouchEnd: (e: any) => void;\n onKeyDown: (e: any) => void;\n onClick: (e: any) => void;\n}) => {\n const TagName = props.level.url ? 'a' : 'button';\n\n return (\n <TagName\n class={{\n 'main-link': true,\n 'active': !!props.level.isActiveOverride,\n 'focus': props.isOpen,\n }}\n href={props.level.url}\n title={\n props.level.title?.trim() && props.level.title?.trim() !== props.level.text?.trim()\n ? props.level.title\n : undefined\n }\n tabindex={props.level.url ? undefined : 0}\n aria-haspopup={!props.level.noFlyout + ''}\n aria-expanded={props.level.noFlyout ? null : props.isOpen + ''}\n onTouchEnd={e => props.onTouchEnd(e)}\n onKeyDown={e => props.onKeyDown(e)}\n onClick={e => props.onClick(e)}\n >\n <span>{props.level.text}</span>\n <svg aria-hidden=\"true\">\n <use href=\"#pi-pointy-arrow-right\" />\n </svg>\n </TagName>\n );\n};\n","@use '@swisspost/design-system-styles/variables/color';\n@use '@swisspost/design-system-styles/placeholders/text';\n@use '@swisspost/design-system-styles/functions';\n@use '../../utils/utils.scss';\n@use '../../utils/mixins.scss';\n\n:host {\n --host-window-height: var(--window-height, 100vh);\n --calculated-header-height: calc(var(--header-height) + 1px);\n\n display: block;\n min-width: 0;\n height: var(--header-height);\n}\n\n:host(.no-animation) {\n * {\n animation: none !important;\n transition: none !important;\n }\n}\n\n.main-navigation,\n.main-container,\n.main-container li,\n.main-link {\n @include mixins.min(lg) {\n height: 100%;\n }\n}\n\n.main-navigation {\n font-size: functions.px-to-rem(18px);\n\n @include mixins.min(lg) {\n font-size: functions.px-to-rem(16px);\n margin: 0 0.75rem;\n }\n\n @include mixins.min(xl) {\n font-size: functions.px-to-rem(18px);\n }\n\n @include mixins.min(xxl) {\n font-size: functions.px-to-rem(20px);\n }\n\n @include mixins.max(lg) {\n position: absolute;\n top: var(--calculated-header-height);\n left: 0;\n background: white;\n height: calc(var(--host-window-height) - var(--calculated-header-height));\n width: 100%;\n margin: 0;\n overflow: hidden scroll;\n -webkit-overflow-scrolling: touch;\n overscroll-behavior: contain;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n z-index: -1;\n visibility: hidden;\n transform: translateY(-100%);\n transition: transform 0.35s, visibility 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n\n &.open {\n transform: translateY(0);\n visibility: visible;\n }\n }\n}\n\n.main-container {\n @extend %no-list;\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n @include mixins.max(lg) {\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-start;\n padding-top: 2.5rem;\n padding-bottom: 2.5rem;\n\n > li + li {\n border-top: 1px solid color.$gray-10;\n }\n }\n\n @include mixins.min(lg) {\n padding-right: 0;\n padding-left: 0;\n }\n\n > li {\n flex: 0 1 auto;\n min-width: 0;\n }\n}\n\n.main-link {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n text-align: left;\n cursor: pointer;\n width: 100%;\n\n @include mixins.min(lg) {\n svg {\n display: none;\n }\n }\n\n @include mixins.max(lg) {\n display: flex;\n justify-content: space-between;\n align-items: center;\n font-weight: 300;\n padding: 0.625rem 0;\n width: 100%;\n text-align: left;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n }\n\n span {\n overflow: hidden;\n text-overflow: ellipsis;\n }\n}\n\n.main-link,\n.flyout-link {\n position: relative;\n color: black;\n\n &::after {\n content: '';\n position: absolute;\n bottom: -1px;\n left: 0;\n width: 100%;\n height: 4px;\n background-color: transparent;\n opacity: 0;\n transform: scaleX(0.8);\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n\n &:hover,\n &.focus {\n &::after {\n background-color: color.$gray-20;\n opacity: 1;\n transform: scale(1);\n }\n }\n\n &.active {\n font-weight: 700;\n\n &::after {\n background-color: color.$yellow;\n opacity: 1;\n transform: scale(1);\n }\n }\n}\n\n.flyout {\n left: 0;\n width: 100%;\n background: white;\n padding-bottom: 3rem;\n overflow: auto;\n overscroll-behavior: contain;\n visibility: hidden;\n\n @include mixins.min(lg) {\n position: absolute;\n top: 100%;\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\n z-index: -1;\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\n transform: translateY(-100%);\n\n &.open {\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\n transform: translateY(0);\n }\n }\n\n @include mixins.max(lg) {\n position: fixed;\n top: 0;\n height: 100%;\n z-index: 1;\n transform: translateX(100%);\n\n &.open {\n transform: translateX(0);\n }\n }\n\n &.open {\n visibility: visible;\n }\n\n &.animate {\n transition: transform 0.35s, visibility 0.35s, box-shadow 0.35s;\n\n @media (prefers-reduced-motion: reduce) {\n transition: none;\n }\n }\n}\n\n.flyout-nav {\n @extend %font-curve-small;\n\n display: flex;\n justify-content: space-between;\n min-height: 3.5rem;\n\n // Change box-sizing to content-box to add 1px border width to flyout-nav hight.\n // This ensures flyout-nav has same hight as main-navigation-container.\n box-sizing: content-box;\n}\n\n.flyout-row {\n display: flex;\n gap: 1.5rem;\n\n @include mixins.max(lg) {\n display: grid;\n grid-template-columns: 1fr 1fr;\n }\n\n @include mixins.max(rg) {\n grid-template-columns: 1fr;\n }\n}\n\n.flyout-column {\n flex: 1;\n max-width: 25%;\n\n @include mixins.max(lg) {\n max-width: none;\n }\n\n h3 {\n @extend %font-curve-small;\n margin-top: 0;\n }\n}\n\n.flyout-back-button {\n @include mixins.container-padding();\n\n display: flex;\n align-items: center;\n font-size: functions.px-to-rem(16px);\n font-weight: 400;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n\n.flyout-close-button {\n @extend %nav-link;\n\n display: flex;\n align-items: center;\n margin-left: auto;\n padding: 0 1.5rem;\n cursor: pointer;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n\n @include mixins.max(lg) {\n display: none;\n }\n}\n\n.flyout-linklist {\n @extend %no-list;\n\n li {\n border-top: 1px solid color.$gray-10;\n }\n\n &:first-child > li {\n border-top-color: transparent;\n }\n}\n\n.flyout-link {\n @extend %nav-link;\n\n display: block;\n padding: 0.75rem 0;\n}\n\n.flyout-title {\n @extend %font-curve-bigger-regular;\n\n margin: 2.5rem 0 1.5rem 0;\n\n @include mixins.min(lg) {\n display: none;\n }\n}\n","import { Component, Host, h, State, Method, Event, Element, EventEmitter } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\nimport { state } from '../../data/store';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n IsFocusable,\n NavMainEntity,\n} from '../../models/header.model';\nimport { userPrefersReducedMotion } from '../../services/ui.service';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { LevelOneAction } from './components/level-one-action.component';\n\n@Component({\n tag: 'post-main-navigation',\n styleUrl: 'post-main-navigation.scss',\n shadow: true,\n})\nexport class PostMainNavigation implements HasDropdown, IsFocusable {\n @State() activeFlyout: string | null;\n @State() mobileMenuOpen: boolean;\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\n @Event() flyoutToggled: EventEmitter<string | null>;\n @Element() host: DropdownElement;\n private throttledResize: throttle<() => void>;\n private resizeTimer: number | null = null;\n private mouseLeaveTimer: number | null = null;\n private mouseEnterTimer: number | null = null;\n private flyoutElement: HTMLElement | undefined;\n\n connectedCallback() {\n this.throttledResize = throttle(300, () => this.handleResize());\n window.addEventListener('resize', this.throttledResize, { passive: true });\n this.setWindowHeight();\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.throttledResize);\n clearAllBodyScrollLocks();\n if (this.mouseEnterTimer !== null) window.clearTimeout(this.mouseEnterTimer);\n if (this.mouseLeaveTimer !== null) window.clearTimeout(this.mouseLeaveTimer);\n }\n\n handleResize() {\n // Suspend all animations and transitions on window resize\n this.host.classList.add('no-animation');\n if (this.resizeTimer !== null) window.clearTimeout(this.resizeTimer);\n this.resizeTimer = window.setTimeout(() => {\n this.host.classList.remove('no-animation');\n }, 300);\n\n this.setWindowHeight();\n }\n\n // Update window height var\n setWindowHeight() {\n if (!this.host) {\n return;\n }\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n\n // Safari might or might not show a blank bar at the bottom where the browser\n // controls should be. This timeout waits for this bar to appear before resetting the available height\n window.setTimeout(() => {\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\n }, 100);\n }\n\n openFlyout(id: string) {\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout && this.activeFlyout !== '') {\n // Add flyout animation if there's no flyout open\n this.addFlyoutAnimation(flyout);\n }\n\n this.activeFlyout = id;\n this.flyoutToggled.emit(id);\n this.setWindowHeight();\n\n if (this.mouseLeaveTimer !== null) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n }\n\n closeFlyout(id?: string) {\n if (id === undefined) return;\n const flyout = this.host.shadowRoot?.getElementById(id);\n\n if (flyout) {\n // Add flyout animation for close action\n this.addFlyoutAnimation(flyout);\n }\n\n this.activeFlyout = null;\n this.flyoutToggled.emit();\n }\n\n addFlyoutAnimation(flyout: HTMLElement) {\n // Check if user prefers to see animations or not\n if (!userPrefersReducedMotion()) {\n flyout.classList.add('animate');\n\n // Remove flyout animation after transition ended\n flyout.addEventListener('transitionend', () => this.removeFlyoutAnimation(flyout), {\n once: true,\n });\n }\n }\n\n removeFlyoutAnimation(flyout: HTMLElement) {\n flyout.classList.remove('animate');\n }\n\n isActiveFlyout(id?: string) {\n return id === this.activeFlyout;\n }\n\n handleMouseEnter(level: NavMainEntity) {\n // Cancel opening the flyout if there already is one scheduled to open\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n this.mouseEnterTimer = null;\n }\n\n // Cancel closing if we enter again\n if (this.mouseLeaveTimer && this.activeFlyout === level.id) {\n window.clearTimeout(this.mouseLeaveTimer);\n this.mouseLeaveTimer = null;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0 && this.activeFlyout !== level.id) {\n // Delay opening the flyout for a moment to give users a chance to move the mouse over the navigation without triggering the flyout\n this.mouseEnterTimer = window.setTimeout(() => {\n this.mouseEnterTimer = null;\n if (level.id !== undefined) this.openFlyout(level.id);\n }, 200);\n }\n }\n\n handleMouseLeave(level: NavMainEntity) {\n // Cancel opening the flyout if a mouseleave event happens before the flyout opened\n if (this.mouseEnterTimer !== null) {\n window.clearTimeout(this.mouseEnterTimer);\n }\n\n // Don't close an open flyout if the mouseleave is from another mainnav entry\n if (this.activeFlyout && this.activeFlyout !== level.id) {\n return;\n }\n\n if (window.innerWidth >= 1024 && level.flyout.length > 0) {\n // Allow the pointer to shortly leave the flyout without closing it. This\n // allows for user mistakes and makes the experience less nervous\n this.mouseLeaveTimer = window.setTimeout(() => {\n this.closeFlyout(level.id);\n }, 300);\n }\n }\n\n handleTouchEnd(event: TouchEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first touchstart and has a flyout, prevent link activation and open the flyout\n if (event.cancelable) event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleKeyPress(event: KeyboardEvent, level: NavMainEntity) {\n if (event.key === 'Enter' && !this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first enter keypress and has a flyout, prevent link activation and open the flyout\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n handleClick(event: MouseEvent, level: NavMainEntity) {\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\n // It's the first click, always open the flyout, never the link\n // This is relevant for desktop with active screenreader which\n // translates an enter keypress to a click\n event.preventDefault();\n if (level.id) this.openFlyout(level.id);\n }\n }\n\n /**\n * Disable or re-enable body scrolling, depending on whether mobile menu is open or closed\n */\n setBodyScroll() {\n if (this.mobileMenuOpen) {\n disableBodyScroll(this.flyoutElement);\n } else {\n enableBodyScroll(this.flyoutElement);\n }\n }\n\n /**\n * Toggle the main navigation (only visible on mobile)\n * @param force Force a state\n * @returns Boolean indicating new state\n */\n @Method()\n async toggleDropdown(force?: boolean) {\n this.mobileMenuOpen = force === undefined ? !this.mobileMenuOpen : force;\n this.dropdownToggled.emit({ open: this.mobileMenuOpen, element: this.host });\n\n if (force === false) {\n this.closeFlyout();\n }\n\n this.setBodyScroll();\n this.setWindowHeight();\n\n return this.mobileMenuOpen;\n }\n\n /**\n * Focus the main navigation toggle button\n */\n @Method()\n async setFocus() {\n const firstLink = this.host.shadowRoot?.querySelector<HTMLElement>('.main-link');\n if (firstLink) {\n firstLink.focus();\n }\n }\n\n /**\n * Open a specific flyout\n * @param id Flyout ID\n */\n @Method()\n async setActiveFlyout(id: string | null) {\n this.activeFlyout = id;\n this.flyoutToggled.emit(this.activeFlyout);\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) return;\n const headerConfig = state.localizedConfig.header;\n\n return (\n <Host>\n <SvgSprite />\n <nav\n id=\"post-internet-header-main-navigation\"\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\n ref={el => (this.flyoutElement = el)}\n >\n <h1 class=\"visually-hidden\">{headerConfig.translations.navMainAriaLabel}</h1>\n <ul class=\"main-container container\">\n {headerConfig.navMain.map(levelOne => (\n <li\n key={levelOne.text}\n onMouseLeave={() => this.handleMouseLeave(levelOne)}\n onMouseEnter={() => this.handleMouseEnter(levelOne)}\n >\n <LevelOneAction\n level={levelOne}\n isOpen={this.isActiveFlyout(levelOne.id)}\n onTouchEnd={e => this.handleTouchEnd(e, levelOne)}\n onKeyDown={e => this.handleKeyPress(e, levelOne)}\n onClick={e => this.handleClick(e, levelOne)}\n />\n {!levelOne.noFlyout ? (\n <div\n id={levelOne.id}\n class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}\n >\n <div class=\"wide-container\">\n <div class=\"flyout-nav\">\n <button\n class=\"nav-link flyout-back-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <SvgIcon name=\"pi-pointy-arrow-right\" classNames=\"mirrored\" />\n <span>{headerConfig.translations.backButtonText}</span>\n </button>\n <button\n class=\"flyout-close-button\"\n onClick={() => this.closeFlyout(levelOne.id)}\n >\n <span class=\"visually-hidden\">\n {headerConfig.translations.mobileNavToggleClose}\n </span>\n <SvgIcon name=\"pi-close\" />\n </button>\n </div>\n <h2 class=\"flyout-title container\">\n <a href={levelOne.url} class=\"nav-link\">\n {levelOne.text}\n </a>\n </h2>\n <div class=\"flyout-row container\">\n {levelOne.flyout.map(flyout => (\n <div key={flyout.title} class=\"flyout-column\">\n {flyout.title ? <h3>{flyout.title}</h3> : null}\n <ul class=\"flyout-linklist\">\n {flyout.linkList.map(link => (\n <li key={link.url}>\n <a\n class={{\n 'flyout-link': true,\n 'active': !!link?.isActiveOverride,\n }}\n href={link.url}\n target={link.target}\n >\n {link.title}\n </a>\n </li>\n ))}\n </ul>\n </div>\n ))}\n </div>\n </div>\n </div>\n ) : null}\n </li>\n ))}\n </ul>\n <slot></slot>\n </nav>\n </Host>\n );\n }\n}\n"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  const t="swisspost-internet-header";let e;let n;let s=false;let o=null;let l=false;const c=(t,e="")=>{{return()=>{}}};const i=(t,e)=>{{return()=>{}}};const f="{visibility:hidden}.hydrated{visibility:inherit}";const r={};const u="http://www.w3.org/2000/svg";const a="http://www.w3.org/1999/xhtml";const d=t=>t!=null;const p=t=>{t=typeof t;return t==="object"||t==="function"};function h(t){var e,n,s;return(s=(n=(e=t.head)===null||e===void 0?void 0:e.querySelector('meta[name="csp-nonce"]'))===null||n===void 0?void 0:n.getAttribute("content"))!==null&&s!==void 0?s:undefined}const y=(t,e,...n)=>{let s=null;let o=null;let l=false;let c=false;const i=[];const f=e=>{for(let n=0;n<e.length;n++){s=e[n];if(Array.isArray(s)){f(s)}else if(s!=null&&typeof s!=="boolean"){if(l=typeof t!=="function"&&!p(s)){s=String(s)}if(l&&c){i[i.length-1].t+=s}else{i.push(l?m(null,s):s)}c=l}}};f(n);if(e){if(e.key){o=e.key}{const t=e.className||e.class;if(t){e.class=typeof t!=="object"?t:Object.keys(t).filter((e=>t[e])).join(" ")}}}if(typeof t==="function"){return t(e===null?{}:e,i,$)}const r=m(t,null);r.o=e;if(i.length>0){r.l=i}{r.i=o}return r};const m=(t,e)=>{const n={u:0,p:t,t:e,h:null,l:null};{n.o=null}{n.i=null}return n};const b={};const w=t=>t&&t.p===b;const $={forEach:(t,e)=>t.map(g).forEach(e),map:(t,e)=>t.map(g).map(e).map(v)};const g=t=>({vattrs:t.o,vchildren:t.l,vkey:t.i,vname:t.m,vtag:t.p,vtext:t.t});const v=t=>{if(typeof t.vtag==="function"){const e=Object.assign({},t.vattrs);if(t.vkey){e.key=t.vkey}if(t.vname){e.name=t.vname}return y(t.vtag,e,...t.vchildren||[])}const e=m(t.vtag,t.vtext);e.o=t.vattrs;e.l=t.vchildren;e.i=t.vkey;e.m=t.vname;return e};const S=(t,e)=>{if(t!=null&&!p(t)){if(e&4){return t==="false"?false:t===""||!!t}if(e&1){return String(t)}return t}return t};const j=t=>ht(t).$;const k=(t,e,n)=>{const s=j(t);return{emit:t=>O(s,e,{bubbles:!!(n&4),composed:!!(n&2),cancelable:!!(n&1),detail:t})}};const O=(t,e,n)=>{const s=kt.ce(e,n);t.dispatchEvent(s);return s};const C=new WeakMap;const M=(t,e,n)=>{let s=vt.get(t);if(Ct&&n){s=s||new CSSStyleSheet;if(typeof s==="string"){s=e}else{s.replaceSync(e)}}else{s=e}vt.set(t,s)};const U=(t,e,n,s)=>{var o;let l=P(e);const c=vt.get(l);t=t.nodeType===11?t:jt;if(c){if(typeof c==="string"){t=t.head||t;let e=C.get(t);let n;if(!e){C.set(t,e=new Set)}if(!e.has(l)){{{n=jt.createElement("style");n.innerHTML=c}const e=(o=kt.g)!==null&&o!==void 0?o:h(jt);if(e!=null){n.setAttribute("nonce",e)}t.insertBefore(n,t.querySelector("link"))}if(e){e.add(l)}}}else if(!t.adoptedStyleSheets.includes(c)){t.adoptedStyleSheets=[...t.adoptedStyleSheets,c]}}return l};const x=t=>{const e=t.v;const n=t.$;const s=e.u;const o=c("attachStyles",e.S);const l=U(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);if(s&10){n["s-sc"]=l;n.classList.add(l+"-h")}o()};const P=(t,e)=>"sc-"+t.S;const E=(t,e,n,s,o,l)=>{if(n!==s){let c=bt(t,e);let i=e.toLowerCase();if(e==="class"){const e=t.classList;const o=W(n);const l=W(s);e.remove(...o.filter((t=>t&&!l.includes(t))));e.add(...l.filter((t=>t&&!o.includes(t))))}else if(e==="style"){{for(const e in n){if(!s||s[e]==null){if(e.includes("-")){t.style.removeProperty(e)}else{t.style[e]=""}}}}for(const e in s){if(!n||s[e]!==n[e]){if(e.includes("-")){t.style.setProperty(e,s[e])}else{t.style[e]=s[e]}}}}else if(e==="key");else if(e==="ref"){if(s){s(t)}}else if(!c&&e[0]==="o"&&e[1]==="n"){if(e[2]==="-"){e=e.slice(3)}else if(bt(St,i)){e=i.slice(2)}else{e=i[2]+e.slice(3)}if(n){kt.rel(t,e,n,false)}if(s){kt.ael(t,e,s,false)}}else{const i=p(s);if((c||i&&s!==null)&&!o){try{if(!t.tagName.includes("-")){const o=s==null?"":s;if(e==="list"){c=false}else if(n==null||t[e]!=o){t[e]=o}}else{t[e]=s}}catch(t){}}if(s==null||s===false){if(s!==false||t.getAttribute(e)===""){{t.removeAttribute(e)}}}else if((!c||l&4||o)&&!i){s=s===true?"":s;{t.setAttribute(e,s)}}}}};const L=/\s/;const W=t=>!t?[]:t.split(L);const N=(t,e,n,s)=>{const o=e.h.nodeType===11&&e.h.host?e.h.host:e.h;const l=t&&t.o||r;const c=e.o||r;{for(s in l){if(!(s in c)){E(o,s,l[s],undefined,n,e.u)}}}for(s in c){E(o,s,l[s],c[s],n,e.u)}};const T=(t,n,o,l)=>{const c=n.l[o];let i=0;let f;let r;if(c.t!==null){f=c.h=jt.createTextNode(c.t)}else{if(!s){s=c.p==="svg"}f=c.h=jt.createElementNS(s?u:a,c.p);if(s&&c.p==="foreignObject"){s=false}{N(null,c,s)}if(d(e)&&f["s-si"]!==e){f.classList.add(f["s-si"]=e)}if(c.l){for(i=0;i<c.l.length;++i){r=T(t,c,i);if(r){f.appendChild(r)}}}{if(c.p==="svg"){s=false}else if(f.tagName==="foreignObject"){s=true}}}return f};const A=(t,e,s,o,l,c)=>{let i=t;let f;if(i.shadowRoot&&i.tagName===n){i=i.shadowRoot}for(;l<=c;++l){if(o[l]){f=T(null,s,l);if(f){o[l].h=f;i.insertBefore(f,e)}}}};const D=(t,e,n,s,o)=>{for(;e<=n;++e){if(s=t[e]){o=s.h;F(s);o.remove()}}};const H=(t,e,n,s)=>{let o=0;let l=0;let c=0;let i=0;let f=e.length-1;let r=e[0];let u=e[f];let a=s.length-1;let d=s[0];let p=s[a];let h;let y;while(o<=f&&l<=a){if(r==null){r=e[++o]}else if(u==null){u=e[--f]}else if(d==null){d=s[++l]}else if(p==null){p=s[--a]}else if(R(r,d)){q(r,d);r=e[++o];d=s[++l]}else if(R(u,p)){q(u,p);u=e[--f];p=s[--a]}else if(R(r,p)){q(r,p);t.insertBefore(r.h,u.h.nextSibling);r=e[++o];p=s[--a]}else if(R(u,d)){q(u,d);t.insertBefore(u.h,r.h);u=e[--f];d=s[++l]}else{c=-1;{for(i=o;i<=f;++i){if(e[i]&&e[i].i!==null&&e[i].i===d.i){c=i;break}}}if(c>=0){y=e[c];if(y.p!==d.p){h=T(e&&e[l],n,c)}else{q(y,d);e[c]=undefined;h=y.h}d=s[++l]}else{h=T(e&&e[l],n,l);d=s[++l]}if(h){{r.h.parentNode.insertBefore(h,r.h)}}}}if(o>f){A(t,s[a+1]==null?null:s[a+1].h,n,s,l,a)}else if(l>a){D(e,o,f)}};const R=(t,e)=>{if(t.p===e.p){{return t.i===e.i}}return false};const q=(t,e)=>{const n=e.h=t.h;const o=t.l;const l=e.l;const c=e.p;const i=e.t;if(i===null){{s=c==="svg"?true:c==="foreignObject"?false:s}{if(c==="slot");else{N(t,e,s)}}if(o!==null&&l!==null){H(n,o,e,l)}else if(l!==null){if(t.t!==null){n.textContent=""}A(n,null,e,l,0,l.length-1)}else if(o!==null){D(o,0,o.length-1)}if(s&&c==="svg"){s=false}}else if(t.t!==i){n.data=i}};const F=t=>{{t.o&&t.o.ref&&t.o.ref(null);t.l&&t.l.map(F)}};const I=(t,s)=>{const o=t.$;const l=t.j||m(null,null);const c=w(s)?s:y(null,null,s);n=o.tagName;c.p=null;c.u|=4;t.j=c;c.h=l.h=o.shadowRoot||o;{e=o["s-sc"]}q(l,c)};const V=(t,e)=>{if(e&&!t.k&&e["s-p"]){e["s-p"].push(new Promise((e=>t.k=e)))}};const _=(t,e)=>{{t.u|=16}if(t.u&4){t.u|=512;return}V(t,t.O);const n=()=>z(t,e);return Wt(n)};const z=(t,e)=>{const n=c("scheduleUpdate",t.v.S);const s=t.C;let o;if(e){{t.u|=256;if(t.M){t.M.map((([t,e])=>Y(s,t,e)));t.M=null}}{o=Y(s,"componentWillLoad")}}else{{o=Y(s,"componentWillUpdate")}}n();return Z(o,(()=>B(t,s,e)))};const B=async(t,e,n)=>{const s=t.$;const o=c("update",t.v.S);const l=s["s-rc"];if(n){x(t)}const i=c("render",t.v.S);{G(t,e)}if(l){l.map((t=>t()));s["s-rc"]=undefined}i();o();{const e=s["s-p"];const n=()=>K(t);if(e.length===0){n()}else{Promise.all(e).then(n);t.u|=4;e.length=0}}};const G=(t,e,n)=>{try{o=e;e=e.render();{t.u&=~16}{t.u|=2}{{{I(t,e)}}}}catch(e){wt(e,t.$)}o=null;return null};const J=()=>o;const K=t=>{const e=t.v.S;const n=t.$;const s=c("postUpdate",e);const o=t.C;const l=t.O;if(!(t.u&64)){t.u|=64;{tt(n)}{Y(o,"componentDidLoad")}s();{t.U(n);if(!l){X()}}}else{{Y(o,"componentDidUpdate")}s()}{t.P(n)}{if(t.k){t.k();t.k=undefined}if(t.u&512){Lt((()=>_(t,false)))}t.u&=~(4|512)}};const Q=t=>{{const e=ht(t);const n=e.$.isConnected;if(n&&(e.u&(2|16))===2){_(e,false)}return n}};const X=e=>{{tt(jt.documentElement)}Lt((()=>O(St,"appload",{detail:{namespace:t}})))};const Y=(t,e,n)=>{if(t&&t[e]){try{return t[e](n)}catch(t){wt(t)}}return undefined};const Z=(t,e)=>t&&t.then?t.then(e):e();const tt=t=>t.classList.add("hydrated");const et=(t,e)=>ht(t).L.get(e);const nt=(t,e,n,s)=>{const o=ht(t);const l=o.$;const c=o.L.get(e);const i=o.u;const f=o.C;n=S(n,s.W[e][0]);const r=Number.isNaN(c)&&Number.isNaN(n);const u=n!==c&&!r;if((!(i&8)||c===undefined)&&u){o.L.set(e,n);if(f){if(s.N&&i&128){const t=s.N[e];if(t){t.map((t=>{try{f[t](n,c,e)}catch(t){wt(t,l)}}))}}if((i&(2|16))===2){_(o,false)}}}};const st=(t,e,n)=>{if(e.W){if(t.watchers){e.N=t.watchers}const s=Object.entries(e.W);const o=t.prototype;s.map((([t,[s]])=>{if(s&31||n&2&&s&32){Object.defineProperty(o,t,{get(){return et(this,t)},set(n){nt(this,t,n,e)},configurable:true,enumerable:true})}else if(n&1&&s&64){Object.defineProperty(o,t,{value(...e){const n=ht(this);return n.T.then((()=>n.C[t](...e)))}})}}));if(n&1){const e=new Map;o.attributeChangedCallback=function(t,n,s){kt.jmp((()=>{const n=e.get(t);if(this.hasOwnProperty(n)){s=this[n];delete this[n]}else if(o.hasOwnProperty(n)&&typeof this[n]==="number"&&this[n]==s){return}this[n]=s===null&&typeof this[n]==="boolean"?false:s}))};t.observedAttributes=s.filter((([t,e])=>e[0]&15)).map((([t,n])=>{const s=n[1]||t;e.set(s,t);return s}))}}return t};const ot=async(t,e,n,s,o)=>{if((e.u&32)===0){{e.u|=32;o=gt(n);if(o.then){const t=i();o=await o;t()}if(!o.isProxied){{n.N=o.watchers}st(o,n,2);o.isProxied=true}const t=c("createInstance",n.S);{e.u|=8}try{new o(e)}catch(t){wt(t)}{e.u&=~8}{e.u|=128}t();lt(e.C)}if(o.style){let t=o.style;const e=P(n);if(!vt.has(e)){const s=c("registerStyles",n.S);M(e,t,!!(n.u&1));s()}}}const l=e.O;const f=()=>_(e,true);if(l&&l["s-rc"]){l["s-rc"].push(f)}else{f()}};const lt=t=>{{Y(t,"connectedCallback")}};const ct=t=>{if((kt.u&1)===0){const e=ht(t);const n=e.v;const s=c("connectedCallback",n.S);if(!(e.u&1)){e.u|=1;{let n=t;while(n=n.parentNode||n.host){if(n["s-p"]){V(e,e.O=n);break}}}if(n.W){Object.entries(n.W).map((([e,[n]])=>{if(n&31&&t.hasOwnProperty(e)){const n=t[e];delete t[e];t[e]=n}}))}{ot(t,e,n)}}else{rt(t,e,n.A);lt(e.C)}s()}};const it=t=>{if((kt.u&1)===0){const e=ht(t);const n=e.C;{if(e.D){e.D.map((t=>t()));e.D=undefined}}{Y(n,"disconnectedCallback")}}};const ft=(t,e={})=>{var n;const s=c();const o=[];const l=e.exclude||[];const i=St.customElements;const r=jt.head;const u=r.querySelector("meta[charset]");const a=jt.createElement("style");const d=[];let p;let y=true;Object.assign(kt,e);kt.H=new URL(e.resourcesUrl||"./",jt.baseURI).href;t.map((t=>{t[1].map((e=>{const n={u:e[0],S:e[1],W:e[2],A:e[3]};{n.W=e[2]}{n.A=e[3]}{n.N={}}const s=n.S;const c=class extends HTMLElement{constructor(t){super(t);t=this;mt(t,n);if(n.u&1){{{t.attachShadow({mode:"open"})}}}}connectedCallback(){if(p){clearTimeout(p);p=null}if(y){d.push(this)}else{kt.jmp((()=>ct(this)))}}disconnectedCallback(){kt.jmp((()=>it(this)))}componentOnReady(){return ht(this).R}};n.q=t[0];if(!l.includes(s)&&!i.get(s)){o.push(s);i.define(s,st(c,n,1))}}))}));{a.innerHTML=o+f;a.setAttribute("data-styles","");const t=(n=kt.g)!==null&&n!==void 0?n:h(jt);if(t!=null){a.setAttribute("nonce",t)}r.insertBefore(a,u?u.nextSibling:r.firstChild)}y=false;if(d.length){d.map((t=>t.connectedCallback()))}else{{kt.jmp((()=>p=setTimeout(X,30)))}}s()};const rt=(t,e,n,s)=>{if(n){n.map((([n,s,o])=>{const l=t;const c=ut(e,o);const i=at(n);kt.ael(l,s,c,i);(e.D=e.D||[]).push((()=>kt.rel(l,s,c,i)))}))}};const ut=(t,e)=>n=>{try{{if(t.u&256){t.C[e](n)}else{(t.M=t.M||[]).push([e,n])}}}catch(t){wt(t)}};const at=t=>(t&2)!==0;const dt=t=>kt.g=t;const pt=new WeakMap;const ht=t=>pt.get(t);const yt=(t,e)=>pt.set(e.C=t,e);const mt=(t,e)=>{const n={u:0,$:t,v:e,L:new Map};{n.T=new Promise((t=>n.P=t))}{n.R=new Promise((t=>n.U=t));t["s-p"]=[];t["s-rc"]=[]}rt(t,n,e.A);return pt.set(t,n)};const bt=(t,e)=>e in t;const wt=(t,e)=>(0,console.error)(t,e);const $t=new Map;const gt=(t,e,n)=>{const s=t.S.replace(/-/g,"_");const o=t.q;const l=$t.get(o);if(l){return l[s]}
2
2
  /*!__STENCIL_STATIC_IMPORT_SWITCH__*/return import(`./${o}.entry.js${""}`).then((t=>{{$t.set(o,t)}return t[s]}),wt)};const vt=new Map;const St=typeof window!=="undefined"?window:{};const jt=St.document||{head:{}};const kt={u:0,H:"",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,s)=>t.addEventListener(e,n,s),rel:(t,e,n,s)=>t.removeEventListener(e,n,s),ce:(t,e)=>new CustomEvent(t,e)};const Ot=t=>Promise.resolve(t);const Ct=(()=>{try{new CSSStyleSheet;return typeof(new CSSStyleSheet).replaceSync==="function"}catch(t){}return false})();const Mt=[];const Ut=[];const xt=(t,e)=>n=>{t.push(n);if(!l){l=true;if(e&&kt.u&4){Lt(Et)}else{kt.raf(Et)}}};const Pt=t=>{for(let e=0;e<t.length;e++){try{t[e](performance.now())}catch(t){wt(t)}}t.length=0};const Et=()=>{Pt(Mt);{Pt(Ut);if(l=Mt.length>0){kt.raf(Et)}}};const Lt=t=>Ot().then(t);const Wt=xt(Ut,true);export{b as H,J as a,ft as b,k as c,Q as f,j as g,y as h,Ot as p,yt as r,dt as s};
3
- //# sourceMappingURL=p-12c07c17.js.map
3
+ //# sourceMappingURL=p-9e003388.js.map