@swisspost/internet-header 1.5.0-beta.2 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (447) hide show
  1. package/LICENSE +202 -202
  2. package/dist/cjs/{if.component-313f59b8.js → if.component-51d000af.js} +6 -6
  3. package/dist/cjs/if.component-51d000af.js.map +1 -0
  4. package/dist/cjs/{klp-widget.controller-84642428.js → klp-widget.controller-d8941c4e.js} +4811 -4811
  5. package/dist/cjs/{klp-widget.controller-84642428.js.map → klp-widget.controller-d8941c4e.js.map} +1 -1
  6. package/dist/cjs/{language.service-a80ae01d.js → language.service-7dbf739d.js} +141 -141
  7. package/dist/cjs/language.service-7dbf739d.js.map +1 -0
  8. package/dist/cjs/post-klp-login-widget.cjs.entry.js +33 -33
  9. package/dist/cjs/post-klp-login-widget.cjs.entry.js.map +1 -1
  10. package/dist/cjs/post-language-switch.cjs.entry.js +88 -88
  11. package/dist/cjs/post-language-switch.cjs.entry.js.map +1 -1
  12. package/dist/cjs/post-logo.cjs.entry.js +51 -51
  13. package/dist/cjs/post-logo.cjs.entry.js.map +1 -1
  14. package/dist/cjs/post-main-navigation.cjs.entry.js +227 -227
  15. package/dist/cjs/post-main-navigation.cjs.entry.js.map +1 -1
  16. package/dist/cjs/post-meta-navigation.cjs.entry.js +15 -15
  17. package/dist/cjs/post-meta-navigation.cjs.entry.js.map +1 -1
  18. package/dist/cjs/post-search.cjs.entry.js +556 -534
  19. package/dist/cjs/post-search.cjs.entry.js.map +1 -1
  20. package/dist/cjs/post-skiplinks.cjs.entry.js +41 -41
  21. package/dist/cjs/post-skiplinks.cjs.entry.js.map +1 -1
  22. package/dist/cjs/{store-47e14589.js → store-d0d514fc.js} +20 -13
  23. package/dist/cjs/store-d0d514fc.js.map +1 -0
  24. package/dist/cjs/{svg-icon.component-10fbda11.js → svg-icon.component-be93f876.js} +2 -2
  25. package/dist/cjs/svg-icon.component-be93f876.js.map +1 -0
  26. package/dist/cjs/{svg-sprite.component-c3b454b3.js → svg-sprite.component-1bd7a058.js} +40 -40
  27. package/dist/cjs/svg-sprite.component-1bd7a058.js.map +1 -0
  28. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +370 -392
  29. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js.map +1 -1
  30. package/dist/cjs/swisspost-internet-footer.cjs.entry.js +125 -125
  31. package/dist/cjs/swisspost-internet-footer.cjs.entry.js.map +1 -1
  32. package/dist/cjs/swisspost-internet-header.cjs.entry.js +608 -608
  33. package/dist/cjs/swisspost-internet-header.cjs.entry.js.map +1 -1
  34. package/dist/cjs/{ui.service-db4a8252.js → ui.service-e1ebb6d4.js} +28 -28
  35. package/dist/cjs/ui.service-e1ebb6d4.js.map +1 -0
  36. package/dist/cjs/{utils-b6014257.js → utils-60853c5d.js} +15 -15
  37. package/dist/cjs/utils-60853c5d.js.map +1 -0
  38. package/dist/collection/assets/config/test-configuration.json +4067 -4067
  39. package/dist/collection/assets/i18n/translations.js +38 -38
  40. package/dist/collection/assets/i18n/translations.js.map +1 -1
  41. package/dist/collection/assets/js/sockjs-client.js +5134 -5134
  42. package/dist/collection/components/post-internet-breadcrumbs/components/breadcrumb-list.component.js +11 -11
  43. package/dist/collection/components/post-internet-breadcrumbs/components/breadcrumb-list.component.js.map +1 -1
  44. package/dist/collection/components/post-internet-breadcrumbs/components/focus-trap.component.js +42 -42
  45. package/dist/collection/components/post-internet-breadcrumbs/components/focus-trap.component.js.map +1 -1
  46. package/dist/collection/components/post-internet-breadcrumbs/components/middle-dropdown.component.js +8 -8
  47. package/dist/collection/components/post-internet-breadcrumbs/components/middle-dropdown.component.js.map +1 -1
  48. package/dist/collection/components/post-internet-breadcrumbs/components/middle-links.component.js +6 -6
  49. package/dist/collection/components/post-internet-breadcrumbs/components/middle-links.component.js.map +1 -1
  50. package/dist/collection/components/post-internet-breadcrumbs/components/overlay.component.js +12 -12
  51. package/dist/collection/components/post-internet-breadcrumbs/components/overlay.component.js.map +1 -1
  52. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js +253 -253
  53. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js.map +1 -1
  54. package/dist/collection/components/post-internet-footer/components/post-footer-block-address.component.js +12 -12
  55. package/dist/collection/components/post-internet-footer/components/post-footer-block-address.component.js.map +1 -1
  56. package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js +24 -24
  57. package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js.map +1 -1
  58. package/dist/collection/components/post-internet-footer/components/post-footer-block-custom.component.js +6 -6
  59. package/dist/collection/components/post-internet-footer/components/post-footer-block-custom.component.js.map +1 -1
  60. package/dist/collection/components/post-internet-footer/components/post-footer-block-list.component.js +6 -6
  61. package/dist/collection/components/post-internet-footer/components/post-footer-block-list.component.js.map +1 -1
  62. package/dist/collection/components/post-internet-footer/components/post-footer-block-socials.component.js +5 -5
  63. package/dist/collection/components/post-internet-footer/components/post-footer-block-socials.component.js.map +1 -1
  64. package/dist/collection/components/post-internet-footer/post-internet-footer.js +86 -86
  65. package/dist/collection/components/post-internet-footer/post-internet-footer.js.map +1 -1
  66. package/dist/collection/components/post-internet-header/post-internet-header.js +676 -676
  67. package/dist/collection/components/post-internet-header/post-internet-header.js.map +1 -1
  68. package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js +14 -14
  69. package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js.map +1 -1
  70. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js +67 -67
  71. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js.map +1 -1
  72. package/dist/collection/components/post-language-switch/components/post-language-switch-list.js +9 -9
  73. package/dist/collection/components/post-language-switch/components/post-language-switch-list.js.map +1 -1
  74. package/dist/collection/components/post-language-switch/post-language-switch.js +186 -186
  75. package/dist/collection/components/post-language-switch/post-language-switch.js.map +1 -1
  76. package/dist/collection/components/post-logo/logo-sprite.component.js +4 -4
  77. package/dist/collection/components/post-logo/logo-sprite.component.js.map +1 -1
  78. package/dist/collection/components/post-logo/post-logo.js +60 -60
  79. package/dist/collection/components/post-logo/post-logo.js.map +1 -1
  80. package/dist/collection/components/post-main-navigation/components/level-one-action.component.js +13 -13
  81. package/dist/collection/components/post-main-navigation/components/level-one-action.component.js.map +1 -1
  82. package/dist/collection/components/post-main-navigation/post-main-navigation.css +1 -1
  83. package/dist/collection/components/post-main-navigation/post-main-navigation.js +347 -347
  84. package/dist/collection/components/post-main-navigation/post-main-navigation.js.map +1 -1
  85. package/dist/collection/components/post-meta-navigation/post-meta-navigation.js +67 -67
  86. package/dist/collection/components/post-meta-navigation/post-meta-navigation.js.map +1 -1
  87. package/dist/collection/components/post-search/post-search.js +362 -362
  88. package/dist/collection/components/post-search/post-search.js.map +1 -1
  89. package/dist/collection/components/post-skiplinks/post-skiplinks.js +51 -51
  90. package/dist/collection/components/post-skiplinks/post-skiplinks.js.map +1 -1
  91. package/dist/collection/data/store.js +11 -11
  92. package/dist/collection/data/store.js.map +1 -1
  93. package/dist/collection/index.js +2 -2
  94. package/dist/collection/index.js.map +1 -1
  95. package/dist/collection/models/breadcrumbs.model.js +2 -2
  96. package/dist/collection/models/breadcrumbs.model.js.map +1 -1
  97. package/dist/collection/models/coveo.model.js +2 -2
  98. package/dist/collection/models/coveo.model.js.map +1 -1
  99. package/dist/collection/models/footer.model.js +2 -2
  100. package/dist/collection/models/footer.model.js.map +1 -1
  101. package/dist/collection/models/general.model.js +2 -2
  102. package/dist/collection/models/general.model.js.map +1 -1
  103. package/dist/collection/models/geocode.model.js +10 -10
  104. package/dist/collection/models/geocode.model.js.map +1 -1
  105. package/dist/collection/models/header.model.js +2 -2
  106. package/dist/collection/models/header.model.js.map +1 -1
  107. package/dist/collection/models/implementor.model.js +2 -2
  108. package/dist/collection/models/implementor.model.js.map +1 -1
  109. package/dist/collection/models/language.model.js +2 -2
  110. package/dist/collection/models/language.model.js.map +1 -1
  111. package/dist/collection/models/track-and-trace.model.js +2 -2
  112. package/dist/collection/models/track-and-trace.model.js.map +1 -1
  113. package/dist/collection/services/config.service.js +170 -170
  114. package/dist/collection/services/config.service.js.map +1 -1
  115. package/dist/collection/services/language.service.js +107 -107
  116. package/dist/collection/services/language.service.js.map +1 -1
  117. package/dist/collection/services/route.service.js +163 -163
  118. package/dist/collection/services/route.service.js.map +1 -1
  119. package/dist/collection/services/search/coveo.service.js +34 -34
  120. package/dist/collection/services/search/coveo.service.js.map +1 -1
  121. package/dist/collection/services/search/coveo.settings.js +19 -19
  122. package/dist/collection/services/search/coveo.settings.js.map +1 -1
  123. package/dist/collection/services/search/parcel.service.js +54 -54
  124. package/dist/collection/services/search/parcel.service.js.map +1 -1
  125. package/dist/collection/services/search/places.service.js +95 -95
  126. package/dist/collection/services/search/places.service.js.map +1 -1
  127. package/dist/collection/services/search/places.settings.js +16 -16
  128. package/dist/collection/services/search/places.settings.js.map +1 -1
  129. package/dist/collection/services/search/search-utilities.js +26 -26
  130. package/dist/collection/services/search/search-utilities.js.map +1 -1
  131. package/dist/collection/services/search/search.service.js +42 -42
  132. package/dist/collection/services/search/search.service.js.map +1 -1
  133. package/dist/collection/services/ui.service.js +30 -30
  134. package/dist/collection/services/ui.service.js.map +1 -1
  135. package/dist/collection/tests/setup-tests.js +14 -14
  136. package/dist/collection/tests/setup-tests.js.map +1 -1
  137. package/dist/collection/utils/highlighted.component.js +11 -11
  138. package/dist/collection/utils/highlighted.component.js.map +1 -1
  139. package/dist/collection/utils/if.component.js +7 -7
  140. package/dist/collection/utils/if.component.js.map +1 -1
  141. package/dist/collection/utils/svg-icon.component.js +3 -3
  142. package/dist/collection/utils/svg-icon.component.js.map +1 -1
  143. package/dist/collection/utils/svg-sprite.component.js +3 -3
  144. package/dist/collection/utils/svg-sprite.component.js.map +1 -1
  145. package/dist/collection/utils/utils.js +16 -16
  146. package/dist/collection/utils/utils.js.map +1 -1
  147. package/dist/components/klp-widget.controller.js +4810 -4810
  148. package/dist/components/klp-widget.controller.js.map +1 -1
  149. package/dist/components/language.service.js +139 -139
  150. package/dist/components/language.service.js.map +1 -1
  151. package/dist/components/post-klp-login-widget2.js +48 -48
  152. package/dist/components/post-klp-login-widget2.js.map +1 -1
  153. package/dist/components/post-language-switch2.js +102 -102
  154. package/dist/components/post-language-switch2.js.map +1 -1
  155. package/dist/components/post-logo2.js +67 -67
  156. package/dist/components/post-logo2.js.map +1 -1
  157. package/dist/components/post-main-navigation2.js +244 -244
  158. package/dist/components/post-main-navigation2.js.map +1 -1
  159. package/dist/components/post-meta-navigation2.js +32 -32
  160. package/dist/components/post-meta-navigation2.js.map +1 -1
  161. package/dist/components/post-search2.js +577 -555
  162. package/dist/components/post-search2.js.map +1 -1
  163. package/dist/components/post-skiplinks2.js +52 -52
  164. package/dist/components/post-skiplinks2.js.map +1 -1
  165. package/dist/components/store.js +19 -12
  166. package/dist/components/store.js.map +1 -1
  167. package/dist/components/svg-icon.component.js +1 -1
  168. package/dist/components/svg-icon.component.js.map +1 -1
  169. package/dist/components/svg-sprite.component.js +39 -39
  170. package/dist/components/svg-sprite.component.js.map +1 -1
  171. package/dist/components/swisspost-internet-breadcrumbs.js +387 -409
  172. package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
  173. package/dist/components/swisspost-internet-footer.js +140 -140
  174. package/dist/components/swisspost-internet-footer.js.map +1 -1
  175. package/dist/components/swisspost-internet-header.js +672 -672
  176. package/dist/components/swisspost-internet-header.js.map +1 -1
  177. package/dist/components/ui.service.js +27 -27
  178. package/dist/components/ui.service.js.map +1 -1
  179. package/dist/components/utils.js +14 -14
  180. package/dist/components/utils.js.map +1 -1
  181. package/dist/esm/{if.component-542fb8c3.js → if.component-0fe54385.js} +6 -6
  182. package/dist/esm/if.component-0fe54385.js.map +1 -0
  183. package/dist/esm/{klp-widget.controller-903e0422.js → klp-widget.controller-55366e6a.js} +4811 -4811
  184. package/dist/esm/{klp-widget.controller-903e0422.js.map → klp-widget.controller-55366e6a.js.map} +1 -1
  185. package/dist/esm/{language.service-e49858e0.js → language.service-023d2711.js} +141 -141
  186. package/dist/esm/language.service-023d2711.js.map +1 -0
  187. package/dist/esm/post-klp-login-widget.entry.js +33 -33
  188. package/dist/esm/post-klp-login-widget.entry.js.map +1 -1
  189. package/dist/esm/post-language-switch.entry.js +88 -88
  190. package/dist/esm/post-language-switch.entry.js.map +1 -1
  191. package/dist/esm/post-logo.entry.js +51 -51
  192. package/dist/esm/post-logo.entry.js.map +1 -1
  193. package/dist/esm/post-main-navigation.entry.js +227 -227
  194. package/dist/esm/post-main-navigation.entry.js.map +1 -1
  195. package/dist/esm/post-meta-navigation.entry.js +15 -15
  196. package/dist/esm/post-meta-navigation.entry.js.map +1 -1
  197. package/dist/esm/post-search.entry.js +556 -534
  198. package/dist/esm/post-search.entry.js.map +1 -1
  199. package/dist/esm/post-skiplinks.entry.js +41 -41
  200. package/dist/esm/post-skiplinks.entry.js.map +1 -1
  201. package/dist/esm/{store-d495dc07.js → store-837c3490.js} +20 -13
  202. package/dist/esm/store-837c3490.js.map +1 -0
  203. package/dist/esm/{svg-icon.component-1b1b27a2.js → svg-icon.component-e09b4bf9.js} +2 -2
  204. package/dist/esm/svg-icon.component-e09b4bf9.js.map +1 -0
  205. package/dist/esm/{svg-sprite.component-ec0ac38c.js → svg-sprite.component-cf60303f.js} +40 -40
  206. package/dist/esm/svg-sprite.component-cf60303f.js.map +1 -0
  207. package/dist/esm/swisspost-internet-breadcrumbs.entry.js +370 -392
  208. package/dist/esm/swisspost-internet-breadcrumbs.entry.js.map +1 -1
  209. package/dist/esm/swisspost-internet-footer.entry.js +125 -125
  210. package/dist/esm/swisspost-internet-footer.entry.js.map +1 -1
  211. package/dist/esm/swisspost-internet-header.entry.js +608 -608
  212. package/dist/esm/swisspost-internet-header.entry.js.map +1 -1
  213. package/dist/esm/{ui.service-1d9b0f51.js → ui.service-2fbc9c45.js} +28 -28
  214. package/dist/esm/ui.service-2fbc9c45.js.map +1 -0
  215. package/dist/esm/{utils-5bf107ff.js → utils-ee79122f.js} +15 -15
  216. package/dist/esm/utils-ee79122f.js.map +1 -0
  217. package/dist/esm-es5/{if.component-542fb8c3.js → if.component-0fe54385.js} +1 -1
  218. package/dist/esm-es5/if.component-0fe54385.js.map +1 -0
  219. package/dist/esm-es5/{klp-widget.controller-903e0422.js → klp-widget.controller-55366e6a.js} +1 -1
  220. package/dist/{swisspost-internet-header/p-83f6cd1e.js.map → esm-es5/klp-widget.controller-55366e6a.js.map} +1 -1
  221. package/dist/esm-es5/{language.service-e49858e0.js → language.service-023d2711.js} +2 -2
  222. package/dist/esm-es5/language.service-023d2711.js.map +1 -0
  223. package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
  224. package/dist/esm-es5/post-klp-login-widget.entry.js.map +1 -1
  225. package/dist/esm-es5/post-language-switch.entry.js +1 -1
  226. package/dist/esm-es5/post-language-switch.entry.js.map +1 -1
  227. package/dist/esm-es5/post-logo.entry.js +1 -1
  228. package/dist/esm-es5/post-logo.entry.js.map +1 -1
  229. package/dist/esm-es5/post-main-navigation.entry.js +1 -1
  230. package/dist/esm-es5/post-main-navigation.entry.js.map +1 -1
  231. package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
  232. package/dist/esm-es5/post-meta-navigation.entry.js.map +1 -1
  233. package/dist/esm-es5/post-search.entry.js +1 -1
  234. package/dist/esm-es5/post-search.entry.js.map +1 -1
  235. package/dist/esm-es5/post-skiplinks.entry.js +1 -1
  236. package/dist/esm-es5/post-skiplinks.entry.js.map +1 -1
  237. package/dist/esm-es5/store-837c3490.js +2 -0
  238. package/dist/esm-es5/store-837c3490.js.map +1 -0
  239. package/dist/esm-es5/{svg-icon.component-1b1b27a2.js → svg-icon.component-e09b4bf9.js} +1 -1
  240. package/dist/esm-es5/svg-icon.component-e09b4bf9.js.map +1 -0
  241. package/dist/esm-es5/{svg-sprite.component-ec0ac38c.js → svg-sprite.component-cf60303f.js} +1 -1
  242. package/dist/esm-es5/svg-sprite.component-cf60303f.js.map +1 -0
  243. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +3 -3
  244. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js.map +1 -1
  245. package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
  246. package/dist/esm-es5/swisspost-internet-footer.entry.js.map +1 -1
  247. package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
  248. package/dist/esm-es5/swisspost-internet-header.entry.js.map +1 -1
  249. package/dist/esm-es5/{ui.service-1d9b0f51.js → ui.service-2fbc9c45.js} +1 -1
  250. package/dist/esm-es5/ui.service-2fbc9c45.js.map +1 -0
  251. package/dist/esm-es5/{utils-5bf107ff.js → utils-ee79122f.js} +1 -1
  252. package/dist/esm-es5/utils-ee79122f.js.map +1 -0
  253. package/dist/swisspost-internet-header/assets/config/test-configuration.json +4067 -4067
  254. package/dist/swisspost-internet-header/p-06649b46.js +2 -0
  255. package/dist/swisspost-internet-header/p-06649b46.js.map +1 -0
  256. package/dist/swisspost-internet-header/{p-ec80c8fc.js → p-0942595f.js} +2 -2
  257. package/dist/swisspost-internet-header/p-0942595f.js.map +1 -0
  258. package/dist/swisspost-internet-header/{p-c29ec122.system.js → p-0c5624c0.system.js} +1 -1
  259. package/dist/swisspost-internet-header/p-0c5624c0.system.js.map +1 -0
  260. package/dist/swisspost-internet-header/{p-2eb04045.entry.js → p-0cba8ab4.entry.js} +2 -2
  261. package/dist/swisspost-internet-header/p-0cba8ab4.entry.js.map +1 -0
  262. package/dist/swisspost-internet-header/p-17a47667.system.js +1 -1
  263. package/dist/swisspost-internet-header/{p-ddcb8258.entry.js → p-26879023.entry.js} +2 -2
  264. package/dist/swisspost-internet-header/p-26879023.entry.js.map +1 -0
  265. package/dist/swisspost-internet-header/{p-cb3de015.system.entry.js → p-28e6362f.system.entry.js} +2 -2
  266. package/dist/swisspost-internet-header/p-28e6362f.system.entry.js.map +1 -0
  267. package/dist/swisspost-internet-header/{p-00fd320e.entry.js → p-322526ef.entry.js} +2 -2
  268. package/dist/swisspost-internet-header/p-322526ef.entry.js.map +1 -0
  269. package/dist/swisspost-internet-header/{p-f4ff1e9e.system.js → p-3753a678.system.js} +2 -2
  270. package/dist/swisspost-internet-header/p-3753a678.system.js.map +1 -0
  271. package/dist/swisspost-internet-header/{p-a9c4b2d0.system.entry.js → p-38d645ba.system.entry.js} +2 -2
  272. package/dist/swisspost-internet-header/p-38d645ba.system.entry.js.map +1 -0
  273. package/dist/swisspost-internet-header/p-3df823de.system.entry.js +2 -0
  274. package/dist/swisspost-internet-header/p-3df823de.system.entry.js.map +1 -0
  275. package/dist/swisspost-internet-header/{p-872a76a4.system.js → p-42695801.system.js} +1 -1
  276. package/dist/swisspost-internet-header/p-42695801.system.js.map +1 -0
  277. package/dist/swisspost-internet-header/{p-bdabd6ac.js → p-45db66a6.js} +1 -1
  278. package/dist/swisspost-internet-header/p-45db66a6.js.map +1 -0
  279. package/dist/swisspost-internet-header/p-493337e1.system.entry.js +2 -0
  280. package/dist/swisspost-internet-header/p-493337e1.system.entry.js.map +1 -0
  281. package/dist/swisspost-internet-header/{p-78f653be.system.entry.js → p-5d2fac3b.system.entry.js} +2 -2
  282. package/dist/swisspost-internet-header/p-5d2fac3b.system.entry.js.map +1 -0
  283. package/dist/swisspost-internet-header/p-62c5cf26.entry.js +2 -0
  284. package/dist/swisspost-internet-header/p-62c5cf26.entry.js.map +1 -0
  285. package/dist/swisspost-internet-header/{p-9d0a7039.entry.js → p-64cb215a.entry.js} +2 -2
  286. package/dist/swisspost-internet-header/p-64cb215a.entry.js.map +1 -0
  287. package/dist/swisspost-internet-header/{p-a51ad207.system.entry.js → p-66144e99.system.entry.js} +2 -2
  288. package/dist/swisspost-internet-header/p-66144e99.system.entry.js.map +1 -0
  289. package/dist/swisspost-internet-header/p-715ebef7.system.entry.js +7 -0
  290. package/dist/swisspost-internet-header/p-715ebef7.system.entry.js.map +1 -0
  291. package/dist/swisspost-internet-header/p-7709ed5c.entry.js +2 -0
  292. package/dist/swisspost-internet-header/p-7709ed5c.entry.js.map +1 -0
  293. package/dist/swisspost-internet-header/{p-12baacf0.entry.js → p-77d5e07f.entry.js} +2 -2
  294. package/dist/swisspost-internet-header/p-77d5e07f.entry.js.map +1 -0
  295. package/dist/swisspost-internet-header/p-7fcba2e7.system.js +2 -0
  296. package/dist/swisspost-internet-header/p-7fcba2e7.system.js.map +1 -0
  297. package/dist/swisspost-internet-header/{p-549b62ba.system.js → p-88aac12c.system.js} +1 -1
  298. package/dist/swisspost-internet-header/p-88aac12c.system.js.map +1 -0
  299. package/dist/swisspost-internet-header/{p-0e2ec555.js → p-8bf099a8.js} +1 -1
  300. package/dist/swisspost-internet-header/p-8bf099a8.js.map +1 -0
  301. package/dist/swisspost-internet-header/{p-3eb881c3.js → p-a2f9d462.js} +1 -1
  302. package/dist/swisspost-internet-header/p-a2f9d462.js.map +1 -0
  303. package/dist/swisspost-internet-header/{p-eeff8b03.js → p-ab1dd269.js} +1 -1
  304. package/dist/swisspost-internet-header/p-ab1dd269.js.map +1 -0
  305. package/dist/swisspost-internet-header/{p-a4160d23.entry.js → p-ccb522ba.entry.js} +2 -2
  306. package/dist/swisspost-internet-header/p-ccb522ba.entry.js.map +1 -0
  307. package/dist/swisspost-internet-header/p-cfa787d7.entry.js +6 -0
  308. package/dist/swisspost-internet-header/p-cfa787d7.entry.js.map +1 -0
  309. package/dist/swisspost-internet-header/{p-8717445f.entry.js → p-d33734b5.entry.js} +2 -2
  310. package/dist/swisspost-internet-header/p-d33734b5.entry.js.map +1 -0
  311. package/dist/swisspost-internet-header/{p-c946c5b8.system.entry.js → p-db87f3e3.system.entry.js} +2 -2
  312. package/dist/swisspost-internet-header/p-db87f3e3.system.entry.js.map +1 -0
  313. package/dist/swisspost-internet-header/{p-b406315a.system.entry.js → p-e2990968.system.entry.js} +2 -2
  314. package/dist/swisspost-internet-header/p-e2990968.system.entry.js.map +1 -0
  315. package/dist/swisspost-internet-header/{p-83f6cd1e.js → p-ed24b372.js} +1 -1
  316. package/dist/swisspost-internet-header/p-ed24b372.js.map +1 -0
  317. package/dist/swisspost-internet-header/{p-9509f6c7.system.js → p-edb2802d.system.js} +1 -1
  318. package/dist/swisspost-internet-header/p-edb2802d.system.js.map +1 -0
  319. package/dist/swisspost-internet-header/{p-ee915bbe.system.js → p-ee119d2e.system.js} +1 -1
  320. package/dist/swisspost-internet-header/p-ee119d2e.system.js.map +1 -0
  321. package/dist/swisspost-internet-header/{p-883f9547.system.entry.js → p-f38f38f4.system.entry.js} +2 -2
  322. package/dist/swisspost-internet-header/p-f38f38f4.system.entry.js.map +1 -0
  323. package/dist/swisspost-internet-header/{p-3ba40afe.js → p-f7c0cf7b.js} +1 -1
  324. package/dist/swisspost-internet-header/p-f7c0cf7b.js.map +1 -0
  325. package/dist/swisspost-internet-header/{p-4654b2af.system.js → p-ffc59851.system.js} +1 -1
  326. package/dist/swisspost-internet-header/p-ffc59851.system.js.map +1 -0
  327. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
  328. package/dist/types/assets/i18n/translations.d.ts +37 -37
  329. package/dist/types/components/post-internet-breadcrumbs/components/breadcrumb-list.component.d.ts +9 -9
  330. package/dist/types/components/post-internet-breadcrumbs/components/focus-trap.component.d.ts +12 -12
  331. package/dist/types/components/post-internet-breadcrumbs/components/middle-dropdown.component.d.ts +7 -7
  332. package/dist/types/components/post-internet-breadcrumbs/components/middle-links.component.d.ts +6 -6
  333. package/dist/types/components/post-internet-breadcrumbs/components/overlay.component.d.ts +16 -16
  334. package/dist/types/components/post-internet-breadcrumbs/post-internet-breadcrumbs.d.ts +45 -45
  335. package/dist/types/components/post-internet-footer/components/post-footer-block-address.component.d.ts +5 -5
  336. package/dist/types/components/post-internet-footer/components/post-footer-block-contact.component.d.ts +6 -6
  337. package/dist/types/components/post-internet-footer/components/post-footer-block-custom.component.d.ts +4 -4
  338. package/dist/types/components/post-internet-footer/components/post-footer-block-list.component.d.ts +5 -5
  339. package/dist/types/components/post-internet-footer/components/post-footer-block-socials.component.d.ts +5 -5
  340. package/dist/types/components/post-internet-footer/post-internet-footer.d.ts +10 -10
  341. package/dist/types/components/post-internet-header/post-internet-header.d.ts +124 -124
  342. package/dist/types/components/post-klp-login-widget/klp-widget.controller.d.ts +3 -3
  343. package/dist/types/components/post-klp-login-widget/post-klp-login-widget.d.ts +10 -10
  344. package/dist/types/components/post-language-switch/components/post-language-switch-list.d.ts +6 -6
  345. package/dist/types/components/post-language-switch/post-language-switch.d.ts +27 -27
  346. package/dist/types/components/post-logo/logo-sprite.component.d.ts +4 -4
  347. package/dist/types/components/post-logo/post-logo.d.ts +11 -11
  348. package/dist/types/components/post-main-navigation/components/level-one-action.component.d.ts +8 -8
  349. package/dist/types/components/post-main-navigation/post-main-navigation.d.ts +48 -48
  350. package/dist/types/components/post-meta-navigation/post-meta-navigation.d.ts +5 -5
  351. package/dist/types/components/post-search/post-search.d.ts +61 -61
  352. package/dist/types/components/post-skiplinks/post-skiplinks.d.ts +9 -9
  353. package/dist/types/data/store.d.ts +16 -16
  354. package/dist/types/index.d.ts +1 -1
  355. package/dist/types/models/breadcrumbs.model.d.ts +36 -36
  356. package/dist/types/models/coveo.model.d.ts +22 -22
  357. package/dist/types/models/footer.model.d.ts +48 -48
  358. package/dist/types/models/general.model.d.ts +46 -46
  359. package/dist/types/models/geocode.model.d.ts +52 -52
  360. package/dist/types/models/header.model.d.ts +163 -163
  361. package/dist/types/models/implementor.model.d.ts +22 -22
  362. package/dist/types/models/language.model.d.ts +6 -6
  363. package/dist/types/models/track-and-trace.model.d.ts +25 -25
  364. package/dist/types/services/config.service.d.ts +56 -56
  365. package/dist/types/services/language.service.d.ts +65 -65
  366. package/dist/types/services/route.service.d.ts +39 -39
  367. package/dist/types/services/search/coveo.service.d.ts +9 -9
  368. package/dist/types/services/search/coveo.settings.d.ts +2 -2
  369. package/dist/types/services/search/parcel.service.d.ts +28 -28
  370. package/dist/types/services/search/places.service.d.ts +24 -24
  371. package/dist/types/services/search/places.settings.d.ts +3 -3
  372. package/dist/types/services/search/search-utilities.d.ts +15 -15
  373. package/dist/types/services/search/search.service.d.ts +24 -24
  374. package/dist/types/services/ui.service.d.ts +23 -23
  375. package/dist/types/utils/highlighted.component.d.ts +4 -4
  376. package/dist/types/utils/if.component.d.ts +4 -4
  377. package/dist/types/utils/svg-icon.component.d.ts +4 -4
  378. package/dist/types/utils/svg-sprite.component.d.ts +1 -1
  379. package/dist/types/utils/utils.d.ts +8 -8
  380. package/package.json +7 -7
  381. package/readme.md +57 -15
  382. package/dist/cjs/if.component-313f59b8.js.map +0 -1
  383. package/dist/cjs/language.service-a80ae01d.js.map +0 -1
  384. package/dist/cjs/store-47e14589.js.map +0 -1
  385. package/dist/cjs/svg-icon.component-10fbda11.js.map +0 -1
  386. package/dist/cjs/svg-sprite.component-c3b454b3.js.map +0 -1
  387. package/dist/cjs/ui.service-db4a8252.js.map +0 -1
  388. package/dist/cjs/utils-b6014257.js.map +0 -1
  389. package/dist/esm/if.component-542fb8c3.js.map +0 -1
  390. package/dist/esm/language.service-e49858e0.js.map +0 -1
  391. package/dist/esm/store-d495dc07.js.map +0 -1
  392. package/dist/esm/svg-icon.component-1b1b27a2.js.map +0 -1
  393. package/dist/esm/svg-sprite.component-ec0ac38c.js.map +0 -1
  394. package/dist/esm/ui.service-1d9b0f51.js.map +0 -1
  395. package/dist/esm/utils-5bf107ff.js.map +0 -1
  396. package/dist/esm-es5/if.component-542fb8c3.js.map +0 -1
  397. package/dist/esm-es5/klp-widget.controller-903e0422.js.map +0 -1
  398. package/dist/esm-es5/language.service-e49858e0.js.map +0 -1
  399. package/dist/esm-es5/store-d495dc07.js +0 -2
  400. package/dist/esm-es5/store-d495dc07.js.map +0 -1
  401. package/dist/esm-es5/svg-icon.component-1b1b27a2.js.map +0 -1
  402. package/dist/esm-es5/svg-sprite.component-ec0ac38c.js.map +0 -1
  403. package/dist/esm-es5/ui.service-1d9b0f51.js.map +0 -1
  404. package/dist/esm-es5/utils-5bf107ff.js.map +0 -1
  405. package/dist/swisspost-internet-header/p-00fd320e.entry.js.map +0 -1
  406. package/dist/swisspost-internet-header/p-0e2ec555.js.map +0 -1
  407. package/dist/swisspost-internet-header/p-12baacf0.entry.js.map +0 -1
  408. package/dist/swisspost-internet-header/p-2eb04045.entry.js.map +0 -1
  409. package/dist/swisspost-internet-header/p-3ba40afe.js.map +0 -1
  410. package/dist/swisspost-internet-header/p-3eb881c3.js.map +0 -1
  411. package/dist/swisspost-internet-header/p-458c9862.system.entry.js +0 -2
  412. package/dist/swisspost-internet-header/p-458c9862.system.entry.js.map +0 -1
  413. package/dist/swisspost-internet-header/p-4654b2af.system.js.map +0 -1
  414. package/dist/swisspost-internet-header/p-549b62ba.system.js.map +0 -1
  415. package/dist/swisspost-internet-header/p-5e43c5e0.js +0 -2
  416. package/dist/swisspost-internet-header/p-5e43c5e0.js.map +0 -1
  417. package/dist/swisspost-internet-header/p-74932c29.entry.js +0 -6
  418. package/dist/swisspost-internet-header/p-74932c29.entry.js.map +0 -1
  419. package/dist/swisspost-internet-header/p-76ce4acc.system.entry.js +0 -2
  420. package/dist/swisspost-internet-header/p-76ce4acc.system.entry.js.map +0 -1
  421. package/dist/swisspost-internet-header/p-78f653be.system.entry.js.map +0 -1
  422. package/dist/swisspost-internet-header/p-7f16a46b.entry.js +0 -2
  423. package/dist/swisspost-internet-header/p-7f16a46b.entry.js.map +0 -1
  424. package/dist/swisspost-internet-header/p-8717445f.entry.js.map +0 -1
  425. package/dist/swisspost-internet-header/p-872a76a4.system.js.map +0 -1
  426. package/dist/swisspost-internet-header/p-883f9547.system.entry.js.map +0 -1
  427. package/dist/swisspost-internet-header/p-9509f6c7.system.js.map +0 -1
  428. package/dist/swisspost-internet-header/p-9d0a7039.entry.js.map +0 -1
  429. package/dist/swisspost-internet-header/p-a4160d23.entry.js.map +0 -1
  430. package/dist/swisspost-internet-header/p-a51ad207.system.entry.js.map +0 -1
  431. package/dist/swisspost-internet-header/p-a9c4b2d0.system.entry.js.map +0 -1
  432. package/dist/swisspost-internet-header/p-b406315a.system.entry.js.map +0 -1
  433. package/dist/swisspost-internet-header/p-bdabd6ac.js.map +0 -1
  434. package/dist/swisspost-internet-header/p-c29ec122.system.js.map +0 -1
  435. package/dist/swisspost-internet-header/p-c69923cd.system.js +0 -2
  436. package/dist/swisspost-internet-header/p-c69923cd.system.js.map +0 -1
  437. package/dist/swisspost-internet-header/p-c946c5b8.system.entry.js.map +0 -1
  438. package/dist/swisspost-internet-header/p-cb3de015.system.entry.js.map +0 -1
  439. package/dist/swisspost-internet-header/p-d713a3b3.system.entry.js +0 -7
  440. package/dist/swisspost-internet-header/p-d713a3b3.system.entry.js.map +0 -1
  441. package/dist/swisspost-internet-header/p-ddcb8258.entry.js.map +0 -1
  442. package/dist/swisspost-internet-header/p-ec80c8fc.js.map +0 -1
  443. package/dist/swisspost-internet-header/p-ee915bbe.system.js.map +0 -1
  444. package/dist/swisspost-internet-header/p-eeff8b03.js.map +0 -1
  445. package/dist/swisspost-internet-header/p-f4ff1e9e.system.js.map +0 -1
  446. package/dist/swisspost-internet-header/p-fa0c66c7.entry.js +0 -2
  447. package/dist/swisspost-internet-header/p-fa0c66c7.entry.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"names":["postSkiplinksCss","PostSkiplinks","exports","class_1","prototype","getMainId","_a","document","querySelector","getAttribute","setFocus","tagname","rootHost","this","host","closest","focusable","focusMain","focusSearch","focusLogin","render","_this","config","state","localizedConfig","header","mainId","undefined","h","Host","class","href","logo","logoLink","accessKey","title","logoLinkTitle","SvgIcon","name","onClick","translations","navMainAriaLabel","concat","translate","search","login"],"sources":["src/components/post-skiplinks/post-skiplinks.scss?tag=post-skiplinks","src/components/post-skiplinks/post-skiplinks.tsx"],"sourcesContent":[":host {\r\n display: block;\r\n}\r\n\r\n.skiplinks {\r\n a {\r\n position: absolute;\r\n top: 0.5rem;\r\n left: 0.5rem;\r\n clip: rect(0 0 0 0);\r\n width: 1px;\r\n overflow: hidden;\r\n display: flex;\r\n align-items: center;\r\n padding: 0.25rem;\r\n background: white;\r\n\r\n &:focus-visible {\r\n clip: unset;\r\n width: auto;\r\n }\r\n }\r\n}\r\n","import { Component, Host, h, Element } from '@stencil/core';\r\nimport { state } from '../../data/store';\r\nimport { FocusableElement } from '../../models/header.model';\r\nimport { translate } from '../../services/language.service';\r\nimport { SvgIcon } from '../../utils/svg-icon.component';\r\n\r\n@Component({\r\n tag: 'post-skiplinks',\r\n styleUrl: 'post-skiplinks.scss',\r\n shadow: false,\r\n})\r\nexport class PostSkiplinks {\r\n @Element() host: HTMLElement;\r\n\r\n private getMainId() {\r\n return document.querySelector('main[id]')?.getAttribute('id');\r\n }\r\n\r\n private setFocus(tagname: string) {\r\n const rootHost = this.host.closest('.post-internet-header');\r\n if (!rootHost) {\r\n return;\r\n }\r\n\r\n const focusable = rootHost.querySelector<FocusableElement>(tagname);\r\n if (focusable) {\r\n focusable.setFocus();\r\n }\r\n }\r\n\r\n private focusMain() {\r\n this.setFocus('post-main-navigation');\r\n }\r\n\r\n private focusSearch() {\r\n this.setFocus('post-search');\r\n }\r\n\r\n private focusLogin() {\r\n this.setFocus('post-klp-login-widget');\r\n }\r\n\r\n render() {\r\n const config = state.localizedConfig?.header;\r\n const mainId = this.getMainId();\r\n\r\n if (config === undefined) {\r\n return;\r\n }\r\n\r\n return (\r\n <Host>\r\n <nav class=\"skiplinks\">\r\n <ul class=\"no-list\">\r\n <li>\r\n <a class=\"nav-link\" href={config.logo.logoLink} accessKey=\"0\" title=\"[ALT + 0]\">\r\n <span>{config.logo.logoLinkTitle}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n <li>\r\n <a\r\n class=\"nav-link\"\r\n href=\"#post-internet-header-main-navigation\"\r\n accessKey=\"1\"\r\n title=\"[ALT + 1]\"\r\n onClick={() => this.focusMain()}\r\n >\r\n <span>{config.translations.navMainAriaLabel}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n {mainId ? (\r\n <li>\r\n <a class=\"nav-link\" href={`#${mainId}`} accessKey=\"2\" title=\"[ALT + 2]\">\r\n <span>{translate('Go to main content')}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n ) : null}\r\n {state.search ? (\r\n <li>\r\n <a\r\n class=\"nav-link\"\r\n href=\"#post-internet-header-search-button\"\r\n accessKey=\"3\"\r\n title=\"[ALT + 3]\"\r\n onClick={() => this.focusSearch()}\r\n >\r\n <span>{translate('Go to search')}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n ) : null}\r\n {state.login ? (\r\n <li>\r\n <a\r\n class=\"nav-link\"\r\n href=\"#post-klp-login-widget\"\r\n accessKey=\"4\"\r\n title=\"[ALT + 4]\"\r\n onClick={() => this.focusLogin()}\r\n >\r\n <span>{translate('Go to login')}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n ) : null}\r\n </ul>\r\n </nav>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"oSAAA,IAAMA,EAAmB,sR,ICWZC,EAAaC,EAAA,4B,wBAGhBC,EAAAC,UAAAC,UAAA,W,MACN,OAAOC,EAAAC,SAASC,cAAc,eAAW,MAAAF,SAAA,SAAAA,EAAEG,aAAa,K,EAGlDN,EAAAC,UAAAM,SAAA,SAASC,GACf,IAAMC,EAAWC,KAAKC,KAAKC,QAAQ,yBACnC,IAAKH,EAAU,CACb,M,CAGF,IAAMI,EAAYJ,EAASJ,cAAgCG,GAC3D,GAAIK,EAAW,CACbA,EAAUN,U,GAINP,EAAAC,UAAAa,UAAA,WACNJ,KAAKH,SAAS,uB,EAGRP,EAAAC,UAAAc,YAAA,WACNL,KAAKH,SAAS,c,EAGRP,EAAAC,UAAAe,WAAA,WACNN,KAAKH,SAAS,wB,EAGhBP,EAAAC,UAAAgB,OAAA,eAAAC,EAAAR,K,MACE,IAAMS,GAAShB,EAAAiB,EAAMC,mBAAe,MAAAlB,SAAA,SAAAA,EAAEmB,OACtC,IAAMC,EAASb,KAAKR,YAEpB,GAAIiB,IAAWK,UAAW,CACxB,M,CAGF,OACEC,EAACC,EAAI,KACHD,EAAA,OAAKE,MAAM,aACTF,EAAA,MAAIE,MAAM,WACRF,EAAA,UACEA,EAAA,KAAGE,MAAM,WAAWC,KAAMT,EAAOU,KAAKC,SAAUC,UAAU,IAAIC,MAAM,aAClEP,EAAA,YAAON,EAAOU,KAAKI,eACnBR,EAACS,EAAO,CAACC,KAAK,4BAGlBV,EAAA,UACEA,EAAA,KACEE,MAAM,WACNC,KAAK,wCACLG,UAAU,IACVC,MAAM,YACNI,QAAS,WAAM,OAAAlB,EAAKJ,WAAL,GAEfW,EAAA,YAAON,EAAOkB,aAAaC,kBAC3Bb,EAACS,EAAO,CAACC,KAAK,4BAGjBZ,EACCE,EAAA,UACEA,EAAA,KAAGE,MAAM,WAAWC,KAAM,IAAAW,OAAIhB,GAAUQ,UAAU,IAAIC,MAAM,aAC1DP,EAAA,YAAOe,EAAU,uBACjBf,EAACS,EAAO,CAACC,KAAK,4BAGhB,KACHf,EAAMqB,OACLhB,EAAA,UACEA,EAAA,KACEE,MAAM,WACNC,KAAK,sCACLG,UAAU,IACVC,MAAM,YACNI,QAAS,WAAM,OAAAlB,EAAKH,aAAL,GAEfU,EAAA,YAAOe,EAAU,iBACjBf,EAACS,EAAO,CAACC,KAAK,4BAGhB,KACHf,EAAMsB,MACLjB,EAAA,UACEA,EAAA,KACEE,MAAM,WACNC,KAAK,yBACLG,UAAU,IACVC,MAAM,YACNI,QAAS,WAAM,OAAAlB,EAAKF,YAAL,GAEfS,EAAA,YAAOe,EAAU,gBACjBf,EAACS,EAAO,CAACC,KAAK,4BAGhB,O,yHAhGU,I"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["If","exports","props","children","condition"],"sources":["src/utils/if.component.tsx"],"sourcesContent":["import { JSXBase } from '@stencil/core/internal';\r\n\r\nexport const If = (\r\n props: {\r\n condition: boolean;\r\n },\r\n children: JSXBase.IntrinsicElements,\r\n) => {\r\n if (!props.condition) {\r\n return null;\r\n }\r\n return children;\r\n};\r\n"],"mappings":"2EAEaA,EAAEC,EAAA,KAAG,SAChBC,EAGAC,GAEA,IAAKD,EAAME,UAAW,CACpB,OAAO,I,CAET,OAAOD,CACT,G"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["PostFooterBlockCustom","props","h","class","block","title","links","map","link","key","url","href","target","text","PostFooterBlockList","PostFooterBlockSocials","content","name","icon","PostFooterBlockAddress","filter","address","innerHTML","length","getContentHours","hours","replace","callUnblu","window","console","error","LiveSupport","id","type","onClick","PostFooterBlockContact","index","isLiveSupport","liveSupportEnabled","number","describe","postInternetFooterCss","PostInternetFooter","constructor","hostRef","this","unbluEnabled","intervalId","runs","checker","isEnabled","clearInterval","setInterval","render","state","warn","localizedConfig","footer","projectId","document","querySelector","footerConfig","customFooterConfig","_a","localizedCustomConfig","Host","SvgSprite","columnType","entry"],"sources":["./src/components/post-internet-footer/components/post-footer-block-custom.component.tsx","./src/components/post-internet-footer/components/post-footer-block-list.component.tsx","./src/components/post-internet-footer/components/post-footer-block-socials.component.tsx","./src/components/post-internet-footer/components/post-footer-block-address.component.tsx","./src/components/post-internet-footer/components/post-footer-block-contact.component.tsx","./src/components/post-internet-footer/post-internet-footer.scss?tag=swisspost-internet-footer&encapsulation=shadow","./src/components/post-internet-footer/post-internet-footer.tsx"],"sourcesContent":["import { h } from '@stencil/core';\r\nimport { CustomBlockEntity } from '../../../models/footer.model';\r\n\r\nexport const PostFooterBlockCustom = (props: { block: CustomBlockEntity }) => {\r\n return (\r\n <div class=\"pre-footer\">\r\n <div class=\"block-custom container\">\r\n <h3>{props.block.title}</h3>\r\n <ul class=\"no-list box link-list\">\r\n {props.block.links &&\r\n props.block.links.map(link => (\r\n <li key={link.url}>\r\n <a class=\"flyout-link\" href={link.url} target={link.target}>\r\n {link.text}\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { CustomBlockEntity } from '../../../models/footer.model';\r\n\r\nexport const PostFooterBlockList = (props: { block: CustomBlockEntity; key: string }) => {\r\n return (\r\n <div class=\"block-list\">\r\n <h3>{props.block.title}</h3>\r\n <ul class=\"no-list box link-list\">\r\n {props.block.links &&\r\n props.block.links.map(link => (\r\n <li key={link.url}>\r\n <a class=\"flyout-link\" href={link.url} target={link.target}>\r\n {link.text}\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { ContentEntity } from '../../../models/footer.model';\r\n\r\nexport const PostFooterBlockSocials = (props: { content: ContentEntity; key: string }) => {\r\n return (\r\n <div class=\"block-socials\">\r\n <h3>{props.content.title}</h3>\r\n <ul class=\"no-list socials\">\r\n {props.content.links.map(link => (\r\n <li key={link.url}>\r\n <a href={link.url} target={link.target}>\r\n <span class=\"visually-hidden\">{link.name}</span>\r\n <svg aria-hidden=\"true\">\r\n <use href={`#${link.icon}`} />\r\n </svg>\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { BlockEntity } from '../../../models/footer.model';\r\nimport { PostFooterBlockSocials } from './post-footer-block-socials.component';\r\n\r\nexport const PostFooterBlockAddress = (props: { block: BlockEntity; key: string }) => {\r\n return (\r\n <div class=\"block-address\">\r\n <h3>{props.block.title}</h3>\r\n {props.block.content &&\r\n props.block.content\r\n .filter(content => content.address)\r\n .map(content => (\r\n <address class=\"vcard\" key={content.address}>\r\n <span class=\"adr\" innerHTML={content.address}></span>\r\n </address>\r\n ))}\r\n {props.block.content &&\r\n props.block.content\r\n .filter(content => content.links && content.links.length)\r\n .map(content => <PostFooterBlockSocials key={content.name} content={content} />)}\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { BlockEntity } from '../../../models/footer.model';\r\n\r\nconst getContentHours = (hours: string) => hours.replace(/<[^>]*>?/gm, '');\r\n\r\nconst callUnblu = () => {\r\n if (typeof window['unbluLSLoad'] === 'function') {\r\n window['unbluLSLoad']();\r\n } else {\r\n console.error(\r\n 'swisspost-internet-footer: The function \"unbluLSLoad\" could not be called because it is not available in the global scope. Did you include the unblu live chat script on your page?',\r\n );\r\n }\r\n};\r\n\r\nconst LiveSupport = (props: { hours: string }) => (\r\n <button\r\n class=\"hours btn btn-link\"\r\n id=\"liveSupport\"\r\n type=\"button\"\r\n onClick={callUnblu}\r\n innerHTML={getContentHours(props.hours)}\r\n ></button>\r\n);\r\n\r\nexport const PostFooterBlockContact = (props: {\r\n block: BlockEntity;\r\n liveSupportEnabled: boolean;\r\n key: string;\r\n}) => {\r\n return (\r\n <div class=\"block-contact\">\r\n <h3>{props.block.title}</h3>\r\n {props.block.content &&\r\n props.block.content.map((content, index) => {\r\n const isLiveSupport =\r\n index === props.block.content!.length - 1 && content.text === 'Live Support';\r\n if (isLiveSupport && !props.liveSupportEnabled) {\r\n return null;\r\n }\r\n return (\r\n <div class=\"content-row\" key={content.name}>\r\n {content.number ? <p class=\"number\">{content.number}</p> : null}\r\n {content.text ? <p class=\"text\">{content.text}</p> : null}\r\n {content.hours && isLiveSupport && <LiveSupport hours={content.hours} />}\r\n {content.hours && !isLiveSupport && (\r\n // Some values arrive in the form of <p>8&emdash;12</p> and without replace and innerHTML, tags get rendered as text (project=\"klp\" language=\"en\" environment=\"int02\")\r\n <p class=\"hours\" innerHTML={getContentHours(content.hours)}></p>\r\n )}\r\n {content.describe ? <p class=\"describe\">{content.describe}</p> : null}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n );\r\n};\r\n","@use \"@swisspost/design-system-styles/components/grid\";\r\n@use \"@swisspost/design-system-styles/variables/color\";\r\n@use \"@swisspost/design-system-styles/placeholders/text\";\r\n@use \"@swisspost/design-system-styles/functions\";\r\n@use \"@swisspost/design-system-styles/components/button\";\r\n@use \"../../utils/utils.scss\";\r\n@use \"../../utils/mixins.scss\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\nh3 {\r\n font-size: inherit;\r\n margin-top: 0;\r\n}\r\n\r\n.btn.btn-link {\r\n padding-left: 0;\r\n padding-right: 0;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.post-internet-footer {\r\n font-size: 1rem;\r\n font-weight: 300;\r\n border-top: 2px solid color.$gray-10;\r\n}\r\n\r\n.pre-footer {\r\n padding-top: 2rem;\r\n padding-bottom: 2rem;\r\n border-bottom: 2px solid color.$gray-10;\r\n\r\n .block-custom,\r\n .link-list {\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 1rem 1.5rem;\r\n }\r\n\r\n h3,\r\n .link-list li {\r\n margin: 0;\r\n }\r\n}\r\n\r\n.footer-container {\r\n display: grid;\r\n grid-template-columns: 1fr 1fr 1fr 1fr;\r\n gap: 3.5rem 2rem;\r\n margin-top: 3.5rem;\r\n margin-bottom: 3.5rem;\r\n\r\n @include mixins.max(lg) {\r\n grid-template-columns: 1fr 1fr;\r\n }\r\n\r\n @include mixins.max(rg) {\r\n gap: 1.5rem 2rem;\r\n margin-top: 1.5rem;\r\n margin-bottom: 1.5rem;\r\n }\r\n}\r\n\r\n.block-list {\r\n @include mixins.max(sm) {\r\n grid-column: 1 / 3;\r\n }\r\n}\r\n\r\n.block-contact,\r\n.block-address {\r\n @include mixins.max(rg) {\r\n grid-column: 1 / 3;\r\n }\r\n}\r\n\r\n.block-socials {\r\n margin-top: 3.5rem;\r\n\r\n @include mixins.max(rg) {\r\n margin-top: 1.5rem;\r\n }\r\n}\r\n\r\naddress {\r\n font-style: normal;\r\n}\r\n\r\n.link-list {\r\n li {\r\n margin: 1rem 0;\r\n }\r\n a {\r\n display: block;\r\n text-decoration: none;\r\n color: color.$gray-60;\r\n transition: color 200ms;\r\n\r\n &:hover {\r\n color: black;\r\n }\r\n }\r\n}\r\n\r\n.content-row {\r\n padding: 0.5rem 0;\r\n\r\n h3 + & {\r\n padding-top: 0;\r\n }\r\n\r\n &:last-child {\r\n padding-bottom: 0;\r\n }\r\n\r\n & + & {\r\n border-top: 1px solid color.$gray-10;\r\n }\r\n\r\n p,\r\n button {\r\n margin: 0.25rem;\r\n }\r\n}\r\n\r\n.text {\r\n font-weight: 700;\r\n}\r\n\r\n.describe {\r\n font-size: 0.8125rem;\r\n color: color.$gray-60;\r\n font-weight: 400;\r\n}\r\n\r\n.number {\r\n font-size: 1.25rem;\r\n}\r\n\r\n.socials {\r\n display: inline-grid;\r\n grid-auto-flow: row;\r\n grid-template-columns: repeat(4, 1fr);\r\n gap: 1rem 1.5rem;\r\n\r\n a {\r\n display: block;\r\n color: color.$gray-60;\r\n transition: color 200ms;\r\n\r\n &:hover,\r\n &:focus {\r\n color: black;\r\n }\r\n }\r\n\r\n svg {\r\n display: block;\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n }\r\n}\r\n\r\n.copyright {\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 0.5rem 1.5rem;\r\n margin-top: 2rem;\r\n margin-bottom: 2rem;\r\n font-size: functions.px-to-rem(12px);\r\n}\r\n\r\n.footer-meta-links {\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 0.5rem;\r\n font-weight: 400;\r\n}\r\n","import { Component, Host, h, State } from '@stencil/core';\r\nimport { state } from '../../data/store';\r\nimport { SvgSprite } from '../../utils/svg-sprite.component';\r\nimport { PostFooterBlockCustom } from './components/post-footer-block-custom.component';\r\nimport { PostFooterBlockList } from './components/post-footer-block-list.component';\r\nimport { PostFooterBlockAddress } from './components/post-footer-block-address.component';\r\nimport { PostFooterBlockContact } from './components/post-footer-block-contact.component';\r\n\r\n@Component({\r\n tag: 'swisspost-internet-footer',\r\n styleUrl: 'post-internet-footer.scss',\r\n shadow: true,\r\n})\r\nexport class PostInternetFooter {\r\n @State() liveSupportEnabled = false;\r\n\r\n constructor() {\r\n this.liveSupportEnabled = this.unbluEnabled();\r\n\r\n /**\r\n * If the unblu script is not available, wait 5 seconds for it to load.\r\n * If it's still not there after 5 seconds, abandon efforts and don't\r\n * show the live support button.\r\n */\r\n if (!this.liveSupportEnabled) {\r\n let intervalId: number;\r\n let runs = 0;\r\n\r\n const checker = () => {\r\n const isEnabled = this.unbluEnabled();\r\n if (isEnabled) {\r\n this.liveSupportEnabled = true;\r\n }\r\n if (isEnabled || runs >= 5) {\r\n window.clearInterval(intervalId);\r\n }\r\n runs++;\r\n };\r\n\r\n intervalId = window.setInterval(checker, 1000);\r\n }\r\n }\r\n\r\n /**\r\n * Check if the unblu live support script is loaded\r\n * @returns Boolean\r\n */\r\n private unbluEnabled(): boolean {\r\n return typeof window['unbluLSLoad'] === 'function';\r\n }\r\n\r\n render() {\r\n // There is something wrong entirely\r\n if (!state) {\r\n console.warn(\r\n `Internet Footer: Could not load config. Please make sure that you included the <swisspost-internet-header></swisspost-internet-header> component.`,\r\n );\r\n return null;\r\n }\r\n\r\n // Config has not loaded yet\r\n if (!state.localizedConfig) {\r\n return null;\r\n }\r\n\r\n // There's no footer config\r\n if (!state.localizedConfig.footer) {\r\n console.warn(\r\n `Internet Footer: Current project \"${state.projectId}\" does not include a footer config. The footer will not be rendered. Remove `,\r\n document.querySelector('swisspost-internet-footer'),\r\n `from your markup or configure the footer in your portal config to stop seeing this warning.`,\r\n );\r\n return null;\r\n }\r\n\r\n const footerConfig = state.localizedConfig.footer;\r\n const customFooterConfig = state.localizedCustomConfig?.footer;\r\n\r\n return (\r\n <Host>\r\n <SvgSprite />\r\n <footer class=\"post-internet-footer light font-curve-regular\">\r\n <h2 class=\"visually-hidden\">{footerConfig.title}</h2>\r\n {customFooterConfig?.block && <PostFooterBlockCustom block={customFooterConfig?.block} />}\r\n <div class=\"footer-container container\">\r\n {footerConfig.block\r\n .filter(block => block.columnType === 'list')\r\n .map(block => (\r\n <PostFooterBlockList key={block.title} block={block} />\r\n ))}\r\n {footerConfig.block\r\n .filter(block => block.columnType === 'contact')\r\n .map(block => (\r\n <PostFooterBlockContact\r\n key={block.title}\r\n block={block}\r\n liveSupportEnabled={this.liveSupportEnabled}\r\n />\r\n ))}\r\n {footerConfig.block\r\n .filter(block => block.columnType === 'address')\r\n .map(block => (\r\n <PostFooterBlockAddress key={block.title} block={block} />\r\n ))}\r\n </div>\r\n <div class=\"copyright container\">\r\n <span class=\"bold\">{footerConfig.entry.text}</span>\r\n <ul class=\"no-list footer-meta-links\">\r\n {footerConfig.links\r\n ? footerConfig.links.map(link => (\r\n <li key={link.url}>\r\n <a class=\"nav-link\" href={link.url} target={link.target}>\r\n {link.text}\r\n </a>\r\n </li>\r\n ))\r\n : null}\r\n </ul>\r\n </div>\r\n </footer>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["postSkiplinksCss","PostSkiplinks","getMainId","_a","document","querySelector","getAttribute","setFocus","tagname","rootHost","this","host","closest","focusable","focusMain","focusSearch","focusLogin","render","config","state","localizedConfig","header","mainId","undefined","h","Host","class","href","logo","logoLink","accessKey","title","logoLinkTitle","SvgIcon","name","onClick","translations","navMainAriaLabel","translate","search","login"],"sources":["./src/components/post-skiplinks/post-skiplinks.scss?tag=post-skiplinks","./src/components/post-skiplinks/post-skiplinks.tsx"],"sourcesContent":[":host {\r\n display: block;\r\n}\r\n\r\n.skiplinks {\r\n a {\r\n position: absolute;\r\n top: 0.5rem;\r\n left: 0.5rem;\r\n clip: rect(0 0 0 0);\r\n width: 1px;\r\n overflow: hidden;\r\n display: flex;\r\n align-items: center;\r\n padding: 0.25rem;\r\n background: white;\r\n\r\n &:focus-visible {\r\n clip: unset;\r\n width: auto;\r\n }\r\n }\r\n}\r\n","import { Component, Host, h, Element } from '@stencil/core';\r\nimport { state } from '../../data/store';\r\nimport { FocusableElement } from '../../models/header.model';\r\nimport { translate } from '../../services/language.service';\r\nimport { SvgIcon } from '../../utils/svg-icon.component';\r\n\r\n@Component({\r\n tag: 'post-skiplinks',\r\n styleUrl: 'post-skiplinks.scss',\r\n shadow: false,\r\n})\r\nexport class PostSkiplinks {\r\n @Element() host: HTMLElement;\r\n\r\n private getMainId() {\r\n return document.querySelector('main[id]')?.getAttribute('id');\r\n }\r\n\r\n private setFocus(tagname: string) {\r\n const rootHost = this.host.closest('.post-internet-header');\r\n if (!rootHost) {\r\n return;\r\n }\r\n\r\n const focusable = rootHost.querySelector<FocusableElement>(tagname);\r\n if (focusable) {\r\n focusable.setFocus();\r\n }\r\n }\r\n\r\n private focusMain() {\r\n this.setFocus('post-main-navigation');\r\n }\r\n\r\n private focusSearch() {\r\n this.setFocus('post-search');\r\n }\r\n\r\n private focusLogin() {\r\n this.setFocus('post-klp-login-widget');\r\n }\r\n\r\n render() {\r\n const config = state.localizedConfig?.header;\r\n const mainId = this.getMainId();\r\n\r\n if (config === undefined) {\r\n return;\r\n }\r\n\r\n return (\r\n <Host>\r\n <nav class=\"skiplinks\">\r\n <ul class=\"no-list\">\r\n <li>\r\n <a class=\"nav-link\" href={config.logo.logoLink} accessKey=\"0\" title=\"[ALT + 0]\">\r\n <span>{config.logo.logoLinkTitle}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n <li>\r\n <a\r\n class=\"nav-link\"\r\n href=\"#post-internet-header-main-navigation\"\r\n accessKey=\"1\"\r\n title=\"[ALT + 1]\"\r\n onClick={() => this.focusMain()}\r\n >\r\n <span>{config.translations.navMainAriaLabel}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n {mainId ? (\r\n <li>\r\n <a class=\"nav-link\" href={`#${mainId}`} accessKey=\"2\" title=\"[ALT + 2]\">\r\n <span>{translate('Go to main content')}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n ) : null}\r\n {state.search ? (\r\n <li>\r\n <a\r\n class=\"nav-link\"\r\n href=\"#post-internet-header-search-button\"\r\n accessKey=\"3\"\r\n title=\"[ALT + 3]\"\r\n onClick={() => this.focusSearch()}\r\n >\r\n <span>{translate('Go to search')}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n ) : null}\r\n {state.login ? (\r\n <li>\r\n <a\r\n class=\"nav-link\"\r\n href=\"#post-klp-login-widget\"\r\n accessKey=\"4\"\r\n title=\"[ALT + 4]\"\r\n onClick={() => this.focusLogin()}\r\n >\r\n <span>{translate('Go to login')}</span>\r\n <SvgIcon name=\"pi-pointy-arrow-right\" />\r\n </a>\r\n </li>\r\n ) : null}\r\n </ul>\r\n </nav>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"qKAAA,MAAMA,EAAmB,sR,MCWZC,EAAa,M,yBAGhBC,Y,MACN,OAAOC,EAAAC,SAASC,cAAc,eAAW,MAAAF,SAAA,SAAAA,EAAEG,aAAa,K,CAGlDC,SAASC,GACf,MAAMC,EAAWC,KAAKC,KAAKC,QAAQ,yBACnC,IAAKH,EAAU,CACb,M,CAGF,MAAMI,EAAYJ,EAASJ,cAAgCG,GAC3D,GAAIK,EAAW,CACbA,EAAUN,U,EAINO,YACNJ,KAAKH,SAAS,uB,CAGRQ,cACNL,KAAKH,SAAS,c,CAGRS,aACNN,KAAKH,SAAS,wB,CAGhBU,S,MACE,MAAMC,GAASf,EAAAgB,EAAMC,mBAAe,MAAAjB,SAAA,SAAAA,EAAEkB,OACtC,MAAMC,EAASZ,KAAKR,YAEpB,GAAIgB,IAAWK,UAAW,CACxB,M,CAGF,OACEC,EAACC,EAAI,KACHD,EAAA,OAAKE,MAAM,aACTF,EAAA,MAAIE,MAAM,WACRF,EAAA,UACEA,EAAA,KAAGE,MAAM,WAAWC,KAAMT,EAAOU,KAAKC,SAAUC,UAAU,IAAIC,MAAM,aAClEP,EAAA,YAAON,EAAOU,KAAKI,eACnBR,EAACS,EAAO,CAACC,KAAK,4BAGlBV,EAAA,UACEA,EAAA,KACEE,MAAM,WACNC,KAAK,wCACLG,UAAU,IACVC,MAAM,YACNI,QAAS,IAAMzB,KAAKI,aAEpBU,EAAA,YAAON,EAAOkB,aAAaC,kBAC3Bb,EAACS,EAAO,CAACC,KAAK,4BAGjBZ,EACCE,EAAA,UACEA,EAAA,KAAGE,MAAM,WAAWC,KAAM,IAAIL,IAAUQ,UAAU,IAAIC,MAAM,aAC1DP,EAAA,YAAOc,EAAU,uBACjBd,EAACS,EAAO,CAACC,KAAK,4BAGhB,KACHf,EAAMoB,OACLf,EAAA,UACEA,EAAA,KACEE,MAAM,WACNC,KAAK,sCACLG,UAAU,IACVC,MAAM,YACNI,QAAS,IAAMzB,KAAKK,eAEpBS,EAAA,YAAOc,EAAU,iBACjBd,EAACS,EAAO,CAACC,KAAK,4BAGhB,KACHf,EAAMqB,MACLhB,EAAA,UACEA,EAAA,KACEE,MAAM,WACNC,KAAK,yBACLG,UAAU,IACVC,MAAM,YACNI,QAAS,IAAMzB,KAAKM,cAEpBQ,EAAA,YAAOc,EAAU,gBACjBd,EAACS,EAAO,CAACC,KAAK,4BAGhB,O"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["PostFooterBlockCustom","props","h","class","block","title","links","map","link","key","url","href","target","text","PostFooterBlockList","PostFooterBlockSocials","content","name","concat","icon","PostFooterBlockAddress","filter","address","innerHTML","length","getContentHours","hours","replace","callUnblu","window","console","error","LiveSupport","id","type","onClick","PostFooterBlockContact","index","isLiveSupport","liveSupportEnabled","number","describe","postInternetFooterCss","PostInternetFooter","exports","class_1","hostRef","_this","this","unbluEnabled","intervalId_1","runs_1","checker","isEnabled","clearInterval","setInterval","prototype","render","state","warn","localizedConfig","footer","projectId","document","querySelector","footerConfig","customFooterConfig","_a","localizedCustomConfig","Host","SvgSprite","columnType","entry"],"sources":["src/components/post-internet-footer/components/post-footer-block-custom.component.tsx","src/components/post-internet-footer/components/post-footer-block-list.component.tsx","src/components/post-internet-footer/components/post-footer-block-socials.component.tsx","src/components/post-internet-footer/components/post-footer-block-address.component.tsx","src/components/post-internet-footer/components/post-footer-block-contact.component.tsx","src/components/post-internet-footer/post-internet-footer.scss?tag=swisspost-internet-footer&encapsulation=shadow","src/components/post-internet-footer/post-internet-footer.tsx"],"sourcesContent":["import { h } from '@stencil/core';\r\nimport { CustomBlockEntity } from '../../../models/footer.model';\r\n\r\nexport const PostFooterBlockCustom = (props: { block: CustomBlockEntity }) => {\r\n return (\r\n <div class=\"pre-footer\">\r\n <div class=\"block-custom container\">\r\n <h3>{props.block.title}</h3>\r\n <ul class=\"no-list box link-list\">\r\n {props.block.links &&\r\n props.block.links.map(link => (\r\n <li key={link.url}>\r\n <a class=\"flyout-link\" href={link.url} target={link.target}>\r\n {link.text}\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { CustomBlockEntity } from '../../../models/footer.model';\r\n\r\nexport const PostFooterBlockList = (props: { block: CustomBlockEntity; key: string }) => {\r\n return (\r\n <div class=\"block-list\">\r\n <h3>{props.block.title}</h3>\r\n <ul class=\"no-list box link-list\">\r\n {props.block.links &&\r\n props.block.links.map(link => (\r\n <li key={link.url}>\r\n <a class=\"flyout-link\" href={link.url} target={link.target}>\r\n {link.text}\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { ContentEntity } from '../../../models/footer.model';\r\n\r\nexport const PostFooterBlockSocials = (props: { content: ContentEntity; key: string }) => {\r\n return (\r\n <div class=\"block-socials\">\r\n <h3>{props.content.title}</h3>\r\n <ul class=\"no-list socials\">\r\n {props.content.links.map(link => (\r\n <li key={link.url}>\r\n <a href={link.url} target={link.target}>\r\n <span class=\"visually-hidden\">{link.name}</span>\r\n <svg aria-hidden=\"true\">\r\n <use href={`#${link.icon}`} />\r\n </svg>\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { BlockEntity } from '../../../models/footer.model';\r\nimport { PostFooterBlockSocials } from './post-footer-block-socials.component';\r\n\r\nexport const PostFooterBlockAddress = (props: { block: BlockEntity; key: string }) => {\r\n return (\r\n <div class=\"block-address\">\r\n <h3>{props.block.title}</h3>\r\n {props.block.content &&\r\n props.block.content\r\n .filter(content => content.address)\r\n .map(content => (\r\n <address class=\"vcard\" key={content.address}>\r\n <span class=\"adr\" innerHTML={content.address}></span>\r\n </address>\r\n ))}\r\n {props.block.content &&\r\n props.block.content\r\n .filter(content => content.links && content.links.length)\r\n .map(content => <PostFooterBlockSocials key={content.name} content={content} />)}\r\n </div>\r\n );\r\n};\r\n","import { h } from '@stencil/core';\r\nimport { BlockEntity } from '../../../models/footer.model';\r\n\r\nconst getContentHours = (hours: string) => hours.replace(/<[^>]*>?/gm, '');\r\n\r\nconst callUnblu = () => {\r\n if (typeof window['unbluLSLoad'] === 'function') {\r\n window['unbluLSLoad']();\r\n } else {\r\n console.error(\r\n 'swisspost-internet-footer: The function \"unbluLSLoad\" could not be called because it is not available in the global scope. Did you include the unblu live chat script on your page?',\r\n );\r\n }\r\n};\r\n\r\nconst LiveSupport = (props: { hours: string }) => (\r\n <button\r\n class=\"hours btn btn-link\"\r\n id=\"liveSupport\"\r\n type=\"button\"\r\n onClick={callUnblu}\r\n innerHTML={getContentHours(props.hours)}\r\n ></button>\r\n);\r\n\r\nexport const PostFooterBlockContact = (props: {\r\n block: BlockEntity;\r\n liveSupportEnabled: boolean;\r\n key: string;\r\n}) => {\r\n return (\r\n <div class=\"block-contact\">\r\n <h3>{props.block.title}</h3>\r\n {props.block.content &&\r\n props.block.content.map((content, index) => {\r\n const isLiveSupport =\r\n index === props.block.content!.length - 1 && content.text === 'Live Support';\r\n if (isLiveSupport && !props.liveSupportEnabled) {\r\n return null;\r\n }\r\n return (\r\n <div class=\"content-row\" key={content.name}>\r\n {content.number ? <p class=\"number\">{content.number}</p> : null}\r\n {content.text ? <p class=\"text\">{content.text}</p> : null}\r\n {content.hours && isLiveSupport && <LiveSupport hours={content.hours} />}\r\n {content.hours && !isLiveSupport && (\r\n // Some values arrive in the form of <p>8&emdash;12</p> and without replace and innerHTML, tags get rendered as text (project=\"klp\" language=\"en\" environment=\"int02\")\r\n <p class=\"hours\" innerHTML={getContentHours(content.hours)}></p>\r\n )}\r\n {content.describe ? <p class=\"describe\">{content.describe}</p> : null}\r\n </div>\r\n );\r\n })}\r\n </div>\r\n );\r\n};\r\n","@use \"@swisspost/design-system-styles/components/grid\";\r\n@use \"@swisspost/design-system-styles/variables/color\";\r\n@use \"@swisspost/design-system-styles/placeholders/text\";\r\n@use \"@swisspost/design-system-styles/functions\";\r\n@use \"@swisspost/design-system-styles/components/button\";\r\n@use \"../../utils/utils.scss\";\r\n@use \"../../utils/mixins.scss\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\nh3 {\r\n font-size: inherit;\r\n margin-top: 0;\r\n}\r\n\r\n.btn.btn-link {\r\n padding-left: 0;\r\n padding-right: 0;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n}\r\n\r\n.post-internet-footer {\r\n font-size: 1rem;\r\n font-weight: 300;\r\n border-top: 2px solid color.$gray-10;\r\n}\r\n\r\n.pre-footer {\r\n padding-top: 2rem;\r\n padding-bottom: 2rem;\r\n border-bottom: 2px solid color.$gray-10;\r\n\r\n .block-custom,\r\n .link-list {\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 1rem 1.5rem;\r\n }\r\n\r\n h3,\r\n .link-list li {\r\n margin: 0;\r\n }\r\n}\r\n\r\n.footer-container {\r\n display: grid;\r\n grid-template-columns: 1fr 1fr 1fr 1fr;\r\n gap: 3.5rem 2rem;\r\n margin-top: 3.5rem;\r\n margin-bottom: 3.5rem;\r\n\r\n @include mixins.max(lg) {\r\n grid-template-columns: 1fr 1fr;\r\n }\r\n\r\n @include mixins.max(rg) {\r\n gap: 1.5rem 2rem;\r\n margin-top: 1.5rem;\r\n margin-bottom: 1.5rem;\r\n }\r\n}\r\n\r\n.block-list {\r\n @include mixins.max(sm) {\r\n grid-column: 1 / 3;\r\n }\r\n}\r\n\r\n.block-contact,\r\n.block-address {\r\n @include mixins.max(rg) {\r\n grid-column: 1 / 3;\r\n }\r\n}\r\n\r\n.block-socials {\r\n margin-top: 3.5rem;\r\n\r\n @include mixins.max(rg) {\r\n margin-top: 1.5rem;\r\n }\r\n}\r\n\r\naddress {\r\n font-style: normal;\r\n}\r\n\r\n.link-list {\r\n li {\r\n margin: 1rem 0;\r\n }\r\n a {\r\n display: block;\r\n text-decoration: none;\r\n color: color.$gray-60;\r\n transition: color 200ms;\r\n\r\n &:hover {\r\n color: black;\r\n }\r\n }\r\n}\r\n\r\n.content-row {\r\n padding: 0.5rem 0;\r\n\r\n h3 + & {\r\n padding-top: 0;\r\n }\r\n\r\n &:last-child {\r\n padding-bottom: 0;\r\n }\r\n\r\n & + & {\r\n border-top: 1px solid color.$gray-10;\r\n }\r\n\r\n p,\r\n button {\r\n margin: 0.25rem;\r\n }\r\n}\r\n\r\n.text {\r\n font-weight: 700;\r\n}\r\n\r\n.describe {\r\n font-size: 0.8125rem;\r\n color: color.$gray-60;\r\n font-weight: 400;\r\n}\r\n\r\n.number {\r\n font-size: 1.25rem;\r\n}\r\n\r\n.socials {\r\n display: inline-grid;\r\n grid-auto-flow: row;\r\n grid-template-columns: repeat(4, 1fr);\r\n gap: 1rem 1.5rem;\r\n\r\n a {\r\n display: block;\r\n color: color.$gray-60;\r\n transition: color 200ms;\r\n\r\n &:hover,\r\n &:focus {\r\n color: black;\r\n }\r\n }\r\n\r\n svg {\r\n display: block;\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n }\r\n}\r\n\r\n.copyright {\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 0.5rem 1.5rem;\r\n margin-top: 2rem;\r\n margin-bottom: 2rem;\r\n font-size: functions.px-to-rem(12px);\r\n}\r\n\r\n.footer-meta-links {\r\n display: flex;\r\n flex-wrap: wrap;\r\n gap: 0.5rem;\r\n font-weight: 400;\r\n}\r\n","import { Component, Host, h, State } from '@stencil/core';\r\nimport { state } from '../../data/store';\r\nimport { SvgSprite } from '../../utils/svg-sprite.component';\r\nimport { PostFooterBlockCustom } from './components/post-footer-block-custom.component';\r\nimport { PostFooterBlockList } from './components/post-footer-block-list.component';\r\nimport { PostFooterBlockAddress } from './components/post-footer-block-address.component';\r\nimport { PostFooterBlockContact } from './components/post-footer-block-contact.component';\r\n\r\n@Component({\r\n tag: 'swisspost-internet-footer',\r\n styleUrl: 'post-internet-footer.scss',\r\n shadow: true,\r\n})\r\nexport class PostInternetFooter {\r\n @State() liveSupportEnabled = false;\r\n\r\n constructor() {\r\n this.liveSupportEnabled = this.unbluEnabled();\r\n\r\n /**\r\n * If the unblu script is not available, wait 5 seconds for it to load.\r\n * If it's still not there after 5 seconds, abandon efforts and don't\r\n * show the live support button.\r\n */\r\n if (!this.liveSupportEnabled) {\r\n let intervalId: number;\r\n let runs = 0;\r\n\r\n const checker = () => {\r\n const isEnabled = this.unbluEnabled();\r\n if (isEnabled) {\r\n this.liveSupportEnabled = true;\r\n }\r\n if (isEnabled || runs >= 5) {\r\n window.clearInterval(intervalId);\r\n }\r\n runs++;\r\n };\r\n\r\n intervalId = window.setInterval(checker, 1000);\r\n }\r\n }\r\n\r\n /**\r\n * Check if the unblu live support script is loaded\r\n * @returns Boolean\r\n */\r\n private unbluEnabled(): boolean {\r\n return typeof window['unbluLSLoad'] === 'function';\r\n }\r\n\r\n render() {\r\n // There is something wrong entirely\r\n if (!state) {\r\n console.warn(\r\n `Internet Footer: Could not load config. Please make sure that you included the <swisspost-internet-header></swisspost-internet-header> component.`,\r\n );\r\n return null;\r\n }\r\n\r\n // Config has not loaded yet\r\n if (!state.localizedConfig) {\r\n return null;\r\n }\r\n\r\n // There's no footer config\r\n if (!state.localizedConfig.footer) {\r\n console.warn(\r\n `Internet Footer: Current project \"${state.projectId}\" does not include a footer config. The footer will not be rendered. Remove `,\r\n document.querySelector('swisspost-internet-footer'),\r\n `from your markup or configure the footer in your portal config to stop seeing this warning.`,\r\n );\r\n return null;\r\n }\r\n\r\n const footerConfig = state.localizedConfig.footer;\r\n const customFooterConfig = state.localizedCustomConfig?.footer;\r\n\r\n return (\r\n <Host>\r\n <SvgSprite />\r\n <footer class=\"post-internet-footer light font-curve-regular\">\r\n <h2 class=\"visually-hidden\">{footerConfig.title}</h2>\r\n {customFooterConfig?.block && <PostFooterBlockCustom block={customFooterConfig?.block} />}\r\n <div class=\"footer-container container\">\r\n {footerConfig.block\r\n .filter(block => block.columnType === 'list')\r\n .map(block => (\r\n <PostFooterBlockList key={block.title} block={block} />\r\n ))}\r\n {footerConfig.block\r\n .filter(block => block.columnType === 'contact')\r\n .map(block => (\r\n <PostFooterBlockContact\r\n key={block.title}\r\n block={block}\r\n liveSupportEnabled={this.liveSupportEnabled}\r\n />\r\n ))}\r\n {footerConfig.block\r\n .filter(block => block.columnType === 'address')\r\n .map(block => (\r\n <PostFooterBlockAddress key={block.title} block={block} />\r\n ))}\r\n </div>\r\n <div class=\"copyright container\">\r\n <span class=\"bold\">{footerConfig.entry.text}</span>\r\n <ul class=\"no-list footer-meta-links\">\r\n {footerConfig.links\r\n ? footerConfig.links.map(link => (\r\n <li key={link.url}>\r\n <a class=\"nav-link\" href={link.url} target={link.target}>\r\n {link.text}\r\n </a>\r\n </li>\r\n ))\r\n : null}\r\n </ul>\r\n </div>\r\n </footer>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["LogoSprite","h","style","display","id","viewBox","fill","d","FaviconSvg","props","class","className","href","postLogoCss","PostLogo","exports","class_1","hostRef","_this","this","throttledResize","throttle","handleResize","window","addEventListener","passive","resizeObserver","ResizeObserver","bind","prototype","componentDidLoad","mainNavControls","_a","host","parentElement","querySelector","observe","disconnectedCallback","removeEventListener","disconnect","menuButton","_b","showFaviconLogo","innerWidth","clientWidth","render","state","localizedConfig","header","logo","undefined","config","Host","logoLink","logoLinkTitle","src","logoSvg","alt","logoText"],"sources":["src/components/post-logo/logo-sprite.component.tsx","src/components/post-logo/post-logo.scss?tag=post-logo&encapsulation=shadow","src/components/post-logo/post-logo.tsx"],"sourcesContent":["import { h } from '@stencil/core';\r\n\r\nexport const LogoSprite = () => (\r\n <svg aria-hidden=\"true\" style={{ display: 'none' }}>\r\n <symbol id=\"favicon\" viewBox=\"0 0 48 48\">\r\n <g clip-path=\"url(#a)\">\r\n <path fill=\"#FC0\" d=\"M47.2 0H0v47.2h47.2V0Z\" />\r\n <path\r\n fill=\"#fff\"\r\n fill-rule=\"evenodd\"\r\n d=\"m18.68 35.91 1.48-7.02H6.42l-1.47 7.02h13.73Z\"\r\n clip-rule=\"evenodd\"\r\n />\r\n <path\r\n fill=\"#000\"\r\n fill-rule=\"evenodd\"\r\n d=\"M16.96 16.56c-.47-.07-.94-.1-1.42-.1H11.6L8.5 31.1h3.1l.95-4.47h1.8c.74.02 1.48-.07 2.18-.27a5.8 5.8 0 0 0 4-4.59c.49-2.73-.87-4.76-3.57-5.2Zm.47 5.06a2.63 2.63 0 0 1-2.06 2.22c-.33.06-.66.1-1 .1h-1.25l1-4.78h1.36c.31-.01.62.03.92.11.77.26 1.24 1.03 1.03 2.35\"\r\n clip-rule=\"evenodd\"\r\n />\r\n <path\r\n fill=\"red\"\r\n fill-rule=\"evenodd\"\r\n d=\"m34.5 16.43 1.86-8.84H24.63l-2.45 11.58h2.9l1.87-8.84h5.93L31 19.17h8.8l-1.17 5.53h-8.75l-1.75 8.28H21.5l-.57 2.78h9.54l1.75-8.3h8.72l2.34-11.03H34.5Z\"\r\n clip-rule=\"evenodd\"\r\n />\r\n </g>\r\n <defs>\r\n <clipPath id=\"a\">\r\n <path fill=\"#fff\" d=\"M0 0h47.2v47.2H0z\" />\r\n </clipPath>\r\n </defs>\r\n </symbol>\r\n </svg>\r\n);\r\n\r\nexport const FaviconSvg = (props: { className?: string }) => (\r\n <svg viewBox=\"0 0 48 48\" class={props.className} aria-hidden=\"true\">\r\n <use href=\"#favicon\" />\r\n </svg>\r\n);\r\n","@use \"@swisspost/design-system-styles/variables/color\";\r\n@use \"../../utils/utils.scss\";\r\n@use \"../../utils/mixins.scss\";\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.logo {\r\n display: block;\r\n align-items: center;\r\n background: color.$yellow;\r\n\r\n}\r\n\r\nsvg,\r\n.logo-svg {\r\n display: block;\r\n height: var(--header-height);\r\n}\r\n\r\n.square-logo {\r\n display: block;\r\n\r\n @include mixins.min(sm) {\r\n display: none;\r\n }\r\n}\r\n\r\n.full-logo {\r\n display: none;\r\n\r\n @include mixins.min(sm) {\r\n display: block;\r\n }\r\n}\r\n","import { Component, Host, h, State, Element } from '@stencil/core';\r\nimport { throttle } from 'throttle-debounce';\r\nimport { state } from '../../data/store';\r\nimport { LogoSprite, FaviconSvg } from './logo-sprite.component';\r\n\r\n@Component({\r\n tag: 'post-logo',\r\n styleUrl: 'post-logo.scss',\r\n shadow: true,\r\n})\r\nexport class PostLogo {\r\n @State() showFaviconLogo: boolean;\r\n @Element() host: HTMLPostLogoElement;\r\n private throttledResize: throttle<() => void>;\r\n private resizeObserver: ResizeObserver;\r\n\r\n constructor() {\r\n // Register window resize event listener and a resize observer on the mainnav controls (they change size while controls are being loaded) to display an accurately sized logo\r\n this.throttledResize = throttle(300, () => this.handleResize());\r\n window.addEventListener('resize', this.throttledResize, { passive: true });\r\n this.resizeObserver = new ResizeObserver(this.handleResize.bind(this));\r\n\r\n // Initially call the resize handler\r\n this.handleResize();\r\n }\r\n\r\n componentDidLoad() {\r\n const mainNavControls = this.host.parentElement?.querySelector('.main-navigation-controls');\r\n if (mainNavControls) {\r\n this.resizeObserver.observe(mainNavControls);\r\n }\r\n }\r\n\r\n disconnectedCallback() {\r\n window.removeEventListener('resize', this.throttledResize);\r\n this.resizeObserver.disconnect();\r\n }\r\n\r\n handleResize() {\r\n const mainNavControls = this.host.parentElement?.querySelector('.main-navigation-controls');\r\n const menuButton = this.host.parentElement?.querySelector('.menu-button');\r\n if (mainNavControls && menuButton)\r\n this.showFaviconLogo =\r\n window.innerWidth - (150 + mainNavControls.clientWidth + menuButton.clientWidth) <= 0;\r\n }\r\n\r\n render() {\r\n if (state.localizedConfig?.header.logo === undefined) return;\r\n const config = state.localizedConfig.header.logo;\r\n\r\n return (\r\n <Host>\r\n <LogoSprite />\r\n <a href={config.logoLink} class=\"logo\">\r\n <span class=\"visually-hidden\">{config.logoLinkTitle}</span>\r\n <FaviconSvg className=\"square-logo\" />\r\n <img class=\"logo-svg full-logo\" src={config.logoSvg} alt={config.logoText} />\r\n </a>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"sPAEO,IAAMA,EAAa,kBACxBC,EAAA,qBAAiB,OAAOC,MAAO,CAAEC,QAAS,SACxCF,EAAA,UAAQG,GAAG,UAAUC,QAAQ,aAC3BJ,EAAA,iBAAa,WACXA,EAAA,QAAMK,KAAK,OAAOC,EAAE,2BACpBN,EAAA,QACEK,KAAK,OAAM,YACD,UACVC,EAAE,gDAA+C,YACvC,YAEZN,EAAA,QACEK,KAAK,OAAM,YACD,UACVC,EAAE,sQAAqQ,YAC7P,YAEZN,EAAA,QACEK,KAAK,MAAK,YACA,UACVC,EAAE,yJAAwJ,YAChJ,aAGdN,EAAA,YACEA,EAAA,YAAUG,GAAG,KACXH,EAAA,QAAMK,KAAK,OAAOC,EAAE,yBA1BJ,EAiCnB,IAAMC,EAAa,SAACC,GAA6B,OACtDR,EAAA,OAAKI,QAAQ,YAAYK,MAAOD,EAAME,UAAS,cAAc,QAC3DV,EAAA,OAAKW,KAAK,aAF0C,ECnCxD,IAAMC,EAAc,mtG,ICUPC,EAAQC,EAAA,uBAMnB,SAAAC,EAAAC,GAAA,IAAAC,EAAAC,K,yCAEEA,KAAKC,gBAAkBC,EAAS,KAAK,WAAM,OAAAH,EAAKI,cAAL,IAC3CC,OAAOC,iBAAiB,SAAUL,KAAKC,gBAAiB,CAAEK,QAAS,OACnEN,KAAKO,eAAiB,IAAIC,eAAeR,KAAKG,aAAaM,KAAKT,OAGhEA,KAAKG,c,CAGPN,EAAAa,UAAAC,iBAAA,W,MACE,IAAMC,GAAkBC,EAAAb,KAAKc,KAAKC,iBAAa,MAAAF,SAAA,SAAAA,EAAEG,cAAc,6BAC/D,GAAIJ,EAAiB,CACnBZ,KAAKO,eAAeU,QAAQL,E,GAIhCf,EAAAa,UAAAQ,qBAAA,WACEd,OAAOe,oBAAoB,SAAUnB,KAAKC,iBAC1CD,KAAKO,eAAea,Y,EAGtBvB,EAAAa,UAAAP,aAAA,W,QACE,IAAMS,GAAkBC,EAAAb,KAAKc,KAAKC,iBAAa,MAAAF,SAAA,SAAAA,EAAEG,cAAc,6BAC/D,IAAMK,GAAaC,EAAAtB,KAAKc,KAAKC,iBAAa,MAAAO,SAAA,SAAAA,EAAEN,cAAc,gBAC1D,GAAIJ,GAAmBS,EACrBrB,KAAKuB,gBACHnB,OAAOoB,YAAc,IAAMZ,EAAgBa,YAAcJ,EAAWI,cAAgB,C,EAG1F5B,EAAAa,UAAAgB,OAAA,W,MACE,KAAIb,EAAAc,EAAMC,mBAAe,MAAAf,SAAA,SAAAA,EAAEgB,OAAOC,QAASC,UAAW,OACtD,IAAMC,EAASL,EAAMC,gBAAgBC,OAAOC,KAE5C,OACEhD,EAACmD,EAAI,KACHnD,EAACD,EAAU,MACXC,EAAA,KAAGW,KAAMuC,EAAOE,SAAU3C,MAAM,QAC9BT,EAAA,QAAMS,MAAM,mBAAmByC,EAAOG,eACtCrD,EAACO,EAAU,CAACG,UAAU,gBACtBV,EAAA,OAAKS,MAAM,qBAAqB6C,IAAKJ,EAAOK,QAASC,IAAKN,EAAOO,Y,yHA9CtD,I"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["postKlpLoginWidgetCss","PostKlpLoginWidget","exports","class_1","prototype","componentDidLoad","module","import","initializeKLPLoginWidget","_c","sent","_a","state","localizedConfig","header","loginWidgetOptions","undefined","Object","assign","environment","setFocus","loginButton","this","host","shadowRoot","querySelectorAll","length","focus","render","_b","console","warn","concat","projectId","h","Host","SvgSprite","class","id"],"sources":["src/components/post-klp-login-widget/post-klp-login-widget.scss?tag=post-klp-login-widget&encapsulation=shadow","src/components/post-klp-login-widget/post-klp-login-widget.tsx"],"sourcesContent":["@use '@swisspost/design-system-styles/variables/color';\r\n@use '@swisspost/design-system-styles/components/button';\r\n@use '../../utils/utils.scss';\r\n@use '../../utils/mixins.scss';\r\n\r\n@use './widget-styles.scss';\r\n\r\n:host {\r\n display: block;\r\n}\r\n\r\n.widget-wrapper {\r\n position: relative;\r\n}\r\n\r\n.widget-wrapper,\r\n#post-klp-login-widget,\r\n.klp-widget-anonymous,\r\n.klp-widget-anonymous__wrapper,\r\n.klp-widget-anonymous__wrapper a {\r\n height: 100%;\r\n}\r\n\r\n.klp-widget-anonymous__wrapper a {\r\n display: flex;\r\n align-items: center;\r\n color: color.$gray-80;\r\n text-decoration: none;\r\n padding: 0 1rem;\r\n transition: color 200ms;\r\n\r\n &:hover,\r\n &:focus {\r\n color: black;\r\n }\r\n\r\n @include mixins.min(lg) {\r\n padding: 0 1.125rem;\r\n }\r\n\r\n span {\r\n margin-right: 0.5rem;\r\n }\r\n\r\n svg {\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n }\r\n}\r\n\r\n.klp-widget-anonymous__text {\r\n @extend %visually-hidden;\r\n\r\n @include mixins.between(rg, lg) {\r\n @include mixins.reset-visually-hidden();\r\n }\r\n\r\n @include mixins.min(xl) {\r\n @include mixins.reset-visually-hidden();\r\n }\r\n}\r\n\r\n#post-klp-login-widget .nameAndInfoWrapper {\r\n position: relative;\r\n display: flex;\r\n\r\n align-items: flex-start;\r\n width: 224px;\r\n height: 78px;\r\n padding: 16px 0px;\r\n line-height: 46px;\r\n flex-direction: column;\r\n justify-content: center;\r\n}\r\n\r\n.modal-content {\r\n position: relative;\r\n}\r\n\r\n.modal-text-container {\r\n padding-top: 3rem;\r\n}\r\n\r\n#post-klp-login-widget .modal-button-container {\r\n height: auto;\r\n padding: 2rem;\r\n\r\n & > .item-centered {\r\n justify-content: center;\r\n }\r\n}\r\n","import { Component, Host, h, Method, Element } from '@stencil/core';\r\nimport { state } from '../../data/store';\r\nimport { IsFocusable } from '../../models/header.model';\r\nimport { SvgSprite } from '../../utils/svg-sprite.component';\r\n\r\n@Component({\r\n tag: 'post-klp-login-widget',\r\n styleUrl: 'post-klp-login-widget.scss',\r\n scoped: false,\r\n shadow: true,\r\n})\r\nexport class PostKlpLoginWidget implements IsFocusable {\r\n @Element() host: HTMLElement;\r\n\r\n async componentDidLoad() {\r\n const { initializeKLPLoginWidget } = await import('./klp-widget.controller');\r\n if (state.localizedConfig?.header.loginWidgetOptions === undefined) return;\r\n initializeKLPLoginWidget('post-klp-login-widget', {\r\n ...state.localizedConfig.header.loginWidgetOptions,\r\n environment: state.environment,\r\n });\r\n }\r\n\r\n /**\r\n * Sets the focus on the login button\r\n */\r\n @Method()\r\n async setFocus() {\r\n const loginButton = this.host.shadowRoot?.querySelectorAll<HTMLElement>(\r\n '.klp-widget-anonymous__wrapper a, .klp-widget-authenticated-session a',\r\n );\r\n if (loginButton && loginButton.length) {\r\n loginButton[0].focus();\r\n }\r\n }\r\n\r\n render() {\r\n if (!state?.localizedConfig?.header?.loginWidgetOptions) {\r\n console.warn(\r\n `Internet Header: the login widget is not configured in your portal config. Use <swisspost-internet-header project=\"${state.projectId}\" login=\"false\"></swisspost-internet-header> to turn off the login widget or configure it via the portal config.`,\r\n );\r\n return null;\r\n }\r\n return (\r\n <Host>\r\n <SvgSprite />\r\n <div class=\"widget-wrapper\" data-hj-suppress>\r\n <div id=\"post-klp-login-widget\"></div>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"ssDAAA,IAAMA,EAAwB,umqC,ICWjBC,EAAkBC,EAAA,mC,wBAGvBC,EAAAC,UAAAC,iBAAN,W,oHACuC,SAAMC,EAAAC,OAAO,2B,OAA1CC,EAA6BC,EAAAC,OAAuCF,yBAC5E,KAAIG,EAAAC,EAAMC,mBAAe,MAAAF,SAAA,SAAAA,EAAEG,OAAOC,sBAAuBC,UAAW,UACpER,EAAyB,wBAAuBS,OAAAC,OAAAD,OAAAC,OAAA,GAC3CN,EAAMC,gBAAgBC,OAAOC,oBAAkB,CAClDI,YAAaP,EAAMO,e,kBAQjBhB,EAAAC,UAAAgB,SAAN,W,6FACQC,GAAcV,EAAAW,KAAKC,KAAKC,cAAU,MAAAb,SAAA,SAAAA,EAAEc,iBACxC,yEAEF,GAAIJ,GAAeA,EAAYK,OAAQ,CACrCL,EAAY,GAAGM,O,kBAInBxB,EAAAC,UAAAwB,OAAA,W,QACE,MAAKC,GAAAlB,EAAAC,IAAK,MAALA,SAAK,SAALA,EAAOC,mBAAe,MAAAF,SAAA,SAAAA,EAAEG,UAAM,MAAAe,SAAA,SAAAA,EAAEd,oBAAoB,CACvDe,QAAQC,KACN,sHAAAC,OAAsHpB,EAAMqB,UAAS,qHAEvI,OAAO,I,CAET,OACEC,EAACC,EAAI,KACHD,EAACE,EAAS,MACVF,EAAA,OAAKG,MAAM,iBAAgB,yBACzBH,EAAA,OAAKI,GAAG,2B,yHApCa,I"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["userPrefersReducedMotion","window","matchMedia","matches","elementHasTransition","element","transition","style","getComputedStyle","includes"],"sources":["./src/services/ui.service.ts"],"sourcesContent":["/**\r\n * Check if an element with `text-overflow: ellipsis;` is fully displayed or concatenated\r\n * https://stackoverflow.com/questions/7738117/html-text-overflow-ellipsis-detection\r\n *\r\n * @param element Element to check. This is the element with the `text-overflow: ellipsis;` style\r\n * @returns\r\n */\r\nexport const isConcatenated = (element: HTMLElement) => element.offsetWidth < element.scrollWidth;\r\n\r\n/**\r\n * Check if user preferes reduced motion\r\n * Windows 10: `Windows Settings` > `Ease of Access` > `Display` > `Simplify and Personalize Windows` > `Show animations in Windows`\r\n *\r\n * @returns\r\n */\r\nexport const userPrefersReducedMotion = () => {\r\n return window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n};\r\n\r\n/**\r\n * Check if an element has a transition applied\r\n *\r\n * @param element Element to check. This is the element with the `transition` style\r\n * @param transition Specific transition to check for (e.g. `translate`)\r\n * @returns\r\n */\r\nexport const elementHasTransition = (element: HTMLElement, transition: string) => {\r\n const style = window.getComputedStyle(element);\r\n\r\n // If not specified otherwise, the default value of transition is 'all 0s ease 0s',\r\n return style.transition !== 'all 0s ease 0s' && style.transition.includes(transition);\r\n};\r\n"],"mappings":"MAeaA,EAA2B,IAC/BC,OAAOC,WAAW,oCAAoCC,Q,MAUlDC,EAAuB,CAACC,EAAsBC,KACzD,MAAMC,EAAQN,OAAOO,iBAAiBH,GAGtC,OAAOE,EAAMD,aAAe,kBAAoBC,EAAMD,WAAWG,SAASH,EAAW,S"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["uniqueId","exports","num","prefix","prefersReducedMotion","window","matchMedia","matches"],"sources":["src/utils/utils.ts"],"sourcesContent":["/**\r\n * Generates a (sequential) unique ID. If prefix is given, the ID is appended to it.\r\n *\r\n * @param prefix The value to prefix the ID with\r\n * @returns Unique ID\r\n */\r\nexport const uniqueId = (() => {\r\n let num = 0;\r\n return function (prefix?: string) {\r\n prefix = prefix || '';\r\n num += 1;\r\n return prefix + num;\r\n };\r\n})();\r\n\r\nexport const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\r\n"],"mappings":"2EAMaA,EAAQC,EAAA,IAAG,WACtB,IAAIC,EAAM,EACV,OAAO,SAAUC,GACfA,EAASA,GAAU,GACnBD,GAAO,EACP,OAAOC,EAASD,C,CAEnB,CAPuB,I,IASXE,EAAoBH,EAAA,IAAGI,OAAOC,WAAW,oCAAoCC,Q"}
@@ -1,2 +0,0 @@
1
- System.register(["./p-1b8f9bc8.system.js"],(function(e){"use strict";var n,t;return{setters:[function(e){n=e.a;t=e.f}],execute:function(){var r=function(e,n,t){var r=e.get(n);if(!r){e.set(n,[t])}else if(!r.includes(t)){r.push(t)}};var u=function(e,n){var t;return function(){var r=[];for(var u=0;u<arguments.length;u++){r[u]=arguments[u]}if(t){clearTimeout(t)}t=setTimeout((function(){t=0;e.apply(void 0,r)}),n)}};var i=function(e){return!("isConnected"in e)||e.isConnected};var o=u((function(e){for(var n=0,t=e.keys();n<t.length;n++){var r=t[n];e.set(r,e.get(r).filter(i))}}),2e3);var f=function(){if(typeof n!=="function"){return{}}var e=new Map;return{dispose:function(){return e.clear()},get:function(t){var u=n();if(u){r(e,t,u)}},set:function(n){var r=e.get(n);if(r){e.set(n,r.filter(t))}o(e)},reset:function(){e.forEach((function(e){return e.forEach(t)}));o(e)}}};var s=function(e,n){if(n===void 0){n=function(e,n){return e!==n}}var t=new Map(Object.entries(e!==null&&e!==void 0?e:{}));var r={dispose:[],get:[],set:[],reset:[]};var u=function(){t=new Map(Object.entries(e!==null&&e!==void 0?e:{}));r.reset.forEach((function(e){return e()}))};var i=function(){r.dispose.forEach((function(e){return e()}));u()};var o=function(e){r.get.forEach((function(n){return n(e)}));return t.get(e)};var f=function(e,u){var i=t.get(e);if(n(u,i,e)){t.set(e,u);r.set.forEach((function(n){return n(e,u,i)}))}};var s=typeof Proxy==="undefined"?{}:new Proxy(e,{get:function(e,n){return o(n)},ownKeys:function(e){return Array.from(t.keys())},getOwnPropertyDescriptor:function(){return{enumerable:true,configurable:true}},has:function(e,n){return t.has(n)},set:function(e,n,t){f(n,t);return true}});var a=function(e,n){r[e].push(n);return function(){c(r[e],n)}};var v=function(n,t){var r=a("set",(function(e,r){if(e===n){t(r)}}));var u=a("reset",(function(){return t(e[n])}));return function(){r();u()}};var g=function(){var e=[];for(var n=0;n<arguments.length;n++){e[n]=arguments[n]}var t=e.reduce((function(e,n){if(n.set){e.push(a("set",n.set))}if(n.get){e.push(a("get",n.get))}if(n.reset){e.push(a("reset",n.reset))}if(n.dispose){e.push(a("dispose",n.dispose))}return e}),[]);return function(){return t.forEach((function(e){return e()}))}};var l=function(e){var n=t.get(e);r.set.forEach((function(t){return t(e,n,n)}))};return{state:s,get:o,set:f,on:a,onChange:v,use:g,dispose:i,reset:u,forceUpdate:l}};var c=function(e,n){var t=e.indexOf(n);if(t>=0){e[t]=e[e.length-1];e.length--}};var a=function(e,n){var t=s(e,n);t.use(f());return t};var v=a({projectId:null,currentLanguage:null,localizedConfig:null,environment:"prod",search:true,login:true,meta:true}),g=v.state,l=v.reset,p=v.dispose;e({s:g,d:p})}}}));
2
- //# sourceMappingURL=p-c69923cd.system.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["appendToMap","map","propName","value","items","get","set","includes","push","debounce","fn","ms","timeoutId","args","_i","arguments","length","clearTimeout","setTimeout","apply","isConnected","maybeElement","cleanupElements","_a","keys","key","filter","stencilSubscription","getRenderingRef","elmsToUpdate","Map","dispose","clear","elm","elements","forceUpdate","reset","forEach","elms","createObservableMap","defaultState","shouldUpdate","a","b","states","Object","entries","handlers","cb","oldValue","state","Proxy","_","ownKeys","Array","from","getOwnPropertyDescriptor","enumerable","configurable","has","on","eventName","callback","removeFromArray","onChange","unSet","newValue","unReset","use","subscriptions","unsubs","reduce","subscription","unsub","array","item","index","indexOf","createStore","projectId","currentLanguage","localizedConfig","environment","search","login","meta","exports","s","d"],"sources":["../../node_modules/.pnpm/@stencil+store@1.5.0_@stencil+core@3.0.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 createObservableMap = (defaultState, shouldUpdate = (a, b) => a !== b) => {\n let states = new Map(Object.entries(defaultState !== null && defaultState !== void 0 ? defaultState : {}));\n const handlers = {\n dispose: [],\n get: [],\n set: [],\n reset: [],\n };\n const reset = () => {\n states = new Map(Object.entries(defaultState !== null && defaultState !== void 0 ? defaultState : {}));\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(defaultState, {\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 const unReset = on('reset', () => cb(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';\r\nimport { Environment, ILocalizedConfig, ILocalizedCustomConfig } from '../models/general.model';\r\nimport { NavMainEntity } from '../models/header.model';\r\nimport { IAvailableLanguage } from '../models/language.model';\r\n\r\nexport interface HeaderState {\r\n localizedConfig: ILocalizedConfig | null;\r\n currentLanguage: string | null;\r\n projectId: string | null;\r\n environment: Environment;\r\n search: boolean;\r\n login: boolean;\r\n meta: boolean;\r\n languageSwitchOverrides?: IAvailableLanguage[];\r\n localizedCustomConfig?: ILocalizedCustomConfig;\r\n osFlyoutOverrides?: NavMainEntity;\r\n}\r\n\r\nexport const { state, reset, dispose } = createStore<HeaderState>({\r\n projectId: null,\r\n currentLanguage: null,\r\n localizedConfig: null,\r\n environment: 'prod',\r\n search: true,\r\n login: true,\r\n meta: true,\r\n});\r\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["LevelOneAction","props","TagName","level","url","h","class","active","isActiveOverride","focus","isOpen","href","title","_a","trim","_b","_c","text","undefined","tabindex","noFlyout","onTouchEnd","e","onKeyDown","onClick","postMainNavigationCss","PostMainNavigation","exports","this","resizeTimer","mouseLeaveTimer","mouseEnterTimer","class_1","prototype","connectedCallback","_this","throttledResize","throttle","handleResize","window","addEventListener","passive","setWindowHeight","disconnectedCallback","removeEventListener","clearAllBodyScrollLocks","clearTimeout","host","classList","add","setTimeout","remove","style","setProperty","concat","innerHeight","openFlyout","id","flyout","shadowRoot","getElementById","activeFlyout","addFlyoutAnimation","flyoutToggled","emit","closeFlyout","userPrefersReducedMotion","removeFlyoutAnimation","once","isActiveFlyout","handleMouseEnter","innerWidth","length","handleMouseLeave","handleTouchEnd","event","cancelable","preventDefault","handleKeyPress","key","handleClick","setBodyScroll","mobileMenuOpen","disableBodyScroll","flyoutElement","enableBodyScroll","toggleDropdown","force","dropdownToggled","open","element","setFocus","firstLink","querySelector","setActiveFlyout","render","state","localizedConfig","header","headerConfig","Host","SvgSprite","ref","el","translations","navMainAriaLabel","navMain","map","levelOne","onMouseLeave","onMouseEnter","SvgIcon","name","classNames","backButtonText","mobileNavToggleClose","linkList","link","target"],"sources":["src/components/post-main-navigation/components/level-one-action.component.tsx","src/components/post-main-navigation/post-main-navigation.scss?tag=post-main-navigation&encapsulation=shadow","src/components/post-main-navigation/post-main-navigation.tsx"],"sourcesContent":["import { h } from '@stencil/core';\r\nimport { NavMainEntity } from '../../../models/header.model';\r\n\r\nexport const LevelOneAction = (props: {\r\n level: NavMainEntity;\r\n isOpen: boolean;\r\n onTouchEnd: (e: any) => void;\r\n onKeyDown: (e: any) => void;\r\n onClick: (e: any) => void;\r\n}) => {\r\n const TagName = props.level.url ? 'a' : 'button';\r\n\r\n return (\r\n <TagName\r\n class={{\r\n 'main-link': true,\r\n 'active': !!props.level.isActiveOverride,\r\n 'focus': props.isOpen,\r\n }}\r\n href={props.level.url}\r\n title={\r\n props.level.title?.trim() && props.level.title?.trim() !== props.level.text?.trim()\r\n ? props.level.title\r\n : undefined\r\n }\r\n tabindex={props.level.url ? undefined : 0}\r\n aria-haspopup={!props.level.noFlyout + ''}\r\n aria-expanded={props.level.noFlyout ? null : props.isOpen + ''}\r\n onTouchEnd={e => props.onTouchEnd(e)}\r\n onKeyDown={e => props.onKeyDown(e)}\r\n onClick={e => props.onClick(e)}\r\n >\r\n <span>{props.level.text}</span>\r\n <svg aria-hidden=\"true\">\r\n <use href=\"#pi-pointy-arrow-right\" />\r\n </svg>\r\n </TagName>\r\n );\r\n};\r\n","@use '@swisspost/design-system-styles/variables/color';\r\n@use '@swisspost/design-system-styles/placeholders/text';\r\n@use '@swisspost/design-system-styles/functions';\r\n@use '../../utils/utils.scss';\r\n@use '../../utils/mixins.scss';\r\n\r\n:host {\r\n --host-window-height: var(--window-height, 100vh);\r\n --calculated-header-height: calc(var(--header-height) + 1px);\r\n\r\n display: block;\r\n min-width: 0;\r\n height: var(--header-height);\r\n}\r\n\r\n:host(.no-animation) {\r\n * {\r\n animation: none !important;\r\n transition: none !important;\r\n }\r\n}\r\n\r\n.main-navigation,\r\n.main-container,\r\n.main-container li,\r\n.main-link {\r\n @include mixins.min(lg) {\r\n height: 100%;\r\n }\r\n}\r\n\r\n.main-navigation {\r\n font-size: functions.px-to-rem(18px);\r\n\r\n @include mixins.min(lg) {\r\n font-size: functions.px-to-rem(16px);\r\n }\r\n\r\n @include mixins.min(xl) {\r\n margin: 0 0.75rem;\r\n font-size: functions.px-to-rem(18px);\r\n }\r\n\r\n @include mixins.min(xxl) {\r\n font-size: functions.px-to-rem(20px);\r\n }\r\n\r\n @include mixins.max(lg) {\r\n position: absolute;\r\n top: var(--calculated-header-height);\r\n left: 0;\r\n background: white;\r\n height: calc(var(--host-window-height) - var(--calculated-header-height));\r\n width: 100%;\r\n margin: 0;\r\n overflow: hidden scroll;\r\n -webkit-overflow-scrolling: touch;\r\n overscroll-behavior: contain;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: space-between;\r\n z-index: -1;\r\n visibility: hidden;\r\n transform: translateY(-100%);\r\n transition: transform 0.35s, visibility 0.35s;\r\n\r\n @media (prefers-reduced-motion: reduce) {\r\n transition: none;\r\n }\r\n\r\n &.open {\r\n transform: translateY(0);\r\n visibility: visible;\r\n }\r\n }\r\n}\r\n\r\n.main-container {\r\n @extend %no-list;\r\n\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-start;\r\n\r\n @include mixins.max(lg) {\r\n flex-direction: column;\r\n align-items: stretch;\r\n justify-content: flex-start;\r\n padding-top: 2.5rem;\r\n padding-bottom: 2.5rem;\r\n\r\n > li + li {\r\n border-top: 1px solid color.$gray-10;\r\n }\r\n }\r\n\r\n @include mixins.min(lg) {\r\n padding-right: 0;\r\n padding-left: 0;\r\n }\r\n\r\n > li {\r\n flex: 0 1 auto;\r\n min-width: 0;\r\n }\r\n}\r\n\r\n.main-link {\r\n @extend %nav-link;\r\n\r\n display: flex;\r\n align-items: center;\r\n padding-right: 0.75rem;\r\n padding-left: 0.75rem;\r\n text-align: left;\r\n cursor: pointer;\r\n width: 100%;\r\n\r\n @include mixins.min(lg) {\r\n svg {\r\n display: none;\r\n }\r\n }\r\n\r\n @include mixins.max(lg) {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n font-weight: 300;\r\n padding: 0.625rem 0;\r\n width: 100%;\r\n text-align: left;\r\n\r\n svg {\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n }\r\n }\r\n\r\n span {\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n }\r\n}\r\n\r\n.main-link,\r\n.flyout-link {\r\n position: relative;\r\n color: black;\r\n\r\n &::after {\r\n content: '';\r\n position: absolute;\r\n bottom: -1px;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n background-color: transparent;\r\n opacity: 0;\r\n transform: scaleX(0.8);\r\n transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1),\r\n transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);\r\n\r\n @media (prefers-reduced-motion: reduce) {\r\n transition: none;\r\n }\r\n }\r\n\r\n &:hover,\r\n &.focus {\r\n &::after {\r\n background-color: color.$gray-20;\r\n opacity: 1;\r\n transform: scale(1);\r\n }\r\n }\r\n\r\n &.active {\r\n font-weight: 700;\r\n\r\n &::after {\r\n background-color: color.$yellow;\r\n opacity: 1;\r\n transform: scale(1);\r\n }\r\n }\r\n}\r\n\r\n.flyout {\r\n left: 0;\r\n width: 100%;\r\n background: white;\r\n padding-bottom: 3rem;\r\n overflow: auto;\r\n overscroll-behavior: contain;\r\n visibility: hidden;\r\n\r\n @include mixins.min(lg) {\r\n position: absolute;\r\n top: 100%;\r\n max-height: calc(100vh - var(--header-height) - var(--meta-header-height) - 1px);\r\n z-index: -1;\r\n box-shadow: 0 0 1px 0 rgb(0 0 0 / 40%);\r\n transform: translateY(-100%);\r\n\r\n &.open {\r\n box-shadow: 0 0 8px 0 rgb(0 0 0 / 40%);\r\n transform: translateY(0);\r\n }\r\n }\r\n\r\n @include mixins.max(lg) {\r\n position: fixed;\r\n top: 0;\r\n height: 100%;\r\n z-index: 1;\r\n transform: translateX(100%);\r\n\r\n &.open {\r\n transform: translateX(0);\r\n }\r\n }\r\n\r\n &.open {\r\n visibility: visible;\r\n }\r\n\r\n &.animate {\r\n transition: transform 0.35s, visibility 0.35s, box-shadow 0.35s;\r\n\r\n @media (prefers-reduced-motion: reduce) {\r\n transition: none;\r\n }\r\n }\r\n}\r\n\r\n.flyout-nav {\r\n @extend %font-curve-small;\r\n\r\n display: flex;\r\n justify-content: space-between;\r\n min-height: 3.5rem;\r\n\r\n // Change box-sizing to content-box to add 1px border width to flyout-nav hight.\r\n // This ensures flyout-nav has same hight as main-navigation-container.\r\n box-sizing: content-box;\r\n}\r\n\r\n.flyout-row {\r\n display: flex;\r\n gap: 1.5rem;\r\n\r\n @include mixins.max(lg) {\r\n display: grid;\r\n grid-template-columns: 1fr 1fr;\r\n }\r\n\r\n @include mixins.max(rg) {\r\n grid-template-columns: 1fr;\r\n }\r\n}\r\n\r\n.flyout-column {\r\n flex: 1;\r\n max-width: 25%;\r\n\r\n @include mixins.max(lg) {\r\n max-width: none;\r\n }\r\n\r\n h3 {\r\n @extend %font-curve-small;\r\n margin-top: 0;\r\n }\r\n}\r\n\r\n.flyout-back-button {\r\n @include mixins.container-padding();\r\n\r\n display: flex;\r\n align-items: center;\r\n font-size: functions.px-to-rem(16px);\r\n font-weight: 400;\r\n cursor: pointer;\r\n\r\n svg {\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n }\r\n\r\n @include mixins.min(lg) {\r\n display: none;\r\n }\r\n}\r\n\r\n.flyout-close-button {\r\n @extend %nav-link;\r\n\r\n display: flex;\r\n align-items: center;\r\n margin-left: auto;\r\n padding: 0 1.5rem;\r\n cursor: pointer;\r\n\r\n svg {\r\n width: 1.5rem;\r\n height: 1.5rem;\r\n }\r\n\r\n @include mixins.max(lg) {\r\n display: none;\r\n }\r\n}\r\n\r\n.flyout-linklist {\r\n @extend %no-list;\r\n\r\n li {\r\n border-top: 1px solid color.$gray-10;\r\n }\r\n\r\n &:first-child > li {\r\n border-top-color: transparent;\r\n }\r\n}\r\n\r\n.flyout-link {\r\n @extend %nav-link;\r\n\r\n display: block;\r\n padding: 0.75rem 0;\r\n}\r\n\r\n.flyout-title {\r\n @extend %font-curve-bigger-regular;\r\n\r\n margin: 2.5rem 0 1.5rem 0;\r\n\r\n @include mixins.min(lg) {\r\n display: none;\r\n }\r\n}\r\n","import { Component, Host, h, State, Method, Event, Element, EventEmitter } from '@stencil/core';\r\nimport { throttle } from 'throttle-debounce';\r\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\r\nimport { state } from '../../data/store';\r\nimport {\r\n DropdownElement,\r\n DropdownEvent,\r\n HasDropdown,\r\n IsFocusable,\r\n NavMainEntity,\r\n} from '../../models/header.model';\r\nimport { userPrefersReducedMotion } from '../../services/ui.service';\r\nimport { SvgSprite } from '../../utils/svg-sprite.component';\r\nimport { SvgIcon } from '../../utils/svg-icon.component';\r\nimport { LevelOneAction } from './components/level-one-action.component';\r\n\r\n@Component({\r\n tag: 'post-main-navigation',\r\n styleUrl: 'post-main-navigation.scss',\r\n shadow: true,\r\n})\r\nexport class PostMainNavigation implements HasDropdown, IsFocusable {\r\n @State() activeFlyout: string | null;\r\n @State() mobileMenuOpen: boolean;\r\n @Event() dropdownToggled: EventEmitter<DropdownEvent>;\r\n @Event() flyoutToggled: EventEmitter<string | null>;\r\n @Element() host: DropdownElement;\r\n private throttledResize: throttle<() => void>;\r\n private resizeTimer: number | null = null;\r\n private mouseLeaveTimer: number | null = null;\r\n private mouseEnterTimer: number | null = null;\r\n private flyoutElement: HTMLElement | undefined;\r\n\r\n connectedCallback() {\r\n this.throttledResize = throttle(300, () => this.handleResize());\r\n window.addEventListener('resize', this.throttledResize, { passive: true });\r\n this.setWindowHeight();\r\n }\r\n\r\n disconnectedCallback() {\r\n window.removeEventListener('resize', this.throttledResize);\r\n clearAllBodyScrollLocks();\r\n if (this.mouseEnterTimer !== null) window.clearTimeout(this.mouseEnterTimer);\r\n if (this.mouseLeaveTimer !== null) window.clearTimeout(this.mouseLeaveTimer);\r\n }\r\n\r\n handleResize() {\r\n // Suspend all animations and transitions on window resize\r\n this.host.classList.add('no-animation');\r\n if (this.resizeTimer !== null) window.clearTimeout(this.resizeTimer);\r\n this.resizeTimer = window.setTimeout(() => {\r\n this.host.classList.remove('no-animation');\r\n }, 300);\r\n\r\n this.setWindowHeight();\r\n }\r\n\r\n // Update window height var\r\n setWindowHeight() {\r\n if (!this.host) {\r\n return;\r\n }\r\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\r\n\r\n // Safari might or might not show a blank bar at the bottom where the browser\r\n // controls should be. This timeout waits for this bar to appear before resetting the available height\r\n window.setTimeout(() => {\r\n this.host.style.setProperty('--window-height', `${window.innerHeight}px`);\r\n }, 100);\r\n }\r\n\r\n openFlyout(id: string) {\r\n const flyout = this.host.shadowRoot?.getElementById(id);\r\n\r\n if (flyout && this.activeFlyout !== '') {\r\n // Add flyout animation if there's no flyout open\r\n this.addFlyoutAnimation(flyout);\r\n }\r\n\r\n this.activeFlyout = id;\r\n this.flyoutToggled.emit(id);\r\n this.setWindowHeight();\r\n\r\n if (this.mouseLeaveTimer !== null) {\r\n window.clearTimeout(this.mouseLeaveTimer);\r\n this.mouseLeaveTimer = null;\r\n }\r\n }\r\n\r\n closeFlyout(id?: string) {\r\n if (id === undefined) return;\r\n const flyout = this.host.shadowRoot?.getElementById(id);\r\n\r\n if (flyout) {\r\n // Add flyout animation for close action\r\n this.addFlyoutAnimation(flyout);\r\n }\r\n\r\n this.activeFlyout = null;\r\n this.flyoutToggled.emit();\r\n }\r\n\r\n addFlyoutAnimation(flyout: HTMLElement) {\r\n // Check if user prefers to see animations or not\r\n if (!userPrefersReducedMotion()) {\r\n flyout.classList.add('animate');\r\n\r\n // Remove flyout animation after transition ended\r\n flyout.addEventListener('transitionend', () => this.removeFlyoutAnimation(flyout), {\r\n once: true,\r\n });\r\n }\r\n }\r\n\r\n removeFlyoutAnimation(flyout: HTMLElement) {\r\n flyout.classList.remove('animate');\r\n }\r\n\r\n isActiveFlyout(id?: string) {\r\n return id === this.activeFlyout;\r\n }\r\n\r\n handleMouseEnter(level: NavMainEntity) {\r\n // Cancel opening the flyout if there already is one scheduled to open\r\n if (this.mouseEnterTimer !== null) {\r\n window.clearTimeout(this.mouseEnterTimer);\r\n this.mouseEnterTimer = null;\r\n }\r\n\r\n // Cancel closing if we enter again\r\n if (this.mouseLeaveTimer && this.activeFlyout === level.id) {\r\n window.clearTimeout(this.mouseLeaveTimer);\r\n this.mouseLeaveTimer = null;\r\n }\r\n\r\n if (window.innerWidth >= 1024 && level.flyout.length > 0 && this.activeFlyout !== level.id) {\r\n // Delay opening the flyout for a moment to give users a chance to move the mouse over the navigation without triggering the flyout\r\n this.mouseEnterTimer = window.setTimeout(() => {\r\n this.mouseEnterTimer = null;\r\n if (level.id !== undefined) this.openFlyout(level.id);\r\n }, 200);\r\n }\r\n }\r\n\r\n handleMouseLeave(level: NavMainEntity) {\r\n // Cancel opening the flyout if a mouseleave event happens before the flyout opened\r\n if (this.mouseEnterTimer !== null) {\r\n window.clearTimeout(this.mouseEnterTimer);\r\n }\r\n\r\n // Don't close an open flyout if the mouseleave is from another mainnav entry\r\n if (this.activeFlyout && this.activeFlyout !== level.id) {\r\n return;\r\n }\r\n\r\n if (window.innerWidth >= 1024 && level.flyout.length > 0) {\r\n // Allow the pointer to shortly leave the flyout without closing it. This\r\n // allows for user mistakes and makes the experience less nervous\r\n this.mouseLeaveTimer = window.setTimeout(() => {\r\n this.closeFlyout(level.id);\r\n }, 300);\r\n }\r\n }\r\n\r\n handleTouchEnd(event: TouchEvent, level: NavMainEntity) {\r\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\r\n // It's the first touchstart and has a flyout, prevent link activation and open the flyout\r\n if (event.cancelable) event.preventDefault();\r\n if (level.id) this.openFlyout(level.id);\r\n }\r\n }\r\n\r\n handleKeyPress(event: KeyboardEvent, level: NavMainEntity) {\r\n if (event.key === 'Enter' && !this.isActiveFlyout(level.id) && !level.noFlyout) {\r\n // It's the first enter keypress and has a flyout, prevent link activation and open the flyout\r\n event.preventDefault();\r\n if (level.id) this.openFlyout(level.id);\r\n }\r\n }\r\n\r\n handleClick(event: MouseEvent, level: NavMainEntity) {\r\n if (!this.isActiveFlyout(level.id) && !level.noFlyout) {\r\n // It's the first click, always open the flyout, never the link\r\n // This is relevant for desktop with active screenreader which\r\n // translates an enter keypress to a click\r\n event.preventDefault();\r\n if (level.id) this.openFlyout(level.id);\r\n }\r\n }\r\n\r\n /**\r\n * Disable or re-enable body scrolling, depending on whether mobile menu is open or closed\r\n */\r\n setBodyScroll() {\r\n if (this.mobileMenuOpen) {\r\n disableBodyScroll(this.flyoutElement);\r\n } else {\r\n enableBodyScroll(this.flyoutElement);\r\n }\r\n }\r\n\r\n /**\r\n * Toggle the main navigation (only visible on mobile)\r\n * @param force Force a state\r\n * @returns Boolean indicating new state\r\n */\r\n @Method()\r\n async toggleDropdown(force?: boolean) {\r\n this.mobileMenuOpen = force === undefined ? !this.mobileMenuOpen : force;\r\n this.dropdownToggled.emit({ open: this.mobileMenuOpen, element: this.host });\r\n\r\n if (force === false) {\r\n this.closeFlyout();\r\n }\r\n\r\n this.setBodyScroll();\r\n this.setWindowHeight();\r\n\r\n return this.mobileMenuOpen;\r\n }\r\n\r\n /**\r\n * Focus the main navigation toggle button\r\n */\r\n @Method()\r\n async setFocus() {\r\n const firstLink = this.host.shadowRoot?.querySelector<HTMLElement>('.main-link');\r\n if (firstLink) {\r\n firstLink.focus();\r\n }\r\n }\r\n\r\n /**\r\n * Open a specific flyout\r\n * @param id Flyout ID\r\n */\r\n @Method()\r\n async setActiveFlyout(id: string | null) {\r\n this.activeFlyout = id;\r\n this.flyoutToggled.emit(this.activeFlyout);\r\n }\r\n\r\n render() {\r\n if (state.localizedConfig?.header === undefined) return;\r\n const headerConfig = state.localizedConfig.header;\r\n\r\n return (\r\n <Host>\r\n <SvgSprite />\r\n <nav\r\n id=\"post-internet-header-main-navigation\"\r\n class={{ 'main-navigation': true, 'open': this.mobileMenuOpen }}\r\n ref={el => (this.flyoutElement = el)}\r\n >\r\n <h2 class=\"visually-hidden\">{headerConfig.translations.navMainAriaLabel}</h2>\r\n <ul class=\"main-container container\">\r\n {headerConfig.navMain.map(levelOne => (\r\n <li\r\n key={levelOne.text}\r\n onMouseLeave={() => this.handleMouseLeave(levelOne)}\r\n onMouseEnter={() => this.handleMouseEnter(levelOne)}\r\n >\r\n <LevelOneAction\r\n level={levelOne}\r\n isOpen={this.isActiveFlyout(levelOne.id)}\r\n onTouchEnd={e => this.handleTouchEnd(e, levelOne)}\r\n onKeyDown={e => this.handleKeyPress(e, levelOne)}\r\n onClick={e => this.handleClick(e, levelOne)}\r\n />\r\n {!levelOne.noFlyout ? (\r\n <div\r\n id={levelOne.id}\r\n class={{ flyout: true, open: this.isActiveFlyout(levelOne.id) }}\r\n >\r\n <div class=\"wide-container\">\r\n <div class=\"flyout-nav\">\r\n <button\r\n class=\"nav-link flyout-back-button\"\r\n onClick={() => this.closeFlyout(levelOne.id)}\r\n >\r\n <SvgIcon name=\"pi-pointy-arrow-right\" classNames=\"mirrored\" />\r\n <span>{headerConfig.translations.backButtonText}</span>\r\n </button>\r\n <button\r\n class=\"flyout-close-button\"\r\n onClick={() => this.closeFlyout(levelOne.id)}\r\n >\r\n <span class=\"visually-hidden\">\r\n {headerConfig.translations.mobileNavToggleClose}\r\n </span>\r\n <SvgIcon name=\"pi-close\" />\r\n </button>\r\n </div>\r\n <h2 class=\"flyout-title container\">\r\n <a href={levelOne.url} class=\"nav-link\">\r\n {levelOne.text}\r\n </a>\r\n </h2>\r\n <div class=\"flyout-row container\">\r\n {levelOne.flyout.map(flyout => (\r\n <div key={flyout.title} class=\"flyout-column\">\r\n {flyout.title ? <h3>{flyout.title}</h3> : null}\r\n <ul class=\"flyout-linklist\">\r\n {flyout.linkList.map(link => (\r\n <li key={link.url}>\r\n <a\r\n class={{\r\n 'flyout-link': true,\r\n 'active': !!link?.isActiveOverride,\r\n }}\r\n href={link.url}\r\n target={link.target}\r\n >\r\n {link.title}\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n </div>\r\n ) : null}\r\n </li>\r\n ))}\r\n </ul>\r\n <slot></slot>\r\n </nav>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"names":["postMetaNavigationCss","PostMetaNavigation","exports","class_1","prototype","render","_a","state","localizedConfig","header","navMeta","undefined","h","Host","class","concat","this","orientation","fullWidth","filter","meta","isHomeLink","map","key","url","active","isActive","target","href","text"],"sources":["src/components/post-meta-navigation/post-meta-navigation.scss?tag=post-meta-navigation&encapsulation=shadow","src/components/post-meta-navigation/post-meta-navigation.tsx"],"sourcesContent":["@use \"@swisspost/design-system-styles/variables/color\";\r\n@use \"@swisspost/design-system-styles/functions\";\r\n@use \"../../utils/utils.scss\";\r\n@use \"../../utils/mixins.scss\";\r\n\r\n:host {\r\n display: block;\r\n background: color.$gray-background-light;\r\n font-size: functions.px-to-rem(14px);\r\n}\r\n\r\n.meta-container {\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\r\n min-height: functions.px-to-rem(48px);\r\n\r\n @media (min-width: 1441px) {\r\n &:not(.full-width) {\r\n margin: 0 auto;\r\n max-width: 1440px;\r\n }\r\n }\r\n\r\n &.vertical {\r\n @include mixins.container-padding();\r\n\r\n flex-direction: column;\r\n align-items: flex-start;\r\n padding-top: 2.5rem;\r\n padding-bottom: 2.5rem;\r\n\r\n @include mixins.min(lg) {\r\n display: none;\r\n }\r\n }\r\n\r\n &.horizontal {\r\n ::slotted(*) {\r\n --separator-display: block;\r\n --separator-height: #{functions.px-to-rem(34px)};\r\n }\r\n }\r\n}\r\n\r\n.meta-navigation {\r\n .horizontal & {\r\n padding-right: 1rem;\r\n }\r\n}\r\n\r\n.meta-list {\r\n @extend %no-list;\r\n display: flex;\r\n\r\n .vertical & {\r\n flex-direction: column;\r\n align-items: flex-start;\r\n }\r\n}\r\n\r\n.meta-link {\r\n @extend %nav-link;\r\n\r\n font-size: functions.px-to-rem(14px);\r\n display: flex;\r\n align-items: center;\r\n padding: 0 0.5rem;\r\n min-height: functions.px-to-rem(34px);\r\n border-radius: 3px;\r\n\r\n &.active {\r\n background: color.$yellow;\r\n color: black;\r\n }\r\n\r\n .vertical & {\r\n color: black;\r\n padding: 0;\r\n\r\n &.active {\r\n padding: 0 0.5rem;\r\n margin-left: -0.5rem;\r\n }\r\n }\r\n}\r\n","import { Component, Host, h, Prop } from '@stencil/core';\r\nimport { state } from '../../data/store';\r\n\r\n@Component({\r\n tag: 'post-meta-navigation',\r\n styleUrl: 'post-meta-navigation.scss',\r\n shadow: true,\r\n})\r\nexport class PostMetaNavigation {\r\n @Prop() orientation: 'horizontal' | 'vertical';\r\n @Prop() fullWidth?: boolean = false;\r\n\r\n render() {\r\n if (state.localizedConfig?.header.navMeta === undefined) return;\r\n const { navMeta } = state.localizedConfig.header;\r\n\r\n return (\r\n <Host>\r\n <div class={`meta-container ${this.orientation}${this.fullWidth ? ' full-width' : ''}`}>\r\n <nav class=\"meta-navigation\">\r\n <ul class=\"meta-list\">\r\n {navMeta\r\n ?.filter(meta => !meta.isHomeLink)\r\n .map(meta => (\r\n <li key={meta.url}>\r\n <a\r\n class={{ 'active': meta.isActive, 'meta-link': true }}\r\n target={meta.target}\r\n href={meta.url}\r\n >\r\n <span aria-hidden=\"true\">{meta.text}</span>\r\n </a>\r\n </li>\r\n ))}\r\n </ul>\r\n </nav>\r\n <slot></slot>\r\n </div>\r\n </Host>\r\n );\r\n }\r\n}\r\n"],"mappings":"gMAAA,IAAMA,EAAwB,84I,ICQjBC,EAAkBC,EAAA,kC,kEAEC,K,CAE9BC,EAAAC,UAAAC,OAAA,W,MACE,KAAIC,EAAAC,EAAMC,mBAAe,MAAAF,SAAA,SAAAA,EAAEG,OAAOC,WAAYC,UAAW,OACjD,IAAAD,EAAYH,EAAMC,gBAAgBC,OAAMC,QAEhD,OACEE,EAACC,EAAI,KACHD,EAAA,OAAKE,MAAO,kBAAAC,OAAkBC,KAAKC,aAAWF,OAAGC,KAAKE,UAAY,cAAgB,KAChFN,EAAA,OAAKE,MAAM,mBACTF,EAAA,MAAIE,MAAM,aACPJ,IAAO,MAAPA,SAAO,SAAPA,EACGS,QAAO,SAAAC,GAAQ,OAACA,EAAKC,UAAN,IAChBC,KAAI,SAAAF,GAAI,OACPR,EAAA,MAAIW,IAAKH,EAAKI,KACZZ,EAAA,KACEE,MAAO,CAAEW,OAAUL,EAAKM,SAAU,YAAa,MAC/CC,OAAQP,EAAKO,OACbC,KAAMR,EAAKI,KAEXZ,EAAA,sBAAkB,QAAQQ,EAAKS,OAP5B,MAafjB,EAAA,c,WA5BqB,I"}
@@ -1,7 +0,0 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,n,r){function o(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,i){function a(e){try{s(r.next(e))}catch(e){i(e)}}function l(e){try{s(r["throw"](e))}catch(e){i(e)}}function s(e){e.done?n(e.value):o(e.value).then(a,l)}s((r=r.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},r,o,i,a;return a={next:l(0),throw:l(1),return:l(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function l(e){return function(t){return s([e,t])}}function s(l){if(r)throw new TypeError("Generator is already executing.");while(a&&(a=0,l[0]&&(n=0)),n)try{if(r=1,o&&(i=l[0]&2?o["return"]:l[0]?o["throw"]||((i=o["return"])&&i.call(o),0):o.next)&&!(i=i.call(o,l[1])).done)return i;if(o=0,i)l=[l[0]&2,i.value];switch(l[0]){case 0:case 1:i=l;break;case 4:n.label++;return{value:l[1],done:false};case 5:n.label++;o=l[1];l=[0];continue;case 7:l=n.ops.pop();n.trys.pop();continue;default:if(!(i=n.trys,i=i.length>0&&i[i.length-1])&&(l[0]===6||l[0]===2)){n=0;continue}if(l[0]===3&&(!i||l[1]>i[0]&&l[1]<i[3])){n.label=l[1];break}if(l[0]===6&&n.label<i[1]){n.label=i[1];i=l;break}if(i&&n.label<i[2]){n.label=i[2];n.ops.push(l);break}if(i[2])n.ops.pop();n.trys.pop();continue}l=t.call(e,n)}catch(e){l=[6,e];o=0}finally{r=i=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,t,n){if(n||arguments.length===2)for(var r=0,o=t.length,i;r<o;r++){if(i||!(r in t)){if(!i)i=Array.prototype.slice.call(t,0,r);i[r]=t[r]}}return e.concat(i||Array.prototype.slice.call(t))};System.register(["./p-1b8f9bc8.system.js","./p-c8296f63.system.js","./p-b3014611.system.js","./p-ee915bbe.system.js","./p-c69923cd.system.js","./p-f887c8bb.system.js","./p-4654b2af.system.js","./p-f4ff1e9e.system.js","./p-c29ec122.system.js"],(function(e){"use strict";var t,n,r,o,i,a,l,s,f,d,u,c,g,m;return{setters:[function(e){t=e.h;n=e.r;r=e.H;o=e.g},function(e){i=e.d},function(e){a=e.c;l=e.d;s=e.e},function(e){f=e.S},function(e){d=e.s},function(e){u=e.c},function(e){c=e.S},function(e){g=e.t},function(e){m=e.p}],execute:function(){
2
- /*!
3
- * tabbable 5.3.3
4
- * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
5
- */
6
- var b=["input","select","textarea","a[href]","button","[tabindex]:not(slot)","audio[controls]","video[controls]",'[contenteditable]:not([contenteditable="false"])',"details>summary:first-of-type","details"];var h=b.join(",");var p=typeof Element==="undefined";var x=p?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector;var w=!p&&Element.prototype.getRootNode?function(e){return e.getRootNode()}:function(e){return e.ownerDocument};var v=function e(t,n,r){var o=Array.prototype.slice.apply(t.querySelectorAll(h));if(n&&x.call(t,h)){o.unshift(t)}o=o.filter(r);return o};var y=function e(t,n,r){var o=[];var i=Array.from(t);while(i.length){var a=i.shift();if(a.tagName==="SLOT"){var l=a.assignedElements();var s=l.length?l:a.children;var f=e(s,true,r);if(r.flatten){o.push.apply(o,f)}else{o.push({scope:a,candidates:f})}}else{var d=x.call(a,h);if(d&&r.filter(a)&&(n||!t.includes(a))){o.push(a)}var u=a.shadowRoot||typeof r.getShadowRoot==="function"&&r.getShadowRoot(a);var c=!r.shadowRootFilter||r.shadowRootFilter(a);if(u&&c){var g=e(u===true?a.children:u.children,true,r);if(r.flatten){o.push.apply(o,g)}else{o.push({scope:a,candidates:g})}}else{i.unshift.apply(i,a.children)}}}return o};var k=function e(t,n){if(t.tabIndex<0){if((n||/^(AUDIO|VIDEO|DETAILS)$/.test(t.tagName)||t.isContentEditable)&&isNaN(parseInt(t.getAttribute("tabindex"),10))){return 0}}return t.tabIndex};var E=function e(t,n){return t.tabIndex===n.tabIndex?t.documentOrder-n.documentOrder:t.tabIndex-n.tabIndex};var T=function e(t){return t.tagName==="INPUT"};var I=function e(t){return T(t)&&t.type==="hidden"};var O=function e(t){var n=t.tagName==="DETAILS"&&Array.prototype.slice.apply(t.children).some((function(e){return e.tagName==="SUMMARY"}));return n};var R=function e(t,n){for(var r=0;r<t.length;r++){if(t[r].checked&&t[r].form===n){return t[r]}}};var N=function e(t){if(!t.name){return true}var n=t.form||w(t);var r=function e(t){return n.querySelectorAll('input[type="radio"][name="'+t+'"]')};var o;if(typeof window!=="undefined"&&typeof window.CSS!=="undefined"&&typeof window.CSS.escape==="function"){o=r(window.CSS.escape(t.name))}else{try{o=r(t.name)}catch(e){console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",e.message);return false}}var i=R(o,t.form);return!i||i===t};var S=function e(t){return T(t)&&t.type==="radio"};var C=function e(t){return S(t)&&!N(t)};var M=function e(t){var n=t.getBoundingClientRect(),r=n.width,o=n.height;return r===0&&o===0};var z=function e(t,n){var r=n.displayCheck,o=n.getShadowRoot;if(getComputedStyle(t).visibility==="hidden"){return true}var i=x.call(t,"details>summary:first-of-type");var a=i?t.parentElement:t;if(x.call(a,"details:not([open]) *")){return true}var l=w(t).host;var s=(l===null||l===void 0?void 0:l.ownerDocument.contains(l))||t.ownerDocument.contains(t);if(!r||r==="full"){if(typeof o==="function"){var f=t;while(t){var d=t.parentElement;var u=w(t);if(d&&!d.shadowRoot&&o(d)===true){return M(t)}else if(t.assignedSlot){t=t.assignedSlot}else if(!d&&u!==t.ownerDocument){t=u.host}else{t=d}}t=f}if(s){return!t.getClientRects().length}}else if(r==="non-zero-area"){return M(t)}return false};var A=function e(t){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(t.tagName)){var n=t.parentElement;while(n){if(n.tagName==="FIELDSET"&&n.disabled){for(var r=0;r<n.children.length;r++){var o=n.children.item(r);if(o.tagName==="LEGEND"){return x.call(n,"fieldset[disabled] *")?true:!o.contains(t)}}return true}n=n.parentElement}}return false};var F=function e(t,n){if(n.disabled||I(n)||z(n,t)||O(n)||A(n)){return false}return true};var L=function e(t,n){if(C(n)||k(n)<0||!F(t,n)){return false}return true};var W=function e(t){var n=parseInt(t.getAttribute("tabindex"),10);if(isNaN(n)||n>=0){return true}return false};var P=function e(t){var n=[];var r=[];t.forEach((function(t,o){var i=!!t.scope;var a=i?t.scope:t;var l=k(a,i);var s=i?e(t.candidates):a;if(l===0){i?n.push.apply(n,s):n.push(a)}else{r.push({documentOrder:o,tabIndex:l,item:t,isScope:i,content:s})}}));return r.sort(E).reduce((function(e,t){t.isScope?e.push.apply(e,t.content):e.push(t.content);return e}),[]).concat(n)};var H=function e(t,n){n=n||{};var r;if(n.getShadowRoot){r=y([t],n.includeContainer,{filter:L.bind(null,n),flatten:false,getShadowRoot:n.getShadowRoot,shadowRootFilter:W})}else{r=v(t,n.includeContainer,L.bind(null,n))}return P(r)};var D=0;var j=function(e,n){var r;var o=(r=e.active)!==null&&r!==void 0?r:false;var i=function(e,t){if(!n.length){return}var r=t==="first"?0:n.length-1;var o=n[r].$elm$;var i=H(o);if(!i.length){return}e.preventDefault();e.stopPropagation();var a=t==="first"?0:i.length-1;var l=i[a];l.focus()};D++;return[t("input",{type:"text","aria-hidden":"true",class:"visually-hidden",key:"focus-trap-before-".concat(D),onFocusin:function(e){return o&&i(e,"last")}}),n,t("input",{type:"text","aria-hidden":"true",class:"visually-hidden",key:"focus-trap-after-".concat(D),onFocusin:function(e){return o&&i(e,"first")}})]};var B=function(e){return t("div",{class:"overlay",onClick:function(){return e.onClick()},onKeyDown:function(t){return e.onKeyDown!==undefined&&e.onKeyDown(t)},ref:function(t){return t!==undefined&&e.overlayRef(t)}},t("div",{class:"container",role:"dialog"},t(j,null,t("div",{class:"overlay-container",tabindex:"-1",role:"document",onClick:function(e){return e.stopPropagation()}},t("button",{class:"overlay-close btn-blank d-inline-flex align-items-center nav-link ".concat(e.overlay.id),onClick:function(){return e.onClick()}},t("span",{class:"visually-hidden"},e.closeButtonText),t(f,{name:"pi-close"})),t("iframe",{src:e.overlay.target,frameborder:"0",class:"frame",ref:function(t){return t!==undefined&&e.iFrameRef(t)}}))),t("div",{class:"loader-wrapper"},t("div",{class:"loader"}))))};var U=u((function(e){(function(t){if(typeof window==="undefined")return;var n=0,r=false,o=false,i="message",a=i.length,l="[iFrameSizer]",s=l.length,f=null,d=window.requestAnimationFrame,u={max:1,scroll:1,bodyScroll:1,documentElementScroll:1},c={},g=null,m={autoResize:true,bodyBackground:null,bodyMargin:null,bodyMarginV1:8,bodyPadding:null,checkOrigin:true,inPageLinks:false,enablePublicMethods:true,heightCalculationMethod:"bodyOffset",id:"iFrameResizer",interval:32,log:false,maxHeight:Infinity,maxWidth:Infinity,minHeight:0,minWidth:0,mouseEvents:true,resizeFrom:"parent",scrolling:false,sizeHeight:true,sizeWidth:false,warningTimeout:5e3,tolerance:0,widthCalculationMethod:"scroll",onClose:function(){return true},onClosed:function(){},onInit:function(){},onMessage:function(){T("onMessage function not defined")},onMouseEnter:function(){},onMouseLeave:function(){},onResized:function(){},onScroll:function(){return true}};function b(){return window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver}function h(e,t,n){e.addEventListener(t,n,false)}function p(e,t,n){e.removeEventListener(t,n,false)}function x(){var e=["moz","webkit","o","ms"];var t;for(t=0;t<e.length&&!d;t+=1){d=window[e[t]+"RequestAnimationFrame"]}if(!d){k("setup","RequestAnimationFrame not supported")}else{d=d.bind(window)}}function w(e){var t="Host page: "+e;if(window.top!==window.self){t=window.parentIFrame&&window.parentIFrame.getId?window.parentIFrame.getId()+": "+e:"Nested host page: "+e}return t}function v(e){return l+"["+w(e)+"]"}function y(e){return c[e]?c[e].log:r}function k(e,t){I("log",e,t,y(e))}function E(e,t){I("info",e,t,y(e))}function T(e,t){I("warn",e,t,true)}function I(e,t,n,r){if(true===r&&"object"===typeof window.console){console[e](v(t),n)}}function O(e){function t(){function e(){F(J);M(G);B("onResized",J)}i("Height");i("Width");L(e,J,"init")}function n(){var e=Y.substr(s).split(":");var t=e[1]?parseInt(e[1],10):0;var n=c[e[0]]&&c[e[0]].iframe;var i=getComputedStyle(n);return{iframe:n,id:e[0],height:t+r(i)+o(i),width:e[2],type:e[3]}}function r(e){if(e.boxSizing!=="border-box"){return 0}var t=e.paddingTop?parseInt(e.paddingTop,10):0;var n=e.paddingBottom?parseInt(e.paddingBottom,10):0;return t+n}function o(e){if(e.boxSizing!=="border-box"){return 0}var t=e.borderTopWidth?parseInt(e.borderTopWidth,10):0;var n=e.borderBottomWidth?parseInt(e.borderBottomWidth,10):0;return t+n}function i(e){var t=Number(c[G]["max"+e]),n=Number(c[G]["min"+e]),r=e.toLowerCase(),o=Number(J[r]);k(G,"Checking "+r+" is in range "+n+"-"+t);if(o<n){o=n;k(G,"Set "+r+" to min value")}if(o>t){o=t;k(G,"Set "+r+" to max value")}J[r]=""+o}function d(){function t(){function e(){var e=0,t=false;k(G,"Checking connection is from allowed list of origins: "+r);for(;e<r.length;e++){if(r[e]===n){t=true;break}}return t}function t(){var e=c[G]&&c[G].remoteHost;k(G,"Checking connection is from: "+e);return n===e}return r.constructor===Array?e():t()}var n=e.origin,r=c[G]&&c[G].checkOrigin;if(r&&""+n!=="null"&&!t()){throw new Error("Unexpected message received from: "+n+" for "+J.iframe.id+". Message was: "+e.data+". This error can be disabled by setting the checkOrigin: false option or by providing of array of trusted domains.")}return true}function u(){return l===(""+Y).substr(0,s)&&Y.substr(s).split(":")[0]in c}function g(){var e=J.type in{true:1,false:1,undefined:1};if(e){k(G,"Ignoring init message from meta parent page")}return e}function m(e){return Y.substr(Y.indexOf(":")+a+e)}function b(e){k(G,"onMessage passed: {iframe: "+J.iframe.id+", message: "+e+"}");B("onMessage",{iframe:J.iframe,message:JSON.parse(e)});k(G,"--")}function x(){var e=document.body.getBoundingClientRect(),t=J.iframe.getBoundingClientRect();return JSON.stringify({iframeHeight:t.height,iframeWidth:t.width,clientHeight:Math.max(document.documentElement.clientHeight,window.innerHeight||0),clientWidth:Math.max(document.documentElement.clientWidth,window.innerWidth||0),offsetTop:parseInt(t.top-e.top,10),offsetLeft:parseInt(t.left-e.left,10),scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,documentHeight:document.documentElement.clientHeight,documentWidth:document.documentElement.clientWidth,windowHeight:window.innerHeight,windowWidth:window.innerWidth})}function w(e,t){function n(){W("Send Page Info","pageInfo:"+x(),e,t)}U(n,32,t)}function v(){function e(e,n){function o(){if(c[r]){w(c[r].iframe,r)}else{t()}}["scroll","resize"].forEach((function(t){k(r,e+t+" listener for sendPageInfo");n(window,t,o)}))}function t(){e("Remove ",p)}function n(){e("Add ",h)}var r=G;n();if(c[r]){c[r].stopPageInfo=t}}function y(){if(c[G]&&c[G].stopPageInfo){c[G].stopPageInfo();delete c[G].stopPageInfo}}function I(){var e=true;if(null===J.iframe){T(G,"IFrame ("+J.id+") not found");e=false}return e}function O(e){var t=e.getBoundingClientRect();C(G);return{x:Math.floor(Number(t.left)+Number(f.x)),y:Math.floor(Number(t.top)+Number(f.y))}}function N(e){function t(){f=i;H();k(G,"--")}function n(){return{x:Number(J.width)+o.x,y:Number(J.height)+o.y}}function r(){if(window.parentIFrame){window.parentIFrame["scrollTo"+(e?"Offset":"")](i.x,i.y)}else{T(G,"Unable to scroll to requested position, window.parentIFrame not found")}}var o=e?O(J.iframe):{x:0,y:0},i=n();k(G,"Reposition requested from iFrame (offset x:"+o.x+" y:"+o.y+")");if(window.top!==window.self){r()}else{t()}}function H(){if(false!==B("onScroll",f)){M(G)}else{z()}}function D(e){function t(){var e=O(i);k(G,"Moving to in page link (#"+r+") at x: "+e.x+" y: "+e.y);f={x:e.x,y:e.y};H();k(G,"--")}function n(){if(window.parentIFrame){window.parentIFrame.moveToAnchor(r)}else{k(G,"In page link #"+r+" not found and window.parentIFrame not found")}}var r=e.split("#")[1]||"",o=decodeURIComponent(r),i=document.getElementById(o)||document.getElementsByName(o)[0];if(i){t()}else if(window.top!==window.self){n()}else{k(G,"In page link #"+r+" not found")}}function j(e){var t={};if(Number(J.width)===0&&Number(J.height)===0){var n=m(9).split(":");t={x:n[1],y:n[0]}}else{t={x:J.width,y:J.height}}B(e,{iframe:J.iframe,screenX:Number(t.x),screenY:Number(t.y),type:J.type})}function B(e,t){return R(G,e,t)}function q(){if(c[G]&&c[G].firstRun)X();switch(J.type){case"close":S(J.iframe);break;case"message":b(m(6));break;case"mouseenter":j("onMouseEnter");break;case"mouseleave":j("onMouseLeave");break;case"autoResize":c[G].autoResize=JSON.parse(m(9));break;case"scrollTo":N(false);break;case"scrollToOffset":N(true);break;case"pageInfo":w(c[G]&&c[G].iframe,G);v();break;case"pageInfoStop":y();break;case"inPageLink":D(m(9));break;case"reset":A(J);break;case"init":t();B("onInit",J.iframe);break;default:if(Number(J.width)===0&&Number(J.height)===0){T("Unsupported message received ("+J.type+"), this is likely due to the iframe containing a later "+"version of iframe-resizer than the parent page")}else{t()}}}function V(e){var t=true;if(!c[e]){t=false;T(J.type+" No settings for "+e+". Message was: "+Y)}return t}function _(){for(var e in c){W("iFrame requested init",P(e),c[e].iframe,e)}}function X(){if(c[G]){c[G].firstRun=false}}var Y=e.data,J={},G=null;if("[iFrameResizerChild]Ready"===Y){_()}else if(u()){J=n();G=J.id;if(c[G]){c[G].loaded=true}if(!g()&&V(G)){k(G,"Received: "+Y);if(I()&&d()){q()}}}else{E(G,"Ignored: "+Y)}}function R(e,t,n){var r=null,o=null;if(c[e]){r=c[e][t];if("function"===typeof r){o=r(n)}else{throw new TypeError(t+" on iFrame["+e+"] is not a function")}}return o}function N(e){var t=e.id;delete c[t]}function S(e){var t=e.id;if(R(t,"onClose",t)===false){k(t,"Close iframe cancelled by onClose event");return}k(t,"Removing iFrame: "+t);try{if(e.parentNode){e.parentNode.removeChild(e)}}catch(e){T(e)}R(t,"onClosed",t);k(t,"--");N(e)}function C(e){if(null===f){f={x:window.pageXOffset!==t?window.pageXOffset:document.documentElement.scrollLeft,y:window.pageYOffset!==t?window.pageYOffset:document.documentElement.scrollTop};k(e,"Get page position: "+f.x+","+f.y)}}function M(e){if(null!==f){window.scrollTo(f.x,f.y);k(e,"Set page position: "+f.x+","+f.y);z()}}function z(){f=null}function A(e){function t(){F(e);W("reset","reset",e.iframe,e.id)}k(e.id,"Size reset requested by "+("init"===e.type?"host page":"iFrame"));C(e.id);L(t,e,"reset")}function F(e){function t(t){if(!e.id){k("undefined","messageData id not set");return}e.iframe.style[t]=e[t]+"px";k(e.id,"IFrame ("+i+") "+t+" set to "+e[t]+"px")}function n(t){if(!o&&"0"===e[t]){o=true;k(i,"Hidden iFrame detected, creating visibility listener");q()}}function r(e){t(e);n(e)}var i=e.iframe.id;if(c[i]){if(c[i].sizeHeight){r("height")}if(c[i].sizeWidth){r("width")}}}function L(e,t,n){if(n!==t.type&&d&&!window.jasmine){k(t.id,"Requesting animation frame");d(e)}else{e()}}function W(e,t,n,r,o){function i(){var o=c[r]&&c[r].targetOrigin;k(r,"["+e+"] Sending msg to iframe["+r+"] ("+t+") targetOrigin: "+o);n.contentWindow.postMessage(l+t,o)}function a(){T(r,"["+e+"] IFrame("+r+") not found")}function s(){if(n&&"contentWindow"in n&&null!==n.contentWindow){i()}else{a()}}function f(){function e(){if(c[r]&&!c[r].loaded&&!d){d=true;T(r,"IFrame has not responded within "+c[r].warningTimeout/1e3+" seconds. Check iFrameResizer.contentWindow.js has been loaded in iFrame. This message can be ignored if everything is working, or you can set the warningTimeout option to a higher value or zero to suppress this warning.")}}if(!!o&&c[r]&&!!c[r].warningTimeout){c[r].msgTimeout=setTimeout(e,c[r].warningTimeout)}}var d=false;r=r||n.id;if(c[r]){s();f()}}function P(e){return e+":"+c[e].bodyMarginV1+":"+c[e].sizeWidth+":"+c[e].log+":"+c[e].interval+":"+c[e].enablePublicMethods+":"+c[e].autoResize+":"+c[e].bodyMargin+":"+c[e].heightCalculationMethod+":"+c[e].bodyBackground+":"+c[e].bodyPadding+":"+c[e].tolerance+":"+c[e].inPageLinks+":"+c[e].resizeFrom+":"+c[e].widthCalculationMethod+":"+c[e].mouseEvents}function H(e){return typeof e==="number"}function D(e,o){function i(){function t(t){var n=c[O][t];if(Infinity!==n&&0!==n){e.style[t]=H(n)?n+"px":n;k(O,"Set "+t+" = "+e.style[t])}}function n(e){if(c[O]["min"+e]>c[O]["max"+e]){throw new Error("Value for min"+e+" can not be greater than max"+e)}}n("Height");n("Width");t("maxHeight");t("minHeight");t("maxWidth");t("minWidth")}function a(){var e=o&&o.id||m.id+n++;if(null!==document.getElementById(e)){e+=n++}return e}function l(t){if(""===t){e.id=t=a();r=(o||{}).log;k(t,"Added missing iframe ID: "+t+" ("+e.src+")")}return t}function s(){k(O,"IFrame scrolling "+(c[O]&&c[O].scrolling?"enabled":"disabled")+" for "+O);e.style.overflow=false===(c[O]&&c[O].scrolling)?"hidden":"auto";switch(c[O]&&c[O].scrolling){case"omit":break;case true:e.scrolling="yes";break;case false:e.scrolling="no";break;default:e.scrolling=c[O]?c[O].scrolling:"no"}}function f(){if("number"===typeof(c[O]&&c[O].bodyMargin)||"0"===(c[O]&&c[O].bodyMargin)){c[O].bodyMarginV1=c[O].bodyMargin;c[O].bodyMargin=""+c[O].bodyMargin+"px"}}function d(){var t=c[O]&&c[O].firstRun,n=c[O]&&c[O].heightCalculationMethod in u;if(!t&&n){A({iframe:e,height:0,width:0,type:"init"})}}function g(){if(c[O]){c[O].iframe.iFrameResizer={close:S.bind(null,c[O].iframe),removeListeners:N.bind(null,c[O].iframe),resize:W.bind(null,"Window resize","resize",c[O].iframe),moveToAnchor:function(e){W("Move to anchor","moveToAnchor:"+e,c[O].iframe,O)},sendMessage:function(e){e=JSON.stringify(e);W("Send Message","message:"+e,c[O].iframe,O)}}}}function p(n){function r(){W("iFrame.onload",n,e,t,true);d()}function o(t){if(!e.parentNode){return}var n=new t((function(t){t.forEach((function(t){var n=Array.prototype.slice.call(t.removedNodes);n.forEach((function(t){if(t===e){S(e)}}))}))}));n.observe(e.parentNode,{childList:true})}var i=b();if(i){o(i)}h(e,"load",r);W("init",n,e,t,true)}function x(e){if("object"!==typeof e){throw new TypeError("Options is not an object")}}function w(e){for(var t in m){if(Object.prototype.hasOwnProperty.call(m,t)){c[O][t]=Object.prototype.hasOwnProperty.call(e,t)?e[t]:m[t]}}}function v(e){return""===e||null!==e.match(/^(about:blank|javascript:|file:\/\/)/)?"*":e}function y(e){var t=e.split("Callback");if(t.length===2){var n="on"+t[0].charAt(0).toUpperCase()+t[0].slice(1);this[n]=this[e];delete this[e];T(O,"Deprecated: '"+e+"' has been renamed '"+n+"'. The old method will be removed in the next major version.")}}function E(t){t=t||{};c[O]={firstRun:true,iframe:e,remoteHost:e.src&&e.src.split("/").slice(0,3).join("/")};x(t);Object.keys(t).forEach(y,t);w(t);if(c[O]){c[O].targetOrigin=true===c[O].checkOrigin?v(c[O].remoteHost):"*"}}function I(){return O in c&&"iFrameResizer"in e}var O=l(e.id);if(!I()){E(o);s();i();f();p(P(O));g()}else{T(O,"Ignored iFrame, already setup.")}}function j(e,t){if(null===g){g=setTimeout((function(){g=null;e()}),t)}}var B={};function U(e,t,n){if(!B[n]){B[n]=setTimeout((function(){B[n]=null;e()}),t)}}function q(){function e(){function e(e){function t(t){return"0px"===(c[e]&&c[e].iframe.style[t])}function n(e){return null!==e.offsetParent}if(c[e]&&n(c[e].iframe)&&(t("height")||t("width"))){W("Visibility change","resize",c[e].iframe,e)}}Object.keys(c).forEach((function(t){e(t)}))}function t(t){k("window","Mutation observed: "+t[0].target+" "+t[0].type);j(e,16)}function n(){var e=document.querySelector("body"),n={attributes:true,attributeOldValue:false,characterData:true,characterDataOldValue:false,childList:true,subtree:true},o=new r(t);o.observe(e,n)}var r=b();if(r){n()}}function V(e){function t(){X("Window "+e,"resize")}k("window","Trigger event: "+e);j(t,16)}function _(){function e(){X("Tab Visable","resize")}if("hidden"!==document.visibilityState){k("document","Trigger event: Visiblity change");j(e,16)}}function X(e,t){function n(e){return c[e]&&"parent"===c[e].resizeFrom&&c[e].autoResize&&!c[e].firstRun}Object.keys(c).forEach((function(r){if(n(r)){W(e,t,c[r].iframe,r)}}))}function Y(){h(window,"message",O);h(window,"resize",(function(){V("resize")}));h(document,"visibilitychange",_);h(document,"-webkit-visibilitychange",_)}function J(){function e(e,t){function n(){if(!t.tagName){throw new TypeError("Object is not a valid DOM element")}else if("IFRAME"!==t.tagName.toUpperCase()){throw new TypeError("Expected <IFRAME> tag, found <"+t.tagName+">")}}if(t){n();D(t,e);r.push(t)}}function n(e){if(e&&e.enablePublicMethods){T("enablePublicMethods option has been removed, public methods are now always available in the iFrame")}}var r;x();Y();return function o(i,a){r=[];n(i);switch(typeof a){case"undefined":case"string":Array.prototype.forEach.call(document.querySelectorAll(a||"iframe"),e.bind(t,i));break;case"object":e(i,a);break;default:throw new TypeError("Unexpected data type ("+typeof a+")")}return r}}function G(e){if(!e.fn){E("","Unable to bind to jQuery, it is not fully loaded.")}else if(!e.fn.iFrameResize){e.fn.iFrameResize=function e(t){function n(e,n){D(n,t)}return this.filter("iframe").each(n).end()}}}if(window.jQuery){G(window.jQuery)}if(typeof t==="function"&&t.amd){t([],J)}else{e.exports=J()}window.iFrameResize=window.iFrameResize||J()})()}));var q=u((function(e){(function(t){if(typeof window==="undefined")return;var n=true,r=10,o="",i=0,a="",l=null,s="",f=false,d={resize:1,click:1},u=128,c=true,g=1,m="bodyOffset",b=m,h=true,p="",x={},w=32,v=null,y=false,k=false,E="[iFrameSizer]",T=E.length,I="",O={max:1,min:1,bodyScroll:1,documentElementScroll:1},R="child",N=window.parent,S="*",C=0,M=false,z=null,A=16,F=1,L="scroll",W=L,P=window,H=function(){Z("onMessage function not defined")},D=function(){},j=function(){},B={height:function(){Z("Custom height calculation function not defined");return document.documentElement.offsetHeight},width:function(){Z("Custom width calculation function not defined");return document.body.scrollWidth}},U={},q=false;function V(){}try{var _=Object.create({},{passive:{get:function(){q=true}}});window.addEventListener("test",V,_);window.removeEventListener("test",V,_)}catch(e){}function X(e,t,n,r){e.addEventListener(t,n,q?r||{}:false)}function Y(e,t,n){e.removeEventListener(t,n,false)}function J(e){return e.charAt(0).toUpperCase()+e.slice(1)}function G(e){var t,n,r,o=null,i=0,a=function(){i=Date.now();o=null;r=e.apply(t,n);if(!o){t=n=null}};return function(){var l=Date.now();if(!i){i=l}var s=A-(l-i);t=this;n=arguments;if(s<=0||s>A){if(o){clearTimeout(o);o=null}i=l;r=e.apply(t,n);if(!o){t=n=null}}else if(!o){o=setTimeout(a,s)}return r}}function K(e){return E+"["+I+"] "+e}function Q(e){if(y&&"object"===typeof window.console){console.log(K(e))}}function Z(e){if("object"===typeof window.console){console.warn(K(e))}}function $(){ee();Q("Initialising iFrame ("+window.location.href+")");ne();ie();oe("background",o);oe("padding",s);be();de();ue();ae();xe();pe();ce();x=he();ze("init","Init message from host page");D()}function ee(){function e(e){return"true"===e}var r=p.substr(T).split(":");I=r[0];i=t!==r[1]?Number(r[1]):i;f=t!==r[2]?e(r[2]):f;y=t!==r[3]?e(r[3]):y;w=t!==r[4]?Number(r[4]):w;n=t!==r[6]?e(r[6]):n;a=r[7];b=t!==r[8]?r[8]:b;o=r[9];s=r[10];C=t!==r[11]?Number(r[11]):C;x.enable=t!==r[12]?e(r[12]):false;R=t!==r[13]?r[13]:R;W=t!==r[14]?r[14]:W;k=t!==r[15]?Boolean(r[15]):k}function te(e){var t=e.split("Callback");if(t.length===2){var n="on"+t[0].charAt(0).toUpperCase()+t[0].slice(1);this[n]=this[e];delete this[e];Z("Deprecated: '"+e+"' has been renamed '"+n+"'. The old method will be removed in the next major version.")}}function ne(){function e(){var e=window.iFrameResizer;Q("Reading data from page: "+JSON.stringify(e));Object.keys(e).forEach(te,e);H="onMessage"in e?e.onMessage:H;D="onReady"in e?e.onReady:D;S="targetOrigin"in e?e.targetOrigin:S;b="heightCalculationMethod"in e?e.heightCalculationMethod:b;W="widthCalculationMethod"in e?e.widthCalculationMethod:W}function t(e,t){if("function"===typeof e){Q("Setup custom "+t+"CalcMethod");B[t]=e;e="custom"}return e}if("iFrameResizer"in window&&Object===window.iFrameResizer.constructor){e();b=t(b,"height");W=t(W,"width")}Q("TargetOrigin for parent set to: "+S)}function re(e,t){if(-1!==t.indexOf("-")){Z("Negative CSS value ignored for "+e);t=""}return t}function oe(e,n){if(t!==n&&""!==n&&"null"!==n){document.body.style[e]=n;Q("Body "+e+' set to "'+n+'"')}}function ie(){if(t===a){a=i+"px"}oe("margin",re("margin",a))}function ae(){document.documentElement.style.height="";document.body.style.height="";Q('HTML & body height set to "auto"')}function le(e){var t={add:function(t){function n(){ze(e.eventName,e.eventType)}U[t]=n;X(window,t,n,{passive:true})},remove:function(e){var t=U[e];delete U[e];Y(window,e,t)}};if(e.eventNames&&Array.prototype.map){e.eventName=e.eventNames[0];e.eventNames.map(t[e.method])}else{t[e.method](e.eventName)}Q(J(e.method)+" event listener: "+e.eventType)}function se(e){le({method:e,eventType:"Animation Start",eventNames:["animationstart","webkitAnimationStart"]});le({method:e,eventType:"Animation Iteration",eventNames:["animationiteration","webkitAnimationIteration"]});le({method:e,eventType:"Animation End",eventNames:["animationend","webkitAnimationEnd"]});le({method:e,eventType:"Input",eventName:"input"});le({method:e,eventType:"Mouse Up",eventName:"mouseup"});le({method:e,eventType:"Mouse Down",eventName:"mousedown"});le({method:e,eventType:"Orientation Change",eventName:"orientationchange"});le({method:e,eventType:"Print",eventName:["afterprint","beforeprint"]});le({method:e,eventType:"Ready State Change",eventName:"readystatechange"});le({method:e,eventType:"Touch Start",eventName:"touchstart"});le({method:e,eventType:"Touch End",eventName:"touchend"});le({method:e,eventType:"Touch Cancel",eventName:"touchcancel"});le({method:e,eventType:"Transition Start",eventNames:["transitionstart","webkitTransitionStart","MSTransitionStart","oTransitionStart","otransitionstart"]});le({method:e,eventType:"Transition Iteration",eventNames:["transitioniteration","webkitTransitionIteration","MSTransitionIteration","oTransitionIteration","otransitioniteration"]});le({method:e,eventType:"Transition End",eventNames:["transitionend","webkitTransitionEnd","MSTransitionEnd","oTransitionEnd","otransitionend"]});if("child"===R){le({method:e,eventType:"IFrame Resized",eventName:"resize"})}}function fe(e,t,n,r){if(t!==e){if(!(e in n)){Z(e+" is not a valid option for "+r+"CalculationMethod.");e=t}Q(r+' calculation method set to "'+e+'"')}return e}function de(){b=fe(b,m,Ne,"height")}function ue(){W=fe(W,L,Se,"width")}function ce(){if(true===n){se("add");ye()}else{Q("Auto Resize disabled")}}function ge(){if(null!==l){l.disconnect()}}function me(){se("remove");ge();clearInterval(v)}function be(){var e=document.createElement("div");e.style.clear="both";e.style.display="block";e.style.height="0";document.body.appendChild(e)}function he(){function e(){return{x:window.pageXOffset!==t?window.pageXOffset:document.documentElement.scrollLeft,y:window.pageYOffset!==t?window.pageYOffset:document.documentElement.scrollTop}}function n(t){var n=t.getBoundingClientRect(),r=e();return{x:parseInt(n.left,10)+parseInt(r.x,10),y:parseInt(n.top,10)+parseInt(r.y,10)}}function r(e){function r(e){var t=n(e);Q("Moving to in page link (#"+o+") at x: "+t.x+" y: "+t.y);We(t.y,t.x,"scrollToOffset")}var o=e.split("#")[1]||e,i=decodeURIComponent(o),a=document.getElementById(i)||document.getElementsByName(i)[0];if(t!==a){r(a)}else{Q("In page link (#"+o+") not found in iFrame, so sending to parent");We(0,0,"inPageLink","#"+o)}}function o(){var e=window.location.hash;var t=window.location.href;if(""!==e&&"#"!==e){r(t)}}function i(){function e(e){function t(e){e.preventDefault();r(this.getAttribute("href"))}if("#"!==e.getAttribute("href")){X(e,"click",t)}}Array.prototype.forEach.call(document.querySelectorAll('a[href^="#"]'),e)}function a(){X(window,"hashchange",o)}function l(){setTimeout(o,u)}function s(){if(Array.prototype.forEach&&document.querySelectorAll){Q("Setting up location.hash handlers");i();a();l()}else{Z("In page linking not fully supported in this browser! (See README.md for IE8 workaround)")}}if(x.enable){s()}else{Q("In page linking not enabled")}return{findTarget:r}}function pe(){if(k!==true)return;function e(e){We(0,0,e.type,e.screenY+":"+e.screenX)}function t(t,n){Q("Add event listener: "+n);X(window.document,t,e)}t("mouseenter","Mouse Enter");t("mouseleave","Mouse Leave")}function xe(){Q("Enable public methods");P.parentIFrame={autoResize:function e(t){if(true===t&&false===n){n=true;ce()}else if(false===t&&true===n){n=false;me()}We(0,0,"autoResize",JSON.stringify(n));return n},close:function e(){We(0,0,"close")},getId:function e(){return I},getPageInfo:function e(t){if("function"===typeof t){j=t;We(0,0,"pageInfo")}else{j=function(){};We(0,0,"pageInfoStop")}},moveToAnchor:function e(t){x.findTarget(t)},reset:function e(){Le("parentIFrame.reset")},scrollTo:function e(t,n){We(n,t,"scrollTo")},scrollToOffset:function e(t,n){We(n,t,"scrollToOffset")},sendMessage:function e(t,n){We(0,0,"message",JSON.stringify(t),n)},setHeightCalculationMethod:function e(t){b=t;de()},setWidthCalculationMethod:function e(t){W=t;ue()},setTargetOrigin:function e(t){Q("Set targetOrigin: "+t);S=t},size:function e(t,n){var r=""+(t||"")+(n?","+n:"");ze("size","parentIFrame.size("+r+")",t,n)}}}function we(){if(0!==w){Q("setInterval: "+w+"ms");v=setInterval((function(){ze("interval","setInterval: "+w)}),Math.abs(w))}}function ve(){function e(e){function t(e){if(false===e.complete){Q("Attach listeners to "+e.src);e.addEventListener("load",o,false);e.addEventListener("error",i,false);s.push(e)}}if(e.type==="attributes"&&e.attributeName==="src"){t(e.target)}else if(e.type==="childList"){Array.prototype.forEach.call(e.target.querySelectorAll("img"),t)}}function t(e){s.splice(s.indexOf(e),1)}function n(e){Q("Remove listeners from "+e.src);e.removeEventListener("load",o,false);e.removeEventListener("error",i,false);t(e)}function r(e,t,r){n(e.target);ze(t,r+": "+e.target.src)}function o(e){r(e,"imageLoad","Image loaded")}function i(e){r(e,"imageLoadFailed","Image load failed")}function a(t){ze("mutationObserver","mutationObserver: "+t[0].target+" "+t[0].type);t.forEach(e)}function l(){var e=document.querySelector("body"),t={attributes:true,attributeOldValue:false,characterData:true,characterDataOldValue:false,childList:true,subtree:true};d=new f(a);Q("Create body MutationObserver");d.observe(e,t);return d}var s=[],f=window.MutationObserver||window.WebKitMutationObserver,d=l();return{disconnect:function(){if("disconnect"in d){Q("Disconnect body MutationObserver");d.disconnect();s.forEach(n)}}}}function ye(){var e=0>w;if(window.MutationObserver||window.WebKitMutationObserver){if(e){we()}else{l=ve()}}else{Q("MutationObserver not supported in this browser!");we()}}function ke(e,t){var n=0;t=t||document.body;n=document.defaultView.getComputedStyle(t,null);n=null!==n?n[e]:0;return parseInt(n,r)}function Ee(e){if(e>A/2){A=2*e;Q("Event throttle increased to "+A+"ms")}}function Te(e,t){var n=t.length,r=0,o=0,i=J(e),a=Date.now();for(var l=0;l<n;l++){r=t[l].getBoundingClientRect()[e]+ke("margin"+i,t[l]);if(r>o){o=r}}a=Date.now()-a;Q("Parsed "+n+" HTML elements");Q("Element position calculated in "+a+"ms");Ee(a);return o}function Ie(e){return[e.bodyOffset(),e.bodyScroll(),e.documentElementOffset(),e.documentElementScroll()]}function Oe(e,t){function n(){Z("No tagged elements ("+t+") found on page");return document.querySelectorAll("body *")}var r=document.querySelectorAll("["+t+"]");if(r.length===0)n();return Te(e,r)}function Re(){return document.querySelectorAll("body *")}var Ne={bodyOffset:function e(){return document.body.offsetHeight+ke("marginTop")+ke("marginBottom")},offset:function(){return Ne.bodyOffset()},bodyScroll:function e(){return document.body.scrollHeight},custom:function e(){return B.height()},documentElementOffset:function e(){return document.documentElement.offsetHeight},documentElementScroll:function e(){return document.documentElement.scrollHeight},max:function e(){return Math.max.apply(null,Ie(Ne))},min:function e(){return Math.min.apply(null,Ie(Ne))},grow:function e(){return Ne.max()},lowestElement:function e(){return Math.max(Ne.bodyOffset()||Ne.documentElementOffset(),Te("bottom",Re()))},taggedElement:function e(){return Oe("bottom","data-iframe-height")}},Se={bodyScroll:function e(){return document.body.scrollWidth},bodyOffset:function e(){return document.body.offsetWidth},custom:function e(){return B.width()},documentElementScroll:function e(){return document.documentElement.scrollWidth},documentElementOffset:function e(){return document.documentElement.offsetWidth},scroll:function e(){return Math.max(Se.bodyScroll(),Se.documentElementScroll())},max:function e(){return Math.max.apply(null,Ie(Se))},min:function e(){return Math.min.apply(null,Ie(Se))},rightMostElement:function e(){return Te("right",Re())},taggedElement:function e(){return Oe("right","data-iframe-width")}};function Ce(e,n,r,o){function i(){g=c;F=m;We(g,F,e)}function a(){function e(e,t){var n=Math.abs(e-t)<=C;return!n}c=t!==r?r:Ne[b]();m=t!==o?o:Se[W]();return e(g,c)||f&&e(F,m)}function l(){return!(e in{init:1,interval:1,size:1})}function s(){return b in O||f&&W in O}function d(){Q("No change in size detected")}function u(){if(l()&&s()){Le(n)}else if(!(e in{interval:1})){d()}}var c,m;if(a()||"init"===e){Ae();i()}else{u()}}var Me=G(Ce);function ze(e,t,n,r){function o(){if(!(e in{reset:1,resetPage:1,init:1})){Q("Trigger event: "+t)}}function i(){return M&&e in d}if(!i()){o();if(e==="init"){Ce(e,t,n,r)}else{Me(e,t,n,r)}}else{Q("Trigger event cancelled: "+e)}}function Ae(){if(!M){M=true;Q("Trigger event lock on")}clearTimeout(z);z=setTimeout((function(){M=false;Q("Trigger event lock off");Q("--")}),u)}function Fe(e){g=Ne[b]();F=Se[W]();We(g,F,e)}function Le(e){var t=b;b=m;Q("Reset trigger event: "+e);Ae();Fe("reset");b=t}function We(e,n,r,o,i){function a(){if(t===i){i=S}else{Q("Message targetOrigin: "+i)}}function l(){var a=e+":"+n,l=I+":"+a+":"+r+(t!==o?":"+o:"");Q("Sending message to host page ("+l+")");N.postMessage(E+l,i)}{a();l()}}function Pe(t){var n={init:function e(){p=t.data;N=t.source;$();c=false;setTimeout((function(){h=false}),u)},reset:function e(){if(!h){Q("Page size reset by host page");Fe("resetPage")}else{Q("Page reset ignored by init")}},resize:function e(){ze("resizeParent","Parent window requested size check")},moveToAnchor:function e(){x.findTarget(i())},inPageLink:function e(){this.moveToAnchor()},pageInfo:function e(){var t=i();Q("PageInfoFromParent called from parent: "+t);j(JSON.parse(t));Q(" --")},message:function e(){var t=i();Q("onMessage called from parent: "+t);H(JSON.parse(t));Q(" --")}};function r(){return E===(""+t.data).substr(0,T)}function o(){return t.data.split("]")[1].split(":")[0]}function i(){return t.data.substr(t.data.indexOf(":")+1)}function a(){return!e.exports&&"iFrameResize"in window||"jQuery"in window&&"iFrameResize"in window.jQuery.prototype}function l(){return t.data.split(":")[2]in{true:1,false:1}}function s(){var e=o();if(e in n){n[e]()}else if(!a()&&!l()){Z("Unexpected message ("+t.data+")")}}function f(){if(false===c){s()}else if(l()){n.init()}else{Q('Ignored message of type "'+o()+'". Received before initialization.')}}if(r()){f()}}function He(){if("loading"!==document.readyState){window.parent.postMessage("[iFrameResizerChild]Ready","*")}}X(window,"message",Pe);X(window,"readystatechange",He);He()})()}));var V=U;var _=U;var X=q;var Y={iframeResize:V,iframeResizer:_,iframeResizerContentWindow:X};var J=Y;var G=function(e){return e.items.slice(1,-1).map((function(n){return t("li",{key:n.url},t("a",{href:n.url,class:"nav-link",tabindex:e.focusable===false?"-1":undefined},t("span",null,n.text)),e.icons?t(f,{name:"pi-arrow-down",classNames:"rotate-270"}):null)}))};var K=function(e){return t("div",{class:"middle-dropdown-container"},t("button",{class:"middle-dropdown-button btn btn-blank",type:"button",onClick:function(t){return e.clickHandler(t)},tabindex:e.focusable===false?"-1":undefined},t("span",{class:"visually-hidden"},g("Open menu")),t("span",{"aria-hidden":"true"},"...")),t(f,{name:"pi-arrow-down",classNames:"rotate-270"}),e.dropdownOpen?t("nav",{class:"middle-dropdown"},t("ul",{class:"no-list"},t(G,{items:e.items,icons:false,focusable:e.focusable}))):null)};var Q=function(e){var n;var r=e.items[0];var o=e.items[e.items.length-1];return t("ol",{class:"no-list breadcrumbs-list"},t("li",null,t("a",{class:"home-link nav-link",href:r.url,tabindex:e.focusable===false?"-1":undefined},t("span",{class:"visually-hidden"},r.text),t(f,{name:"pi-home"})),t(f,{name:"pi-arrow-down",classNames:"rotate-270"})),e.isConcatenated?t("li",null,t(K,{items:e.items,dropdownOpen:(n=e.dropdownOpen)!==null&&n!==void 0?n:false,clickHandler:function(t){return e.clickHandler(t)},focusable:e.focusable})):t(G,{items:e.items,icons:true,focusable:e.focusable}),t("li",null,t("a",{class:"last-link nav-link",href:o.url,tabindex:e.focusable===false?"-1":undefined,ref:function(t){return e.lastItemRef!==undefined?e.lastItemRef(t):null}},o.text)))};var Z='/*!\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 */.btn-close{-webkit-box-sizing:content-box;box-sizing:content-box;width:1.5rem;height:1.5rem;padding:1rem 1rem;color:#000;background:transparent url("data:image/svg+xml,%3Csvg version=\'1.1\' xmlns=\'http://www.w3.org/2000/svg\' width=\'32\' height=\'32\' viewBox=\'0 0 32 32\'%3E%3Cpath opacity=\'1\' fill=\'%23000000\' d=\'M16.267 16.667l6.667-6.533-0.933-1.067-6.667 6.667-6.667-6.667-0.933 1.067 6.667 6.533-6.667 6.667 1.067 0.933 6.533-6.667 6.667 6.667 0.933-1.067z\'%3E%3C/path%3E%3C/svg%3E") center/1.5rem auto no-repeat;border:0;border-radius:3px;opacity:0.5}.btn-close:hover{color:#000;text-decoration:none;opacity:0.75}.btn-close:focus{outline:0;-webkit-box-shadow:0 0 0 0.125rem rgba(51, 51, 51, 0.25);box-shadow:0 0 0 0.125rem rgba(51, 51, 51, 0.25);opacity:1}.btn-close:disabled,.btn-close.disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:0.25}.btn-close-white{-webkit-filter:invert(1) grayscale(100%) brightness(200%);filter:invert(1) grayscale(100%) brightness(200%)}.btn-close{height:unset;min-height:1.5rem}@media (forced-colors: active), (-ms-high-contrast: active), (-ms-high-contrast: white-on-black){.btn-close{opacity:1;background:transparent url("data:image/svg+xml,%3Csvg version=\'1.1\' xmlns=\'http://www.w3.org/2000/svg\' width=\'32\' height=\'32\' viewBox=\'0 0 32 32\'%3E%3Cpath opacity=\'1\' fill=\'%23ffffff\' d=\'M16.267 16.667l6.667-6.533-0.933-1.067-6.667 6.667-6.667-6.667-0.933 1.067 6.667 6.533-6.667 6.667 1.067 0.933 6.533-6.667 6.667 6.667 0.933-1.067z\'%3E%3C/path%3E%3C/svg%3E") center/1.5rem auto no-repeat}}.btn-close:focus{outline:2px solid var(--post-contrast-color);-webkit-box-shadow:none;box-shadow:none}.btn-close:focus:not(:focus-visible){outline:0}@media (forced-colors: active), (-ms-high-contrast: active), (-ms-high-contrast: white-on-black){.btn-close-white{-webkit-filter:none;filter:none}}.btn-default,.btn-secondary{border:2px solid rgba(var(--post-contrast-color-rgb), 0.2)}.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);color:var(--post-contrast-color)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-default,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .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-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-default:focus,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-secondary:focus,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-default:not(:disabled):hover,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-secondary:not(:disabled):hover,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .pretend-hover.btn-default,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .pretend-hover.btn-secondary{border-color:rgba(var(--post-contrast-color-rgb), 0.4)}.btn-default:disabled,.btn-secondary:disabled{border-color:rgba(var(--post-contrast-color-rgb), 0.4);color:rgba(var(--post-contrast-color-rgb), 0.6)}.btn{min-height:3rem;padding:0 2rem;font-size:1rem;gap:1rem;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:3px;background-color:transparent;-webkit-box-shadow:none;box-shadow:none;color:var(--post-contrast-color);font-family:inherit;font-weight:400;line-height:inherit;text-decoration:none !important;white-space:nowrap}.btn>.pi{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:transparent;background-color:rgba(var(--post-contrast-color-rgb), 0.8);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-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-primary{background-color:var(--post-contrast-color)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-primary:focus,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-primary:not(:disabled):hover,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-primary.pretend-hover{background-color:rgba(var(--post-contrast-color-rgb), 0.8)}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .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:rgba(var(--post-contrast-color-rgb), 0.4)}.btn-primary .pi{-webkit-filter:invert(1);filter:invert(1);forced-color-adjust:none}:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-default .pi,:is(.bg-dark,.bg-primary,.bg-black,.bg-success,.bg-danger,.bg-nightblue,.bg-nightblue-bright,.bg-petrol,.bg-petrol-bright,.bg-coral,.bg-coral-bright,.bg-olive,.bg-purple,.bg-purple-bright,.bg-aubergine,.bg-aubergine-bright) .btn-secondary .pi{-webkit-filter:invert(1);filter:invert(1)}.btn-link,.btn-tertiary{border:0;padding-right:0.375rem;padding-left:0.375rem}.btn-link:focus,.btn-link:not(:disabled):hover,.btn-link.pretend-hover,.btn-tertiary:focus,.btn-tertiary:not(:disabled):hover,.btn-tertiary.pretend-hover{color:rgba(var(--post-contrast-color-rgb), 0.8)}.btn-link:disabled,.btn-tertiary:disabled{color:rgba(var(--post-contrast-color-rgb), 0.6)}@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:0.75rem;padding-left:0.75rem}.btn-icon.btn-sm{min-width:2rem;padding-right:0.375rem;padding-left:0.375rem}.btn-icon.btn-rg{min-width:2.5rem;padding-right:0.5625rem;padding-left:0.5625rem}.btn-icon.btn-lg{min-width:3.5rem;padding-right:0.875rem;padding-left:0.875rem}.btn-animated:not(.btn-link,.btn-tertiary)::after{content:"";position:absolute;right:1.25rem;width:0.625em;height:0.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:0.5rem}.btn-animated:not(.btn-link,.btn-tertiary).btn-rg::after{right:0.875rem}.btn-animated:not(.btn-link,.btn-tertiary).btn-lg::after{right:1.5rem}.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.75rem);transform:translateX(-0.75rem)}.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.625rem);transform:translateX(-0.625rem)}.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(-1rem);transform:translateX(-1rem)}.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;padding:0 1rem;font-size:0.8125rem;gap:0.5rem}.btn-sm>.pi{width:1rem;height:1rem}.btn-rg{min-height:2.5rem;padding:0 1.5rem;font-size:1rem;gap:0.75rem}.btn-rg>.pi{width:1.125rem;height:1.125rem}.btn-lg{min-height:3.5rem;padding:0 2.5rem;font-size:1.0625rem;gap:1.25rem}.btn-lg>.pi{width:1.5rem;height:1.5rem}.btn-nightblue{border-color:transparent;background-color:#004976;color:#fff}.btn-nightblue:focus,.btn-nightblue:not(:disabled):hover,.btn-nightblue.pretend-hover{background-color:#002943}.btn-nightblue-bright{border-color:transparent;background-color:#0076a8;color:#fff}.btn-nightblue-bright:focus,.btn-nightblue-bright:not(:disabled):hover,.btn-nightblue-bright.pretend-hover{background-color:#005275}.btn-petrol{border-color:transparent;background-color:#006d68;color:#fff}.btn-petrol:focus,.btn-petrol:not(:disabled):hover,.btn-petrol.pretend-hover{background-color:#003a37}.btn-petrol-bright{border-color:transparent;background-color:#00968f;color:#fff}.btn-petrol-bright:focus,.btn-petrol-bright:not(:disabled):hover,.btn-petrol-bright.pretend-hover{background-color:#00635e}.btn-coral{border-color:transparent;background-color:#9e2a2f;color:#fff}.btn-coral:focus,.btn-coral:not(:disabled):hover,.btn-coral.pretend-hover{background-color:#761f23}.btn-coral-bright{border-color:transparent;background-color:#e03c31;color:#fff}.btn-coral-bright:focus,.btn-coral-bright:not(:disabled):hover,.btn-coral-bright.pretend-hover{background-color:#c1271d}.btn-olive{border-color:transparent;background-color:#716135;color:#fff}.btn-olive:focus,.btn-olive:not(:disabled):hover,.btn-olive.pretend-hover{background-color:#4e4325}.btn-olive-bright{border-color:transparent;background-color:#aa9d2e}.btn-olive-bright:focus,.btn-olive-bright:not(:disabled):hover,.btn-olive-bright.pretend-hover{background-color:#827823}.btn-purple{border-color:transparent;background-color:#80276c;color:#fff}.btn-purple:focus,.btn-purple:not(:disabled):hover,.btn-purple.pretend-hover{background-color:#591b4b}.btn-purple-bright{border-color:transparent;background-color:#c5299b;color:#fff}.btn-purple-bright:focus,.btn-purple-bright:not(:disabled):hover,.btn-purple-bright.pretend-hover{background-color:#9b207a}.btn-aubergine{border-color:transparent;background-color:#523178;color:#fff}.btn-aubergine:focus,.btn-aubergine:not(:disabled):hover,.btn-aubergine.pretend-hover{background-color:#392254}.btn-aubergine-bright{border-color:transparent;background-color:#7566a0;color:#fff}.btn-aubergine-bright:focus,.btn-aubergine-bright:not(:disabled):hover,.btn-aubergine-bright.pretend-hover{background-color:#5e5182}.btn-success{border-color:transparent;background-color:#2c911c;color:#fff}.btn-success:focus,.btn-success:not(:disabled):hover,.btn-success.pretend-hover{background-color:#1f6614}.btn-info{border-color:transparent;background-color:#fc0}.btn-info:focus,.btn-info:not(:disabled):hover,.btn-info.pretend-hover{background-color:#cca300}.btn-warning{border-color:transparent;background-color:#f49e00}.btn-warning:focus,.btn-warning:not(:disabled):hover,.btn-warning.pretend-hover{background-color:#c17d00}.btn-danger{border-color:transparent;background-color:#a51728;color:#fff}.btn-danger:focus,.btn-danger:not(:disabled):hover,.btn-danger.pretend-hover{background-color:#78111d}.row{--bs-gutter-x:30px;--bs-gutter-y:0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-0.5 * var(--bs-gutter-x));margin-left:calc(-0.5 * var(--bs-gutter-x))}.row>*{-ms-flex-negative:0;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * 0.5);padding-left:calc(var(--bs-gutter-x) * 0.5);margin-top:var(--bs-gutter-y)}.col{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width: 400px){.col-sm{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-sm-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-sm-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-sm-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-sm-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-sm-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-sm-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-sm-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-sm-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-sm-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-sm-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-sm-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width: 600px){.col-rg{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-rg-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-rg-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-rg-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-rg-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-rg-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-rg-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-rg-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-rg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-rg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-rg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-rg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-rg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-rg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-rg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-rg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-rg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-rg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-rg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-rg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-rg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-rg-0{margin-left:0}.offset-rg-1{margin-left:8.33333333%}.offset-rg-2{margin-left:16.66666667%}.offset-rg-3{margin-left:25%}.offset-rg-4{margin-left:33.33333333%}.offset-rg-5{margin-left:41.66666667%}.offset-rg-6{margin-left:50%}.offset-rg-7{margin-left:58.33333333%}.offset-rg-8{margin-left:66.66666667%}.offset-rg-9{margin-left:75%}.offset-rg-10{margin-left:83.33333333%}.offset-rg-11{margin-left:91.66666667%}.g-rg-0,.gx-rg-0{--bs-gutter-x:0}.g-rg-0,.gy-rg-0{--bs-gutter-y:0}.g-rg-1,.gx-rg-1{--bs-gutter-x:0.25rem}.g-rg-1,.gy-rg-1{--bs-gutter-y:0.25rem}.g-rg-2,.gx-rg-2{--bs-gutter-x:0.5rem}.g-rg-2,.gy-rg-2{--bs-gutter-y:0.5rem}.g-rg-3,.gx-rg-3{--bs-gutter-x:1rem}.g-rg-3,.gy-rg-3{--bs-gutter-y:1rem}.g-rg-4,.gx-rg-4{--bs-gutter-x:1.5rem}.g-rg-4,.gy-rg-4{--bs-gutter-y:1.5rem}.g-rg-5,.gx-rg-5{--bs-gutter-x:3rem}.g-rg-5,.gy-rg-5{--bs-gutter-y:3rem}}@media (min-width: 780px){.col-md{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-md-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-md-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-md-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-md-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-md-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-md-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-md-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-md-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-md-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-md-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-md-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-md-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-md-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-md-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-md-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-md-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width: 1024px){.col-lg{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-lg-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-lg-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-lg-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-lg-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-lg-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-lg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-lg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-lg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-lg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-lg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-lg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width: 1280px){.col-xl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-xl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-xl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-xl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-xl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-xl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width: 1441px){.col-xxl{-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xxl-1>*{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xxl-2>*{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xxl-3>*{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xxl-5>*{-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xxl-6>*{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xxl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-xxl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-xxl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-xxl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-xxl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-xxl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-xxl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-xxl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-xxl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-xxl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-xxl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-xxl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.container,.container-fluid,.container-xs{width:100%;padding-right:var(--bs-gutter-x, 15px);padding-left:var(--bs-gutter-x, 15px);margin-right:auto;margin-left:auto}.container{max-width:1440px}.vertical-gutters{margin-bottom:-30px}.vertical-gutters>.col,.vertical-gutters>[class*=col-]{padding-bottom:30px}.row.border-gutters{margin-right:-1px;margin-bottom:-1px;margin-left:0}.row.border-gutters>.col,.row.border-gutters>[class*=col-]{padding-right:1px;padding-bottom:1px;padding-left:0}.container{padding-right:12px;padding-left:12px}.container-reset{margin-right:-12px;margin-left:-12px}.container-reset-left{margin-left:-12px}.container-reset-right{margin-right:-12px}@media (max-width: 399.98px){.container-fluid-xs{padding-right:1rem;padding-left:1rem}}@media (min-width: 400px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 400px){.container-reset{margin-right:-16px;margin-left:-16px}}@media (min-width: 400px){.container-reset-left{margin-left:-16px}}@media (min-width: 400px){.container-reset-right{margin-right:-16px}}@media (min-width: 400px) and (max-width: 599.98px){.container-fluid-sm{padding-right:1rem;padding-left:1rem}}@media (min-width: 600px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 600px){.container-reset{margin-right:-32px;margin-left:-32px}}@media (min-width: 600px){.container-reset-left{margin-left:-32px}}@media (min-width: 600px){.container-reset-right{margin-right:-32px}}@media (min-width: 600px) and (max-width: 779.98px){.container-fluid-rg{padding-right:1rem;padding-left:1rem}}@media (min-width: 780px) and (max-width: 1023.98px){.container-fluid-md{padding-right:1rem;padding-left:1rem}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}@media (min-width: 1024px){.container-reset{margin-right:-40px;margin-left:-40px}}@media (min-width: 1024px){.container-reset-left{margin-left:-40px}}@media (min-width: 1024px){.container-reset-right{margin-right:-40px}}@media (min-width: 1024px) and (max-width: 1279.98px){.container-fluid-lg{padding-right:1rem;padding-left:1rem}}@media (min-width: 1280px){.container{padding-right:128px;padding-left:128px}}@media (min-width: 1280px){.container-reset{margin-right:-128px;margin-left:-128px}}@media (min-width: 1280px){.container-reset-left{margin-left:-128px}}@media (min-width: 1280px){.container-reset-right{margin-right:-128px}}@media (min-width: 1280px) and (max-width: 1440.98px){.container-fluid-xl{padding-right:1rem;padding-left:1rem}}@media (min-width: 1441px){.container-fluid-xxl{padding-right:1rem;padding-left:1rem}}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:0.75rem;background-color:#cccccc;border-radius:3px}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#333333;-webkit-transition:width 0.6s ease;transition:width 0.6s ease}@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:1rem 1rem}.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:transparent;border-bottom-color:#e6e6e6}.loader.loader-sm{width:2rem;height:2rem;border-width:0.25rem}.loader.loader-xs{width:0.75rem;height:0.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:transparent}}}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:700;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Bold.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:400;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Rg.woff") format("woff")}@font-face{font-display:swap;font-family:"Frutiger Neue For Post";font-weight:300;src:url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff2") format("woff2"), url("https://fonts.post.ch/frutigerneueforpost/v2/FrutigerNeueforPostW05-Lt.woff") format("woff")}*,:host,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}:host{font-family:"Frutiger Neue For Post", system-ui, sans-serif}button{font:inherit;padding:0}img,svg{max-width:100%;max-height:100%}@media (forced-colors: active){svg{color:white}}.no-list{list-style:none;padding-left:0;margin-top:0;margin-bottom:0}.btn-blank{background-color:transparent;border:none;border-radius:0;padding:0}.nav-link{text-decoration:none;color:rgba(0, 0, 0, 0.8);-webkit-transition:color 200ms;transition:color 200ms;background-color:transparent;border-radius:0;-webkit-box-shadow:none;box-shadow:none;border:0;margin:0;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;gap:0.5rem}.nav-link:hover,.nav-link:focus{color:black}.nav-link>svg{width:1.4em;height:1.4em;-ms-flex-negative:0;flex-shrink:0}.nav-link>span{-ms-flex-negative:1;flex-shrink:1}.box>*:first-child{margin-top:0}.box>*:last-child{margin-bottom:0}.mirrored{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.bold{font-weight:700}.light{font-weight:300}.d-flex{display:-ms-flexbox;display:flex}.d-inline-flex{display:-ms-inline-flexbox;display:inline-flex}.align-items-center{-ms-flex-align:center;align-items:center}@media (min-width: 1441px){.wide-container{margin:0 auto;max-width:1440px}}@media (max-width: 599.98px){.container{padding-right:16px;padding-left:16px}}@media (min-width: 600px) and (max-width: 1023.98px){.container{padding-right:32px;padding-left:32px}}@media (min-width: 1024px){.container{padding-right:40px;padding-left:40px}}.visually-hidden{position:absolute;width:1px;height:1px;border:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0)}@media (max-width: -0.02px){.hidden-xs{display:none}}@media (max-width: 399.98px){.hidden-sm{display:none}}@media (max-width: 599.98px){.hidden-rg{display:none}}@media (max-width: 779.98px){.hidden-md{display:none}}@media (max-width: 1023.98px){.hidden-lg{display:none}}@media (max-width: 1279.98px){.hidden-xl{display:none}}@media (max-width: 1440.98px){.hidden-xxl{display:none}}:host{display:block;position:relative}.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}@media (max-width: 599.98px){.breadcrumbs{font-size:0.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}.breadcrumbs-list li:last-child a{border:2px solid transparent;outline-offset:0}.breadcrumbs-list svg{margin-left:0 !important;width:1.5em;height:1.5em;color:rgba(0, 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:0.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, 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:white;border:1px solid #e6e6e6;padding:0.5rem 0;z-index:1}.middle-dropdown .nav-link{padding:0.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:0.25rem;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, 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:white;-webkit-box-shadow:0 0 40px rgba(0, 0, 0, 0.6);box-shadow:0 0 40px rgba(0, 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;top:1rem;right:1rem;cursor:pointer;padding:0.5rem;color:rgba(0, 0, 0, 0.8)}.overlay-close:hover,.overlay-close:focus{color:black}.overlay-close.phone{color:white}.overlay-close.phone:hover,.overlay-close.phone:focus{color:rgba(255, 255, 255, 0.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}.visually-hidden{visibility:hidden}';var $=e("swisspost_internet_breadcrumbs",function(){function e(e){n(this,e);this.customItems=undefined;this.customBreadcrumbItems=undefined;this.overlayVisible=undefined;this.isConcatenated=undefined;this.dropdownOpen=false;this.refsReady=false}e.prototype.connectedCallback=function(){this.debouncedResize=i(200,this.handleResize.bind(this));window.addEventListener("resize",this.debouncedResize,{passive:true})};e.prototype.disconnectedCallback=function(){window.removeEventListener("resize",this.debouncedResize);window.removeEventListener("click",this.handleWindowClick);a()};e.prototype.componentWillLoad=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){try{this.customBreadcrumbItems=typeof this.customItems==="string"?JSON.parse(this.customItems):this.customItems}catch(e){console.error(e)}return[2]}))}))};e.prototype.componentDidLoad=function(){var e=this;window.requestAnimationFrame((function(){e.handleResize()}))};e.prototype.handleCustomConfigChage=function(e){try{this.customBreadcrumbItems=typeof e==="string"?JSON.parse(e):e}catch(e){console.error(e)}};e.prototype.handleResize=function(){if(window.innerWidth===this.lastWindowWidth){return}this.lastWindowWidth=window.innerWidth;this.checkConcatenation()};e.prototype.checkConcatenation=function(){var e=this;if(this.controlNavRef&&this.visibleNavRef){this.refsReady=true;window.requestAnimationFrame((function(){if(e.controlNavRef&&e.visibleNavRef){e.isConcatenated=e.controlNavRef.clientWidth>e.visibleNavRef.clientWidth}}))}};e.prototype.toggleOverlay=function(e,t){var n=this;var r;var o=t!==null&&t!==void 0?t:!this.overlayVisible;if(o){this.overlayVisible=o;this.currentOverlay=e;this.setBodyScroll(e)}else{var i=(r=this.host.shadowRoot)===null||r===void 0?void 0:r.querySelector('.breadcrumb-buttons [aria-expanded="true"]');if(this.openAnimation&&this.loadedAnimation){this.openAnimation.reverse();this.loadedAnimation.reverse();Promise.all([this.openAnimation.finished,this.loadedAnimation.finished]).then((function(){if(i){i.focus()}n.overlayVisible=o;n.setBodyScroll(e)}))}}};e.prototype.setBodyScroll=function(e){if(this.overlayVisible){l(e,{reserveScrollBarGap:true})}else{s(e)}};e.prototype.toggleDropdown=function(e){var t=this;this.dropdownOpen=e!==null&&e!==void 0?e:!this.dropdownOpen;if(this.dropdownOpen){requestAnimationFrame((function(){document.addEventListener("click",t.handleWindowClick.bind(t),{once:true})}))}};e.prototype.handleWindowClick=function(){this.toggleDropdown(false)};e.prototype.registerIFrameResizer=function(e){var t=this;if(!e){return}e.addEventListener("load",(function(){var n,r,o;J.iframeResizer({heightCalculationMethod:"taggedElement",scrolling:true,checkOrigin:false},e);var i=m?0:300;t.loadedAnimation=(n=e.parentElement)===null||n===void 0?void 0:n.animate([{opacity:1,visibility:"visible",transform:"translateY(0px)"}],{duration:i,fill:"forwards"});(r=e.parentElement)===null||r===void 0?void 0:r.classList.add("loaded");(o=t.loadedAnimation)===null||o===void 0?void 0:o.finished.then((function(){var t;(t=e.parentElement)===null||t===void 0?void 0:t.focus()}))}))};e.prototype.overlayRef=function(e){if(!e){return}var t=m?0:500;this.openAnimation=e.animate([{opacity:1,visibility:"visible"}],{duration:t,fill:"forwards"})};e.prototype.handleKeyDown=function(e){if(e.key.toLowerCase()==="escape"){this.toggleOverlay(this.currentOverlay,false)}};e.prototype.handleToggleDropdown=function(){this.toggleDropdown()};e.prototype.handleToggleOverlay=function(){this.toggleOverlay(this.currentOverlay,false)};e.prototype.handleControlNavRef=function(e){this.controlNavRef=e;this.checkConcatenation()};e.prototype.handleVisibleNavRef=function(e){this.visibleNavRef=e;this.checkConcatenation()};e.prototype.render=function(){var e=this;if(!d){console.warn("Internet Breadcrumbs: Could not load config. Please make sure that you included the <swisspost-internet-header></swisspost-internet-header> component.");return null}if(!d.localizedConfig){return null}if(!d.localizedConfig.breadcrumb){console.warn('Internet Header: Current project "'.concat(d.projectId,'" does not include a breadcrumb config. The breadcrumbs will not be rendered. Remove '),document.querySelector("swisspost-internet-breadcrumbs"),"from your markup or configure the breadcrumbs in your portal config to stop seeing this warning.");return null}var n=d.localizedConfig.breadcrumb;var o=this.customBreadcrumbItems!==undefined?__spreadArray(__spreadArray([],n.items,true),this.customBreadcrumbItems,true):n.items;return t(r,null,t(c,null),t("div",{class:"breadcrumbs"},t("div",{class:"hidden-control-breadcrumbs","aria-hidden":"true",tabindex:"-1"},t("nav",{class:"breadcrumbs-nav",ref:function(t){return t!==undefined&&e.handleControlNavRef(t)}},t(Q,{items:o,focusable:false,clickHandler:function(){}}))),t("h2",{class:"visually-hidden"},n.a11yLabel),t("nav",{ref:function(t){return t!==undefined&&e.handleVisibleNavRef(t)},class:{"breadcrumbs-nav":true,"visually-hidden":!this.refsReady}},t(Q,{items:o,dropdownOpen:this.dropdownOpen,isConcatenated:this.isConcatenated,clickHandler:function(){return e.handleToggleDropdown()}})),t("div",{class:"breadcrumb-buttons"},n.buttons.map((function(n){return t("button",{class:"btn btn-secondary btn-icon",key:n.text,"aria-expanded":"".concat(!!e.overlayVisible&&e.currentOverlay===n.overlay),onClick:function(){return e.toggleOverlay(n.overlay,true)}},t(f,{name:n.svgIcon.name}),t("span",{class:"visually-hidden"},n.text))}))),this.overlayVisible&&t(B,{overlayRef:function(t){return t!==undefined&&e.overlayRef(t)},iFrameRef:function(t){return t!==undefined&&e.registerIFrameResizer(t)},overlay:this.currentOverlay,onClick:function(){return e.handleToggleOverlay()},onKeyDown:function(t){return e.handleKeyDown(t)},closeButtonText:d.localizedConfig.header.translations.closeButtonText})),t("slot",null))};Object.defineProperty(e.prototype,"host",{get:function(){return o(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{customItems:["handleCustomConfigChage"]}},enumerable:false,configurable:true});return e}());$.style=Z}}}));
7
- //# sourceMappingURL=p-d713a3b3.system.entry.js.map