@swisspost/internet-header 1.8.1-beta.0 → 1.8.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 (320) hide show
  1. package/dist/cjs/{if.component-51d000af.js → if.component-2cd3c1ff.js} +1 -1
  2. package/dist/cjs/if.component-2cd3c1ff.js.map +1 -0
  3. package/dist/cjs/{index-5aa18735.js → index-aeced481.js} +5 -9
  4. package/dist/cjs/index-aeced481.js.map +1 -0
  5. package/dist/cjs/{klp-widget.controller-847b6688.js → klp-widget.controller-d7773c17.js} +1 -1
  6. package/dist/cjs/{klp-widget.controller-847b6688.js.map → klp-widget.controller-d7773c17.js.map} +1 -1
  7. package/dist/cjs/{language.service-2d0a1edd.js → language.service-e4007f49.js} +2 -2
  8. package/dist/cjs/language.service-e4007f49.js.map +1 -0
  9. package/dist/cjs/loader.cjs.js +1 -10
  10. package/dist/cjs/loader.cjs.js.map +1 -1
  11. package/dist/cjs/post-klp-login-widget.cjs.entry.js +5 -5
  12. package/dist/cjs/post-klp-login-widget.cjs.entry.js.map +1 -1
  13. package/dist/cjs/post-language-switch.cjs.entry.js +6 -6
  14. package/dist/cjs/post-language-switch.cjs.entry.js.map +1 -1
  15. package/dist/cjs/post-logo.cjs.entry.js +2 -2
  16. package/dist/cjs/post-logo.cjs.entry.js.map +1 -1
  17. package/dist/cjs/post-main-navigation.cjs.entry.js +6 -6
  18. package/dist/cjs/post-main-navigation.cjs.entry.js.map +1 -1
  19. package/dist/cjs/post-meta-navigation.cjs.entry.js +2 -2
  20. package/dist/cjs/post-meta-navigation.cjs.entry.js.map +1 -1
  21. package/dist/cjs/post-search.cjs.entry.js +7 -7
  22. package/dist/cjs/post-search.cjs.entry.js.map +1 -1
  23. package/dist/cjs/post-skiplinks.cjs.entry.js +4 -4
  24. package/dist/cjs/post-skiplinks.cjs.entry.js.map +1 -1
  25. package/dist/cjs/{store-3355e50f.js → store-312fe71f.js} +2 -2
  26. package/dist/cjs/store-312fe71f.js.map +1 -0
  27. package/dist/cjs/{svg-icon.component-74d2326c.js → svg-icon.component-2f8c99ec.js} +2 -2
  28. package/dist/cjs/svg-icon.component-2f8c99ec.js.map +1 -0
  29. package/dist/cjs/{svg-sprite.component-4fd3c959.js → svg-sprite.component-5334639c.js} +2 -2
  30. package/dist/cjs/svg-sprite.component-5334639c.js.map +1 -0
  31. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +6 -6
  32. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js.map +1 -1
  33. package/dist/cjs/swisspost-internet-footer.cjs.entry.js +3 -3
  34. package/dist/cjs/swisspost-internet-footer.cjs.entry.js.map +1 -1
  35. package/dist/cjs/swisspost-internet-header.cjs.entry.js +29 -26
  36. package/dist/cjs/swisspost-internet-header.cjs.entry.js.map +1 -1
  37. package/dist/cjs/swisspost-internet-header.cjs.js +2 -5
  38. package/dist/cjs/swisspost-internet-header.cjs.js.map +1 -1
  39. package/dist/cjs/{ui.service-e1ebb6d4.js → ui.service-488151be.js} +1 -1
  40. package/dist/cjs/ui.service-488151be.js.map +1 -0
  41. package/dist/cjs/{utils-60853c5d.js → utils-717975e0.js} +1 -1
  42. package/dist/cjs/utils-717975e0.js.map +1 -0
  43. package/dist/collection/collection-manifest.json +11 -11
  44. package/dist/collection/components/post-internet-breadcrumbs/components/breadcrumb-list.component.js +4 -4
  45. package/dist/collection/components/post-internet-breadcrumbs/components/focus-trap.component.js +2 -2
  46. package/dist/collection/components/post-internet-breadcrumbs/components/middle-dropdown.component.js +4 -4
  47. package/dist/collection/components/post-internet-breadcrumbs/components/middle-links.component.js +2 -2
  48. package/dist/collection/components/post-internet-breadcrumbs/components/overlay.component.js +3 -3
  49. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js +12 -11
  50. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js.map +1 -1
  51. package/dist/collection/components/post-internet-footer/components/post-footer-block-address.component.js +2 -2
  52. package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js +1 -1
  53. package/dist/collection/components/post-internet-footer/components/post-footer-block-custom.component.js +1 -1
  54. package/dist/collection/components/post-internet-footer/components/post-footer-block-list.component.js +1 -1
  55. package/dist/collection/components/post-internet-footer/components/post-footer-block-socials.component.js +1 -1
  56. package/dist/collection/components/post-internet-footer/post-internet-footer.js +7 -7
  57. package/dist/collection/components/post-internet-header/post-internet-header.js +21 -15
  58. package/dist/collection/components/post-internet-header/post-internet-header.js.map +1 -1
  59. package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js +1 -1
  60. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js +8 -6
  61. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js.map +1 -1
  62. package/dist/collection/components/post-language-switch/components/post-language-switch-list.js +3 -3
  63. package/dist/collection/components/post-language-switch/post-language-switch.js +11 -9
  64. package/dist/collection/components/post-language-switch/post-language-switch.js.map +1 -1
  65. package/dist/collection/components/post-logo/post-logo.js +3 -3
  66. package/dist/collection/components/post-main-navigation/components/level-one-action.component.js +2 -2
  67. package/dist/collection/components/post-main-navigation/post-main-navigation.js +18 -13
  68. package/dist/collection/components/post-main-navigation/post-main-navigation.js.map +1 -1
  69. package/dist/collection/components/post-meta-navigation/post-meta-navigation.js +2 -2
  70. package/dist/collection/components/post-search/post-search.css +52 -0
  71. package/dist/collection/components/post-search/post-search.js +21 -17
  72. package/dist/collection/components/post-search/post-search.js.map +1 -1
  73. package/dist/collection/components/post-skiplinks/post-skiplinks.js +4 -4
  74. package/dist/collection/data/store.js +1 -1
  75. package/dist/collection/services/config.service.js +3 -3
  76. package/dist/collection/services/config.service.spec.js +2 -2
  77. package/dist/collection/services/language.service.js +2 -2
  78. package/dist/collection/services/route.service.spec.js +2 -2
  79. package/dist/collection/services/search/coveo.service.js +3 -3
  80. package/dist/collection/services/search/parcel.service.js +1 -1
  81. package/dist/collection/services/search/places.service.js +3 -3
  82. package/dist/collection/services/search/search.service.js +2 -2
  83. package/dist/collection/services/search/search.service.spec.js +1 -1
  84. package/dist/collection/utils/highlighted.component.js +1 -1
  85. package/dist/collection/utils/svg-icon.component.js +1 -1
  86. package/dist/collection/utils/svg-sprite.component.js +1 -1
  87. package/dist/collection/utils/utils.spec.js +1 -1
  88. package/dist/components/klp-widget.controller.js.map +1 -1
  89. package/dist/components/language.service.js.map +1 -1
  90. package/dist/components/post-klp-login-widget2.js.map +1 -1
  91. package/dist/components/post-language-switch2.js.map +1 -1
  92. package/dist/components/post-logo2.js.map +1 -1
  93. package/dist/components/post-main-navigation2.js.map +1 -1
  94. package/dist/components/post-meta-navigation2.js.map +1 -1
  95. package/dist/components/post-search2.js +1 -1
  96. package/dist/components/post-search2.js.map +1 -1
  97. package/dist/components/post-skiplinks2.js.map +1 -1
  98. package/dist/components/store.js.map +1 -1
  99. package/dist/components/svg-icon.component.js.map +1 -1
  100. package/dist/components/svg-sprite.component.js.map +1 -1
  101. package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
  102. package/dist/components/swisspost-internet-footer.js.map +1 -1
  103. package/dist/components/swisspost-internet-header.js +22 -19
  104. package/dist/components/swisspost-internet-header.js.map +1 -1
  105. package/dist/components/ui.service.js.map +1 -1
  106. package/dist/components/utils.js.map +1 -1
  107. package/dist/esm/{if.component-0fe54385.js → if.component-3a779aca.js} +1 -1
  108. package/dist/esm/if.component-3a779aca.js.map +1 -0
  109. package/dist/esm/{index-8d59532e.js → index-88c91d82.js} +5 -9
  110. package/dist/esm/index-88c91d82.js.map +1 -0
  111. package/dist/esm/{klp-widget.controller-a3fe87ef.js → klp-widget.controller-7deb449a.js} +1 -1
  112. package/dist/esm/{klp-widget.controller-a3fe87ef.js.map → klp-widget.controller-7deb449a.js.map} +1 -1
  113. package/dist/esm/{language.service-002fec1c.js → language.service-4ed90610.js} +2 -2
  114. package/dist/esm/language.service-4ed90610.js.map +1 -0
  115. package/dist/esm/loader.js +2 -11
  116. package/dist/esm/loader.js.map +1 -1
  117. package/dist/esm/post-klp-login-widget.entry.js +5 -5
  118. package/dist/esm/post-klp-login-widget.entry.js.map +1 -1
  119. package/dist/esm/post-language-switch.entry.js +6 -6
  120. package/dist/esm/post-language-switch.entry.js.map +1 -1
  121. package/dist/esm/post-logo.entry.js +2 -2
  122. package/dist/esm/post-logo.entry.js.map +1 -1
  123. package/dist/esm/post-main-navigation.entry.js +6 -6
  124. package/dist/esm/post-main-navigation.entry.js.map +1 -1
  125. package/dist/esm/post-meta-navigation.entry.js +2 -2
  126. package/dist/esm/post-meta-navigation.entry.js.map +1 -1
  127. package/dist/esm/post-search.entry.js +7 -7
  128. package/dist/esm/post-search.entry.js.map +1 -1
  129. package/dist/esm/post-skiplinks.entry.js +4 -4
  130. package/dist/esm/post-skiplinks.entry.js.map +1 -1
  131. package/dist/esm/{store-a6a8929c.js → store-dd5ef879.js} +2 -2
  132. package/dist/esm/store-dd5ef879.js.map +1 -0
  133. package/dist/esm/{svg-icon.component-aff0d204.js → svg-icon.component-1fb90f5b.js} +2 -2
  134. package/dist/esm/svg-icon.component-1fb90f5b.js.map +1 -0
  135. package/dist/esm/{svg-sprite.component-7c9a1dcd.js → svg-sprite.component-95abfe80.js} +2 -2
  136. package/dist/esm/svg-sprite.component-95abfe80.js.map +1 -0
  137. package/dist/esm/swisspost-internet-breadcrumbs.entry.js +6 -6
  138. package/dist/esm/swisspost-internet-breadcrumbs.entry.js.map +1 -1
  139. package/dist/esm/swisspost-internet-footer.entry.js +3 -3
  140. package/dist/esm/swisspost-internet-footer.entry.js.map +1 -1
  141. package/dist/esm/swisspost-internet-header.entry.js +29 -26
  142. package/dist/esm/swisspost-internet-header.entry.js.map +1 -1
  143. package/dist/esm/swisspost-internet-header.js +3 -6
  144. package/dist/esm/swisspost-internet-header.js.map +1 -1
  145. package/dist/esm/{ui.service-2fbc9c45.js → ui.service-a71cf490.js} +1 -1
  146. package/dist/esm/ui.service-a71cf490.js.map +1 -0
  147. package/dist/esm/{utils-ee79122f.js → utils-3a8ff48f.js} +1 -1
  148. package/dist/esm/utils-3a8ff48f.js.map +1 -0
  149. package/dist/esm-es5/{if.component-0fe54385.js → if.component-3a779aca.js} +1 -1
  150. package/dist/esm-es5/index-88c91d82.js +3 -0
  151. package/dist/esm-es5/index-88c91d82.js.map +1 -0
  152. package/dist/esm-es5/{klp-widget.controller-a3fe87ef.js → klp-widget.controller-7deb449a.js} +1 -1
  153. package/dist/esm-es5/{language.service-002fec1c.js → language.service-4ed90610.js} +2 -2
  154. package/dist/esm-es5/loader.js +1 -1
  155. package/dist/esm-es5/loader.js.map +1 -1
  156. package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
  157. package/dist/esm-es5/post-language-switch.entry.js +1 -1
  158. package/dist/esm-es5/post-logo.entry.js +1 -1
  159. package/dist/esm-es5/post-main-navigation.entry.js +1 -1
  160. package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
  161. package/dist/esm-es5/post-search.entry.js +1 -1
  162. package/dist/esm-es5/post-search.entry.js.map +1 -1
  163. package/dist/esm-es5/post-skiplinks.entry.js +1 -1
  164. package/dist/esm-es5/{store-a6a8929c.js → store-dd5ef879.js} +2 -2
  165. package/dist/esm-es5/{store-a6a8929c.js.map → store-dd5ef879.js.map} +1 -1
  166. package/dist/esm-es5/{svg-icon.component-aff0d204.js → svg-icon.component-1fb90f5b.js} +2 -2
  167. package/dist/esm-es5/{svg-sprite.component-7c9a1dcd.js → svg-sprite.component-95abfe80.js} +2 -2
  168. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +1 -1
  169. package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
  170. package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
  171. package/dist/esm-es5/swisspost-internet-header.entry.js.map +1 -1
  172. package/dist/esm-es5/swisspost-internet-header.js +1 -1
  173. package/dist/esm-es5/swisspost-internet-header.js.map +1 -1
  174. package/dist/esm-es5/{ui.service-2fbc9c45.js → ui.service-a71cf490.js} +1 -1
  175. package/dist/esm-es5/{utils-ee79122f.js → utils-3a8ff48f.js} +1 -1
  176. package/dist/swisspost-internet-header/{p-e579c9a6.js → p-0510885f.js} +2 -2
  177. package/dist/swisspost-internet-header/p-0510885f.js.map +1 -0
  178. package/dist/swisspost-internet-header/{p-98fc1c18.system.entry.js → p-05897faa.system.entry.js} +2 -2
  179. package/dist/swisspost-internet-header/{p-c2a481fb.system.entry.js → p-063693c1.system.entry.js} +2 -2
  180. package/dist/swisspost-internet-header/{p-2ac6d85d.entry.js → p-06dfca96.entry.js} +2 -2
  181. package/dist/swisspost-internet-header/p-06dfca96.entry.js.map +1 -0
  182. package/dist/swisspost-internet-header/{p-111288a2.js → p-071219b6.js} +2 -2
  183. package/dist/swisspost-internet-header/p-071219b6.js.map +1 -0
  184. package/dist/swisspost-internet-header/p-07503966.entry.js +2 -0
  185. package/dist/swisspost-internet-header/p-07503966.entry.js.map +1 -0
  186. package/dist/swisspost-internet-header/{p-0c5624c0.system.js → p-0e776d6e.system.js} +1 -1
  187. package/dist/swisspost-internet-header/p-2dc438d1.system.js +3 -0
  188. package/dist/swisspost-internet-header/p-2dc438d1.system.js.map +1 -0
  189. package/dist/swisspost-internet-header/{p-8bf099a8.js → p-3339310e.js} +1 -1
  190. package/dist/swisspost-internet-header/p-3339310e.js.map +1 -0
  191. package/dist/swisspost-internet-header/{p-11b5a18f.entry.js → p-47ab19fa.entry.js} +2 -2
  192. package/dist/swisspost-internet-header/p-47ab19fa.entry.js.map +1 -0
  193. package/dist/swisspost-internet-header/{p-64c04714.entry.js → p-491f36f3.entry.js} +2 -2
  194. package/dist/swisspost-internet-header/p-491f36f3.entry.js.map +1 -0
  195. package/dist/swisspost-internet-header/{p-d7fc17ac.entry.js → p-575bf486.entry.js} +2 -2
  196. package/dist/swisspost-internet-header/p-575bf486.entry.js.map +1 -0
  197. package/dist/swisspost-internet-header/{p-93bb6702.entry.js → p-5bbfb584.entry.js} +2 -2
  198. package/dist/swisspost-internet-header/p-5bbfb584.entry.js.map +1 -0
  199. package/dist/swisspost-internet-header/{p-b450a1dd.system.js → p-66d4609f.system.js} +1 -1
  200. package/dist/swisspost-internet-header/p-7015cfff.js +2 -0
  201. package/dist/swisspost-internet-header/p-7015cfff.js.map +1 -0
  202. package/dist/swisspost-internet-header/{p-266baffd.system.js → p-7d7f03e5.system.js} +2 -2
  203. package/dist/swisspost-internet-header/p-7d7f03e5.system.js.map +1 -0
  204. package/dist/swisspost-internet-header/p-7ee9e72c.system.entry.js +2 -0
  205. package/dist/swisspost-internet-header/{p-9c0dcf6a.system.entry.js.map → p-7ee9e72c.system.entry.js.map} +1 -1
  206. package/dist/swisspost-internet-header/{p-a0499b79.system.js → p-82bf8e43.system.js} +2 -2
  207. package/dist/swisspost-internet-header/{p-5ff16d8a.system.js → p-869aedc7.system.js} +2 -2
  208. package/dist/swisspost-internet-header/{p-5ff16d8a.system.js.map → p-869aedc7.system.js.map} +1 -1
  209. package/dist/swisspost-internet-header/{p-cf3ceaab.system.entry.js → p-8d03bc7f.system.entry.js} +2 -2
  210. package/dist/swisspost-internet-header/{p-465c735e.system.entry.js → p-966a6168.system.entry.js} +2 -2
  211. package/dist/swisspost-internet-header/{p-c388b2d1.entry.js → p-9732ac6e.entry.js} +2 -2
  212. package/dist/swisspost-internet-header/p-9732ac6e.entry.js.map +1 -0
  213. package/dist/swisspost-internet-header/{p-88aac12c.system.js → p-986a52bc.system.js} +1 -1
  214. package/dist/swisspost-internet-header/{p-d40d43be.js → p-a05597ac.js} +2 -2
  215. package/dist/swisspost-internet-header/p-a05597ac.js.map +1 -0
  216. package/dist/swisspost-internet-header/{p-35d8730c.system.js → p-a4f0930f.system.js} +2 -2
  217. package/dist/swisspost-internet-header/p-a555241f.js +3 -0
  218. package/dist/swisspost-internet-header/p-a555241f.js.map +1 -0
  219. package/dist/swisspost-internet-header/{p-4ffdc655.system.entry.js → p-a8f498fb.system.entry.js} +2 -2
  220. package/dist/swisspost-internet-header/{p-771e4687.system.entry.js → p-af3b313e.system.entry.js} +2 -2
  221. package/dist/swisspost-internet-header/p-b61b9cb5.system.entry.js +2 -0
  222. package/dist/swisspost-internet-header/{p-3b02cf6a.system.entry.js.map → p-b61b9cb5.system.entry.js.map} +1 -1
  223. package/dist/swisspost-internet-header/{p-77bae72c.system.entry.js → p-b9815bcb.system.entry.js} +2 -2
  224. package/dist/swisspost-internet-header/{p-45db66a6.js → p-bbfd407b.js} +1 -1
  225. package/dist/swisspost-internet-header/p-bbfd407b.js.map +1 -0
  226. package/dist/swisspost-internet-header/{p-a2f9d462.js → p-cf06f703.js} +1 -1
  227. package/dist/swisspost-internet-header/p-cf06f703.js.map +1 -0
  228. package/dist/swisspost-internet-header/{p-262889ce.js → p-d584b81f.js} +1 -1
  229. package/dist/swisspost-internet-header/p-d584b81f.js.map +1 -0
  230. package/dist/swisspost-internet-header/{p-9c4b1d8c.system.entry.js → p-d734b08a.system.entry.js} +2 -2
  231. package/dist/swisspost-internet-header/{p-c73f6117.system.js → p-dea25008.system.js} +2 -2
  232. package/dist/swisspost-internet-header/p-e92ccafa.entry.js +2 -0
  233. package/dist/swisspost-internet-header/p-e92ccafa.entry.js.map +1 -0
  234. package/dist/swisspost-internet-header/{p-3ab9c6ee.entry.js → p-eb1820f2.entry.js} +2 -2
  235. package/dist/swisspost-internet-header/p-eb1820f2.entry.js.map +1 -0
  236. package/dist/swisspost-internet-header/{p-7999c250.entry.js → p-edb41357.entry.js} +2 -2
  237. package/dist/swisspost-internet-header/p-edb41357.entry.js.map +1 -0
  238. package/dist/swisspost-internet-header/{p-edb2802d.system.js → p-f2a43ce2.system.js} +1 -1
  239. package/dist/swisspost-internet-header/swisspost-internet-header.css +1 -1
  240. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
  241. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js.map +1 -1
  242. package/dist/swisspost-internet-header/swisspost-internet-header.js +2 -6
  243. package/{dist/loader → loader}/cdn.js +1 -1
  244. package/{dist/loader → loader}/index.cjs.js +1 -1
  245. package/{dist/loader → loader}/index.d.ts +1 -1
  246. package/loader/index.es2017.js +3 -0
  247. package/{dist/loader → loader}/index.js +2 -2
  248. package/package.json +21 -19
  249. package/readme.md +8 -1
  250. package/dist/cjs/if.component-51d000af.js.map +0 -1
  251. package/dist/cjs/index-5aa18735.js.map +0 -1
  252. package/dist/cjs/language.service-2d0a1edd.js.map +0 -1
  253. package/dist/cjs/store-3355e50f.js.map +0 -1
  254. package/dist/cjs/svg-icon.component-74d2326c.js.map +0 -1
  255. package/dist/cjs/svg-sprite.component-4fd3c959.js.map +0 -1
  256. package/dist/cjs/ui.service-e1ebb6d4.js.map +0 -1
  257. package/dist/cjs/utils-60853c5d.js.map +0 -1
  258. package/dist/esm/if.component-0fe54385.js.map +0 -1
  259. package/dist/esm/index-8d59532e.js.map +0 -1
  260. package/dist/esm/language.service-002fec1c.js.map +0 -1
  261. package/dist/esm/polyfills/css-shim.js +0 -1
  262. package/dist/esm/store-a6a8929c.js.map +0 -1
  263. package/dist/esm/svg-icon.component-aff0d204.js.map +0 -1
  264. package/dist/esm/svg-sprite.component-7c9a1dcd.js.map +0 -1
  265. package/dist/esm/ui.service-2fbc9c45.js.map +0 -1
  266. package/dist/esm/utils-ee79122f.js.map +0 -1
  267. package/dist/esm-es5/index-8d59532e.js +0 -3
  268. package/dist/esm-es5/index-8d59532e.js.map +0 -1
  269. package/dist/loader/index.es2017.js +0 -3
  270. package/dist/swisspost-internet-header/p-0cfdf8a1.entry.js +0 -2
  271. package/dist/swisspost-internet-header/p-0cfdf8a1.entry.js.map +0 -1
  272. package/dist/swisspost-internet-header/p-111288a2.js.map +0 -1
  273. package/dist/swisspost-internet-header/p-11b5a18f.entry.js.map +0 -1
  274. package/dist/swisspost-internet-header/p-262889ce.js.map +0 -1
  275. package/dist/swisspost-internet-header/p-266baffd.system.js.map +0 -1
  276. package/dist/swisspost-internet-header/p-2ac6d85d.entry.js.map +0 -1
  277. package/dist/swisspost-internet-header/p-3ab9c6ee.entry.js.map +0 -1
  278. package/dist/swisspost-internet-header/p-3b02cf6a.system.entry.js +0 -2
  279. package/dist/swisspost-internet-header/p-45db66a6.js.map +0 -1
  280. package/dist/swisspost-internet-header/p-60dfb89c.js +0 -3
  281. package/dist/swisspost-internet-header/p-60dfb89c.js.map +0 -1
  282. package/dist/swisspost-internet-header/p-64c04714.entry.js.map +0 -1
  283. package/dist/swisspost-internet-header/p-65cba182.entry.js +0 -2
  284. package/dist/swisspost-internet-header/p-65cba182.entry.js.map +0 -1
  285. package/dist/swisspost-internet-header/p-74393bf7.system.js +0 -3
  286. package/dist/swisspost-internet-header/p-74393bf7.system.js.map +0 -1
  287. package/dist/swisspost-internet-header/p-7999c250.entry.js.map +0 -1
  288. package/dist/swisspost-internet-header/p-8bf099a8.js.map +0 -1
  289. package/dist/swisspost-internet-header/p-93bb6702.entry.js.map +0 -1
  290. package/dist/swisspost-internet-header/p-9c0dcf6a.system.entry.js +0 -2
  291. package/dist/swisspost-internet-header/p-a2f9d462.js.map +0 -1
  292. package/dist/swisspost-internet-header/p-c388b2d1.entry.js.map +0 -1
  293. package/dist/swisspost-internet-header/p-d40d43be.js.map +0 -1
  294. package/dist/swisspost-internet-header/p-d7fc17ac.entry.js.map +0 -1
  295. package/dist/swisspost-internet-header/p-e579c9a6.js.map +0 -1
  296. package/dist/swisspost-internet-header/p-f6aac773.js +0 -2
  297. package/dist/swisspost-internet-header/p-f6aac773.js.map +0 -1
  298. /package/dist/esm-es5/{if.component-0fe54385.js.map → if.component-3a779aca.js.map} +0 -0
  299. /package/dist/esm-es5/{klp-widget.controller-a3fe87ef.js.map → klp-widget.controller-7deb449a.js.map} +0 -0
  300. /package/dist/esm-es5/{language.service-002fec1c.js.map → language.service-4ed90610.js.map} +0 -0
  301. /package/dist/esm-es5/{svg-icon.component-aff0d204.js.map → svg-icon.component-1fb90f5b.js.map} +0 -0
  302. /package/dist/esm-es5/{svg-sprite.component-7c9a1dcd.js.map → svg-sprite.component-95abfe80.js.map} +0 -0
  303. /package/dist/esm-es5/{ui.service-2fbc9c45.js.map → ui.service-a71cf490.js.map} +0 -0
  304. /package/dist/esm-es5/{utils-ee79122f.js.map → utils-3a8ff48f.js.map} +0 -0
  305. /package/dist/swisspost-internet-header/{p-98fc1c18.system.entry.js.map → p-05897faa.system.entry.js.map} +0 -0
  306. /package/dist/swisspost-internet-header/{p-c2a481fb.system.entry.js.map → p-063693c1.system.entry.js.map} +0 -0
  307. /package/dist/swisspost-internet-header/{p-0c5624c0.system.js.map → p-0e776d6e.system.js.map} +0 -0
  308. /package/dist/swisspost-internet-header/{p-b450a1dd.system.js.map → p-66d4609f.system.js.map} +0 -0
  309. /package/dist/swisspost-internet-header/{p-a0499b79.system.js.map → p-82bf8e43.system.js.map} +0 -0
  310. /package/dist/swisspost-internet-header/{p-cf3ceaab.system.entry.js.map → p-8d03bc7f.system.entry.js.map} +0 -0
  311. /package/dist/swisspost-internet-header/{p-465c735e.system.entry.js.map → p-966a6168.system.entry.js.map} +0 -0
  312. /package/dist/swisspost-internet-header/{p-88aac12c.system.js.map → p-986a52bc.system.js.map} +0 -0
  313. /package/dist/swisspost-internet-header/{p-35d8730c.system.js.map → p-a4f0930f.system.js.map} +0 -0
  314. /package/dist/swisspost-internet-header/{p-4ffdc655.system.entry.js.map → p-a8f498fb.system.entry.js.map} +0 -0
  315. /package/dist/swisspost-internet-header/{p-771e4687.system.entry.js.map → p-af3b313e.system.entry.js.map} +0 -0
  316. /package/dist/swisspost-internet-header/{p-77bae72c.system.entry.js.map → p-b9815bcb.system.entry.js.map} +0 -0
  317. /package/dist/swisspost-internet-header/{p-9c4b1d8c.system.entry.js.map → p-d734b08a.system.entry.js.map} +0 -0
  318. /package/dist/swisspost-internet-header/{p-c73f6117.system.js.map → p-dea25008.system.js.map} +0 -0
  319. /package/dist/swisspost-internet-header/{p-edb2802d.system.js.map → p-f2a43ce2.system.js.map} +0 -0
  320. /package/{dist/loader → loader}/package.json +0 -0
@@ -1,19 +1,19 @@
1
1
  {
2
2
  "entries": [
3
- "./components/post-internet-breadcrumbs/post-internet-breadcrumbs.js",
4
- "./components/post-internet-footer/post-internet-footer.js",
5
- "./components/post-internet-header/post-internet-header.js",
6
- "./components/post-klp-login-widget/post-klp-login-widget.js",
7
- "./components/post-language-switch/post-language-switch.js",
8
- "./components/post-logo/post-logo.js",
9
- "./components/post-main-navigation/post-main-navigation.js",
10
- "./components/post-meta-navigation/post-meta-navigation.js",
11
- "./components/post-search/post-search.js",
12
- "./components/post-skiplinks/post-skiplinks.js"
3
+ "components/post-internet-breadcrumbs/post-internet-breadcrumbs.js",
4
+ "components/post-internet-footer/post-internet-footer.js",
5
+ "components/post-internet-header/post-internet-header.js",
6
+ "components/post-klp-login-widget/post-klp-login-widget.js",
7
+ "components/post-language-switch/post-language-switch.js",
8
+ "components/post-logo/post-logo.js",
9
+ "components/post-main-navigation/post-main-navigation.js",
10
+ "components/post-meta-navigation/post-meta-navigation.js",
11
+ "components/post-search/post-search.js",
12
+ "components/post-skiplinks/post-skiplinks.js"
13
13
  ],
14
14
  "compiler": {
15
15
  "name": "@stencil/core",
16
- "version": "3.4.1",
16
+ "version": "4.0.1",
17
17
  "typescriptVersion": "5.0.4"
18
18
  },
19
19
  "collections": [],
@@ -1,7 +1,7 @@
1
- import { h } from '@stencil/core';
2
- import { SvgIcon } from '../../../utils/svg-icon.component';
3
- import { MiddleDropdown } from './middle-dropdown.component';
4
- import { MiddleLinks } from './middle-links.component';
1
+ import { h } from "@stencil/core";
2
+ import { SvgIcon } from "../../../utils/svg-icon.component";
3
+ import { MiddleDropdown } from "./middle-dropdown.component";
4
+ import { MiddleLinks } from "./middle-links.component";
5
5
  export const BreadcrumbList = (props) => {
6
6
  var _a;
7
7
  const homeItem = props.items[0];
@@ -1,5 +1,5 @@
1
- import { h } from '@stencil/core';
2
- import { tabbable } from 'tabbable';
1
+ import { h } from "@stencil/core";
2
+ import { tabbable } from "tabbable";
3
3
  let key = 0;
4
4
  /**
5
5
  * Trap the focus inside a specific container by prepending/appending two focus trap
@@ -1,7 +1,7 @@
1
- import { h } from '@stencil/core';
2
- import { SvgIcon } from '../../../utils/svg-icon.component';
3
- import { MiddleLinks } from './middle-links.component';
4
- import { translate } from '../../../services/language.service';
1
+ import { h } from "@stencil/core";
2
+ import { SvgIcon } from "../../../utils/svg-icon.component";
3
+ import { MiddleLinks } from "./middle-links.component";
4
+ import { translate } from "../../../services/language.service";
5
5
  export const MiddleDropdown = (props) => {
6
6
  return (h("div", { class: "middle-dropdown-container" }, h("button", { class: "middle-dropdown-button btn btn-blank", type: "button", onClick: event => props.clickHandler(event), tabindex: props.focusable === false ? '-1' : undefined }, h("span", { class: "visually-hidden" }, translate('Open menu')), h("span", { "aria-hidden": "true" }, "...")), h(SvgIcon, { name: "pi-arrow-down", classNames: "rotate-270" }), props.dropdownOpen ? (h("nav", { "aria-label": translate('Intermediary links'), class: "middle-dropdown" }, h("ul", { class: "no-list" }, h(MiddleLinks, { items: props.items, icons: false, focusable: props.focusable })))) : null));
7
7
  };
@@ -1,5 +1,5 @@
1
- import { h } from '@stencil/core';
2
- import { SvgIcon } from '../../../utils/svg-icon.component';
1
+ import { h } from "@stencil/core";
2
+ import { SvgIcon } from "../../../utils/svg-icon.component";
3
3
  export const MiddleLinks = (props) => {
4
4
  return props.items.slice(1, -1).map(item => (h("li", { key: item.url }, h("a", { href: item.url, class: "nav-link", tabindex: props.focusable === false ? '-1' : undefined }, h("span", null, item.text)), props.icons ? h(SvgIcon, { name: "pi-arrow-down", classNames: "rotate-270" }) : null)));
5
5
  };
@@ -1,6 +1,6 @@
1
- import { h } from '@stencil/core';
2
- import { SvgIcon } from '../../../utils/svg-icon.component';
3
- import { FocusTrap } from './focus-trap.component';
1
+ import { h } from "@stencil/core";
2
+ import { SvgIcon } from "../../../utils/svg-icon.component";
3
+ import { FocusTrap } from "./focus-trap.component";
4
4
  /**
5
5
  * Overlay implementation with focus trap according to
6
6
  * https://www.accessibility-developer-guide.com/examples/widgets/dialog/#modal-dialog
@@ -1,13 +1,13 @@
1
- import { Host, h } from '@stencil/core';
2
- import { debounce } from 'throttle-debounce';
3
- import { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';
4
- import { SvgIcon } from '../../utils/svg-icon.component';
5
- import { state } from '../../data/store';
6
- import { OverlayComponent } from './components/overlay.component';
7
- import iframeResizer from 'iframe-resizer/js/iframeResizer';
8
- import { SvgSprite } from '../../utils/svg-sprite.component';
9
- import { BreadcrumbList } from './components/breadcrumb-list.component';
10
- import { prefersReducedMotion } from '../../utils/utils';
1
+ import { Host, h } from "@stencil/core";
2
+ import { debounce } from "throttle-debounce";
3
+ import { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from "body-scroll-lock";
4
+ import { SvgIcon } from "../../utils/svg-icon.component";
5
+ import { state } from "../../data/store";
6
+ import { OverlayComponent } from "./components/overlay.component";
7
+ import iframeResizer from "iframe-resizer/js/iframeResizer";
8
+ import { SvgSprite } from "../../utils/svg-sprite.component";
9
+ import { BreadcrumbList } from "./components/breadcrumb-list.component";
10
+ import { prefersReducedMotion } from "../../utils/utils";
11
11
  export class PostInternetBreadcrumbs {
12
12
  constructor() {
13
13
  this.customItems = undefined;
@@ -218,7 +218,8 @@ export class PostInternetBreadcrumbs {
218
218
  "references": {
219
219
  "IBreadcrumbItem": {
220
220
  "location": "import",
221
- "path": "../../models/breadcrumbs.model"
221
+ "path": "../../models/breadcrumbs.model",
222
+ "id": "src/models/breadcrumbs.model.ts::IBreadcrumbItem"
222
223
  }
223
224
  }
224
225
  },
@@ -1 +1 @@
1
- {"version":3,"file":"post-internet-breadcrumbs.js","sourceRoot":"","sources":["../../../../src/components/post-internet-breadcrumbs/post-internet-breadcrumbs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,aAAa,MAAM,iCAAiC,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAOzD,MAAM,OAAO,uBAAuB;;;;;;wBAKD,KAAK;qBACR,KAAK;;EAWnC,iBAAiB;IACf,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;EAC7E,CAAC;EAED,oBAAoB;IAClB,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC3D,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5D,uBAAuB,EAAE,CAAC;EAC5B,CAAC;EAED,KAAK,CAAC,iBAAiB;IACrB,wDAAwD;IACxD,IAAI;MACF,IAAI,CAAC,qBAAqB;QACxB,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;KAC1F;IAAC,OAAO,KAAK,EAAE;MACd,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACtB;EACH,CAAC;EAED,gBAAgB;IACd,uDAAuD;IACvD,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;MAChC,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;EACL,CAAC;EAGD,uBAAuB,CAAC,QAAoC;IAC1D,IAAI;MACF,IAAI,CAAC,qBAAqB,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;KAC7F;IAAC,OAAO,KAAK,EAAE;MACd,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACtB;EACH,CAAC;EAED,YAAY;IACV,qEAAqE;IACrE,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,eAAe,EAAE;MAC9C,OAAO;KACR;IACD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC;IACzC,IAAI,CAAC,kBAAkB,EAAE,CAAC;EAC5B,CAAC;EAED,kBAAkB;IAChB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE;MAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;MAEtB,kBAAkB;MAClB,MAAM,CAAC,qBAAqB,CAAC,GAAG,EAAE;QAChC,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE;UAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;SACvF;MACH,CAAC,CAAC,CAAC;KACJ;EACH,CAAC;EAED,aAAa,CAAC,OAA2B,EAAE,KAAe;;IACxD,MAAM,aAAa,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,IAAI,CAAC,cAAc,CAAC;IAEpD,IAAI,aAAa,EAAE;MACjB,sDAAsD;MACtD,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;MACpC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;MAC9B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;KAC7B;SAAM;MACL,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,aAAa,CACvD,4CAA4C,CAC7C,CAAC;MAEF,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,eAAe,EAAE;QAC9C,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QAE/B,0DAA0D;QAC1D,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;UAClF,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,KAAK,EAAE,CAAC;WACvB;UACD,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;UACpC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;OACJ;KACF;EACH,CAAC;EAED;;KAEG;EACH,aAAa,CAAC,OAA2B;IACvC,IAAI,IAAI,CAAC,cAAc,EAAE;MACvB,iBAAiB,CAAC,OAAO,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;KAC3D;SAAM;MACL,gBAAgB,CAAC,OAAO,CAAC,CAAC;KAC3B;EACH,CAAC;EAED,cAAc,CAAC,KAAe;IAC5B,IAAI,CAAC,YAAY,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,CAAC,IAAI,CAAC,YAAY,CAAC;IAEhD,IAAI,IAAI,CAAC,YAAY,EAAE;MACrB,qBAAqB,CAAC,GAAG,EAAE;QACzB,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;MACxF,CAAC,CAAC,CAAC;KACJ;EACH,CAAC;EAED,iBAAiB;IACf,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;EAC7B,CAAC;EAED,qBAAqB,CAAC,MAAyB;IAC7C,IAAI,CAAC,MAAM,EAAE;MACX,OAAO;KACR;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE;;MACnC,aAAa,CACX;QACE,uBAAuB,EAAE,eAAe;QACxC,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,KAAK;OACnB,EACD,MAAM,CACP,CAAC;MACF,MAAM,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;MAChD,IAAI,CAAC,eAAe,GAAG,MAAA,MAAM,CAAC,aAAa,0CAAE,OAAO,CAClD,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,EACrE,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAC/B,CAAC;MACF,MAAA,MAAM,CAAC,aAAa,0CAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;MAC9C,MAAA,IAAI,CAAC,eAAe,0CAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE;;QACvC,MAAA,MAAM,CAAC,aAAa,0CAAE,KAAK,EAAE,CAAC;MAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;EACL,CAAC;EAED;;;;;KAKG;EACH,UAAU,CAAC,CAA0B;IACnC,IAAI,CAAC,CAAC,EAAE;MACN,OAAO;KACR;IAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAChD,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,EAAE;MACtE,QAAQ;MACR,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;EACL,CAAC;EAEO,aAAa,CAAC,KAAoB;IACxC,IAAI,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE;MACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;KAChD;EACH,CAAC;EAEO,oBAAoB;IAC1B,IAAI,CAAC,cAAc,EAAE,CAAC;EACxB,CAAC;EAEO,mBAAmB;IACzB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;EACjD,CAAC;EAEO,mBAAmB,CAAC,OAAoB;IAC9C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;IAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;EAC5B,CAAC;EAEO,mBAAmB,CAAC,OAAoB;IAC9C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;IAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;EAC5B,CAAC;EAED,MAAM;IACJ,oCAAoC;IACpC,IAAI,CAAC,KAAK,EAAE;MACV,OAAO,CAAC,IAAI,CACV,wJAAwJ,CACzJ,CAAC;MACF,OAAO,IAAI,CAAC;KACb;IAED,2BAA2B;IAC3B,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE;MAC1B,OAAO,IAAI,CAAC;KACb;IAED,uDAAuD;IACvD,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,EAAE;MACrC,OAAO,CAAC,IAAI,CACV,qCAAqC,KAAK,CAAC,SAAS,uFAAuF,EAC3I,QAAQ,CAAC,aAAa,CAAC,gCAAgC,CAAC,EACxD,kGAAkG,CACnG,CAAC;MACF,OAAO,IAAI,CAAC;KACb;IAED,MAAM,gBAAgB,GAAG,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC;IAC1D,MAAM,KAAK,GACT,IAAI,CAAC,qBAAqB,KAAK,SAAS;MACtC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC;MAC5D,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC;IAE7B,OAAO,CACL,EAAC,IAAI;MACH,EAAC,SAAS,OAAG;MACb,WAAK,KAAK,EAAC,aAAa;QACtB,WAAK,KAAK,EAAC,4BAA4B,iBAAa,MAAM,EAAC,QAAQ,EAAC,IAAI;UACtE,WAAK,KAAK,EAAC,iBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACnF,EAAC,cAAc,IACb,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,KAAK,EAChB,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC,GACN,CACd,CACF;QACN,yBACc,gBAAgB,CAAC,SAAS,EACtC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EACxD,KAAK,EAAE;YACL,iBAAiB,EAAE,IAAI;YACvB,iBAAiB,EAAE,CAAC,IAAI,CAAC,SAAS;WACnC;UAED,EAAC,cAAc,IACb,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,cAAc,EAAE,IAAI,CAAC,cAAc,EACnC,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAC/B,CACd;QACN,WAAK,KAAK,EAAC,oBAAoB,IAC5B,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CACtC,cACE,KAAK,EAAC,4BAA4B,EAClC,GAAG,EAAE,MAAM,CAAC,IAAI,mBACD,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,KAAK,MAAM,CAAC,OAAO,EAAE,EACnF,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;UAEvD,EAAC,OAAO,IAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,GAAY;UAC9C,YAAM,KAAK,EAAC,iBAAiB,IAAE,MAAM,CAAC,IAAI,CAAQ,CAC3C,CACV,CAAC,CACE;QACL,IAAI,CAAC,cAAc,IAAI,CACtB,EAAC,gBAAgB,IACf,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EACtD,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAChE,OAAO,EAAE,IAAI,CAAC,cAAc,EAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,EACzC,SAAS,EAAE,CAAC,CAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EACtD,eAAe,EAAE,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,GACxD,CACrB,CACG;MACN,eAAa,CACR,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Prop, State, Element, Watch } from '@stencil/core';\nimport { debounce } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { state } from '../../data/store';\nimport { OverlayComponent } from './components/overlay.component';\nimport iframeResizer from 'iframe-resizer/js/iframeResizer';\nimport { IBreadcrumbOverlay, IBreadcrumbItem } from '../../models/breadcrumbs.model';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { BreadcrumbList } from './components/breadcrumb-list.component';\nimport { prefersReducedMotion } from '../../utils/utils';\n\n@Component({\n tag: 'swisspost-internet-breadcrumbs',\n styleUrl: 'post-internet-breadcrumbs.scss',\n shadow: true,\n})\nexport class PostInternetBreadcrumbs {\n @Prop() customItems?: string | IBreadcrumbItem[];\n @State() customBreadcrumbItems?: IBreadcrumbItem[];\n @State() overlayVisible: boolean;\n @State() isConcatenated: boolean; // Don't set an initial value, this has to be calculated first, otherwise reactivity problems ensue\n @State() dropdownOpen: boolean = false;\n @State() refsReady: boolean = false;\n @Element() host: Element;\n\n private controlNavRef?: HTMLElement;\n private visibleNavRef?: HTMLElement;\n private currentOverlay: IBreadcrumbOverlay;\n private debouncedResize: debounce<() => void>;\n private lastWindowWidth: number;\n private openAnimation: Animation;\n private loadedAnimation: Animation | undefined;\n\n connectedCallback() {\n this.debouncedResize = debounce(200, this.handleResize.bind(this));\n window.addEventListener('resize', this.debouncedResize, { passive: true });\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.debouncedResize);\n window.removeEventListener('click', this.handleWindowClick);\n clearAllBodyScrollLocks();\n }\n\n async componentWillLoad() {\n // Wait for the config to arrive, then render the header\n try {\n this.customBreadcrumbItems =\n typeof this.customItems === 'string' ? JSON.parse(this.customItems) : this.customItems;\n } catch (error) {\n console.error(error);\n }\n }\n\n componentDidLoad() {\n // Initially check if breadcrumb items are concatenated\n window.requestAnimationFrame(() => {\n this.handleResize();\n });\n }\n\n @Watch('customItems')\n handleCustomConfigChage(newValue: string | IBreadcrumbItem[]) {\n try {\n this.customBreadcrumbItems = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;\n } catch (error) {\n console.error(error);\n }\n }\n\n handleResize() {\n // Catch and exclude vertical resize events, e.g. scrolling in iPhone\n if (window.innerWidth === this.lastWindowWidth) {\n return;\n }\n this.lastWindowWidth = window.innerWidth;\n this.checkConcatenation();\n }\n\n checkConcatenation() {\n if (this.controlNavRef && this.visibleNavRef) {\n this.refsReady = true;\n\n // Delay the check\n window.requestAnimationFrame(() => {\n if (this.controlNavRef && this.visibleNavRef) {\n this.isConcatenated = this.controlNavRef.clientWidth > this.visibleNavRef.clientWidth;\n }\n });\n }\n }\n\n toggleOverlay(overlay: IBreadcrumbOverlay, force?: boolean) {\n const newVisibility = force ?? !this.overlayVisible;\n\n if (newVisibility) {\n // Will trigger overlayRef() once the HTLM is rendered\n this.overlayVisible = newVisibility;\n this.currentOverlay = overlay;\n this.setBodyScroll(overlay);\n } else {\n const activeToggler = this.host.shadowRoot?.querySelector<HTMLElement>(\n '.breadcrumb-buttons [aria-expanded=\"true\"]',\n );\n\n if (this.openAnimation && this.loadedAnimation) {\n this.openAnimation.reverse();\n this.loadedAnimation.reverse();\n\n // Delay hiding overlay until after the animation finishes\n Promise.all([this.openAnimation.finished, this.loadedAnimation.finished]).then(() => {\n if (activeToggler) {\n activeToggler.focus();\n }\n this.overlayVisible = newVisibility;\n this.setBodyScroll(overlay);\n });\n }\n }\n }\n\n /**\n * Disable or re-enable body scrolling, depending on whether overlay is visible or not\n */\n setBodyScroll(overlay: IBreadcrumbOverlay) {\n if (this.overlayVisible) {\n disableBodyScroll(overlay, { reserveScrollBarGap: true });\n } else {\n enableBodyScroll(overlay);\n }\n }\n\n toggleDropdown(force?: boolean) {\n this.dropdownOpen = force ?? !this.dropdownOpen;\n\n if (this.dropdownOpen) {\n requestAnimationFrame(() => {\n document.addEventListener('click', this.handleWindowClick.bind(this), { once: true });\n });\n }\n }\n\n handleWindowClick() {\n this.toggleDropdown(false);\n }\n\n registerIFrameResizer(iFrame: HTMLIFrameElement) {\n if (!iFrame) {\n return;\n }\n\n iFrame.addEventListener('load', () => {\n iframeResizer(\n {\n heightCalculationMethod: 'taggedElement',\n scrolling: true,\n checkOrigin: false,\n },\n iFrame,\n );\n const duration = prefersReducedMotion ? 0 : 300;\n this.loadedAnimation = iFrame.parentElement?.animate(\n [{ opacity: 1, visibility: 'visible', transform: 'translateY(0px)' }],\n { duration, fill: 'forwards' },\n );\n iFrame.parentElement?.classList.add('loaded');\n this.loadedAnimation?.finished.then(() => {\n iFrame.parentElement?.focus();\n });\n });\n }\n\n /**\n * Reference function for the overlay element got called. It is either null (overlay closed)\n * or contains the overlay element as parameter.\n * @param e Overlay element or null\n * @returns void\n */\n overlayRef(e: HTMLElement | undefined) {\n if (!e) {\n return;\n }\n\n const duration = prefersReducedMotion ? 0 : 500;\n this.openAnimation = e.animate([{ opacity: 1, visibility: 'visible' }], {\n duration,\n fill: 'forwards',\n });\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (event.key.toLowerCase() === 'escape') {\n this.toggleOverlay(this.currentOverlay, false);\n }\n }\n\n private handleToggleDropdown() {\n this.toggleDropdown();\n }\n\n private handleToggleOverlay() {\n this.toggleOverlay(this.currentOverlay, false);\n }\n\n private handleControlNavRef(element: HTMLElement) {\n this.controlNavRef = element;\n this.checkConcatenation();\n }\n\n private handleVisibleNavRef(element: HTMLElement) {\n this.visibleNavRef = element;\n this.checkConcatenation();\n }\n\n render() {\n // There is something wrong entirely\n if (!state) {\n console.warn(\n `Internet Breadcrumbs: Could not load config. Please make sure that you included the <swisspost-internet-header></swisspost-internet-header> component.`,\n );\n return null;\n }\n\n // Config is not loaded yet\n if (!state.localizedConfig) {\n return null;\n }\n\n // Config has loaded but there is no breadcrumbs config\n if (!state.localizedConfig.breadcrumb) {\n console.warn(\n `Internet Header: Current project \"${state.projectId}\" does not include a breadcrumb config. The breadcrumbs will not be rendered. Remove `,\n document.querySelector('swisspost-internet-breadcrumbs'),\n `from your markup or configure the breadcrumbs in your portal config to stop seeing this warning.`,\n );\n return null;\n }\n\n const breadcrumbConfig = state.localizedConfig.breadcrumb;\n const items =\n this.customBreadcrumbItems !== undefined\n ? [...breadcrumbConfig.items, ...this.customBreadcrumbItems]\n : breadcrumbConfig.items;\n\n return (\n <Host>\n <SvgSprite />\n <div class=\"breadcrumbs\">\n <div class=\"hidden-control-breadcrumbs\" aria-hidden=\"true\" tabindex=\"-1\">\n <nav class=\"breadcrumbs-nav\" ref={e => e !== undefined && this.handleControlNavRef(e)}>\n <BreadcrumbList\n items={items}\n focusable={false}\n clickHandler={() => {}}\n ></BreadcrumbList>\n </nav>\n </div>\n <nav\n aria-label={breadcrumbConfig.a11yLabel}\n ref={e => e !== undefined && this.handleVisibleNavRef(e)}\n class={{\n 'breadcrumbs-nav': true,\n 'visually-hidden': !this.refsReady,\n }}\n >\n <BreadcrumbList\n items={items}\n dropdownOpen={this.dropdownOpen}\n isConcatenated={this.isConcatenated}\n clickHandler={() => this.handleToggleDropdown()}\n ></BreadcrumbList>\n </nav>\n <div class=\"breadcrumb-buttons\">\n {breadcrumbConfig.buttons.map(button => (\n <button\n class=\"btn btn-secondary btn-icon\"\n key={button.text}\n aria-expanded={`${!!this.overlayVisible && this.currentOverlay === button.overlay}`}\n onClick={() => this.toggleOverlay(button.overlay, true)}\n >\n <SvgIcon name={button.svgIcon.name}></SvgIcon>\n <span class=\"visually-hidden\">{button.text}</span>\n </button>\n ))}\n </div>\n {this.overlayVisible && (\n <OverlayComponent\n overlayRef={e => e !== undefined && this.overlayRef(e)}\n iFrameRef={e => e !== undefined && this.registerIFrameResizer(e)}\n overlay={this.currentOverlay}\n onClick={() => this.handleToggleOverlay()}\n onKeyDown={(e: KeyboardEvent) => this.handleKeyDown(e)}\n closeButtonText={state.localizedConfig.header.translations.closeButtonText}\n ></OverlayComponent>\n )}\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"post-internet-breadcrumbs.js","sourceRoot":"","sources":["../../../../src/components/post-internet-breadcrumbs/post-internet-breadcrumbs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, h, Prop, State, Element, Watch } from '@stencil/core';\nimport { debounce } from 'throttle-debounce';\nimport { disableBodyScroll, enableBodyScroll, clearAllBodyScrollLocks } from 'body-scroll-lock';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { state } from '../../data/store';\nimport { OverlayComponent } from './components/overlay.component';\nimport iframeResizer from 'iframe-resizer/js/iframeResizer';\nimport { IBreadcrumbOverlay, IBreadcrumbItem } from '../../models/breadcrumbs.model';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { BreadcrumbList } from './components/breadcrumb-list.component';\nimport { prefersReducedMotion } from '../../utils/utils';\n\n@Component({\n tag: 'swisspost-internet-breadcrumbs',\n styleUrl: 'post-internet-breadcrumbs.scss',\n shadow: true,\n})\nexport class PostInternetBreadcrumbs {\n @Prop() customItems?: string | IBreadcrumbItem[];\n @State() customBreadcrumbItems?: IBreadcrumbItem[];\n @State() overlayVisible: boolean;\n @State() isConcatenated: boolean; // Don't set an initial value, this has to be calculated first, otherwise reactivity problems ensue\n @State() dropdownOpen: boolean = false;\n @State() refsReady: boolean = false;\n @Element() host: Element;\n\n private controlNavRef?: HTMLElement;\n private visibleNavRef?: HTMLElement;\n private currentOverlay: IBreadcrumbOverlay;\n private debouncedResize: debounce<() => void>;\n private lastWindowWidth: number;\n private openAnimation: Animation;\n private loadedAnimation: Animation | undefined;\n\n connectedCallback() {\n this.debouncedResize = debounce(200, this.handleResize.bind(this));\n window.addEventListener('resize', this.debouncedResize, { passive: true });\n }\n\n disconnectedCallback() {\n window.removeEventListener('resize', this.debouncedResize);\n window.removeEventListener('click', this.handleWindowClick);\n clearAllBodyScrollLocks();\n }\n\n async componentWillLoad() {\n // Wait for the config to arrive, then render the header\n try {\n this.customBreadcrumbItems =\n typeof this.customItems === 'string' ? JSON.parse(this.customItems) : this.customItems;\n } catch (error) {\n console.error(error);\n }\n }\n\n componentDidLoad() {\n // Initially check if breadcrumb items are concatenated\n window.requestAnimationFrame(() => {\n this.handleResize();\n });\n }\n\n @Watch('customItems')\n handleCustomConfigChage(newValue: string | IBreadcrumbItem[]) {\n try {\n this.customBreadcrumbItems = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;\n } catch (error) {\n console.error(error);\n }\n }\n\n handleResize() {\n // Catch and exclude vertical resize events, e.g. scrolling in iPhone\n if (window.innerWidth === this.lastWindowWidth) {\n return;\n }\n this.lastWindowWidth = window.innerWidth;\n this.checkConcatenation();\n }\n\n checkConcatenation() {\n if (this.controlNavRef && this.visibleNavRef) {\n this.refsReady = true;\n\n // Delay the check\n window.requestAnimationFrame(() => {\n if (this.controlNavRef && this.visibleNavRef) {\n this.isConcatenated = this.controlNavRef.clientWidth > this.visibleNavRef.clientWidth;\n }\n });\n }\n }\n\n toggleOverlay(overlay: IBreadcrumbOverlay, force?: boolean) {\n const newVisibility = force ?? !this.overlayVisible;\n\n if (newVisibility) {\n // Will trigger overlayRef() once the HTLM is rendered\n this.overlayVisible = newVisibility;\n this.currentOverlay = overlay;\n this.setBodyScroll(overlay);\n } else {\n const activeToggler = this.host.shadowRoot?.querySelector<HTMLElement>(\n '.breadcrumb-buttons [aria-expanded=\"true\"]',\n );\n\n if (this.openAnimation && this.loadedAnimation) {\n this.openAnimation.reverse();\n this.loadedAnimation.reverse();\n\n // Delay hiding overlay until after the animation finishes\n Promise.all([this.openAnimation.finished, this.loadedAnimation.finished]).then(() => {\n if (activeToggler) {\n activeToggler.focus();\n }\n this.overlayVisible = newVisibility;\n this.setBodyScroll(overlay);\n });\n }\n }\n }\n\n /**\n * Disable or re-enable body scrolling, depending on whether overlay is visible or not\n */\n setBodyScroll(overlay: IBreadcrumbOverlay) {\n if (this.overlayVisible) {\n disableBodyScroll(overlay, { reserveScrollBarGap: true });\n } else {\n enableBodyScroll(overlay);\n }\n }\n\n toggleDropdown(force?: boolean) {\n this.dropdownOpen = force ?? !this.dropdownOpen;\n\n if (this.dropdownOpen) {\n requestAnimationFrame(() => {\n document.addEventListener('click', this.handleWindowClick.bind(this), { once: true });\n });\n }\n }\n\n handleWindowClick() {\n this.toggleDropdown(false);\n }\n\n registerIFrameResizer(iFrame: HTMLIFrameElement) {\n if (!iFrame) {\n return;\n }\n\n iFrame.addEventListener('load', () => {\n iframeResizer(\n {\n heightCalculationMethod: 'taggedElement',\n scrolling: true,\n checkOrigin: false,\n },\n iFrame,\n );\n const duration = prefersReducedMotion ? 0 : 300;\n this.loadedAnimation = iFrame.parentElement?.animate(\n [{ opacity: 1, visibility: 'visible', transform: 'translateY(0px)' }],\n { duration, fill: 'forwards' },\n );\n iFrame.parentElement?.classList.add('loaded');\n this.loadedAnimation?.finished.then(() => {\n iFrame.parentElement?.focus();\n });\n });\n }\n\n /**\n * Reference function for the overlay element got called. It is either null (overlay closed)\n * or contains the overlay element as parameter.\n * @param e Overlay element or null\n * @returns void\n */\n overlayRef(e: HTMLElement | undefined) {\n if (!e) {\n return;\n }\n\n const duration = prefersReducedMotion ? 0 : 500;\n this.openAnimation = e.animate([{ opacity: 1, visibility: 'visible' }], {\n duration,\n fill: 'forwards',\n });\n }\n\n private handleKeyDown(event: KeyboardEvent) {\n if (event.key.toLowerCase() === 'escape') {\n this.toggleOverlay(this.currentOverlay, false);\n }\n }\n\n private handleToggleDropdown() {\n this.toggleDropdown();\n }\n\n private handleToggleOverlay() {\n this.toggleOverlay(this.currentOverlay, false);\n }\n\n private handleControlNavRef(element: HTMLElement) {\n this.controlNavRef = element;\n this.checkConcatenation();\n }\n\n private handleVisibleNavRef(element: HTMLElement) {\n this.visibleNavRef = element;\n this.checkConcatenation();\n }\n\n render() {\n // There is something wrong entirely\n if (!state) {\n console.warn(\n `Internet Breadcrumbs: Could not load config. Please make sure that you included the <swisspost-internet-header></swisspost-internet-header> component.`,\n );\n return null;\n }\n\n // Config is not loaded yet\n if (!state.localizedConfig) {\n return null;\n }\n\n // Config has loaded but there is no breadcrumbs config\n if (!state.localizedConfig.breadcrumb) {\n console.warn(\n `Internet Header: Current project \"${state.projectId}\" does not include a breadcrumb config. The breadcrumbs will not be rendered. Remove `,\n document.querySelector('swisspost-internet-breadcrumbs'),\n `from your markup or configure the breadcrumbs in your portal config to stop seeing this warning.`,\n );\n return null;\n }\n\n const breadcrumbConfig = state.localizedConfig.breadcrumb;\n const items =\n this.customBreadcrumbItems !== undefined\n ? [...breadcrumbConfig.items, ...this.customBreadcrumbItems]\n : breadcrumbConfig.items;\n\n return (\n <Host>\n <SvgSprite />\n <div class=\"breadcrumbs\">\n <div class=\"hidden-control-breadcrumbs\" aria-hidden=\"true\" tabindex=\"-1\">\n <nav class=\"breadcrumbs-nav\" ref={e => e !== undefined && this.handleControlNavRef(e)}>\n <BreadcrumbList\n items={items}\n focusable={false}\n clickHandler={() => {}}\n ></BreadcrumbList>\n </nav>\n </div>\n <nav\n aria-label={breadcrumbConfig.a11yLabel}\n ref={e => e !== undefined && this.handleVisibleNavRef(e)}\n class={{\n 'breadcrumbs-nav': true,\n 'visually-hidden': !this.refsReady,\n }}\n >\n <BreadcrumbList\n items={items}\n dropdownOpen={this.dropdownOpen}\n isConcatenated={this.isConcatenated}\n clickHandler={() => this.handleToggleDropdown()}\n ></BreadcrumbList>\n </nav>\n <div class=\"breadcrumb-buttons\">\n {breadcrumbConfig.buttons.map(button => (\n <button\n class=\"btn btn-secondary btn-icon\"\n key={button.text}\n aria-expanded={`${!!this.overlayVisible && this.currentOverlay === button.overlay}`}\n onClick={() => this.toggleOverlay(button.overlay, true)}\n >\n <SvgIcon name={button.svgIcon.name}></SvgIcon>\n <span class=\"visually-hidden\">{button.text}</span>\n </button>\n ))}\n </div>\n {this.overlayVisible && (\n <OverlayComponent\n overlayRef={e => e !== undefined && this.overlayRef(e)}\n iFrameRef={e => e !== undefined && this.registerIFrameResizer(e)}\n overlay={this.currentOverlay}\n onClick={() => this.handleToggleOverlay()}\n onKeyDown={(e: KeyboardEvent) => this.handleKeyDown(e)}\n closeButtonText={state.localizedConfig.header.translations.closeButtonText}\n ></OverlayComponent>\n )}\n </div>\n <slot></slot>\n </Host>\n );\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
- import { h } from '@stencil/core';
2
- import { PostFooterBlockSocials } from './post-footer-block-socials.component';
1
+ import { h } from "@stencil/core";
2
+ import { PostFooterBlockSocials } from "./post-footer-block-socials.component";
3
3
  export const PostFooterBlockAddress = (props) => {
4
4
  return (h("div", { class: "block-address" }, h("h3", null, props.block.title), props.block.content &&
5
5
  props.block.content
@@ -1,4 +1,4 @@
1
- import { h } from '@stencil/core';
1
+ import { h } from "@stencil/core";
2
2
  const getContentHours = (hours) => hours.replace(/<[^>]*>?/gm, '');
3
3
  const callUnblu = () => {
4
4
  if (typeof window['unbluLSLoad'] === 'function') {
@@ -1,4 +1,4 @@
1
- import { h } from '@stencil/core';
1
+ import { h } from "@stencil/core";
2
2
  export const PostFooterBlockCustom = (props) => {
3
3
  return (h("div", { class: "pre-footer" }, h("div", { class: "block-custom container" }, h("h3", null, props.block.title), h("ul", { class: "no-list box link-list" }, props.block.links &&
4
4
  props.block.links.map(link => (h("li", { key: link.url }, h("a", { class: "flyout-link", href: link.url, target: link.target }, link.text))))))));
@@ -1,4 +1,4 @@
1
- import { h } from '@stencil/core';
1
+ import { h } from "@stencil/core";
2
2
  export const PostFooterBlockList = (props) => {
3
3
  return (h("div", { class: "block-list" }, h("h3", null, props.block.title), h("ul", { class: "no-list box link-list" }, props.block.links &&
4
4
  props.block.links.map(link => (h("li", { key: link.url }, h("a", { class: "flyout-link", href: link.url, target: link.target }, link.text)))))));
@@ -1,4 +1,4 @@
1
- import { h } from '@stencil/core';
1
+ import { h } from "@stencil/core";
2
2
  export const PostFooterBlockSocials = (props) => {
3
3
  return (h("div", { class: "block-socials" }, h("h3", null, props.content.title), h("ul", { class: "no-list socials" }, props.content.links.map(link => (h("li", { key: link.url }, h("a", { href: link.url, target: link.target }, h("span", { class: "visually-hidden" }, link.name), h("svg", { "aria-hidden": "true" }, h("use", { href: `#${link.icon}` })))))))));
4
4
  };
@@ -1,10 +1,10 @@
1
- import { Host, h } from '@stencil/core';
2
- import { state } from '../../data/store';
3
- import { SvgSprite } from '../../utils/svg-sprite.component';
4
- import { PostFooterBlockCustom } from './components/post-footer-block-custom.component';
5
- import { PostFooterBlockList } from './components/post-footer-block-list.component';
6
- import { PostFooterBlockAddress } from './components/post-footer-block-address.component';
7
- import { PostFooterBlockContact } from './components/post-footer-block-contact.component';
1
+ import { Host, h } from "@stencil/core";
2
+ import { state } from "../../data/store";
3
+ import { SvgSprite } from "../../utils/svg-sprite.component";
4
+ import { PostFooterBlockCustom } from "./components/post-footer-block-custom.component";
5
+ import { PostFooterBlockList } from "./components/post-footer-block-list.component";
6
+ import { PostFooterBlockAddress } from "./components/post-footer-block-address.component";
7
+ import { PostFooterBlockContact } from "./components/post-footer-block-contact.component";
8
8
  export class PostInternetFooter {
9
9
  constructor() {
10
10
  this.liveSupportEnabled = false;
@@ -1,12 +1,12 @@
1
- import { Host, h, } from '@stencil/core';
2
- import { debounce, throttle } from 'throttle-debounce';
3
- import { getLocalizedConfig, getLocalizedCustomConfig, isValidProjectId, } from '../../services/config.service';
4
- import { state, dispose } from '../../data/store';
5
- import { SvgSprite } from '../../utils/svg-sprite.component';
6
- import { SvgIcon } from '../../utils/svg-icon.component';
7
- import { translate } from '../../services/language.service';
8
- import { If } from '../../utils/if.component';
9
- import packageJson from '../../../package.json';
1
+ import { Host, h, } from "@stencil/core";
2
+ import { debounce, throttle } from "throttle-debounce";
3
+ import { getLocalizedConfig, getLocalizedCustomConfig, isValidProjectId, } from "../../services/config.service";
4
+ import { state, dispose } from "../../data/store";
5
+ import { SvgSprite } from "../../utils/svg-sprite.component";
6
+ import { SvgIcon } from "../../utils/svg-icon.component";
7
+ import { translate } from "../../services/language.service";
8
+ import { If } from "../../utils/if.component";
9
+ import packageJson from "../../../package.json";
10
10
  export class PostInternetHeader {
11
11
  /**
12
12
  * Get the currently set language as a two letter string ("de", "fr" "it" or "en")
@@ -309,7 +309,8 @@ export class PostInternetHeader {
309
309
  "references": {
310
310
  "StickynessOptions": {
311
311
  "location": "import",
312
- "path": "../../models/implementor.model"
312
+ "path": "../../models/implementor.model",
313
+ "id": "src/models/implementor.model.ts::StickynessOptions"
313
314
  }
314
315
  }
315
316
  },
@@ -438,7 +439,8 @@ export class PostInternetHeader {
438
439
  "references": {
439
440
  "Environment": {
440
441
  "location": "import",
441
- "path": "../../models/general.model"
442
+ "path": "../../models/general.model",
443
+ "id": "src/models/general.model.ts::Environment"
442
444
  }
443
445
  }
444
446
  },
@@ -461,7 +463,8 @@ export class PostInternetHeader {
461
463
  "references": {
462
464
  "IAvailableLanguage": {
463
465
  "location": "import",
464
- "path": "../../models/language.model"
466
+ "path": "../../models/language.model",
467
+ "id": "src/models/language.model.ts::IAvailableLanguage"
465
468
  }
466
469
  }
467
470
  },
@@ -483,7 +486,8 @@ export class PostInternetHeader {
483
486
  "references": {
484
487
  "ICustomConfig": {
485
488
  "location": "import",
486
- "path": "../../models/general.model"
489
+ "path": "../../models/general.model",
490
+ "id": "src/models/general.model.ts::ICustomConfig"
487
491
  }
488
492
  }
489
493
  },
@@ -558,7 +562,8 @@ export class PostInternetHeader {
558
562
  "references": {
559
563
  "NavMainEntity": {
560
564
  "location": "import",
561
- "path": "../../models/header.model"
565
+ "path": "../../models/header.model",
566
+ "id": "src/models/header.model.ts::NavMainEntity"
562
567
  }
563
568
  }
564
569
  },
@@ -623,7 +628,8 @@ export class PostInternetHeader {
623
628
  "parameters": [],
624
629
  "references": {
625
630
  "Promise": {
626
- "location": "global"
631
+ "location": "global",
632
+ "id": "global::Promise"
627
633
  }
628
634
  },
629
635
  "return": "Promise<string>"
@@ -1 +1 @@
1
- {"version":3,"file":"post-internet-header.js","sourceRoot":"","sources":["../../../../src/components/post-internet-header/post-internet-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n Element,\n h,\n State,\n Prop,\n Watch,\n Listen,\n EventEmitter,\n Event,\n Method,\n} from '@stencil/core';\nimport { debounce, throttle } from 'throttle-debounce';\nimport {\n getLocalizedConfig,\n getLocalizedCustomConfig,\n isValidProjectId,\n} from '../../services/config.service';\nimport { state, dispose } from '../../data/store';\nimport { DropdownElement, DropdownEvent, NavMainEntity } from '../../models/header.model';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { StickynessOptions } from '../../models/implementor.model';\nimport { ActiveRouteProp, Environment, ICustomConfig } from '../../models/general.model';\nimport { IAvailableLanguage } from '../../models/language.model';\nimport { translate } from '../../services/language.service';\nimport { If } from '../../utils/if.component';\nimport packageJson from '../../../package.json';\n\n@Component({\n tag: 'swisspost-internet-header',\n styleUrl: 'post-internet-header.scss',\n shadow: true,\n})\nexport class PostInternetHeader {\n /**\n * Your project id, previously passed as query string parameter serviceId.\n */\n @Prop() project: string;\n\n /**\n * Sticky behaviour of the header.\n */\n @Prop() stickyness: StickynessOptions = 'minimal';\n\n /**\n * Initial language to be used. Overrides automatic language detection.\n */\n @Prop() language?: string;\n\n /**\n * Toggle the meta navigation.\n */\n @Prop() meta: boolean = true;\n\n /**\n * Toggle the login link (when logged out) or the user widget (when logged in).\n */\n @Prop() login: boolean = true;\n\n /**\n * Toggle the search button.\n */\n @Prop() search: boolean = true;\n\n /**\n * Toggle skiplinks. They help keyboard users to quickly jump to important sections of the page.\n */\n @Prop() skiplinks: boolean = true;\n\n /**\n * DEPRECATED!: Define a proxy URL for the config fetch request. Will be removed in the next major version\n */\n @Prop() configProxy?: string;\n\n /**\n * Target environment. Choose 'int01' for local testing.\n */\n @Prop() environment: Environment = 'prod';\n\n /**\n * Override the language switch links with custom URLs. Helpful when your application contains sub-pages and you\n * would like to stay on subpages when the user changes language.\n */\n @Prop() languageSwitchOverrides?: string | IAvailableLanguage[];\n\n /**\n * Customize the header config loaded from the post portal.\n */\n @Prop() customConfig?: string | ICustomConfig;\n\n /**\n * The header uses this cookie to set the language. Disables automatic language detection.\n */\n @Prop() languageCookieKey?: string;\n\n /**\n * The header uses this local storage key to set the language. Disables automatic language selection.\n */\n @Prop() languageLocalStorageKey?: string = 'swisspost-internet-header-language';\n\n /**\n * Set the currently activated route. If there is a link matching this URL in the header, it will be highlighted.\n * Will also highlight partly matching URLs. When set to auto, will use current location.href for comparison.\n */\n @Prop() activeRoute?: 'auto' | false | string = 'auto';\n\n /**\n * Online Services only: Add custom links to the special online service navigation entry\n */\n @Prop() osFlyoutOverrides?: string | NavMainEntity;\n\n /**\n * Displays the header at full width for full-screen applications\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * Fires when the header has been rendered to the page.\n */\n @Event() headerLoaded: EventEmitter<void>;\n\n @State() activeFlyout: string | null = null;\n @State() activeDropdownElement: DropdownElement | null = null;\n @Element() host: HTMLElement;\n\n /**\n * Get the currently set language as a two letter string (\"de\", \"fr\" \"it\" or \"en\")\n * @returns string\n */\n @Method()\n async getCurrentLanguage(): Promise<'de' | 'fr' | 'it' | 'en' | string> {\n return state.currentLanguage ?? 'de';\n }\n\n private mainNav?: HTMLPostMainNavigationElement;\n private lastScrollTop = window.scrollY || document.documentElement.scrollTop;\n private throttledScroll: throttle<() => void>;\n private debouncedResize: debounce<() => void>;\n private lastWindowWidth: number = window.innerWidth;\n\n constructor() {\n if (this.project === undefined || this.project === '' || !isValidProjectId(this.project)) {\n throw new Error(\n `Internet Header project key is \"${this.project}\". Please provide a valid project key.`,\n );\n }\n }\n\n connectedCallback() {\n this.throttledScroll = throttle(300, () => this.handleScrollEvent());\n this.debouncedResize = debounce(200, () => this.handleResize());\n window.addEventListener('scroll', this.throttledScroll, { passive: true });\n window.addEventListener('resize', this.debouncedResize, { passive: true });\n }\n\n disconnectedCallback() {\n window.removeEventListener('scroll', this.throttledScroll);\n window.removeEventListener('resize', this.debouncedResize);\n\n // Reset the store to its original state\n dispose();\n }\n\n async componentWillLoad() {\n // Wait for the config to arrive, then render the header\n try {\n state.projectId = this.project;\n state.environment = this.environment;\n if (this.language !== undefined) state.currentLanguage = this.language;\n state.languageSwitchOverrides =\n typeof this.languageSwitchOverrides === 'string'\n ? JSON.parse(this.languageSwitchOverrides)\n : this.languageSwitchOverrides;\n state.osFlyoutOverrides =\n typeof this.osFlyoutOverrides === 'string'\n ? JSON.parse(this.osFlyoutOverrides)\n : this.osFlyoutOverrides;\n\n if (this.customConfig !== undefined && state.currentLanguage !== null) {\n state.localizedCustomConfig = getLocalizedCustomConfig(\n this.customConfig,\n state.currentLanguage,\n );\n }\n\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n } catch (error) {\n console.error(error);\n }\n }\n\n componentDidLoad() {\n window.requestAnimationFrame(() => {\n this.handleResize();\n this.headerLoaded.emit();\n this.host.classList.add('header-loaded');\n });\n\n if (this.stickyness === 'full')\n console.warn('Internet Header: The stickyness=\"full\" option is deprecated.');\n }\n\n @Watch('language')\n async handleLanguageChange(newValue: string) {\n state.currentLanguage = newValue;\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: newValue,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n if (this.customConfig)\n state.localizedCustomConfig = getLocalizedCustomConfig(this.customConfig, newValue);\n }\n\n @Watch('languageSwitchOverrides')\n handleAvailableLanguagesChage(newValue: string | IAvailableLanguage[]) {\n state.languageSwitchOverrides = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;\n }\n\n @Watch('osFlyoutOverrides')\n async handleOsFlyoutOverrides(newValue: string | NavMainEntity) {\n state.osFlyoutOverrides = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n }\n\n @Watch('activeRoute')\n async handleActiveRouteChange(newValue: string | ActiveRouteProp) {\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: newValue,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n }\n\n @Watch('customConfig')\n async handleCustomConfigChange(newValue: string | ICustomConfig) {\n if (this.language === undefined) return;\n const localizedCustomConfig = getLocalizedCustomConfig(newValue, this.language);\n state.localizedCustomConfig = localizedCustomConfig;\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n }\n\n @Watch('search')\n handleSearchChange(newValue: boolean) {\n state.search = newValue;\n }\n\n @Watch('login')\n handleLoginChange(newValue: boolean) {\n state.login = newValue;\n }\n\n @Watch('meta')\n handleMetaChange(newValue: boolean) {\n state.meta = newValue;\n }\n\n @Listen('languageChanged')\n handleLanguageChangeEvent(event: CustomEvent<string>) {\n this.handleLanguageChange(event.detail);\n }\n\n private handleClickOutsideBound = this.handleClickOutside.bind(this);\n\n private handleClickOutside(event: Event) {\n // Close active dropdown element on click outside of it\n if (this.activeDropdownElement && !event.composedPath().includes(this.activeDropdownElement)) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n }\n\n private handleKeyUp(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n if (this.activeDropdownElement) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n if (this.activeFlyout !== null && this.mainNav) {\n this.mainNav.toggleDropdown(false);\n }\n }\n }\n\n private handleScrollEvent() {\n // Credits: \"https://github.com/qeremy/so/blob/master/so.dom.js#L426\"\n const st = window.scrollY || document.documentElement.scrollTop;\n\n // Toggle class without re-rendering the component if stickyness is minimal\n // the other stickyness modes do not need the class\n if (this.stickyness === 'minimal') {\n this.host.classList.toggle('scrolling-up', st <= this.lastScrollTop);\n }\n\n // For Mobile or negative scrolling\n this.lastScrollTop = st <= 0 ? 0 : st;\n }\n\n private handleResize() {\n // Close main navigation dropdown if size changed to bigger than 1024px (search dropdown will be kept open)\n if (this.isMainNavOpen() && this.lastWindowWidth < 1024 && window.innerWidth >= 1024) {\n this.activeDropdownElement?.toggleDropdown(false);\n }\n\n this.lastWindowWidth = window.innerWidth;\n }\n\n /**\n * Close open dropdown menus if another is being opened\n *\n * @param event Dropdown toggled event\n * @returns void\n */\n private handleDropdownToggled(event: CustomEvent<DropdownEvent>) {\n if (!event.detail.open && this.activeDropdownElement !== event.detail.element) {\n // Some dropdown got closed programmatically (possibly by this function). To prevent\n // a circle or an outdated state, we'll not handle this event\n return;\n }\n\n if (event.detail.open === true) {\n if (this.activeDropdownElement) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n\n this.activeDropdownElement = event.detail.element;\n\n if (window.innerWidth >= 1024) {\n // Add event listener to close active dropdown element on click outsite of it\n // Also adds 10ms delay in case of an external interaction:\n // Some button on the page calls toggleDropdown() -> dropdown opens\n // Click event bubbles to the window, this.handleClickOutsideBound closes dropdown again\n window.setTimeout(() => {\n window.addEventListener('click', this.handleClickOutsideBound);\n }, 10);\n }\n\n if (this.activeFlyout !== null && this.mainNav) {\n this.mainNav.setActiveFlyout(null);\n }\n } else {\n this.activeDropdownElement = null;\n\n // Remove event listener as it is not needed if no dropdown element is active\n window.removeEventListener('click', this.handleClickOutsideBound);\n }\n }\n\n /**\n * Close open dropdowns if the flyout is being opened\n * @param event Flyout toggle event\n */\n private handleFlyoutToggled(event: CustomEvent<string | null>) {\n this.activeFlyout = event.detail;\n\n if (this.activeDropdownElement && event.detail && !this.isMainNavOpen()) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n }\n\n private toggleMobileDropdown() {\n this.mainNav?.toggleDropdown();\n }\n\n private isMainNavOpen() {\n return (\n this.activeDropdownElement && this.activeDropdownElement.tagName === 'POST-MAIN-NAVIGATION'\n );\n }\n\n render() {\n if (!state.localizedConfig?.header) {\n console.error(new Error('Internet Header: Config cannot be loaded'));\n return;\n }\n\n const config = state.localizedConfig;\n const renderMetaNavigation =\n this.meta &&\n config.header.navMeta !== undefined &&\n config.header.navMeta?.filter(meta => !meta.isHomeLink).length > 0;\n const renderLogin =\n (this.login ?? !config.header.isLoginWidgetHidden) && config.header.loginWidgetOptions;\n const renderLanguageSwitch = config.header.navLang.length > 1;\n\n return (\n <Host\n class={`stickyness-${this.stickyness} ${\n this.activeDropdownElement || this.activeFlyout ? 'dropdown-open' : ''\n }`}\n data-version={packageJson.version}\n onKeyup={(e: KeyboardEvent) => this.handleKeyUp(e)}\n >\n <header class={`post-internet-header${this.fullWidth ? ' full-width' : ''}`}>\n <SvgSprite />\n <h1 class=\"visually-hidden\">{translate('Navigate on post.ch')}</h1>\n <If condition={this.skiplinks === true}>\n <post-skiplinks></post-skiplinks>\n </If>\n <If condition={renderMetaNavigation === true}>\n <post-meta-navigation\n orientation=\"horizontal\"\n class=\"hidden-lg\"\n full-width={this.fullWidth}\n >\n <If condition={renderLanguageSwitch === true}>\n <post-language-switch\n id=\"post-language-switch-desktop\"\n mode=\"dropdown\"\n onDropdownToggled={e => this.handleDropdownToggled(e)}\n ></post-language-switch>\n </If>\n </post-meta-navigation>\n </If>\n <div class=\"main-navigation-container wide-container\">\n <post-logo></post-logo>\n <button\n class=\"menu-button nav-link\"\n onClick={() => this.toggleMobileDropdown()}\n aria-haspopup=\"menu\"\n aria-controls=\"post-internet-header-main-navigation\"\n aria-expanded={this.activeDropdownElement ? 'true' : 'false'}\n >\n <span class=\"menu-button-text visually-hidden\">{config.header.mobileMenu.text}</span>\n <SvgIcon name={this.isMainNavOpen() ? 'pi-close' : 'pi-menu'}></SvgIcon>\n </button>\n <post-main-navigation\n onDropdownToggled={e => this.handleDropdownToggled(e)}\n onFlyoutToggled={e => this.handleFlyoutToggled(e)}\n ref={el => (this.mainNav = el)}\n >\n <If condition={renderMetaNavigation === true}>\n <post-meta-navigation orientation=\"vertical\">\n <If condition={renderLanguageSwitch === true}>\n <post-language-switch\n id=\"post-language-switch-mobile\"\n mode=\"list\"\n ></post-language-switch>\n </If>\n </post-meta-navigation>\n </If>\n </post-main-navigation>\n <div class=\"main-navigation-controls\">\n <If condition={this.search !== false}>\n <post-search onDropdownToggled={e => this.handleDropdownToggled(e)}></post-search>\n </If>\n <If condition={!!renderLogin}>\n <post-klp-login-widget>\n <slot name=\"login-widget\"></slot>\n </post-klp-login-widget>\n </If>\n <If condition={renderMetaNavigation === false && renderLanguageSwitch === true}>\n <post-language-switch\n id=\"post-language-switch-no-meta\"\n onDropdownToggled={e => this.handleDropdownToggled(e)}\n mode=\"dropdown\"\n ></post-language-switch>\n </If>\n <slot name=\"main\"></slot>\n </div>\n </div>\n </header>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"post-internet-header.js","sourceRoot":"","sources":["../../../../src/components/post-internet-header/post-internet-header.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Host,\n Element,\n h,\n State,\n Prop,\n Watch,\n Listen,\n EventEmitter,\n Event,\n Method,\n} from '@stencil/core';\nimport { debounce, throttle } from 'throttle-debounce';\nimport {\n getLocalizedConfig,\n getLocalizedCustomConfig,\n isValidProjectId,\n} from '../../services/config.service';\nimport { state, dispose } from '../../data/store';\nimport { DropdownElement, DropdownEvent, NavMainEntity } from '../../models/header.model';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\nimport { StickynessOptions } from '../../models/implementor.model';\nimport { ActiveRouteProp, Environment, ICustomConfig } from '../../models/general.model';\nimport { IAvailableLanguage } from '../../models/language.model';\nimport { translate } from '../../services/language.service';\nimport { If } from '../../utils/if.component';\nimport packageJson from '../../../package.json';\n\n@Component({\n tag: 'swisspost-internet-header',\n styleUrl: 'post-internet-header.scss',\n shadow: true,\n})\nexport class PostInternetHeader {\n /**\n * Your project id, previously passed as query string parameter serviceId.\n */\n @Prop() project: string;\n\n /**\n * Sticky behaviour of the header.\n */\n @Prop() stickyness: StickynessOptions = 'minimal';\n\n /**\n * Initial language to be used. Overrides automatic language detection.\n */\n @Prop() language?: string;\n\n /**\n * Toggle the meta navigation.\n */\n @Prop() meta: boolean = true;\n\n /**\n * Toggle the login link (when logged out) or the user widget (when logged in).\n */\n @Prop() login: boolean = true;\n\n /**\n * Toggle the search button.\n */\n @Prop() search: boolean = true;\n\n /**\n * Toggle skiplinks. They help keyboard users to quickly jump to important sections of the page.\n */\n @Prop() skiplinks: boolean = true;\n\n /**\n * DEPRECATED!: Define a proxy URL for the config fetch request. Will be removed in the next major version\n */\n @Prop() configProxy?: string;\n\n /**\n * Target environment. Choose 'int01' for local testing.\n */\n @Prop() environment: Environment = 'prod';\n\n /**\n * Override the language switch links with custom URLs. Helpful when your application contains sub-pages and you\n * would like to stay on subpages when the user changes language.\n */\n @Prop() languageSwitchOverrides?: string | IAvailableLanguage[];\n\n /**\n * Customize the header config loaded from the post portal.\n */\n @Prop() customConfig?: string | ICustomConfig;\n\n /**\n * The header uses this cookie to set the language. Disables automatic language detection.\n */\n @Prop() languageCookieKey?: string;\n\n /**\n * The header uses this local storage key to set the language. Disables automatic language selection.\n */\n @Prop() languageLocalStorageKey?: string = 'swisspost-internet-header-language';\n\n /**\n * Set the currently activated route. If there is a link matching this URL in the header, it will be highlighted.\n * Will also highlight partly matching URLs. When set to auto, will use current location.href for comparison.\n */\n @Prop() activeRoute?: 'auto' | false | string = 'auto';\n\n /**\n * Online Services only: Add custom links to the special online service navigation entry\n */\n @Prop() osFlyoutOverrides?: string | NavMainEntity;\n\n /**\n * Displays the header at full width for full-screen applications\n */\n @Prop() fullWidth?: boolean = false;\n\n /**\n * Fires when the header has been rendered to the page.\n */\n @Event() headerLoaded: EventEmitter<void>;\n\n @State() activeFlyout: string | null = null;\n @State() activeDropdownElement: DropdownElement | null = null;\n @Element() host: HTMLElement;\n\n /**\n * Get the currently set language as a two letter string (\"de\", \"fr\" \"it\" or \"en\")\n * @returns string\n */\n @Method()\n async getCurrentLanguage(): Promise<'de' | 'fr' | 'it' | 'en' | string> {\n return state.currentLanguage ?? 'de';\n }\n\n private mainNav?: HTMLPostMainNavigationElement;\n private lastScrollTop = window.scrollY || document.documentElement.scrollTop;\n private throttledScroll: throttle<() => void>;\n private debouncedResize: debounce<() => void>;\n private lastWindowWidth: number = window.innerWidth;\n\n constructor() {\n if (this.project === undefined || this.project === '' || !isValidProjectId(this.project)) {\n throw new Error(\n `Internet Header project key is \"${this.project}\". Please provide a valid project key.`,\n );\n }\n }\n\n connectedCallback() {\n this.throttledScroll = throttle(300, () => this.handleScrollEvent());\n this.debouncedResize = debounce(200, () => this.handleResize());\n window.addEventListener('scroll', this.throttledScroll, { passive: true });\n window.addEventListener('resize', this.debouncedResize, { passive: true });\n }\n\n disconnectedCallback() {\n window.removeEventListener('scroll', this.throttledScroll);\n window.removeEventListener('resize', this.debouncedResize);\n\n // Reset the store to its original state\n dispose();\n }\n\n async componentWillLoad() {\n // Wait for the config to arrive, then render the header\n try {\n state.projectId = this.project;\n state.environment = this.environment;\n if (this.language !== undefined) state.currentLanguage = this.language;\n state.languageSwitchOverrides =\n typeof this.languageSwitchOverrides === 'string'\n ? JSON.parse(this.languageSwitchOverrides)\n : this.languageSwitchOverrides;\n state.osFlyoutOverrides =\n typeof this.osFlyoutOverrides === 'string'\n ? JSON.parse(this.osFlyoutOverrides)\n : this.osFlyoutOverrides;\n\n if (this.customConfig !== undefined && state.currentLanguage !== null) {\n state.localizedCustomConfig = getLocalizedCustomConfig(\n this.customConfig,\n state.currentLanguage,\n );\n }\n\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n } catch (error) {\n console.error(error);\n }\n }\n\n componentDidLoad() {\n window.requestAnimationFrame(() => {\n this.handleResize();\n this.headerLoaded.emit();\n this.host.classList.add('header-loaded');\n });\n\n if (this.stickyness === 'full')\n console.warn('Internet Header: The stickyness=\"full\" option is deprecated.');\n }\n\n @Watch('language')\n async handleLanguageChange(newValue: string) {\n state.currentLanguage = newValue;\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: newValue,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n if (this.customConfig)\n state.localizedCustomConfig = getLocalizedCustomConfig(this.customConfig, newValue);\n }\n\n @Watch('languageSwitchOverrides')\n handleAvailableLanguagesChage(newValue: string | IAvailableLanguage[]) {\n state.languageSwitchOverrides = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;\n }\n\n @Watch('osFlyoutOverrides')\n async handleOsFlyoutOverrides(newValue: string | NavMainEntity) {\n state.osFlyoutOverrides = typeof newValue === 'string' ? JSON.parse(newValue) : newValue;\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n }\n\n @Watch('activeRoute')\n async handleActiveRouteChange(newValue: string | ActiveRouteProp) {\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: newValue,\n localizedCustomConfig: state.localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n }\n\n @Watch('customConfig')\n async handleCustomConfigChange(newValue: string | ICustomConfig) {\n if (this.language === undefined) return;\n const localizedCustomConfig = getLocalizedCustomConfig(newValue, this.language);\n state.localizedCustomConfig = localizedCustomConfig;\n state.localizedConfig = await getLocalizedConfig({\n projectId: this.project,\n environment: this.environment,\n language: this.language,\n cookieKey: this.languageCookieKey,\n localStorageKey: this.languageLocalStorageKey,\n activeRouteProp: this.activeRoute,\n localizedCustomConfig: localizedCustomConfig,\n osFlyoutOverrides: state.osFlyoutOverrides,\n });\n }\n\n @Watch('search')\n handleSearchChange(newValue: boolean) {\n state.search = newValue;\n }\n\n @Watch('login')\n handleLoginChange(newValue: boolean) {\n state.login = newValue;\n }\n\n @Watch('meta')\n handleMetaChange(newValue: boolean) {\n state.meta = newValue;\n }\n\n @Listen('languageChanged')\n handleLanguageChangeEvent(event: CustomEvent<string>) {\n this.handleLanguageChange(event.detail);\n }\n\n private handleClickOutsideBound = this.handleClickOutside.bind(this);\n\n private handleClickOutside(event: Event) {\n // Close active dropdown element on click outside of it\n if (this.activeDropdownElement && !event.composedPath().includes(this.activeDropdownElement)) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n }\n\n private handleKeyUp(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n if (this.activeDropdownElement) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n if (this.activeFlyout !== null && this.mainNav) {\n this.mainNav.toggleDropdown(false);\n }\n }\n }\n\n private handleScrollEvent() {\n // Credits: \"https://github.com/qeremy/so/blob/master/so.dom.js#L426\"\n const st = window.scrollY || document.documentElement.scrollTop;\n\n // Toggle class without re-rendering the component if stickyness is minimal\n // the other stickyness modes do not need the class\n if (this.stickyness === 'minimal') {\n this.host.classList.toggle('scrolling-up', st <= this.lastScrollTop);\n }\n\n // For Mobile or negative scrolling\n this.lastScrollTop = st <= 0 ? 0 : st;\n }\n\n private handleResize() {\n // Close main navigation dropdown if size changed to bigger than 1024px (search dropdown will be kept open)\n if (this.isMainNavOpen() && this.lastWindowWidth < 1024 && window.innerWidth >= 1024) {\n this.activeDropdownElement?.toggleDropdown(false);\n }\n\n this.lastWindowWidth = window.innerWidth;\n }\n\n /**\n * Close open dropdown menus if another is being opened\n *\n * @param event Dropdown toggled event\n * @returns void\n */\n private handleDropdownToggled(event: CustomEvent<DropdownEvent>) {\n if (!event.detail.open && this.activeDropdownElement !== event.detail.element) {\n // Some dropdown got closed programmatically (possibly by this function). To prevent\n // a circle or an outdated state, we'll not handle this event\n return;\n }\n\n if (event.detail.open === true) {\n if (this.activeDropdownElement) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n\n this.activeDropdownElement = event.detail.element;\n\n if (window.innerWidth >= 1024) {\n // Add event listener to close active dropdown element on click outsite of it\n // Also adds 10ms delay in case of an external interaction:\n // Some button on the page calls toggleDropdown() -> dropdown opens\n // Click event bubbles to the window, this.handleClickOutsideBound closes dropdown again\n window.setTimeout(() => {\n window.addEventListener('click', this.handleClickOutsideBound);\n }, 10);\n }\n\n if (this.activeFlyout !== null && this.mainNav) {\n this.mainNav.setActiveFlyout(null);\n }\n } else {\n this.activeDropdownElement = null;\n\n // Remove event listener as it is not needed if no dropdown element is active\n window.removeEventListener('click', this.handleClickOutsideBound);\n }\n }\n\n /**\n * Close open dropdowns if the flyout is being opened\n * @param event Flyout toggle event\n */\n private handleFlyoutToggled(event: CustomEvent<string | null>) {\n this.activeFlyout = event.detail;\n\n if (this.activeDropdownElement && event.detail && !this.isMainNavOpen()) {\n this.activeDropdownElement.toggleDropdown(false);\n }\n }\n\n private toggleMobileDropdown() {\n this.mainNav?.toggleDropdown();\n }\n\n private isMainNavOpen() {\n return (\n this.activeDropdownElement && this.activeDropdownElement.tagName === 'POST-MAIN-NAVIGATION'\n );\n }\n\n render() {\n if (!state.localizedConfig?.header) {\n console.error(new Error('Internet Header: Config cannot be loaded'));\n return;\n }\n\n const config = state.localizedConfig;\n const renderMetaNavigation =\n this.meta &&\n config.header.navMeta !== undefined &&\n config.header.navMeta?.filter(meta => !meta.isHomeLink).length > 0;\n const renderLogin =\n (this.login ?? !config.header.isLoginWidgetHidden) && config.header.loginWidgetOptions;\n const renderLanguageSwitch = config.header.navLang.length > 1;\n\n return (\n <Host\n class={`stickyness-${this.stickyness} ${\n this.activeDropdownElement || this.activeFlyout ? 'dropdown-open' : ''\n }`}\n data-version={packageJson.version}\n onKeyup={(e: KeyboardEvent) => this.handleKeyUp(e)}\n >\n <header class={`post-internet-header${this.fullWidth ? ' full-width' : ''}`}>\n <SvgSprite />\n <h1 class=\"visually-hidden\">{translate('Navigate on post.ch')}</h1>\n <If condition={this.skiplinks === true}>\n <post-skiplinks></post-skiplinks>\n </If>\n <If condition={renderMetaNavigation === true}>\n <post-meta-navigation\n orientation=\"horizontal\"\n class=\"hidden-lg\"\n full-width={this.fullWidth}\n >\n <If condition={renderLanguageSwitch === true}>\n <post-language-switch\n id=\"post-language-switch-desktop\"\n mode=\"dropdown\"\n onDropdownToggled={e => this.handleDropdownToggled(e)}\n ></post-language-switch>\n </If>\n </post-meta-navigation>\n </If>\n <div class=\"main-navigation-container wide-container\">\n <post-logo></post-logo>\n <button\n class=\"menu-button nav-link\"\n onClick={() => this.toggleMobileDropdown()}\n aria-haspopup=\"menu\"\n aria-controls=\"post-internet-header-main-navigation\"\n aria-expanded={this.activeDropdownElement ? 'true' : 'false'}\n >\n <span class=\"menu-button-text visually-hidden\">{config.header.mobileMenu.text}</span>\n <SvgIcon name={this.isMainNavOpen() ? 'pi-close' : 'pi-menu'}></SvgIcon>\n </button>\n <post-main-navigation\n onDropdownToggled={e => this.handleDropdownToggled(e)}\n onFlyoutToggled={e => this.handleFlyoutToggled(e)}\n ref={el => (this.mainNav = el)}\n >\n <If condition={renderMetaNavigation === true}>\n <post-meta-navigation orientation=\"vertical\">\n <If condition={renderLanguageSwitch === true}>\n <post-language-switch\n id=\"post-language-switch-mobile\"\n mode=\"list\"\n ></post-language-switch>\n </If>\n </post-meta-navigation>\n </If>\n </post-main-navigation>\n <div class=\"main-navigation-controls\">\n <If condition={this.search !== false}>\n <post-search onDropdownToggled={e => this.handleDropdownToggled(e)}></post-search>\n </If>\n <If condition={!!renderLogin}>\n <post-klp-login-widget>\n <slot name=\"login-widget\"></slot>\n </post-klp-login-widget>\n </If>\n <If condition={renderMetaNavigation === false && renderLanguageSwitch === true}>\n <post-language-switch\n id=\"post-language-switch-no-meta\"\n onDropdownToggled={e => this.handleDropdownToggled(e)}\n mode=\"dropdown\"\n ></post-language-switch>\n </If>\n <slot name=\"main\"></slot>\n </div>\n </div>\n </header>\n </Host>\n );\n }\n}\n"]}
@@ -1,4 +1,4 @@
1
- import '../../assets/js/klp-login-widget.js';
1
+ import "../../assets/js/klp-login-widget.js";
2
2
  export const initializeKLPLoginWidget = (containerId, options) => {
3
3
  if (!options) {
4
4
  return;
@@ -1,7 +1,7 @@
1
- import { Host, h } from '@stencil/core';
2
- import { state } from '../../data/store';
3
- import { SvgSprite } from '../../utils/svg-sprite.component';
4
- import { SvgIcon } from '../../utils/svg-icon.component';
1
+ import { Host, h } from "@stencil/core";
2
+ import { state } from "../../data/store";
3
+ import { SvgSprite } from "../../utils/svg-sprite.component";
4
+ import { SvgIcon } from "../../utils/svg-icon.component";
5
5
  export class PostKlpLoginWidget {
6
6
  async componentDidLoad() {
7
7
  var _a, _b, _c, _d;
@@ -50,10 +50,12 @@ export class PostKlpLoginWidget {
50
50
  "parameters": [],
51
51
  "references": {
52
52
  "Promise": {
53
- "location": "global"
53
+ "location": "global",
54
+ "id": "global::Promise"
54
55
  },
55
56
  "HTMLElement": {
56
- "location": "global"
57
+ "location": "global",
58
+ "id": "global::HTMLElement"
57
59
  }
58
60
  },
59
61
  "return": "Promise<void>"
@@ -1 +1 @@
1
- {"version":3,"file":"post-klp-login-widget.js","sourceRoot":"","sources":["../../../../src/components/post-klp-login-widget/post-klp-login-widget.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAQzD,MAAM,OAAO,kBAAkB;EAG7B,KAAK,CAAC,gBAAgB;;IACpB,IACE,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,mBAAmB;MAClD,CAAC,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,kBAAkB,CAAA;MAElD,OAAO;IACT,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAC7E,wBAAwB,CAAC,uBAAuB,kCAC3C,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,kBAAkB,KAClD,WAAW,EAAE,KAAK,CAAC,WAAW,IAC9B,CAAC;EACL,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,QAAQ;;IACZ,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CACxD,uEAAuE,CACxE,CAAC;IACF,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE;MACrC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;KACxB;EACH,CAAC;EAED,MAAM;;IACJ,IACE,CAAC,CAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,MAAM,0CAAE,kBAAkB,CAAA;MACnD,CAAC,CAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,MAAM,0CAAE,mBAAmB,CAAA,EACpD;MACA,OAAO,CAAC,IAAI,CACV,sHAAsH,KAAK,CAAC,SAAS,kHAAkH,CACxP,CAAC;MACF,OAAO,IAAI,CAAC;KACb;IACD,OAAO,CACL,EAAC,IAAI;MACH,EAAC,SAAS,OAAG;MACb,WAAK,KAAK,EAAC,gBAAgB,8BACxB,CAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,MAAM,0CAAE,mBAAmB,EAAC,CAAC,CAAC,CACrD,SACE,EAAE,EAAC,uBAAuB,EAC1B,KAAK,EAAC,cAAc,EACpB,IAAI,EAAE,MAAA,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,kBAAkB,0CAAE,WAAW;QAElE,YAAM,KAAK,EAAC,iBAAiB,IAC1B,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CACrD;QACP,EAAC,OAAO,IAAC,IAAI,EAAC,UAAU,GAAG,CACzB,CACL,CAAC,CAAC,CAAC,CACF,WAAK,EAAE,EAAC,uBAAuB,GAAO,CACvC,CACG,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Method, Element } from '@stencil/core';\nimport { state } from '../../data/store';\nimport { IsFocusable } from '../../models/header.model';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\n\n@Component({\n tag: 'post-klp-login-widget',\n styleUrl: 'post-klp-login-widget.scss',\n scoped: false,\n shadow: true,\n})\nexport class PostKlpLoginWidget implements IsFocusable {\n @Element() host: HTMLElement;\n\n async componentDidLoad() {\n if (\n state.localizedConfig?.header?.showJobsLoginWidget ||\n !state.localizedConfig?.header?.loginWidgetOptions\n )\n return;\n const { initializeKLPLoginWidget } = await import('./klp-widget.controller');\n initializeKLPLoginWidget('post-klp-login-widget', {\n ...state.localizedConfig.header.loginWidgetOptions,\n environment: state.environment,\n });\n }\n\n /**\n * Sets the focus on the login button\n */\n @Method()\n async setFocus() {\n const loginButton = this.host.shadowRoot?.querySelectorAll<HTMLElement>(\n '.klp-widget-anonymous__wrapper a, .klp-widget-authenticated-session a',\n );\n if (loginButton && loginButton.length) {\n loginButton[0].focus();\n }\n }\n\n render() {\n if (\n !state?.localizedConfig?.header?.loginWidgetOptions &&\n !state?.localizedConfig?.header?.showJobsLoginWidget\n ) {\n console.warn(\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.`,\n );\n return null;\n }\n return (\n <Host>\n <SvgSprite />\n <div class=\"widget-wrapper\" data-hj-suppress>\n {state?.localizedConfig?.header?.showJobsLoginWidget ? (\n <a\n id=\"post-klp-login-widget\"\n class=\"login-button\"\n href={state.localizedConfig.header.loginWidgetOptions?.appLoginUrl}\n >\n <span class=\"visually-hidden\">\n {state.localizedConfig.header.translations.loginWidgetText}\n </span>\n <SvgIcon name=\"pi-login\" />\n </a>\n ) : (\n <div id=\"post-klp-login-widget\"></div>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"post-klp-login-widget.js","sourceRoot":"","sources":["../../../../src/components/post-klp-login-widget/post-klp-login-widget.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAQzD,MAAM,OAAO,kBAAkB;EAG7B,KAAK,CAAC,gBAAgB;;IACpB,IACE,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,mBAAmB;MAClD,CAAC,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,kBAAkB,CAAA;MAElD,OAAO;IACT,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAC7E,wBAAwB,CAAC,uBAAuB,kCAC3C,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,kBAAkB,KAClD,WAAW,EAAE,KAAK,CAAC,WAAW,IAC9B,CAAC;EACL,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,QAAQ;;IACZ,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CACxD,uEAAuE,CACxE,CAAC;IACF,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE;MACrC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;KACxB;EACH,CAAC;EAED,MAAM;;IACJ,IACE,CAAC,CAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,MAAM,0CAAE,kBAAkB,CAAA;MACnD,CAAC,CAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,MAAM,0CAAE,mBAAmB,CAAA,EACpD;MACA,OAAO,CAAC,IAAI,CACV,sHAAsH,KAAK,CAAC,SAAS,kHAAkH,CACxP,CAAC;MACF,OAAO,IAAI,CAAC;KACb;IACD,OAAO,CACL,EAAC,IAAI;MACH,EAAC,SAAS,OAAG;MACb,WAAK,KAAK,EAAC,gBAAgB,8BACxB,CAAA,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,eAAe,0CAAE,MAAM,0CAAE,mBAAmB,EAAC,CAAC,CAAC,CACrD,SACE,EAAE,EAAC,uBAAuB,EAC1B,KAAK,EAAC,cAAc,EACpB,IAAI,EAAE,MAAA,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,kBAAkB,0CAAE,WAAW;QAElE,YAAM,KAAK,EAAC,iBAAiB,IAC1B,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CACrD;QACP,EAAC,OAAO,IAAC,IAAI,EAAC,UAAU,GAAG,CACzB,CACL,CAAC,CAAC,CAAC,CACF,WAAK,EAAE,EAAC,uBAAuB,GAAO,CACvC,CACG,CACD,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Method, Element } from '@stencil/core';\nimport { state } from '../../data/store';\nimport { IsFocusable } from '../../models/header.model';\nimport { SvgSprite } from '../../utils/svg-sprite.component';\nimport { SvgIcon } from '../../utils/svg-icon.component';\n\n@Component({\n tag: 'post-klp-login-widget',\n styleUrl: 'post-klp-login-widget.scss',\n scoped: false,\n shadow: true,\n})\nexport class PostKlpLoginWidget implements IsFocusable {\n @Element() host: HTMLElement;\n\n async componentDidLoad() {\n if (\n state.localizedConfig?.header?.showJobsLoginWidget ||\n !state.localizedConfig?.header?.loginWidgetOptions\n )\n return;\n const { initializeKLPLoginWidget } = await import('./klp-widget.controller');\n initializeKLPLoginWidget('post-klp-login-widget', {\n ...state.localizedConfig.header.loginWidgetOptions,\n environment: state.environment,\n });\n }\n\n /**\n * Sets the focus on the login button\n */\n @Method()\n async setFocus() {\n const loginButton = this.host.shadowRoot?.querySelectorAll<HTMLElement>(\n '.klp-widget-anonymous__wrapper a, .klp-widget-authenticated-session a',\n );\n if (loginButton && loginButton.length) {\n loginButton[0].focus();\n }\n }\n\n render() {\n if (\n !state?.localizedConfig?.header?.loginWidgetOptions &&\n !state?.localizedConfig?.header?.showJobsLoginWidget\n ) {\n console.warn(\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.`,\n );\n return null;\n }\n return (\n <Host>\n <SvgSprite />\n <div class=\"widget-wrapper\" data-hj-suppress>\n {state?.localizedConfig?.header?.showJobsLoginWidget ? (\n <a\n id=\"post-klp-login-widget\"\n class=\"login-button\"\n href={state.localizedConfig.header.loginWidgetOptions?.appLoginUrl}\n >\n <span class=\"visually-hidden\">\n {state.localizedConfig.header.translations.loginWidgetText}\n </span>\n <SvgIcon name=\"pi-login\" />\n </a>\n ) : (\n <div id=\"post-klp-login-widget\"></div>\n )}\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
- import { h } from '@stencil/core';
2
- import { translate } from '../../../services/language.service';
3
- import { state } from '../../../data/store';
1
+ import { h } from "@stencil/core";
2
+ import { translate } from "../../../services/language.service";
3
+ import { state } from "../../../data/store";
4
4
  export const PostLanguageSwitchList = (props) => {
5
5
  var _a;
6
6
  if (((_a = state.localizedConfig) === null || _a === void 0 ? void 0 : _a.header) === undefined)