@swisspost/internet-header 1.13.1 → 1.13.3

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 (552) hide show
  1. package/dist/cjs/if.component-31542061.js +12 -0
  2. package/dist/cjs/{if.component-2cd3c1ff.js.map → if.component-31542061.js.map} +1 -1
  3. package/dist/cjs/{index-4bd0adf1.js → index-8cbf8194.js} +141 -81
  4. package/dist/cjs/index-8cbf8194.js.map +1 -0
  5. package/dist/cjs/index.cjs.js +18 -18
  6. package/dist/cjs/{klp-widget.controller-8baf3b8a.js → klp-widget.controller-7fbe23c3.js} +11 -11
  7. package/dist/cjs/{klp-widget.controller-8baf3b8a.js.map → klp-widget.controller-7fbe23c3.js.map} +1 -1
  8. package/dist/cjs/language.service-11e7d8c1.js +182 -0
  9. package/dist/cjs/language.service-11e7d8c1.js.map +1 -0
  10. package/dist/cjs/loader.cjs.js +2 -2
  11. package/dist/{esm/post-internet-breadcrumbs-f268030c.js → cjs/post-internet-breadcrumbs-f5e20904.js} +278 -276
  12. package/dist/cjs/post-internet-breadcrumbs-f5e20904.js.map +1 -0
  13. package/dist/cjs/post-internet-footer-d222e56d.js +161 -0
  14. package/dist/cjs/post-internet-footer-d222e56d.js.map +1 -0
  15. package/dist/cjs/post-internet-header-befc7a3f.js +847 -0
  16. package/dist/cjs/post-internet-header-befc7a3f.js.map +1 -0
  17. package/dist/cjs/post-klp-login-widget-01eee964.js +63 -0
  18. package/dist/cjs/{post-klp-login-widget-5380708a.js.map → post-klp-login-widget-01eee964.js.map} +1 -1
  19. package/dist/cjs/post-klp-login-widget.cjs.entry.js +5 -5
  20. package/dist/cjs/{post-language-switch-422af4d0.js → post-language-switch-59e1e832.js} +88 -88
  21. package/dist/cjs/post-language-switch-59e1e832.js.map +1 -0
  22. package/dist/cjs/post-language-switch.cjs.entry.js +7 -7
  23. package/dist/cjs/{post-logo-5867ad55.js → post-logo-6d127981.js} +14 -14
  24. package/dist/cjs/{post-logo-5867ad55.js.map → post-logo-6d127981.js.map} +1 -1
  25. package/dist/cjs/post-logo.cjs.entry.js +3 -3
  26. package/dist/cjs/post-main-navigation-d34e9799.js +240 -0
  27. package/dist/cjs/post-main-navigation-d34e9799.js.map +1 -0
  28. package/dist/cjs/post-main-navigation.cjs.entry.js +7 -7
  29. package/dist/cjs/{post-meta-navigation-0b73779f.js → post-meta-navigation-ac31cee4.js} +15 -15
  30. package/dist/cjs/{post-meta-navigation-0b73779f.js.map → post-meta-navigation-ac31cee4.js.map} +1 -1
  31. package/dist/cjs/post-meta-navigation.cjs.entry.js +3 -3
  32. package/dist/cjs/{post-search-7eb0a7a2.js → post-search-ac307fd7.js} +438 -438
  33. package/dist/cjs/post-search-ac307fd7.js.map +1 -0
  34. package/dist/cjs/post-search.cjs.entry.js +8 -8
  35. package/dist/cjs/post-skiplinks-74f15d34.js +52 -0
  36. package/dist/cjs/{post-skiplinks-3db1d214.js.map → post-skiplinks-74f15d34.js.map} +1 -1
  37. package/dist/cjs/post-skiplinks.cjs.entry.js +5 -5
  38. package/dist/cjs/{store-77668e50.js → store-dffccc44.js} +10 -10
  39. package/dist/cjs/store-dffccc44.js.map +1 -0
  40. package/dist/cjs/{svg-icon.component-5965f301.js → svg-icon.component-65508d78.js} +3 -3
  41. package/dist/cjs/{svg-icon.component-5965f301.js.map → svg-icon.component-65508d78.js.map} +1 -1
  42. package/dist/cjs/svg-sprite.component-dc109568.js +51 -0
  43. package/dist/cjs/{svg-sprite.component-68369645.js.map → svg-sprite.component-dc109568.js.map} +1 -1
  44. package/dist/cjs/swisspost-internet-breadcrumbs.cjs.entry.js +7 -7
  45. package/dist/cjs/swisspost-internet-footer.cjs.entry.js +5 -5
  46. package/dist/cjs/swisspost-internet-header.cjs.entry.js +8 -8
  47. package/dist/cjs/swisspost-internet-header.cjs.js +3 -3
  48. package/dist/cjs/swisspost-internet-header.cjs.js.map +1 -1
  49. package/dist/cjs/{ui.service-488151be.js → ui.service-7334148b.js} +5 -5
  50. package/dist/cjs/{ui.service-488151be.js.map → ui.service-7334148b.js.map} +1 -1
  51. package/dist/cjs/{utils-717975e0.js → utils-0a793763.js} +7 -7
  52. package/dist/cjs/{utils-717975e0.js.map → utils-0a793763.js.map} +1 -1
  53. package/dist/collection/assets/i18n/translations.js +65 -65
  54. package/dist/collection/assets/i18n/translations.js.map +1 -1
  55. package/dist/collection/collection-manifest.json +2 -2
  56. package/dist/collection/components/post-internet-breadcrumbs/components/breadcrumb-list.component.js +4 -4
  57. package/dist/collection/components/post-internet-breadcrumbs/components/breadcrumb-list.component.js.map +1 -1
  58. package/dist/collection/components/post-internet-breadcrumbs/components/focus-trap.component.js +28 -28
  59. package/dist/collection/components/post-internet-breadcrumbs/components/focus-trap.component.js.map +1 -1
  60. package/dist/collection/components/post-internet-breadcrumbs/components/middle-dropdown.component.js +1 -1
  61. package/dist/collection/components/post-internet-breadcrumbs/components/middle-dropdown.component.js.map +1 -1
  62. package/dist/collection/components/post-internet-breadcrumbs/components/middle-links.component.js +1 -1
  63. package/dist/collection/components/post-internet-breadcrumbs/components/middle-links.component.js.map +1 -1
  64. package/dist/collection/components/post-internet-breadcrumbs/components/overlay.component.js.map +1 -1
  65. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.css +1 -1
  66. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js +288 -290
  67. package/dist/collection/components/post-internet-breadcrumbs/post-internet-breadcrumbs.js.map +1 -1
  68. package/dist/collection/components/post-internet-footer/components/post-footer-block-address.component.js +7 -7
  69. package/dist/collection/components/post-internet-footer/components/post-footer-block-address.component.js.map +1 -1
  70. package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js +16 -16
  71. package/dist/collection/components/post-internet-footer/components/post-footer-block-contact.component.js.map +1 -1
  72. package/dist/collection/components/post-internet-footer/components/post-footer-block-custom.component.js +2 -2
  73. package/dist/collection/components/post-internet-footer/components/post-footer-block-custom.component.js.map +1 -1
  74. package/dist/collection/components/post-internet-footer/components/post-footer-block-list.component.js +2 -2
  75. package/dist/collection/components/post-internet-footer/components/post-footer-block-list.component.js.map +1 -1
  76. package/dist/collection/components/post-internet-footer/components/post-footer-block-socials.component.js +1 -1
  77. package/dist/collection/components/post-internet-footer/components/post-footer-block-socials.component.js.map +1 -1
  78. package/dist/collection/components/post-internet-footer/post-internet-footer.css +1 -1
  79. package/dist/collection/components/post-internet-footer/post-internet-footer.js +82 -82
  80. package/dist/collection/components/post-internet-footer/post-internet-footer.js.map +1 -1
  81. package/dist/collection/components/post-internet-header/logo-animation/logo-animation.js +42 -42
  82. package/dist/collection/components/post-internet-header/logo-animation/logo-animation.js.map +1 -1
  83. package/dist/collection/components/post-internet-header/post-internet-header.css +1 -1
  84. package/dist/collection/components/post-internet-header/post-internet-header.js +707 -701
  85. package/dist/collection/components/post-internet-header/post-internet-header.js.map +1 -1
  86. package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js +10 -10
  87. package/dist/collection/components/post-klp-login-widget/klp-widget.controller.js.map +1 -1
  88. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.css +1 -1
  89. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js +99 -99
  90. package/dist/collection/components/post-klp-login-widget/post-klp-login-widget.js.map +1 -1
  91. package/dist/collection/components/post-language-switch/components/post-language-switch-list.js +10 -10
  92. package/dist/collection/components/post-language-switch/components/post-language-switch-list.js.map +1 -1
  93. package/dist/collection/components/post-language-switch/post-language-switch.js +169 -171
  94. package/dist/collection/components/post-language-switch/post-language-switch.js.map +1 -1
  95. package/dist/collection/components/post-logo/post-logo.js +20 -20
  96. package/dist/collection/components/post-logo/post-logo.js.map +1 -1
  97. package/dist/collection/components/post-main-navigation/components/level-one-action.component.js +9 -9
  98. package/dist/collection/components/post-main-navigation/components/level-one-action.component.js.map +1 -1
  99. package/dist/collection/components/post-main-navigation/post-main-navigation.css +1 -1
  100. package/dist/collection/components/post-main-navigation/post-main-navigation.js +313 -317
  101. package/dist/collection/components/post-main-navigation/post-main-navigation.js.map +1 -1
  102. package/dist/collection/components/post-meta-navigation/post-meta-navigation.js +62 -62
  103. package/dist/collection/components/post-meta-navigation/post-meta-navigation.js.map +1 -1
  104. package/dist/collection/components/post-search/post-search.js +367 -369
  105. package/dist/collection/components/post-search/post-search.js.map +1 -1
  106. package/dist/collection/components/post-skiplinks/post-skiplinks.js +44 -44
  107. package/dist/collection/components/post-skiplinks/post-skiplinks.js.map +1 -1
  108. package/dist/collection/data/store.js +8 -8
  109. package/dist/collection/data/store.js.map +1 -1
  110. package/dist/collection/models/geocode.model.js +6 -6
  111. package/dist/collection/models/geocode.model.js.map +1 -1
  112. package/dist/collection/services/config.service.js +116 -116
  113. package/dist/collection/services/config.service.js.map +1 -1
  114. package/dist/collection/services/language.service.js +66 -66
  115. package/dist/collection/services/language.service.js.map +1 -1
  116. package/dist/collection/services/route.service.js +105 -105
  117. package/dist/collection/services/route.service.js.map +1 -1
  118. package/dist/collection/services/search/coveo.service.js +28 -28
  119. package/dist/collection/services/search/coveo.service.js.map +1 -1
  120. package/dist/collection/services/search/coveo.settings.js +30 -30
  121. package/dist/collection/services/search/coveo.settings.js.map +1 -1
  122. package/dist/collection/services/search/parcel.service.js +29 -29
  123. package/dist/collection/services/search/parcel.service.js.map +1 -1
  124. package/dist/collection/services/search/places.service.js +44 -44
  125. package/dist/collection/services/search/places.service.js.map +1 -1
  126. package/dist/collection/services/search/places.settings.js +10 -10
  127. package/dist/collection/services/search/places.settings.js.map +1 -1
  128. package/dist/collection/services/search/search-utilities.js +3 -3
  129. package/dist/collection/services/search/search-utilities.js.map +1 -1
  130. package/dist/collection/services/search/search.service.js +13 -13
  131. package/dist/collection/services/search/search.service.js.map +1 -1
  132. package/dist/collection/services/ui.service.js +4 -4
  133. package/dist/collection/services/ui.service.js.map +1 -1
  134. package/dist/collection/utils/highlighted.component.js +7 -7
  135. package/dist/collection/utils/highlighted.component.js.map +1 -1
  136. package/dist/collection/utils/if.component.js +4 -4
  137. package/dist/collection/utils/if.component.js.map +1 -1
  138. package/dist/collection/utils/scrollparent.js +18 -15
  139. package/dist/collection/utils/scrollparent.js.map +1 -1
  140. package/dist/collection/utils/svg-icon.component.js.map +1 -1
  141. package/dist/collection/utils/svg-sprite.component.js.map +1 -1
  142. package/dist/collection/utils/utils.js +6 -6
  143. package/dist/collection/utils/utils.js.map +1 -1
  144. package/dist/components/index.js +18 -18
  145. package/dist/components/klp-widget.controller.js +10 -10
  146. package/dist/components/klp-widget.controller.js.map +1 -1
  147. package/dist/components/language.service.js +131 -131
  148. package/dist/components/language.service.js.map +1 -1
  149. package/dist/components/post-klp-login-widget.d.ts +2 -2
  150. package/dist/components/post-klp-login-widget2.js +61 -61
  151. package/dist/components/post-klp-login-widget2.js.map +1 -1
  152. package/dist/components/post-language-switch.d.ts +2 -2
  153. package/dist/components/post-language-switch2.js +99 -99
  154. package/dist/components/post-language-switch2.js.map +1 -1
  155. package/dist/components/post-logo.d.ts +2 -2
  156. package/dist/components/post-logo2.js +25 -25
  157. package/dist/components/post-logo2.js.map +1 -1
  158. package/dist/components/post-main-navigation.d.ts +2 -2
  159. package/dist/components/post-main-navigation2.js +221 -221
  160. package/dist/components/post-main-navigation2.js.map +1 -1
  161. package/dist/components/post-meta-navigation.d.ts +2 -2
  162. package/dist/components/post-meta-navigation2.js +29 -29
  163. package/dist/components/post-meta-navigation2.js.map +1 -1
  164. package/dist/components/post-search.d.ts +2 -2
  165. package/dist/components/post-search2.js +455 -455
  166. package/dist/components/post-search2.js.map +1 -1
  167. package/dist/components/post-skiplinks.d.ts +2 -2
  168. package/dist/components/post-skiplinks2.js +46 -46
  169. package/dist/components/post-skiplinks2.js.map +1 -1
  170. package/dist/components/store.js +8 -8
  171. package/dist/components/store.js.map +1 -1
  172. package/dist/components/svg-icon.component.js +1 -1
  173. package/dist/components/svg-icon.component.js.map +1 -1
  174. package/dist/components/svg-sprite.component.js +42 -42
  175. package/dist/components/svg-sprite.component.js.map +1 -1
  176. package/dist/components/swisspost-internet-breadcrumbs.d.ts +2 -2
  177. package/dist/components/swisspost-internet-breadcrumbs.js +286 -286
  178. package/dist/components/swisspost-internet-breadcrumbs.js.map +1 -1
  179. package/dist/components/swisspost-internet-footer.d.ts +2 -2
  180. package/dist/components/swisspost-internet-footer.js +138 -138
  181. package/dist/components/swisspost-internet-footer.js.map +1 -1
  182. package/dist/components/swisspost-internet-header.d.ts +2 -2
  183. package/dist/components/swisspost-internet-header.js +687 -667
  184. package/dist/components/swisspost-internet-header.js.map +1 -1
  185. package/dist/components/ui.service.js +4 -4
  186. package/dist/components/ui.service.js.map +1 -1
  187. package/dist/components/utils.js +6 -6
  188. package/dist/components/utils.js.map +1 -1
  189. package/dist/docs.d.ts +1 -21
  190. package/dist/docs.json +53 -43
  191. package/dist/esm/if.component-d88d9e48.js +10 -0
  192. package/dist/esm/{if.component-3a779aca.js.map → if.component-d88d9e48.js.map} +1 -1
  193. package/dist/esm/{index-2b83f5e9.js → index-54145c02.js} +141 -81
  194. package/dist/esm/index-54145c02.js.map +1 -0
  195. package/dist/esm/index.js +18 -18
  196. package/dist/esm/{klp-widget.controller-668f7e8d.js → klp-widget.controller-549d5132.js} +11 -11
  197. package/dist/esm/{klp-widget.controller-668f7e8d.js.map → klp-widget.controller-549d5132.js.map} +1 -1
  198. package/dist/esm/language.service-1bd090a7.js +178 -0
  199. package/dist/esm/language.service-1bd090a7.js.map +1 -0
  200. package/dist/esm/loader.js +3 -3
  201. package/dist/{cjs/post-internet-breadcrumbs-e3ee842c.js → esm/post-internet-breadcrumbs-16b4d1eb.js} +276 -278
  202. package/dist/esm/post-internet-breadcrumbs-16b4d1eb.js.map +1 -0
  203. package/dist/esm/post-internet-footer-211748e4.js +159 -0
  204. package/dist/esm/post-internet-footer-211748e4.js.map +1 -0
  205. package/dist/esm/post-internet-header-91c9a423.js +845 -0
  206. package/dist/esm/post-internet-header-91c9a423.js.map +1 -0
  207. package/dist/esm/post-klp-login-widget-cac28bb1.js +61 -0
  208. package/dist/esm/{post-klp-login-widget-57a4fdb5.js.map → post-klp-login-widget-cac28bb1.js.map} +1 -1
  209. package/dist/esm/post-klp-login-widget.entry.js +5 -5
  210. package/dist/esm/{post-language-switch-997ee4f9.js → post-language-switch-7df96469.js} +88 -88
  211. package/dist/esm/post-language-switch-7df96469.js.map +1 -0
  212. package/dist/esm/post-language-switch.entry.js +7 -7
  213. package/dist/esm/{post-logo-cde3c44d.js → post-logo-050acfc4.js} +14 -14
  214. package/dist/esm/{post-logo-cde3c44d.js.map → post-logo-050acfc4.js.map} +1 -1
  215. package/dist/esm/post-logo.entry.js +3 -3
  216. package/dist/esm/post-main-navigation-1735be3c.js +238 -0
  217. package/dist/esm/post-main-navigation-1735be3c.js.map +1 -0
  218. package/dist/esm/post-main-navigation.entry.js +7 -7
  219. package/dist/esm/{post-meta-navigation-09e9bdc8.js → post-meta-navigation-ece1e9de.js} +15 -15
  220. package/dist/esm/{post-meta-navigation-09e9bdc8.js.map → post-meta-navigation-ece1e9de.js.map} +1 -1
  221. package/dist/esm/post-meta-navigation.entry.js +3 -3
  222. package/dist/esm/{post-search-a7f2e856.js → post-search-efd16c09.js} +438 -438
  223. package/dist/esm/post-search-efd16c09.js.map +1 -0
  224. package/dist/esm/post-search.entry.js +8 -8
  225. package/dist/esm/post-skiplinks-c6b5addd.js +50 -0
  226. package/dist/esm/{post-skiplinks-b3c32a77.js.map → post-skiplinks-c6b5addd.js.map} +1 -1
  227. package/dist/esm/post-skiplinks.entry.js +5 -5
  228. package/dist/esm/{store-80b19c12.js → store-c0bc1c5b.js} +10 -10
  229. package/dist/esm/store-c0bc1c5b.js.map +1 -0
  230. package/dist/esm/svg-icon.component-fe96fac6.js +8 -0
  231. package/dist/esm/{svg-icon.component-7295f7cc.js.map → svg-icon.component-fe96fac6.js.map} +1 -1
  232. package/dist/esm/svg-sprite.component-4874b2fb.js +49 -0
  233. package/dist/esm/{svg-sprite.component-cfc05f90.js.map → svg-sprite.component-4874b2fb.js.map} +1 -1
  234. package/dist/esm/swisspost-internet-breadcrumbs.entry.js +7 -7
  235. package/dist/esm/swisspost-internet-footer.entry.js +5 -5
  236. package/dist/esm/swisspost-internet-header.entry.js +8 -8
  237. package/dist/esm/swisspost-internet-header.js +4 -4
  238. package/dist/esm/swisspost-internet-header.js.map +1 -1
  239. package/dist/esm/{ui.service-a71cf490.js → ui.service-22f2c593.js} +5 -5
  240. package/dist/esm/{ui.service-a71cf490.js.map → ui.service-22f2c593.js.map} +1 -1
  241. package/dist/esm/{utils-3a8ff48f.js → utils-c8805f81.js} +7 -7
  242. package/dist/esm/{utils-3a8ff48f.js.map → utils-c8805f81.js.map} +1 -1
  243. package/dist/esm-es5/bodyScrollLock.esm-afcc00e3.js.map +1 -1
  244. package/dist/esm-es5/{if.component-3a779aca.js → if.component-d88d9e48.js} +1 -1
  245. package/dist/esm-es5/index-54145c02.js +2 -0
  246. package/dist/esm-es5/index-54145c02.js.map +1 -0
  247. package/dist/esm-es5/index-d2256e06.js.map +1 -1
  248. package/dist/esm-es5/index.js +1 -1
  249. package/dist/esm-es5/{klp-widget.controller-668f7e8d.js → klp-widget.controller-549d5132.js} +10 -10
  250. package/dist/{swisspost-internet-header/p-5f246e59.system.js.map → esm-es5/klp-widget.controller-549d5132.js.map} +1 -1
  251. package/dist/esm-es5/{language.service-501b09a8.js → language.service-1bd090a7.js} +2 -2
  252. package/dist/esm-es5/loader.js +1 -1
  253. package/dist/esm-es5/loader.js.map +1 -1
  254. package/dist/esm-es5/post-internet-breadcrumbs-16b4d1eb.js +7 -0
  255. package/dist/{swisspost-internet-header/p-bd893111.system.js.map → esm-es5/post-internet-breadcrumbs-16b4d1eb.js.map} +1 -1
  256. package/dist/esm-es5/{post-internet-footer-3a501420.js → post-internet-footer-211748e4.js} +2 -2
  257. package/dist/esm-es5/{post-internet-footer-3a501420.js.map → post-internet-footer-211748e4.js.map} +1 -1
  258. package/dist/esm-es5/post-internet-header-91c9a423.js +2 -0
  259. package/dist/esm-es5/post-internet-header-91c9a423.js.map +1 -0
  260. package/dist/esm-es5/post-klp-login-widget-cac28bb1.js +2 -0
  261. package/dist/esm-es5/{post-klp-login-widget-57a4fdb5.js.map → post-klp-login-widget-cac28bb1.js.map} +1 -1
  262. package/dist/esm-es5/post-klp-login-widget.entry.js +1 -1
  263. package/dist/esm-es5/{post-language-switch-997ee4f9.js → post-language-switch-7df96469.js} +2 -2
  264. package/dist/esm-es5/post-language-switch.entry.js +1 -1
  265. package/dist/esm-es5/{post-logo-cde3c44d.js → post-logo-050acfc4.js} +2 -2
  266. package/dist/esm-es5/post-logo.entry.js +1 -1
  267. package/dist/esm-es5/post-main-navigation-1735be3c.js +2 -0
  268. package/dist/esm-es5/post-main-navigation-1735be3c.js.map +1 -0
  269. package/dist/esm-es5/post-main-navigation.entry.js +1 -1
  270. package/dist/esm-es5/{post-meta-navigation-09e9bdc8.js → post-meta-navigation-ece1e9de.js} +2 -2
  271. package/dist/esm-es5/post-meta-navigation.entry.js +1 -1
  272. package/dist/esm-es5/{post-search-a7f2e856.js → post-search-efd16c09.js} +2 -2
  273. package/dist/esm-es5/post-search.entry.js +1 -1
  274. package/dist/esm-es5/{post-skiplinks-b3c32a77.js → post-skiplinks-c6b5addd.js} +2 -2
  275. package/dist/esm-es5/post-skiplinks.entry.js +1 -1
  276. package/dist/esm-es5/{store-80b19c12.js → store-c0bc1c5b.js} +2 -2
  277. package/dist/esm-es5/store-c0bc1c5b.js.map +1 -0
  278. package/dist/esm-es5/svg-icon.component-fe96fac6.js +2 -0
  279. package/dist/esm-es5/{svg-sprite.component-cfc05f90.js → svg-sprite.component-4874b2fb.js} +2 -2
  280. package/dist/esm-es5/swisspost-internet-breadcrumbs.entry.js +1 -1
  281. package/dist/esm-es5/swisspost-internet-footer.entry.js +1 -1
  282. package/dist/esm-es5/swisspost-internet-header.entry.js +1 -1
  283. package/dist/esm-es5/swisspost-internet-header.js +1 -1
  284. package/dist/esm-es5/swisspost-internet-header.js.map +1 -1
  285. package/dist/esm-es5/{ui.service-a71cf490.js → ui.service-22f2c593.js} +1 -1
  286. package/dist/esm-es5/{utils-3a8ff48f.js → utils-c8805f81.js} +1 -1
  287. package/dist/swisspost-internet-header/index.esm.js +1 -1
  288. package/dist/swisspost-internet-header/{p-96618f42.system.js → p-0338115d.system.js} +2 -2
  289. package/dist/swisspost-internet-header/{p-7ab3cbcb.js → p-0589b170.js} +2 -2
  290. package/dist/swisspost-internet-header/{p-788cf356.js → p-0606dca1.js} +2 -2
  291. package/dist/swisspost-internet-header/{p-788cf356.js.map → p-0606dca1.js.map} +1 -1
  292. package/dist/swisspost-internet-header/{p-986a52bc.system.js → p-06f51515.system.js} +1 -1
  293. package/dist/swisspost-internet-header/p-07313f1b.system.entry.js +2 -0
  294. package/dist/swisspost-internet-header/{p-16676174.system.js → p-11d02764.system.js} +2 -2
  295. package/dist/swisspost-internet-header/p-1244a33a.entry.js +2 -0
  296. package/dist/swisspost-internet-header/p-14b0f654.js +3 -0
  297. package/dist/swisspost-internet-header/p-14b0f654.js.map +1 -0
  298. package/dist/swisspost-internet-header/p-1c722d02.system.entry.js +2 -0
  299. package/dist/swisspost-internet-header/p-1cb8fe46.entry.js +2 -0
  300. package/dist/swisspost-internet-header/{p-f2a43ce2.system.js → p-1fd8561a.system.js} +1 -1
  301. package/dist/swisspost-internet-header/{p-7eaa5689.js → p-2a8d5787.js} +1 -1
  302. package/dist/swisspost-internet-header/p-2eb28b7c.js +2 -0
  303. package/dist/swisspost-internet-header/p-2eb28b7c.js.map +1 -0
  304. package/dist/swisspost-internet-header/p-2f221bb5.system.js +2 -0
  305. package/dist/swisspost-internet-header/p-2f221bb5.system.js.map +1 -0
  306. package/dist/swisspost-internet-header/p-3759e0aa.entry.js +2 -0
  307. package/dist/swisspost-internet-header/p-3985d762.js +7 -0
  308. package/dist/swisspost-internet-header/{p-f6a2a74f.js.map → p-3985d762.js.map} +1 -1
  309. package/dist/swisspost-internet-header/p-3bcc322e.system.js +2 -0
  310. package/dist/swisspost-internet-header/p-3bcc322e.system.js.map +1 -0
  311. package/dist/swisspost-internet-header/p-3e62c7a9.js +2 -0
  312. package/dist/swisspost-internet-header/p-3e62c7a9.js.map +1 -0
  313. package/dist/swisspost-internet-header/p-434dbf16.system.js +7 -0
  314. package/dist/{esm-es5/post-internet-breadcrumbs-f268030c.js.map → swisspost-internet-header/p-434dbf16.system.js.map} +1 -1
  315. package/dist/swisspost-internet-header/p-4380032a.entry.js +2 -0
  316. package/dist/swisspost-internet-header/{p-78e8a405.js → p-4bc05e68.js} +2 -2
  317. package/dist/swisspost-internet-header/p-5498ca7c.entry.js +2 -0
  318. package/dist/swisspost-internet-header/{p-a7de7323.system.js → p-5a69c918.system.js} +2 -2
  319. package/dist/swisspost-internet-header/p-5ac16bdd.system.entry.js +2 -0
  320. package/dist/swisspost-internet-header/{p-624d732c.js → p-5c2bb553.js} +2 -2
  321. package/dist/swisspost-internet-header/p-5c2bb553.js.map +1 -0
  322. package/dist/swisspost-internet-header/p-6d60866a.system.entry.js +2 -0
  323. package/dist/swisspost-internet-header/p-7505c3e1.system.entry.js +2 -0
  324. package/dist/swisspost-internet-header/{p-3a7f9457.js → p-7d188581.js} +2 -2
  325. package/dist/swisspost-internet-header/{p-cf06f703.js → p-840aa5c6.js} +1 -1
  326. package/dist/swisspost-internet-header/p-87756f7c.system.js +2 -0
  327. package/dist/swisspost-internet-header/{p-d294420b.system.js.map → p-87756f7c.system.js.map} +1 -1
  328. package/dist/swisspost-internet-header/{p-dc8296bd.js → p-8a65e8d6.js} +2 -2
  329. package/dist/swisspost-internet-header/{p-40806042.system.js → p-8b9d7320.system.js} +2 -2
  330. package/dist/swisspost-internet-header/p-8df32cb8.system.js +2 -0
  331. package/dist/swisspost-internet-header/p-943d2956.system.entry.js +2 -0
  332. package/dist/swisspost-internet-header/p-948d3e8f.entry.js +2 -0
  333. package/dist/swisspost-internet-header/p-979ae0e8.js +2 -0
  334. package/dist/swisspost-internet-header/{p-236420dc.js.map → p-979ae0e8.js.map} +1 -1
  335. package/dist/swisspost-internet-header/{p-69d380ec.system.js → p-9b1e0d60.system.js} +2 -2
  336. package/dist/swisspost-internet-header/{p-69d380ec.system.js.map → p-9b1e0d60.system.js.map} +1 -1
  337. package/dist/swisspost-internet-header/p-9b4d5e90.system.js.map +1 -1
  338. package/dist/swisspost-internet-header/p-a08ee9d3.entry.js +2 -0
  339. package/dist/swisspost-internet-header/{p-3339310e.js → p-a39139a9.js} +1 -1
  340. package/dist/swisspost-internet-header/p-a4d04c0b.system.entry.js +2 -0
  341. package/dist/swisspost-internet-header/{p-5f246e59.system.js → p-a7bc91ca.system.js} +10 -10
  342. package/dist/{esm-es5/klp-widget.controller-668f7e8d.js.map → swisspost-internet-header/p-a7bc91ca.system.js.map} +1 -1
  343. package/dist/swisspost-internet-header/{p-9af33755.system.js → p-a9f840df.system.js} +2 -2
  344. package/dist/swisspost-internet-header/p-a9f840df.system.js.map +1 -0
  345. package/dist/swisspost-internet-header/p-b3014611.system.js.map +1 -1
  346. package/dist/swisspost-internet-header/p-b8c6f6a6.system.entry.js +2 -0
  347. package/dist/swisspost-internet-header/{p-46f2c38c.js → p-bc60a641.js} +2 -2
  348. package/dist/swisspost-internet-header/{p-0096509c.js → p-bfbb5fc7.js} +2 -2
  349. package/dist/swisspost-internet-header/p-c466f253.entry.js +2 -0
  350. package/dist/swisspost-internet-header/{p-70df9137.js → p-c7f451bd.js} +2 -2
  351. package/dist/swisspost-internet-header/p-c7fba36e.system.entry.js +2 -0
  352. package/dist/swisspost-internet-header/p-c8153649.js +2 -0
  353. package/dist/swisspost-internet-header/{p-ad9a417b.system.js → p-c895eccc.system.js} +2 -2
  354. package/dist/swisspost-internet-header/p-d6ab4ef3.entry.js +2 -0
  355. package/dist/swisspost-internet-header/{p-0e776d6e.system.js → p-d7e221af.system.js} +1 -1
  356. package/dist/swisspost-internet-header/p-da7b8486.system.entry.js +2 -0
  357. package/dist/swisspost-internet-header/{p-bbfd407b.js → p-dc2f1d20.js} +1 -1
  358. package/dist/swisspost-internet-header/{p-ee5e0cc6.system.js → p-dd800ff2.system.js} +2 -2
  359. package/dist/swisspost-internet-header/{p-34fe9d92.system.js → p-e2985a86.system.js} +2 -2
  360. package/dist/swisspost-internet-header/{p-18e9ce89.system.js → p-e5acc124.system.js} +2 -2
  361. package/dist/swisspost-internet-header/p-e7bd7ab7.system.js +2 -0
  362. package/dist/swisspost-internet-header/p-e7bd7ab7.system.js.map +1 -0
  363. package/dist/swisspost-internet-header/p-fe4736f9.system.js +3 -0
  364. package/dist/swisspost-internet-header/p-fe4736f9.system.js.map +1 -0
  365. package/dist/swisspost-internet-header/p-ff36437b.entry.js +2 -0
  366. package/dist/swisspost-internet-header/swisspost-internet-header.css +1 -1
  367. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js +1 -1
  368. package/dist/swisspost-internet-header/swisspost-internet-header.esm.js.map +1 -1
  369. package/dist/swisspost-internet-header/swisspost-internet-header.js +15 -15
  370. package/dist/types/assets/i18n/translations.d.ts +65 -65
  371. package/dist/types/components/post-internet-breadcrumbs/components/breadcrumb-list.component.d.ts +6 -6
  372. package/dist/types/components/post-internet-breadcrumbs/components/focus-trap.component.d.ts +1 -1
  373. package/dist/types/components/post-internet-breadcrumbs/components/middle-dropdown.component.d.ts +4 -4
  374. package/dist/types/components/post-internet-breadcrumbs/components/middle-links.component.d.ts +3 -3
  375. package/dist/types/components/post-internet-breadcrumbs/components/overlay.component.d.ts +6 -6
  376. package/dist/types/components/post-internet-breadcrumbs/post-internet-breadcrumbs.d.ts +51 -51
  377. package/dist/types/components/post-internet-footer/components/post-footer-block-address.component.d.ts +2 -2
  378. package/dist/types/components/post-internet-footer/components/post-footer-block-contact.component.d.ts +3 -3
  379. package/dist/types/components/post-internet-footer/components/post-footer-block-custom.component.d.ts +1 -1
  380. package/dist/types/components/post-internet-footer/components/post-footer-block-list.component.d.ts +2 -2
  381. package/dist/types/components/post-internet-footer/components/post-footer-block-socials.component.d.ts +2 -2
  382. package/dist/types/components/post-internet-footer/post-internet-footer.d.ts +11 -11
  383. package/dist/types/components/post-internet-header/post-internet-header.d.ts +127 -125
  384. package/dist/types/components/post-klp-login-widget/post-klp-login-widget.d.ts +11 -11
  385. package/dist/types/components/post-language-switch/components/post-language-switch-list.d.ts +3 -3
  386. package/dist/types/components/post-language-switch/post-language-switch.d.ts +23 -23
  387. package/dist/types/components/post-logo/post-logo.d.ts +2 -2
  388. package/dist/types/components/post-main-navigation/components/level-one-action.component.d.ts +5 -5
  389. package/dist/types/components/post-main-navigation/post-main-navigation.d.ts +38 -38
  390. package/dist/types/components/post-meta-navigation/post-meta-navigation.d.ts +3 -3
  391. package/dist/types/components/post-search/post-search.d.ts +65 -65
  392. package/dist/types/components/post-skiplinks/post-skiplinks.d.ts +7 -7
  393. package/dist/types/data/store.d.ts +11 -11
  394. package/dist/types/models/breadcrumbs.model.d.ts +25 -25
  395. package/dist/types/models/coveo.model.d.ts +14 -14
  396. package/dist/types/models/footer.model.d.ts +35 -35
  397. package/dist/types/models/general.model.d.ts +36 -36
  398. package/dist/types/models/geocode.model.d.ts +42 -42
  399. package/dist/types/models/header.model.d.ts +123 -123
  400. package/dist/types/models/implementor.model.d.ts +5 -5
  401. package/dist/types/models/language.model.d.ts +4 -4
  402. package/dist/types/models/track-and-trace.model.d.ts +22 -22
  403. package/dist/types/services/language.service.d.ts +65 -65
  404. package/dist/types/services/search/parcel.service.d.ts +1 -1
  405. package/dist/types/stencil-public-runtime.d.ts +8 -0
  406. package/dist/types/utils/highlighted.component.d.ts +2 -2
  407. package/dist/types/utils/if.component.d.ts +1 -1
  408. package/dist/types/utils/svg-icon.component.d.ts +2 -2
  409. package/package.json +24 -14
  410. package/readme.md +1 -1
  411. package/dist/cjs/if.component-2cd3c1ff.js +0 -12
  412. package/dist/cjs/index-4bd0adf1.js.map +0 -1
  413. package/dist/cjs/language.service-dbe2a435.js +0 -182
  414. package/dist/cjs/language.service-dbe2a435.js.map +0 -1
  415. package/dist/cjs/post-internet-breadcrumbs-e3ee842c.js.map +0 -1
  416. package/dist/cjs/post-internet-footer-16117586.js +0 -161
  417. package/dist/cjs/post-internet-footer-16117586.js.map +0 -1
  418. package/dist/cjs/post-internet-header-08840fbe.js +0 -828
  419. package/dist/cjs/post-internet-header-08840fbe.js.map +0 -1
  420. package/dist/cjs/post-klp-login-widget-5380708a.js +0 -63
  421. package/dist/cjs/post-language-switch-422af4d0.js.map +0 -1
  422. package/dist/cjs/post-main-navigation-2c9e953e.js +0 -240
  423. package/dist/cjs/post-main-navigation-2c9e953e.js.map +0 -1
  424. package/dist/cjs/post-search-7eb0a7a2.js.map +0 -1
  425. package/dist/cjs/post-skiplinks-3db1d214.js +0 -52
  426. package/dist/cjs/store-77668e50.js.map +0 -1
  427. package/dist/cjs/svg-sprite.component-68369645.js +0 -51
  428. package/dist/esm/if.component-3a779aca.js +0 -10
  429. package/dist/esm/index-2b83f5e9.js.map +0 -1
  430. package/dist/esm/language.service-501b09a8.js +0 -178
  431. package/dist/esm/language.service-501b09a8.js.map +0 -1
  432. package/dist/esm/post-internet-breadcrumbs-f268030c.js.map +0 -1
  433. package/dist/esm/post-internet-footer-3a501420.js +0 -159
  434. package/dist/esm/post-internet-footer-3a501420.js.map +0 -1
  435. package/dist/esm/post-internet-header-36aaba35.js +0 -826
  436. package/dist/esm/post-internet-header-36aaba35.js.map +0 -1
  437. package/dist/esm/post-klp-login-widget-57a4fdb5.js +0 -61
  438. package/dist/esm/post-language-switch-997ee4f9.js.map +0 -1
  439. package/dist/esm/post-main-navigation-77520c14.js +0 -238
  440. package/dist/esm/post-main-navigation-77520c14.js.map +0 -1
  441. package/dist/esm/post-search-a7f2e856.js.map +0 -1
  442. package/dist/esm/post-skiplinks-b3c32a77.js +0 -50
  443. package/dist/esm/store-80b19c12.js.map +0 -1
  444. package/dist/esm/svg-icon.component-7295f7cc.js +0 -8
  445. package/dist/esm/svg-sprite.component-cfc05f90.js +0 -49
  446. package/dist/esm-es5/index-2b83f5e9.js +0 -2
  447. package/dist/esm-es5/index-2b83f5e9.js.map +0 -1
  448. package/dist/esm-es5/post-internet-breadcrumbs-f268030c.js +0 -7
  449. package/dist/esm-es5/post-internet-header-36aaba35.js +0 -2
  450. package/dist/esm-es5/post-internet-header-36aaba35.js.map +0 -1
  451. package/dist/esm-es5/post-klp-login-widget-57a4fdb5.js +0 -2
  452. package/dist/esm-es5/post-main-navigation-77520c14.js +0 -2
  453. package/dist/esm-es5/post-main-navigation-77520c14.js.map +0 -1
  454. package/dist/esm-es5/store-80b19c12.js.map +0 -1
  455. package/dist/esm-es5/svg-icon.component-7295f7cc.js +0 -2
  456. package/dist/swisspost-internet-header/p-094eab7e.system.entry.js +0 -2
  457. package/dist/swisspost-internet-header/p-0f1f2469.system.js +0 -2
  458. package/dist/swisspost-internet-header/p-0f1f2469.system.js.map +0 -1
  459. package/dist/swisspost-internet-header/p-1a6d00a4.system.entry.js +0 -2
  460. package/dist/swisspost-internet-header/p-1bdc4b7b.js +0 -2
  461. package/dist/swisspost-internet-header/p-1bdc4b7b.js.map +0 -1
  462. package/dist/swisspost-internet-header/p-2340f9f1.entry.js +0 -2
  463. package/dist/swisspost-internet-header/p-236420dc.js +0 -2
  464. package/dist/swisspost-internet-header/p-2470951e.js +0 -2
  465. package/dist/swisspost-internet-header/p-2c612086.entry.js +0 -2
  466. package/dist/swisspost-internet-header/p-2eb179a7.entry.js +0 -2
  467. package/dist/swisspost-internet-header/p-3672587a.entry.js +0 -2
  468. package/dist/swisspost-internet-header/p-3bdf4efd.entry.js +0 -2
  469. package/dist/swisspost-internet-header/p-4248f499.system.entry.js +0 -2
  470. package/dist/swisspost-internet-header/p-5adcdd91.system.js +0 -2
  471. package/dist/swisspost-internet-header/p-5adcdd91.system.js.map +0 -1
  472. package/dist/swisspost-internet-header/p-606bd3f1.entry.js +0 -2
  473. package/dist/swisspost-internet-header/p-619bb76e.system.entry.js +0 -2
  474. package/dist/swisspost-internet-header/p-624d732c.js.map +0 -1
  475. package/dist/swisspost-internet-header/p-65ce36ba.entry.js +0 -2
  476. package/dist/swisspost-internet-header/p-669ed0d2.entry.js +0 -2
  477. package/dist/swisspost-internet-header/p-6e3b3c7a.system.js +0 -2
  478. package/dist/swisspost-internet-header/p-837fe525.system.entry.js +0 -2
  479. package/dist/swisspost-internet-header/p-83de3104.system.entry.js +0 -2
  480. package/dist/swisspost-internet-header/p-8ceafc83.js +0 -2
  481. package/dist/swisspost-internet-header/p-8ceafc83.js.map +0 -1
  482. package/dist/swisspost-internet-header/p-9af33755.system.js.map +0 -1
  483. package/dist/swisspost-internet-header/p-9c385f74.system.js +0 -3
  484. package/dist/swisspost-internet-header/p-9c385f74.system.js.map +0 -1
  485. package/dist/swisspost-internet-header/p-a0f5c014.system.entry.js +0 -2
  486. package/dist/swisspost-internet-header/p-a290e3e2.system.entry.js +0 -2
  487. package/dist/swisspost-internet-header/p-a5eda6dc.entry.js +0 -2
  488. package/dist/swisspost-internet-header/p-bd893111.system.js +0 -7
  489. package/dist/swisspost-internet-header/p-c0705313.system.entry.js +0 -2
  490. package/dist/swisspost-internet-header/p-c6bf4781.system.entry.js +0 -2
  491. package/dist/swisspost-internet-header/p-d294420b.system.js +0 -2
  492. package/dist/swisspost-internet-header/p-e2e1c5d4.js +0 -3
  493. package/dist/swisspost-internet-header/p-e2e1c5d4.js.map +0 -1
  494. package/dist/swisspost-internet-header/p-e81673c2.entry.js +0 -2
  495. package/dist/swisspost-internet-header/p-ea99866e.system.js +0 -2
  496. package/dist/swisspost-internet-header/p-ea99866e.system.js.map +0 -1
  497. package/dist/swisspost-internet-header/p-f6a2a74f.js +0 -7
  498. /package/dist/esm-es5/{if.component-3a779aca.js.map → if.component-d88d9e48.js.map} +0 -0
  499. /package/dist/esm-es5/{language.service-501b09a8.js.map → language.service-1bd090a7.js.map} +0 -0
  500. /package/dist/esm-es5/{post-language-switch-997ee4f9.js.map → post-language-switch-7df96469.js.map} +0 -0
  501. /package/dist/esm-es5/{post-logo-cde3c44d.js.map → post-logo-050acfc4.js.map} +0 -0
  502. /package/dist/esm-es5/{post-meta-navigation-09e9bdc8.js.map → post-meta-navigation-ece1e9de.js.map} +0 -0
  503. /package/dist/esm-es5/{post-search-a7f2e856.js.map → post-search-efd16c09.js.map} +0 -0
  504. /package/dist/esm-es5/{post-skiplinks-b3c32a77.js.map → post-skiplinks-c6b5addd.js.map} +0 -0
  505. /package/dist/esm-es5/{svg-icon.component-7295f7cc.js.map → svg-icon.component-fe96fac6.js.map} +0 -0
  506. /package/dist/esm-es5/{svg-sprite.component-cfc05f90.js.map → svg-sprite.component-4874b2fb.js.map} +0 -0
  507. /package/dist/esm-es5/{ui.service-a71cf490.js.map → ui.service-22f2c593.js.map} +0 -0
  508. /package/dist/esm-es5/{utils-3a8ff48f.js.map → utils-c8805f81.js.map} +0 -0
  509. /package/dist/swisspost-internet-header/{p-96618f42.system.js.map → p-0338115d.system.js.map} +0 -0
  510. /package/dist/swisspost-internet-header/{p-7ab3cbcb.js.map → p-0589b170.js.map} +0 -0
  511. /package/dist/swisspost-internet-header/{p-986a52bc.system.js.map → p-06f51515.system.js.map} +0 -0
  512. /package/dist/swisspost-internet-header/{p-094eab7e.system.entry.js.map → p-07313f1b.system.entry.js.map} +0 -0
  513. /package/dist/swisspost-internet-header/{p-16676174.system.js.map → p-11d02764.system.js.map} +0 -0
  514. /package/dist/swisspost-internet-header/{p-1a6d00a4.system.entry.js.map → p-1244a33a.entry.js.map} +0 -0
  515. /package/dist/swisspost-internet-header/{p-2340f9f1.entry.js.map → p-1c722d02.system.entry.js.map} +0 -0
  516. /package/dist/swisspost-internet-header/{p-2c612086.entry.js.map → p-1cb8fe46.entry.js.map} +0 -0
  517. /package/dist/swisspost-internet-header/{p-f2a43ce2.system.js.map → p-1fd8561a.system.js.map} +0 -0
  518. /package/dist/swisspost-internet-header/{p-7eaa5689.js.map → p-2a8d5787.js.map} +0 -0
  519. /package/dist/swisspost-internet-header/{p-2eb179a7.entry.js.map → p-3759e0aa.entry.js.map} +0 -0
  520. /package/dist/swisspost-internet-header/{p-3672587a.entry.js.map → p-4380032a.entry.js.map} +0 -0
  521. /package/dist/swisspost-internet-header/{p-78e8a405.js.map → p-4bc05e68.js.map} +0 -0
  522. /package/dist/swisspost-internet-header/{p-3bdf4efd.entry.js.map → p-5498ca7c.entry.js.map} +0 -0
  523. /package/dist/swisspost-internet-header/{p-a7de7323.system.js.map → p-5a69c918.system.js.map} +0 -0
  524. /package/dist/swisspost-internet-header/{p-4248f499.system.entry.js.map → p-5ac16bdd.system.entry.js.map} +0 -0
  525. /package/dist/swisspost-internet-header/{p-606bd3f1.entry.js.map → p-6d60866a.system.entry.js.map} +0 -0
  526. /package/dist/swisspost-internet-header/{p-619bb76e.system.entry.js.map → p-7505c3e1.system.entry.js.map} +0 -0
  527. /package/dist/swisspost-internet-header/{p-3a7f9457.js.map → p-7d188581.js.map} +0 -0
  528. /package/dist/swisspost-internet-header/{p-cf06f703.js.map → p-840aa5c6.js.map} +0 -0
  529. /package/dist/swisspost-internet-header/{p-dc8296bd.js.map → p-8a65e8d6.js.map} +0 -0
  530. /package/dist/swisspost-internet-header/{p-40806042.system.js.map → p-8b9d7320.system.js.map} +0 -0
  531. /package/dist/swisspost-internet-header/{p-65ce36ba.entry.js.map → p-8df32cb8.system.js.map} +0 -0
  532. /package/dist/swisspost-internet-header/{p-669ed0d2.entry.js.map → p-943d2956.system.entry.js.map} +0 -0
  533. /package/dist/swisspost-internet-header/{p-6e3b3c7a.system.js.map → p-948d3e8f.entry.js.map} +0 -0
  534. /package/dist/swisspost-internet-header/{p-837fe525.system.entry.js.map → p-a08ee9d3.entry.js.map} +0 -0
  535. /package/dist/swisspost-internet-header/{p-3339310e.js.map → p-a39139a9.js.map} +0 -0
  536. /package/dist/swisspost-internet-header/{p-83de3104.system.entry.js.map → p-a4d04c0b.system.entry.js.map} +0 -0
  537. /package/dist/swisspost-internet-header/{p-a0f5c014.system.entry.js.map → p-b8c6f6a6.system.entry.js.map} +0 -0
  538. /package/dist/swisspost-internet-header/{p-46f2c38c.js.map → p-bc60a641.js.map} +0 -0
  539. /package/dist/swisspost-internet-header/{p-0096509c.js.map → p-bfbb5fc7.js.map} +0 -0
  540. /package/dist/swisspost-internet-header/{p-a290e3e2.system.entry.js.map → p-c466f253.entry.js.map} +0 -0
  541. /package/dist/swisspost-internet-header/{p-70df9137.js.map → p-c7f451bd.js.map} +0 -0
  542. /package/dist/swisspost-internet-header/{p-a5eda6dc.entry.js.map → p-c7fba36e.system.entry.js.map} +0 -0
  543. /package/dist/swisspost-internet-header/{p-2470951e.js.map → p-c8153649.js.map} +0 -0
  544. /package/dist/swisspost-internet-header/{p-ad9a417b.system.js.map → p-c895eccc.system.js.map} +0 -0
  545. /package/dist/swisspost-internet-header/{p-c0705313.system.entry.js.map → p-d6ab4ef3.entry.js.map} +0 -0
  546. /package/dist/swisspost-internet-header/{p-0e776d6e.system.js.map → p-d7e221af.system.js.map} +0 -0
  547. /package/dist/swisspost-internet-header/{p-c6bf4781.system.entry.js.map → p-da7b8486.system.entry.js.map} +0 -0
  548. /package/dist/swisspost-internet-header/{p-bbfd407b.js.map → p-dc2f1d20.js.map} +0 -0
  549. /package/dist/swisspost-internet-header/{p-ee5e0cc6.system.js.map → p-dd800ff2.system.js.map} +0 -0
  550. /package/dist/swisspost-internet-header/{p-34fe9d92.system.js.map → p-e2985a86.system.js.map} +0 -0
  551. /package/dist/swisspost-internet-header/{p-18e9ce89.system.js.map → p-e5acc124.system.js.map} +0 -0
  552. /package/dist/swisspost-internet-header/{p-e81673c2.entry.js.map → p-ff36437b.entry.js.map} +0 -0
@@ -5,39 +5,39 @@
5
5
  * @returns Modified Main Navigation Config
6
6
  */
7
7
  export const markActiveRoute = (config, activeRouteProp) => {
8
- // Don't highlight any route
9
- if (activeRouteProp === false) {
10
- return config;
11
- }
12
- // Set compare URL and check if activeRouteProp is valid
13
- let compareUrl;
14
- config = resetOverrideConfig(config);
15
- if (activeRouteProp === 'auto' || activeRouteProp === 'exact') {
16
- // Check if an active route is already configured, set override to that and return
17
- if (hasActivePortalRoute(config)) {
18
- return resetActiveStateToPortalConfig(config);
8
+ // Don't highlight any route
9
+ if (activeRouteProp === false) {
10
+ return config;
19
11
  }
20
- compareUrl = new URL(window.location.href);
21
- }
22
- else {
23
- try {
24
- compareUrl = new URL(activeRouteProp, document.location.origin);
12
+ // Set compare URL and check if activeRouteProp is valid
13
+ let compareUrl;
14
+ config = resetOverrideConfig(config);
15
+ if (activeRouteProp === 'auto' || activeRouteProp === 'exact') {
16
+ // Check if an active route is already configured, set override to that and return
17
+ if (hasActivePortalRoute(config)) {
18
+ return resetActiveStateToPortalConfig(config);
19
+ }
20
+ compareUrl = new URL(window.location.href);
25
21
  }
26
- catch (error) {
27
- console.warn(`Active Route: ${activeRouteProp} is not a valid URL. Navigation highlighting has been disabled.`);
28
- return config;
22
+ else {
23
+ try {
24
+ compareUrl = new URL(activeRouteProp, document.location.origin);
25
+ }
26
+ catch (error) {
27
+ console.warn(`Active Route: ${activeRouteProp} is not a valid URL. Navigation highlighting has been disabled.`);
28
+ return config;
29
+ }
29
30
  }
30
- }
31
- const scoreList = compileScoreList(config, compareUrl, activeRouteProp);
32
- if (scoreList.length === 0) {
33
- // No match found or already active links defined
31
+ const scoreList = compileScoreList(config, compareUrl, activeRouteProp);
32
+ if (scoreList.length === 0) {
33
+ // No match found or already active links defined
34
+ return config;
35
+ }
36
+ const winnerPair = scoreList[0];
37
+ winnerPair.main.isActiveOverride = true;
38
+ if (winnerPair.sub)
39
+ winnerPair.sub.isActiveOverride = true;
34
40
  return config;
35
- }
36
- const winnerPair = scoreList[0];
37
- winnerPair.main.isActiveOverride = true;
38
- if (winnerPair.sub)
39
- winnerPair.sub.isActiveOverride = true;
40
- return config;
41
41
  };
42
42
  /**
43
43
  * Check if the portal config set any active route
@@ -45,13 +45,13 @@ export const markActiveRoute = (config, activeRouteProp) => {
45
45
  * @returns True if portal set any route as active
46
46
  */
47
47
  export const hasActivePortalRoute = (config) => {
48
- return config.filter(nav => nav.isActive).length > 0;
48
+ return config.filter(nav => nav.isActive).length > 0;
49
49
  };
50
50
  export const resetActiveStateToPortalConfig = (config) => {
51
- return config.map(nav => (Object.assign(Object.assign({}, nav), { isActiveOverride: nav.isActive, flyout: nav.flyout.map(flyout => (Object.assign(Object.assign({}, flyout), { linkList: flyout.linkList.map(link => (Object.assign(Object.assign({}, link), { isActiveOverride: link.isActive }))) }))) })));
51
+ return config.map(nav => (Object.assign(Object.assign({}, nav), { isActiveOverride: nav.isActive, flyout: nav.flyout.map(flyout => (Object.assign(Object.assign({}, flyout), { linkList: flyout.linkList.map(link => (Object.assign(Object.assign({}, link), { isActiveOverride: link.isActive }))) }))) })));
52
52
  };
53
53
  const resetOverrideConfig = (config) => {
54
- return config.map(nav => (Object.assign(Object.assign({}, nav), { isActiveOverride: false, flyout: nav.flyout.map(flyout => (Object.assign(Object.assign({}, flyout), { linkList: flyout.linkList.map(link => (Object.assign(Object.assign({}, link), { isActiveOverride: false }))) }))) })));
54
+ return config.map(nav => (Object.assign(Object.assign({}, nav), { isActiveOverride: false, flyout: nav.flyout.map(flyout => (Object.assign(Object.assign({}, flyout), { linkList: flyout.linkList.map(link => (Object.assign(Object.assign({}, link), { isActiveOverride: false }))) }))) })));
55
55
  };
56
56
  /**
57
57
  * Compile a list of scores based on the map mode, sorted in descending order
@@ -61,53 +61,53 @@ const resetOverrideConfig = (config) => {
61
61
  * @returns A list of scored URLs if any matched
62
62
  */
63
63
  export const compileScoreList = (config, compareUrl, activeRouteProp) => {
64
- // Flag to check if the Portal set any active links or if there are any exact matches
65
- let hadAnyActiveLink = false;
66
- const scoreList = [];
67
- config
68
- .filter(mainNav => !hadAnyActiveLink && mainNav)
69
- .forEach(mainNav => {
70
- try {
71
- const score = compareRoutes(compareUrl, new URL(mainNav.url), activeRouteProp);
72
- hadAnyActiveLink = updateScoreList(scoreList, score, { main: mainNav, score }, hadAnyActiveLink);
73
- }
74
- catch (_a) {
75
- // Not a valid url, continue
76
- }
77
- // Loop through flyout links 2nd level
78
- mainNav.flyout.forEach(flyout => {
79
- var _a;
80
- (_a = flyout.linkList) === null || _a === void 0 ? void 0 : _a.forEach(linklist => {
81
- // Don't override if any link is already active
82
- if (linklist.isActive && (activeRouteProp === 'auto' || activeRouteProp === 'exact')) {
83
- hadAnyActiveLink = true;
84
- return;
85
- }
64
+ // Flag to check if the Portal set any active links or if there are any exact matches
65
+ let hadAnyActiveLink = false;
66
+ const scoreList = [];
67
+ config
68
+ .filter(mainNav => !hadAnyActiveLink && mainNav)
69
+ .forEach(mainNav => {
86
70
  try {
87
- const url = new URL(linklist.url);
88
- const score = compareRoutes(compareUrl, url, activeRouteProp);
89
- hadAnyActiveLink = updateScoreList(scoreList, score, { main: mainNav, sub: linklist, score }, hadAnyActiveLink);
71
+ const score = compareRoutes(compareUrl, new URL(mainNav.url), activeRouteProp);
72
+ hadAnyActiveLink = updateScoreList(scoreList, score, { main: mainNav, score }, hadAnyActiveLink);
90
73
  }
91
74
  catch (_a) {
92
- // Not a valid URL, continue
75
+ // Not a valid url, continue
93
76
  }
94
- });
77
+ // Loop through flyout links 2nd level
78
+ mainNav.flyout.forEach(flyout => {
79
+ var _a;
80
+ (_a = flyout.linkList) === null || _a === void 0 ? void 0 : _a.forEach(linklist => {
81
+ // Don't override if any link is already active
82
+ if (linklist.isActive && (activeRouteProp === 'auto' || activeRouteProp === 'exact')) {
83
+ hadAnyActiveLink = true;
84
+ return;
85
+ }
86
+ try {
87
+ const url = new URL(linklist.url);
88
+ const score = compareRoutes(compareUrl, url, activeRouteProp);
89
+ hadAnyActiveLink = updateScoreList(scoreList, score, { main: mainNav, sub: linklist, score }, hadAnyActiveLink);
90
+ }
91
+ catch (_a) {
92
+ // Not a valid URL, continue
93
+ }
94
+ });
95
+ });
95
96
  });
96
- });
97
- return scoreList.sort((a, b) => b.score - a.score);
97
+ return scoreList.sort((a, b) => b.score - a.score);
98
98
  };
99
99
  /**
100
100
  * Update score list
101
101
  */
102
102
  function updateScoreList(scoreList, score, scoreListItem, hadAnyActiveLink) {
103
- let hadActiveLink = hadAnyActiveLink;
104
- if (score > 0) {
105
- if (score === Infinity)
106
- hadActiveLink = true;
107
- // Push score
108
- scoreList.push(scoreListItem);
109
- }
110
- return hadActiveLink;
103
+ let hadActiveLink = hadAnyActiveLink;
104
+ if (score > 0) {
105
+ if (score === Infinity)
106
+ hadActiveLink = true;
107
+ // Push score
108
+ scoreList.push(scoreListItem);
109
+ }
110
+ return hadActiveLink;
111
111
  }
112
112
  /**
113
113
  * Compare two URLs for similarity based on a match mode
@@ -117,34 +117,34 @@ function updateScoreList(scoreList, score, scoreListItem, hadAnyActiveLink) {
117
117
  * @returns Score
118
118
  */
119
119
  export const compareRoutes = (baseUrl, compareUrl, matchMode) => {
120
- // One url is not defined or they don't share the same orign
121
- if (baseUrl === null || compareUrl === null || baseUrl.origin !== compareUrl.origin) {
122
- return 0;
123
- }
124
- const baseUrlPath = baseUrl.pathname.toLocaleLowerCase();
125
- const compareUrlPath = compareUrl.pathname.toLocaleLowerCase();
126
- // Exact match, origin and pathname are the same
127
- if (baseUrlPath === compareUrlPath) {
128
- return Infinity;
129
- }
130
- // The basepath is longer than the comparison, a match is impossible
131
- if (baseUrl.pathname.length < compareUrl.pathname.length) {
120
+ // One url is not defined or they don't share the same orign
121
+ if (baseUrl === null || compareUrl === null || baseUrl.origin !== compareUrl.origin) {
122
+ return 0;
123
+ }
124
+ const baseUrlPath = baseUrl.pathname.toLocaleLowerCase();
125
+ const compareUrlPath = compareUrl.pathname.toLocaleLowerCase();
126
+ // Exact match, origin and pathname are the same
127
+ if (baseUrlPath === compareUrlPath) {
128
+ return Infinity;
129
+ }
130
+ // The basepath is longer than the comparison, a match is impossible
131
+ if (baseUrl.pathname.length < compareUrl.pathname.length) {
132
+ return 0;
133
+ }
134
+ if (matchMode === 'auto') {
135
+ const baseSegments = [
136
+ baseUrl.origin.toLocaleLowerCase(),
137
+ ...baseUrlPath.split('/').filter(x => x !== null && x !== ''),
138
+ ];
139
+ const compareSegments = [
140
+ compareUrl.origin.toLocaleLowerCase(),
141
+ ...compareUrlPath.split('/').filter(x => x !== null && x !== ''),
142
+ ];
143
+ const score = getSimilarityScore(baseSegments, compareSegments);
144
+ // If only some segments match, but not the whole smaller array, it's not a match
145
+ return Math.min(baseSegments.length, compareSegments.length) === score ? score : 0;
146
+ }
132
147
  return 0;
133
- }
134
- if (matchMode === 'auto') {
135
- const baseSegments = [
136
- baseUrl.origin.toLocaleLowerCase(),
137
- ...baseUrlPath.split('/').filter(x => x !== null && x !== ''),
138
- ];
139
- const compareSegments = [
140
- compareUrl.origin.toLocaleLowerCase(),
141
- ...compareUrlPath.split('/').filter(x => x !== null && x !== ''),
142
- ];
143
- const score = getSimilarityScore(baseSegments, compareSegments);
144
- // If only some segments match, but not the whole smaller array, it's not a match
145
- return Math.min(baseSegments.length, compareSegments.length) === score ? score : 0;
146
- }
147
- return 0;
148
148
  };
149
149
  /**
150
150
  * Check how many items in an array match
@@ -153,15 +153,15 @@ export const compareRoutes = (baseUrl, compareUrl, matchMode) => {
153
153
  * @returns Score
154
154
  */
155
155
  export const getSimilarityScore = (a, b) => {
156
- if (a == null || b == null || a.length === 0 || b.length === 0) {
157
- return 0;
158
- }
159
- let i = 0;
160
- for (; i < Math.min(a.length, b.length); i++) {
161
- if (a[i] !== b[i]) {
162
- return 0;
156
+ if (a == null || b == null || a.length === 0 || b.length === 0) {
157
+ return 0;
158
+ }
159
+ let i = 0;
160
+ for (; i < Math.min(a.length, b.length); i++) {
161
+ if (a[i] !== b[i]) {
162
+ return 0;
163
+ }
163
164
  }
164
- }
165
- return i;
165
+ return i;
166
166
  };
167
167
  //# sourceMappingURL=route.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"route.service.js","sourceRoot":"","sources":["../../../src/services/route.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { ActiveRouteProp } from '../models/general.model';\nimport { NavMainEntity, MainNavScoreList } from '../models/header.model';\n\n/**\n * Activate the current route based on the config and the match mode\n * @param config Main Navigation Config\n * @param activeRouteProp Match mode\n * @returns Modified Main Navigation Config\n */\nexport const markActiveRoute = (\n config: NavMainEntity[],\n activeRouteProp: ActiveRouteProp,\n): NavMainEntity[] => {\n // Don't highlight any route\n if (activeRouteProp === false) {\n return config;\n }\n\n // Set compare URL and check if activeRouteProp is valid\n let compareUrl: URL;\n config = resetOverrideConfig(config);\n\n if (activeRouteProp === 'auto' || activeRouteProp === 'exact') {\n // Check if an active route is already configured, set override to that and return\n if (hasActivePortalRoute(config)) {\n return resetActiveStateToPortalConfig(config);\n }\n\n compareUrl = new URL(window.location.href);\n } else {\n try {\n compareUrl = new URL(activeRouteProp, document.location.origin);\n } catch (error) {\n console.warn(\n `Active Route: ${activeRouteProp} is not a valid URL. Navigation highlighting has been disabled.`,\n );\n return config;\n }\n }\n\n const scoreList = compileScoreList(config, compareUrl, activeRouteProp);\n\n if (scoreList.length === 0) {\n // No match found or already active links defined\n return config;\n }\n\n const winnerPair = scoreList[0];\n winnerPair.main.isActiveOverride = true;\n if (winnerPair.sub) winnerPair.sub.isActiveOverride = true;\n\n return config;\n};\n\n/**\n * Check if the portal config set any active route\n * @param config Main navigation config\n * @returns True if portal set any route as active\n */\nexport const hasActivePortalRoute = (config: NavMainEntity[]): boolean => {\n return config.filter(nav => nav.isActive).length > 0;\n};\n\nexport const resetActiveStateToPortalConfig = (config: NavMainEntity[]): NavMainEntity[] => {\n return config.map(nav => ({\n ...nav,\n isActiveOverride: nav.isActive,\n flyout: nav.flyout.map(flyout => ({\n ...flyout,\n linkList: flyout.linkList.map(link => ({ ...link, isActiveOverride: link.isActive })),\n })),\n }));\n};\n\nconst resetOverrideConfig = (config: NavMainEntity[]): NavMainEntity[] => {\n return config.map(nav => ({\n ...nav,\n isActiveOverride: false,\n flyout: nav.flyout.map(flyout => ({\n ...flyout,\n linkList: flyout.linkList.map(link => ({ ...link, isActiveOverride: false })),\n })),\n }));\n};\n\n/**\n * Compile a list of scores based on the map mode, sorted in descending order\n * @param config Main Nav Config\n * @param compareUrl Current Browser URL or a custom URL\n * @param activeRouteProp Match mode\n * @returns A list of scored URLs if any matched\n */\nexport const compileScoreList = (\n config: NavMainEntity[],\n compareUrl: URL,\n activeRouteProp: ActiveRouteProp,\n): MainNavScoreList => {\n // Flag to check if the Portal set any active links or if there are any exact matches\n let hadAnyActiveLink = false;\n const scoreList: MainNavScoreList = [];\n\n config\n .filter(mainNav => !hadAnyActiveLink && mainNav)\n .forEach(mainNav => {\n try {\n const score = compareRoutes(\n compareUrl,\n new URL(mainNav.url),\n activeRouteProp as 'auto' | 'exact',\n );\n\n hadAnyActiveLink = updateScoreList(\n scoreList,\n score,\n { main: mainNav, score },\n hadAnyActiveLink,\n );\n } catch {\n // Not a valid url, continue\n }\n\n // Loop through flyout links 2nd level\n mainNav.flyout.forEach(flyout => {\n flyout.linkList?.forEach(linklist => {\n // Don't override if any link is already active\n if (linklist.isActive && (activeRouteProp === 'auto' || activeRouteProp === 'exact')) {\n hadAnyActiveLink = true;\n return;\n }\n\n try {\n const url = new URL(linklist.url);\n const score = compareRoutes(compareUrl, url, activeRouteProp as 'auto' | 'exact');\n\n hadAnyActiveLink = updateScoreList(\n scoreList,\n score,\n { main: mainNav, sub: linklist, score },\n hadAnyActiveLink,\n );\n } catch {\n // Not a valid URL, continue\n }\n });\n });\n });\n\n return scoreList.sort((a, b) => b.score - a.score);\n};\n\n/**\n * Update score list\n */\nfunction updateScoreList(\n scoreList: MainNavScoreList,\n score: number,\n scoreListItem: any,\n hadAnyActiveLink: boolean,\n) {\n let hadActiveLink = hadAnyActiveLink;\n\n if (score > 0) {\n if (score === Infinity) hadActiveLink = true;\n // Push score\n scoreList.push(scoreListItem);\n }\n\n return hadActiveLink;\n}\n\n/**\n * Compare two URLs for similarity based on a match mode\n * @param baseUrl Browser URL\n * @param compareUrl Navigatgion URL\n * @param matchMode exact or auto matching\n * @returns Score\n */\nexport const compareRoutes = (\n baseUrl: URL,\n compareUrl: URL,\n matchMode?: 'auto' | 'exact',\n): number => {\n // One url is not defined or they don't share the same orign\n if (baseUrl === null || compareUrl === null || baseUrl.origin !== compareUrl.origin) {\n return 0;\n }\n\n const baseUrlPath = baseUrl.pathname.toLocaleLowerCase();\n const compareUrlPath = compareUrl.pathname.toLocaleLowerCase();\n\n // Exact match, origin and pathname are the same\n if (baseUrlPath === compareUrlPath) {\n return Infinity;\n }\n\n // The basepath is longer than the comparison, a match is impossible\n if (baseUrl.pathname.length < compareUrl.pathname.length) {\n return 0;\n }\n\n if (matchMode === 'auto') {\n const baseSegments = [\n baseUrl.origin.toLocaleLowerCase(),\n ...baseUrlPath.split('/').filter(x => x !== null && x !== ''),\n ];\n const compareSegments = [\n compareUrl.origin.toLocaleLowerCase(),\n ...compareUrlPath.split('/').filter(x => x !== null && x !== ''),\n ];\n\n const score = getSimilarityScore(baseSegments, compareSegments);\n\n // If only some segments match, but not the whole smaller array, it's not a match\n return Math.min(baseSegments.length, compareSegments.length) === score ? score : 0;\n }\n\n return 0;\n};\n\n/**\n * Check how many items in an array match\n * @param a Base array\n * @param b Compare array\n * @returns Score\n */\nexport const getSimilarityScore = (a: string[], b: string[]): number => {\n if (a == null || b == null || a.length === 0 || b.length === 0) {\n return 0;\n }\n\n let i = 0;\n for (; i < Math.min(a.length, b.length); i++) {\n if (a[i] !== b[i]) {\n return 0;\n }\n }\n\n return i;\n};\n"]}
1
+ {"version":3,"file":"route.service.js","sourceRoot":"","sources":["../../../src/services/route.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { ActiveRouteProp } from '../models/general.model';\nimport { NavMainEntity, MainNavScoreList } from '../models/header.model';\n\n/**\n * Activate the current route based on the config and the match mode\n * @param config Main Navigation Config\n * @param activeRouteProp Match mode\n * @returns Modified Main Navigation Config\n */\nexport const markActiveRoute = (\n config: NavMainEntity[],\n activeRouteProp: ActiveRouteProp,\n): NavMainEntity[] => {\n // Don't highlight any route\n if (activeRouteProp === false) {\n return config;\n }\n\n // Set compare URL and check if activeRouteProp is valid\n let compareUrl: URL;\n config = resetOverrideConfig(config);\n\n if (activeRouteProp === 'auto' || activeRouteProp === 'exact') {\n // Check if an active route is already configured, set override to that and return\n if (hasActivePortalRoute(config)) {\n return resetActiveStateToPortalConfig(config);\n }\n\n compareUrl = new URL(window.location.href);\n } else {\n try {\n compareUrl = new URL(activeRouteProp, document.location.origin);\n } catch (error) {\n console.warn(\n `Active Route: ${activeRouteProp} is not a valid URL. Navigation highlighting has been disabled.`,\n );\n return config;\n }\n }\n\n const scoreList = compileScoreList(config, compareUrl, activeRouteProp);\n\n if (scoreList.length === 0) {\n // No match found or already active links defined\n return config;\n }\n\n const winnerPair = scoreList[0];\n winnerPair.main.isActiveOverride = true;\n if (winnerPair.sub) winnerPair.sub.isActiveOverride = true;\n\n return config;\n};\n\n/**\n * Check if the portal config set any active route\n * @param config Main navigation config\n * @returns True if portal set any route as active\n */\nexport const hasActivePortalRoute = (config: NavMainEntity[]): boolean => {\n return config.filter(nav => nav.isActive).length > 0;\n};\n\nexport const resetActiveStateToPortalConfig = (config: NavMainEntity[]): NavMainEntity[] => {\n return config.map(nav => ({\n ...nav,\n isActiveOverride: nav.isActive,\n flyout: nav.flyout.map(flyout => ({\n ...flyout,\n linkList: flyout.linkList.map(link => ({ ...link, isActiveOverride: link.isActive })),\n })),\n }));\n};\n\nconst resetOverrideConfig = (config: NavMainEntity[]): NavMainEntity[] => {\n return config.map(nav => ({\n ...nav,\n isActiveOverride: false,\n flyout: nav.flyout.map(flyout => ({\n ...flyout,\n linkList: flyout.linkList.map(link => ({ ...link, isActiveOverride: false })),\n })),\n }));\n};\n\n/**\n * Compile a list of scores based on the map mode, sorted in descending order\n * @param config Main Nav Config\n * @param compareUrl Current Browser URL or a custom URL\n * @param activeRouteProp Match mode\n * @returns A list of scored URLs if any matched\n */\nexport const compileScoreList = (\n config: NavMainEntity[],\n compareUrl: URL,\n activeRouteProp: ActiveRouteProp,\n): MainNavScoreList => {\n // Flag to check if the Portal set any active links or if there are any exact matches\n let hadAnyActiveLink = false;\n const scoreList: MainNavScoreList = [];\n\n config\n .filter(mainNav => !hadAnyActiveLink && mainNav)\n .forEach(mainNav => {\n try {\n const score = compareRoutes(\n compareUrl,\n new URL(mainNav.url),\n activeRouteProp as 'auto' | 'exact',\n );\n\n hadAnyActiveLink = updateScoreList(\n scoreList,\n score,\n { main: mainNav, score },\n hadAnyActiveLink,\n );\n } catch {\n // Not a valid url, continue\n }\n\n // Loop through flyout links 2nd level\n mainNav.flyout.forEach(flyout => {\n flyout.linkList?.forEach(linklist => {\n // Don't override if any link is already active\n if (linklist.isActive && (activeRouteProp === 'auto' || activeRouteProp === 'exact')) {\n hadAnyActiveLink = true;\n return;\n }\n\n try {\n const url = new URL(linklist.url);\n const score = compareRoutes(compareUrl, url, activeRouteProp as 'auto' | 'exact');\n\n hadAnyActiveLink = updateScoreList(\n scoreList,\n score,\n { main: mainNav, sub: linklist, score },\n hadAnyActiveLink,\n );\n } catch {\n // Not a valid URL, continue\n }\n });\n });\n });\n\n return scoreList.sort((a, b) => b.score - a.score);\n};\n\n/**\n * Update score list\n */\nfunction updateScoreList(\n scoreList: MainNavScoreList,\n score: number,\n scoreListItem: any,\n hadAnyActiveLink: boolean,\n) {\n let hadActiveLink = hadAnyActiveLink;\n\n if (score > 0) {\n if (score === Infinity) hadActiveLink = true;\n // Push score\n scoreList.push(scoreListItem);\n }\n\n return hadActiveLink;\n}\n\n/**\n * Compare two URLs for similarity based on a match mode\n * @param baseUrl Browser URL\n * @param compareUrl Navigatgion URL\n * @param matchMode exact or auto matching\n * @returns Score\n */\nexport const compareRoutes = (\n baseUrl: URL,\n compareUrl: URL,\n matchMode?: 'auto' | 'exact',\n): number => {\n // One url is not defined or they don't share the same orign\n if (baseUrl === null || compareUrl === null || baseUrl.origin !== compareUrl.origin) {\n return 0;\n }\n\n const baseUrlPath = baseUrl.pathname.toLocaleLowerCase();\n const compareUrlPath = compareUrl.pathname.toLocaleLowerCase();\n\n // Exact match, origin and pathname are the same\n if (baseUrlPath === compareUrlPath) {\n return Infinity;\n }\n\n // The basepath is longer than the comparison, a match is impossible\n if (baseUrl.pathname.length < compareUrl.pathname.length) {\n return 0;\n }\n\n if (matchMode === 'auto') {\n const baseSegments = [\n baseUrl.origin.toLocaleLowerCase(),\n ...baseUrlPath.split('/').filter(x => x !== null && x !== ''),\n ];\n const compareSegments = [\n compareUrl.origin.toLocaleLowerCase(),\n ...compareUrlPath.split('/').filter(x => x !== null && x !== ''),\n ];\n\n const score = getSimilarityScore(baseSegments, compareSegments);\n\n // If only some segments match, but not the whole smaller array, it's not a match\n return Math.min(baseSegments.length, compareSegments.length) === score ? score : 0;\n }\n\n return 0;\n};\n\n/**\n * Check how many items in an array match\n * @param a Base array\n * @param b Compare array\n * @returns Score\n */\nexport const getSimilarityScore = (a: string[], b: string[]): number => {\n if (a == null || b == null || a.length === 0 || b.length === 0) {\n return 0;\n }\n\n let i = 0;\n for (; i < Math.min(a.length, b.length); i++) {\n if (a[i] !== b[i]) {\n return 0;\n }\n }\n\n return i;\n};\n"]}
@@ -10,34 +10,34 @@ let suggestionsController;
10
10
  * @returns
11
11
  */
12
12
  export const getCoveoSuggestions = async (query) => {
13
- var _a, _b, _c, _d;
14
- if (((_b = (_a = state.localizedConfig) === null || _a === void 0 ? void 0 : _a.header) === null || _b === void 0 ? void 0 : _b.search) === undefined ||
15
- ((_d = (_c = state.localizedConfig) === null || _c === void 0 ? void 0 : _c.header) === null || _d === void 0 ? void 0 : _d.search.isCustomSuggestionHidden) === true)
16
- return [];
17
- const config = state.localizedConfig.header.search;
18
- const { token, organisation } = coveo.environment[state.environment];
19
- const url = `${coveo.url}?q=${query}&locale=${state.currentLanguage}&searchHub=${config.searchHubName}&pipeline=${config.searchPipelineName}&organizationId=${organisation}`;
20
- if (suggestionsController)
21
- suggestionsController.abort();
22
- suggestionsController = new AbortController();
23
- return new Promise((resolve, reject) => {
24
- fetch(url, {
25
- signal: suggestionsController.signal,
26
- method: 'GET',
27
- headers: {
28
- Authorization: `Bearer ${token}`,
29
- },
30
- })
31
- .then(response => response.json())
32
- .then((coveoJSON) => {
33
- resolve(coveoJSON.completions.map(completion => (Object.assign(Object.assign({}, completion), { redirectUrl: getSearchPageUrl(completion.expression) }))));
34
- })
35
- .catch(error => {
36
- if (error.name !== 'AbortError') {
37
- console.error(`Fetching coveo suggestions failed, ${error}\nDid you add "*.coveo.com" to your connect-src content security policy and tried turning off your adblocker?`);
38
- reject(error);
39
- }
13
+ var _a, _b, _c, _d;
14
+ if (((_b = (_a = state.localizedConfig) === null || _a === void 0 ? void 0 : _a.header) === null || _b === void 0 ? void 0 : _b.search) === undefined ||
15
+ ((_d = (_c = state.localizedConfig) === null || _c === void 0 ? void 0 : _c.header) === null || _d === void 0 ? void 0 : _d.search.isCustomSuggestionHidden) === true)
16
+ return [];
17
+ const config = state.localizedConfig.header.search;
18
+ const { token, organisation } = coveo.environment[state.environment];
19
+ const url = `${coveo.url}?q=${query}&locale=${state.currentLanguage}&searchHub=${config.searchHubName}&pipeline=${config.searchPipelineName}&organizationId=${organisation}`;
20
+ if (suggestionsController)
21
+ suggestionsController.abort();
22
+ suggestionsController = new AbortController();
23
+ return new Promise((resolve, reject) => {
24
+ fetch(url, {
25
+ signal: suggestionsController.signal,
26
+ method: 'GET',
27
+ headers: {
28
+ Authorization: `Bearer ${token}`,
29
+ },
30
+ })
31
+ .then(response => response.json())
32
+ .then((coveoJSON) => {
33
+ resolve(coveoJSON.completions.map(completion => (Object.assign(Object.assign({}, completion), { redirectUrl: getSearchPageUrl(completion.expression) }))));
34
+ })
35
+ .catch(error => {
36
+ if (error.name !== 'AbortError') {
37
+ console.error(`Fetching coveo suggestions failed, ${error}\nDid you add "*.coveo.com" to your connect-src content security policy and tried turning off your adblocker?`);
38
+ reject(error);
39
+ }
40
+ });
40
41
  });
41
- });
42
42
  };
43
43
  //# sourceMappingURL=coveo.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coveo.service.js","sourceRoot":"","sources":["../../../../src/services/search/coveo.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,IAAI,qBAAsC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAa,EAA8B,EAAE;;EACrF,IACE,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,MAAM,MAAK,SAAS;IACnD,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,MAAM,CAAC,wBAAwB,MAAK,IAAI;IAEvE,OAAO,EAAE,CAAC;EACZ,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;EACnD,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;EACrE,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,MAAM,KAAK,WAAW,KAAK,CAAC,eAAe,cAAc,MAAM,CAAC,aAAa,aAAa,MAAM,CAAC,kBAAkB,mBAAmB,YAAY,EAAE,CAAC;EAE7K,IAAI,qBAAqB;IAAE,qBAAqB,CAAC,KAAK,EAAE,CAAC;EACzD,qBAAqB,GAAG,IAAI,eAAe,EAAE,CAAC;EAE9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IACrC,KAAK,CAAC,GAAG,EAAE;MACT,MAAM,EAAE,qBAAqB,CAAC,MAAM;MACpC,MAAM,EAAE,KAAK;MACb,OAAO,EAAE;QACP,aAAa,EAAE,UAAU,KAAK,EAAE;OACjC;KACF,CAAC;OACC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;OACjC,IAAI,CAAC,CAAC,SAAwB,EAAE,EAAE;MACjC,OAAO,CACL,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,iCACnC,UAAU,KACb,WAAW,EAAE,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,IACpD,CAAC,CACJ,CAAC;IACJ,CAAC,CAAC;OACD,KAAK,CAAC,KAAK,CAAC,EAAE;MACb,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;QAC/B,OAAO,CAAC,KAAK,CACX,sCAAsC,KAAK,+GAA+G,CAC3J,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,CAAC;OACf;IACH,CAAC,CAAC,CAAC;EACP,CAAC,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["import { state } from '../../data/store';\nimport { CoveoCompletion, CoveoResponse } from '../../models/coveo.model';\nimport { coveo } from './coveo.settings';\nimport { getSearchPageUrl } from './search.service';\n\nlet suggestionsController: AbortController;\n\n/**\n * Get suggestions from coveo\n * https://docs.coveo.com/en/1459/build-a-search-ui/get-query-suggestions#context-object\n *\n * @param query Search term\n * @returns\n */\nexport const getCoveoSuggestions = async (query: string): Promise<CoveoCompletion[]> => {\n if (\n state.localizedConfig?.header?.search === undefined ||\n state.localizedConfig?.header?.search.isCustomSuggestionHidden === true\n )\n return [];\n const config = state.localizedConfig.header.search;\n const { token, organisation } = coveo.environment[state.environment];\n const url = `${coveo.url}?q=${query}&locale=${state.currentLanguage}&searchHub=${config.searchHubName}&pipeline=${config.searchPipelineName}&organizationId=${organisation}`;\n\n if (suggestionsController) suggestionsController.abort();\n suggestionsController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, {\n signal: suggestionsController.signal,\n method: 'GET',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n .then(response => response.json())\n .then((coveoJSON: CoveoResponse) => {\n resolve(\n coveoJSON.completions.map(completion => ({\n ...completion,\n redirectUrl: getSearchPageUrl(completion.expression),\n })),\n );\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(\n `Fetching coveo suggestions failed, ${error}\\nDid you add \"*.coveo.com\" to your connect-src content security policy and tried turning off your adblocker?`,\n );\n reject(error);\n }\n });\n });\n};\n"]}
1
+ {"version":3,"file":"coveo.service.js","sourceRoot":"","sources":["../../../../src/services/search/coveo.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,IAAI,qBAAsC,CAAC;AAE3C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,KAAa,EAA8B,EAAE;;IACrF,IACE,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,MAAM,MAAK,SAAS;QACnD,CAAA,MAAA,MAAA,KAAK,CAAC,eAAe,0CAAE,MAAM,0CAAE,MAAM,CAAC,wBAAwB,MAAK,IAAI;QAEvE,OAAO,EAAE,CAAC;IACZ,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;IACnD,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,MAAM,KAAK,WAAW,KAAK,CAAC,eAAe,cAAc,MAAM,CAAC,aAAa,aAAa,MAAM,CAAC,kBAAkB,mBAAmB,YAAY,EAAE,CAAC;IAE7K,IAAI,qBAAqB;QAAE,qBAAqB,CAAC,KAAK,EAAE,CAAC;IACzD,qBAAqB,GAAG,IAAI,eAAe,EAAE,CAAC;IAE9C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,KAAK,CAAC,GAAG,EAAE;YACT,MAAM,EAAE,qBAAqB,CAAC,MAAM;YACpC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;aACjC;SACF,CAAC;aACC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;aACjC,IAAI,CAAC,CAAC,SAAwB,EAAE,EAAE;YACjC,OAAO,CACL,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,iCACnC,UAAU,KACb,WAAW,EAAE,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,IACpD,CAAC,CACJ,CAAC;QACJ,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,CAAC,EAAE;YACb,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAChC,OAAO,CAAC,KAAK,CACX,sCAAsC,KAAK,+GAA+G,CAC3J,CAAC;gBACF,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["import { state } from '../../data/store';\nimport { CoveoCompletion, CoveoResponse } from '../../models/coveo.model';\nimport { coveo } from './coveo.settings';\nimport { getSearchPageUrl } from './search.service';\n\nlet suggestionsController: AbortController;\n\n/**\n * Get suggestions from coveo\n * https://docs.coveo.com/en/1459/build-a-search-ui/get-query-suggestions#context-object\n *\n * @param query Search term\n * @returns\n */\nexport const getCoveoSuggestions = async (query: string): Promise<CoveoCompletion[]> => {\n if (\n state.localizedConfig?.header?.search === undefined ||\n state.localizedConfig?.header?.search.isCustomSuggestionHidden === true\n )\n return [];\n const config = state.localizedConfig.header.search;\n const { token, organisation } = coveo.environment[state.environment];\n const url = `${coveo.url}?q=${query}&locale=${state.currentLanguage}&searchHub=${config.searchHubName}&pipeline=${config.searchPipelineName}&organizationId=${organisation}`;\n\n if (suggestionsController) suggestionsController.abort();\n suggestionsController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, {\n signal: suggestionsController.signal,\n method: 'GET',\n headers: {\n Authorization: `Bearer ${token}`,\n },\n })\n .then(response => response.json())\n .then((coveoJSON: CoveoResponse) => {\n resolve(\n coveoJSON.completions.map(completion => ({\n ...completion,\n redirectUrl: getSearchPageUrl(completion.expression),\n })),\n );\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(\n `Fetching coveo suggestions failed, ${error}\\nDid you add \"*.coveo.com\" to your connect-src content security policy and tried turning off your adblocker?`,\n );\n reject(error);\n }\n });\n });\n};\n"]}
@@ -1,35 +1,35 @@
1
1
  // Coveo constants
2
2
  export const coveo = {
3
- url: 'https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest',
4
- environment: {
5
- prod: {
6
- organisation: 'postchagprod6ef4sbet',
7
- token: 'xx5b629890-23b9-4fbe-b601-0e8719186969',
3
+ url: 'https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest',
4
+ environment: {
5
+ prod: {
6
+ organisation: 'postchagprod6ef4sbet',
7
+ token: 'xx5b629890-23b9-4fbe-b601-0e8719186969',
8
+ },
9
+ int01: {
10
+ organisation: 'postchagnonprods5sq57qt',
11
+ token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
12
+ },
13
+ int02: {
14
+ organisation: 'postchagnonprods5sq57qt',
15
+ token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
16
+ },
17
+ dev01: {
18
+ organisation: 'postchagnonprods5sq57qt',
19
+ token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
20
+ },
21
+ dev02: {
22
+ organisation: 'postchagnonprods5sq57qt',
23
+ token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
24
+ },
25
+ devs1: {
26
+ organisation: 'postchagnonprods5sq57qt',
27
+ token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
28
+ },
29
+ test: {
30
+ organisation: 'postchagnonprods5sq57qt',
31
+ token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
32
+ },
8
33
  },
9
- int01: {
10
- organisation: 'postchagnonprods5sq57qt',
11
- token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
12
- },
13
- int02: {
14
- organisation: 'postchagnonprods5sq57qt',
15
- token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
16
- },
17
- dev01: {
18
- organisation: 'postchagnonprods5sq57qt',
19
- token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
20
- },
21
- dev02: {
22
- organisation: 'postchagnonprods5sq57qt',
23
- token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
24
- },
25
- devs1: {
26
- organisation: 'postchagnonprods5sq57qt',
27
- token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
28
- },
29
- test: {
30
- organisation: 'postchagnonprods5sq57qt',
31
- token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',
32
- },
33
- },
34
34
  };
35
35
  //# sourceMappingURL=coveo.settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coveo.settings.js","sourceRoot":"","sources":["../../../../src/services/search/coveo.settings.ts"],"names":[],"mappings":"AAEA,kBAAkB;AAClB,MAAM,CAAC,MAAM,KAAK,GAAiB;EACjC,GAAG,EAAE,iEAAiE;EACtE,WAAW,EAAE;IACX,IAAI,EAAE;MACJ,YAAY,EAAE,sBAAsB;MACpC,KAAK,EAAE,wCAAwC;KAChD;IACD,KAAK,EAAE;MACL,YAAY,EAAE,yBAAyB;MACvC,KAAK,EAAE,wCAAwC;KAChD;IACD,KAAK,EAAE;MACL,YAAY,EAAE,yBAAyB;MACvC,KAAK,EAAE,wCAAwC;KAChD;IACD,KAAK,EAAE;MACL,YAAY,EAAE,yBAAyB;MACvC,KAAK,EAAE,wCAAwC;KAChD;IACD,KAAK,EAAE;MACL,YAAY,EAAE,yBAAyB;MACvC,KAAK,EAAE,wCAAwC;KAChD;IACD,KAAK,EAAE;MACL,YAAY,EAAE,yBAAyB;MACvC,KAAK,EAAE,wCAAwC;KAChD;IACD,IAAI,EAAE;MACJ,YAAY,EAAE,yBAAyB;MACvC,KAAK,EAAE,wCAAwC;KAChD;GACF;CACF,CAAC","sourcesContent":["import { CoveoOptions } from '../../models/coveo.model';\n\n// Coveo constants\nexport const coveo: CoveoOptions = {\n url: 'https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest',\n environment: {\n prod: {\n organisation: 'postchagprod6ef4sbet',\n token: 'xx5b629890-23b9-4fbe-b601-0e8719186969',\n },\n int01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n int02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n devs1: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n test: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n },\n};\n"]}
1
+ {"version":3,"file":"coveo.settings.js","sourceRoot":"","sources":["../../../../src/services/search/coveo.settings.ts"],"names":[],"mappings":"AAEA,kBAAkB;AAClB,MAAM,CAAC,MAAM,KAAK,GAAiB;IACjC,GAAG,EAAE,iEAAiE;IACtE,WAAW,EAAE;QACX,IAAI,EAAE;YACJ,YAAY,EAAE,sBAAsB;YACpC,KAAK,EAAE,wCAAwC;SAChD;QACD,KAAK,EAAE;YACL,YAAY,EAAE,yBAAyB;YACvC,KAAK,EAAE,wCAAwC;SAChD;QACD,KAAK,EAAE;YACL,YAAY,EAAE,yBAAyB;YACvC,KAAK,EAAE,wCAAwC;SAChD;QACD,KAAK,EAAE;YACL,YAAY,EAAE,yBAAyB;YACvC,KAAK,EAAE,wCAAwC;SAChD;QACD,KAAK,EAAE;YACL,YAAY,EAAE,yBAAyB;YACvC,KAAK,EAAE,wCAAwC;SAChD;QACD,KAAK,EAAE;YACL,YAAY,EAAE,yBAAyB;YACvC,KAAK,EAAE,wCAAwC;SAChD;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,yBAAyB;YACvC,KAAK,EAAE,wCAAwC;SAChD;KACF;CACF,CAAC","sourcesContent":["import { CoveoOptions } from '../../models/coveo.model';\n\n// Coveo constants\nexport const coveo: CoveoOptions = {\n url: 'https://platform-eu.cloud.coveo.com/rest/search/v2/querySuggest',\n environment: {\n prod: {\n organisation: 'postchagprod6ef4sbet',\n token: 'xx5b629890-23b9-4fbe-b601-0e8719186969',\n },\n int01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n int02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev01: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n dev02: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n devs1: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n test: {\n organisation: 'postchagnonprods5sq57qt',\n token: 'xx7c0e52ab-3de2-4fbd-b9a7-6ca6abd532b4',\n },\n },\n};\n"]}
@@ -3,12 +3,12 @@ let parcelController;
3
3
  // https://www.post.ch/api/trackandtrace?id=99.00.306600.01004883
4
4
  // Track and trace URL
5
5
  export const getTrackAndTraceApiUrl = (id) => {
6
- const lang = state.currentLanguage;
7
- return `https://www.post.ch/${lang}/api/trackandtrace?id=${encodeURIComponent(id)}`;
6
+ const lang = state.currentLanguage;
7
+ return `https://www.post.ch/${lang}/api/trackandtrace?id=${encodeURIComponent(id)}`;
8
8
  };
9
9
  // Get the redire
10
10
  export const getTrackAndTraceRedirectUrl = (query, { packageTrackingRedirectUrl }) => {
11
- return packageTrackingRedirectUrl.replace('{trackingNumber}', encodeURIComponent(query));
11
+ return packageTrackingRedirectUrl.replace('{trackingNumber}', encodeURIComponent(query));
12
12
  };
13
13
  /**
14
14
  * Check whether a query is a tracking id
@@ -17,8 +17,8 @@ export const getTrackAndTraceRedirectUrl = (query, { packageTrackingRedirectUrl
17
17
  * @returns Boolean
18
18
  */
19
19
  export const isParcel = async (query, searchConfig) => {
20
- const parcelInfo = await getParcelInfo(query, searchConfig);
21
- return 'sending' in parcelInfo;
20
+ const parcelInfo = await getParcelInfo(query, searchConfig);
21
+ return 'sending' in parcelInfo;
22
22
  };
23
23
  /**
24
24
  * Try to get parcel info from a query that is possibly a tracking id.
@@ -28,27 +28,27 @@ export const isParcel = async (query, searchConfig) => {
28
28
  * @returns Track and trace info
29
29
  */
30
30
  export const getParcelInfo = async (query, { redirectPattern }) => {
31
- const trackingNrPattern = new RegExp(redirectPattern);
32
- if (trackingNrPattern.test(query)) {
33
- const url = getTrackAndTraceApiUrl(query);
34
- if (parcelController)
35
- parcelController.abort();
36
- parcelController = new AbortController();
37
- return new Promise((resolve, reject) => {
38
- fetch(url, { signal: parcelController.signal })
39
- .then(response => response.json())
40
- .then((trackAndTraceResult) => {
41
- resolve(Object.assign(Object.assign({}, trackAndTraceResult), { ok: trackAndTraceResult.ok }));
42
- })
43
- .catch(error => {
44
- if (error.name !== 'AbortError') {
45
- console.error(`Could not check track and trace API due to error: ${error.message}`);
46
- reject(error);
47
- }
48
- });
49
- });
50
- }
51
- return { ok: false, timestamp: new Date().toDateString() };
31
+ const trackingNrPattern = new RegExp(redirectPattern);
32
+ if (trackingNrPattern.test(query)) {
33
+ const url = getTrackAndTraceApiUrl(query);
34
+ if (parcelController)
35
+ parcelController.abort();
36
+ parcelController = new AbortController();
37
+ return new Promise((resolve, reject) => {
38
+ fetch(url, { signal: parcelController.signal })
39
+ .then(response => response.json())
40
+ .then((trackAndTraceResult) => {
41
+ resolve(Object.assign(Object.assign({}, trackAndTraceResult), { ok: trackAndTraceResult.ok }));
42
+ })
43
+ .catch(error => {
44
+ if (error.name !== 'AbortError') {
45
+ console.error(`Could not check track and trace API due to error: ${error.message}`);
46
+ reject(error);
47
+ }
48
+ });
49
+ });
50
+ }
51
+ return { ok: false, timestamp: new Date().toDateString() };
52
52
  };
53
53
  /**
54
54
  * Get parcel info if query is a parcel or null
@@ -57,8 +57,8 @@ export const getParcelInfo = async (query, { redirectPattern }) => {
57
57
  * @returns Parcel info and a redirect url or null if not a parcel
58
58
  */
59
59
  export const getParcelSuggestion = async (query, searchConfig) => {
60
- const parcelInfo = await getParcelInfo(query, searchConfig);
61
- return parcelInfo.ok
62
- ? Object.assign(Object.assign({}, parcelInfo), { url: getTrackAndTraceRedirectUrl(query, searchConfig) }) : null;
60
+ const parcelInfo = await getParcelInfo(query, searchConfig);
61
+ return parcelInfo.ok
62
+ ? Object.assign(Object.assign({}, parcelInfo), { url: getTrackAndTraceRedirectUrl(query, searchConfig) }) : null;
63
63
  };
64
64
  //# sourceMappingURL=parcel.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parcel.service.js","sourceRoot":"","sources":["../../../../src/services/search/parcel.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAIzC,IAAI,gBAAiC,CAAC;AAEtC,iEAAiE;AAEjE,sBAAsB;AACtB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAU,EAAE,EAAE;EACnD,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;EACnC,OAAO,uBAAuB,IAAI,yBAAyB,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;AACtF,CAAC,CAAC;AAEF,iBAAiB;AACjB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,KAAa,EACb,EAAE,0BAA0B,EAAiB,EAC7C,EAAE;EACF,OAAO,0BAA0B,CAAC,OAAO,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3F,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAE,YAA2B,EAAoB,EAAE;EAC7F,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;EAC5D,OAAO,SAAS,IAAI,UAAU,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,KAAa,EACb,EAAE,eAAe,EAAiB,EACN,EAAE;EAC9B,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC;EAEtD,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;IACjC,MAAM,GAAG,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAE1C,IAAI,gBAAgB;MAAE,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAC/C,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;IAEzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;MACrC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;SAC5C,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;SACjC,IAAI,CAAC,CAAC,mBAAsC,EAAE,EAAE;QAC/C,OAAO,iCAAM,mBAAmB,KAAE,EAAE,EAAE,mBAAmB,CAAC,EAAE,IAAG,CAAC;MAClE,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,CAAC,EAAE;QACb,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;UAC/B,OAAO,CAAC,KAAK,CAAC,qDAAqD,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;UACpF,MAAM,CAAC,KAAK,CAAC,CAAC;SACf;MACH,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;GACJ;EAED,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC;AAC7D,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,KAAa,EACb,YAA2B,EAC4B,EAAE;EACzD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;EAC5D,OAAO,UAAU,CAAC,EAAE;IAClB,CAAC,iCAAM,UAAU,KAAE,GAAG,EAAE,2BAA2B,CAAC,KAAK,EAAE,YAAY,CAAC,IACxE,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC","sourcesContent":["import { state } from '../../data/store';\nimport { ISearchConfig } from '../../models/header.model';\nimport { TrackAndTraceInfo } from '../../models/track-and-trace.model';\n\nlet parcelController: AbortController;\n\n// https://www.post.ch/api/trackandtrace?id=99.00.306600.01004883\n\n// Track and trace URL\nexport const getTrackAndTraceApiUrl = (id: string) => {\n const lang = state.currentLanguage;\n return `https://www.post.ch/${lang}/api/trackandtrace?id=${encodeURIComponent(id)}`;\n};\n\n// Get the redire\nexport const getTrackAndTraceRedirectUrl = (\n query: string,\n { packageTrackingRedirectUrl }: ISearchConfig,\n) => {\n return packageTrackingRedirectUrl.replace('{trackingNumber}', encodeURIComponent(query));\n};\n\n/**\n * Check whether a query is a tracking id\n *\n * @param query User query\n * @returns Boolean\n */\nexport const isParcel = async (query: string, searchConfig: ISearchConfig): Promise<boolean> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return 'sending' in parcelInfo;\n};\n\n/**\n * Try to get parcel info from a query that is possibly a tracking id.\n * This is mainly used to check if a search should redirect to track&trace instead of the regular search.\n *\n * @param query User query that is possibly a tracking number\n * @returns Track and trace info\n */\nexport const getParcelInfo = async (\n query: string,\n { redirectPattern }: ISearchConfig,\n): Promise<TrackAndTraceInfo> => {\n const trackingNrPattern = new RegExp(redirectPattern);\n\n if (trackingNrPattern.test(query)) {\n const url = getTrackAndTraceApiUrl(query);\n\n if (parcelController) parcelController.abort();\n parcelController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, { signal: parcelController.signal })\n .then(response => response.json())\n .then((trackAndTraceResult: TrackAndTraceInfo) => {\n resolve({ ...trackAndTraceResult, ok: trackAndTraceResult.ok });\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(`Could not check track and trace API due to error: ${error.message}`);\n reject(error);\n }\n });\n });\n }\n\n return { ok: false, timestamp: new Date().toDateString() };\n};\n\n/**\n * Get parcel info if query is a parcel or null\n *\n * @param query Parcel id\n * @returns Parcel info and a redirect url or null if not a parcel\n */\nexport const getParcelSuggestion = async (\n query: string,\n searchConfig: ISearchConfig,\n): Promise<(TrackAndTraceInfo & { url: string }) | null> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return parcelInfo.ok\n ? { ...parcelInfo, url: getTrackAndTraceRedirectUrl(query, searchConfig) }\n : null;\n};\n"]}
1
+ {"version":3,"file":"parcel.service.js","sourceRoot":"","sources":["../../../../src/services/search/parcel.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAIzC,IAAI,gBAAiC,CAAC;AAEtC,iEAAiE;AAEjE,sBAAsB;AACtB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EAAU,EAAE,EAAE;IACnD,MAAM,IAAI,GAAG,KAAK,CAAC,eAAe,CAAC;IACnC,OAAO,uBAAuB,IAAI,yBAAyB,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC;AACtF,CAAC,CAAC;AAEF,iBAAiB;AACjB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CACzC,KAAa,EACb,EAAE,0BAA0B,EAAiB,EAC7C,EAAE;IACF,OAAO,0BAA0B,CAAC,OAAO,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3F,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAAE,KAAa,EAAE,YAA2B,EAAoB,EAAE;IAC7F,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC5D,OAAO,SAAS,IAAI,UAAU,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,KAAa,EACb,EAAE,eAAe,EAAiB,EACN,EAAE;IAC9B,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAAC,eAAe,CAAC,CAAC;IAEtD,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAE1C,IAAI,gBAAgB;YAAE,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC/C,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;QAEzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC;iBAC5C,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;iBACjC,IAAI,CAAC,CAAC,mBAAsC,EAAE,EAAE;gBAC/C,OAAO,iCAAM,mBAAmB,KAAE,EAAE,EAAE,mBAAmB,CAAC,EAAE,IAAG,CAAC;YAClE,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,CAAC,EAAE;gBACb,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAChC,OAAO,CAAC,KAAK,CAAC,qDAAqD,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACpF,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC;AAC7D,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,KAAa,EACb,YAA2B,EAC4B,EAAE;IACzD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC5D,OAAO,UAAU,CAAC,EAAE;QAClB,CAAC,iCAAM,UAAU,KAAE,GAAG,EAAE,2BAA2B,CAAC,KAAK,EAAE,YAAY,CAAC,IACxE,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC","sourcesContent":["import { state } from '../../data/store';\nimport { ISearchConfig } from '../../models/header.model';\nimport { TrackAndTraceInfo } from '../../models/track-and-trace.model';\n\nlet parcelController: AbortController;\n\n// https://www.post.ch/api/trackandtrace?id=99.00.306600.01004883\n\n// Track and trace URL\nexport const getTrackAndTraceApiUrl = (id: string) => {\n const lang = state.currentLanguage;\n return `https://www.post.ch/${lang}/api/trackandtrace?id=${encodeURIComponent(id)}`;\n};\n\n// Get the redire\nexport const getTrackAndTraceRedirectUrl = (\n query: string,\n { packageTrackingRedirectUrl }: ISearchConfig,\n) => {\n return packageTrackingRedirectUrl.replace('{trackingNumber}', encodeURIComponent(query));\n};\n\n/**\n * Check whether a query is a tracking id\n *\n * @param query User query\n * @returns Boolean\n */\nexport const isParcel = async (query: string, searchConfig: ISearchConfig): Promise<boolean> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return 'sending' in parcelInfo;\n};\n\n/**\n * Try to get parcel info from a query that is possibly a tracking id.\n * This is mainly used to check if a search should redirect to track&trace instead of the regular search.\n *\n * @param query User query that is possibly a tracking number\n * @returns Track and trace info\n */\nexport const getParcelInfo = async (\n query: string,\n { redirectPattern }: ISearchConfig,\n): Promise<TrackAndTraceInfo> => {\n const trackingNrPattern = new RegExp(redirectPattern);\n\n if (trackingNrPattern.test(query)) {\n const url = getTrackAndTraceApiUrl(query);\n\n if (parcelController) parcelController.abort();\n parcelController = new AbortController();\n\n return new Promise((resolve, reject) => {\n fetch(url, { signal: parcelController.signal })\n .then(response => response.json())\n .then((trackAndTraceResult: TrackAndTraceInfo) => {\n resolve({ ...trackAndTraceResult, ok: trackAndTraceResult.ok });\n })\n .catch(error => {\n if (error.name !== 'AbortError') {\n console.error(`Could not check track and trace API due to error: ${error.message}`);\n reject(error);\n }\n });\n });\n }\n\n return { ok: false, timestamp: new Date().toDateString() };\n};\n\n/**\n * Get parcel info if query is a parcel or null\n *\n * @param query Parcel id\n * @returns Parcel info and a redirect url or null if not a parcel\n */\nexport const getParcelSuggestion = async (\n query: string,\n searchConfig: ISearchConfig,\n): Promise<(TrackAndTraceInfo & { url: string }) | null> => {\n const parcelInfo = await getParcelInfo(query, searchConfig);\n return parcelInfo.ok\n ? { ...parcelInfo, url: getTrackAndTraceRedirectUrl(query, searchConfig) }\n : null;\n};\n"]}