@postnord/pn-marketweb-components 4.2.5 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/cjs/header-theme-a250bf67.js +245 -0
  2. package/cjs/header-theme-a250bf67.js.map +1 -0
  3. package/cjs/index-9a9efa1c.js +24 -16
  4. package/cjs/loader.cjs.js +1 -1
  5. package/cjs/pn-app-banner.cjs.entry.js +1 -1
  6. package/cjs/pn-breakpoints.cjs.entry.js +1 -1
  7. package/cjs/pn-chat-message_2.cjs.entry.js +2 -2
  8. package/cjs/pn-chat.cjs.entry.js +2 -2
  9. package/cjs/pn-customernumber-selector-option.cjs.entry.js +1 -1
  10. package/cjs/pn-customernumber-selector.cjs.entry.js +1 -1
  11. package/cjs/pn-find-price-result.cjs.entry.js +1 -1
  12. package/cjs/pn-find-price.cjs.entry.js +2 -2
  13. package/cjs/pn-find-service-and-price-result.cjs.entry.js +1 -1
  14. package/cjs/pn-find-service-and-price.cjs.entry.js +1 -1
  15. package/cjs/pn-hero-block-international.cjs.entry.js +1 -1
  16. package/cjs/pn-language-selector_13.cjs.entry.js +1519 -0
  17. package/cjs/pn-language-selector_13.cjs.entry.js.map +1 -0
  18. package/cjs/pn-level-up-modal.cjs.entry.js +1 -1
  19. package/cjs/pn-level-up.cjs.entry.js +2 -2
  20. package/cjs/pn-link-list.cjs.entry.js +1 -1
  21. package/cjs/pn-market-web-components.cjs.js +1 -1
  22. package/cjs/pn-marketweb-header-main-row_2.cjs.entry.js +222 -0
  23. package/cjs/pn-marketweb-header-main-row_2.cjs.entry.js.map +1 -0
  24. package/cjs/pn-marketweb-header-skeleton-loader.cjs.entry.js +23 -0
  25. package/cjs/pn-marketweb-header-skeleton-loader.cjs.entry.js.map +1 -0
  26. package/cjs/pn-marketweb-header-toggle.cjs.entry.js +46 -0
  27. package/cjs/pn-marketweb-header-toggle.cjs.entry.js.map +1 -0
  28. package/cjs/pn-marketweb-header.cjs.entry.js +1043 -0
  29. package/cjs/pn-marketweb-header.cjs.entry.js.map +1 -0
  30. package/cjs/pn-marketweb-icon.cjs.entry.js +1 -1
  31. package/cjs/{pn-marketweb-siteheader-login-linklist.cjs.entry.js → pn-marketweb-siteheader-login-button_2.cjs.entry.js} +44 -2
  32. package/cjs/pn-marketweb-siteheader-login-button_2.cjs.entry.js.map +1 -0
  33. package/cjs/pn-marketweb-siteheader-login-mypage-button.cjs.entry.js +1 -1
  34. package/cjs/pn-marketweb-siteheader.cjs.entry.js +7 -199
  35. package/cjs/pn-marketweb-siteheader.cjs.entry.js.map +1 -1
  36. package/cjs/pn-marketweb-table.cjs.entry.js +1 -1
  37. package/cjs/pn-media-block.cjs.entry.js +1 -1
  38. package/cjs/pn-pex-pricefinder.cjs.entry.js +1 -1
  39. package/cjs/pn-product-card_3.cjs.entry.js +1 -1
  40. package/cjs/pn-product-pricelist-result.cjs.entry.js +1 -1
  41. package/cjs/pn-product-pricelist.cjs.entry.js +2 -2
  42. package/cjs/pn-product-tile-info_2.cjs.entry.js +1 -1
  43. package/cjs/pn-product-tile.cjs.entry.js +1 -1
  44. package/cjs/pn-profile-modal-customernumber.cjs.entry.js +1 -1
  45. package/cjs/pn-profile-modal-profile.cjs.entry.js +2 -2
  46. package/cjs/pn-profile-modal-type.cjs.entry.js +1 -1
  47. package/cjs/pn-profile-modal.cjs.entry.js +1 -1
  48. package/cjs/pn-profile-selector-option.cjs.entry.js +1 -1
  49. package/cjs/pn-profile-selector.cjs.entry.js +1 -1
  50. package/cjs/pn-proxio-findprice-result.cjs.entry.js +1 -1
  51. package/cjs/pn-proxio-findprice.cjs.entry.js +3 -3
  52. package/cjs/pn-proxio-pricegroup.cjs.entry.js +1 -1
  53. package/cjs/pn-proxio-productcard_4.cjs.entry.js +3 -3
  54. package/cjs/pn-qr-code-generator.cjs.entry.js +1 -1
  55. package/cjs/pn-sidenav-level.cjs.entry.js +1 -1
  56. package/cjs/pn-sidenav-link.cjs.entry.js +1 -1
  57. package/cjs/pn-sidenav-togglebutton.cjs.entry.js +1 -1
  58. package/cjs/pn-sidenav.cjs.entry.js +1 -1
  59. package/cjs/pn-site-footer_3.cjs.entry.js +3 -3
  60. package/cjs/pn-titletag.cjs.entry.js +1 -1
  61. package/cjs/pn-usp-promoter.cjs.entry.js +1 -1
  62. package/cjs/translations-9510f11c.js +198 -0
  63. package/cjs/translations-9510f11c.js.map +1 -0
  64. package/collection/collection-manifest.json +5 -0
  65. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.css +204 -0
  66. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.js +658 -0
  67. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.js.map +1 -0
  68. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.css +217 -0
  69. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.js +20 -0
  70. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.js.map +1 -0
  71. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.css +115 -0
  72. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.js +520 -0
  73. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.js.map +1 -0
  74. package/collection/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.js +37 -0
  75. package/collection/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.js.map +1 -0
  76. package/collection/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.js +109 -0
  77. package/collection/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.js.map +1 -0
  78. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.css +225 -0
  79. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.js +916 -0
  80. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.js.map +1 -0
  81. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.js +638 -0
  82. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.js.map +1 -0
  83. package/collection/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.js +180 -0
  84. package/collection/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.js.map +1 -0
  85. package/collection/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.js +2 -0
  86. package/collection/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.js.map +1 -0
  87. package/collection/components/layout-components/pn-marketweb-header/utils/header-i18n.js +37 -0
  88. package/collection/components/layout-components/pn-marketweb-header/utils/header-i18n.js.map +1 -0
  89. package/collection/components/layout-components/pn-marketweb-header/utils/header-language.js +46 -0
  90. package/collection/components/layout-components/pn-marketweb-header/utils/header-language.js.map +1 -0
  91. package/collection/components/layout-components/pn-marketweb-header/utils/header-menu.js +36 -0
  92. package/collection/components/layout-components/pn-marketweb-header/utils/header-menu.js.map +1 -0
  93. package/collection/components/layout-components/pn-marketweb-header/utils/header-theme.js +48 -0
  94. package/collection/components/layout-components/pn-marketweb-header/utils/header-theme.js.map +1 -0
  95. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js +101 -0
  96. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js.map +1 -0
  97. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.js +63 -0
  98. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.js.map +1 -0
  99. package/collection/components/layout-components/pn-marketweb-header/utils/header-url.js +91 -0
  100. package/collection/components/layout-components/pn-marketweb-header/utils/header-url.js.map +1 -0
  101. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.js +1 -1
  102. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.css +34 -12
  103. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.js +1 -1
  104. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.css +36 -15
  105. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.css +27 -13
  106. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.js +29 -4
  107. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.js.map +1 -1
  108. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-types.js.map +1 -1
  109. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.js +1 -1
  110. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader.js +4 -4
  111. package/collection/components/media/pn-media-block/pn-media-block.js +1 -1
  112. package/collection/components/minor/pn-app-banner/pn-app-banner.js +1 -1
  113. package/collection/components/minor/pn-marketweb-icon/pn-marketweb-icon.js +1 -1
  114. package/collection/components/minor/pn-swan/pn-swan.js +1 -1
  115. package/collection/components/minor/pn-titletag/pn-titletag.js +1 -1
  116. package/collection/components/navigation/pn-language-selector/pn-language-selector-option.css +25 -12
  117. package/collection/components/navigation/pn-language-selector/pn-language-selector-option.js +1 -1
  118. package/collection/components/navigation/pn-language-selector/pn-language-selector.css +17 -5
  119. package/collection/components/navigation/pn-language-selector/pn-language-selector.js +22 -3
  120. package/collection/components/navigation/pn-language-selector/pn-language-selector.js.map +1 -1
  121. package/collection/components/navigation/pn-mainnav/pn-mainnav-level.css +37 -17
  122. package/collection/components/navigation/pn-mainnav/pn-mainnav-level.js +2 -2
  123. package/collection/components/navigation/pn-mainnav/pn-mainnav-link.css +81 -33
  124. package/collection/components/navigation/pn-mainnav/pn-mainnav-link.js +1 -1
  125. package/collection/components/navigation/pn-mainnav/pn-mainnav-list.css +12 -2
  126. package/collection/components/navigation/pn-mainnav/pn-mainnav-list.js +1 -1
  127. package/collection/components/navigation/pn-mainnav/pn-mainnav.css +35 -22
  128. package/collection/components/navigation/pn-mainnav/pn-mainnav.js +1 -1
  129. package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.css +80 -0
  130. package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.js +147 -0
  131. package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.js.map +1 -0
  132. package/collection/components/navigation/pn-sidenav/pn-sidenav-level.js +1 -1
  133. package/collection/components/navigation/pn-sidenav/pn-sidenav-link.js +1 -1
  134. package/collection/components/navigation/pn-sidenav/pn-sidenav-togglebutton.js +1 -1
  135. package/collection/components/navigation/pn-sidenav/pn-sidenav.js +1 -1
  136. package/collection/components/navigation/pn-site-footer/pn-site-footer-col.js +1 -1
  137. package/collection/components/navigation/pn-site-footer/pn-site-footer.js +1 -1
  138. package/collection/components/navigation/pn-site-selector/pn-site-selector-item.css +16 -12
  139. package/collection/components/navigation/pn-site-selector/pn-site-selector-item.js +1 -1
  140. package/collection/components/navigation/pn-site-selector/pn-site-selector.css +15 -0
  141. package/collection/components/navigation/pn-site-selector/pn-site-selector.js +22 -3
  142. package/collection/components/navigation/pn-site-selector/pn-site-selector.js.map +1 -1
  143. package/collection/components/profile/pn-customernumber-selector/pn-customernumber-selector-option.js +1 -1
  144. package/collection/components/profile/pn-customernumber-selector/pn-customernumber-selector.js +1 -1
  145. package/collection/components/profile/pn-profile-modal/pn-profile-modal-customernumber.js +1 -1
  146. package/collection/components/profile/pn-profile-modal/pn-profile-modal-profile.js +2 -2
  147. package/collection/components/profile/pn-profile-modal/pn-profile-modal-type.js +1 -1
  148. package/collection/components/profile/pn-profile-modal/pn-profile-modal.js +1 -1
  149. package/collection/components/profile/pn-profile-selector/pn-profile-selector-option.js +1 -1
  150. package/collection/components/profile/pn-profile-selector/pn-profile-selector.js +1 -1
  151. package/collection/components/utilities/pn-breakpoints/pn-breakpoints.js +1 -1
  152. package/collection/components/widgets/pn-chat/pn-chat-message/pn-chat-message.js +1 -1
  153. package/collection/components/widgets/pn-chat/pn-chat.js +2 -2
  154. package/collection/components/widgets/pn-find-price/pn-find-price-result.js +1 -1
  155. package/collection/components/widgets/pn-find-price/pn-find-price.js +2 -2
  156. package/collection/components/widgets/pn-find-service-and-price/pn-find-service-and-price-result.js +1 -1
  157. package/collection/components/widgets/pn-find-service-and-price/pn-find-service-and-price.js +1 -1
  158. package/collection/components/widgets/pn-hero-block-international/pn-hero-block-international.js +1 -1
  159. package/collection/components/widgets/pn-level-up/pn-level-up-modal/pn-level-up-modal.js +1 -1
  160. package/collection/components/widgets/pn-level-up/pn-level-up.js +2 -2
  161. package/collection/components/widgets/pn-link-list/pn-link-list.js +1 -1
  162. package/collection/components/widgets/pn-marketweb-carousel/pn-marketweb-carousel.js +1 -1
  163. package/collection/components/widgets/pn-marketweb-table/pn-marketweb-table.js +1 -1
  164. package/collection/components/widgets/pn-pex-pricefinder/pn-pex-pricefinder.js +1 -1
  165. package/collection/components/widgets/pn-product-card/pn-product-card.js +1 -1
  166. package/collection/components/widgets/pn-product-pricelist/pn-product-pricelist-result.js +1 -1
  167. package/collection/components/widgets/pn-product-pricelist/pn-product-pricelist.js +2 -2
  168. package/collection/components/widgets/pn-product-tile/pn-product-tile-info.js +1 -1
  169. package/collection/components/widgets/pn-product-tile/pn-product-tile.js +1 -1
  170. package/collection/components/widgets/pn-proxio-findprice/pn-proxio-findprice-result.js +1 -1
  171. package/collection/components/widgets/pn-proxio-findprice/pn-proxio-findprice.js +3 -3
  172. package/collection/components/widgets/pn-proxio-pricegroup/pn-proxio-pricegroup.js +1 -1
  173. package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard-description.js +1 -1
  174. package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard-information.js +1 -1
  175. package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard.js +1 -1
  176. package/collection/components/widgets/pn-qr-code-generator/pn-qr-code-generator.js +1 -1
  177. package/collection/components/widgets/pn-usp-promoter/pn-usp-promoter.js +1 -1
  178. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.js +105 -0
  179. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.js.map +1 -0
  180. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.js +166 -0
  181. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.js.map +1 -0
  182. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.js +2 -0
  183. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.js.map +1 -0
  184. package/components/pn-app-banner.js +1 -1
  185. package/components/pn-breakpoints.js +1 -1
  186. package/components/pn-chat-message2.js +1 -1
  187. package/components/pn-chat.js +2 -2
  188. package/components/pn-customernumber-selector-option.js +1 -1
  189. package/components/pn-customernumber-selector.js +1 -1
  190. package/components/pn-find-price-result2.js +1 -1
  191. package/components/pn-find-price.js +2 -2
  192. package/components/pn-find-service-and-price-result2.js +1 -1
  193. package/components/pn-find-service-and-price.js +1 -1
  194. package/components/pn-hero-block-international.js +1 -1
  195. package/components/pn-language-selector-option2.js +2 -2
  196. package/components/pn-language-selector-option2.js.map +1 -1
  197. package/components/pn-language-selector2.js +4 -2
  198. package/components/pn-language-selector2.js.map +1 -1
  199. package/components/pn-level-up-modal2.js +1 -1
  200. package/components/pn-level-up.js +2 -2
  201. package/components/pn-link-list.js +1 -1
  202. package/components/pn-mainnav-level2.js +3 -3
  203. package/components/pn-mainnav-level2.js.map +1 -1
  204. package/components/pn-mainnav-link2.js +2 -2
  205. package/components/pn-mainnav-link2.js.map +1 -1
  206. package/components/pn-mainnav-list2.js +2 -2
  207. package/components/pn-mainnav-list2.js.map +1 -1
  208. package/components/pn-mainnav2.js +2 -2
  209. package/components/pn-mainnav2.js.map +1 -1
  210. package/components/pn-marketweb-carousel2.js +1 -1
  211. package/components/pn-marketweb-header-main-row.d.ts +11 -0
  212. package/components/pn-marketweb-header-main-row.js +8 -0
  213. package/components/pn-marketweb-header-main-row.js.map +1 -0
  214. package/components/pn-marketweb-header-main-row2.js +281 -0
  215. package/components/pn-marketweb-header-main-row2.js.map +1 -0
  216. package/components/pn-marketweb-header-shared.js +192 -0
  217. package/components/pn-marketweb-header-shared.js.map +1 -0
  218. package/components/pn-marketweb-header-skeleton-loader.d.ts +11 -0
  219. package/components/pn-marketweb-header-skeleton-loader.js +37 -0
  220. package/components/pn-marketweb-header-skeleton-loader.js.map +1 -0
  221. package/components/pn-marketweb-header-toggle.d.ts +11 -0
  222. package/components/pn-marketweb-header-toggle.js +8 -0
  223. package/components/pn-marketweb-header-toggle.js.map +1 -0
  224. package/components/pn-marketweb-header-toggle2.js +61 -0
  225. package/components/pn-marketweb-header-toggle2.js.map +1 -0
  226. package/components/pn-marketweb-header-top-row.d.ts +11 -0
  227. package/components/pn-marketweb-header-top-row.js +8 -0
  228. package/components/pn-marketweb-header-top-row.js.map +1 -0
  229. package/components/pn-marketweb-header-top-row2.js +238 -0
  230. package/components/pn-marketweb-header-top-row2.js.map +1 -0
  231. package/components/pn-marketweb-header.d.ts +11 -0
  232. package/components/pn-marketweb-header.js +1206 -0
  233. package/components/pn-marketweb-header.js.map +1 -0
  234. package/components/pn-marketweb-icon.js +1 -1
  235. package/components/pn-marketweb-siteheader-login-button2.js +1 -1
  236. package/components/pn-marketweb-siteheader-login-linklist2.js +1 -1
  237. package/components/pn-marketweb-siteheader-login-linklist2.js.map +1 -1
  238. package/components/pn-marketweb-siteheader-login-mypage-button.js +1 -1
  239. package/components/pn-marketweb-siteheader-login-profileselection2.js +1 -1
  240. package/components/pn-marketweb-siteheader-login-profileselection2.js.map +1 -1
  241. package/components/pn-marketweb-siteheader-login2.js +4 -2
  242. package/components/pn-marketweb-siteheader-login2.js.map +1 -1
  243. package/components/pn-marketweb-siteheader-unified-login2.js +1 -1
  244. package/components/pn-marketweb-siteheader.js +5 -197
  245. package/components/pn-marketweb-siteheader.js.map +1 -1
  246. package/components/pn-marketweb-table.js +1 -1
  247. package/components/pn-media-block.js +1 -1
  248. package/components/pn-pex-pricefinder.js +1 -1
  249. package/components/pn-product-card2.js +1 -1
  250. package/components/pn-product-pricelist-result.js +1 -1
  251. package/components/pn-product-pricelist.js +2 -2
  252. package/components/pn-product-tile-info2.js +1 -1
  253. package/components/pn-product-tile.js +1 -1
  254. package/components/pn-profile-modal-customernumber.js +1 -1
  255. package/components/pn-profile-modal-profile.js +2 -2
  256. package/components/pn-profile-modal-type.js +1 -1
  257. package/components/pn-profile-modal.js +1 -1
  258. package/components/pn-profile-selector-option.js +1 -1
  259. package/components/pn-profile-selector.js +1 -1
  260. package/components/pn-proxio-findprice-result2.js +2 -2
  261. package/components/pn-proxio-findprice.js +3 -3
  262. package/components/pn-proxio-pricegroup.js +2 -2
  263. package/components/pn-proxio-productcard-description2.js +1 -1
  264. package/components/pn-proxio-productcard-information2.js +1 -1
  265. package/components/pn-proxio-productcard2.js +1 -1
  266. package/components/pn-qr-code-generator2.js +1 -1
  267. package/components/pn-sidenav-level.js +1 -1
  268. package/components/pn-sidenav-link.js +1 -1
  269. package/components/pn-sidenav-togglebutton.js +1 -1
  270. package/components/pn-sidenav.js +1 -1
  271. package/components/pn-site-footer-col2.js +1 -1
  272. package/components/pn-site-footer2.js +1 -1
  273. package/components/pn-site-selector-item2.js +2 -2
  274. package/components/pn-site-selector-item2.js.map +1 -1
  275. package/components/pn-site-selector2.js +4 -2
  276. package/components/pn-site-selector2.js.map +1 -1
  277. package/components/pn-swan2.js +1 -1
  278. package/components/pn-titletag2.js +1 -1
  279. package/components/pn-usp-promoter.js +1 -1
  280. package/components/translations.js +189 -14
  281. package/components/translations.js.map +1 -1
  282. package/components/translations2.js +21 -0
  283. package/components/translations2.js.map +1 -0
  284. package/esm/header-theme-d09b64c7.js +234 -0
  285. package/esm/header-theme-d09b64c7.js.map +1 -0
  286. package/esm/index-c0a4d8bd.js +24 -16
  287. package/esm/loader.js +1 -1
  288. package/esm/pn-app-banner.entry.js +1 -1
  289. package/esm/pn-breakpoints.entry.js +1 -1
  290. package/esm/pn-chat-message_2.entry.js +2 -2
  291. package/esm/pn-chat.entry.js +2 -2
  292. package/esm/pn-customernumber-selector-option.entry.js +1 -1
  293. package/esm/pn-customernumber-selector.entry.js +1 -1
  294. package/esm/pn-find-price-result.entry.js +1 -1
  295. package/esm/pn-find-price.entry.js +2 -2
  296. package/esm/pn-find-service-and-price-result.entry.js +1 -1
  297. package/esm/pn-find-service-and-price.entry.js +1 -1
  298. package/esm/pn-hero-block-international.entry.js +1 -1
  299. package/esm/{pn-language-selector_9.entry.js → pn-language-selector_13.entry.js} +381 -22
  300. package/esm/pn-language-selector_13.entry.js.map +1 -0
  301. package/esm/pn-level-up-modal.entry.js +1 -1
  302. package/esm/pn-level-up.entry.js +2 -2
  303. package/esm/pn-link-list.entry.js +1 -1
  304. package/esm/pn-market-web-components.js +1 -1
  305. package/esm/pn-marketweb-header-main-row_2.entry.js +217 -0
  306. package/esm/pn-marketweb-header-main-row_2.entry.js.map +1 -0
  307. package/esm/pn-marketweb-header-skeleton-loader.entry.js +19 -0
  308. package/esm/pn-marketweb-header-skeleton-loader.entry.js.map +1 -0
  309. package/esm/pn-marketweb-header-toggle.entry.js +42 -0
  310. package/esm/pn-marketweb-header-toggle.entry.js.map +1 -0
  311. package/esm/pn-marketweb-header.entry.js +1039 -0
  312. package/esm/pn-marketweb-header.entry.js.map +1 -0
  313. package/esm/pn-marketweb-icon.entry.js +1 -1
  314. package/esm/{pn-marketweb-siteheader-login-linklist.entry.js → pn-marketweb-siteheader-login-button_2.entry.js} +44 -3
  315. package/esm/pn-marketweb-siteheader-login-button_2.entry.js.map +1 -0
  316. package/esm/pn-marketweb-siteheader-login-mypage-button.entry.js +1 -1
  317. package/esm/pn-marketweb-siteheader.entry.js +5 -197
  318. package/esm/pn-marketweb-siteheader.entry.js.map +1 -1
  319. package/esm/pn-marketweb-table.entry.js +1 -1
  320. package/esm/pn-media-block.entry.js +1 -1
  321. package/esm/pn-pex-pricefinder.entry.js +1 -1
  322. package/esm/pn-product-card_3.entry.js +1 -1
  323. package/esm/pn-product-pricelist-result.entry.js +1 -1
  324. package/esm/pn-product-pricelist.entry.js +2 -2
  325. package/esm/pn-product-tile-info_2.entry.js +1 -1
  326. package/esm/pn-product-tile.entry.js +1 -1
  327. package/esm/pn-profile-modal-customernumber.entry.js +1 -1
  328. package/esm/pn-profile-modal-profile.entry.js +2 -2
  329. package/esm/pn-profile-modal-type.entry.js +1 -1
  330. package/esm/pn-profile-modal.entry.js +1 -1
  331. package/esm/pn-profile-selector-option.entry.js +1 -1
  332. package/esm/pn-profile-selector.entry.js +1 -1
  333. package/esm/pn-proxio-findprice-result.entry.js +1 -1
  334. package/esm/pn-proxio-findprice.entry.js +3 -3
  335. package/esm/pn-proxio-pricegroup.entry.js +1 -1
  336. package/esm/pn-proxio-productcard_4.entry.js +3 -3
  337. package/esm/pn-qr-code-generator.entry.js +1 -1
  338. package/esm/pn-sidenav-level.entry.js +1 -1
  339. package/esm/pn-sidenav-link.entry.js +1 -1
  340. package/esm/pn-sidenav-togglebutton.entry.js +1 -1
  341. package/esm/pn-sidenav.entry.js +1 -1
  342. package/esm/pn-site-footer_3.entry.js +3 -3
  343. package/esm/pn-titletag.entry.js +1 -1
  344. package/esm/pn-usp-promoter.entry.js +1 -1
  345. package/esm/translations-d2f5804e.js +196 -0
  346. package/esm/translations-d2f5804e.js.map +1 -0
  347. package/package.json +1 -1
  348. package/pn-market-web-components/{p-4a164ef8.entry.js → p-03728b0b.entry.js} +2 -2
  349. package/pn-market-web-components/p-04f51418.js +2 -0
  350. package/pn-market-web-components/p-04f51418.js.map +1 -0
  351. package/pn-market-web-components/{p-e43a36e0.entry.js → p-067c1c2f.entry.js} +2 -2
  352. package/pn-market-web-components/{p-2616cdc1.entry.js → p-191c8cfc.entry.js} +2 -2
  353. package/pn-market-web-components/{p-ca003c1f.entry.js → p-1a91c313.entry.js} +2 -2
  354. package/pn-market-web-components/{p-ab1e3dc2.entry.js → p-1f8304be.entry.js} +2 -2
  355. package/pn-market-web-components/{p-a3f601cb.entry.js → p-24ffac0a.entry.js} +2 -2
  356. package/pn-market-web-components/p-3239c36b.entry.js +2 -0
  357. package/pn-market-web-components/p-3239c36b.entry.js.map +1 -0
  358. package/pn-market-web-components/{p-12cafd55.entry.js → p-3aa74418.entry.js} +2 -2
  359. package/pn-market-web-components/p-3d27faee.entry.js +2 -0
  360. package/pn-market-web-components/{p-9d0ca27b.entry.js.map → p-3d27faee.entry.js.map} +1 -1
  361. package/pn-market-web-components/p-3e25f431.entry.js +2 -0
  362. package/pn-market-web-components/p-3e25f431.entry.js.map +1 -0
  363. package/pn-market-web-components/{p-64f6691d.entry.js → p-42da7c5f.entry.js} +2 -2
  364. package/pn-market-web-components/{p-f0d423d0.entry.js → p-43748ca2.entry.js} +2 -2
  365. package/pn-market-web-components/{p-1c644b91.entry.js → p-466958a8.entry.js} +2 -2
  366. package/pn-market-web-components/{p-150da889.entry.js → p-4ab53d5d.entry.js} +2 -2
  367. package/pn-market-web-components/{p-118fe47d.entry.js → p-4d595345.entry.js} +2 -2
  368. package/pn-market-web-components/{p-0f6f715b.entry.js → p-4dac1980.entry.js} +2 -2
  369. package/pn-market-web-components/{p-a13f1f73.entry.js → p-4fcce83d.entry.js} +2 -2
  370. package/pn-market-web-components/{p-89fbca3b.entry.js → p-5a51d0b0.entry.js} +2 -2
  371. package/pn-market-web-components/{p-f4d2d0d3.entry.js → p-61346425.entry.js} +2 -2
  372. package/pn-market-web-components/{p-6e693269.entry.js → p-6b557670.entry.js} +2 -2
  373. package/pn-market-web-components/{p-e6d6a752.entry.js → p-70a71854.entry.js} +2 -2
  374. package/pn-market-web-components/p-75311d67.js +2 -0
  375. package/pn-market-web-components/p-75311d67.js.map +1 -0
  376. package/pn-market-web-components/p-756d8d95.entry.js +2 -0
  377. package/pn-market-web-components/p-756d8d95.entry.js.map +1 -0
  378. package/pn-market-web-components/{p-c0315c45.entry.js → p-76fb0c21.entry.js} +2 -2
  379. package/pn-market-web-components/{p-b2b2bae0.entry.js → p-81210644.entry.js} +2 -2
  380. package/pn-market-web-components/p-81e4d75b.entry.js +2 -0
  381. package/pn-market-web-components/p-81e4d75b.entry.js.map +1 -0
  382. package/pn-market-web-components/{p-d0f27361.entry.js → p-8382794b.entry.js} +2 -2
  383. package/pn-market-web-components/{p-8f25176b.entry.js → p-8519e39e.entry.js} +2 -2
  384. package/pn-market-web-components/p-8c26c1f2.entry.js +2 -0
  385. package/pn-market-web-components/p-8c26c1f2.entry.js.map +1 -0
  386. package/pn-market-web-components/{p-461c8792.entry.js → p-92b6477c.entry.js} +2 -2
  387. package/pn-market-web-components/{p-0d4d9d90.entry.js → p-9eab8192.entry.js} +2 -2
  388. package/pn-market-web-components/{p-40e632cc.entry.js → p-a3beee11.entry.js} +2 -2
  389. package/pn-market-web-components/{p-01fbf1ce.entry.js → p-a6935dc2.entry.js} +2 -2
  390. package/pn-market-web-components/{p-af646091.entry.js → p-a6dd3e4f.entry.js} +2 -2
  391. package/pn-market-web-components/{p-6d77e747.entry.js → p-af89c95a.entry.js} +2 -2
  392. package/pn-market-web-components/p-b318ff19.entry.js +2 -0
  393. package/pn-market-web-components/{p-0700cb4c.entry.js.map → p-b318ff19.entry.js.map} +1 -1
  394. package/pn-market-web-components/{p-c89f3d6b.entry.js → p-ba14b0ef.entry.js} +2 -2
  395. package/pn-market-web-components/{p-c7965104.entry.js → p-ba680948.entry.js} +2 -2
  396. package/pn-market-web-components/{p-11c6e458.entry.js → p-ba75bfdb.entry.js} +2 -2
  397. package/pn-market-web-components/{p-4149e715.entry.js → p-c186ec41.entry.js} +2 -2
  398. package/pn-market-web-components/{p-66c0c8dc.entry.js → p-c38707f9.entry.js} +2 -2
  399. package/pn-market-web-components/{p-671a8129.entry.js → p-c89cdd5a.entry.js} +2 -2
  400. package/pn-market-web-components/{p-4d848e18.entry.js → p-e8cd1608.entry.js} +2 -2
  401. package/pn-market-web-components/{p-4517a3d4.entry.js → p-ef090656.entry.js} +2 -2
  402. package/pn-market-web-components/p-f23ed5d2.entry.js +2 -0
  403. package/pn-market-web-components/p-f23ed5d2.entry.js.map +1 -0
  404. package/pn-market-web-components/{p-bd8ec517.entry.js → p-f3b4c13d.entry.js} +2 -2
  405. package/pn-market-web-components/{p-ff38b9a5.entry.js → p-f710445f.entry.js} +2 -2
  406. package/pn-market-web-components/{p-2e585ed5.entry.js → p-fcefe4a4.entry.js} +2 -2
  407. package/pn-market-web-components/p-fded22b7.entry.js +2 -0
  408. package/pn-market-web-components/p-fded22b7.entry.js.map +1 -0
  409. package/pn-market-web-components/{p-32bd2ff8.entry.js → p-ff6118f8.entry.js} +2 -2
  410. package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
  411. package/pn-market-web-components/pn-market-web-components.esm.js.map +1 -1
  412. package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.d.ts +40 -0
  413. package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.d.ts +3 -0
  414. package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.d.ts +30 -0
  415. package/types/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.d.ts +48 -0
  416. package/types/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.d.ts +34 -0
  417. package/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.d.ts +121 -0
  418. package/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.d.ts +99 -0
  419. package/types/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.d.ts +108 -0
  420. package/types/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.d.ts +103 -0
  421. package/types/components/layout-components/pn-marketweb-header/utils/header-i18n.d.ts +16 -0
  422. package/types/components/layout-components/pn-marketweb-header/utils/header-language.d.ts +20 -0
  423. package/types/components/layout-components/pn-marketweb-header/utils/header-menu.d.ts +16 -0
  424. package/types/components/layout-components/pn-marketweb-header/utils/header-theme.d.ts +6 -0
  425. package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.d.ts +49 -0
  426. package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.d.ts +25 -0
  427. package/types/components/layout-components/pn-marketweb-header/utils/header-url.d.ts +41 -0
  428. package/types/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.d.ts +2 -0
  429. package/types/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-types.d.ts +1 -0
  430. package/types/components/navigation/pn-language-selector/pn-language-selector.d.ts +1 -0
  431. package/types/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.d.ts +25 -0
  432. package/types/components/navigation/pn-site-selector/pn-site-selector.d.ts +1 -0
  433. package/types/components/widgets/pn-proxio-pricegroup/pn-proxio-pricegroup.d.ts +1 -1
  434. package/types/components.d.ts +532 -2
  435. package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.d.ts +7 -0
  436. package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.d.ts +24 -0
  437. package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.d.ts +16 -0
  438. package/umd/pn-marketweb-init.js +1 -1
  439. package/umd/pn-marketweb-salesforce.js +1 -1
  440. package/vscode-data.json +421 -0
  441. package/cjs/pn-language-selector_9.cjs.entry.js +0 -1156
  442. package/cjs/pn-language-selector_9.cjs.entry.js.map +0 -1
  443. package/cjs/pn-mainnav-link.cjs.entry.js +0 -45
  444. package/cjs/pn-mainnav-link.cjs.entry.js.map +0 -1
  445. package/cjs/pn-mainnav-store-13aaa243.js +0 -22
  446. package/cjs/pn-mainnav-store-13aaa243.js.map +0 -1
  447. package/cjs/pn-marketweb-siteheader-login-button_4.cjs.entry.js +0 -366
  448. package/cjs/pn-marketweb-siteheader-login-button_4.cjs.entry.js.map +0 -1
  449. package/cjs/pn-marketweb-siteheader-login-linklist.cjs.entry.js.map +0 -1
  450. package/esm/pn-language-selector_9.entry.js.map +0 -1
  451. package/esm/pn-mainnav-link.entry.js +0 -41
  452. package/esm/pn-mainnav-link.entry.js.map +0 -1
  453. package/esm/pn-mainnav-store-c98d831e.js +0 -19
  454. package/esm/pn-mainnav-store-c98d831e.js.map +0 -1
  455. package/esm/pn-marketweb-siteheader-login-button_4.entry.js +0 -359
  456. package/esm/pn-marketweb-siteheader-login-button_4.entry.js.map +0 -1
  457. package/esm/pn-marketweb-siteheader-login-linklist.entry.js.map +0 -1
  458. package/pn-market-web-components/p-022780ab.entry.js +0 -2
  459. package/pn-market-web-components/p-022780ab.entry.js.map +0 -1
  460. package/pn-market-web-components/p-0700cb4c.entry.js +0 -2
  461. package/pn-market-web-components/p-4bc6d49f.entry.js +0 -2
  462. package/pn-market-web-components/p-4bc6d49f.entry.js.map +0 -1
  463. package/pn-market-web-components/p-4c8bda8f.entry.js +0 -2
  464. package/pn-market-web-components/p-4c8bda8f.entry.js.map +0 -1
  465. package/pn-market-web-components/p-5090bb1d.entry.js +0 -2
  466. package/pn-market-web-components/p-5090bb1d.entry.js.map +0 -1
  467. package/pn-market-web-components/p-9d0ca27b.entry.js +0 -2
  468. package/pn-market-web-components/p-a30de538.entry.js +0 -2
  469. package/pn-market-web-components/p-a30de538.entry.js.map +0 -1
  470. package/pn-market-web-components/p-e3b2486a.js +0 -2
  471. package/pn-market-web-components/p-e3b2486a.js.map +0 -1
  472. /package/pn-market-web-components/{p-4a164ef8.entry.js.map → p-03728b0b.entry.js.map} +0 -0
  473. /package/pn-market-web-components/{p-e43a36e0.entry.js.map → p-067c1c2f.entry.js.map} +0 -0
  474. /package/pn-market-web-components/{p-2616cdc1.entry.js.map → p-191c8cfc.entry.js.map} +0 -0
  475. /package/pn-market-web-components/{p-ca003c1f.entry.js.map → p-1a91c313.entry.js.map} +0 -0
  476. /package/pn-market-web-components/{p-ab1e3dc2.entry.js.map → p-1f8304be.entry.js.map} +0 -0
  477. /package/pn-market-web-components/{p-a3f601cb.entry.js.map → p-24ffac0a.entry.js.map} +0 -0
  478. /package/pn-market-web-components/{p-12cafd55.entry.js.map → p-3aa74418.entry.js.map} +0 -0
  479. /package/pn-market-web-components/{p-64f6691d.entry.js.map → p-42da7c5f.entry.js.map} +0 -0
  480. /package/pn-market-web-components/{p-f0d423d0.entry.js.map → p-43748ca2.entry.js.map} +0 -0
  481. /package/pn-market-web-components/{p-1c644b91.entry.js.map → p-466958a8.entry.js.map} +0 -0
  482. /package/pn-market-web-components/{p-150da889.entry.js.map → p-4ab53d5d.entry.js.map} +0 -0
  483. /package/pn-market-web-components/{p-118fe47d.entry.js.map → p-4d595345.entry.js.map} +0 -0
  484. /package/pn-market-web-components/{p-0f6f715b.entry.js.map → p-4dac1980.entry.js.map} +0 -0
  485. /package/pn-market-web-components/{p-a13f1f73.entry.js.map → p-4fcce83d.entry.js.map} +0 -0
  486. /package/pn-market-web-components/{p-89fbca3b.entry.js.map → p-5a51d0b0.entry.js.map} +0 -0
  487. /package/pn-market-web-components/{p-f4d2d0d3.entry.js.map → p-61346425.entry.js.map} +0 -0
  488. /package/pn-market-web-components/{p-6e693269.entry.js.map → p-6b557670.entry.js.map} +0 -0
  489. /package/pn-market-web-components/{p-e6d6a752.entry.js.map → p-70a71854.entry.js.map} +0 -0
  490. /package/pn-market-web-components/{p-c0315c45.entry.js.map → p-76fb0c21.entry.js.map} +0 -0
  491. /package/pn-market-web-components/{p-b2b2bae0.entry.js.map → p-81210644.entry.js.map} +0 -0
  492. /package/pn-market-web-components/{p-d0f27361.entry.js.map → p-8382794b.entry.js.map} +0 -0
  493. /package/pn-market-web-components/{p-8f25176b.entry.js.map → p-8519e39e.entry.js.map} +0 -0
  494. /package/pn-market-web-components/{p-461c8792.entry.js.map → p-92b6477c.entry.js.map} +0 -0
  495. /package/pn-market-web-components/{p-0d4d9d90.entry.js.map → p-9eab8192.entry.js.map} +0 -0
  496. /package/pn-market-web-components/{p-40e632cc.entry.js.map → p-a3beee11.entry.js.map} +0 -0
  497. /package/pn-market-web-components/{p-01fbf1ce.entry.js.map → p-a6935dc2.entry.js.map} +0 -0
  498. /package/pn-market-web-components/{p-af646091.entry.js.map → p-a6dd3e4f.entry.js.map} +0 -0
  499. /package/pn-market-web-components/{p-6d77e747.entry.js.map → p-af89c95a.entry.js.map} +0 -0
  500. /package/pn-market-web-components/{p-c89f3d6b.entry.js.map → p-ba14b0ef.entry.js.map} +0 -0
  501. /package/pn-market-web-components/{p-c7965104.entry.js.map → p-ba680948.entry.js.map} +0 -0
  502. /package/pn-market-web-components/{p-11c6e458.entry.js.map → p-ba75bfdb.entry.js.map} +0 -0
  503. /package/pn-market-web-components/{p-4149e715.entry.js.map → p-c186ec41.entry.js.map} +0 -0
  504. /package/pn-market-web-components/{p-66c0c8dc.entry.js.map → p-c38707f9.entry.js.map} +0 -0
  505. /package/pn-market-web-components/{p-671a8129.entry.js.map → p-c89cdd5a.entry.js.map} +0 -0
  506. /package/pn-market-web-components/{p-4d848e18.entry.js.map → p-e8cd1608.entry.js.map} +0 -0
  507. /package/pn-market-web-components/{p-4517a3d4.entry.js.map → p-ef090656.entry.js.map} +0 -0
  508. /package/pn-market-web-components/{p-bd8ec517.entry.js.map → p-f3b4c13d.entry.js.map} +0 -0
  509. /package/pn-market-web-components/{p-ff38b9a5.entry.js.map → p-f710445f.entry.js.map} +0 -0
  510. /package/pn-market-web-components/{p-2e585ed5.entry.js.map → p-fcefe4a4.entry.js.map} +0 -0
  511. /package/pn-market-web-components/{p-32bd2ff8.entry.js.map → p-ff6118f8.entry.js.map} +0 -0
@@ -0,0 +1,916 @@
1
+ import { Fragment, h, Host, } from "@stencil/core";
2
+ import { FetchHelper } from "../../../globals/FetchHelper";
3
+ import { state as headerState, } from "../pn-marketweb-siteheader/pn-marketweb-siteheader-store";
4
+ import { PnMarketwebHeaderService, } from "./services/pn-marketweb-header.service";
5
+ import { defaultHeaderI18n } from "./utils/header-i18n";
6
+ import { prependHomeMenuItem } from "./utils/header-menu";
7
+ import { resolveHeaderMenuThemes, } from "./utils/header-theme";
8
+ import { extractToggleableMenuStructure, getToggleRootForMenuItems, getVisibleMenuGroupsForMode, } from "./utils/header-toggle-menu";
9
+ import { resolveInitialHeaderMenuMode, storeHeaderMenuMode, } from "./utils/header-toggle-menu.storage";
10
+ import { navigateToMenuItem } from "./utils/header-url";
11
+ /**
12
+ * New marketweb header wrapper.
13
+ *
14
+ * Responsibilities:
15
+ * - resolve runtime context
16
+ * - fetch header data
17
+ * - map backend data into a renderable view model
18
+ * - render the layout using existing leaf/header components
19
+ * - owns the active menu mode when a switchable menu structure exists
20
+ */
21
+ export class PnMarketwebHeader {
22
+ constructor() {
23
+ this.initialActiveMenuMode = 0;
24
+ this.menuThemes = undefined;
25
+ this.market = null;
26
+ this.language = null;
27
+ this.environment = null;
28
+ this.endpoint = null;
29
+ this.siteid = null;
30
+ this.pageId = '';
31
+ this.userToken = '';
32
+ this.userFullname = '';
33
+ this.userLoggedin = false;
34
+ this.hideSiteSelector = false;
35
+ this.hideHomeMenuItem = false;
36
+ this.hideLanguageSelector = false;
37
+ this.hideSearch = false;
38
+ this.hideLogin = false;
39
+ this.showProfileSelection = false;
40
+ this.showUnifiedLogin = false;
41
+ this.siteDomainInUrls = false;
42
+ this.autocompleteEndpoint = '';
43
+ this.sessionForward = false;
44
+ this.cache = false;
45
+ this.searchPlaceholder = '';
46
+ this.spaMode = false;
47
+ this.checkUserLoggedInStateInterval = 0;
48
+ this.useMarketwebLogin = false;
49
+ this.navigateOnMenuToggle = true;
50
+ this.vm = null;
51
+ this.i18n = defaultHeaderI18n;
52
+ this.status = 'loading';
53
+ this.minimizeSearch = false;
54
+ this.loggedIn = false;
55
+ this.activeMenuMode = 0;
56
+ }
57
+ hostElement;
58
+ /** Guard used to prevent watchers from reloading during initial setup. */
59
+ isInitializing = false;
60
+ /** Cached raw backend payload so UI-only prop changes can remap without refetching. */
61
+ rawHeaderData = null;
62
+ /** Main nav element reference used for overflow calculation. */
63
+ mainNavEl;
64
+ /** Emitted when the language changes. */
65
+ changeLanguage;
66
+ /** Emitted when the market changes. */
67
+ changeMarket;
68
+ /** Shared helper for backend requests. */
69
+ fetchHelper = new FetchHelper('marketweb-header');
70
+ /** Service for context resolution and header-data fetching. */
71
+ headerService = new PnMarketwebHeaderService(this.fetchHelper);
72
+ hasResolvedInitialMenuMode = false;
73
+ async componentWillLoad() {
74
+ await this.loadHeader();
75
+ }
76
+ onLanguageSelectorChange(e) {
77
+ this.language = e.detail;
78
+ window.dispatchEvent(new CustomEvent('marketweb-languagechange', { detail: this.language }));
79
+ }
80
+ async onLanguageChange() {
81
+ if (this.isInitializing || !this.language) {
82
+ return;
83
+ }
84
+ this.changeLanguage.emit(this.language);
85
+ await this.loadHeader();
86
+ }
87
+ async onMarketChange() {
88
+ if (this.isInitializing || !this.market) {
89
+ return;
90
+ }
91
+ this.changeMarket.emit(this.market);
92
+ await this.loadHeader();
93
+ }
94
+ async onEnvironmentChange() {
95
+ if (this.isInitializing || !this.environment) {
96
+ return;
97
+ }
98
+ await this.loadHeader();
99
+ }
100
+ async onEndpointChange() {
101
+ if (this.isInitializing) {
102
+ return;
103
+ }
104
+ await this.loadHeader();
105
+ }
106
+ async onPageIdChange() {
107
+ if (this.isInitializing) {
108
+ return;
109
+ }
110
+ await this.loadHeader();
111
+ }
112
+ onPresentationInputChange() {
113
+ if (this.isInitializing) {
114
+ return;
115
+ }
116
+ this.remapViewModel();
117
+ }
118
+ onLoginStateChange(e) {
119
+ if (typeof e.detail?.loggedIn === 'boolean') {
120
+ this.loggedIn = e.detail.loggedIn;
121
+ }
122
+ if (e.detail?.loggedIn && e.detail?.token && this.sessionForward) {
123
+ try {
124
+ // fetch('/api/userprofile/sync?token=' + e.detail.token);
125
+ }
126
+ catch {
127
+ // ignored intentionally
128
+ }
129
+ }
130
+ }
131
+ handleResize() {
132
+ requestAnimationFrame(() => {
133
+ this.checkMenuOverflow();
134
+ });
135
+ }
136
+ get menuThemeList() {
137
+ return resolveHeaderMenuThemes(this.menuThemes, this.vm?.menuModeOptions);
138
+ }
139
+ get logoUrl() {
140
+ return this.vm?.menuModeOptions?.[this.activeMenuMode]?.href ?? '/';
141
+ }
142
+ async loadHeader() {
143
+ this.status = 'loading';
144
+ this.isInitializing = true;
145
+ try {
146
+ const result = await this.headerService.loadHeaderState({
147
+ market: this.market,
148
+ language: this.language,
149
+ environment: this.environment,
150
+ endpoint: this.endpoint,
151
+ pageId: this.pageId,
152
+ cache: this.cache,
153
+ hideHomeMenuItem: this.hideHomeMenuItem,
154
+ siteDomainInUrls: this.siteDomainInUrls,
155
+ autocompleteEndpoint: this.autocompleteEndpoint,
156
+ searchPlaceholder: this.searchPlaceholder,
157
+ });
158
+ this.applyHeaderState(result);
159
+ requestAnimationFrame(() => {
160
+ this.checkMenuOverflow();
161
+ });
162
+ }
163
+ catch (error) {
164
+ console.error('[pn-marketweb-header] Failed to load header', error);
165
+ this.rawHeaderData = null;
166
+ this.vm = null;
167
+ this.status = 'error';
168
+ }
169
+ finally {
170
+ this.isInitializing = false;
171
+ }
172
+ }
173
+ remapViewModel() {
174
+ const context = {
175
+ market: this.market,
176
+ language: this.language,
177
+ environment: this.environment,
178
+ endpoint: this.endpoint,
179
+ pageId: this.pageId ?? '',
180
+ };
181
+ const result = this.headerService.remapHeaderState({
182
+ context,
183
+ rawHeaderData: this.rawHeaderData,
184
+ language: this.language,
185
+ hideHomeMenuItem: this.hideHomeMenuItem,
186
+ siteDomainInUrls: this.siteDomainInUrls,
187
+ autocompleteEndpoint: this.autocompleteEndpoint,
188
+ searchPlaceholder: this.searchPlaceholder,
189
+ currentActiveMenuMode: this.activeMenuMode,
190
+ });
191
+ this.applyHeaderState(result);
192
+ requestAnimationFrame(() => {
193
+ this.checkMenuOverflow();
194
+ });
195
+ }
196
+ applyHeaderState(result) {
197
+ this.market = result.context.market;
198
+ this.language = result.context.language;
199
+ this.environment = result.context.environment;
200
+ this.endpoint = result.context.endpoint;
201
+ this.rawHeaderData = result.rawHeaderData;
202
+ this.vm = result.vm;
203
+ this.i18n = result.i18n;
204
+ this.status = result.status;
205
+ if (!result.vm?.hasMenuSwitching) {
206
+ this.activeMenuMode = 0;
207
+ this.hasResolvedInitialMenuMode = false;
208
+ }
209
+ else if (!this.hasResolvedInitialMenuMode) {
210
+ this.activeMenuMode = resolveInitialHeaderMenuMode(true, this.initialActiveMenuMode);
211
+ this.hasResolvedInitialMenuMode = true;
212
+ }
213
+ if (headerState.loginManager && result.vm?.siteDefinition?.url) {
214
+ headerState.loginManager.setSiteUrl(result.vm.siteDefinition.url);
215
+ }
216
+ }
217
+ checkMenuOverflow() {
218
+ const mainNavEl = this.mainNavEl;
219
+ if (!mainNavEl) {
220
+ return;
221
+ }
222
+ const firstMenuLevel = mainNavEl.querySelector('pn-mainnav-level');
223
+ if (!firstMenuLevel) {
224
+ return;
225
+ }
226
+ const navContainer = firstMenuLevel.parentElement;
227
+ if (!navContainer) {
228
+ return;
229
+ }
230
+ const availableWidth = navContainer.clientWidth;
231
+ const requiredWidth = firstMenuLevel.scrollWidth;
232
+ this.minimizeSearch = requiredWidth > availableWidth;
233
+ }
234
+ isUserLoggedIn() {
235
+ return this.loggedIn || this.userLoggedin;
236
+ }
237
+ adjustSiteSelectorUrl(href) {
238
+ if (!this.isUserLoggedIn()) {
239
+ return href;
240
+ }
241
+ const loginDomains = ['portal.postnord.com'];
242
+ const matchedHref = loginDomains.some(domain => href.includes(domain));
243
+ if (!matchedHref) {
244
+ return href;
245
+ }
246
+ if (headerState.loginManager) {
247
+ return headerState.loginManager.getLoginUrl(href);
248
+ }
249
+ return href;
250
+ }
251
+ onMenuToggleChange = (e) => {
252
+ const nextMode = e.detail;
253
+ if (nextMode === this.activeMenuMode) {
254
+ return;
255
+ }
256
+ this.activeMenuMode = nextMode;
257
+ storeHeaderMenuMode(nextMode);
258
+ if (!this.navigateOnMenuToggle || !this.vm?.rawMenuItems.length) {
259
+ return;
260
+ }
261
+ const targetRoot = getToggleRootForMenuItems(this.vm.rawMenuItems, nextMode);
262
+ navigateToMenuItem(targetRoot);
263
+ };
264
+ getVisibleMenuGroups(vm) {
265
+ if (!vm.rawMenuItems.length) {
266
+ return {
267
+ primaryItems: vm.menuItems,
268
+ sharedItems: [],
269
+ };
270
+ }
271
+ const structure = extractToggleableMenuStructure(vm.rawMenuItems);
272
+ if (structure.modeRoots.length === 0) {
273
+ return {
274
+ primaryItems: vm.menuItems,
275
+ sharedItems: [],
276
+ };
277
+ }
278
+ const groups = getVisibleMenuGroupsForMode(vm.rawMenuItems, this.activeMenuMode);
279
+ return {
280
+ primaryItems: prependHomeMenuItem(groups.primaryItems, this.i18n, vm.siteDefinition?.url ?? '/', this.hideHomeMenuItem),
281
+ sharedItems: groups.sharedItems,
282
+ };
283
+ }
284
+ render() {
285
+ const vm = this.vm;
286
+ const i18n = this.i18n;
287
+ const activeTheme = this.menuThemeList[this.activeMenuMode] ?? 'private';
288
+ const logoUrl = this.logoUrl;
289
+ const menuGroups = vm
290
+ ? this.getVisibleMenuGroups(vm)
291
+ : { primaryItems: [], sharedItems: [] };
292
+ return (h(Host, { key: '77b50a06702c9c8aee59392c7ebcf392d0e93ace', language: this.language ?? undefined, market: this.market ?? undefined, environment: this.environment ?? undefined, "data-status": this.status, "data-mode": this.activeMenuMode, "data-theme": activeTheme }, h("header", { key: 'f17a9126e62264bcbc596802394d8a0eb64809d7' }, vm && (h(Fragment, { key: 'e4d0c6cbb175bd545c37011e8a26040e293b5078' }, h("pn-marketweb-header-top-row", { key: 'f20e51e813cd52f09a223d860e04759f9d277183', vm: vm, i18n: i18n, language: this.language ?? undefined, siteid: this.siteid ?? undefined, endpoint: this.endpoint ?? undefined, environment: this.environment ?? undefined, userToken: this.userToken, userFullname: this.userFullname, userLoggedin: this.userLoggedin, hideSiteSelector: this.hideSiteSelector, hideLanguageSelector: this.hideLanguageSelector, hideSearch: this.hideSearch, hideLogin: this.hideLogin, showProfileSelection: this.showProfileSelection, showUnifiedLogin: this.showUnifiedLogin, spaMode: this.spaMode, checkUserLoggedInStateInterval: this.checkUserLoggedInStateInterval, useMarketwebLogin: this.useMarketwebLogin, activeMenuMode: this.activeMenuMode, theme: activeTheme, navigateOnMenuToggle: this.navigateOnMenuToggle, menuToggleChangeHandler: this.onMenuToggleChange, adjustSiteSelectorUrl: (href) => this.adjustSiteSelectorUrl(href), logoUrl: logoUrl }, h("slot", { key: 'c0025425b08f233bc8ef6c9db59c516b1c2c8d05', name: "header-top-left", slot: "header-top-left" }), h("slot", { key: '822354a2c86ca56f4a7e6926492a5202e82d0d2e', name: "header-top-right-start", slot: "header-top-right-start" }), h("slot", { key: '68364a475418c6bb6baba867f9b78bc2f7cd3c92', name: "toprightend", slot: "toprightend" })), h("slot", { key: 'e49bc7c21f51abb86b05e6a986163f6b8848c425', name: "siteheader-menu-top-button" }), h("pn-marketweb-header-main-row", { key: 'a56827628a3f649546881449479df0d7721da5b2', vm: vm, i18n: i18n, market: this.market ?? undefined, language: this.language ?? undefined, siteid: this.siteid ?? undefined, hideSearch: this.hideSearch, hideLogin: this.hideLogin, hideLanguageSelector: this.hideLanguageSelector, hideSiteSelector: this.hideSiteSelector, minimizeSearch: this.minimizeSearch, activeMenuMode: this.activeMenuMode, theme: activeTheme, navigateOnMenuToggle: this.navigateOnMenuToggle, primaryItems: menuGroups.primaryItems, sharedItems: menuGroups.sharedItems, showMenuDivider: menuGroups.primaryItems.length > 0 && menuGroups.sharedItems.length > 0, userToken: this.userToken, userFullname: this.userFullname, userLoggedin: this.userLoggedin, endpoint: this.endpoint ?? undefined, environment: this.environment ?? undefined, showProfileSelection: this.showProfileSelection, showUnifiedLogin: this.showUnifiedLogin, checkUserLoggedInStateInterval: this.checkUserLoggedInStateInterval, useMarketwebLogin: this.useMarketwebLogin, spaMode: this.spaMode, menuToggleChangeHandler: this.onMenuToggleChange, mainNavRefHandler: (el) => {
293
+ this.mainNavEl = el;
294
+ }, adjustSiteSelectorUrl: (href) => this.adjustSiteSelectorUrl(href), logoUrl: logoUrl }, h("slot", { key: '624d401daf67b3af80f3708d8321f541547f3225', name: "header-bottom-button", slot: "header-bottom-button" }), h("slot", { key: '5bf770f2882a239a3a45b511af696fc87bbf861d', name: "menu-footer-cta", slot: "menu-footer-cta" })))))));
295
+ }
296
+ static get is() { return "pn-marketweb-header"; }
297
+ static get originalStyleUrls() {
298
+ return {
299
+ "$": ["pn-marketweb-header.scss"]
300
+ };
301
+ }
302
+ static get styleUrls() {
303
+ return {
304
+ "$": ["pn-marketweb-header.css"]
305
+ };
306
+ }
307
+ static get properties() {
308
+ return {
309
+ "initialActiveMenuMode": {
310
+ "type": "number",
311
+ "mutable": false,
312
+ "complexType": {
313
+ "original": "HeaderMenuMode",
314
+ "resolved": "number",
315
+ "references": {
316
+ "HeaderMenuMode": {
317
+ "location": "import",
318
+ "path": "./types/pn-marketweb-header.types",
319
+ "id": "src/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.ts::HeaderMenuMode"
320
+ }
321
+ }
322
+ },
323
+ "required": false,
324
+ "optional": false,
325
+ "docs": {
326
+ "tags": [],
327
+ "text": ""
328
+ },
329
+ "attribute": "initial-active-menu-mode",
330
+ "reflect": false,
331
+ "defaultValue": "0"
332
+ },
333
+ "menuThemes": {
334
+ "type": "string",
335
+ "mutable": false,
336
+ "complexType": {
337
+ "original": "string",
338
+ "resolved": "string",
339
+ "references": {}
340
+ },
341
+ "required": false,
342
+ "optional": true,
343
+ "docs": {
344
+ "tags": [],
345
+ "text": "Optional menu theme labels, e.g. ['Business', 'Private']. passed in as a sting via cms"
346
+ },
347
+ "attribute": "menu-themes",
348
+ "reflect": false
349
+ },
350
+ "market": {
351
+ "type": "string",
352
+ "mutable": true,
353
+ "complexType": {
354
+ "original": "MarketName | null",
355
+ "resolved": "\"com\" | \"de\" | \"dk\" | \"fi\" | \"group\" | \"no\" | \"se\" | \"tpl\"",
356
+ "references": {
357
+ "MarketName": {
358
+ "location": "import",
359
+ "path": "../../../services/pn-refined-marketweb-context/pn-refined-marketweb-context.types",
360
+ "id": "src/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.ts::MarketName"
361
+ }
362
+ }
363
+ },
364
+ "required": false,
365
+ "optional": false,
366
+ "docs": {
367
+ "tags": [],
368
+ "text": "Market to use for the header. Falls back to refined context resolution when omitted."
369
+ },
370
+ "attribute": "market",
371
+ "reflect": true,
372
+ "defaultValue": "null"
373
+ },
374
+ "language": {
375
+ "type": "string",
376
+ "mutable": true,
377
+ "complexType": {
378
+ "original": "string | null",
379
+ "resolved": "string",
380
+ "references": {}
381
+ },
382
+ "required": false,
383
+ "optional": false,
384
+ "docs": {
385
+ "tags": [],
386
+ "text": "Language to use for the header. Falls back to refined context resolution when omitted."
387
+ },
388
+ "attribute": "language",
389
+ "reflect": true,
390
+ "defaultValue": "null"
391
+ },
392
+ "environment": {
393
+ "type": "string",
394
+ "mutable": true,
395
+ "complexType": {
396
+ "original": "EnvironmentName | null",
397
+ "resolved": "\"integration\" | \"preproduction\" | \"production\"",
398
+ "references": {
399
+ "EnvironmentName": {
400
+ "location": "import",
401
+ "path": "../../../services/pn-refined-marketweb-context/pn-refined-marketweb-context.types",
402
+ "id": "src/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.ts::EnvironmentName"
403
+ }
404
+ }
405
+ },
406
+ "required": false,
407
+ "optional": false,
408
+ "docs": {
409
+ "tags": [],
410
+ "text": "Environment to use for the header. Falls back to refined context resolution when omitted."
411
+ },
412
+ "attribute": "environment",
413
+ "reflect": true,
414
+ "defaultValue": "null"
415
+ },
416
+ "endpoint": {
417
+ "type": "string",
418
+ "mutable": false,
419
+ "complexType": {
420
+ "original": "string | null",
421
+ "resolved": "string",
422
+ "references": {}
423
+ },
424
+ "required": false,
425
+ "optional": false,
426
+ "docs": {
427
+ "tags": [],
428
+ "text": "Explicit endpoint override. When omitted it is resolved from market + environment."
429
+ },
430
+ "attribute": "endpoint",
431
+ "reflect": false,
432
+ "defaultValue": "null"
433
+ },
434
+ "siteid": {
435
+ "type": "string",
436
+ "mutable": false,
437
+ "complexType": {
438
+ "original": "string | null",
439
+ "resolved": "string",
440
+ "references": {}
441
+ },
442
+ "required": false,
443
+ "optional": false,
444
+ "docs": {
445
+ "tags": [],
446
+ "text": "Current site id (guid), forwarded into the search component."
447
+ },
448
+ "attribute": "siteid",
449
+ "reflect": false,
450
+ "defaultValue": "null"
451
+ },
452
+ "pageId": {
453
+ "type": "string",
454
+ "mutable": false,
455
+ "complexType": {
456
+ "original": "string",
457
+ "resolved": "string",
458
+ "references": {}
459
+ },
460
+ "required": false,
461
+ "optional": false,
462
+ "docs": {
463
+ "tags": [],
464
+ "text": "Current page id forwarded to the header backend endpoint."
465
+ },
466
+ "attribute": "page-id",
467
+ "reflect": false,
468
+ "defaultValue": "''"
469
+ },
470
+ "userToken": {
471
+ "type": "string",
472
+ "mutable": false,
473
+ "complexType": {
474
+ "original": "string",
475
+ "resolved": "string",
476
+ "references": {}
477
+ },
478
+ "required": false,
479
+ "optional": false,
480
+ "docs": {
481
+ "tags": [],
482
+ "text": "Access token passed from backend."
483
+ },
484
+ "attribute": "user-token",
485
+ "reflect": false,
486
+ "defaultValue": "''"
487
+ },
488
+ "userFullname": {
489
+ "type": "string",
490
+ "mutable": false,
491
+ "complexType": {
492
+ "original": "string",
493
+ "resolved": "string",
494
+ "references": {}
495
+ },
496
+ "required": false,
497
+ "optional": false,
498
+ "docs": {
499
+ "tags": [],
500
+ "text": "User full name from backend."
501
+ },
502
+ "attribute": "user-fullname",
503
+ "reflect": false,
504
+ "defaultValue": "''"
505
+ },
506
+ "userLoggedin": {
507
+ "type": "boolean",
508
+ "mutable": false,
509
+ "complexType": {
510
+ "original": "boolean",
511
+ "resolved": "boolean",
512
+ "references": {}
513
+ },
514
+ "required": false,
515
+ "optional": false,
516
+ "docs": {
517
+ "tags": [],
518
+ "text": "User logged in state from backend."
519
+ },
520
+ "attribute": "user-loggedin",
521
+ "reflect": true,
522
+ "defaultValue": "false"
523
+ },
524
+ "hideSiteSelector": {
525
+ "type": "boolean",
526
+ "mutable": false,
527
+ "complexType": {
528
+ "original": "boolean",
529
+ "resolved": "boolean",
530
+ "references": {}
531
+ },
532
+ "required": false,
533
+ "optional": false,
534
+ "docs": {
535
+ "tags": [],
536
+ "text": "Hides the site selector when true."
537
+ },
538
+ "attribute": "hide-site-selector",
539
+ "reflect": true,
540
+ "defaultValue": "false"
541
+ },
542
+ "hideHomeMenuItem": {
543
+ "type": "boolean",
544
+ "mutable": false,
545
+ "complexType": {
546
+ "original": "boolean",
547
+ "resolved": "boolean",
548
+ "references": {}
549
+ },
550
+ "required": false,
551
+ "optional": false,
552
+ "docs": {
553
+ "tags": [],
554
+ "text": "Hides the generated home menu item when true."
555
+ },
556
+ "attribute": "hide-home-menu-item",
557
+ "reflect": true,
558
+ "defaultValue": "false"
559
+ },
560
+ "hideLanguageSelector": {
561
+ "type": "boolean",
562
+ "mutable": false,
563
+ "complexType": {
564
+ "original": "boolean",
565
+ "resolved": "boolean",
566
+ "references": {}
567
+ },
568
+ "required": false,
569
+ "optional": false,
570
+ "docs": {
571
+ "tags": [],
572
+ "text": "Hides the language selector when true."
573
+ },
574
+ "attribute": "hide-language-selector",
575
+ "reflect": true,
576
+ "defaultValue": "false"
577
+ },
578
+ "hideSearch": {
579
+ "type": "boolean",
580
+ "mutable": false,
581
+ "complexType": {
582
+ "original": "boolean",
583
+ "resolved": "boolean",
584
+ "references": {}
585
+ },
586
+ "required": false,
587
+ "optional": false,
588
+ "docs": {
589
+ "tags": [],
590
+ "text": "Hides search when true."
591
+ },
592
+ "attribute": "hide-search",
593
+ "reflect": true,
594
+ "defaultValue": "false"
595
+ },
596
+ "hideLogin": {
597
+ "type": "boolean",
598
+ "mutable": false,
599
+ "complexType": {
600
+ "original": "boolean",
601
+ "resolved": "boolean",
602
+ "references": {}
603
+ },
604
+ "required": false,
605
+ "optional": false,
606
+ "docs": {
607
+ "tags": [],
608
+ "text": "Hides login when true."
609
+ },
610
+ "attribute": "hide-login",
611
+ "reflect": true,
612
+ "defaultValue": "false"
613
+ },
614
+ "showProfileSelection": {
615
+ "type": "boolean",
616
+ "mutable": false,
617
+ "complexType": {
618
+ "original": "boolean",
619
+ "resolved": "boolean",
620
+ "references": {}
621
+ },
622
+ "required": false,
623
+ "optional": false,
624
+ "docs": {
625
+ "tags": [],
626
+ "text": "Enables profile selection presentation in the login component."
627
+ },
628
+ "attribute": "show-profile-selection",
629
+ "reflect": true,
630
+ "defaultValue": "false"
631
+ },
632
+ "showUnifiedLogin": {
633
+ "type": "boolean",
634
+ "mutable": false,
635
+ "complexType": {
636
+ "original": "boolean",
637
+ "resolved": "boolean",
638
+ "references": {}
639
+ },
640
+ "required": false,
641
+ "optional": false,
642
+ "docs": {
643
+ "tags": [],
644
+ "text": "Enables unified login presentation in the login component."
645
+ },
646
+ "attribute": "show-unified-login",
647
+ "reflect": false,
648
+ "defaultValue": "false"
649
+ },
650
+ "siteDomainInUrls": {
651
+ "type": "boolean",
652
+ "mutable": false,
653
+ "complexType": {
654
+ "original": "boolean",
655
+ "resolved": "boolean",
656
+ "references": {}
657
+ },
658
+ "required": false,
659
+ "optional": false,
660
+ "docs": {
661
+ "tags": [],
662
+ "text": "Adjust relative URLs against the site domain when true."
663
+ },
664
+ "attribute": "site-domain-in-urls",
665
+ "reflect": false,
666
+ "defaultValue": "false"
667
+ },
668
+ "autocompleteEndpoint": {
669
+ "type": "string",
670
+ "mutable": false,
671
+ "complexType": {
672
+ "original": "string",
673
+ "resolved": "string",
674
+ "references": {}
675
+ },
676
+ "required": false,
677
+ "optional": false,
678
+ "docs": {
679
+ "tags": [],
680
+ "text": "Autocomplete endpoint forwarded into the search view model."
681
+ },
682
+ "attribute": "autocomplete-endpoint",
683
+ "reflect": false,
684
+ "defaultValue": "''"
685
+ },
686
+ "sessionForward": {
687
+ "type": "boolean",
688
+ "mutable": false,
689
+ "complexType": {
690
+ "original": "boolean",
691
+ "resolved": "boolean",
692
+ "references": {}
693
+ },
694
+ "required": false,
695
+ "optional": false,
696
+ "docs": {
697
+ "tags": [],
698
+ "text": "Whether session forwarding should be attempted after login state changes."
699
+ },
700
+ "attribute": "session-forward",
701
+ "reflect": false,
702
+ "defaultValue": "false"
703
+ },
704
+ "cache": {
705
+ "type": "boolean",
706
+ "mutable": false,
707
+ "complexType": {
708
+ "original": "boolean",
709
+ "resolved": "boolean",
710
+ "references": {}
711
+ },
712
+ "required": false,
713
+ "optional": false,
714
+ "docs": {
715
+ "tags": [],
716
+ "text": "Enables cached requests in FetchHelper when true."
717
+ },
718
+ "attribute": "cache",
719
+ "reflect": false,
720
+ "defaultValue": "false"
721
+ },
722
+ "searchPlaceholder": {
723
+ "type": "string",
724
+ "mutable": false,
725
+ "complexType": {
726
+ "original": "string",
727
+ "resolved": "string",
728
+ "references": {}
729
+ },
730
+ "required": false,
731
+ "optional": false,
732
+ "docs": {
733
+ "tags": [],
734
+ "text": "Optional override for translated search placeholder text."
735
+ },
736
+ "attribute": "search-placeholder",
737
+ "reflect": false,
738
+ "defaultValue": "''"
739
+ },
740
+ "spaMode": {
741
+ "type": "boolean",
742
+ "mutable": false,
743
+ "complexType": {
744
+ "original": "boolean",
745
+ "resolved": "boolean",
746
+ "references": {}
747
+ },
748
+ "required": false,
749
+ "optional": false,
750
+ "docs": {
751
+ "tags": [],
752
+ "text": "When true, language selector options should not navigate directly by URL."
753
+ },
754
+ "attribute": "spa-mode",
755
+ "reflect": false,
756
+ "defaultValue": "false"
757
+ },
758
+ "checkUserLoggedInStateInterval": {
759
+ "type": "number",
760
+ "mutable": false,
761
+ "complexType": {
762
+ "original": "number",
763
+ "resolved": "number",
764
+ "references": {}
765
+ },
766
+ "required": false,
767
+ "optional": false,
768
+ "docs": {
769
+ "tags": [],
770
+ "text": "Interval forwarded to the login component for login state checks."
771
+ },
772
+ "attribute": "check-user-logged-in-state-interval",
773
+ "reflect": false,
774
+ "defaultValue": "0"
775
+ },
776
+ "useMarketwebLogin": {
777
+ "type": "boolean",
778
+ "mutable": false,
779
+ "complexType": {
780
+ "original": "boolean",
781
+ "resolved": "boolean",
782
+ "references": {}
783
+ },
784
+ "required": false,
785
+ "optional": false,
786
+ "docs": {
787
+ "tags": [],
788
+ "text": "Enables marketweb login mode in the login component."
789
+ },
790
+ "attribute": "use-marketweb-login",
791
+ "reflect": false,
792
+ "defaultValue": "false"
793
+ },
794
+ "navigateOnMenuToggle": {
795
+ "type": "boolean",
796
+ "mutable": false,
797
+ "complexType": {
798
+ "original": "boolean",
799
+ "resolved": "boolean",
800
+ "references": {}
801
+ },
802
+ "required": false,
803
+ "optional": false,
804
+ "docs": {
805
+ "tags": [],
806
+ "text": "When true, changing menu mode navigates to the selected root href."
807
+ },
808
+ "attribute": "navigate-on-menu-toggle",
809
+ "reflect": false,
810
+ "defaultValue": "true"
811
+ }
812
+ };
813
+ }
814
+ static get states() {
815
+ return {
816
+ "vm": {},
817
+ "i18n": {},
818
+ "status": {},
819
+ "minimizeSearch": {},
820
+ "loggedIn": {},
821
+ "activeMenuMode": {}
822
+ };
823
+ }
824
+ static get events() {
825
+ return [{
826
+ "method": "changeLanguage",
827
+ "name": "changeLanguage",
828
+ "bubbles": true,
829
+ "cancelable": true,
830
+ "composed": true,
831
+ "docs": {
832
+ "tags": [],
833
+ "text": "Emitted when the language changes."
834
+ },
835
+ "complexType": {
836
+ "original": "string",
837
+ "resolved": "string",
838
+ "references": {}
839
+ }
840
+ }, {
841
+ "method": "changeMarket",
842
+ "name": "changeMarket",
843
+ "bubbles": true,
844
+ "cancelable": true,
845
+ "composed": true,
846
+ "docs": {
847
+ "tags": [],
848
+ "text": "Emitted when the market changes."
849
+ },
850
+ "complexType": {
851
+ "original": "MarketName",
852
+ "resolved": "\"com\" | \"de\" | \"dk\" | \"fi\" | \"group\" | \"no\" | \"se\" | \"tpl\"",
853
+ "references": {
854
+ "MarketName": {
855
+ "location": "import",
856
+ "path": "../../../services/pn-refined-marketweb-context/pn-refined-marketweb-context.types",
857
+ "id": "src/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.ts::MarketName"
858
+ }
859
+ }
860
+ }
861
+ }];
862
+ }
863
+ static get elementRef() { return "hostElement"; }
864
+ static get watchers() {
865
+ return [{
866
+ "propName": "language",
867
+ "methodName": "onLanguageChange"
868
+ }, {
869
+ "propName": "market",
870
+ "methodName": "onMarketChange"
871
+ }, {
872
+ "propName": "environment",
873
+ "methodName": "onEnvironmentChange"
874
+ }, {
875
+ "propName": "endpoint",
876
+ "methodName": "onEndpointChange"
877
+ }, {
878
+ "propName": "pageId",
879
+ "methodName": "onPageIdChange"
880
+ }, {
881
+ "propName": "hideHomeMenuItem",
882
+ "methodName": "onPresentationInputChange"
883
+ }, {
884
+ "propName": "siteDomainInUrls",
885
+ "methodName": "onPresentationInputChange"
886
+ }, {
887
+ "propName": "autocompleteEndpoint",
888
+ "methodName": "onPresentationInputChange"
889
+ }, {
890
+ "propName": "searchPlaceholder",
891
+ "methodName": "onPresentationInputChange"
892
+ }];
893
+ }
894
+ static get listeners() {
895
+ return [{
896
+ "name": "setLanguage",
897
+ "method": "onLanguageSelectorChange",
898
+ "target": undefined,
899
+ "capture": false,
900
+ "passive": false
901
+ }, {
902
+ "name": "loginStateChange",
903
+ "method": "onLoginStateChange",
904
+ "target": undefined,
905
+ "capture": false,
906
+ "passive": false
907
+ }, {
908
+ "name": "resize",
909
+ "method": "handleResize",
910
+ "target": "window",
911
+ "capture": false,
912
+ "passive": true
913
+ }];
914
+ }
915
+ }
916
+ //# sourceMappingURL=pn-marketweb-header.js.map