@swisspost/internet-header 1.13.3 → 1.13.5

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 (399) hide show
  1. package/dist/cjs/{index-8cbf8194.js → index-cab594bc.js} +31 -3
  2. package/dist/cjs/index-cab594bc.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +15 -16
  4. package/dist/cjs/index.cjs.js.map +1 -1
  5. package/dist/cjs/{klp-widget.controller-7fbe23c3.js → klp-widget.controller-c807789c.js} +15 -10
  6. package/dist/cjs/klp-widget.controller-c807789c.js.map +1 -0
  7. package/dist/cjs/{language.service-11e7d8c1.js → language.service-8d541626.js} +2 -2
  8. package/dist/cjs/{language.service-11e7d8c1.js.map → language.service-8d541626.js.map} +1 -1
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{post-internet-breadcrumbs-f5e20904.js → post-internet-breadcrumbs-ca62acb9.js} +41 -15
  11. package/dist/cjs/post-internet-breadcrumbs-ca62acb9.js.map +1 -0
  12. package/dist/cjs/{post-internet-footer-d222e56d.js → post-internet-footer-a9ce4a24.js} +7 -6
  13. package/dist/cjs/post-internet-footer-a9ce4a24.js.map +1 -0
  14. package/dist/cjs/{post-internet-header-befc7a3f.js → post-internet-header-83724799.js} +53 -32
  15. package/dist/cjs/post-internet-header-83724799.js.map +1 -0
  16. package/dist/cjs/{post-klp-login-widget-01eee964.js → post-klp-login-widget-f4a6698f.js} +9 -8
  17. package/dist/cjs/post-klp-login-widget-f4a6698f.js.map +1 -0
  18. package/dist/cjs/post-klp-login-widget.cjs.entry.js +5 -5
  19. package/dist/cjs/{post-language-switch-59e1e832.js → post-language-switch-51cbcb84.js} +8 -7
  20. package/dist/cjs/post-language-switch-51cbcb84.js.map +1 -0
  21. package/dist/cjs/post-language-switch.cjs.entry.js +6 -6
  22. package/dist/cjs/{post-logo-6d127981.js → post-logo-4720a646.js} +6 -5
  23. package/dist/cjs/post-logo-4720a646.js.map +1 -0
  24. package/dist/cjs/post-logo.cjs.entry.js +3 -3
  25. package/dist/cjs/{post-main-navigation-d34e9799.js → post-main-navigation-c9be2641.js} +8 -7
  26. package/dist/cjs/post-main-navigation-c9be2641.js.map +1 -0
  27. package/dist/cjs/post-main-navigation.cjs.entry.js +6 -6
  28. package/dist/cjs/{post-meta-navigation-ac31cee4.js → post-meta-navigation-829b5afe.js} +5 -4
  29. package/dist/cjs/post-meta-navigation-829b5afe.js.map +1 -0
  30. package/dist/cjs/post-meta-navigation.cjs.entry.js +3 -3
  31. package/dist/cjs/post-search-b96b8da5.js +598 -0
  32. package/dist/cjs/post-search-b96b8da5.js.map +1 -0
  33. package/dist/cjs/post-search.cjs.entry.js +6 -6
  34. package/dist/cjs/{post-skiplinks-74f15d34.js → post-skiplinks-72a46892.js} +7 -6
  35. package/dist/cjs/post-skiplinks-72a46892.js.map +1 -0
  36. package/dist/cjs/post-skiplinks.cjs.entry.js +5 -5
  37. package/dist/cjs/{store-dffccc44.js → store-9f3cc50a.js} +2 -2
  38. package/dist/cjs/{store-dffccc44.js.map → store-9f3cc50a.js.map} +1 -1
  39. package/dist/cjs/{svg-icon.component-65508d78.js → svg-icon.component-980da2bc.js} +2 -2
  40. package/dist/cjs/{svg-icon.component-65508d78.js.map → svg-icon.component-980da2bc.js.map} +1 -1
  41. package/dist/cjs/{svg-sprite.component-dc109568.js → svg-sprite.component-6d4865e1.js} +2 -2
  42. package/dist/cjs/{svg-sprite.component-dc109568.js.map → svg-sprite.component-6d4865e1.js.map} +1 -1
  43. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +6 -7
  44. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js.map +1 -1
  45. package/dist/cjs/swisspost-internet-footer.cjs.entry.js +5 -5
  46. package/dist/cjs/swisspost-internet-header.cjs.entry.js +6 -6
  47. package/dist/cjs/swisspost-internet-header.cjs.js +2 -2
  48. package/dist/cjs/swisspost-internet-header.cjs.js.map +1 -1
  49. package/dist/collection/collection-manifest.json +1 -1
  50. package/dist/collection/components/post-internet-header/logo-animation/logo-animation.js +2 -13
  51. package/dist/collection/components/post-internet-header/logo-animation/logo-animation.js.map +1 -1
  52. package/dist/collection/components/post-internet-header/logo-animation/logo-scale.js +32 -0
  53. package/dist/collection/components/post-internet-header/logo-animation/logo-scale.js.map +1 -0
  54. package/dist/collection/components/post-internet-header/post-internet-header.css +1 -1
  55. package/dist/collection/components/post-internet-header/post-internet-header.js +3 -1
  56. package/dist/collection/components/post-internet-header/post-internet-header.js.map +1 -1
  57. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.css +1 -1
  58. package/dist/collection/components/post-logo/post-logo.css +1 -1
  59. package/dist/collection/components/post-search/post-search.css +5 -11
  60. package/dist/components/klp-widget.controller.js +9 -4
  61. package/dist/components/klp-widget.controller.js.map +1 -1
  62. package/dist/components/post-klp-login-widget2.js +3 -2
  63. package/dist/components/post-klp-login-widget2.js.map +1 -1
  64. package/dist/components/post-language-switch2.js +2 -1
  65. package/dist/components/post-language-switch2.js.map +1 -1
  66. package/dist/components/post-logo2.js +3 -2
  67. package/dist/components/post-logo2.js.map +1 -1
  68. package/dist/components/post-main-navigation2.js +2 -1
  69. package/dist/components/post-main-navigation2.js.map +1 -1
  70. package/dist/components/post-meta-navigation2.js +2 -1
  71. package/dist/components/post-meta-navigation2.js.map +1 -1
  72. package/dist/components/post-search2.js +3 -2
  73. package/dist/components/post-search2.js.map +1 -1
  74. package/dist/components/post-skiplinks2.js +2 -1
  75. package/dist/components/post-skiplinks2.js.map +1 -1
  76. package/dist/components/store.js.map +1 -1
  77. package/dist/components/swisspost-internet-breadcrumbs.js +35 -9
  78. package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
  79. package/dist/components/swisspost-internet-footer.js +2 -1
  80. package/dist/components/swisspost-internet-footer.js.map +1 -1
  81. package/dist/components/swisspost-internet-header.js +47 -26
  82. package/dist/components/swisspost-internet-header.js.map +1 -1
  83. package/dist/docs.json +2 -2
  84. package/dist/esm/{index-54145c02.js → index-a2152ff5.js} +31 -3
  85. package/dist/esm/index-a2152ff5.js.map +1 -0
  86. package/dist/esm/index.js +15 -16
  87. package/dist/esm/index.js.map +1 -1
  88. package/dist/esm/{klp-widget.controller-549d5132.js → klp-widget.controller-44b1ee83.js} +10 -5
  89. package/dist/esm/klp-widget.controller-44b1ee83.js.map +1 -0
  90. package/dist/esm/{language.service-1bd090a7.js → language.service-e10417e6.js} +2 -2
  91. package/dist/esm/{language.service-1bd090a7.js.map → language.service-e10417e6.js.map} +1 -1
  92. package/dist/esm/loader.js +2 -2
  93. package/dist/esm/{post-internet-breadcrumbs-16b4d1eb.js → post-internet-breadcrumbs-e0490c32.js} +41 -15
  94. package/dist/esm/post-internet-breadcrumbs-e0490c32.js.map +1 -0
  95. package/dist/esm/{post-internet-footer-211748e4.js → post-internet-footer-d22179a6.js} +7 -6
  96. package/dist/esm/post-internet-footer-d22179a6.js.map +1 -0
  97. package/dist/esm/{post-internet-header-91c9a423.js → post-internet-header-a57b1101.js} +53 -32
  98. package/dist/esm/post-internet-header-a57b1101.js.map +1 -0
  99. package/dist/esm/{post-klp-login-widget-cac28bb1.js → post-klp-login-widget-d10825d0.js} +9 -8
  100. package/dist/esm/post-klp-login-widget-d10825d0.js.map +1 -0
  101. package/dist/esm/post-klp-login-widget.entry.js +5 -5
  102. package/dist/esm/{post-language-switch-7df96469.js → post-language-switch-8eb4e9ed.js} +8 -7
  103. package/dist/esm/post-language-switch-8eb4e9ed.js.map +1 -0
  104. package/dist/esm/post-language-switch.entry.js +6 -6
  105. package/dist/esm/{post-logo-050acfc4.js → post-logo-319224f0.js} +6 -5
  106. package/dist/esm/post-logo-319224f0.js.map +1 -0
  107. package/dist/esm/post-logo.entry.js +3 -3
  108. package/dist/esm/{post-main-navigation-1735be3c.js → post-main-navigation-cc9da7b1.js} +8 -7
  109. package/dist/esm/post-main-navigation-cc9da7b1.js.map +1 -0
  110. package/dist/esm/post-main-navigation.entry.js +6 -6
  111. package/dist/esm/{post-meta-navigation-ece1e9de.js → post-meta-navigation-6fd33a79.js} +5 -4
  112. package/dist/esm/post-meta-navigation-6fd33a79.js.map +1 -0
  113. package/dist/esm/post-meta-navigation.entry.js +3 -3
  114. package/dist/esm/post-search-dbf07842.js +596 -0
  115. package/dist/esm/post-search-dbf07842.js.map +1 -0
  116. package/dist/esm/post-search.entry.js +6 -6
  117. package/dist/esm/{post-skiplinks-c6b5addd.js → post-skiplinks-caa68a25.js} +7 -6
  118. package/dist/esm/post-skiplinks-caa68a25.js.map +1 -0
  119. package/dist/esm/post-skiplinks.entry.js +5 -5
  120. package/dist/esm/{store-c0bc1c5b.js → store-d0d3a586.js} +2 -2
  121. package/dist/esm/{store-c0bc1c5b.js.map → store-d0d3a586.js.map} +1 -1
  122. package/dist/esm/{svg-icon.component-fe96fac6.js → svg-icon.component-bf11f33c.js} +2 -2
  123. package/dist/esm/{svg-icon.component-fe96fac6.js.map → svg-icon.component-bf11f33c.js.map} +1 -1
  124. package/dist/esm/{svg-sprite.component-4874b2fb.js → svg-sprite.component-bc8c39ee.js} +2 -2
  125. package/dist/esm/{svg-sprite.component-4874b2fb.js.map → svg-sprite.component-bc8c39ee.js.map} +1 -1
  126. package/dist/esm/swisspost-internet-breadcrumbs.entry.js +6 -7
  127. package/dist/esm/swisspost-internet-breadcrumbs.entry.js.map +1 -1
  128. package/dist/esm/swisspost-internet-footer.entry.js +5 -5
  129. package/dist/esm/swisspost-internet-header.entry.js +6 -6
  130. package/dist/esm/swisspost-internet-header.js +3 -3
  131. package/dist/esm/swisspost-internet-header.js.map +1 -1
  132. package/dist/esm-es5/{index-54145c02.js → index-a2152ff5.js} +2 -2
  133. package/dist/esm-es5/index-a2152ff5.js.map +1 -0
  134. package/dist/esm-es5/index.js +1 -1
  135. package/dist/esm-es5/klp-widget.controller-44b1ee83.js +12 -0
  136. package/dist/esm-es5/{klp-widget.controller-549d5132.js.map → klp-widget.controller-44b1ee83.js.map} +1 -1
  137. package/dist/esm-es5/{language.service-1bd090a7.js → language.service-e10417e6.js} +2 -2
  138. package/dist/esm-es5/loader.js +1 -1
  139. package/dist/esm-es5/post-internet-breadcrumbs-e0490c32.js +7 -0
  140. package/dist/esm-es5/post-internet-breadcrumbs-e0490c32.js.map +1 -0
  141. package/dist/esm-es5/{post-internet-footer-211748e4.js → post-internet-footer-d22179a6.js} +2 -2
  142. package/dist/esm-es5/post-internet-footer-d22179a6.js.map +1 -0
  143. package/dist/esm-es5/post-internet-header-a57b1101.js +2 -0
  144. package/dist/esm-es5/post-internet-header-a57b1101.js.map +1 -0
  145. package/dist/esm-es5/{post-klp-login-widget-cac28bb1.js → post-klp-login-widget-d10825d0.js} +2 -2
  146. package/dist/esm-es5/post-klp-login-widget-d10825d0.js.map +1 -0
  147. package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
  148. package/dist/esm-es5/{post-language-switch-7df96469.js → post-language-switch-8eb4e9ed.js} +2 -2
  149. package/dist/esm-es5/post-language-switch-8eb4e9ed.js.map +1 -0
  150. package/dist/esm-es5/post-language-switch.entry.js +1 -1
  151. package/dist/esm-es5/{post-logo-050acfc4.js → post-logo-319224f0.js} +2 -2
  152. package/dist/{esm/post-logo-050acfc4.js.map → esm-es5/post-logo-319224f0.js.map} +1 -1
  153. package/dist/esm-es5/post-logo.entry.js +1 -1
  154. package/dist/esm-es5/{post-main-navigation-1735be3c.js → post-main-navigation-cc9da7b1.js} +2 -2
  155. package/dist/esm-es5/post-main-navigation-cc9da7b1.js.map +1 -0
  156. package/dist/esm-es5/post-main-navigation.entry.js +1 -1
  157. package/dist/esm-es5/{post-meta-navigation-ece1e9de.js → post-meta-navigation-6fd33a79.js} +2 -2
  158. package/dist/esm-es5/post-meta-navigation-6fd33a79.js.map +1 -0
  159. package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
  160. package/dist/esm-es5/post-search-dbf07842.js +2 -0
  161. package/dist/esm-es5/post-search-dbf07842.js.map +1 -0
  162. package/dist/esm-es5/post-search.entry.js +1 -1
  163. package/dist/esm-es5/post-skiplinks-caa68a25.js +2 -0
  164. package/dist/esm-es5/post-skiplinks-caa68a25.js.map +1 -0
  165. package/dist/esm-es5/post-skiplinks.entry.js +1 -1
  166. package/dist/esm-es5/{store-c0bc1c5b.js → store-d0d3a586.js} +2 -2
  167. package/dist/esm-es5/{store-c0bc1c5b.js.map → store-d0d3a586.js.map} +1 -1
  168. package/dist/esm-es5/{svg-icon.component-fe96fac6.js → svg-icon.component-bf11f33c.js} +2 -2
  169. package/dist/esm-es5/{svg-sprite.component-4874b2fb.js → svg-sprite.component-bc8c39ee.js} +2 -2
  170. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +1 -1
  171. package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
  172. package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
  173. package/dist/esm-es5/swisspost-internet-header.js +1 -1
  174. package/dist/esm-es5/swisspost-internet-header.js.map +1 -1
  175. package/dist/swisspost-internet-header/index.esm.js +1 -1
  176. package/dist/swisspost-internet-header/{p-87756f7c.system.js → p-06b24818.system.js} +2 -2
  177. package/dist/swisspost-internet-header/p-06b24818.system.js.map +1 -0
  178. package/dist/swisspost-internet-header/{p-0338115d.system.js → p-101fc026.system.js} +2 -2
  179. package/dist/swisspost-internet-header/p-101fc026.system.js.map +1 -0
  180. package/dist/swisspost-internet-header/{p-0606dca1.js → p-15b7f849.js} +2 -2
  181. package/dist/swisspost-internet-header/p-15b7f849.js.map +1 -0
  182. package/dist/swisspost-internet-header/p-1e0c73ba.js +7 -0
  183. package/dist/swisspost-internet-header/p-1e0c73ba.js.map +1 -0
  184. package/dist/swisspost-internet-header/{p-5a69c918.system.js → p-1e8226df.system.js} +2 -2
  185. package/dist/swisspost-internet-header/p-240ae9b0.system.entry.js +2 -0
  186. package/dist/swisspost-internet-header/p-31171eac.js +2 -0
  187. package/dist/swisspost-internet-header/p-31512bdc.js +12 -0
  188. package/dist/swisspost-internet-header/{p-2a8d5787.js.map → p-31512bdc.js.map} +1 -1
  189. package/dist/swisspost-internet-header/p-3503bc8d.system.js +7 -0
  190. package/dist/swisspost-internet-header/p-3503bc8d.system.js.map +1 -0
  191. package/dist/swisspost-internet-header/p-395c3737.system.entry.js +2 -0
  192. package/dist/swisspost-internet-header/{p-c7f451bd.js → p-4703a3df.js} +2 -2
  193. package/dist/swisspost-internet-header/p-4703a3df.js.map +1 -0
  194. package/dist/swisspost-internet-header/p-48af8686.entry.js +2 -0
  195. package/dist/swisspost-internet-header/{p-5c2bb553.js → p-4ebec8fe.js} +2 -2
  196. package/dist/swisspost-internet-header/{p-5c2bb553.js.map → p-4ebec8fe.js.map} +1 -1
  197. package/dist/swisspost-internet-header/{p-3bcc322e.system.js → p-520ce5c4.system.js} +2 -2
  198. package/dist/swisspost-internet-header/p-520ce5c4.system.js.map +1 -0
  199. package/dist/swisspost-internet-header/p-61eca4db.system.entry.js +2 -0
  200. package/dist/swisspost-internet-header/{p-9b1e0d60.system.js → p-62693134.system.js} +2 -2
  201. package/dist/swisspost-internet-header/p-62693134.system.js.map +1 -0
  202. package/dist/swisspost-internet-header/p-6cb25884.system.entry.js +2 -0
  203. package/dist/swisspost-internet-header/p-6f44c74a.system.entry.js +2 -0
  204. package/dist/swisspost-internet-header/p-7253bc45.entry.js +2 -0
  205. package/dist/swisspost-internet-header/{p-7d188581.js → p-7c1b1c28.js} +2 -2
  206. package/dist/swisspost-internet-header/p-7c1b1c28.js.map +1 -0
  207. package/dist/swisspost-internet-header/p-7ccd3ade.system.entry.js +2 -0
  208. package/dist/swisspost-internet-header/p-7f40ebc6.system.js +12 -0
  209. package/dist/swisspost-internet-header/{p-a7bc91ca.system.js.map → p-7f40ebc6.system.js.map} +1 -1
  210. package/dist/swisspost-internet-header/p-83151762.entry.js +2 -0
  211. package/dist/swisspost-internet-header/p-833cd107.js +3 -0
  212. package/dist/swisspost-internet-header/p-833cd107.js.map +1 -0
  213. package/dist/swisspost-internet-header/{p-e2985a86.system.js → p-863f792c.system.js} +2 -2
  214. package/dist/swisspost-internet-header/p-863f792c.system.js.map +1 -0
  215. package/dist/swisspost-internet-header/{p-bfbb5fc7.js → p-8a1e8d50.js} +2 -2
  216. package/dist/swisspost-internet-header/p-8a1e8d50.js.map +1 -0
  217. package/dist/swisspost-internet-header/p-8a6c2961.system.js +2 -0
  218. package/dist/swisspost-internet-header/p-8a6c2961.system.js.map +1 -0
  219. package/dist/swisspost-internet-header/p-8f014e72.entry.js +2 -0
  220. package/dist/swisspost-internet-header/{p-8a65e8d6.js → p-90808312.js} +2 -2
  221. package/dist/swisspost-internet-header/p-9246a004.system.js +2 -0
  222. package/dist/swisspost-internet-header/{p-8b9d7320.system.js → p-941fb537.system.js} +2 -2
  223. package/dist/swisspost-internet-header/p-9b9a57fe.entry.js +2 -0
  224. package/dist/swisspost-internet-header/{p-dd800ff2.system.js → p-a7405b55.system.js} +2 -2
  225. package/dist/swisspost-internet-header/p-a7405b55.system.js.map +1 -0
  226. package/dist/swisspost-internet-header/p-aa41c50e.entry.js +2 -0
  227. package/dist/swisspost-internet-header/{p-e7bd7ab7.system.js → p-af355dbc.system.js} +2 -2
  228. package/dist/swisspost-internet-header/{p-e7bd7ab7.system.js.map → p-af355dbc.system.js.map} +1 -1
  229. package/dist/swisspost-internet-header/p-b0447498.system.entry.js +2 -0
  230. package/dist/swisspost-internet-header/p-b261a78e.system.js +2 -0
  231. package/dist/swisspost-internet-header/p-b261a78e.system.js.map +1 -0
  232. package/dist/swisspost-internet-header/p-b3910061.system.js +2 -0
  233. package/dist/swisspost-internet-header/p-b3910061.system.js.map +1 -0
  234. package/dist/swisspost-internet-header/p-b5c47ef8.system.js +3 -0
  235. package/dist/swisspost-internet-header/p-b5c47ef8.system.js.map +1 -0
  236. package/dist/swisspost-internet-header/p-c1fdbc33.entry.js +2 -0
  237. package/dist/swisspost-internet-header/{p-0589b170.js → p-c3a2dbaf.js} +2 -2
  238. package/dist/swisspost-internet-header/p-c6e9209d.js +2 -0
  239. package/dist/swisspost-internet-header/p-c6e9209d.js.map +1 -0
  240. package/dist/swisspost-internet-header/p-c9391554.js +2 -0
  241. package/dist/swisspost-internet-header/p-c9391554.js.map +1 -0
  242. package/dist/swisspost-internet-header/p-cb106742.system.entry.js +2 -0
  243. package/dist/swisspost-internet-header/p-d4781a7f.system.entry.js +2 -0
  244. package/dist/swisspost-internet-header/{p-979ae0e8.js → p-dab1f2dd.js} +2 -2
  245. package/dist/swisspost-internet-header/p-dab1f2dd.js.map +1 -0
  246. package/dist/swisspost-internet-header/{p-2eb28b7c.js → p-dba0041e.js} +2 -2
  247. package/dist/swisspost-internet-header/p-dba0041e.js.map +1 -0
  248. package/dist/swisspost-internet-header/p-ded05f0c.js +2 -0
  249. package/dist/swisspost-internet-header/{p-11d02764.system.js.map → p-ded05f0c.js.map} +1 -1
  250. package/dist/swisspost-internet-header/p-e5408b13.system.entry.js +2 -0
  251. package/dist/swisspost-internet-header/p-edde6c7b.entry.js +2 -0
  252. package/dist/swisspost-internet-header/{p-a9f840df.system.js → p-ef26af95.system.js} +2 -2
  253. package/dist/swisspost-internet-header/{p-a9f840df.system.js.map → p-ef26af95.system.js.map} +1 -1
  254. package/dist/swisspost-internet-header/p-f1f14a7f.entry.js +2 -0
  255. package/dist/swisspost-internet-header/{p-c895eccc.system.js → p-f63740ff.system.js} +2 -2
  256. package/dist/swisspost-internet-header/p-f7f9d451.entry.js +2 -0
  257. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
  258. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js.map +1 -1
  259. package/dist/swisspost-internet-header/swisspost-internet-header.js +1 -1
  260. package/dist/types/components/post-internet-header/logo-animation/logo-scale.d.ts +4 -0
  261. package/package.json +11 -11
  262. package/dist/cjs/_commonjsHelpers-537d719a.js +0 -22
  263. package/dist/cjs/_commonjsHelpers-537d719a.js.map +0 -1
  264. package/dist/cjs/index-8cbf8194.js.map +0 -1
  265. package/dist/cjs/klp-widget.controller-7fbe23c3.js.map +0 -1
  266. package/dist/cjs/post-internet-breadcrumbs-f5e20904.js.map +0 -1
  267. package/dist/cjs/post-internet-footer-d222e56d.js.map +0 -1
  268. package/dist/cjs/post-internet-header-befc7a3f.js.map +0 -1
  269. package/dist/cjs/post-klp-login-widget-01eee964.js.map +0 -1
  270. package/dist/cjs/post-language-switch-59e1e832.js.map +0 -1
  271. package/dist/cjs/post-logo-6d127981.js.map +0 -1
  272. package/dist/cjs/post-main-navigation-d34e9799.js.map +0 -1
  273. package/dist/cjs/post-meta-navigation-ac31cee4.js.map +0 -1
  274. package/dist/cjs/post-search-ac307fd7.js +0 -597
  275. package/dist/cjs/post-search-ac307fd7.js.map +0 -1
  276. package/dist/cjs/post-skiplinks-74f15d34.js.map +0 -1
  277. package/dist/components/_commonjsHelpers.js +0 -19
  278. package/dist/components/_commonjsHelpers.js.map +0 -1
  279. package/dist/esm/_commonjsHelpers-9943807e.js +0 -19
  280. package/dist/esm/_commonjsHelpers-9943807e.js.map +0 -1
  281. package/dist/esm/index-54145c02.js.map +0 -1
  282. package/dist/esm/klp-widget.controller-549d5132.js.map +0 -1
  283. package/dist/esm/post-internet-breadcrumbs-16b4d1eb.js.map +0 -1
  284. package/dist/esm/post-internet-footer-211748e4.js.map +0 -1
  285. package/dist/esm/post-internet-header-91c9a423.js.map +0 -1
  286. package/dist/esm/post-klp-login-widget-cac28bb1.js.map +0 -1
  287. package/dist/esm/post-language-switch-7df96469.js.map +0 -1
  288. package/dist/esm/post-main-navigation-1735be3c.js.map +0 -1
  289. package/dist/esm/post-meta-navigation-ece1e9de.js.map +0 -1
  290. package/dist/esm/post-search-efd16c09.js +0 -595
  291. package/dist/esm/post-search-efd16c09.js.map +0 -1
  292. package/dist/esm/post-skiplinks-c6b5addd.js.map +0 -1
  293. package/dist/esm-es5/_commonjsHelpers-9943807e.js +0 -2
  294. package/dist/esm-es5/index-54145c02.js.map +0 -1
  295. package/dist/esm-es5/klp-widget.controller-549d5132.js +0 -13
  296. package/dist/esm-es5/post-internet-breadcrumbs-16b4d1eb.js +0 -7
  297. package/dist/esm-es5/post-internet-breadcrumbs-16b4d1eb.js.map +0 -1
  298. package/dist/esm-es5/post-internet-footer-211748e4.js.map +0 -1
  299. package/dist/esm-es5/post-internet-header-91c9a423.js +0 -2
  300. package/dist/esm-es5/post-internet-header-91c9a423.js.map +0 -1
  301. package/dist/esm-es5/post-klp-login-widget-cac28bb1.js.map +0 -1
  302. package/dist/esm-es5/post-language-switch-7df96469.js.map +0 -1
  303. package/dist/esm-es5/post-logo-050acfc4.js.map +0 -1
  304. package/dist/esm-es5/post-main-navigation-1735be3c.js.map +0 -1
  305. package/dist/esm-es5/post-meta-navigation-ece1e9de.js.map +0 -1
  306. package/dist/esm-es5/post-search-efd16c09.js +0 -2
  307. package/dist/esm-es5/post-search-efd16c09.js.map +0 -1
  308. package/dist/esm-es5/post-skiplinks-c6b5addd.js +0 -2
  309. package/dist/esm-es5/post-skiplinks-c6b5addd.js.map +0 -1
  310. package/dist/swisspost-internet-header/p-0338115d.system.js.map +0 -1
  311. package/dist/swisspost-internet-header/p-0606dca1.js.map +0 -1
  312. package/dist/swisspost-internet-header/p-07313f1b.system.entry.js +0 -2
  313. package/dist/swisspost-internet-header/p-112455b1.js +0 -2
  314. package/dist/swisspost-internet-header/p-11d02764.system.js +0 -2
  315. package/dist/swisspost-internet-header/p-1244a33a.entry.js +0 -2
  316. package/dist/swisspost-internet-header/p-14b0f654.js +0 -3
  317. package/dist/swisspost-internet-header/p-14b0f654.js.map +0 -1
  318. package/dist/swisspost-internet-header/p-1c722d02.system.entry.js +0 -2
  319. package/dist/swisspost-internet-header/p-1cb8fe46.entry.js +0 -2
  320. package/dist/swisspost-internet-header/p-2a8d5787.js +0 -13
  321. package/dist/swisspost-internet-header/p-2eb28b7c.js.map +0 -1
  322. package/dist/swisspost-internet-header/p-2f221bb5.system.js +0 -2
  323. package/dist/swisspost-internet-header/p-2f221bb5.system.js.map +0 -1
  324. package/dist/swisspost-internet-header/p-3759e0aa.entry.js +0 -2
  325. package/dist/swisspost-internet-header/p-3985d762.js +0 -7
  326. package/dist/swisspost-internet-header/p-3985d762.js.map +0 -1
  327. package/dist/swisspost-internet-header/p-3bcc322e.system.js.map +0 -1
  328. package/dist/swisspost-internet-header/p-3e62c7a9.js +0 -2
  329. package/dist/swisspost-internet-header/p-3e62c7a9.js.map +0 -1
  330. package/dist/swisspost-internet-header/p-434dbf16.system.js +0 -7
  331. package/dist/swisspost-internet-header/p-434dbf16.system.js.map +0 -1
  332. package/dist/swisspost-internet-header/p-4380032a.entry.js +0 -2
  333. package/dist/swisspost-internet-header/p-4bc05e68.js +0 -2
  334. package/dist/swisspost-internet-header/p-4bc05e68.js.map +0 -1
  335. package/dist/swisspost-internet-header/p-5498ca7c.entry.js +0 -2
  336. package/dist/swisspost-internet-header/p-5ac16bdd.system.entry.js +0 -2
  337. package/dist/swisspost-internet-header/p-6d60866a.system.entry.js +0 -2
  338. package/dist/swisspost-internet-header/p-7505c3e1.system.entry.js +0 -2
  339. package/dist/swisspost-internet-header/p-7d188581.js.map +0 -1
  340. package/dist/swisspost-internet-header/p-87756f7c.system.js.map +0 -1
  341. package/dist/swisspost-internet-header/p-8df32cb8.system.js +0 -2
  342. package/dist/swisspost-internet-header/p-943d2956.system.entry.js +0 -2
  343. package/dist/swisspost-internet-header/p-948d3e8f.entry.js +0 -2
  344. package/dist/swisspost-internet-header/p-979ae0e8.js.map +0 -1
  345. package/dist/swisspost-internet-header/p-9b1e0d60.system.js.map +0 -1
  346. package/dist/swisspost-internet-header/p-a08ee9d3.entry.js +0 -2
  347. package/dist/swisspost-internet-header/p-a4d04c0b.system.entry.js +0 -2
  348. package/dist/swisspost-internet-header/p-a7bc91ca.system.js +0 -13
  349. package/dist/swisspost-internet-header/p-b8c6f6a6.system.entry.js +0 -2
  350. package/dist/swisspost-internet-header/p-bc60a641.js +0 -2
  351. package/dist/swisspost-internet-header/p-bc60a641.js.map +0 -1
  352. package/dist/swisspost-internet-header/p-bfbb5fc7.js.map +0 -1
  353. package/dist/swisspost-internet-header/p-c466f253.entry.js +0 -2
  354. package/dist/swisspost-internet-header/p-c7f451bd.js.map +0 -1
  355. package/dist/swisspost-internet-header/p-c7fba36e.system.entry.js +0 -2
  356. package/dist/swisspost-internet-header/p-c8153649.js +0 -2
  357. package/dist/swisspost-internet-header/p-d6ab4ef3.entry.js +0 -2
  358. package/dist/swisspost-internet-header/p-da7b8486.system.entry.js +0 -2
  359. package/dist/swisspost-internet-header/p-da7b8486.system.entry.js.map +0 -1
  360. package/dist/swisspost-internet-header/p-dd800ff2.system.js.map +0 -1
  361. package/dist/swisspost-internet-header/p-e2985a86.system.js.map +0 -1
  362. package/dist/swisspost-internet-header/p-e5acc124.system.js +0 -2
  363. package/dist/swisspost-internet-header/p-e5acc124.system.js.map +0 -1
  364. package/dist/swisspost-internet-header/p-f887c8bb.system.js +0 -2
  365. package/dist/swisspost-internet-header/p-f887c8bb.system.js.map +0 -1
  366. package/dist/swisspost-internet-header/p-fe4736f9.system.js +0 -3
  367. package/dist/swisspost-internet-header/p-fe4736f9.system.js.map +0 -1
  368. package/dist/swisspost-internet-header/p-ff36437b.entry.js +0 -2
  369. package/dist/swisspost-internet-header/p-ff36437b.entry.js.map +0 -1
  370. /package/dist/esm-es5/{language.service-1bd090a7.js.map → language.service-e10417e6.js.map} +0 -0
  371. /package/dist/esm-es5/{svg-icon.component-fe96fac6.js.map → svg-icon.component-bf11f33c.js.map} +0 -0
  372. /package/dist/esm-es5/{svg-sprite.component-4874b2fb.js.map → svg-sprite.component-bc8c39ee.js.map} +0 -0
  373. /package/dist/swisspost-internet-header/{p-5a69c918.system.js.map → p-1e8226df.system.js.map} +0 -0
  374. /package/dist/{esm-es5/_commonjsHelpers-9943807e.js.map → swisspost-internet-header/p-240ae9b0.system.entry.js.map} +0 -0
  375. /package/dist/swisspost-internet-header/{p-c8153649.js.map → p-31171eac.js.map} +0 -0
  376. /package/dist/swisspost-internet-header/{p-07313f1b.system.entry.js.map → p-395c3737.system.entry.js.map} +0 -0
  377. /package/dist/swisspost-internet-header/{p-112455b1.js.map → p-48af8686.entry.js.map} +0 -0
  378. /package/dist/swisspost-internet-header/{p-1244a33a.entry.js.map → p-61eca4db.system.entry.js.map} +0 -0
  379. /package/dist/swisspost-internet-header/{p-1c722d02.system.entry.js.map → p-6cb25884.system.entry.js.map} +0 -0
  380. /package/dist/swisspost-internet-header/{p-1cb8fe46.entry.js.map → p-6f44c74a.system.entry.js.map} +0 -0
  381. /package/dist/swisspost-internet-header/{p-3759e0aa.entry.js.map → p-7253bc45.entry.js.map} +0 -0
  382. /package/dist/swisspost-internet-header/{p-4380032a.entry.js.map → p-7ccd3ade.system.entry.js.map} +0 -0
  383. /package/dist/swisspost-internet-header/{p-5498ca7c.entry.js.map → p-83151762.entry.js.map} +0 -0
  384. /package/dist/swisspost-internet-header/{p-5ac16bdd.system.entry.js.map → p-8f014e72.entry.js.map} +0 -0
  385. /package/dist/swisspost-internet-header/{p-8a65e8d6.js.map → p-90808312.js.map} +0 -0
  386. /package/dist/swisspost-internet-header/{p-6d60866a.system.entry.js.map → p-9246a004.system.js.map} +0 -0
  387. /package/dist/swisspost-internet-header/{p-8b9d7320.system.js.map → p-941fb537.system.js.map} +0 -0
  388. /package/dist/swisspost-internet-header/{p-7505c3e1.system.entry.js.map → p-9b9a57fe.entry.js.map} +0 -0
  389. /package/dist/swisspost-internet-header/{p-8df32cb8.system.js.map → p-aa41c50e.entry.js.map} +0 -0
  390. /package/dist/swisspost-internet-header/{p-943d2956.system.entry.js.map → p-b0447498.system.entry.js.map} +0 -0
  391. /package/dist/swisspost-internet-header/{p-948d3e8f.entry.js.map → p-c1fdbc33.entry.js.map} +0 -0
  392. /package/dist/swisspost-internet-header/{p-0589b170.js.map → p-c3a2dbaf.js.map} +0 -0
  393. /package/dist/swisspost-internet-header/{p-a08ee9d3.entry.js.map → p-cb106742.system.entry.js.map} +0 -0
  394. /package/dist/swisspost-internet-header/{p-a4d04c0b.system.entry.js.map → p-d4781a7f.system.entry.js.map} +0 -0
  395. /package/dist/swisspost-internet-header/{p-b8c6f6a6.system.entry.js.map → p-e5408b13.system.entry.js.map} +0 -0
  396. /package/dist/swisspost-internet-header/{p-c466f253.entry.js.map → p-edde6c7b.entry.js.map} +0 -0
  397. /package/dist/swisspost-internet-header/{p-c7fba36e.system.entry.js.map → p-f1f14a7f.entry.js.map} +0 -0
  398. /package/dist/swisspost-internet-header/{p-c895eccc.system.js.map → p-f63740ff.system.js.map} +0 -0
  399. /package/dist/swisspost-internet-header/{p-d6ab4ef3.entry.js.map → p-f7f9d451.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"post-search2.js","mappings":"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","names":[],"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/utils/if.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\nlet parcelController: AbortController;\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 'sending' in parcelInfo;\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 const url = getTrackAndTraceApiUrl(query);\n\n if (parcelController) parcelController.abort();\n parcelController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, { signal: parcelController.signal })\n .then(response => response.json())\n .then((trackAndTraceResult: TrackAndTraceInfo) => {\n resolve({ ...trackAndTraceResult, ok: trackAndTraceResult.ok });\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(`Could not check track and trace API due to error: ${error.message}`);\n reject(error);\n }\n });\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\nlet suggestionsController: AbortController;\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 (\n state.localizedConfig?.header?.search === undefined ||\n state.localizedConfig?.header?.search.isCustomSuggestionHidden === true\n )\n 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\n if (suggestionsController) suggestionsController.abort();\n suggestionsController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, {\n signal: suggestionsController.signal,\n method: 'GET',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n .then(response => response.json())\n .then((coveoJSON: CoveoResponse) => {\n resolve(\n coveoJSON.completions.map(completion => ({\n ...completion,\n redirectUrl: getSearchPageUrl(completion.expression),\n })),\n );\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(\n `Fetching coveo suggestions failed, ${error}\\nDid you add \"*.coveo.com\" to your connect-src content security policy and tried turning off your adblocker?`,\n );\n reject(error);\n }\n });\n });\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\nlet placesController: AbortController;\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 url = `${gisAPIUrl}/Geocode${searchParameters}`;\n\n if (placesController) placesController.abort();\n placesController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, { signal: placesController.signal })\n .then(response => response.json())\n .then((geocodeJSON: GeocodeResponse) => {\n if (!geocodeJSON.ok) throw new Error(geocodeJSON.info);\n resolve(geocodeJSON.locations);\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(\n `Fetching places failed, ${error}\\nDid you add \"places.post.ch\" to your connect-src content security policy?`,\n );\n reject(error);\n }\n });\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","import { JSXBase } from '@stencil/core/internal';\n\nexport const If = (\n props: {\n condition: boolean;\n },\n children: JSXBase.IntrinsicElements,\n) => {\n if (!props.condition) {\n return null;\n }\n return children;\n};\n","@use '@swisspost/design-system-styles/core' as post;\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 .form-control + label {\n padding-right: post.$input-padding-x * 5;\n }\n}\n\n.start-search-button,\n.clear-search-button {\n position: absolute;\n top: 0;\n right: 0;\n height: 100%;\n padding-right: 1rem;\n padding-left: 0.5rem;\n display: flex;\n align-items: center;\n cursor: pointer;\n background: none;\n border: 0;\n box-shadow: none;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n}\n\n.clear-search-button {\n right: 3rem;\n padding-right: 0.5rem;\n visibility: hidden;\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, Element, Event, EventEmitter, h, Host, Method, State } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { clearAllBodyScrollLocks, disableBodyScroll, enableBodyScroll } from 'body-scroll-lock';\nimport { state } from '../../data/store';\nimport { CoveoCompletion } from '../../models/coveo.model';\nimport { GeocodeLocation } from '../../models/geocode.model';\nimport { TagManagerDataLayer } from '../../models/general.model';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n ISearchRecommendation,\n IsFocusable,\n} from '../../models/header.model';\nimport { equalizeArrays, getSearchRedirectUrl } 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 { elementHasTransition, userPrefersReducedMotion } 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';\nimport { translate } from '../../services/language.service';\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 private clearButton?: HTMLButtonElement;\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 void 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.searchFlyout) {\n return;\n }\n\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 // shows or hides clearButton depending on the content of the searchbar\n if (this.clearButton) {\n if (query !== '') {\n this.clearButton.style.visibility = 'visible';\n } else {\n this.clearButton.style.visibility = 'hidden';\n }\n }\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 * clear Search box\n * calls handleSearchInput to update/remove suggestions\n */\n private handleClearSearchBox() {\n if (this.searchBox !== undefined) {\n this.searchBox.value = '';\n this.handleSearchInput();\n }\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 const selectedSuggestion = this.searchFlyout.querySelector<HTMLElement>(\n '.suggestions > li > a.selected',\n );\n const selectedHref = selectedSuggestion?.getAttribute('href') ?? null;\n const suggestions = this.searchFlyout.querySelectorAll('.suggestions > li > a');\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n if (selectedHref !== null) {\n window.location.href = selectedHref;\n } else {\n void this.startSearch();\n }\n\n break;\n case 'arrowdown':\n this.deselectSuggestion();\n\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 // If there are any suggestions, select first suggestion in list\n } else if (suggestions.length > 0) {\n suggestions[0].classList.add('selected');\n }\n\n this.updateSearchBoxWithSuggestion();\n\n break;\n case 'arrowup':\n this.deselectSuggestion();\n\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 // If there are any suggestions, select last suggestion in list\n } else if (suggestions.length > 0) {\n suggestions[suggestions.length - 1].classList.add('selected');\n }\n\n this.updateSearchBoxWithSuggestion();\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 * Update search box with selected suggestion\n */\n private updateSearchBoxWithSuggestion() {\n if (this.searchFlyout === undefined) return;\n\n // Get the newly selected suggestion\n const selectedSuggestion = this.searchFlyout.querySelector<HTMLElement>(\n '.suggestions > li > a.selected',\n );\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\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 private trackRecommendationClick(recommendation: ISearchRecommendation) {\n if (!('dataLayer' in window)) return;\n\n const trackingAttributes = recommendation.additionalAttributes.reduce((acc, curr) => {\n acc[curr.name] = curr.value;\n return acc;\n }, {});\n\n (window.dataLayer as TagManagerDataLayer).push({\n event: trackingAttributes['data-event'],\n text: trackingAttributes['data-text'],\n link_url: trackingAttributes['data-linkurl'],\n label: trackingAttributes['data-label'],\n type: trackingAttributes['data-type'],\n });\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) {\n return;\n }\n const { translations, search } = state.localizedConfig.header;\n const isParcelTrackingNr = this.parcelSuggestion && 'sending' in this.parcelSuggestion;\n const showPortalRecommendations =\n this.searchBox?.value === '' && search.searchRecommendations?.links.length > 0;\n\n return (\n <Host role=\"search\">\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 => void 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 role=\"searchbox\"\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={() => void this.handleSearchInput()}\n onKeyDown={e => this.handleKeyDown(e)}\n />\n <label htmlFor=\"searchBox\">{translations.flyoutSearchBoxFloatingLabel}</label>\n <button\n onClick={() => this.handleClearSearchBox()}\n class=\"clear-search-button\"\n type=\"reset\"\n id=\"clearButton\"\n ref={el => (this.clearButton = el)}\n >\n <span class=\"visually-hidden\">{translate('Delete search term')}</span>\n <SvgIcon name=\"pi-close\" />\n </button>\n <button onClick={() => void this.startSearch()} class=\"start-search-button\">\n <span class=\"visually-hidden\">{translations.searchSubmit}</span>\n <SvgIcon name=\"pi-search\" />\n </button>\n </div>\n {showPortalRecommendations && (\n <h2 id=\"post-internet-header-search-recommendations-title\" class=\"bold\">\n {search.searchRecommendations.title}\n </h2>\n )}\n <ul\n class=\"suggestions no-list\"\n onMouseLeave={() => this.handleMouseLeaveSuggestions()}\n aria-labelledby={\n showPortalRecommendations\n ? 'post-internet-header-search-recommendations-title'\n : undefined\n }\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 onClick={() => this.trackRecommendationClick(recommendation)}\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 {isParcelTrackingNr && (\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}:&nbsp;</span>\n <span>\n {[\n this.parcelSuggestion?.sending?.product,\n ' ' + this.parcelSuggestion?.sending?.recipient.zipcode,\n ' ' + this.parcelSuggestion?.sending?.recipient.city,\n ', ' + this.parcelSuggestion?.sending?.state,\n ]\n .filter(s => s !== '' && s !== ' ')\n .join('')}\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"],"version":3}
1
+ {"file":"post-search2.js","mappings":"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","names":[],"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/utils/if.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\nlet parcelController: AbortController;\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 'sending' in parcelInfo;\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 const url = getTrackAndTraceApiUrl(query);\n\n if (parcelController) parcelController.abort();\n parcelController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, { signal: parcelController.signal })\n .then(response => response.json())\n .then((trackAndTraceResult: TrackAndTraceInfo) => {\n resolve({ ...trackAndTraceResult, ok: trackAndTraceResult.ok });\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(`Could not check track and trace API due to error: ${error.message}`);\n reject(error);\n }\n });\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\nlet suggestionsController: AbortController;\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 (\n state.localizedConfig?.header?.search === undefined ||\n state.localizedConfig?.header?.search.isCustomSuggestionHidden === true\n )\n 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\n if (suggestionsController) suggestionsController.abort();\n suggestionsController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, {\n signal: suggestionsController.signal,\n method: 'GET',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n .then(response => response.json())\n .then((coveoJSON: CoveoResponse) => {\n resolve(\n coveoJSON.completions.map(completion => ({\n ...completion,\n redirectUrl: getSearchPageUrl(completion.expression),\n })),\n );\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(\n `Fetching coveo suggestions failed, ${error}\\nDid you add \"*.coveo.com\" to your connect-src content security policy and tried turning off your adblocker?`,\n );\n reject(error);\n }\n });\n });\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\nlet placesController: AbortController;\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 url = `${gisAPIUrl}/Geocode${searchParameters}`;\n\n if (placesController) placesController.abort();\n placesController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, { signal: placesController.signal })\n .then(response => response.json())\n .then((geocodeJSON: GeocodeResponse) => {\n if (!geocodeJSON.ok) throw new Error(geocodeJSON.info);\n resolve(geocodeJSON.locations);\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(\n `Fetching places failed, ${error}\\nDid you add \"places.post.ch\" to your connect-src content security policy?`,\n );\n reject(error);\n }\n });\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","import { JSXBase } from '@stencil/core/internal';\n\nexport const If = (\n props: {\n condition: boolean;\n },\n children: JSXBase.IntrinsicElements,\n) => {\n if (!props.condition) {\n return null;\n }\n return children;\n};\n","@use '@swisspost/design-system-styles/core' as post;\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 .form-control + label {\n padding-right: post.$input-padding-x * 5;\n }\n}\n\n.start-search-button,\n.clear-search-button {\n position: absolute;\n top: 0;\n right: 0;\n height: 100%;\n padding-right: 1rem;\n padding-left: 0.5rem;\n display: flex;\n align-items: center;\n cursor: pointer;\n background: none;\n border: 0;\n box-shadow: none;\n\n svg {\n width: 1.5rem;\n height: 1.5rem;\n }\n}\n\n.clear-search-button {\n right: 3rem;\n padding-right: 0.5rem;\n visibility: hidden;\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, Element, Event, EventEmitter, h, Host, Method, State } from '@stencil/core';\nimport { throttle } from 'throttle-debounce';\nimport { clearAllBodyScrollLocks, disableBodyScroll, enableBodyScroll } from 'body-scroll-lock';\nimport { state } from '../../data/store';\nimport { CoveoCompletion } from '../../models/coveo.model';\nimport { GeocodeLocation } from '../../models/geocode.model';\nimport { TagManagerDataLayer } from '../../models/general.model';\nimport {\n DropdownElement,\n DropdownEvent,\n HasDropdown,\n ISearchRecommendation,\n IsFocusable,\n} from '../../models/header.model';\nimport { equalizeArrays, getSearchRedirectUrl } 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 { elementHasTransition, userPrefersReducedMotion } 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';\nimport { translate } from '../../services/language.service';\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 private clearButton?: HTMLButtonElement;\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 void 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.searchFlyout) {\n return;\n }\n\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 // shows or hides clearButton depending on the content of the searchbar\n if (this.clearButton) {\n if (query !== '') {\n this.clearButton.style.visibility = 'visible';\n } else {\n this.clearButton.style.visibility = 'hidden';\n }\n }\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 * clear Search box\n * calls handleSearchInput to update/remove suggestions\n */\n private handleClearSearchBox() {\n if (this.searchBox !== undefined) {\n this.searchBox.value = '';\n this.handleSearchInput();\n }\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 const selectedSuggestion = this.searchFlyout.querySelector<HTMLElement>(\n '.suggestions > li > a.selected',\n );\n const selectedHref = selectedSuggestion?.getAttribute('href') ?? null;\n const suggestions = this.searchFlyout.querySelectorAll('.suggestions > li > a');\n\n switch (event.key.toLowerCase()) {\n case 'enter':\n if (selectedHref !== null) {\n window.location.href = selectedHref;\n } else {\n void this.startSearch();\n }\n\n break;\n case 'arrowdown':\n this.deselectSuggestion();\n\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 // If there are any suggestions, select first suggestion in list\n } else if (suggestions.length > 0) {\n suggestions[0].classList.add('selected');\n }\n\n this.updateSearchBoxWithSuggestion();\n\n break;\n case 'arrowup':\n this.deselectSuggestion();\n\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 // If there are any suggestions, select last suggestion in list\n } else if (suggestions.length > 0) {\n suggestions[suggestions.length - 1].classList.add('selected');\n }\n\n this.updateSearchBoxWithSuggestion();\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 * Update search box with selected suggestion\n */\n private updateSearchBoxWithSuggestion() {\n if (this.searchFlyout === undefined) return;\n\n // Get the newly selected suggestion\n const selectedSuggestion = this.searchFlyout.querySelector<HTMLElement>(\n '.suggestions > li > a.selected',\n );\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\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 private trackRecommendationClick(recommendation: ISearchRecommendation) {\n if (!('dataLayer' in window)) return;\n\n const trackingAttributes = recommendation.additionalAttributes.reduce((acc, curr) => {\n acc[curr.name] = curr.value;\n return acc;\n }, {});\n\n (window.dataLayer as TagManagerDataLayer).push({\n event: trackingAttributes['data-event'],\n text: trackingAttributes['data-text'],\n link_url: trackingAttributes['data-linkurl'],\n label: trackingAttributes['data-label'],\n type: trackingAttributes['data-type'],\n });\n }\n\n render() {\n if (state.localizedConfig?.header === undefined) {\n return;\n }\n const { translations, search } = state.localizedConfig.header;\n const isParcelTrackingNr = this.parcelSuggestion && 'sending' in this.parcelSuggestion;\n const showPortalRecommendations =\n this.searchBox?.value === '' && search.searchRecommendations?.links.length > 0;\n\n return (\n <Host role=\"search\">\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 => void 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 role=\"searchbox\"\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={() => void this.handleSearchInput()}\n onKeyDown={e => this.handleKeyDown(e)}\n />\n <label htmlFor=\"searchBox\">{translations.flyoutSearchBoxFloatingLabel}</label>\n <button\n onClick={() => this.handleClearSearchBox()}\n class=\"clear-search-button\"\n type=\"reset\"\n id=\"clearButton\"\n ref={el => (this.clearButton = el)}\n >\n <span class=\"visually-hidden\">{translate('Delete search term')}</span>\n <SvgIcon name=\"pi-close\" />\n </button>\n <button onClick={() => void this.startSearch()} class=\"start-search-button\">\n <span class=\"visually-hidden\">{translations.searchSubmit}</span>\n <SvgIcon name=\"pi-search\" />\n </button>\n </div>\n {showPortalRecommendations && (\n <h2 id=\"post-internet-header-search-recommendations-title\" class=\"bold\">\n {search.searchRecommendations.title}\n </h2>\n )}\n <ul\n class=\"suggestions no-list\"\n onMouseLeave={() => this.handleMouseLeaveSuggestions()}\n aria-labelledby={\n showPortalRecommendations\n ? 'post-internet-header-search-recommendations-title'\n : undefined\n }\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 onClick={() => this.trackRecommendationClick(recommendation)}\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 {isParcelTrackingNr && (\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}:&nbsp;</span>\n <span>\n {[\n this.parcelSuggestion?.sending?.product,\n ' ' + this.parcelSuggestion?.sending?.recipient.zipcode,\n ' ' + this.parcelSuggestion?.sending?.recipient.city,\n ', ' + this.parcelSuggestion?.sending?.state,\n ]\n .filter(s => s !== '' && s !== ' ')\n .join('')}\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"],"version":3}
@@ -4,6 +4,7 @@ import { t as translate } from './language.service.js';
4
4
  import { S as SvgIcon } from './svg-icon.component.js';
5
5
 
6
6
  const postSkiplinksCss = ":host{display:block}.skiplinks a{position:absolute;top:.5rem;left:.5rem;clip:rect(0 0 0 0);width:1px;overflow:hidden;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem;background:#fff}.skiplinks a:focus-visible{position:absolute;clip:unset;width:auto}";
7
+ const PostSkiplinksStyle0 = postSkiplinksCss;
7
8
 
8
9
  const PostSkiplinks = /*@__PURE__*/ proxyCustomElement(class PostSkiplinks extends HTMLElement {
9
10
  constructor() {
@@ -43,7 +44,7 @@ const PostSkiplinks = /*@__PURE__*/ proxyCustomElement(class PostSkiplinks exten
43
44
  return (h(Host, null, h("div", { class: "skiplinks" }, h("ul", { class: "no-list", "aria-label": translate('Skip Links') }, h("li", null, h("a", { class: "nav-link", href: config.logo.logoLink }, h("span", null, config.logo.logoLinkTitle), h(SvgIcon, { name: "pi-pointy-arrow-right" }))), h("li", null, h("a", { class: "nav-link", href: "#post-internet-header-main-navigation", onClick: () => this.focusMain() }, h("span", null, config.translations.navMainAriaLabel), h(SvgIcon, { name: "pi-pointy-arrow-right" }))), mainId ? (h("li", null, h("a", { class: "nav-link", href: `#${mainId}` }, h("span", null, translate('Go to main content')), h(SvgIcon, { name: "pi-pointy-arrow-right" })))) : null, state.search ? (h("li", null, h("a", { class: "nav-link", href: "#post-internet-header-search-button", onClick: () => this.focusSearch() }, h("span", null, translate('Go to search')), h(SvgIcon, { name: "pi-pointy-arrow-right" })))) : null, state.login ? (h("li", null, h("a", { class: "nav-link", href: "#post-klp-login-widget", onClick: () => this.focusLogin() }, h("span", null, translate('Go to login')), h(SvgIcon, { name: "pi-pointy-arrow-right" })))) : null))));
44
45
  }
45
46
  get host() { return this; }
46
- static get style() { return postSkiplinksCss; }
47
+ static get style() { return PostSkiplinksStyle0; }
47
48
  }, [0, "post-skiplinks"]);
48
49
  function defineCustomElement() {
49
50
  if (typeof customElements === "undefined") {
@@ -1 +1 @@
1
- {"file":"post-skiplinks2.js","mappings":";;;;;AAAA,MAAM,gBAAgB,GAAG,mSAAmS;;MCW/S,aAAa;;;;;IAGhB,SAAS;;QACf,OAAO,MAAA,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,0CAAE,YAAY,CAAC,IAAI,CAAC,CAAC;KAC/D;IAEO,QAAQ,CAAC,OAAe;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO;SACR;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAmB,OAAO,CAAC,CAAC;QACpE,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,QAAQ,EAAE,CAAC;SACtB;KACF;IAEO,SAAS;QACf,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;KACvC;IAEO,WAAW;QACjB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;KAC9B;IAEO,UAAU;QAChB,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;KACxC;IAED,MAAM;;QACJ,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO;SACR;QAED,QACE,EAAC,IAAI,QACH,WAAK,KAAK,EAAC,WAAW,IACpB,UAAI,KAAK,EAAC,SAAS,gBAAa,SAAS,CAAC,YAAY,CAAC,IACrD,cACE,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAC5C,gBAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAQ,EACxC,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,EACL,cACE,SACE,KAAK,EAAC,UAAU,EAChB,IAAI,EAAC,uCAAuC,EAC5C,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE,IAE/B,gBAAO,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAQ,EACnD,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,EACJ,MAAM,IACL,cACE,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,MAAM,EAAE,IACpC,gBAAO,SAAS,CAAC,oBAAoB,CAAC,CAAQ,EAC9C,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,IACH,IAAI,EACP,KAAK,CAAC,MAAM,IACX,cACE,SACE,KAAK,EAAC,UAAU,EAChB,IAAI,EAAC,qCAAqC,EAC1C,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEjC,gBAAO,SAAS,CAAC,cAAc,CAAC,CAAQ,EACxC,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,IACH,IAAI,EACP,KAAK,CAAC,KAAK,IACV,cACE,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,wBAAwB,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,IAChF,gBAAO,SAAS,CAAC,aAAa,CAAC,CAAQ,EACvC,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,IACH,IAAI,CACL,CACD,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/post-skiplinks/post-skiplinks.scss?tag=post-skiplinks","src/components/post-skiplinks/post-skiplinks.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.skiplinks {\n a {\n position: absolute;\n top: 0.5rem;\n left: 0.5rem;\n clip: rect(0 0 0 0);\n width: 1px;\n overflow: hidden;\n display: flex;\n align-items: center;\n padding: 0.25rem;\n background: white;\n\n &:focus-visible {\n position: absolute;\n clip: unset;\n width: auto;\n }\n }\n}\n","import { Component, Element, h, Host } from '@stencil/core';\nimport { state } from '../../data/store';\nimport { FocusableElement } from '../../models/header.model';\nimport { translate } from '../../services/language.service';\nimport { SvgIcon } from '../../utils/svg-icon.component';\n\n@Component({\n tag: 'post-skiplinks',\n styleUrl: 'post-skiplinks.scss',\n shadow: false,\n})\nexport class PostSkiplinks {\n @Element() host: HTMLPostSkiplinksElement;\n\n private getMainId() {\n return document.querySelector('main[id]')?.getAttribute('id');\n }\n\n private setFocus(tagname: string) {\n const rootHost = this.host.closest('.post-internet-header');\n if (!rootHost) {\n return;\n }\n\n const focusable = rootHost.querySelector<FocusableElement>(tagname);\n if (focusable) {\n focusable.setFocus();\n }\n }\n\n private focusMain() {\n this.setFocus('post-main-navigation');\n }\n\n private focusSearch() {\n this.setFocus('post-search');\n }\n\n private focusLogin() {\n this.setFocus('post-klp-login-widget');\n }\n\n render() {\n const config = state.localizedConfig?.header;\n const mainId = this.getMainId();\n\n if (config === undefined) {\n return;\n }\n\n return (\n <Host>\n <div class=\"skiplinks\">\n <ul class=\"no-list\" aria-label={translate('Skip Links')}>\n <li>\n <a class=\"nav-link\" href={config.logo.logoLink}>\n <span>{config.logo.logoLinkTitle}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n <li>\n <a\n class=\"nav-link\"\n href=\"#post-internet-header-main-navigation\"\n onClick={() => this.focusMain()}\n >\n <span>{config.translations.navMainAriaLabel}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n {mainId ? (\n <li>\n <a class=\"nav-link\" href={`#${mainId}`}>\n <span>{translate('Go to main content')}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n ) : null}\n {state.search ? (\n <li>\n <a\n class=\"nav-link\"\n href=\"#post-internet-header-search-button\"\n onClick={() => this.focusSearch()}\n >\n <span>{translate('Go to search')}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n ) : null}\n {state.login ? (\n <li>\n <a class=\"nav-link\" href=\"#post-klp-login-widget\" onClick={() => this.focusLogin()}>\n <span>{translate('Go to login')}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n ) : null}\n </ul>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"post-skiplinks2.js","mappings":";;;;;AAAA,MAAM,gBAAgB,GAAG,mSAAmS,CAAC;AAC7T,4BAAe,gBAAgB;;MCUlB,aAAa;;;;;IAGhB,SAAS;;QACf,OAAO,MAAA,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,0CAAE,YAAY,CAAC,IAAI,CAAC,CAAC;KAC/D;IAEO,QAAQ,CAAC,OAAe;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO;SACR;QAED,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAmB,OAAO,CAAC,CAAC;QACpE,IAAI,SAAS,EAAE;YACb,SAAS,CAAC,QAAQ,EAAE,CAAC;SACtB;KACF;IAEO,SAAS;QACf,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;KACvC;IAEO,WAAW;QACjB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;KAC9B;IAEO,UAAU;QAChB,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;KACxC;IAED,MAAM;;QACJ,MAAM,MAAM,GAAG,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,CAAC;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAEhC,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,OAAO;SACR;QAED,QACE,EAAC,IAAI,QACH,WAAK,KAAK,EAAC,WAAW,IACpB,UAAI,KAAK,EAAC,SAAS,gBAAa,SAAS,CAAC,YAAY,CAAC,IACrD,cACE,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,IAC5C,gBAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAQ,EACxC,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,EACL,cACE,SACE,KAAK,EAAC,UAAU,EAChB,IAAI,EAAC,uCAAuC,EAC5C,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE,IAE/B,gBAAO,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAQ,EACnD,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,EACJ,MAAM,IACL,cACE,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAE,IAAI,MAAM,EAAE,IACpC,gBAAO,SAAS,CAAC,oBAAoB,CAAC,CAAQ,EAC9C,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,IACH,IAAI,EACP,KAAK,CAAC,MAAM,IACX,cACE,SACE,KAAK,EAAC,UAAU,EAChB,IAAI,EAAC,qCAAqC,EAC1C,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE,IAEjC,gBAAO,SAAS,CAAC,cAAc,CAAC,CAAQ,EACxC,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,IACH,IAAI,EACP,KAAK,CAAC,KAAK,IACV,cACE,SAAG,KAAK,EAAC,UAAU,EAAC,IAAI,EAAC,wBAAwB,EAAC,OAAO,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,IAChF,gBAAO,SAAS,CAAC,aAAa,CAAC,CAAQ,EACvC,EAAC,OAAO,IAAC,IAAI,EAAC,uBAAuB,GAAG,CACtC,CACD,IACH,IAAI,CACL,CACD,CACD,EACP;KACH;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/post-skiplinks/post-skiplinks.scss?tag=post-skiplinks","src/components/post-skiplinks/post-skiplinks.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.skiplinks {\n a {\n position: absolute;\n top: 0.5rem;\n left: 0.5rem;\n clip: rect(0 0 0 0);\n width: 1px;\n overflow: hidden;\n display: flex;\n align-items: center;\n padding: 0.25rem;\n background: white;\n\n &:focus-visible {\n position: absolute;\n clip: unset;\n width: auto;\n }\n }\n}\n","import { Component, Element, h, Host } from '@stencil/core';\nimport { state } from '../../data/store';\nimport { FocusableElement } from '../../models/header.model';\nimport { translate } from '../../services/language.service';\nimport { SvgIcon } from '../../utils/svg-icon.component';\n\n@Component({\n tag: 'post-skiplinks',\n styleUrl: 'post-skiplinks.scss',\n shadow: false,\n})\nexport class PostSkiplinks {\n @Element() host: HTMLPostSkiplinksElement;\n\n private getMainId() {\n return document.querySelector('main[id]')?.getAttribute('id');\n }\n\n private setFocus(tagname: string) {\n const rootHost = this.host.closest('.post-internet-header');\n if (!rootHost) {\n return;\n }\n\n const focusable = rootHost.querySelector<FocusableElement>(tagname);\n if (focusable) {\n focusable.setFocus();\n }\n }\n\n private focusMain() {\n this.setFocus('post-main-navigation');\n }\n\n private focusSearch() {\n this.setFocus('post-search');\n }\n\n private focusLogin() {\n this.setFocus('post-klp-login-widget');\n }\n\n render() {\n const config = state.localizedConfig?.header;\n const mainId = this.getMainId();\n\n if (config === undefined) {\n return;\n }\n\n return (\n <Host>\n <div class=\"skiplinks\">\n <ul class=\"no-list\" aria-label={translate('Skip Links')}>\n <li>\n <a class=\"nav-link\" href={config.logo.logoLink}>\n <span>{config.logo.logoLinkTitle}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n <li>\n <a\n class=\"nav-link\"\n href=\"#post-internet-header-main-navigation\"\n onClick={() => this.focusMain()}\n >\n <span>{config.translations.navMainAriaLabel}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n {mainId ? (\n <li>\n <a class=\"nav-link\" href={`#${mainId}`}>\n <span>{translate('Go to main content')}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n ) : null}\n {state.search ? (\n <li>\n <a\n class=\"nav-link\"\n href=\"#post-internet-header-search-button\"\n onClick={() => this.focusSearch()}\n >\n <span>{translate('Go to search')}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n ) : null}\n {state.login ? (\n <li>\n <a class=\"nav-link\" href=\"#post-klp-login-widget\" onClick={() => this.focusLogin()}>\n <span>{translate('Go to login')}</span>\n <SvgIcon name=\"pi-pointy-arrow-right\" />\n </a>\n </li>\n ) : null}\n </ul>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1 +1 @@
1
- {"file":"store.js","mappings":"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","names":[],"sources":["../../node_modules/.pnpm/@stencil+store@2.0.12_@stencil+core@4.10.0/node_modules/@stencil/store/dist/index.mjs","src/data/store.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { Environment, ILocalizedConfig, ILocalizedCustomConfig } from '../models/general.model';\nimport { NavMainEntity } from '../models/header.model';\nimport { IAvailableLanguage } from '../models/language.model';\nimport { StickynessOptions } from '../components';\n\nexport interface HeaderState {\n localizedConfig: ILocalizedConfig | null;\n currentLanguage: string | null;\n projectId: string | null;\n environment: Environment;\n search: boolean;\n login: boolean;\n meta: boolean;\n languageSwitchOverrides?: IAvailableLanguage[];\n localizedCustomConfig?: ILocalizedCustomConfig;\n osFlyoutOverrides?: NavMainEntity;\n stickyness: StickynessOptions;\n}\n\nexport const { state, reset, dispose } = createStore<HeaderState>({\n projectId: null,\n currentLanguage: null,\n localizedConfig: null,\n environment: 'prod',\n search: true,\n login: true,\n meta: true,\n stickyness: 'minimal',\n});\n"],"version":3}
1
+ {"file":"store.js","mappings":"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","names":[],"sources":["../../node_modules/.pnpm/@stencil+store@2.0.13_@stencil+core@4.12.0/node_modules/@stencil/store/dist/index.mjs","src/data/store.ts"],"sourcesContent":["import { getRenderingRef, forceUpdate } from '@stencil/core';\n\nconst appendToMap = (map, propName, value) => {\n const items = map.get(propName);\n if (!items) {\n map.set(propName, [value]);\n }\n else if (!items.includes(value)) {\n items.push(value);\n }\n};\nconst debounce = (fn, ms) => {\n let timeoutId;\n return (...args) => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n timeoutId = setTimeout(() => {\n timeoutId = 0;\n fn(...args);\n }, ms);\n };\n};\n\n/**\n * Check if a possible element isConnected.\n * The property might not be there, so we check for it.\n *\n * We want it to return true if isConnected is not a property,\n * otherwise we would remove these elements and would not update.\n *\n * Better leak in Edge than to be useless.\n */\nconst isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;\nconst cleanupElements = debounce((map) => {\n for (let key of map.keys()) {\n map.set(key, map.get(key).filter(isConnected));\n }\n}, 2000);\nconst stencilSubscription = () => {\n if (typeof getRenderingRef !== 'function') {\n // If we are not in a stencil project, we do nothing.\n // This function is not really exported by @stencil/core.\n return {};\n }\n const elmsToUpdate = new Map();\n return {\n dispose: () => elmsToUpdate.clear(),\n get: (propName) => {\n const elm = getRenderingRef();\n if (elm) {\n appendToMap(elmsToUpdate, propName, elm);\n }\n },\n set: (propName) => {\n const elements = elmsToUpdate.get(propName);\n if (elements) {\n elmsToUpdate.set(propName, elements.filter(forceUpdate));\n }\n cleanupElements(elmsToUpdate);\n },\n reset: () => {\n elmsToUpdate.forEach((elms) => elms.forEach(forceUpdate));\n cleanupElements(elmsToUpdate);\n },\n };\n};\n\nconst unwrap = (val) => (typeof val === 'function' ? val() : val);\nconst createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n const unwrappedState = unwrap(defaultState);\n let states = new Map(Object.entries(unwrappedState !== null && unwrappedState !== void 0 ? unwrappedState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n var _a;\n // When resetting the state, the default state may be a function - unwrap it to invoke it.\n // otherwise, the state won't be properly reset\n states = new Map(Object.entries((_a = unwrap(defaultState)) !== null && _a !== void 0 ? _a : {}));\n handlers.reset.forEach((cb) => cb());\n };\n const dispose = () => {\n // Call first dispose as resetting the state would\n // cause less updates ;)\n handlers.dispose.forEach((cb) => cb());\n reset();\n };\n const get = (propName) => {\n handlers.get.forEach((cb) => cb(propName));\n return states.get(propName);\n };\n const set = (propName, value) => {\n const oldValue = states.get(propName);\n if (shouldUpdate(value, oldValue, propName)) {\n states.set(propName, value);\n handlers.set.forEach((cb) => cb(propName, value, oldValue));\n }\n };\n const state = (typeof Proxy === 'undefined'\n ? {}\n : new Proxy(unwrappedState, {\n get(_, propName) {\n return get(propName);\n },\n ownKeys(_) {\n return Array.from(states.keys());\n },\n getOwnPropertyDescriptor() {\n return {\n enumerable: true,\n configurable: true,\n };\n },\n has(_, propName) {\n return states.has(propName);\n },\n set(_, propName, value) {\n set(propName, value);\n return true;\n },\n }));\n const on = (eventName, callback) => {\n handlers[eventName].push(callback);\n return () => {\n removeFromArray(handlers[eventName], callback);\n };\n };\n const onChange = (propName, cb) => {\n const unSet = on('set', (key, newValue) => {\n if (key === propName) {\n cb(newValue);\n }\n });\n // We need to unwrap the defaultState because it might be a function.\n // Otherwise we might not be sending the right reset value.\n const unReset = on('reset', () => cb(unwrap(defaultState)[propName]));\n return () => {\n unSet();\n unReset();\n };\n };\n const use = (...subscriptions) => {\n const unsubs = subscriptions.reduce((unsubs, subscription) => {\n if (subscription.set) {\n unsubs.push(on('set', subscription.set));\n }\n if (subscription.get) {\n unsubs.push(on('get', subscription.get));\n }\n if (subscription.reset) {\n unsubs.push(on('reset', subscription.reset));\n }\n if (subscription.dispose) {\n unsubs.push(on('dispose', subscription.dispose));\n }\n return unsubs;\n }, []);\n return () => unsubs.forEach((unsub) => unsub());\n };\n const forceUpdate = (key) => {\n const oldValue = states.get(key);\n handlers.set.forEach((cb) => cb(key, oldValue, oldValue));\n };\n return {\n state,\n get,\n set,\n on,\n onChange,\n use,\n dispose,\n reset,\n forceUpdate,\n };\n};\nconst removeFromArray = (array, item) => {\n const index = array.indexOf(item);\n if (index >= 0) {\n array[index] = array[array.length - 1];\n array.length--;\n }\n};\n\nconst createStore = (defaultState, shouldUpdate) => {\n const map = createObservableMap(defaultState, shouldUpdate);\n map.use(stencilSubscription());\n return map;\n};\n\nexport { createObservableMap, createStore };\n","import { createStore } from '@stencil/store';\nimport { Environment, ILocalizedConfig, ILocalizedCustomConfig } from '../models/general.model';\nimport { NavMainEntity } from '../models/header.model';\nimport { IAvailableLanguage } from '../models/language.model';\nimport { StickynessOptions } from '../components';\n\nexport interface HeaderState {\n localizedConfig: ILocalizedConfig | null;\n currentLanguage: string | null;\n projectId: string | null;\n environment: Environment;\n search: boolean;\n login: boolean;\n meta: boolean;\n languageSwitchOverrides?: IAvailableLanguage[];\n localizedCustomConfig?: ILocalizedCustomConfig;\n osFlyoutOverrides?: NavMainEntity;\n stickyness: StickynessOptions;\n}\n\nexport const { state, reset, dispose } = createStore<HeaderState>({\n projectId: null,\n currentLanguage: null,\n localizedConfig: null,\n environment: 'prod',\n search: true,\n login: true,\n meta: true,\n stickyness: 'minimal',\n});\n"],"version":3}
@@ -3,7 +3,6 @@ import { d as debounce } from './index2.js';
3
3
  import { c as clearAllBodyScrollLocks, d as disableBodyScroll, e as enableBodyScroll } from './bodyScrollLock.esm.js';
4
4
  import { S as SvgIcon } from './svg-icon.component.js';
5
5
  import { s as state } from './store.js';
6
- import { c as createCommonjsModule } from './_commonjsHelpers.js';
7
6
  import { S as SvgSprite } from './svg-sprite.component.js';
8
7
  import { t as translate } from './language.service.js';
9
8
  import { p as prefersReducedMotion } from './utils.js';
@@ -600,7 +599,19 @@ const OverlayComponent = (props) => (h("div", { class: "overlay", onClick: () =>
600
599
  h("div", { class: "loader-wrapper" },
601
600
  h("div", { class: "loader" })))));
602
601
 
603
- var iframeResizer$1 = createCommonjsModule(function (module) {
602
+ var iframeResizer$1 = {exports: {}};
603
+
604
+ /*
605
+ * File: iframeResizer.js
606
+ * Desc: Force iframes to size to content.
607
+ * Requires: iframeResizer.contentWindow.js to be loaded into the target frame.
608
+ * Doc: https://github.com/davidjbradshaw/iframe-resizer
609
+ * Author: David J. Bradshaw - dave@bradshaw.net
610
+ * Contributor: Jure Mav - jure.mav@gmail.com
611
+ * Contributor: Reed Dadoune - reed@dadoune.com
612
+ */
613
+
614
+ (function (module) {
604
615
  (function (undefined$1) {
605
616
  if (typeof window === 'undefined') return // don't run for server side render
606
617
 
@@ -2055,9 +2066,21 @@ var iframeResizer$1 = createCommonjsModule(function (module) {
2055
2066
  }
2056
2067
  window.iFrameResize = window.iFrameResize || factory();
2057
2068
  })();
2058
- });
2069
+ }(iframeResizer$1));
2070
+
2071
+ var iframeResizer_contentWindow = {exports: {}};
2059
2072
 
2060
- var iframeResizer_contentWindow = createCommonjsModule(function (module) {
2073
+ /*
2074
+ * File: iframeResizer.contentWindow.js
2075
+ * Desc: Include this file in any page being loaded into an iframe
2076
+ * to force the iframe to resize to the content size.
2077
+ * Requires: iframeResizer.js on host page.
2078
+ * Doc: https://github.com/davidjbradshaw/iframe-resizer
2079
+ * Author: David J. Bradshaw - dave@bradshaw.net
2080
+ *
2081
+ */
2082
+
2083
+ (function (module) {
2061
2084
  (function (undefined$1) {
2062
2085
  if (typeof window === 'undefined') return // don't run for server side render
2063
2086
 
@@ -3351,12 +3374,14 @@ var iframeResizer_contentWindow = createCommonjsModule(function (module) {
3351
3374
 
3352
3375
 
3353
3376
  })();
3354
- });
3377
+ }(iframeResizer_contentWindow));
3378
+
3379
+ const iframeResize = iframeResizer$1.exports;
3355
3380
 
3356
3381
  var iframeResizer = {
3357
- iframeResize: iframeResizer$1,
3358
- iframeResizer: iframeResizer$1, // Backwards compatibility
3359
- contentWindow: iframeResizer_contentWindow
3382
+ iframeResize: iframeResize,
3383
+ iframeResizer: iframeResize, // Backwards compatibility
3384
+ contentWindow: iframeResizer_contentWindow.exports
3360
3385
  };
3361
3386
 
3362
3387
  const MiddleLinks = (props) => {
@@ -3394,6 +3419,7 @@ const BreadcrumbList = (props) => {
3394
3419
  };
3395
3420
 
3396
3421
  const postInternetBreadcrumbsCss = ".btn-default,.btn-secondary{border:2px solid var(--post-gray-60)}.btn-default:focus,.btn-secondary:focus,.btn-default:not(:disabled):hover,.btn-secondary:not(:disabled):hover,.pretend-hover.btn-default,.pretend-hover.btn-secondary{border-color:var(--post-contrast-color)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-default,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-secondary{border-color:var(--post-contrast-color)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-default:focus,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-secondary:focus,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-default:not(:disabled):hover,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-secondary:not(:disabled):hover,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .pretend-hover.btn-default,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .pretend-hover.btn-secondary{border-color:var(--post-gray-40)}.btn-default:disabled,.btn-secondary:disabled{border-color:var(--post-gray-40);color:var(--post-gray-60)}.btn-default:focus,.btn-secondary:focus,.btn-link:focus,.btn-tertiary:focus,.btn-default:not(:disabled):hover,.btn-secondary:not(:disabled):hover,.btn-link:not(:disabled):hover,.btn-tertiary:not(:disabled):hover,.pretend-hover.btn-default,.pretend-hover.btn-secondary,.pretend-hover.btn-link,.pretend-hover.btn-tertiary{color:var(--post-contrast-color)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-default .pi,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-secondary .pi,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-link .pi,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-tertiary .pi{-webkit-filter:invert(1);filter:invert(1)}.btn{min-height:3rem;font-size:1rem;gap:.625rem;outline:none;outline-offset:2px;display:-ms-inline-flexbox;display:inline-flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;max-width:100%;overflow:hidden;-webkit-transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;transition:opacity 250ms,border-color 250ms,background-color 250ms,color 250ms;border-width:2px;border-style:solid;border-radius:4px;background-color:rgba(0,0,0,0);-webkit-box-shadow:none;box-shadow:none;color:var(--post-gray-80);font-family:inherit;font-weight:400;text-decoration:none !important;white-space:nowrap}.btn:where(:not(.btn-link,.btn-tertiary)){padding:0 1rem}.btn>.pi,.btn>post-icon{width:1.25rem;height:1.25rem}.btn:is(:focus-visible,:focus-within,.pretend-focus){outline:2px solid var(--post-contrast-color)}.btn-primary{border-color:rgba(0,0,0,0);background-color:var(--post-gray-80);color:var(--post-contrast-color-inverted)}.btn-primary:focus,.btn-primary:not(:disabled):hover,.btn-primary.pretend-hover{background-color:var(--post-contrast-color);color:var(--post-contrast-color-inverted)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-primary{background-color:var(--post-contrast-color);color:var(--post-gray-10)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-primary:focus,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-primary:not(:disabled):hover,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-primary.pretend-hover{background-color:var(--post-gray-80)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-primary:disabled{color:var(--post-gray-80)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-coral,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright,.bg-error-red) .btn-primary .pi{-webkit-filter:invert(0);filter:invert(0)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-primary{border-color:var(--post-contrast-color);background-color:ButtonFace}.btn-primary:not(:disabled,.disabled):hover,.btn-primary:not(:disabled,.disabled):focus-visible{border-color:highlight}.btn-primary .pi{-webkit-filter:invert(1) !important;filter:invert(1) !important}}.btn-primary:disabled{background-color:var(--post-gray-40)}.btn-primary .pi{-webkit-filter:invert(1);filter:invert(1);forced-color-adjust:none}.btn-link,.btn-tertiary{border:0;padding-inline:.25rem}.btn-link:disabled,.btn-tertiary:disabled{color:var(--post-gray-60)}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.btn-link,.btn-tertiary{color:linktext;text-decoration:underline !important}}.btn-icon{min-width:3rem;padding-right:.75rem;padding-left:.75rem}.btn-icon.btn-sm{min-width:2rem;padding-right:.375rem;padding-left:.375rem}.btn-icon.btn-rg{min-width:2.5rem;padding-right:.5625rem;padding-left:.5625rem}.btn-icon.btn-lg{min-width:3.5rem;padding-right:.9375rem;padding-left:.9375rem}.btn-animated:not(.btn-link,.btn-tertiary)::after{content:\"\";position:absolute;right:.5rem;width:.625em;height:.625em;-webkit-transform:rotateZ(315deg) translate(-2px, -2px);transform:rotateZ(315deg) translate(-2px, -2px);-webkit-transform-origin:center center;transform-origin:center center;-webkit-transition:opacity 250ms,-webkit-transform 250ms;transition:opacity 250ms,-webkit-transform 250ms;transition:opacity 250ms,transform 250ms;transition:opacity 250ms,transform 250ms,-webkit-transform 250ms;border-right:2px solid currentColor;border-bottom:2px solid currentColor;opacity:0}.btn-animated:not(.btn-link,.btn-tertiary).btn-sm::after{right:.25rem}.btn-animated:not(.btn-link,.btn-tertiary).btn-rg::after{right:.375rem}.btn-animated:not(.btn-link,.btn-tertiary).btn-lg::after{right:.625rem}.btn-animated:not(.btn-link,.btn-tertiary)>span{-webkit-transition:-webkit-transform 250ms;transition:-webkit-transform 250ms;transition:transform 250ms;transition:transform 250ms, -webkit-transform 250ms}@media (prefers-reduced-motion: no-preference){.btn-animated:not(.btn-link,.btn-tertiary):focus>span,.btn-animated:not(.btn-link,.btn-tertiary):not(:disabled):hover>span,.btn-animated:not(.btn-link,.btn-tertiary).pretend-hover>span{-webkit-transform:translateX(-0.5rem);transform:translateX(-0.5rem)}.btn-animated:not(.btn-link,.btn-tertiary):focus.btn-sm>span,.btn-animated:not(.btn-link,.btn-tertiary):not(:disabled):hover.btn-sm>span,.btn-animated:not(.btn-link,.btn-tertiary).pretend-hover.btn-sm>span{-webkit-transform:translateX(-0.5rem);transform:translateX(-0.5rem)}.btn-animated:not(.btn-link,.btn-tertiary):focus.btn-rg>span,.btn-animated:not(.btn-link,.btn-tertiary):not(:disabled):hover.btn-rg>span,.btn-animated:not(.btn-link,.btn-tertiary).pretend-hover.btn-rg>span{-webkit-transform:translateX(-0.5rem);transform:translateX(-0.5rem)}.btn-animated:not(.btn-link,.btn-tertiary):focus.btn-lg>span,.btn-animated:not(.btn-link,.btn-tertiary):not(:disabled):hover.btn-lg>span,.btn-animated:not(.btn-link,.btn-tertiary).pretend-hover.btn-lg>span{-webkit-transform:translateX(-0.5rem);transform:translateX(-0.5rem)}.btn-animated:not(.btn-link,.btn-tertiary):focus::after,.btn-animated:not(.btn-link,.btn-tertiary):not(:disabled):hover::after,.btn-animated:not(.btn-link,.btn-tertiary).pretend-hover::after{-webkit-transform:rotateZ(315deg) translate(0, 0);transform:rotateZ(315deg) translate(0, 0);opacity:1}.btn-animated:not(.btn-link,.btn-tertiary)>span{-webkit-transform:translateX(0);transform:translateX(0)}}.btn-sm{min-height:2rem;font-size:.75rem;gap:.375rem}.btn-sm:where(:not(.btn-link,.btn-tertiary)){padding:0 .75rem}.btn-sm>.pi,.btn-sm>post-icon{width:1rem;height:1rem}.btn-rg{min-height:2.5rem;font-size:.875rem;gap:.5rem}.btn-rg:where(:not(.btn-link,.btn-tertiary)){padding:0 .875rem}.btn-rg>.pi,.btn-rg>post-icon{width:1.125rem;height:1.125rem}.btn-lg{min-height:3.5rem;font-size:1.125rem;gap:.75rem}.btn-lg:where(:not(.btn-link,.btn-tertiary)){padding:0 1.125rem}.btn-lg>.pi,.btn-lg>post-icon{width:1.375rem;height:1.375rem}.btn-nightblue{border-color:rgba(0,0,0,0);background-color:#004976;color:#fff}.btn-nightblue:focus,.btn-nightblue:not(:disabled):hover,.btn-nightblue.pretend-hover{background-color:#002943;color:#fff}.btn-nightblue-bright{border-color:rgba(0,0,0,0);background-color:#0076a8;color:#fff}.btn-nightblue-bright:focus,.btn-nightblue-bright:not(:disabled):hover,.btn-nightblue-bright.pretend-hover{background-color:#005275;color:#fff}.btn-petrol{border-color:rgba(0,0,0,0);background-color:#006d68;color:#fff}.btn-petrol:focus,.btn-petrol:not(:disabled):hover,.btn-petrol.pretend-hover{background-color:#003a37;color:#fff}.btn-petrol-bright{border-color:rgba(0,0,0,0);background-color:#00968f;color:#000}.btn-petrol-bright:focus,.btn-petrol-bright:not(:disabled):hover,.btn-petrol-bright.pretend-hover{background-color:#00635e;color:#fff}.btn-coral{border-color:rgba(0,0,0,0);background-color:#9e2a2f;color:#fff}.btn-coral:focus,.btn-coral:not(:disabled):hover,.btn-coral.pretend-hover{background-color:#761f23;color:#fff}.btn-coral-bright{border-color:rgba(0,0,0,0);background-color:#e03c31;color:#000}.btn-coral-bright:focus,.btn-coral-bright:not(:disabled):hover,.btn-coral-bright.pretend-hover{background-color:#c1271d;color:#fff}.btn-olive{border-color:rgba(0,0,0,0);background-color:#716135;color:#fff}.btn-olive:focus,.btn-olive:not(:disabled):hover,.btn-olive.pretend-hover{background-color:#4e4325;color:#fff}.btn-olive-bright{border-color:rgba(0,0,0,0);background-color:#aa9d2e;color:#000}.btn-olive-bright:focus,.btn-olive-bright:not(:disabled):hover,.btn-olive-bright.pretend-hover{background-color:#827823;color:#000}.btn-purple{border-color:rgba(0,0,0,0);background-color:#80276c;color:#fff}.btn-purple:focus,.btn-purple:not(:disabled):hover,.btn-purple.pretend-hover{background-color:#591b4b;color:#fff}.btn-purple-bright{border-color:rgba(0,0,0,0);background-color:#c5299b;color:#fff}.btn-purple-bright:focus,.btn-purple-bright:not(:disabled):hover,.btn-purple-bright.pretend-hover{background-color:#9b207a;color:#fff}.btn-aubergine{border-color:rgba(0,0,0,0);background-color:#523178;color:#fff}.btn-aubergine:focus,.btn-aubergine:not(:disabled):hover,.btn-aubergine.pretend-hover{background-color:#392254;color:#fff}.btn-aubergine-bright{border-color:rgba(0,0,0,0);background-color:#7566a0;color:#fff}.btn-aubergine-bright:focus,.btn-aubergine-bright:not(:disabled):hover,.btn-aubergine-bright.pretend-hover{background-color:#5e5182;color:#fff}.btn-info{border-color:rgba(0,0,0,0);background-color:#cce4ee;color:#000}.btn-info:focus,.btn-info:not(:disabled):hover,.btn-info.pretend-hover{background-color:#a6d0e1;color:#000}.btn-success{border-color:rgba(0,0,0,0);background-color:#2c911c;color:#fff}.btn-success:focus,.btn-success:not(:disabled):hover,.btn-success.pretend-hover{background-color:#1f6614;color:#fff}.btn-warning{border-color:rgba(0,0,0,0);background-color:#f49e00;color:#000}.btn-warning:focus,.btn-warning:not(:disabled):hover,.btn-warning.pretend-hover{background-color:#c17d00;color:#000}.btn-danger{border-color:rgba(0,0,0,0);background-color:#a51728;color:#fff}.btn-danger:focus,.btn-danger:not(:disabled):hover,.btn-danger.pretend-hover{background-color:#78111d;color:#fff}/*!\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 */:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:400px;--bs-breakpoint-rg:600px;--bs-breakpoint-md:780px;--bs-breakpoint-lg:1024px;--bs-breakpoint-xl:1280px;--bs-breakpoint-xxl:1441px}.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)*.5);padding-left:calc(var(--bs-gutter-x)*.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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-xxl,.container-xl{--bs-gutter-x:30px;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media (min-width: 1280px){.container-xl,.container-lg,.container-md,.container-rg,.container-sm,.container{max-width:1280px}}@media (min-width: 1441px){.container-xxl,.container-xl,.container-lg,.container-md,.container-rg,.container-sm,.container{max-width:1440px}}.container{padding-inline:var(--post-container-padding-x)}.container-fluid{padding-inline:var(--post-container-fluid-padding-x)}.container{--post-container-padding-x:12px}.container-fluid{--post-container-fluid-padding-x:12px}.row{--bs-gutter-x:12px}@media (min-width: 400px){.container{--post-container-padding-x:16px}}@media (min-width: 400px){.container-fluid{--post-container-fluid-padding-x:16px}}@media (min-width: 400px){.row{--bs-gutter-x:16px}}@media (min-width: 780px){.container{--post-container-padding-x:32px}}@media (min-width: 780px){.container-fluid{--post-container-fluid-padding-x:32px}}@media (min-width: 1280px){.container{--post-container-padding-x:40px}}@media (min-width: 1441px){.container{--post-container-padding-x:120px}}.g-0,.gx-0{--bs-gutter-x:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}@media (min-width: 400px){.g-sm-0,.gx-sm-0{--bs-gutter-x:0}}@media (min-width: 400px){.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}}@media (min-width: 400px){.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}}@media (min-width: 400px){.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}}@media (min-width: 400px){.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}}@media (min-width: 400px){.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}}@media (min-width: 600px){.g-rg-0,.gx-rg-0{--bs-gutter-x:0}}@media (min-width: 600px){.g-rg-1,.gx-rg-1{--bs-gutter-x:0.25rem}}@media (min-width: 600px){.g-rg-2,.gx-rg-2{--bs-gutter-x:0.5rem}}@media (min-width: 600px){.g-rg-3,.gx-rg-3{--bs-gutter-x:1rem}}@media (min-width: 600px){.g-rg-4,.gx-rg-4{--bs-gutter-x:1.5rem}}@media (min-width: 600px){.g-rg-5,.gx-rg-5{--bs-gutter-x:3rem}}@media (min-width: 780px){.g-md-0,.gx-md-0{--bs-gutter-x:0}}@media (min-width: 780px){.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}}@media (min-width: 780px){.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}}@media (min-width: 780px){.g-md-3,.gx-md-3{--bs-gutter-x:1rem}}@media (min-width: 780px){.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}}@media (min-width: 780px){.g-md-5,.gx-md-5{--bs-gutter-x:3rem}}@media (min-width: 1024px){.g-lg-0,.gx-lg-0{--bs-gutter-x:0}}@media (min-width: 1024px){.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}}@media (min-width: 1024px){.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}}@media (min-width: 1024px){.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}}@media (min-width: 1024px){.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}}@media (min-width: 1024px){.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}}@media (min-width: 1280px){.g-xl-0,.gx-xl-0{--bs-gutter-x:0}}@media (min-width: 1280px){.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}}@media (min-width: 1280px){.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}}@media (min-width: 1280px){.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}}@media (min-width: 1280px){.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}}@media (min-width: 1280px){.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}}@media (min-width: 1441px){.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}}@media (min-width: 1441px){.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}}@media (min-width: 1441px){.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}}@media (min-width: 1441px){.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}}@media (min-width: 1441px){.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}}@media (min-width: 1441px){.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}}.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-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-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)and (max-width: 779.98px){.container-fluid-rg{padding-right:1rem;padding-left:1rem}}@media (min-width: 780px){.container-reset{margin-right:-32px;margin-left:-32px}}@media (min-width: 780px){.container-reset-left{margin-left:-32px}}@media (min-width: 780px){.container-reset-right{margin-right:-32px}}@media (min-width: 780px)and (max-width: 1023.98px){.container-fluid-md{padding-right:1rem;padding-left:1rem}}@media (min-width: 1024px)and (max-width: 1279.98px){.container-fluid-lg{padding-right:1rem;padding-left:1rem}}@media (min-width: 1280px){.container-reset{margin-right:-40px;margin-left:-40px}}@media (min-width: 1280px){.container-reset-left{margin-left:-40px}}@media (min-width: 1280px){.container-reset-right{margin-right:-40px}}@media (min-width: 1280px)and (max-width: 1440.98px){.container-fluid-xl{padding-right:1rem;padding-left:1rem}}@media (min-width: 1441px){.container-reset{margin-right:-120px;margin-left:-120px}}@media (min-width: 1441px){.container-reset-left{margin-left:-120px}}@media (min-width: 1441px){.container-reset-right{margin-right:-120px}}@media (min-width: 1441px){.container-fluid-xxl{padding-right:1rem;padding-left:1rem}}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg:hsl(0, 0%, 80%);--bs-progress-border-radius:4px;--bs-progress-box-shadow:inset 0 0.1rem 0.1rem rgba(0, 0, 0, 0.1);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:hsl(0, 0%, 20%);--bs-progress-bar-transition:width 0.6s ease;display:-ms-flexbox;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);-webkit-transition:var(--bs-progress-bar-transition);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion: reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{-webkit-animation:1s linear infinite progress-bar-stripes;animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion: reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-bg{position:absolute;z-index:990;top:0;left:0;width:100%;height:100%}.loading-modal{display:-ms-inline-flexbox;display:inline-flex;position:absolute;z-index:990;top:0;right:0;bottom:0;left:0}.loader{width:3.5rem;height:3.5rem;-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite;border:6px solid #fc0;border-radius:50%;border-right-color:rgba(0,0,0,0);border-bottom-color:#e6e6e6}.loader.loader-sm{width:2rem;height:2rem;border-width:.25rem}.loader.loader-xs{width:.75rem;height:.75rem;border-width:2px}@media (forced-colors: active),(-ms-high-contrast: active),(-ms-high-contrast: white-on-black){.loader{border-color:Highlight;border-bottom-color:CanvasText;border-right-color:Canvas}@supports (forced-color-adjust: none){.loader{forced-color-adjust:none;border-right-color:rgba(0,0,0,0)}}}@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:700;font-style:italic;src:url(\"https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-BdIt.woff2\") format(\"woff2\"),url(\"https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-BdIt.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:400;font-style:italic;src:url(\"https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-It.woff2\") format(\"woff2\"),url(\"https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-It.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\")}@font-face{font-display:swap;font-family:\"Frutiger Neue For Post\";font-weight:300;font-style:italic;src:url(\"https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-LtIt.woff2\") format(\"woff2\"),url(\"https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-LtIt.woff\") format(\"woff\")}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}.btn-blank{background-color:rgba(0,0,0,0);border:none;border-radius:0;padding:0}.nav-link{outline:none;outline-offset:2px;text-decoration:none;color:rgba(0,0,0,.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:rgba(0,0,0,0);-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:.5rem}.nav-link:is(:focus-visible,:focus-within,.pretend-focus){outline:2px solid var(--post-contrast-color)}.nav-link:hover,.nav-link:focus{color:#000}.nav-link:is(:focus-visible,:focus-within,.pretend-focus){z-index:1;position:relative}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:\"Frutiger Neue For Post\",system-ui,sans-serif}button{font:inherit;padding:0}a,button{border-radius:4px;outline:none;outline-offset:2px}a:is(:focus-visible,:focus-within,.pretend-focus),button:is(:focus-visible,:focus-within,.pretend-focus){outline:2px solid var(--post-contrast-color);border-radius:4px}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:#fff}}.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}}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{display:block;position:relative}.breadcrumbs{font-size:1rem;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;gap:1rem;min-height:3rem}@media (max-width: 599.98px){.breadcrumbs{font-size:.875rem}}.breadcrumbs-nav{white-space:nowrap;-ms-flex-positive:1;flex-grow:1;-ms-flex-negative:1;flex-shrink:1;min-width:0}.breadcrumbs-list,.nav-link{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.breadcrumbs-list li{display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0}.breadcrumbs-list li:last-child{-ms-flex-negative:2;flex-shrink:2;min-width:0;overflow:hidden;text-overflow:ellipsis;padding:4px}.breadcrumbs-list svg{margin-left:0 !important;width:1.5em;height:1.5em;color:rgba(0,0,0,.6)}.breadcrumb-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;gap:1rem;-ms-flex-negative:0;flex-shrink:0}.breadcrumb-buttons .btn{cursor:pointer;gap:.5rem;font-size:inherit}.breadcrumb-buttons .btn.btn-secondary>svg{width:1.5rem;height:1.5rem;margin:0}@media (min-width: 1024px){.breadcrumb-buttons .btn span{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible}}.nav-link{gap:0;color:rgba(0,0,0,.6);font-weight:400}.middle-dropdown-container{position:relative;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.middle-dropdown{position:absolute;top:100%;left:0;background:#fff;border:1px solid #e6e6e6;padding:.5rem 0;z-index:1}.middle-dropdown .nav-link{padding:.5rem 1rem;-webkit-transition:color 200ms;transition:color 200ms}.middle-dropdown .nav-link:hover{background-color:#e6e6e6}.middle-dropdown-button{cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:.25rem;width:1.5em;height:1.5em;min-height:0;font-size:inherit;color:inherit}.middle-dropdown-button span{margin:0}.middle-dropdown-button svg{margin:0;-ms-flex-negative:0;flex-shrink:0;width:1.4em;height:1.4em}.overlay{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.6);z-index:calc(var(--header-z-index, 10) + 1);opacity:0;visibility:hidden;-webkit-transition:opacity 500ms,visibility 0s 500ms;transition:opacity 500ms,visibility 0s 500ms}.overlay.open{visibility:visible;opacity:1;-webkit-transition:opacity 500ms,visibility 0s 0s;transition:opacity 500ms,visibility 0s 0s}.overlay-container{position:relative;background:#fff;-webkit-box-shadow:0 0 40px rgba(0,0,0,.6);box-shadow:0 0 40px rgba(0,0,0,.6);visibility:hidden;-webkit-transform:translateY(3rem);transform:translateY(3rem);opacity:0;-webkit-transition:opacity 500ms,-webkit-transform 500ms;transition:opacity 500ms,-webkit-transform 500ms;transition:transform 500ms,opacity 500ms;transition:transform 500ms,opacity 500ms,-webkit-transform 500ms}iframe{display:block;width:1px;min-width:100%;overflow:auto;max-height:80vh}.overlay-close{position:absolute !important;top:1rem;right:1rem;cursor:pointer;padding:.5rem;color:rgba(0,0,0,.8)}.overlay-close:hover,.overlay-close:focus{color:#000}.overlay-close.phone{color:#fff}.overlay-close.phone:hover,.overlay-close.phone:focus{color:rgba(255,255,255,.8)}@media (min-width: 600px){.overlay-close span{position:static;width:auto;height:auto;margin:auto;overflow:visible;clip:auto;visibility:visible}}.loader-wrapper{position:absolute;display:grid;place-items:center;width:100%;height:100%;top:0;left:0}.loaded~.loader-wrapper{display:none}.hidden-control-breadcrumbs{position:absolute;top:100%;width:0;overflow:hidden;display:-ms-flexbox;display:flex;pointer-events:none}.hidden-control-breadcrumbs .breadcrumbs-nav{-ms-flex-negative:0;flex-shrink:0}.hidden-control-breadcrumbs .breadcrumbs-list li{-ms-flex-negative:0;flex-shrink:0}";
3422
+ const SwisspostInternetBreadcrumbsStyle0 = postInternetBreadcrumbsCss;
3397
3423
 
3398
3424
  const PostInternetBreadcrumbs = /*@__PURE__*/ proxyCustomElement(class PostInternetBreadcrumbs extends HTMLElement {
3399
3425
  constructor() {
@@ -3608,7 +3634,7 @@ const PostInternetBreadcrumbs = /*@__PURE__*/ proxyCustomElement(class PostInter
3608
3634
  static get watchers() { return {
3609
3635
  "customItems": ["handleCustomConfigChange"]
3610
3636
  }; }
3611
- static get style() { return postInternetBreadcrumbsCss; }
3637
+ static get style() { return SwisspostInternetBreadcrumbsStyle0; }
3612
3638
  }, [1, "swisspost-internet-breadcrumbs", {
3613
3639
  "customItems": [1, "custom-items"],
3614
3640
  "hideButtons": [4, "hide-buttons"],