@postnord/pn-marketweb-components 4.2.4 → 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 (522) 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/pn-versa-card.cjs.entry.js +1 -1
  63. package/cjs/pn-versa-card.cjs.entry.js.map +1 -1
  64. package/cjs/translations-9510f11c.js +198 -0
  65. package/cjs/translations-9510f11c.js.map +1 -0
  66. package/collection/collection-manifest.json +5 -0
  67. package/collection/components/cards/pn-versa-card/pn-versa-card.css +27 -2
  68. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.css +204 -0
  69. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.js +658 -0
  70. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.js.map +1 -0
  71. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.css +217 -0
  72. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.js +20 -0
  73. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.js.map +1 -0
  74. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.css +115 -0
  75. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.js +520 -0
  76. package/collection/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.js.map +1 -0
  77. package/collection/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.js +37 -0
  78. package/collection/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.js.map +1 -0
  79. package/collection/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.js +109 -0
  80. package/collection/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.js.map +1 -0
  81. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.css +225 -0
  82. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.js +916 -0
  83. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.js.map +1 -0
  84. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.js +638 -0
  85. package/collection/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.js.map +1 -0
  86. package/collection/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.js +180 -0
  87. package/collection/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.js.map +1 -0
  88. package/collection/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.js +2 -0
  89. package/collection/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.js.map +1 -0
  90. package/collection/components/layout-components/pn-marketweb-header/utils/header-i18n.js +37 -0
  91. package/collection/components/layout-components/pn-marketweb-header/utils/header-i18n.js.map +1 -0
  92. package/collection/components/layout-components/pn-marketweb-header/utils/header-language.js +46 -0
  93. package/collection/components/layout-components/pn-marketweb-header/utils/header-language.js.map +1 -0
  94. package/collection/components/layout-components/pn-marketweb-header/utils/header-menu.js +36 -0
  95. package/collection/components/layout-components/pn-marketweb-header/utils/header-menu.js.map +1 -0
  96. package/collection/components/layout-components/pn-marketweb-header/utils/header-theme.js +48 -0
  97. package/collection/components/layout-components/pn-marketweb-header/utils/header-theme.js.map +1 -0
  98. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js +101 -0
  99. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.js.map +1 -0
  100. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.js +63 -0
  101. package/collection/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.js.map +1 -0
  102. package/collection/components/layout-components/pn-marketweb-header/utils/header-url.js +91 -0
  103. package/collection/components/layout-components/pn-marketweb-header/utils/header-url.js.map +1 -0
  104. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-button.js +1 -1
  105. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-linklist.css +34 -12
  106. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-mypage-button.js +1 -1
  107. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login-profileselection.css +36 -15
  108. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.css +27 -13
  109. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.js +29 -4
  110. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.js.map +1 -1
  111. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-types.js.map +1 -1
  112. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-unified-login.js +1 -1
  113. package/collection/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader.js +4 -4
  114. package/collection/components/media/pn-media-block/pn-media-block.js +1 -1
  115. package/collection/components/minor/pn-app-banner/pn-app-banner.js +1 -1
  116. package/collection/components/minor/pn-marketweb-icon/pn-marketweb-icon.js +1 -1
  117. package/collection/components/minor/pn-swan/pn-swan.js +1 -1
  118. package/collection/components/minor/pn-titletag/pn-titletag.js +1 -1
  119. package/collection/components/navigation/pn-language-selector/pn-language-selector-option.css +25 -12
  120. package/collection/components/navigation/pn-language-selector/pn-language-selector-option.js +1 -1
  121. package/collection/components/navigation/pn-language-selector/pn-language-selector.css +17 -5
  122. package/collection/components/navigation/pn-language-selector/pn-language-selector.js +22 -3
  123. package/collection/components/navigation/pn-language-selector/pn-language-selector.js.map +1 -1
  124. package/collection/components/navigation/pn-mainnav/pn-mainnav-level.css +37 -17
  125. package/collection/components/navigation/pn-mainnav/pn-mainnav-level.js +2 -2
  126. package/collection/components/navigation/pn-mainnav/pn-mainnav-link.css +81 -33
  127. package/collection/components/navigation/pn-mainnav/pn-mainnav-link.js +1 -1
  128. package/collection/components/navigation/pn-mainnav/pn-mainnav-list.css +12 -2
  129. package/collection/components/navigation/pn-mainnav/pn-mainnav-list.js +1 -1
  130. package/collection/components/navigation/pn-mainnav/pn-mainnav.css +35 -22
  131. package/collection/components/navigation/pn-mainnav/pn-mainnav.js +1 -1
  132. package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.css +80 -0
  133. package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.js +147 -0
  134. package/collection/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.js.map +1 -0
  135. package/collection/components/navigation/pn-sidenav/pn-sidenav-level.js +1 -1
  136. package/collection/components/navigation/pn-sidenav/pn-sidenav-link.js +1 -1
  137. package/collection/components/navigation/pn-sidenav/pn-sidenav-togglebutton.js +1 -1
  138. package/collection/components/navigation/pn-sidenav/pn-sidenav.js +1 -1
  139. package/collection/components/navigation/pn-site-footer/pn-site-footer-col.js +1 -1
  140. package/collection/components/navigation/pn-site-footer/pn-site-footer.js +1 -1
  141. package/collection/components/navigation/pn-site-selector/pn-site-selector-item.css +16 -12
  142. package/collection/components/navigation/pn-site-selector/pn-site-selector-item.js +1 -1
  143. package/collection/components/navigation/pn-site-selector/pn-site-selector.css +15 -0
  144. package/collection/components/navigation/pn-site-selector/pn-site-selector.js +22 -3
  145. package/collection/components/navigation/pn-site-selector/pn-site-selector.js.map +1 -1
  146. package/collection/components/profile/pn-customernumber-selector/pn-customernumber-selector-option.js +1 -1
  147. package/collection/components/profile/pn-customernumber-selector/pn-customernumber-selector.js +1 -1
  148. package/collection/components/profile/pn-profile-modal/pn-profile-modal-customernumber.js +1 -1
  149. package/collection/components/profile/pn-profile-modal/pn-profile-modal-profile.js +2 -2
  150. package/collection/components/profile/pn-profile-modal/pn-profile-modal-type.js +1 -1
  151. package/collection/components/profile/pn-profile-modal/pn-profile-modal.js +1 -1
  152. package/collection/components/profile/pn-profile-selector/pn-profile-selector-option.js +1 -1
  153. package/collection/components/profile/pn-profile-selector/pn-profile-selector.js +1 -1
  154. package/collection/components/utilities/pn-breakpoints/pn-breakpoints.js +1 -1
  155. package/collection/components/widgets/pn-chat/pn-chat-message/pn-chat-message.js +1 -1
  156. package/collection/components/widgets/pn-chat/pn-chat.js +2 -2
  157. package/collection/components/widgets/pn-find-price/pn-find-price-result.js +1 -1
  158. package/collection/components/widgets/pn-find-price/pn-find-price.js +2 -2
  159. package/collection/components/widgets/pn-find-service-and-price/pn-find-service-and-price-result.js +1 -1
  160. package/collection/components/widgets/pn-find-service-and-price/pn-find-service-and-price.js +1 -1
  161. package/collection/components/widgets/pn-hero-block-international/pn-hero-block-international.js +1 -1
  162. package/collection/components/widgets/pn-level-up/pn-level-up-modal/pn-level-up-modal.js +1 -1
  163. package/collection/components/widgets/pn-level-up/pn-level-up.js +2 -2
  164. package/collection/components/widgets/pn-link-list/pn-link-list.js +1 -1
  165. package/collection/components/widgets/pn-marketweb-carousel/pn-marketweb-carousel.js +1 -1
  166. package/collection/components/widgets/pn-marketweb-table/pn-marketweb-table.js +1 -1
  167. package/collection/components/widgets/pn-pex-pricefinder/pn-pex-pricefinder.js +1 -1
  168. package/collection/components/widgets/pn-product-card/pn-product-card.js +1 -1
  169. package/collection/components/widgets/pn-product-pricelist/pn-product-pricelist-result.js +1 -1
  170. package/collection/components/widgets/pn-product-pricelist/pn-product-pricelist.js +2 -2
  171. package/collection/components/widgets/pn-product-tile/pn-product-tile-info.js +1 -1
  172. package/collection/components/widgets/pn-product-tile/pn-product-tile.js +1 -1
  173. package/collection/components/widgets/pn-proxio-findprice/pn-proxio-findprice-result.js +1 -1
  174. package/collection/components/widgets/pn-proxio-findprice/pn-proxio-findprice.js +3 -3
  175. package/collection/components/widgets/pn-proxio-pricegroup/pn-proxio-pricegroup.js +1 -1
  176. package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard-description.js +1 -1
  177. package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard-information.js +1 -1
  178. package/collection/components/widgets/pn-proxio-productcard/pn-proxio-productcard.js +1 -1
  179. package/collection/components/widgets/pn-qr-code-generator/pn-qr-code-generator.js +1 -1
  180. package/collection/components/widgets/pn-usp-promoter/pn-usp-promoter.js +1 -1
  181. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.js +105 -0
  182. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.js.map +1 -0
  183. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.js +166 -0
  184. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.js.map +1 -0
  185. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.js +2 -0
  186. package/collection/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.js.map +1 -0
  187. package/components/pn-app-banner.js +1 -1
  188. package/components/pn-breakpoints.js +1 -1
  189. package/components/pn-chat-message2.js +1 -1
  190. package/components/pn-chat.js +2 -2
  191. package/components/pn-customernumber-selector-option.js +1 -1
  192. package/components/pn-customernumber-selector.js +1 -1
  193. package/components/pn-find-price-result2.js +1 -1
  194. package/components/pn-find-price.js +2 -2
  195. package/components/pn-find-service-and-price-result2.js +1 -1
  196. package/components/pn-find-service-and-price.js +1 -1
  197. package/components/pn-hero-block-international.js +1 -1
  198. package/components/pn-language-selector-option2.js +2 -2
  199. package/components/pn-language-selector-option2.js.map +1 -1
  200. package/components/pn-language-selector2.js +4 -2
  201. package/components/pn-language-selector2.js.map +1 -1
  202. package/components/pn-level-up-modal2.js +1 -1
  203. package/components/pn-level-up.js +2 -2
  204. package/components/pn-link-list.js +1 -1
  205. package/components/pn-mainnav-level2.js +3 -3
  206. package/components/pn-mainnav-level2.js.map +1 -1
  207. package/components/pn-mainnav-link2.js +2 -2
  208. package/components/pn-mainnav-link2.js.map +1 -1
  209. package/components/pn-mainnav-list2.js +2 -2
  210. package/components/pn-mainnav-list2.js.map +1 -1
  211. package/components/pn-mainnav2.js +2 -2
  212. package/components/pn-mainnav2.js.map +1 -1
  213. package/components/pn-marketweb-carousel2.js +1 -1
  214. package/components/pn-marketweb-header-main-row.d.ts +11 -0
  215. package/components/pn-marketweb-header-main-row.js +8 -0
  216. package/components/pn-marketweb-header-main-row.js.map +1 -0
  217. package/components/pn-marketweb-header-main-row2.js +281 -0
  218. package/components/pn-marketweb-header-main-row2.js.map +1 -0
  219. package/components/pn-marketweb-header-shared.js +192 -0
  220. package/components/pn-marketweb-header-shared.js.map +1 -0
  221. package/components/pn-marketweb-header-skeleton-loader.d.ts +11 -0
  222. package/components/pn-marketweb-header-skeleton-loader.js +37 -0
  223. package/components/pn-marketweb-header-skeleton-loader.js.map +1 -0
  224. package/components/pn-marketweb-header-toggle.d.ts +11 -0
  225. package/components/pn-marketweb-header-toggle.js +8 -0
  226. package/components/pn-marketweb-header-toggle.js.map +1 -0
  227. package/components/pn-marketweb-header-toggle2.js +61 -0
  228. package/components/pn-marketweb-header-toggle2.js.map +1 -0
  229. package/components/pn-marketweb-header-top-row.d.ts +11 -0
  230. package/components/pn-marketweb-header-top-row.js +8 -0
  231. package/components/pn-marketweb-header-top-row.js.map +1 -0
  232. package/components/pn-marketweb-header-top-row2.js +238 -0
  233. package/components/pn-marketweb-header-top-row2.js.map +1 -0
  234. package/components/pn-marketweb-header.d.ts +11 -0
  235. package/components/pn-marketweb-header.js +1206 -0
  236. package/components/pn-marketweb-header.js.map +1 -0
  237. package/components/pn-marketweb-icon.js +1 -1
  238. package/components/pn-marketweb-siteheader-login-button2.js +1 -1
  239. package/components/pn-marketweb-siteheader-login-linklist2.js +1 -1
  240. package/components/pn-marketweb-siteheader-login-linklist2.js.map +1 -1
  241. package/components/pn-marketweb-siteheader-login-mypage-button.js +1 -1
  242. package/components/pn-marketweb-siteheader-login-profileselection2.js +1 -1
  243. package/components/pn-marketweb-siteheader-login-profileselection2.js.map +1 -1
  244. package/components/pn-marketweb-siteheader-login2.js +4 -2
  245. package/components/pn-marketweb-siteheader-login2.js.map +1 -1
  246. package/components/pn-marketweb-siteheader-unified-login2.js +1 -1
  247. package/components/pn-marketweb-siteheader.js +5 -197
  248. package/components/pn-marketweb-siteheader.js.map +1 -1
  249. package/components/pn-marketweb-table.js +1 -1
  250. package/components/pn-media-block.js +1 -1
  251. package/components/pn-pex-pricefinder.js +1 -1
  252. package/components/pn-product-card2.js +1 -1
  253. package/components/pn-product-pricelist-result.js +1 -1
  254. package/components/pn-product-pricelist.js +2 -2
  255. package/components/pn-product-tile-info2.js +1 -1
  256. package/components/pn-product-tile.js +1 -1
  257. package/components/pn-profile-modal-customernumber.js +1 -1
  258. package/components/pn-profile-modal-profile.js +2 -2
  259. package/components/pn-profile-modal-type.js +1 -1
  260. package/components/pn-profile-modal.js +1 -1
  261. package/components/pn-profile-selector-option.js +1 -1
  262. package/components/pn-profile-selector.js +1 -1
  263. package/components/pn-proxio-findprice-result2.js +2 -2
  264. package/components/pn-proxio-findprice.js +3 -3
  265. package/components/pn-proxio-pricegroup.js +2 -2
  266. package/components/pn-proxio-productcard-description2.js +1 -1
  267. package/components/pn-proxio-productcard-information2.js +1 -1
  268. package/components/pn-proxio-productcard2.js +1 -1
  269. package/components/pn-qr-code-generator2.js +1 -1
  270. package/components/pn-sidenav-level.js +1 -1
  271. package/components/pn-sidenav-link.js +1 -1
  272. package/components/pn-sidenav-togglebutton.js +1 -1
  273. package/components/pn-sidenav.js +1 -1
  274. package/components/pn-site-footer-col2.js +1 -1
  275. package/components/pn-site-footer2.js +1 -1
  276. package/components/pn-site-selector-item2.js +2 -2
  277. package/components/pn-site-selector-item2.js.map +1 -1
  278. package/components/pn-site-selector2.js +4 -2
  279. package/components/pn-site-selector2.js.map +1 -1
  280. package/components/pn-swan2.js +1 -1
  281. package/components/pn-titletag2.js +1 -1
  282. package/components/pn-usp-promoter.js +1 -1
  283. package/components/pn-versa-card.js +1 -1
  284. package/components/pn-versa-card.js.map +1 -1
  285. package/components/translations.js +189 -14
  286. package/components/translations.js.map +1 -1
  287. package/components/translations2.js +21 -0
  288. package/components/translations2.js.map +1 -0
  289. package/esm/header-theme-d09b64c7.js +234 -0
  290. package/esm/header-theme-d09b64c7.js.map +1 -0
  291. package/esm/index-c0a4d8bd.js +24 -16
  292. package/esm/loader.js +1 -1
  293. package/esm/pn-app-banner.entry.js +1 -1
  294. package/esm/pn-breakpoints.entry.js +1 -1
  295. package/esm/pn-chat-message_2.entry.js +2 -2
  296. package/esm/pn-chat.entry.js +2 -2
  297. package/esm/pn-customernumber-selector-option.entry.js +1 -1
  298. package/esm/pn-customernumber-selector.entry.js +1 -1
  299. package/esm/pn-find-price-result.entry.js +1 -1
  300. package/esm/pn-find-price.entry.js +2 -2
  301. package/esm/pn-find-service-and-price-result.entry.js +1 -1
  302. package/esm/pn-find-service-and-price.entry.js +1 -1
  303. package/esm/pn-hero-block-international.entry.js +1 -1
  304. package/esm/{pn-language-selector_9.entry.js → pn-language-selector_13.entry.js} +381 -22
  305. package/esm/pn-language-selector_13.entry.js.map +1 -0
  306. package/esm/pn-level-up-modal.entry.js +1 -1
  307. package/esm/pn-level-up.entry.js +2 -2
  308. package/esm/pn-link-list.entry.js +1 -1
  309. package/esm/pn-market-web-components.js +1 -1
  310. package/esm/pn-marketweb-header-main-row_2.entry.js +217 -0
  311. package/esm/pn-marketweb-header-main-row_2.entry.js.map +1 -0
  312. package/esm/pn-marketweb-header-skeleton-loader.entry.js +19 -0
  313. package/esm/pn-marketweb-header-skeleton-loader.entry.js.map +1 -0
  314. package/esm/pn-marketweb-header-toggle.entry.js +42 -0
  315. package/esm/pn-marketweb-header-toggle.entry.js.map +1 -0
  316. package/esm/pn-marketweb-header.entry.js +1039 -0
  317. package/esm/pn-marketweb-header.entry.js.map +1 -0
  318. package/esm/pn-marketweb-icon.entry.js +1 -1
  319. package/esm/{pn-marketweb-siteheader-login-linklist.entry.js → pn-marketweb-siteheader-login-button_2.entry.js} +44 -3
  320. package/esm/pn-marketweb-siteheader-login-button_2.entry.js.map +1 -0
  321. package/esm/pn-marketweb-siteheader-login-mypage-button.entry.js +1 -1
  322. package/esm/pn-marketweb-siteheader.entry.js +5 -197
  323. package/esm/pn-marketweb-siteheader.entry.js.map +1 -1
  324. package/esm/pn-marketweb-table.entry.js +1 -1
  325. package/esm/pn-media-block.entry.js +1 -1
  326. package/esm/pn-pex-pricefinder.entry.js +1 -1
  327. package/esm/pn-product-card_3.entry.js +1 -1
  328. package/esm/pn-product-pricelist-result.entry.js +1 -1
  329. package/esm/pn-product-pricelist.entry.js +2 -2
  330. package/esm/pn-product-tile-info_2.entry.js +1 -1
  331. package/esm/pn-product-tile.entry.js +1 -1
  332. package/esm/pn-profile-modal-customernumber.entry.js +1 -1
  333. package/esm/pn-profile-modal-profile.entry.js +2 -2
  334. package/esm/pn-profile-modal-type.entry.js +1 -1
  335. package/esm/pn-profile-modal.entry.js +1 -1
  336. package/esm/pn-profile-selector-option.entry.js +1 -1
  337. package/esm/pn-profile-selector.entry.js +1 -1
  338. package/esm/pn-proxio-findprice-result.entry.js +1 -1
  339. package/esm/pn-proxio-findprice.entry.js +3 -3
  340. package/esm/pn-proxio-pricegroup.entry.js +1 -1
  341. package/esm/pn-proxio-productcard_4.entry.js +3 -3
  342. package/esm/pn-qr-code-generator.entry.js +1 -1
  343. package/esm/pn-sidenav-level.entry.js +1 -1
  344. package/esm/pn-sidenav-link.entry.js +1 -1
  345. package/esm/pn-sidenav-togglebutton.entry.js +1 -1
  346. package/esm/pn-sidenav.entry.js +1 -1
  347. package/esm/pn-site-footer_3.entry.js +3 -3
  348. package/esm/pn-titletag.entry.js +1 -1
  349. package/esm/pn-usp-promoter.entry.js +1 -1
  350. package/esm/pn-versa-card.entry.js +1 -1
  351. package/esm/pn-versa-card.entry.js.map +1 -1
  352. package/esm/translations-d2f5804e.js +196 -0
  353. package/esm/translations-d2f5804e.js.map +1 -0
  354. package/package.json +1 -1
  355. package/pn-market-web-components/{p-4a164ef8.entry.js → p-03728b0b.entry.js} +2 -2
  356. package/pn-market-web-components/p-04f51418.js +2 -0
  357. package/pn-market-web-components/p-04f51418.js.map +1 -0
  358. package/pn-market-web-components/{p-e43a36e0.entry.js → p-067c1c2f.entry.js} +2 -2
  359. package/pn-market-web-components/p-16570ed2.entry.js +2 -0
  360. package/pn-market-web-components/p-16570ed2.entry.js.map +1 -0
  361. package/pn-market-web-components/{p-2616cdc1.entry.js → p-191c8cfc.entry.js} +2 -2
  362. package/pn-market-web-components/{p-ca003c1f.entry.js → p-1a91c313.entry.js} +2 -2
  363. package/pn-market-web-components/{p-ab1e3dc2.entry.js → p-1f8304be.entry.js} +2 -2
  364. package/pn-market-web-components/{p-a3f601cb.entry.js → p-24ffac0a.entry.js} +2 -2
  365. package/pn-market-web-components/p-3239c36b.entry.js +2 -0
  366. package/pn-market-web-components/p-3239c36b.entry.js.map +1 -0
  367. package/pn-market-web-components/{p-12cafd55.entry.js → p-3aa74418.entry.js} +2 -2
  368. package/pn-market-web-components/p-3d27faee.entry.js +2 -0
  369. package/pn-market-web-components/{p-9d0ca27b.entry.js.map → p-3d27faee.entry.js.map} +1 -1
  370. package/pn-market-web-components/p-3e25f431.entry.js +2 -0
  371. package/pn-market-web-components/p-3e25f431.entry.js.map +1 -0
  372. package/pn-market-web-components/{p-64f6691d.entry.js → p-42da7c5f.entry.js} +2 -2
  373. package/pn-market-web-components/{p-f0d423d0.entry.js → p-43748ca2.entry.js} +2 -2
  374. package/pn-market-web-components/{p-1c644b91.entry.js → p-466958a8.entry.js} +2 -2
  375. package/pn-market-web-components/{p-150da889.entry.js → p-4ab53d5d.entry.js} +2 -2
  376. package/pn-market-web-components/{p-118fe47d.entry.js → p-4d595345.entry.js} +2 -2
  377. package/pn-market-web-components/{p-0f6f715b.entry.js → p-4dac1980.entry.js} +2 -2
  378. package/pn-market-web-components/{p-a13f1f73.entry.js → p-4fcce83d.entry.js} +2 -2
  379. package/pn-market-web-components/{p-89fbca3b.entry.js → p-5a51d0b0.entry.js} +2 -2
  380. package/pn-market-web-components/{p-f4d2d0d3.entry.js → p-61346425.entry.js} +2 -2
  381. package/pn-market-web-components/{p-6e693269.entry.js → p-6b557670.entry.js} +2 -2
  382. package/pn-market-web-components/{p-e6d6a752.entry.js → p-70a71854.entry.js} +2 -2
  383. package/pn-market-web-components/p-75311d67.js +2 -0
  384. package/pn-market-web-components/p-75311d67.js.map +1 -0
  385. package/pn-market-web-components/p-756d8d95.entry.js +2 -0
  386. package/pn-market-web-components/p-756d8d95.entry.js.map +1 -0
  387. package/pn-market-web-components/{p-c0315c45.entry.js → p-76fb0c21.entry.js} +2 -2
  388. package/pn-market-web-components/{p-b2b2bae0.entry.js → p-81210644.entry.js} +2 -2
  389. package/pn-market-web-components/p-81e4d75b.entry.js +2 -0
  390. package/pn-market-web-components/p-81e4d75b.entry.js.map +1 -0
  391. package/pn-market-web-components/{p-d0f27361.entry.js → p-8382794b.entry.js} +2 -2
  392. package/pn-market-web-components/{p-8f25176b.entry.js → p-8519e39e.entry.js} +2 -2
  393. package/pn-market-web-components/p-8c26c1f2.entry.js +2 -0
  394. package/pn-market-web-components/p-8c26c1f2.entry.js.map +1 -0
  395. package/pn-market-web-components/{p-461c8792.entry.js → p-92b6477c.entry.js} +2 -2
  396. package/pn-market-web-components/{p-0d4d9d90.entry.js → p-9eab8192.entry.js} +2 -2
  397. package/pn-market-web-components/{p-40e632cc.entry.js → p-a3beee11.entry.js} +2 -2
  398. package/pn-market-web-components/{p-01fbf1ce.entry.js → p-a6935dc2.entry.js} +2 -2
  399. package/pn-market-web-components/{p-af646091.entry.js → p-a6dd3e4f.entry.js} +2 -2
  400. package/pn-market-web-components/{p-6d77e747.entry.js → p-af89c95a.entry.js} +2 -2
  401. package/pn-market-web-components/p-b318ff19.entry.js +2 -0
  402. package/pn-market-web-components/{p-0700cb4c.entry.js.map → p-b318ff19.entry.js.map} +1 -1
  403. package/pn-market-web-components/{p-c89f3d6b.entry.js → p-ba14b0ef.entry.js} +2 -2
  404. package/pn-market-web-components/{p-c7965104.entry.js → p-ba680948.entry.js} +2 -2
  405. package/pn-market-web-components/{p-11c6e458.entry.js → p-ba75bfdb.entry.js} +2 -2
  406. package/pn-market-web-components/{p-4149e715.entry.js → p-c186ec41.entry.js} +2 -2
  407. package/pn-market-web-components/{p-66c0c8dc.entry.js → p-c38707f9.entry.js} +2 -2
  408. package/pn-market-web-components/{p-671a8129.entry.js → p-c89cdd5a.entry.js} +2 -2
  409. package/pn-market-web-components/{p-4d848e18.entry.js → p-e8cd1608.entry.js} +2 -2
  410. package/pn-market-web-components/{p-4517a3d4.entry.js → p-ef090656.entry.js} +2 -2
  411. package/pn-market-web-components/p-f23ed5d2.entry.js +2 -0
  412. package/pn-market-web-components/p-f23ed5d2.entry.js.map +1 -0
  413. package/pn-market-web-components/{p-bd8ec517.entry.js → p-f3b4c13d.entry.js} +2 -2
  414. package/pn-market-web-components/{p-ff38b9a5.entry.js → p-f710445f.entry.js} +2 -2
  415. package/pn-market-web-components/{p-2e585ed5.entry.js → p-fcefe4a4.entry.js} +2 -2
  416. package/pn-market-web-components/p-fded22b7.entry.js +2 -0
  417. package/pn-market-web-components/p-fded22b7.entry.js.map +1 -0
  418. package/pn-market-web-components/{p-32bd2ff8.entry.js → p-ff6118f8.entry.js} +2 -2
  419. package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
  420. package/pn-market-web-components/pn-market-web-components.esm.js.map +1 -1
  421. package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-main-row.d.ts +40 -0
  422. package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-skeleton-loader.d.ts +3 -0
  423. package/types/components/layout-components/pn-marketweb-header/components/pn-marketweb-header-top-row.d.ts +30 -0
  424. package/types/components/layout-components/pn-marketweb-header/components/shared/pn-marketweb-header-shared.d.ts +48 -0
  425. package/types/components/layout-components/pn-marketweb-header/mapper/pn-marketweb-header.mapper.d.ts +34 -0
  426. package/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.d.ts +121 -0
  427. package/types/components/layout-components/pn-marketweb-header/pn-marketweb-header.stories.d.ts +99 -0
  428. package/types/components/layout-components/pn-marketweb-header/services/pn-marketweb-header.service.d.ts +108 -0
  429. package/types/components/layout-components/pn-marketweb-header/types/pn-marketweb-header.types.d.ts +103 -0
  430. package/types/components/layout-components/pn-marketweb-header/utils/header-i18n.d.ts +16 -0
  431. package/types/components/layout-components/pn-marketweb-header/utils/header-language.d.ts +20 -0
  432. package/types/components/layout-components/pn-marketweb-header/utils/header-menu.d.ts +16 -0
  433. package/types/components/layout-components/pn-marketweb-header/utils/header-theme.d.ts +6 -0
  434. package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.d.ts +49 -0
  435. package/types/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.storage.d.ts +25 -0
  436. package/types/components/layout-components/pn-marketweb-header/utils/header-url.d.ts +41 -0
  437. package/types/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-login.d.ts +2 -0
  438. package/types/components/layout-components/pn-marketweb-siteheader/pn-marketweb-siteheader-types.d.ts +1 -0
  439. package/types/components/navigation/pn-language-selector/pn-language-selector.d.ts +1 -0
  440. package/types/components/navigation/pn-marketweb-header-toggle/pn-marketweb-header-toggle.d.ts +25 -0
  441. package/types/components/navigation/pn-site-selector/pn-site-selector.d.ts +1 -0
  442. package/types/components/widgets/pn-proxio-pricegroup/pn-proxio-pricegroup.d.ts +1 -1
  443. package/types/components.d.ts +532 -2
  444. package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.constants.d.ts +7 -0
  445. package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.service.d.ts +24 -0
  446. package/types/services/pn-refined-marketweb-context/pn-refined-marketweb-context.types.d.ts +16 -0
  447. package/umd/pn-marketweb-init.js +1 -1
  448. package/umd/pn-marketweb-salesforce.js +1 -1
  449. package/vscode-data.json +421 -0
  450. package/cjs/pn-language-selector_9.cjs.entry.js +0 -1156
  451. package/cjs/pn-language-selector_9.cjs.entry.js.map +0 -1
  452. package/cjs/pn-mainnav-link.cjs.entry.js +0 -45
  453. package/cjs/pn-mainnav-link.cjs.entry.js.map +0 -1
  454. package/cjs/pn-mainnav-store-13aaa243.js +0 -22
  455. package/cjs/pn-mainnav-store-13aaa243.js.map +0 -1
  456. package/cjs/pn-marketweb-siteheader-login-button_4.cjs.entry.js +0 -366
  457. package/cjs/pn-marketweb-siteheader-login-button_4.cjs.entry.js.map +0 -1
  458. package/cjs/pn-marketweb-siteheader-login-linklist.cjs.entry.js.map +0 -1
  459. package/esm/pn-language-selector_9.entry.js.map +0 -1
  460. package/esm/pn-mainnav-link.entry.js +0 -41
  461. package/esm/pn-mainnav-link.entry.js.map +0 -1
  462. package/esm/pn-mainnav-store-c98d831e.js +0 -19
  463. package/esm/pn-mainnav-store-c98d831e.js.map +0 -1
  464. package/esm/pn-marketweb-siteheader-login-button_4.entry.js +0 -359
  465. package/esm/pn-marketweb-siteheader-login-button_4.entry.js.map +0 -1
  466. package/esm/pn-marketweb-siteheader-login-linklist.entry.js.map +0 -1
  467. package/pn-market-web-components/p-022780ab.entry.js +0 -2
  468. package/pn-market-web-components/p-022780ab.entry.js.map +0 -1
  469. package/pn-market-web-components/p-0700cb4c.entry.js +0 -2
  470. package/pn-market-web-components/p-3c69298b.entry.js +0 -2
  471. package/pn-market-web-components/p-3c69298b.entry.js.map +0 -1
  472. package/pn-market-web-components/p-4bc6d49f.entry.js +0 -2
  473. package/pn-market-web-components/p-4bc6d49f.entry.js.map +0 -1
  474. package/pn-market-web-components/p-4c8bda8f.entry.js +0 -2
  475. package/pn-market-web-components/p-4c8bda8f.entry.js.map +0 -1
  476. package/pn-market-web-components/p-5090bb1d.entry.js +0 -2
  477. package/pn-market-web-components/p-5090bb1d.entry.js.map +0 -1
  478. package/pn-market-web-components/p-9d0ca27b.entry.js +0 -2
  479. package/pn-market-web-components/p-a30de538.entry.js +0 -2
  480. package/pn-market-web-components/p-a30de538.entry.js.map +0 -1
  481. package/pn-market-web-components/p-e3b2486a.js +0 -2
  482. package/pn-market-web-components/p-e3b2486a.js.map +0 -1
  483. /package/pn-market-web-components/{p-4a164ef8.entry.js.map → p-03728b0b.entry.js.map} +0 -0
  484. /package/pn-market-web-components/{p-e43a36e0.entry.js.map → p-067c1c2f.entry.js.map} +0 -0
  485. /package/pn-market-web-components/{p-2616cdc1.entry.js.map → p-191c8cfc.entry.js.map} +0 -0
  486. /package/pn-market-web-components/{p-ca003c1f.entry.js.map → p-1a91c313.entry.js.map} +0 -0
  487. /package/pn-market-web-components/{p-ab1e3dc2.entry.js.map → p-1f8304be.entry.js.map} +0 -0
  488. /package/pn-market-web-components/{p-a3f601cb.entry.js.map → p-24ffac0a.entry.js.map} +0 -0
  489. /package/pn-market-web-components/{p-12cafd55.entry.js.map → p-3aa74418.entry.js.map} +0 -0
  490. /package/pn-market-web-components/{p-64f6691d.entry.js.map → p-42da7c5f.entry.js.map} +0 -0
  491. /package/pn-market-web-components/{p-f0d423d0.entry.js.map → p-43748ca2.entry.js.map} +0 -0
  492. /package/pn-market-web-components/{p-1c644b91.entry.js.map → p-466958a8.entry.js.map} +0 -0
  493. /package/pn-market-web-components/{p-150da889.entry.js.map → p-4ab53d5d.entry.js.map} +0 -0
  494. /package/pn-market-web-components/{p-118fe47d.entry.js.map → p-4d595345.entry.js.map} +0 -0
  495. /package/pn-market-web-components/{p-0f6f715b.entry.js.map → p-4dac1980.entry.js.map} +0 -0
  496. /package/pn-market-web-components/{p-a13f1f73.entry.js.map → p-4fcce83d.entry.js.map} +0 -0
  497. /package/pn-market-web-components/{p-89fbca3b.entry.js.map → p-5a51d0b0.entry.js.map} +0 -0
  498. /package/pn-market-web-components/{p-f4d2d0d3.entry.js.map → p-61346425.entry.js.map} +0 -0
  499. /package/pn-market-web-components/{p-6e693269.entry.js.map → p-6b557670.entry.js.map} +0 -0
  500. /package/pn-market-web-components/{p-e6d6a752.entry.js.map → p-70a71854.entry.js.map} +0 -0
  501. /package/pn-market-web-components/{p-c0315c45.entry.js.map → p-76fb0c21.entry.js.map} +0 -0
  502. /package/pn-market-web-components/{p-b2b2bae0.entry.js.map → p-81210644.entry.js.map} +0 -0
  503. /package/pn-market-web-components/{p-d0f27361.entry.js.map → p-8382794b.entry.js.map} +0 -0
  504. /package/pn-market-web-components/{p-8f25176b.entry.js.map → p-8519e39e.entry.js.map} +0 -0
  505. /package/pn-market-web-components/{p-461c8792.entry.js.map → p-92b6477c.entry.js.map} +0 -0
  506. /package/pn-market-web-components/{p-0d4d9d90.entry.js.map → p-9eab8192.entry.js.map} +0 -0
  507. /package/pn-market-web-components/{p-40e632cc.entry.js.map → p-a3beee11.entry.js.map} +0 -0
  508. /package/pn-market-web-components/{p-01fbf1ce.entry.js.map → p-a6935dc2.entry.js.map} +0 -0
  509. /package/pn-market-web-components/{p-af646091.entry.js.map → p-a6dd3e4f.entry.js.map} +0 -0
  510. /package/pn-market-web-components/{p-6d77e747.entry.js.map → p-af89c95a.entry.js.map} +0 -0
  511. /package/pn-market-web-components/{p-c89f3d6b.entry.js.map → p-ba14b0ef.entry.js.map} +0 -0
  512. /package/pn-market-web-components/{p-c7965104.entry.js.map → p-ba680948.entry.js.map} +0 -0
  513. /package/pn-market-web-components/{p-11c6e458.entry.js.map → p-ba75bfdb.entry.js.map} +0 -0
  514. /package/pn-market-web-components/{p-4149e715.entry.js.map → p-c186ec41.entry.js.map} +0 -0
  515. /package/pn-market-web-components/{p-66c0c8dc.entry.js.map → p-c38707f9.entry.js.map} +0 -0
  516. /package/pn-market-web-components/{p-671a8129.entry.js.map → p-c89cdd5a.entry.js.map} +0 -0
  517. /package/pn-market-web-components/{p-4d848e18.entry.js.map → p-e8cd1608.entry.js.map} +0 -0
  518. /package/pn-market-web-components/{p-4517a3d4.entry.js.map → p-ef090656.entry.js.map} +0 -0
  519. /package/pn-market-web-components/{p-bd8ec517.entry.js.map → p-f3b4c13d.entry.js.map} +0 -0
  520. /package/pn-market-web-components/{p-ff38b9a5.entry.js.map → p-f710445f.entry.js.map} +0 -0
  521. /package/pn-market-web-components/{p-2e585ed5.entry.js.map → p-fcefe4a4.entry.js.map} +0 -0
  522. /package/pn-market-web-components/{p-32bd2ff8.entry.js.map → p-ff6118f8.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"pn-versa-card.entry.js","mappings":"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","names":[],"sources":["src/components/cards/pn-versa-card/pn-versa-card.scss?tag=pn-versa-card","src/components/cards/pn-versa-card/pn-versa-card.tsx"],"sourcesContent":["@import '../../../globals/main.scss';\n\n// -----------------------------------------------------------------------------\n// SCSS tokens\n// Internal layout / implementation constants\n// -----------------------------------------------------------------------------\n$versa-card-radius: rem16(16px);\n$versa-card-gap: rem16(8px);\n$versa-card-content-gap: rem16(16px);\n$versa-card-content-padding-bottom: rem16(16px);\n$versa-card-text-max-width: rem16(700px);\n$versa-card-cover-padding: rem16(24px);\n$versa-card-horizontal-gap: rem16(32px);\n$versa-card-horizontal-padding: rem16(24px);\n$versa-card-horizontal-padding-lg: rem16(32px);\n$versa-card-sticky-top: rem16(16px);\n\n$versa-card-meta-margin-bottom: rem16(4px);\n$versa-card-cta-gap: rem16(16px);\n$versa-card-cta-min-height: rem16(48px);\n$versa-card-rounded-image-max-width: rem16(120px);\n\n$versa-card-cover-overlay-rgb: rgb(13, 35, 75);\n$versa-card-cover-text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8),\n 0 4px 12px rgba(0, 0, 0, 0.5);\n\n$versa-card-cta-icon-offset: -0.3rem;\n$versa-card-cta-transition: 0.3s ease-in-out;\n\n// -----------------------------------------------------------------------------\n// Root / design tokens\n// CSS variables are kept for styling + contextual overrides\n// -----------------------------------------------------------------------------\npn-versa-card {\n display: flex;\n width: 100%;\n height: 100%;\n\n --versa-card-bg: transparent;\n --versa-card-heading-color: inherit;\n --versa-card-text-color: inherit;\n --versa-card-blockquote-border-color: inherit;\n --versa-link-color: #{$blue700};\n\n --versa-card-padding: #{rem16(16px)};\n --versa-card-heading-size: #{rem16(24px)};\n --versa-card-preamble-size: #{rem16(18px)};\n --versa-card-label-size: #{rem16(12px)};\n\n --rte-text-color: var(--versa-card-text-color);\n --rte-heading-color: var(--versa-card-heading-color);\n --rte-blockquote-border-color: var(--versa-card-blockquote-border-color);\n --rte-image-radius: #{$versa-card-radius};\n\n .pn-versa-card-label {\n display: block;\n font-size: var(--versa-card-label-size);\n text-transform: uppercase;\n margin: 0 0 $versa-card-meta-margin-bottom 0;\n }\n\n .pn-versa-card-heading {\n font-size: var(--versa-card-heading-size);\n margin: 0 0 $versa-card-meta-margin-bottom 0;\n color: var(--versa-card-heading-color);\n }\n\n .pn-versa-card-preamble {\n font-size: var(--versa-card-preamble-size);\n margin: 0 0 $versa-card-meta-margin-bottom 0;\n }\n}\n\n// -----------------------------------------------------------------------------\n// Base structure\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n gap: $versa-card-gap;\n position: relative;\n\n .pn-versa-card-imageWrapper {\n\n [slot='image'],\n [slot='image'] picture,\n [slot='image'] picture img {\n display: block;\n width: 100%;\n height: 100%;\n }\n\n [slot='image'] picture img {\n border-radius: $versa-card-radius;\n object-fit: cover;\n }\n }\n\n .pn-versa-card-content { \n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n width:100%;\n max-width: 100%;\n gap: $versa-card-content-gap;\n padding-bottom: $versa-card-content-padding-bottom;\n\n --pn-link-current-color: var(--versa-link-color);\n --rte-link-color: var(--pn-link-current-color);\n\n .pn-versa-card-textContent {\n display: flex;\n flex-direction: column;\n color: var(--versa-card-text-color);\n max-width: $versa-card-text-max-width;\n width:100%;\n margin:0 auto;\n }\n\n .pn-versa-card-linkwrapper {\n display: flex;\n align-items: center;\n min-height: $versa-card-cta-min-height;\n width: 100%;\n\n [slot='cta'] {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: center;\n gap: $versa-card-cta-gap;\n width: 100%;\n\n a {\n margin-bottom: 0;\n }\n\n pn-button[appearance='light'] {\n color: unset;\n }\n\n a:not(.pn-button) {\n color: var(--pn-link-current-color);\n text-decoration: none;\n font-weight: 400;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n a.versa-card-cta-link-animated pn-icon svg path {\n fill: var(--pn-link-current-color);\n }\n }\n }\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// Modifiers (visual / state)\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card-hasBg {\n position: relative;\n padding: var(--versa-card-padding);\n border-radius: $versa-card-radius;\n background-color: transparent;\n\n &::before {\n content: '';\n position: absolute;\n inset: 0;\n background-color: var(--versa-card-bg);\n border-radius: inherit;\n z-index: 0;\n pointer-events: none;\n opacity: 1;\n }\n\n >* {\n position: relative;\n z-index: 1;\n }\n\n .pn-versa-card-content {\n padding-bottom: 0;\n }\n\n &.pn-versa-card-transparentBackground::before {\n opacity: 0.9;\n }\n }\n\n .pn-versa-card-hasImageCover {\n padding: 0;\n\n .pn-versa-card-imageWrapper {\n height: 100%;\n margin-bottom: 0;\n\n [slot='image'] picture img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n }\n\n &.pn-versa-card-hasImageCoverText {\n --pn-versa-hover-overlay-alpha: var(--pn-versa-opacity, 0.85);\n\n .pn-versa-card-imageWrapper {\n position: relative;\n height: 100%;\n\n &::before,\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: $versa-card-radius;\n pointer-events: none;\n }\n\n &::before {\n background: radial-gradient(circle,\n rgba($versa-card-cover-overlay-rgb, 0.8) 7%,\n rgba($versa-card-cover-overlay-rgb, 0) 100%);\n z-index: 1;\n }\n\n &::after {\n background-color: rgba($versa-card-cover-overlay-rgb, var(--pn-versa-hover-overlay-alpha));\n opacity: 0;\n transition: opacity 1s;\n z-index: 2;\n }\n\n [slot='image'] picture img {\n position: relative;\n z-index: 0;\n }\n }\n\n .pn-versa-card-content {\n position: absolute;\n inset: 0;\n z-index: 3;\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n padding: $versa-card-cover-padding;\n max-width: unset;\n\n color: #{$white};\n text-shadow: $versa-card-cover-text-shadow;\n\n --pn-link-current-color: #{$white};\n --rte-text-color: #{$white};\n --rte-heading-color: #{$white};\n --rte-blockquote-text-color: #{$white};\n --rte-blockquote-border-color: rgba(255, 255, 255, 0.8);\n --rte-quote-author-color: #{$white};\n --rte-quote-author-bg: rgba(255, 255, 255, 0.16);\n\n a {\n color: var(--pn-link-current-color);\n text-shadow: none;\n }\n\n pn-button[appearance='light'] a {\n color: $blue700;\n }\n\n .pn-versa-card-linkwrapper {\n [slot='cta'] {\n a.versa-card-cta-link-animated pn-icon svg path {\n fill: var(--pn-link-current-color);\n }\n }\n }\n }\n\n &:hover .pn-versa-card-imageWrapper::after {\n opacity: 1;\n }\n }\n }\n\n .pn-versa-card-hasRoundedImage {\n .pn-versa-card-imageWrapper {\n width: auto;\n height: auto;\n\n [slot='image'] picture img {\n aspect-ratio: 1 / 1;\n width: 100%;\n height: 100%;\n max-width: $versa-card-rounded-image-max-width;\n border-radius: 50%;\n }\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// Layout + alignment\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card-horizontal {\n flex-direction: column;\n\n &.pn-versa-card-imageGrow {\n .pn-versa-card-imageWrapper {\n [slot='image'] picture img {\n height: 100%;\n }\n }\n }\n }\n\n .pn-versa-card-center {\n .pn-versa-card-imageWrapper {\n align-self: center;\n }\n\n .pn-versa-card-content {\n align-items: center;\n text-align: center;\n\n .pn-versa-card-linkwrapper {\n [slot='cta'] {\n justify-content: center;\n }\n }\n }\n }\n \n .pn-versa-card-alignMiddle { \n \n justify-content: center;\n\n \n .pn-versa-card-content { \n height: auto;\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// Theme / colors\n// -----------------------------------------------------------------------------\npn-versa-card {\n &[data-card-color='white'] {\n --versa-card-bg: #{$white};\n }\n\n &[data-card-color='blue25'] {\n --versa-card-bg: #{$blue25};\n --versa-card-blockquote-border-color: #{$blue400};\n }\n\n &[data-card-color='blue50'] {\n --versa-card-bg: #{$blue50};\n --versa-card-blockquote-border-color: #{$blue400};\n }\n\n &[data-card-color='blue400'] {\n --versa-card-bg: #{$blue400};\n }\n\n &[data-card-color='blue900'] {\n --versa-card-bg: #{$blue900};\n --versa-card-heading-color: #{$blue200};\n --versa-card-text-color: #{$white};\n --versa-card-blockquote-border-color: #{$white};\n --versa-link-color: #{$white};\n }\n\n &[data-card-color='coral25'] {\n --versa-card-bg: #{$coral25};\n --versa-card-blockquote-border-color: #{$coral400};\n }\n\n &[data-card-color='coral50'] {\n --versa-card-bg: #{$coral50};\n --versa-card-blockquote-border-color: #{$coral400};\n }\n\n &[data-card-color='green25'] {\n --versa-card-bg: #{$green25};\n --versa-card-blockquote-border-color: #{$green400};\n }\n\n &[data-card-color='green50'] {\n --versa-card-bg: #{$green50};\n --versa-card-blockquote-border-color: #{$green400};\n }\n}\n\n// -----------------------------------------------------------------------------\n// Responsive\n// -----------------------------------------------------------------------------\n@media (min-width: 600px) {\n pn-versa-card {\n .pn-versa-card-horizontal {\n flex-direction: row;\n gap: $versa-card-horizontal-gap;\n\n .pn-versa-card-imageWrapper,\n .pn-versa-card-content {\n flex: 1;\n }\n\n .pn-versa-card-imageWrapper {\n height: auto;\n\n [slot='image'] picture img {\n height: auto;\n position: sticky;\n top: $versa-card-sticky-top;\n }\n }\n\n .pn-versa-card-content {\n width: 50%;\n box-sizing: border-box;\n justify-content: flex-start;\n }\n\n &.pn-versa-card-hasBg {\n padding: $versa-card-horizontal-padding;\n }\n\n &.pn-versa-card-horizontal--imgRight {\n flex-direction: row-reverse;\n }\n\n &.pn-versa-card-imageGrow {\n .pn-versa-card-imageWrapper {\n height: 100%;\n }\n }\n\n &.pn-versa-card-center {\n .pn-versa-card-imageWrapper {\n align-self: auto;\n }\n\n .pn-versa-card-content {\n align-items: stretch;\n text-align: center;\n\n .pn-versa-card-textContent,\n .pn-versa-card-linkwrapper {\n align-self: center;\n }\n\n .pn-versa-card-linkwrapper {\n [slot='cta'] {\n justify-content: center;\n }\n }\n }\n }\n\n &.pn-versa-card-alignMiddle {\n .pn-versa-card-content { \n justify-content: center; //overrides mobile alignMiddle which sets justify-content to space-between\n }\n }\n\n &.pn-versa-card-hasRoundedImage {\n .pn-versa-card-imageWrapper {\n width: 50%;\n\n [slot='image'] picture img {\n max-width: unset;\n }\n }\n }\n }\n }\n}\n\n@media (min-width: 1440px) {\n pn-versa-card {\n .pn-versa-card-horizontal.pn-versa-card-hasBg {\n padding: $versa-card-horizontal-padding-lg;\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// CTA animation\n// -----------------------------------------------------------------------------\npn-versa-card {\n .versa-card-cta-link-animated {\n pn-icon {\n position: relative;\n left: $versa-card-cta-icon-offset;\n transition: $versa-card-cta-transition;\n }\n\n &:hover pn-icon {\n left: 0;\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// RTE\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card-RTEtext {\n [slot='rte'] {\n @include shared-rte;\n\n .pn-quote-card__section {\n max-width: none !important;\n background-color: transparent;\n }\n\n .quoteblock-section .pn-quote-card__section .pn-quote-card__quote {\n border: none !important;\n padding-left: 0 !important;\n }\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// CMS Width Overrides\n// -----------------------------------------------------------------------------\n.onethirdwidth {\n pn-versa-card {\n --rte-forms-spacing: #{rem16(12px)};\n }\n}\n\n@media (min-width: 992px) {\n .onequarterwidth {\n pn-versa-card {\n --versa-card-padding: #{rem16(8px)};\n --versa-card-heading-size: #{rem16(20px)};\n --versa-card-preamble-size: #{rem16(17px)};\n --versa-card-label-size: #{rem16(11px)};\n\n --rte-h2-size: #{rem16(20px)};\n --rte-h3-size: #{rem16(18px)};\n --rte-h4-size: #{rem16(16px)};\n }\n }\n\n .halfwidth,\n .fullwidth {\n pn-versa-card {\n --rte-blockquote-margin: #{rem16(24px)} 0;\n }\n }\n}","import { HeadingTag } from '@/globals/HeadingTag';\nimport {\n Component,\n Element,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\n\n/** A short description about `pn-versa-card` */\n@Component({\n tag: 'pn-versa-card',\n styleUrl: 'pn-versa-card.scss',\n})\nexport class PnVersaCard {\n\n @Element() hostElement: HTMLElement;\n\n @Prop() label?: string;\n @Prop() heading?: string;\n @Prop() preamble?: string;\n @Prop() imageGrow = false;\n\n // Layout / modifiers\n @Prop() horizontal = false;\n @Prop() imgAlignment?: 'left' | 'right' = 'left';\n @Prop() hasImageCover = false;\n @Prop() alignMiddle = false;\n @Prop() center = false;\n\n @Prop() roundImage = false;\n @Prop() headingLevel: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' = 'h3';\n\n @Prop() opacity: number = 90;\n @Prop() transparentBackground = false;\n\n private cx(parts: Array<string | false | null | undefined>) {\n return parts.filter(Boolean).join(' ');\n }\n\n private get hasImageCoverText(): boolean {\n return !!(this.label || this.heading || this.preamble || this.showRte || this.showCta);\n }\n\n private get normalizedOpacity(): number {\n return Math.min(100, Math.max(0, this.opacity ?? 90));\n }\n\n // This getter reads the data-card-color attribute, which is used to set CSS variables for background and text colors in the SCSS file. It returns the color value or null if not set.\n private get cardColor() {\n const value = this.hostElement.getAttribute('data-card-color')?.trim().toLowerCase();\n return value || null;\n }\n\n private get hasBg(): boolean {\n return !!this.cardColor;\n }\n\n private get cardClass() {\n\n return this.cx([\n 'pn-versa-card',\n\n // modifiers \n this.horizontal && 'pn-versa-card-horizontal',\n this.horizontal && this.imgAlignment === 'right' && 'pn-versa-card-horizontal--imgRight',\n this.hasBg && 'pn-versa-card-hasBg',\n this.hasImageCover && 'pn-versa-card-hasImageCover', // can be true without text, just means image covers whole card without text on top\n this.hasImageCover && this.hasImageCoverText && 'pn-versa-card-hasImageCoverText', //has to have imageCover true AND imageCoverText in order for class to be set\n this.roundImage && 'pn-versa-card-hasRoundedImage',\n this.center && 'pn-versa-card-center',\n this.alignMiddle && 'pn-versa-card-alignMiddle',\n this.imageGrow && 'pn-versa-card-imageGrow',\n this.hasBg && this.transparentBackground && 'pn-versa-card-transparentBackground',\n\n ]);\n }\n\n private get showContent(): boolean {\n return this.showTextContent || this.showCta;\n }\n\n private get showTextContent(): boolean {\n return !!(this.label || this.heading || this.preamble || this.showRte);\n }\n\n @State() showImage: boolean = false;\n @State() showRte: boolean = false;\n @State() showCta: boolean = false;\n\n componentWillLoad() {\n this.showImage = !!this.hostElement.querySelector('[slot=\"image\"]');\n this.showRte = !!this.hostElement.querySelector('[slot=\"rte\"]');\n this.showCta = !!this.hostElement.querySelector('[slot=\"cta\"]');\n\n }\n\n render() {\n return (\n <Host>\n <div class={this.cardClass} style={{ '--pn-versa-opacity': `${this.normalizedOpacity / 100}` }}>\n {this.showImage && (\n <div class=\"pn-versa-card-imageWrapper\">\n <slot name=\"image\" />\n </div>)}\n {this.showContent && (\n <div class=\"pn-versa-card-content\">\n {this.showTextContent && <div class=\"pn-versa-card-textContent\">\n {this.label && (\n <span class=\"pn-versa-card-label\">{this.label}</span>\n )}\n\n {this.heading && (\n <HeadingTag cssClass=\"pn-versa-card-heading\" level={this.headingLevel}>{this.heading}</HeadingTag>\n )}\n\n {this.preamble && (\n <p class=\"pn-versa-card-preamble\">{this.preamble}</p>\n )}\n\n {this.showRte && <div class=\"pn-versa-card-RTEtext\">\n <slot name=\"rte\" />\n </div>\n }\n </div>}\n\n {this.showCta && <div class=\"pn-versa-card-linkwrapper\">\n <slot name=\"cta\" />\n </div>}\n\n </div>\n )}\n </div>\n </Host>\n );\n }\n}"],"version":3}
1
+ {"file":"pn-versa-card.entry.js","mappings":"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","names":[],"sources":["src/components/cards/pn-versa-card/pn-versa-card.scss?tag=pn-versa-card","src/components/cards/pn-versa-card/pn-versa-card.tsx"],"sourcesContent":["@import '../../../globals/main.scss';\n\n// -----------------------------------------------------------------------------\n// SCSS tokens\n// Internal layout / implementation constants\n// -----------------------------------------------------------------------------\n$versa-card-radius: rem16(16px);\n$versa-card-gap: rem16(8px);\n$versa-card-content-gap: rem16(16px);\n$versa-card-content-padding-bottom: rem16(16px);\n$versa-card-text-max-width: rem16(700px);\n$versa-card-cover-padding: rem16(24px);\n$versa-card-horizontal-gap: rem16(32px);\n$versa-card-horizontal-padding: rem16(24px);\n$versa-card-horizontal-padding-lg: rem16(32px);\n$versa-card-sticky-top: rem16(16px);\n\n$versa-card-meta-margin-bottom: rem16(4px);\n$versa-card-cta-gap: rem16(16px);\n$versa-card-cta-min-height: rem16(48px);\n$versa-card-rounded-image-max-width: rem16(120px);\n\n$versa-card-cover-overlay-rgb: rgb(13, 35, 75);\n$versa-card-cover-text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8),\n 0 4px 12px rgba(0, 0, 0, 0.5);\n\n$versa-card-cta-icon-offset: -0.3rem;\n$versa-card-cta-transition: 0.3s ease-in-out;\n\n// -----------------------------------------------------------------------------\n// Root / design tokens\n// CSS variables are kept for styling + contextual overrides\n// -----------------------------------------------------------------------------\npn-versa-card {\n display: flex;\n width: 100%;\n height: 100%;\n\n --versa-card-bg: transparent;\n --versa-card-heading-color: inherit;\n --versa-card-text-color: inherit;\n --versa-card-blockquote-border-color: inherit;\n --versa-link-color: #{$blue700};\n\n --versa-card-padding: #{rem16(16px)};\n --versa-card-heading-size: #{rem16(24px)};\n --versa-card-preamble-size: #{rem16(18px)};\n --versa-card-label-size: #{rem16(12px)};\n\n --rte-text-color: var(--versa-card-text-color);\n --rte-heading-color: var(--versa-card-heading-color);\n --rte-blockquote-border-color: var(--versa-card-blockquote-border-color);\n --rte-image-radius: #{$versa-card-radius};\n\n .pn-versa-card-label {\n display: block;\n font-size: var(--versa-card-label-size);\n text-transform: uppercase;\n margin: 0 0 $versa-card-meta-margin-bottom 0;\n }\n\n .pn-versa-card-heading {\n font-size: var(--versa-card-heading-size);\n margin: 0 0 $versa-card-meta-margin-bottom 0;\n color: var(--versa-card-heading-color);\n }\n\n .pn-versa-card-preamble {\n font-size: var(--versa-card-preamble-size);\n margin: 0 0 $versa-card-meta-margin-bottom 0;\n }\n}\n\n// -----------------------------------------------------------------------------\n// Base structure\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card {\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n gap: $versa-card-gap;\n position: relative;\n\n .pn-versa-card-imageWrapper {\n\n [slot='image'],\n [slot='image'] picture,\n [slot='image'] picture img {\n display: block;\n width: 100%;\n height: 100%;\n }\n\n [slot='image'] picture img {\n border-radius: $versa-card-radius;\n object-fit: cover;\n }\n\n [slot='image'] picture {\n max-width: $versa-card-text-max-width;\n margin: 0 auto;\n }\n }\n\n .pn-versa-card-content {\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n width: 100%;\n max-width: 100%;\n gap: $versa-card-content-gap;\n padding-bottom: $versa-card-content-padding-bottom;\n\n --pn-link-current-color: var(--versa-link-color);\n --rte-link-color: var(--pn-link-current-color);\n\n .pn-versa-card-textContent,\n .pn-versa-card-linkwrapper {\n max-width: $versa-card-text-max-width; \n margin: 0 auto;\n }\n\n .pn-versa-card-textContent {\n display: flex;\n flex-direction: column;\n color: var(--versa-card-text-color); \n width: 100%;\n \n }\n\n .pn-versa-card-linkwrapper {\n display: flex;\n align-items: center;\n min-height: $versa-card-cta-min-height;\n width: 100%;\n\n [slot='cta'] {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n align-items: center;\n gap: $versa-card-cta-gap;\n width: 100%;\n\n a {\n margin-bottom: 0;\n }\n\n pn-button[appearance='light'] {\n color: unset;\n }\n\n a:not(.pn-button) {\n color: var(--pn-link-current-color);\n text-decoration: none;\n font-weight: 400;\n\n &:hover {\n text-decoration: underline;\n }\n }\n\n a.versa-card-cta-link-animated pn-icon svg path {\n fill: var(--pn-link-current-color);\n }\n }\n }\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// Modifiers (visual / state)\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card-hasBg {\n position: relative;\n padding: var(--versa-card-padding);\n border-radius: $versa-card-radius;\n background-color: transparent;\n\n &::before {\n content: '';\n position: absolute;\n inset: 0;\n background-color: var(--versa-card-bg);\n border-radius: inherit;\n z-index: 0;\n pointer-events: none;\n opacity: 1;\n }\n\n >* {\n position: relative;\n z-index: 1;\n }\n\n .pn-versa-card-content {\n padding-bottom: 0;\n }\n\n &.pn-versa-card-transparentBackground {\n &::before {\n opacity: 0.9;\n transition: opacity 500ms ease-in-out;\n }\n\n &:hover::before {\n opacity: 0.98;\n }\n }\n }\n\n .pn-versa-card-hasImageCover {\n padding: 0;\n\n .pn-versa-card-imageWrapper {\n height: 100%;\n margin-bottom: 0;\n\n [slot='image'] picture img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n }\n\n &.pn-versa-card-hasImageCoverText {\n --pn-versa-hover-overlay-alpha: var(--pn-versa-opacity, 0.85);\n\n .pn-versa-card-imageWrapper {\n position: relative;\n height: 100%;\n\n &::before,\n &::after {\n content: '';\n position: absolute;\n inset: 0;\n border-radius: $versa-card-radius;\n pointer-events: none;\n }\n\n &::before {\n background: radial-gradient(circle,\n rgba($versa-card-cover-overlay-rgb, 0.8) 7%,\n rgba($versa-card-cover-overlay-rgb, 0) 100%);\n z-index: 1;\n }\n\n &::after {\n background-color: rgba($versa-card-cover-overlay-rgb, var(--pn-versa-hover-overlay-alpha));\n opacity: 0;\n transition: opacity 1s;\n z-index: 2;\n }\n\n [slot='image'] picture img {\n position: relative;\n z-index: 0;\n }\n }\n\n .pn-versa-card-content {\n position: absolute;\n inset: 0;\n z-index: 3;\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n padding: $versa-card-cover-padding;\n max-width: unset;\n\n color: #{$white};\n text-shadow: $versa-card-cover-text-shadow;\n\n --pn-link-current-color: #{$white};\n --rte-text-color: #{$white};\n --rte-heading-color: #{$white};\n --rte-blockquote-text-color: #{$white};\n --rte-blockquote-border-color: rgba(255, 255, 255, 0.8);\n --rte-quote-author-color: #{$white};\n --rte-quote-author-bg: rgba(255, 255, 255, 0.16);\n\n a {\n color: var(--pn-link-current-color);\n text-shadow: none;\n }\n\n pn-button[appearance='light'] a {\n color: $blue700;\n }\n\n .pn-versa-card-linkwrapper {\n [slot='cta'] {\n a.versa-card-cta-link-animated pn-icon svg path {\n fill: var(--pn-link-current-color);\n }\n }\n }\n }\n\n &:hover .pn-versa-card-imageWrapper::after {\n opacity: 1;\n }\n }\n }\n\n .pn-versa-card-hasRoundedImage {\n .pn-versa-card-imageWrapper {\n width: auto;\n height: auto;\n\n [slot='image'] picture img {\n aspect-ratio: 1 / 1;\n width: 100%;\n height: 100%;\n max-width: $versa-card-rounded-image-max-width;\n border-radius: 50%;\n }\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// Layout + alignment\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card-horizontal {\n flex-direction: column;\n\n &.pn-versa-card-imageGrow {\n .pn-versa-card-imageWrapper {\n [slot='image'] picture img {\n height: 100%;\n }\n }\n }\n }\n\n .pn-versa-card-center {\n .pn-versa-card-imageWrapper {\n align-self: center;\n }\n\n .pn-versa-card-content {\n align-items: center;\n text-align: center;\n\n .pn-versa-card-linkwrapper {\n [slot='cta'] {\n justify-content: center;\n }\n }\n }\n }\n\n .pn-versa-card-alignMiddle {\n\n justify-content: center;\n\n\n .pn-versa-card-content {\n height: auto;\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// Theme / colors\n// -----------------------------------------------------------------------------\npn-versa-card {\n &[data-card-color='white'] {\n --versa-card-bg: #{$white};\n }\n\n &[data-card-color='blue25'] {\n --versa-card-bg: #{$blue25};\n --versa-card-blockquote-border-color: #{$blue400};\n }\n\n &[data-card-color='blue50'] {\n --versa-card-bg: #{$blue50};\n --versa-card-blockquote-border-color: #{$blue400};\n }\n\n &[data-card-color='blue400'] {\n --versa-card-bg: #{$blue400};\n --rte-heading-color:#{$white};\n }\n\n &[data-card-color='blue900'] {\n --versa-card-bg: #{$blue900};\n --versa-card-heading-color: #{$blue200};\n --versa-card-text-color: #{$white};\n --versa-card-blockquote-border-color: #{$white};\n --versa-link-color: #{$white};\n --rte-heading-color:#{$white};\n }\n\n &[data-card-color='coral25'] {\n --versa-card-bg: #{$coral25};\n --versa-card-blockquote-border-color: #{$coral400};\n }\n\n &[data-card-color='coral50'] {\n --versa-card-bg: #{$coral50};\n --versa-card-blockquote-border-color: #{$coral400};\n }\n\n &[data-card-color='green25'] {\n --versa-card-bg: #{$green25};\n --versa-card-blockquote-border-color: #{$green400};\n }\n\n &[data-card-color='green50'] {\n --versa-card-bg: #{$green50};\n --versa-card-blockquote-border-color: #{$green400};\n }\n}\n\n// -----------------------------------------------------------------------------\n// Responsive\n// -----------------------------------------------------------------------------\n@media (min-width: 600px) {\n pn-versa-card {\n .pn-versa-card-horizontal {\n flex-direction: row;\n gap: $versa-card-horizontal-gap;\n\n .pn-versa-card-imageWrapper,\n .pn-versa-card-content {\n flex: 1;\n }\n\n .pn-versa-card-imageWrapper {\n height: auto;\n\n [slot='image'] picture img {\n height: auto;\n position: sticky;\n top: $versa-card-sticky-top;\n }\n }\n\n .pn-versa-card-content {\n width: 50%;\n box-sizing: border-box;\n justify-content: flex-start;\n }\n\n &.pn-versa-card-hasBg {\n padding: $versa-card-horizontal-padding;\n }\n\n &.pn-versa-card-horizontal--imgRight {\n flex-direction: row-reverse;\n }\n\n &.pn-versa-card-imageGrow {\n .pn-versa-card-imageWrapper {\n height: 100%;\n }\n }\n\n &.pn-versa-card-center {\n .pn-versa-card-imageWrapper {\n align-self: auto;\n }\n\n .pn-versa-card-content {\n align-items: stretch;\n text-align: center;\n\n .pn-versa-card-textContent,\n .pn-versa-card-linkwrapper {\n align-self: center;\n }\n\n .pn-versa-card-linkwrapper {\n [slot='cta'] {\n justify-content: center;\n }\n }\n }\n }\n\n &.pn-versa-card-alignMiddle {\n .pn-versa-card-content {\n justify-content: center; //overrides mobile alignMiddle which sets justify-content to space-between\n }\n }\n\n &.pn-versa-card-hasRoundedImage {\n .pn-versa-card-imageWrapper {\n width: 50%;\n\n [slot='image'] picture img {\n max-width: unset;\n }\n }\n }\n }\n }\n}\n\n@media (min-width: 1440px) {\n pn-versa-card {\n .pn-versa-card-horizontal.pn-versa-card-hasBg {\n padding: $versa-card-horizontal-padding-lg;\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// CTA animation\n// -----------------------------------------------------------------------------\npn-versa-card {\n .versa-card-cta-link-animated {\n pn-icon {\n position: relative;\n left: $versa-card-cta-icon-offset;\n transition: $versa-card-cta-transition;\n }\n\n &:hover pn-icon {\n left: 0;\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// RTE\n// -----------------------------------------------------------------------------\npn-versa-card {\n .pn-versa-card-RTEtext {\n [slot='rte'] {\n @include shared-rte;\n\n .pn-quote-card__section {\n max-width: none !important;\n background-color: transparent;\n }\n\n .quoteblock-section .pn-quote-card__section .pn-quote-card__quote {\n border: none !important;\n padding-left: 0 !important;\n }\n }\n }\n}\n\n// -----------------------------------------------------------------------------\n// CMS Width Overrides\n// -----------------------------------------------------------------------------\n.onethirdwidth {\n pn-versa-card {\n --rte-forms-spacing: #{rem16(12px)};\n }\n}\n\n@media (min-width: 992px) {\n .onequarterwidth {\n pn-versa-card {\n --versa-card-padding: #{rem16(8px)};\n --versa-card-heading-size: #{rem16(20px)};\n --versa-card-preamble-size: #{rem16(17px)};\n --versa-card-label-size: #{rem16(11px)};\n\n --rte-h2-size: #{rem16(20px)};\n --rte-h3-size: #{rem16(18px)};\n --rte-h4-size: #{rem16(16px)};\n }\n }\n\n .halfwidth,\n .fullwidth {\n pn-versa-card {\n --rte-blockquote-margin: #{rem16(24px)} 0;\n }\n }\n}\n\n@media (min-width: 1640px) {\n .onequarterwidth {\n pn-versa-card {\n --versa-card-padding: #{rem16(16px)};\n }\n }\n}\n\n//when not wrapped by versacardblock class\npn-versa-card:not(:where(.versacardblock *)) {\n height: auto;\n}","import { HeadingTag } from '@/globals/HeadingTag';\nimport {\n Component,\n Element,\n h,\n Host,\n Prop,\n State,\n} from '@stencil/core';\n\n/** A short description about `pn-versa-card` */\n@Component({\n tag: 'pn-versa-card',\n styleUrl: 'pn-versa-card.scss',\n})\nexport class PnVersaCard {\n\n @Element() hostElement: HTMLElement;\n\n @Prop() label?: string;\n @Prop() heading?: string;\n @Prop() preamble?: string;\n @Prop() imageGrow = false;\n\n // Layout / modifiers\n @Prop() horizontal = false;\n @Prop() imgAlignment?: 'left' | 'right' = 'left';\n @Prop() hasImageCover = false;\n @Prop() alignMiddle = false;\n @Prop() center = false;\n\n @Prop() roundImage = false;\n @Prop() headingLevel: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' = 'h3';\n\n @Prop() opacity: number = 90;\n @Prop() transparentBackground = false;\n\n private cx(parts: Array<string | false | null | undefined>) {\n return parts.filter(Boolean).join(' ');\n }\n\n private get hasImageCoverText(): boolean {\n return !!(this.label || this.heading || this.preamble || this.showRte || this.showCta);\n }\n\n private get normalizedOpacity(): number {\n return Math.min(100, Math.max(0, this.opacity ?? 90));\n }\n\n // This getter reads the data-card-color attribute, which is used to set CSS variables for background and text colors in the SCSS file. It returns the color value or null if not set.\n private get cardColor() {\n const value = this.hostElement.getAttribute('data-card-color')?.trim().toLowerCase();\n return value || null;\n }\n\n private get hasBg(): boolean {\n return !!this.cardColor;\n }\n\n private get cardClass() {\n\n return this.cx([\n 'pn-versa-card',\n\n // modifiers \n this.horizontal && 'pn-versa-card-horizontal',\n this.horizontal && this.imgAlignment === 'right' && 'pn-versa-card-horizontal--imgRight',\n this.hasBg && 'pn-versa-card-hasBg',\n this.hasImageCover && 'pn-versa-card-hasImageCover', // can be true without text, just means image covers whole card without text on top\n this.hasImageCover && this.hasImageCoverText && 'pn-versa-card-hasImageCoverText', //has to have imageCover true AND imageCoverText in order for class to be set\n this.roundImage && 'pn-versa-card-hasRoundedImage',\n this.center && 'pn-versa-card-center',\n this.alignMiddle && 'pn-versa-card-alignMiddle',\n this.imageGrow && 'pn-versa-card-imageGrow',\n this.hasBg && this.transparentBackground && 'pn-versa-card-transparentBackground',\n\n ]);\n }\n\n private get showContent(): boolean {\n return this.showTextContent || this.showCta;\n }\n\n private get showTextContent(): boolean {\n return !!(this.label || this.heading || this.preamble || this.showRte);\n }\n\n @State() showImage: boolean = false;\n @State() showRte: boolean = false;\n @State() showCta: boolean = false;\n\n componentWillLoad() {\n this.showImage = !!this.hostElement.querySelector('[slot=\"image\"]');\n this.showRte = !!this.hostElement.querySelector('[slot=\"rte\"]');\n this.showCta = !!this.hostElement.querySelector('[slot=\"cta\"]');\n\n }\n\n render() {\n return (\n <Host>\n <div class={this.cardClass} style={{ '--pn-versa-opacity': `${this.normalizedOpacity / 100}` }}>\n {this.showImage && (\n <div class=\"pn-versa-card-imageWrapper\">\n <slot name=\"image\" />\n </div>)}\n {this.showContent && (\n <div class=\"pn-versa-card-content\">\n {this.showTextContent && <div class=\"pn-versa-card-textContent\">\n {this.label && (\n <span class=\"pn-versa-card-label\">{this.label}</span>\n )}\n\n {this.heading && (\n <HeadingTag cssClass=\"pn-versa-card-heading\" level={this.headingLevel}>{this.heading}</HeadingTag>\n )}\n\n {this.preamble && (\n <p class=\"pn-versa-card-preamble\">{this.preamble}</p>\n )}\n\n {this.showRte && <div class=\"pn-versa-card-RTEtext\">\n <slot name=\"rte\" />\n </div>\n }\n </div>}\n\n {this.showCta && <div class=\"pn-versa-card-linkwrapper\">\n <slot name=\"cta\" />\n </div>}\n\n </div>\n )}\n </div>\n </Host>\n );\n }\n}"],"version":3}
@@ -0,0 +1,196 @@
1
+ const translations = {
2
+ 'sv': {
3
+ searchlabel: 'Sök',
4
+ searchplaceholder: 'Vad letar du efter?',
5
+ searchbuttontext: 'Sök',
6
+ menuHomeButton: 'Hem',
7
+ menuGoBackButton: 'Gå tillbaka',
8
+ mainMenuButton: 'Meny',
9
+ menuStartButton: 'Start',
10
+ profileSelectionFlyoutHeading: 'Inloggad som',
11
+ unifiedLoginButton: 'Logga in',
12
+ unifiedMyPagesButton: 'Mina sidor',
13
+ home: 'Hem',
14
+ },
15
+ 'en': {
16
+ searchlabel: 'Search',
17
+ searchplaceholder: 'Search',
18
+ searchbuttontext: 'Search',
19
+ menuHomeButton: 'Home',
20
+ menuGoBackButton: 'Go back',
21
+ mainMenuButton: 'Menu',
22
+ menuStartButton: 'Start',
23
+ profileSelectionFlyoutHeading: 'Logged in as',
24
+ unifiedLoginButton: 'Log in',
25
+ unifiedMyPagesButton: 'My pages',
26
+ home: 'Home',
27
+ },
28
+ 'da': {
29
+ searchlabel: 'Søg',
30
+ searchplaceholder: 'Søg',
31
+ searchbuttontext: 'Søg',
32
+ menuHomeButton: 'Hjem',
33
+ menuGoBackButton: 'Gå tilbage',
34
+ mainMenuButton: 'Menu',
35
+ menuStartButton: 'Start',
36
+ profileSelectionFlyoutHeading: 'Logget ind som',
37
+ unifiedLoginButton: 'Log ind',
38
+ unifiedMyPagesButton: 'Mine sider',
39
+ home: 'Hjem',
40
+ },
41
+ 'no': {
42
+ searchlabel: 'Søk',
43
+ searchplaceholder: 'Søk',
44
+ searchbuttontext: 'Søk',
45
+ menuHomeButton: 'Hjem',
46
+ menuGoBackButton: 'Gå tilbake',
47
+ mainMenuButton: 'Meny',
48
+ menuStartButton: 'Start',
49
+ profileSelectionFlyoutHeading: 'Logget på som',
50
+ unifiedLoginButton: 'Logg inn',
51
+ unifiedMyPagesButton: 'Sidene mine',
52
+ home: 'Hjem',
53
+ },
54
+ 'fi': {
55
+ searchlabel: 'Hae',
56
+ searchplaceholder: 'Hae',
57
+ searchbuttontext: 'Hae',
58
+ menuHomeButton: 'Koti',
59
+ menuGoBackButton: 'Mene takaisin',
60
+ mainMenuButton: 'Valikko',
61
+ menuStartButton: 'Alkaa',
62
+ profileSelectionFlyoutHeading: 'Kirjautunut sisään nimellä',
63
+ unifiedLoginButton: 'Kirjaudu sisään',
64
+ unifiedMyPagesButton: 'Minun sivujani',
65
+ home: 'Koti',
66
+ },
67
+ 'de': {
68
+ searchlabel: 'Suche',
69
+ searchplaceholder: 'Wonach suchen Sie?',
70
+ searchbuttontext: 'Suche',
71
+ menuHomeButton: 'Start',
72
+ menuGoBackButton: 'Geh zurück',
73
+ mainMenuButton: 'Menü',
74
+ menuStartButton: 'Start',
75
+ profileSelectionFlyoutHeading: 'Eingeloggt als',
76
+ unifiedLoginButton: 'Anmeldung',
77
+ unifiedMyPagesButton: 'Meine Seiten',
78
+ home: 'Start',
79
+ },
80
+ 'zh': {
81
+ searchlabel: '搜索',
82
+ searchplaceholder: '搜索',
83
+ searchbuttontext: '搜索',
84
+ menuHomeButton: '主页',
85
+ menuGoBackButton: '回去',
86
+ mainMenuButton: '选择菜单',
87
+ menuStartButton: '开始',
88
+ home: '主页',
89
+ },
90
+ 'it': {
91
+ searchlabel: 'Cerca',
92
+ searchplaceholder: 'Cerca',
93
+ searchbuttontext: 'Cerca',
94
+ menuHomeButton: 'Home',
95
+ menuGoBackButton: 'Go back',
96
+ mainMenuButton: 'Menu',
97
+ menuStartButton: 'Start',
98
+ profileSelectionFlyoutHeading: 'Logged in as',
99
+ unifiedLoginButton: 'Log in',
100
+ unifiedMyPagesButton: 'My pages',
101
+ home: 'Home',
102
+ },
103
+ 'nl': {
104
+ searchlabel: 'Zoeken',
105
+ searchplaceholder: 'Zoeken',
106
+ searchbuttontext: 'Zoeken',
107
+ menuHomeButton: 'Home',
108
+ menuGoBackButton: 'Go back',
109
+ mainMenuButton: 'Menu',
110
+ menuStartButton: 'Start',
111
+ profileSelectionFlyoutHeading: 'Logged in as',
112
+ unifiedLoginButton: 'Log in',
113
+ unifiedMyPagesButton: 'My pages',
114
+ home: 'Home',
115
+ },
116
+ 'es': {
117
+ searchplaceholder: 'Buscar',
118
+ searchlabel: 'Buscar',
119
+ searchbuttontext: 'Buscar',
120
+ menuHomeButton: 'Inicio',
121
+ menuGoBackButton: 'Go back',
122
+ mainMenuButton: 'Menu',
123
+ menuStartButton: 'Start',
124
+ profileSelectionFlyoutHeading: 'Logged in as',
125
+ unifiedLoginButton: 'Log in',
126
+ unifiedMyPagesButton: 'My pages',
127
+ home: 'Inicio',
128
+ },
129
+ 'fr': {
130
+ searchplaceholder: 'Recherche',
131
+ searchlabel: 'Recherche',
132
+ searchbuttontext: 'Recherche',
133
+ menuHomeButton: 'Accueil',
134
+ menuGoBackButton: 'Go back',
135
+ mainMenuButton: 'Menu',
136
+ menuStartButton: 'Start',
137
+ profileSelectionFlyoutHeading: 'Logged in as',
138
+ unifiedLoginButton: 'Log in',
139
+ unifiedMyPagesButton: 'My pages',
140
+ home: 'Accueil',
141
+ },
142
+ 'tr': {
143
+ searchlabel: 'Ara',
144
+ searchplaceholder: 'Ara',
145
+ searchbuttontext: 'Ara',
146
+ menuHomeButton: 'Anasayfa',
147
+ menuGoBackButton: 'Geri git',
148
+ mainMenuButton: 'Menü',
149
+ menuStartButton: 'Başlat',
150
+ profileSelectionFlyoutHeading: 'Oturum açma adı',
151
+ unifiedLoginButton: 'Oturum aç',
152
+ unifiedMyPagesButton: 'Sayfalarım',
153
+ home: 'Anasayfa',
154
+ },
155
+ 'pt': {
156
+ searchlabel: 'Search',
157
+ searchplaceholder: 'Search',
158
+ searchbuttontext: 'Search',
159
+ menuHomeButton: 'Página inicial',
160
+ menuGoBackButton: 'Go back',
161
+ mainMenuButton: 'Menu',
162
+ menuStartButton: 'Start',
163
+ profileSelectionFlyoutHeading: 'Logged in as',
164
+ unifiedLoginButton: 'Log in',
165
+ unifiedMyPagesButton: 'My pages',
166
+ },
167
+ 'pl': {
168
+ searchlabel: 'Szukaj',
169
+ searchplaceholder: 'Szukaj',
170
+ searchbuttontext: 'Szukaj',
171
+ menuHomeButton: 'Strona główna',
172
+ menuGoBackButton: 'Powrót',
173
+ mainMenuButton: 'Menu',
174
+ menuStartButton: 'Początek',
175
+ profileSelectionFlyoutHeading: 'Zalogowany(-a) jako',
176
+ unifiedLoginButton: 'Logowanie',
177
+ unifiedMyPagesButton: 'Moje strony',
178
+ home: 'Strona główna',
179
+ },
180
+ 'pt-BR': {
181
+ searchlabel: 'Buscar',
182
+ searchplaceholder: 'Buscar',
183
+ searchbuttontext: 'Buscar',
184
+ menuHomeButton: 'Página inicial',
185
+ menuGoBackButton: 'Voltar',
186
+ mainMenuButton: 'Menu',
187
+ menuStartButton: 'Iniciar',
188
+ profileSelectionFlyoutHeading: 'Login efetuado como',
189
+ unifiedLoginButton: 'Fazer login',
190
+ unifiedMyPagesButton: 'Minhas páginas',
191
+ },
192
+ };
193
+
194
+ export { translations as t };
195
+
196
+ //# sourceMappingURL=translations-d2f5804e.js.map
@@ -0,0 +1 @@
1
+ {"file":"translations-d2f5804e.js","mappings":"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","names":[],"sources":["src/components/layout-components/pn-marketweb-siteheader/translations.ts"],"sourcesContent":["export const translations = {\n 'sv': {\n searchlabel: 'Sök',\n searchplaceholder: 'Vad letar du efter?',\n searchbuttontext: 'Sök',\n menuHomeButton: 'Hem',\n menuGoBackButton: 'Gå tillbaka',\n mainMenuButton: 'Meny',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Inloggad som',\n unifiedLoginButton: 'Logga in',\n unifiedMyPagesButton: 'Mina sidor',\n home: 'Hem',\n },\n 'en': {\n searchlabel: 'Search',\n searchplaceholder: 'Search',\n searchbuttontext: 'Search',\n menuHomeButton: 'Home',\n menuGoBackButton: 'Go back',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logged in as',\n unifiedLoginButton: 'Log in',\n unifiedMyPagesButton: 'My pages',\n home: 'Home',\n },\n 'da': {\n searchlabel: 'Søg',\n searchplaceholder: 'Søg',\n searchbuttontext: 'Søg',\n menuHomeButton: 'Hjem',\n menuGoBackButton: 'Gå tilbage',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logget ind som',\n unifiedLoginButton: 'Log ind',\n unifiedMyPagesButton: 'Mine sider',\n home: 'Hjem',\n },\n 'no': {\n searchlabel: 'Søk',\n searchplaceholder: 'Søk',\n searchbuttontext: 'Søk',\n menuHomeButton: 'Hjem',\n menuGoBackButton: 'Gå tilbake',\n mainMenuButton: 'Meny',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logget på som',\n unifiedLoginButton: 'Logg inn',\n unifiedMyPagesButton: 'Sidene mine',\n home: 'Hjem',\n },\n 'fi': {\n searchlabel: 'Hae',\n searchplaceholder: 'Hae',\n searchbuttontext: 'Hae',\n menuHomeButton: 'Koti',\n menuGoBackButton: 'Mene takaisin',\n mainMenuButton: 'Valikko',\n menuStartButton: 'Alkaa',\n profileSelectionFlyoutHeading: 'Kirjautunut sisään nimellä',\n unifiedLoginButton: 'Kirjaudu sisään',\n unifiedMyPagesButton: 'Minun sivujani',\n home: 'Koti',\n },\n 'de': {\n searchlabel: 'Suche',\n searchplaceholder: 'Wonach suchen Sie?',\n searchbuttontext: 'Suche',\n menuHomeButton: 'Start',\n menuGoBackButton: 'Geh zurück',\n mainMenuButton: 'Menü',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Eingeloggt als',\n unifiedLoginButton: 'Anmeldung',\n unifiedMyPagesButton: 'Meine Seiten',\n home: 'Start',\n },\n 'zh': {\n searchlabel: '搜索',\n searchplaceholder: '搜索',\n searchbuttontext: '搜索',\n menuHomeButton: '主页',\n menuGoBackButton: '回去',\n mainMenuButton: '选择菜单',\n menuStartButton: '开始',\n home: '主页',\n },\n 'it': {\n searchlabel: 'Cerca',\n searchplaceholder: 'Cerca',\n searchbuttontext: 'Cerca',\n menuHomeButton: 'Home',\n menuGoBackButton: 'Go back',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logged in as',\n unifiedLoginButton: 'Log in',\n unifiedMyPagesButton: 'My pages',\n home: 'Home',\n\n },\n 'nl': {\n searchlabel: 'Zoeken',\n searchplaceholder: 'Zoeken',\n searchbuttontext: 'Zoeken',\n menuHomeButton: 'Home',\n menuGoBackButton: 'Go back',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logged in as',\n unifiedLoginButton: 'Log in',\n unifiedMyPagesButton: 'My pages',\n home: 'Home',\n },\n 'es': {\n searchplaceholder: 'Buscar',\n searchlabel: 'Buscar',\n searchbuttontext: 'Buscar',\n menuHomeButton: 'Inicio',\n menuGoBackButton: 'Go back',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logged in as',\n unifiedLoginButton: 'Log in',\n unifiedMyPagesButton: 'My pages',\n home: 'Inicio',\n },\n 'fr': {\n searchplaceholder: 'Recherche',\n searchlabel: 'Recherche',\n searchbuttontext: 'Recherche',\n menuHomeButton: 'Accueil',\n menuGoBackButton: 'Go back',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logged in as',\n unifiedLoginButton: 'Log in',\n unifiedMyPagesButton: 'My pages',\n home: 'Accueil',\n },\n 'tr': {\n searchlabel: 'Ara',\n searchplaceholder: 'Ara',\n searchbuttontext: 'Ara',\n menuHomeButton: 'Anasayfa',\n menuGoBackButton: 'Geri git',\n mainMenuButton: 'Menü',\n menuStartButton: 'Başlat',\n profileSelectionFlyoutHeading: 'Oturum açma adı',\n unifiedLoginButton: 'Oturum aç',\n unifiedMyPagesButton: 'Sayfalarım',\n home: 'Anasayfa',\n },\n 'pt': {\n searchlabel: 'Search',\n searchplaceholder: 'Search',\n searchbuttontext: 'Search',\n menuHomeButton: 'Página inicial',\n menuGoBackButton: 'Go back',\n mainMenuButton: 'Menu',\n menuStartButton: 'Start',\n profileSelectionFlyoutHeading: 'Logged in as',\n unifiedLoginButton: 'Log in',\n unifiedMyPagesButton: 'My pages',\n },\n 'pl': {\n searchlabel: 'Szukaj',\n searchplaceholder: 'Szukaj',\n searchbuttontext: 'Szukaj',\n menuHomeButton: 'Strona główna',\n menuGoBackButton: 'Powrót',\n mainMenuButton: 'Menu',\n menuStartButton: 'Początek',\n profileSelectionFlyoutHeading: 'Zalogowany(-a) jako',\n unifiedLoginButton: 'Logowanie',\n unifiedMyPagesButton: 'Moje strony',\n home: 'Strona główna',\n },\n 'pt-BR': {\n searchlabel: 'Buscar',\n searchplaceholder: 'Buscar',\n searchbuttontext: 'Buscar',\n menuHomeButton: 'Página inicial',\n menuGoBackButton: 'Voltar',\n mainMenuButton: 'Menu',\n menuStartButton: 'Iniciar',\n profileSelectionFlyoutHeading: 'Login efetuado como',\n unifiedLoginButton: 'Fazer login',\n unifiedMyPagesButton: 'Minhas páginas',\n },\n};\n"],"version":3}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@postnord/pn-marketweb-components",
3
- "version": "4.2.4",
3
+ "version": "4.3.0",
4
4
  "description": "PostNord Market Websites Components",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org/"
@@ -1,2 +1,2 @@
1
- import{r as e,h as t,F as a,d as i}from"./p-b3a13b6a.js";import{a as n}from"./p-36b39340.js";import{c as s}from"./p-366fd15a.js";import{m as h}from"./p-b2f2fbb6.js";import{L as r}from"./p-8d78b631.js";import{P as o}from"./p-6bec8d72.js";import"./p-3478f368.js";const l='<svg class="pn-icon-svg" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path fill="#000" fill-rule="evenodd" d="M21 11.998a1 1 0 0 1-.577.908l-15 7a1 1 0 0 1-1.237-1.487l4.585-6.42-1.46-2.043A1 1 0 1 1 8.94 8.794l1.875 2.625a1 1 0 0 1 0 1.162l-2.788 3.903 9.599-4.48L6.58 6.909a1 1 0 1 1 .838-1.816l13 6a1 1 0 0 1 .581.906M5 4a1 1 0 0 1 1 1v.01a1 1 0 1 1-2 0V5a1 1 0 0 1 1-1" clip-rule="evenodd"/></svg>';const c=l;const d='<svg class="pn-icon-svg" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path fill="#000" fill-rule="evenodd" d="M12.388 2c5.522 0 10 4.477 10 10s-4.478 10-10 10H2l1.355-4.064-.798-3.987a8.8 8.8 0 0 1-.17-1.717V12c0-5.523 4.478-10 10-10m8 10a8 8 0 0 0-16 0v.232q0 .67.13 1.325l.902 4.507L4.775 20h7.612a8 8 0 0 0 8-8m-12.5-1.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3m6 1.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0m3-1.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3" clip-rule="evenodd"/></svg>';const p=d;const m={sv:{relatedContentAriaLabel:"Relaterat innehåll",chatMinimizedAriaLabel:"Chatten är minimerad",chatOpenedAriaLabel:"Chatten är öppen",minimizeChatAriaLabel:"Minimera chatten",closeChatAriaLabel:"Stäng chatten",openChatAriaLabel:"Öppna chatten",chatControlsAriaLabel:"Chattkontroller",chatMessagesAriaLabel:"Chattmeddelanden",sentMessageAriaLabel:"Meddelande skickat",writeChatMessagePlaceholder:"Skriv ett meddelande...",waitingForAnswerLabel:"Väntar på svar",sendButtonText:"Skicka",loadingText:"Laddar..."},en:{relatedContentAriaLabel:"Related content",chatMinimizedAriaLabel:"Chat is minimized",chatOpenedAriaLabel:"Chat is open",minimizeChatAriaLabel:"Minimize chat",closeChatAriaLabel:"Close chat",openChatAriaLabel:"Open chat",chatControlsAriaLabel:"Chat controls",chatMessagesAriaLabel:"Chat messages",sentMessageAriaLabel:"Message sent",writeChatMessagePlaceholder:"Type a message...",waitingForAnswerLabel:"Waiting for answer",sendButtonText:"Send",loadingText:"Loading..."},da:{relatedContentAriaLabel:"Relateret indhold",chatMinimizedAriaLabel:"Chatten er minimeret",chatOpenedAriaLabel:"Chatten er åben",minimizeChatAriaLabel:"Minimer chatten",closeChatAriaLabel:"Luk chatten",openChatAriaLabel:"Åbn chatten",chatControlsAriaLabel:"Chatkontroller",chatMessagesAriaLabel:"Chatbeskeder",sentMessageAriaLabel:"Besked sendt",writeChatMessagePlaceholder:"Skriv en besked...",waitingForAnswerLabel:"Venter på svar",sendButtonText:"Send",loadingText:"Indlæser..."},no:{relatedContentAriaLabel:"Relatert innhold",chatMinimizedAriaLabel:"Chatten er minimert",chatOpenedAriaLabel:"Chatten er åpen",minimizeChatAriaLabel:"Minimer chatten",closeChatAriaLabel:"Lukk chatten",openChatAriaLabel:"Åpne chatten",chatControlsAriaLabel:"Chatkontroller",chatMessagesAriaLabel:"Chatmeldinger",sentMessageAriaLabel:"Melding sendt",writeChatMessagePlaceholder:"Skriv en melding...",waitingForAnswerLabel:"Venter på svar",sendButtonText:"Send",loadingText:"Laster..."},fi:{relatedContentAriaLabel:"Aiheeseen liittyvä sisältö",chatMinimizedAriaLabel:"Keskustelu on pienennetty",chatOpenedAriaLabel:"Keskustelu on auki",minimizeChatAriaLabel:"Pienennä keskustelu",closeChatAriaLabel:"Sulje keskustelu",openChatAriaLabel:"Avaa keskustelu",chatControlsAriaLabel:"Keskustelun hallinta",chatMessagesAriaLabel:"Keskusteluviestit",sentMessageAriaLabel:"Viesti lähetetty",writeChatMessagePlaceholder:"Kirjoita viesti...",waitingForAnswerLabel:"Odotetaan vastausta",sendButtonText:"Lähetä",loadingText:"Ladataan..."}};const b="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}@media screen and (max-width: 767px){.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}}.pn-chat{display:flex;flex-direction:column;height:600px;width:400px;max-width:400px;box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.25), 0 -2px 4px 0 rgba(240, 240, 240, 0.55);border-radius:1.6rem}@media (max-width: 768px){.pn-chat:not(.minimized){position:absolute;height:100dvh;width:100dvw;max-width:100%;top:0;left:0}.pn-chat.minimized{height:70px;border-radius:0.8rem 0.8rem 0 0}}@media (min-width: 768px) and (max-width: 1024px){.pn-chat{max-width:350px}}.pn-chat .chat-header{background-color:#ffffff;padding:0.8rem;padding-left:1.6rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f3f2f2}@media (min-width: 768px){.pn-chat .chat-header{border-radius:1.6rem 1.6rem 0 0}}.pn-chat .chat-header .chat-controls{display:flex}.pn-chat .chat-header pn-button.minimize-btn button.pn-button{padding-bottom:0;margin-right:1rem}.pn-chat .chat-header pn-button.minimize-btn button.pn-button .pn-button-content{align-items:flex-end;position:absolute;bottom:0px}.pn-chat .chat-header #chat-title{margin:0;font-size:1.6rem;font-weight:500;line-height:1;height:100%;align-content:center}.pn-chat .chat-main{display:flex;flex-direction:column;flex-grow:1;overflow-y:auto;gap:1.6rem;padding:1.6rem;padding-bottom:3.2rem;background-color:#ffffff}.pn-chat .chat-main.loading-chat-main{display:flex;justify-content:center;align-items:center}.pn-chat .chat-loading-spinner{background-color:#005d92;width:4.8rem;height:4.8rem;border-radius:4.8rem;display:flex;align-items:center;justify-content:center}.pn-chat .chat-loading-content{color:#2d2013;font-size:1.6rem;font-weight:400}.pn-chat .chat-overview{text-align:center}.pn-chat .chat-messages{display:flex;flex-direction:column;gap:1.6rem;text-align:center}.pn-chat .card-container .slider-wrapper{margin:0}.pn-chat .card-container .slides-container{display:flex;gap:1rem}.pn-chat .card-container .slide:nth-child(even) [data-card]{width:calc(100% - 1rem)}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.95)}}.pn-chat .chat-footer{background:#ffffff;border-top:1px solid #f3f2f2;border-radius:0 0 1.6rem 1.6rem}.pn-chat .chat-footer .form{display:flex;gap:0.7rem;padding:1rem}.pn-chat .chat-input-container{display:flex;flex-grow:1;justify-content:space-between;gap:0.7rem;background:#f9f8f8;border-radius:6.4rem}.pn-chat .chat-input-container .chat-text-input{border:none;background:transparent;width:100%;outline:0.2rem solid transparent;outline-offset:0.2rem;padding-left:1.6rem}.pn-chat .chat-input-container .chat-text-input:focus{border-radius:6.4rem}.pn-chat .chat-input-container .chat-text-input:focus-visible{outline-color:#005d92}.pn-chat .chat-input-container .chat-text-input::placeholder{top:2px;position:relative;color:#969087}.pn-chat .chat-input-container .chat-disabled-button{display:flex;width:3.5em;min-height:3em;min-width:0;align-items:center;justify-content:center}.pn-chat.minimized{background:transparent;border:initial;box-shadow:initial;max-width:50px;max-height:50px;min-width:initial;min-height:initial;transform:scale(0.95);cursor:pointer}.pn-chat.minimized .minimize-btn,.pn-chat.minimized .close-btn{position:absolute;top:0;right:0;bottom:0;left:0}.pn-chat.minimized .minimize-btn button,.pn-chat.minimized .close-btn button{display:none}.pn-chat.minimized .chat-main,.pn-chat.minimized .chat-footer{display:none}.pn-chat.closed{display:none}.pn-chat .open-chat-btn .pn-button{width:5.6rem;height:5.6rem}.pn-chat .open-chat-btn .pn-icon svg{width:3.2rem;height:3.2rem}.pn-chat .indicator-icon{padding:0.2rem 0.8rem;margin-right:auto;margin-top:1rem;margin-bottom:2rem;visibility:hidden}.pn-chat .minimize-btn .pn-button pn-icon .pn-icon-svg path,.pn-chat .close-btn .pn-button pn-icon .pn-icon-svg path{fill:#005d92}@media (max-width: 768px){body.chat-open{overflow:hidden}}";const u=b;const f=class{constructor(t){e(this,t);this.endpoint=undefined;this.customerSegment=undefined;this.mainHeading="";this.relatedContentAriaLabel=undefined;this.chatMinimizedAriaLabel=undefined;this.chatOpenedAriaLabel=undefined;this.minimizeChatAriaLabel=undefined;this.closeChatAriaLabel=undefined;this.openChatAriaLabel=undefined;this.chatControlsAriaLabel=undefined;this.chatMessagesAriaLabel=undefined;this.sentMessageAriaLabel=undefined;this.writeChatMessagePlaceholder=undefined;this.waitingForAnswerLabel=undefined;this.sendButtonText=undefined;this.loadingText=undefined;this.carouselSlidesToShow=1;this.messages=undefined;this.language="sv";this.market="se";this.itemId="";this.pnChatId="00000000-0000-0000-0000-000000000000";this.forceOpen=false;this.isLoggedIn=false;this.message="";this.messagesData=undefined;this.isMinimized=true;this.isClosed=false;this.lastMessageId="";this.i18n=undefined}chatId;_defaultChatId="00000000-0000-0000-0000-000000000000";_defaultAlternativeChatId="1";chatLocalStorageKey="sf-chat-state";chatMessagesContainer;chatRef;inputRef;storage=new r;_chatService;_chatSegment="#chat";_forceClose=false;componentWillLoad(){this._forceClose=false;this._chatService=new o(this.endpoint,this.market,this.language);this.messagesData={header:{},messages:[]};let e=this.storage.get(this.chatLocalStorageKey);if(e&&e.isLoggedIn===!this.isLoggedIn){this.storage.remove(this.chatLocalStorageKey)}else if(e&&e.chatId){this.chatId=e?.chatId??this.chatId}this.setTranslations();setInterval((()=>{this.updateChat()}),1500)}setTranslations(){if(this.language&&m[this.language]){this.i18n=m[this.language]}}getTranslation(e){const t=this[e];if(t===undefined||t===null||t===""){return m[this.language]?.[e]??m["en"][e]}return t}async updateChat(){if(this.isMinimized||this.isClosed){return}let e=this.lastMessageId;await this._chatService.fetchMessages(this.chatId,this.messagesData).then((t=>{this.lastMessageId=this._chatService.GetLastMessageId(t?.messages,this.lastMessageId);let a=document.getElementsByClassName("pn-chat-before");let i=Array.from(a);t.messages.forEach((e=>{i.forEach((t=>{if(e.content!=null&&(t.textContent.trim()===e.content.trim()||t.textContent.trim().includes(e.content.trim()))){t.remove()}}));this.renderMessage(e)}));if(e!==this.lastMessageId){this._chatService.updateLastMessageId(this.chatId,this.lastMessageId);this.messagesData=t;t.messages.forEach((e=>{this.renderMessage(e)}))}}))}async setStartValues(){if(this._forceClose){this._forceClose=false;return}if((!this.chatId||this.chatId===this._defaultChatId||this.chatId===this._defaultAlternativeChatId)&&!this.isMinimized){this.chatId=await this._chatService.startChat(this.pnChatId,this.itemId);this.storage.set(this.chatLocalStorageKey,{chatId:this.chatId,isLoggedIn:this.isLoggedIn})}if(this.chatId){this.storage.set(this.chatLocalStorageKey,{chatId:this.chatId,isLoggedIn:this.isLoggedIn});await this.fetchMessages();this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId)}}async fetchMessages(){await this._chatService.fetchMessages(this.chatId,this.messagesData).then((e=>{this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId);this.messagesData=e;let t=document.getElementsByClassName("pn-chat-before");let a=Array.from(t);e.messages.forEach((e=>{a.forEach((t=>{if(t.textContent.trim()===e.content.trim()||t.textContent.trim().includes(e.content.trim())){t.remove()}}));this.renderMessage(e)}));return e}))}async handleSend(){if(!this.message?.trim()){return}let e=this.message;this.message="";this.createBeforeElement(e);let t=await this._chatService.sendMessage(e,this.itemId,this.chatId,this.lastMessageId,"Text");this.lastMessageId=t;this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId);this.announceToScreenReader(this.getTranslation("sentMessageAriaLabel"))}groupMessages(){const e=[];let a=[];const i=()=>{if(a.length>0){const i={slides:a.map((e=>{const t=`\n <pn-chat-message customerSegment=${this.customerSegment} data-card role="article" category=${e.category}>\n <h2 class="card-heading">${e.heading}</h2>\n <p>${e.content}</p>\n ${e.buttons?.map((e=>`\n <pn-button\n href="${e.href}"\n class="${e.class}"\n appearance="${e.appearance}"\n variant="${e.variant}"\n small="${e.small}"\n role="button"\n >\n ${e.content}\n </pn-button>\n `)).join("")||""}\n </pn-chat-message>\n `;return t}))};e.push(t("pn-marketweb-carousel",{class:"card-container",nextButtonLabel:"Next",previousButtonLabel:"Previous",ariaNavigationLabel:this.getTranslation("relatedContentAriaLabel"),slidesToShow:this.carouselSlidesToShow,source:JSON.stringify(i)}));a=[]}};this.messagesData.messages.forEach(((t,n)=>{if(t.category==="Card"){a.push(t);if(n===this.messagesData.messages.length-1||this.messagesData.messages[n+1]?.category!=="Card"){i()}}else{i();e.push(this.renderMessage(t))}}));return e}handleKeyPress=e=>{if(e.key==="Enter"&&this.message.trim()){e.preventDefault();this.handleSend()}};handleSendMessage=e=>{if(this.message.trim()){e.preventDefault();this.handleSend()}};handleButtonKeyDown(e){if(e.key==="Enter"||e.key===" "){e.preventDefault();e.target.click()}}handleKeyDown(e){if(e.key==="Escape"&&this.isMinimized&&!this.isClosed){this.toggleChat()}}handleMessagesChange(e){if(e){this.handleSend()}}handleNewChatId(){this.chatId=this.pnChatId===this._defaultAlternativeChatId?this._defaultChatId:this.pnChatId;this.messagesData.messages=[];this.isMinimized=false;this.setStartValues()}handleSameChatId(){this.isMinimized=false}scrollToBottom(){const e=new MutationObserver(((e,t)=>{const a=document.getElementById("chat-main");if(a){setTimeout((()=>{a.scrollTo({top:a.scrollHeight,behavior:"smooth"})}),500);t.disconnect()}}));e.observe(document.body,{childList:true,subtree:true})}closeChat=()=>{this._forceClose=true;this.storage.remove(this.chatLocalStorageKey);this.chatId=null;this.pnChatId=this._defaultChatId;let e=document.getElementsByTagName("pn-chat")[0];e.setAttribute("item-id","");let t=window.location.href.includes(this._chatSegment);if(t){this.isMinimized=!this.isMinimized;this.announceToScreenReader(this.isMinimized?this.getTranslation("chatMinimizedAriaLabel"):this.getTranslation("chatOpenedAriaLabel"));document.body.classList.toggle("chat-open");window.location.href=window.location.href.split(this._chatSegment)[0]}else{this._forceClose=false;this.toggleChat()}};toggleChat=()=>{this.isMinimized=!this.isMinimized;this.announceToScreenReader(this.isMinimized?this.getTranslation("chatMinimizedAriaLabel"):this.getTranslation("chatOpenedAriaLabel"));document.body.classList.toggle("chat-open");if(!this.isMinimized&&!this.chatId){this.setStartValues()}};announceToScreenReader(e){const t=document.createElement("div");t.setAttribute("role","status");t.setAttribute("aria-live","polite");t.classList.add("sr-only");t.textContent=e;document.body.appendChild(t);setTimeout((()=>t.remove()),1e3)}renderMessage(e){switch(e.category){case"Bot":return this.renderBaseMessage(e);case"Button":return this.renderButtonMessage(e);case"ButtonResponse":return this.renderBaseMessage(e);case"Link":return this.renderLinkMessage(e);case"Card":return this.renderCardMessage(e);case"User":return this.renderBaseMessage(e);case"Agent":return this.renderAgentMessage(e);case"System":return this.renderBaseMessage(e)}}renderBaseMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category,agentName:"",role:"log","aria-live":"polite"},e.content)}renderAgentMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category,agentName:e.agentName,role:"log","aria-live":"polite"},e.content)}renderButtonMessage(e){let a={};if(e?.props){try{a=JSON.parse(e.props)}catch(e){console.error("Error parsing button props",e instanceof Error?e.message:"Unknown error");return}}const i=t=>{const i=t.target.closest("button");if(i===null||i?.hasAttribute("disabled")){t.preventDefault();t.stopPropagation();return}if(a["data-action"]==="minimize"){this.toggleChat()}if(a["data-action"]==="choice"){(async()=>{await this.handleSendChoice(a["data-option-choice"],e.content)})();const t=document.querySelectorAll('[data-action="choice"]');t.forEach((e=>{const t=e.querySelector("button");t?.setAttribute("disabled","true")}))}};return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category},t("pn-button",{class:e.class,role:"button",...a,onClick:i,onKeyDown:e=>this.handleButtonKeyDown(e)},e.content))}createBeforeElement(e){const t=this.chatMessagesContainer;const a=document.createElement("pn-chat-message");a.setAttribute("customerSegment",this.customerSegment);a.setAttribute("category","User");a.classList.add("pn-chat-before");a.textContent=e;t.appendChild(a);this.scrollToBottom();a.scrollIntoView()}async handleSendChoice(e,t){this.createBeforeElement(t);let a=await this._chatService.sendMessage(e,this.itemId,this.chatId,this.lastMessageId,"Choice");this.lastMessageId=a;this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId);this.announceToScreenReader(this.getTranslation("sentMessageAriaLabel"))}renderLinkMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category},t("a",{href:e.href,role:"link",rel:"noopener noreferrer"},t("span",{class:"content"},e.content),t("pn-icon",{icon:n,color:"blue700","aria-hidden":"true",role:"presentation"})))}renderCardMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category,"data-card":true,role:"article"},t("h2",{class:"card-heading"},e.heading),t("p",null,e.content),e.buttons&&t("div",{class:"cta"},e.buttons?.map((e=>t("pn-button",{href:e.href,class:e.class,appearance:e.appearance,variant:e.variant,small:e.small,role:"button",onKeyDown:e=>this.handleButtonKeyDown(e)},e.content)))))}render(){const e="chat-main";const n="chat-input";const r=this.messagesData?.header.button;return t(i,{key:"0d111898facbe7ec2b46a0cb4cc23db2bb9a39e9",class:this.customerSegment},!this.isClosed&&this.messagesData&&t("div",{key:"52f3eba6239b0397fa232ea4aa229532d77e60b9",class:`pn-chat ${this.isMinimized?"minimized":""} ${this.isClosed?"closed":""}`,ref:e=>this.chatRef=e,role:"region","aria-label":this.mainHeading},!this.isMinimized&&t(a,{key:"53806822347992d45ea6055aafffa8ceea40dbbd"},t("header",{key:"ce0144939bf3e03f05eb5fd07829ebc3b4b81710",class:"chat-header",role:"banner"},t("h1",{key:"2f53bc2c02c2c293356c84ab26af3c53ca7c8d1d",id:"chat-title"},this.mainHeading),t("div",{key:"61255515b279dde7eefb958a4cc52ec97d3f06e9",class:"chat-controls",role:"toolbar","aria-label":this.getTranslation("chatControlsAriaLabel")},t("pn-button",{key:"92ecec1912d158671d2c91e6d89f86c74e6f9e47",icon:h,"icon-only":"true",class:"minimize-btn",onClick:this.toggleChat,"aria-expanded":!this.isMinimized,"aria-controls":e,"aria-label":this.getTranslation("minimizeChatAriaLabel"),appearance:"light",tooltip:this.getTranslation("minimizeChatAriaLabel"),small:"true"}),t("pn-button",{key:"c35a892ee5aef5833f8c620d01b6f64281eaeb33",icon:s,"icon-only":"true",class:"close-btn",onClick:this.closeChat,"aria-expanded":!this.isMinimized,"aria-label":this.getTranslation("closeChatAriaLabel"),appearance:"light",tooltip:this.getTranslation("closeChatAriaLabel"),small:"true"}))),(this.messagesData?.messages?.length??0)>0?t("main",{id:e,class:"chat-main",role:"main","aria-labelledby":"chat-title"},this.messagesData.header&&t("div",{class:"chat-overview"},t("div",{class:"body"},this.messagesData.header.body),r&&t("pn-button",{href:r.href,class:r.class,appearance:r.appearance,variant:r.variant,small:r.small,role:"button",onKeyDown:e=>this.handleButtonKeyDown(e)},r.content)),t("div",{ref:e=>this.chatMessagesContainer=e,class:"chat-messages",role:"log","aria-live":"polite","aria-label":this.getTranslation("chatMessagesAriaLabel")},this.groupMessages()),t("pn-icon",{class:"indicator-icon","aria-label":this.getTranslation("waitingForAnswerLabel"),role:"presentation"})):t("main",{id:e,class:"chat-main loading-chat-main",role:"main","aria-labelledby":"chat-title"},t("div",{class:"chat-loading-spinner"},t("pn-spinner",{light:"true",size:"1.5"})),t("span",{class:"chat-loading-content"},this.getTranslation("loadingText"))),t("footer",{key:"36aac7bfadef21e2e8825ab15ac6a4f2b22542ec",class:"chat-footer",role:"contentinfo"},t("div",{key:"4072b13eb9d017d0a61f01aab535f09a835d2d4a",class:"form",role:"form","aria-labelledby":n},t("label",{key:"5d553ff3714c9618a9b568ad45866c6067096d62",htmlFor:n,class:"sr-only"},this.getTranslation("writeChatMessagePlaceholder")),t("div",{key:"d3813a440bf23fb424e8cf0ab4823e7a3460f1ed",class:"chat-input-container"},t("input",{key:"5e75fa20c3e07b33cdbcc6e25a10edb77e185834",id:n,class:"chat-text-input",ref:e=>this.inputRef=e,type:"text",placeholder:this.getTranslation("writeChatMessagePlaceholder"),value:this.message,onInput:e=>this.message=e.target.value,onKeyPress:this.handleKeyPress,maxLength:3990}),!this.message.trim()?t("div",{class:"chat-disabled-button",role:"button","aria-label":this.getTranslation("sendButtonText"),"aria-disabled":"true",tabIndex:-1},t("pn-icon",{color:"gray400",icon:c})):t("pn-button",{"icon-only":"true",variant:"borderless",appearance:"light",icon:c,onClick:this.handleSendMessage,disabled:!this.message.trim(),"aria-label":this.getTranslation("sendButtonText"),tooltip:this.getTranslation("sendButtonText")}))))),this.isMinimized&&t("pn-button",{key:"fef1a0ccc04dfdfa0bd801442360e0b2a07bce73",icon:p,"icon-only":"true",class:"open-chat-btn",onClick:this.toggleChat,tooltip:this.getTranslation("openChatAriaLabel"),"aria-label":this.getTranslation("openChatAriaLabel"),"aria-expanded":!this.isMinimized})))}static get watchers(){return{messages:["handleMessagesChange"],pnChatId:["handleNewChatId"],forceOpen:["handleSameChatId"],isMinimized:["scrollToBottom"]}}};f.style=u;export{f as pn_chat};
2
- //# sourceMappingURL=p-4a164ef8.entry.js.map
1
+ import{r as e,h as t,F as a,d as i}from"./p-b3a13b6a.js";import{a as n}from"./p-36b39340.js";import{c as s}from"./p-366fd15a.js";import{m as h}from"./p-b2f2fbb6.js";import{L as r}from"./p-8d78b631.js";import{P as o}from"./p-6bec8d72.js";import"./p-3478f368.js";const l='<svg class="pn-icon-svg" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path fill="#000" fill-rule="evenodd" d="M21 11.998a1 1 0 0 1-.577.908l-15 7a1 1 0 0 1-1.237-1.487l4.585-6.42-1.46-2.043A1 1 0 1 1 8.94 8.794l1.875 2.625a1 1 0 0 1 0 1.162l-2.788 3.903 9.599-4.48L6.58 6.909a1 1 0 1 1 .838-1.816l13 6a1 1 0 0 1 .581.906M5 4a1 1 0 0 1 1 1v.01a1 1 0 1 1-2 0V5a1 1 0 0 1 1-1" clip-rule="evenodd"/></svg>';const c=l;const d='<svg class="pn-icon-svg" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path fill="#000" fill-rule="evenodd" d="M12.388 2c5.522 0 10 4.477 10 10s-4.478 10-10 10H2l1.355-4.064-.798-3.987a8.8 8.8 0 0 1-.17-1.717V12c0-5.523 4.478-10 10-10m8 10a8 8 0 0 0-16 0v.232q0 .67.13 1.325l.902 4.507L4.775 20h7.612a8 8 0 0 0 8-8m-12.5-1.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3m6 1.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0m3-1.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3" clip-rule="evenodd"/></svg>';const p=d;const m={sv:{relatedContentAriaLabel:"Relaterat innehåll",chatMinimizedAriaLabel:"Chatten är minimerad",chatOpenedAriaLabel:"Chatten är öppen",minimizeChatAriaLabel:"Minimera chatten",closeChatAriaLabel:"Stäng chatten",openChatAriaLabel:"Öppna chatten",chatControlsAriaLabel:"Chattkontroller",chatMessagesAriaLabel:"Chattmeddelanden",sentMessageAriaLabel:"Meddelande skickat",writeChatMessagePlaceholder:"Skriv ett meddelande...",waitingForAnswerLabel:"Väntar på svar",sendButtonText:"Skicka",loadingText:"Laddar..."},en:{relatedContentAriaLabel:"Related content",chatMinimizedAriaLabel:"Chat is minimized",chatOpenedAriaLabel:"Chat is open",minimizeChatAriaLabel:"Minimize chat",closeChatAriaLabel:"Close chat",openChatAriaLabel:"Open chat",chatControlsAriaLabel:"Chat controls",chatMessagesAriaLabel:"Chat messages",sentMessageAriaLabel:"Message sent",writeChatMessagePlaceholder:"Type a message...",waitingForAnswerLabel:"Waiting for answer",sendButtonText:"Send",loadingText:"Loading..."},da:{relatedContentAriaLabel:"Relateret indhold",chatMinimizedAriaLabel:"Chatten er minimeret",chatOpenedAriaLabel:"Chatten er åben",minimizeChatAriaLabel:"Minimer chatten",closeChatAriaLabel:"Luk chatten",openChatAriaLabel:"Åbn chatten",chatControlsAriaLabel:"Chatkontroller",chatMessagesAriaLabel:"Chatbeskeder",sentMessageAriaLabel:"Besked sendt",writeChatMessagePlaceholder:"Skriv en besked...",waitingForAnswerLabel:"Venter på svar",sendButtonText:"Send",loadingText:"Indlæser..."},no:{relatedContentAriaLabel:"Relatert innhold",chatMinimizedAriaLabel:"Chatten er minimert",chatOpenedAriaLabel:"Chatten er åpen",minimizeChatAriaLabel:"Minimer chatten",closeChatAriaLabel:"Lukk chatten",openChatAriaLabel:"Åpne chatten",chatControlsAriaLabel:"Chatkontroller",chatMessagesAriaLabel:"Chatmeldinger",sentMessageAriaLabel:"Melding sendt",writeChatMessagePlaceholder:"Skriv en melding...",waitingForAnswerLabel:"Venter på svar",sendButtonText:"Send",loadingText:"Laster..."},fi:{relatedContentAriaLabel:"Aiheeseen liittyvä sisältö",chatMinimizedAriaLabel:"Keskustelu on pienennetty",chatOpenedAriaLabel:"Keskustelu on auki",minimizeChatAriaLabel:"Pienennä keskustelu",closeChatAriaLabel:"Sulje keskustelu",openChatAriaLabel:"Avaa keskustelu",chatControlsAriaLabel:"Keskustelun hallinta",chatMessagesAriaLabel:"Keskusteluviestit",sentMessageAriaLabel:"Viesti lähetetty",writeChatMessagePlaceholder:"Kirjoita viesti...",waitingForAnswerLabel:"Odotetaan vastausta",sendButtonText:"Lähetä",loadingText:"Ladataan..."}};const b="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}@media screen and (max-width: 767px){.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}}.pn-chat{display:flex;flex-direction:column;height:600px;width:400px;max-width:400px;box-shadow:0 4px 4px 0 rgba(0, 0, 0, 0.25), 0 -2px 4px 0 rgba(240, 240, 240, 0.55);border-radius:1.6rem}@media (max-width: 768px){.pn-chat:not(.minimized){position:absolute;height:100dvh;width:100dvw;max-width:100%;top:0;left:0}.pn-chat.minimized{height:70px;border-radius:0.8rem 0.8rem 0 0}}@media (min-width: 768px) and (max-width: 1024px){.pn-chat{max-width:350px}}.pn-chat .chat-header{background-color:#ffffff;padding:0.8rem;padding-left:1.6rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f3f2f2}@media (min-width: 768px){.pn-chat .chat-header{border-radius:1.6rem 1.6rem 0 0}}.pn-chat .chat-header .chat-controls{display:flex}.pn-chat .chat-header pn-button.minimize-btn button.pn-button{padding-bottom:0;margin-right:1rem}.pn-chat .chat-header pn-button.minimize-btn button.pn-button .pn-button-content{align-items:flex-end;position:absolute;bottom:0px}.pn-chat .chat-header #chat-title{margin:0;font-size:1.6rem;font-weight:500;line-height:1;height:100%;align-content:center}.pn-chat .chat-main{display:flex;flex-direction:column;flex-grow:1;overflow-y:auto;gap:1.6rem;padding:1.6rem;padding-bottom:3.2rem;background-color:#ffffff}.pn-chat .chat-main.loading-chat-main{display:flex;justify-content:center;align-items:center}.pn-chat .chat-loading-spinner{background-color:#005d92;width:4.8rem;height:4.8rem;border-radius:4.8rem;display:flex;align-items:center;justify-content:center}.pn-chat .chat-loading-content{color:#2d2013;font-size:1.6rem;font-weight:400}.pn-chat .chat-overview{text-align:center}.pn-chat .chat-messages{display:flex;flex-direction:column;gap:1.6rem;text-align:center}.pn-chat .card-container .slider-wrapper{margin:0}.pn-chat .card-container .slides-container{display:flex;gap:1rem}.pn-chat .card-container .slide:nth-child(even) [data-card]{width:calc(100% - 1rem)}@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.95)}}.pn-chat .chat-footer{background:#ffffff;border-top:1px solid #f3f2f2;border-radius:0 0 1.6rem 1.6rem}.pn-chat .chat-footer .form{display:flex;gap:0.7rem;padding:1rem}.pn-chat .chat-input-container{display:flex;flex-grow:1;justify-content:space-between;gap:0.7rem;background:#f9f8f8;border-radius:6.4rem}.pn-chat .chat-input-container .chat-text-input{border:none;background:transparent;width:100%;outline:0.2rem solid transparent;outline-offset:0.2rem;padding-left:1.6rem}.pn-chat .chat-input-container .chat-text-input:focus{border-radius:6.4rem}.pn-chat .chat-input-container .chat-text-input:focus-visible{outline-color:#005d92}.pn-chat .chat-input-container .chat-text-input::placeholder{top:2px;position:relative;color:#969087}.pn-chat .chat-input-container .chat-disabled-button{display:flex;width:3.5em;min-height:3em;min-width:0;align-items:center;justify-content:center}.pn-chat.minimized{background:transparent;border:initial;box-shadow:initial;max-width:50px;max-height:50px;min-width:initial;min-height:initial;transform:scale(0.95);cursor:pointer}.pn-chat.minimized .minimize-btn,.pn-chat.minimized .close-btn{position:absolute;top:0;right:0;bottom:0;left:0}.pn-chat.minimized .minimize-btn button,.pn-chat.minimized .close-btn button{display:none}.pn-chat.minimized .chat-main,.pn-chat.minimized .chat-footer{display:none}.pn-chat.closed{display:none}.pn-chat .open-chat-btn .pn-button{width:5.6rem;height:5.6rem}.pn-chat .open-chat-btn .pn-icon svg{width:3.2rem;height:3.2rem}.pn-chat .indicator-icon{padding:0.2rem 0.8rem;margin-right:auto;margin-top:1rem;margin-bottom:2rem;visibility:hidden}.pn-chat .minimize-btn .pn-button pn-icon .pn-icon-svg path,.pn-chat .close-btn .pn-button pn-icon .pn-icon-svg path{fill:#005d92}@media (max-width: 768px){body.chat-open{overflow:hidden}}";const u=b;const f=class{constructor(t){e(this,t);this.endpoint=undefined;this.customerSegment=undefined;this.mainHeading="";this.relatedContentAriaLabel=undefined;this.chatMinimizedAriaLabel=undefined;this.chatOpenedAriaLabel=undefined;this.minimizeChatAriaLabel=undefined;this.closeChatAriaLabel=undefined;this.openChatAriaLabel=undefined;this.chatControlsAriaLabel=undefined;this.chatMessagesAriaLabel=undefined;this.sentMessageAriaLabel=undefined;this.writeChatMessagePlaceholder=undefined;this.waitingForAnswerLabel=undefined;this.sendButtonText=undefined;this.loadingText=undefined;this.carouselSlidesToShow=1;this.messages=undefined;this.language="sv";this.market="se";this.itemId="";this.pnChatId="00000000-0000-0000-0000-000000000000";this.forceOpen=false;this.isLoggedIn=false;this.message="";this.messagesData=undefined;this.isMinimized=true;this.isClosed=false;this.lastMessageId="";this.i18n=undefined}chatId;_defaultChatId="00000000-0000-0000-0000-000000000000";_defaultAlternativeChatId="1";chatLocalStorageKey="sf-chat-state";chatMessagesContainer;chatRef;inputRef;storage=new r;_chatService;_chatSegment="#chat";_forceClose=false;componentWillLoad(){this._forceClose=false;this._chatService=new o(this.endpoint,this.market,this.language);this.messagesData={header:{},messages:[]};let e=this.storage.get(this.chatLocalStorageKey);if(e&&e.isLoggedIn===!this.isLoggedIn){this.storage.remove(this.chatLocalStorageKey)}else if(e&&e.chatId){this.chatId=e?.chatId??this.chatId}this.setTranslations();setInterval((()=>{this.updateChat()}),1500)}setTranslations(){if(this.language&&m[this.language]){this.i18n=m[this.language]}}getTranslation(e){const t=this[e];if(t===undefined||t===null||t===""){return m[this.language]?.[e]??m["en"][e]}return t}async updateChat(){if(this.isMinimized||this.isClosed){return}let e=this.lastMessageId;await this._chatService.fetchMessages(this.chatId,this.messagesData).then((t=>{this.lastMessageId=this._chatService.GetLastMessageId(t?.messages,this.lastMessageId);let a=document.getElementsByClassName("pn-chat-before");let i=Array.from(a);t.messages.forEach((e=>{i.forEach((t=>{if(e.content!=null&&(t.textContent.trim()===e.content.trim()||t.textContent.trim().includes(e.content.trim()))){t.remove()}}));this.renderMessage(e)}));if(e!==this.lastMessageId){this._chatService.updateLastMessageId(this.chatId,this.lastMessageId);this.messagesData=t;t.messages.forEach((e=>{this.renderMessage(e)}))}}))}async setStartValues(){if(this._forceClose){this._forceClose=false;return}if((!this.chatId||this.chatId===this._defaultChatId||this.chatId===this._defaultAlternativeChatId)&&!this.isMinimized){this.chatId=await this._chatService.startChat(this.pnChatId,this.itemId);this.storage.set(this.chatLocalStorageKey,{chatId:this.chatId,isLoggedIn:this.isLoggedIn})}if(this.chatId){this.storage.set(this.chatLocalStorageKey,{chatId:this.chatId,isLoggedIn:this.isLoggedIn});await this.fetchMessages();this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId)}}async fetchMessages(){await this._chatService.fetchMessages(this.chatId,this.messagesData).then((e=>{this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId);this.messagesData=e;let t=document.getElementsByClassName("pn-chat-before");let a=Array.from(t);e.messages.forEach((e=>{a.forEach((t=>{if(t.textContent.trim()===e.content.trim()||t.textContent.trim().includes(e.content.trim())){t.remove()}}));this.renderMessage(e)}));return e}))}async handleSend(){if(!this.message?.trim()){return}let e=this.message;this.message="";this.createBeforeElement(e);let t=await this._chatService.sendMessage(e,this.itemId,this.chatId,this.lastMessageId,"Text");this.lastMessageId=t;this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId);this.announceToScreenReader(this.getTranslation("sentMessageAriaLabel"))}groupMessages(){const e=[];let a=[];const i=()=>{if(a.length>0){const i={slides:a.map((e=>{const t=`\n <pn-chat-message customerSegment=${this.customerSegment} data-card role="article" category=${e.category}>\n <h2 class="card-heading">${e.heading}</h2>\n <p>${e.content}</p>\n ${e.buttons?.map((e=>`\n <pn-button\n href="${e.href}"\n class="${e.class}"\n appearance="${e.appearance}"\n variant="${e.variant}"\n small="${e.small}"\n role="button"\n >\n ${e.content}\n </pn-button>\n `)).join("")||""}\n </pn-chat-message>\n `;return t}))};e.push(t("pn-marketweb-carousel",{class:"card-container",nextButtonLabel:"Next",previousButtonLabel:"Previous",ariaNavigationLabel:this.getTranslation("relatedContentAriaLabel"),slidesToShow:this.carouselSlidesToShow,source:JSON.stringify(i)}));a=[]}};this.messagesData.messages.forEach(((t,n)=>{if(t.category==="Card"){a.push(t);if(n===this.messagesData.messages.length-1||this.messagesData.messages[n+1]?.category!=="Card"){i()}}else{i();e.push(this.renderMessage(t))}}));return e}handleKeyPress=e=>{if(e.key==="Enter"&&this.message.trim()){e.preventDefault();this.handleSend()}};handleSendMessage=e=>{if(this.message.trim()){e.preventDefault();this.handleSend()}};handleButtonKeyDown(e){if(e.key==="Enter"||e.key===" "){e.preventDefault();e.target.click()}}handleKeyDown(e){if(e.key==="Escape"&&this.isMinimized&&!this.isClosed){this.toggleChat()}}handleMessagesChange(e){if(e){this.handleSend()}}handleNewChatId(){this.chatId=this.pnChatId===this._defaultAlternativeChatId?this._defaultChatId:this.pnChatId;this.messagesData.messages=[];this.isMinimized=false;this.setStartValues()}handleSameChatId(){this.isMinimized=false}scrollToBottom(){const e=new MutationObserver(((e,t)=>{const a=document.getElementById("chat-main");if(a){setTimeout((()=>{a.scrollTo({top:a.scrollHeight,behavior:"smooth"})}),500);t.disconnect()}}));e.observe(document.body,{childList:true,subtree:true})}closeChat=()=>{this._forceClose=true;this.storage.remove(this.chatLocalStorageKey);this.chatId=null;this.pnChatId=this._defaultChatId;let e=document.getElementsByTagName("pn-chat")[0];e.setAttribute("item-id","");let t=window.location.href.includes(this._chatSegment);if(t){this.isMinimized=!this.isMinimized;this.announceToScreenReader(this.isMinimized?this.getTranslation("chatMinimizedAriaLabel"):this.getTranslation("chatOpenedAriaLabel"));document.body.classList.toggle("chat-open");window.location.href=window.location.href.split(this._chatSegment)[0]}else{this._forceClose=false;this.toggleChat()}};toggleChat=()=>{this.isMinimized=!this.isMinimized;this.announceToScreenReader(this.isMinimized?this.getTranslation("chatMinimizedAriaLabel"):this.getTranslation("chatOpenedAriaLabel"));document.body.classList.toggle("chat-open");if(!this.isMinimized&&!this.chatId){this.setStartValues()}};announceToScreenReader(e){const t=document.createElement("div");t.setAttribute("role","status");t.setAttribute("aria-live","polite");t.classList.add("sr-only");t.textContent=e;document.body.appendChild(t);setTimeout((()=>t.remove()),1e3)}renderMessage(e){switch(e.category){case"Bot":return this.renderBaseMessage(e);case"Button":return this.renderButtonMessage(e);case"ButtonResponse":return this.renderBaseMessage(e);case"Link":return this.renderLinkMessage(e);case"Card":return this.renderCardMessage(e);case"User":return this.renderBaseMessage(e);case"Agent":return this.renderAgentMessage(e);case"System":return this.renderBaseMessage(e)}}renderBaseMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category,agentName:"",role:"log","aria-live":"polite"},e.content)}renderAgentMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category,agentName:e.agentName,role:"log","aria-live":"polite"},e.content)}renderButtonMessage(e){let a={};if(e?.props){try{a=JSON.parse(e.props)}catch(e){console.error("Error parsing button props",e instanceof Error?e.message:"Unknown error");return}}const i=t=>{const i=t.target.closest("button");if(i===null||i?.hasAttribute("disabled")){t.preventDefault();t.stopPropagation();return}if(a["data-action"]==="minimize"){this.toggleChat()}if(a["data-action"]==="choice"){(async()=>{await this.handleSendChoice(a["data-option-choice"],e.content)})();const t=document.querySelectorAll('[data-action="choice"]');t.forEach((e=>{const t=e.querySelector("button");t?.setAttribute("disabled","true")}))}};return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category},t("pn-button",{class:e.class,role:"button",...a,onClick:i,onKeyDown:e=>this.handleButtonKeyDown(e)},e.content))}createBeforeElement(e){const t=this.chatMessagesContainer;const a=document.createElement("pn-chat-message");a.setAttribute("customerSegment",this.customerSegment);a.setAttribute("category","User");a.classList.add("pn-chat-before");a.textContent=e;t.appendChild(a);this.scrollToBottom();a.scrollIntoView()}async handleSendChoice(e,t){this.createBeforeElement(t);let a=await this._chatService.sendMessage(e,this.itemId,this.chatId,this.lastMessageId,"Choice");this.lastMessageId=a;this.lastMessageId=this._chatService.GetLastMessageId(this.messagesData.messages,this.lastMessageId);this.announceToScreenReader(this.getTranslation("sentMessageAriaLabel"))}renderLinkMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category},t("a",{href:e.href,role:"link",rel:"noopener noreferrer"},t("span",{class:"content"},e.content),t("pn-icon",{icon:n,color:"blue700","aria-hidden":"true",role:"presentation"})))}renderCardMessage(e){return t("pn-chat-message",{customerSegment:this.customerSegment,category:e.category,"data-card":true,role:"article"},t("h2",{class:"card-heading"},e.heading),t("p",null,e.content),e.buttons&&t("div",{class:"cta"},e.buttons?.map((e=>t("pn-button",{href:e.href,class:e.class,appearance:e.appearance,variant:e.variant,small:e.small,role:"button",onKeyDown:e=>this.handleButtonKeyDown(e)},e.content)))))}render(){const e="chat-main";const n="chat-input";const r=this.messagesData?.header.button;return t(i,{key:"83e45973c72da8db520a2772e21c707057f8ea05",class:this.customerSegment},!this.isClosed&&this.messagesData&&t("div",{key:"bd879e2a4dae3f4e8d6ef1ba1eddf87d11eb027c",class:`pn-chat ${this.isMinimized?"minimized":""} ${this.isClosed?"closed":""}`,ref:e=>this.chatRef=e,role:"region","aria-label":this.mainHeading},!this.isMinimized&&t(a,{key:"031dbbb2210546b96ab3e1e2780147b2ef3ccf8f"},t("header",{key:"cf4b00ebafc4d246c325ebaab7ceed86267f2cf4",class:"chat-header",role:"banner"},t("h1",{key:"016ae1d0bd22835856fef753e8ee2ad6acdcdf9b",id:"chat-title"},this.mainHeading),t("div",{key:"f75f5e771c7ad7d8e07a6d858da5eccc6f4ab78f",class:"chat-controls",role:"toolbar","aria-label":this.getTranslation("chatControlsAriaLabel")},t("pn-button",{key:"99c86d30b29adba316f8a33294d2b29f48a05fea",icon:h,"icon-only":"true",class:"minimize-btn",onClick:this.toggleChat,"aria-expanded":!this.isMinimized,"aria-controls":e,"aria-label":this.getTranslation("minimizeChatAriaLabel"),appearance:"light",tooltip:this.getTranslation("minimizeChatAriaLabel"),small:"true"}),t("pn-button",{key:"d599bdc10e557ac09a71e30c9068d5a75477cf5f",icon:s,"icon-only":"true",class:"close-btn",onClick:this.closeChat,"aria-expanded":!this.isMinimized,"aria-label":this.getTranslation("closeChatAriaLabel"),appearance:"light",tooltip:this.getTranslation("closeChatAriaLabel"),small:"true"}))),(this.messagesData?.messages?.length??0)>0?t("main",{id:e,class:"chat-main",role:"main","aria-labelledby":"chat-title"},this.messagesData.header&&t("div",{class:"chat-overview"},t("div",{class:"body"},this.messagesData.header.body),r&&t("pn-button",{href:r.href,class:r.class,appearance:r.appearance,variant:r.variant,small:r.small,role:"button",onKeyDown:e=>this.handleButtonKeyDown(e)},r.content)),t("div",{ref:e=>this.chatMessagesContainer=e,class:"chat-messages",role:"log","aria-live":"polite","aria-label":this.getTranslation("chatMessagesAriaLabel")},this.groupMessages()),t("pn-icon",{class:"indicator-icon","aria-label":this.getTranslation("waitingForAnswerLabel"),role:"presentation"})):t("main",{id:e,class:"chat-main loading-chat-main",role:"main","aria-labelledby":"chat-title"},t("div",{class:"chat-loading-spinner"},t("pn-spinner",{light:"true",size:"1.5"})),t("span",{class:"chat-loading-content"},this.getTranslation("loadingText"))),t("footer",{key:"8a80e22c49ddc5fd2a3e8c0e6bf4ec19a01a9feb",class:"chat-footer",role:"contentinfo"},t("div",{key:"ca74ace2f94575115e14b324741d71be78483ebe",class:"form",role:"form","aria-labelledby":n},t("label",{key:"f8d85aed60f7817834db48bfb6c9cbc71ee45def",htmlFor:n,class:"sr-only"},this.getTranslation("writeChatMessagePlaceholder")),t("div",{key:"36cfef57c4a0c025cb3867fb9027713b51b68492",class:"chat-input-container"},t("input",{key:"6a1cd7179a1e72a7635f4889576912f54012bdf4",id:n,class:"chat-text-input",ref:e=>this.inputRef=e,type:"text",placeholder:this.getTranslation("writeChatMessagePlaceholder"),value:this.message,onInput:e=>this.message=e.target.value,onKeyPress:this.handleKeyPress,maxLength:3990}),!this.message.trim()?t("div",{class:"chat-disabled-button",role:"button","aria-label":this.getTranslation("sendButtonText"),"aria-disabled":"true",tabIndex:-1},t("pn-icon",{color:"gray400",icon:c})):t("pn-button",{"icon-only":"true",variant:"borderless",appearance:"light",icon:c,onClick:this.handleSendMessage,disabled:!this.message.trim(),"aria-label":this.getTranslation("sendButtonText"),tooltip:this.getTranslation("sendButtonText")}))))),this.isMinimized&&t("pn-button",{key:"ae2cbbbc2e4570985655c27933e5db24368c8b8e",icon:p,"icon-only":"true",class:"open-chat-btn",onClick:this.toggleChat,tooltip:this.getTranslation("openChatAriaLabel"),"aria-label":this.getTranslation("openChatAriaLabel"),"aria-expanded":!this.isMinimized})))}static get watchers(){return{messages:["handleMessagesChange"],pnChatId:["handleNewChatId"],forceOpen:["handleSameChatId"],isMinimized:["scrollToBottom"]}}};f.style=u;export{f as pn_chat};
2
+ //# sourceMappingURL=p-03728b0b.entry.js.map
@@ -0,0 +1,2 @@
1
+ function n(n){if(!n?.languages?.length){return[]}const e=Array.from(document.querySelectorAll('link[rel="alternate"][hreflang]'));const r=e.map((n=>{let e=n.getAttribute("hreflang")??"";if(e.indexOf("en-")!==-1||e.indexOf("en_")!==-1){e=e.substring(0,2)}return e}));if(!r.length){return[...n.languages]}return n.languages.filter((n=>r.includes(n.twoLetterISOLanguageName)))}function e(n,e,r){if(r){return null}const t=document.querySelector(`link[rel="alternate"][hreflang="${n.twoLetterISOLanguageName}"]`);if(t){return t.getAttribute("href")}const u=e?.url??"/";return u+(u.lastIndexOf("/")!==u.length-1?"/":"")+n.twoLetterISOLanguageName}function r(n,e,r,t){if(t){return n}if(n[0]?.name===e.menuHomeButton){return n}return[{href:r,name:e.menuHomeButton,id:"homelink",open:false,selected:false,children:[]},...n]}function t(n){return"promo-"+n.linkText.replace(/[^A-Za-z0-9.\\\/]/gim,"")}function u(n){return n.length>0?n[n.length-1]:null}function s(n){if(n.length<=1){return[]}return n.slice(0,-1)}function i(n){const e=u(n);const r=s(n);const t=r.map(((n,e)=>({index:e,label:n.name,href:n.href||undefined,root:n})));return{hasMenuSwitching:t.length>0,modeRoots:r,menuModeOptions:t,sharedRoot:e,sharedItems:e?.children??[]}}function a(n,e){return n.modeRoots[e]??n.modeRoots[0]??null}function o(n,e){const r=i(n);return a(r,e)}function c(n,e){const r=a(n,e);if(!r){return{primaryItems:n.sharedItems,sharedItems:[]}}return{primaryItems:r?.children??[],sharedItems:n.sharedItems}}function f(n,e){const r=i(n);return c(r,e)}function l(n,e){const r=c(n,e);return[...r.primaryItems,...r.sharedItems]}function h(n){switch(n?.toLowerCase()){case"business":return"business";case"private":return"private";default:return"private"}}function d(n){switch(h(n)){case"private":return"light";case"business":return"dark";default:return"light"}}function m(n,e){if(n){try{const e=JSON.parse(n);if(Array.isArray(e)){const n=e.filter((n=>typeof n==="string")).map((n=>h(n)));if(n.length>0){return n}}}catch(n){console.warn("[pn-marketweb-header] Invalid menu-themes value",n)}}if(!Array.isArray(e)){return[]}return e.map((n=>n?.root?.toggleTheme)).filter((n=>typeof n==="string")).map((n=>h(n)))}export{o as a,l as b,f as c,e as d,i as e,t as f,n as g,d as h,r as p,m as r};
2
+ //# sourceMappingURL=p-04f51418.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getLanguageOptions","languageSelector","languages","length","hrefLangTags","Array","from","document","querySelectorAll","hrefLangs","map","tag","value","getAttribute","indexOf","substring","filter","option","includes","twoLetterISOLanguageName","getLanguageVersionUrl","item","siteDefinition","spaMode","alternativeTag","querySelector","siteUrl","url","lastIndexOf","prependHomeMenuItem","items","i18n","homeUrl","hideHomeMenuItem","name","menuHomeButton","href","id","open","selected","children","promotedItemId","linkText","replace","getLastMenuItem","menuItems","getModeRoots","slice","extractToggleableMenuStructure","sharedRoot","modeRoots","menuModeOptions","root","index","label","undefined","hasMenuSwitching","sharedItems","getToggleRootForMode","structure","mode","getToggleRootForMenuItems","getMenuGroupsForMode","activeRoot","primaryItems","getVisibleMenuGroupsForMode","buildMenuItemsForMode","groups","normalizeHeaderTheme","theme","toLowerCase","getAppearanceForTheme","resolveHeaderMenuThemes","menuThemes","parsed","JSON","parse","isArray","filtered","error","console","warn","toggleTheme"],"sources":["src/components/layout-components/pn-marketweb-header/utils/header-language.ts","src/components/layout-components/pn-marketweb-header/utils/header-menu.ts","src/components/layout-components/pn-marketweb-header/utils/header-toggle-menu.ts","src/components/layout-components/pn-marketweb-header/utils/header-theme.ts"],"sourcesContent":["import {\n LanguageSelector,\n LanguageSelectorItem,\n MenuSiteDefinition,\n} from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';\n\n/**\n * Builds the list of language options that should actually be shown.\n *\n * What it does:\n * - Reads the backend-provided language selector model\n * - Checks page <link rel=\"alternate\" hreflang=\"...\"> tags\n * - If hreflang tags exist, only languages with matching tags are shown\n * - If no hreflang tags exist, all backend-provided languages are shown\n */\nexport function getLanguageOptions(languageSelector: LanguageSelector | null): LanguageSelectorItem[] {\n if (!languageSelector?.languages?.length) {\n return [];\n }\n\n const hrefLangTags = Array.from(document.querySelectorAll('link[rel=\"alternate\"][hreflang]'));\n const hrefLangs = hrefLangTags.map(tag => {\n let value = tag.getAttribute('hreflang') ?? '';\n if (value.indexOf('en-') !== -1 || value.indexOf('en_') !== -1) {\n value = value.substring(0, 2);\n }\n return value;\n });\n\n if (!hrefLangs.length) {\n return [...languageSelector.languages];\n }\n\n return languageSelector.languages.filter(option =>\n hrefLangs.includes(option.twoLetterISOLanguageName),\n );\n}\n\n/**\n * Resolves the URL for a given language option.\n *\n * What it does:\n * - Returns null in SPA mode so language switching can be handled by events only\n * - Uses an existing hreflang alternate URL if one exists in the document\n * - Otherwise falls back to generating a language URL from the site definition\n */\nexport function getLanguageVersionUrl(\n item: LanguageSelectorItem,\n siteDefinition: MenuSiteDefinition | null,\n spaMode: boolean,\n): string | null {\n if (spaMode) {\n return null;\n }\n\n const alternativeTag = document.querySelector(\n `link[rel=\"alternate\"][hreflang=\"${item.twoLetterISOLanguageName}\"]`,\n );\n\n if (alternativeTag) {\n return alternativeTag.getAttribute('href');\n }\n\n const siteUrl = siteDefinition?.url ?? '/';\n return siteUrl + (siteUrl.lastIndexOf('/') !== siteUrl.length - 1 ? '/' : '') + item.twoLetterISOLanguageName;\n}","import {\n MenuItem,\n PromotedMenuItem,\n SiteHeaderI18N,\n} from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';\n\n/**\n * Adds a Home item at the beginning of the main menu when needed.\n *\n * What it does:\n * - Returns the input untouched when hideHomeMenuItem is true\n * - Avoids adding a duplicate Home item if one already exists first in the list\n * - Otherwise prepends a synthetic Home item using the translated label\n */\nexport function prependHomeMenuItem(\n items: MenuItem[],\n i18n: SiteHeaderI18N,\n homeUrl: string,\n hideHomeMenuItem: boolean,\n): MenuItem[] {\n if (hideHomeMenuItem) {\n return items;\n }\n\n if (items[0]?.name === i18n.menuHomeButton) {\n return items;\n }\n\n return [\n {\n href: homeUrl,\n name: i18n.menuHomeButton,\n id: 'homelink',\n open: false,\n selected: false,\n children: [],\n } as MenuItem,\n ...items,\n ];\n}\n\n/**\n * Creates a stable-ish tracking id for promoted menu items.\n *\n * This mirrors the old wrapper behavior and is used when rendering promoted links.\n */\nexport function promotedItemId(item: PromotedMenuItem): string {\n return 'promo-' + item.linkText.replace(/[^A-Za-z0-9.\\\\\\/]/gim, '');\n}","import type {\n MenuItem,\n} from '../../pn-marketweb-siteheader/pn-marketweb-siteheader-types';\nimport type {\n HeaderMenuGroups,\n HeaderMenuMode,\n HeaderMenuModeOption,\n HeaderMenuStructure,\n} from '../types/pn-marketweb-header.types';\n\nfunction getLastMenuItem(menuItems: MenuItem[]): MenuItem | null {\n return menuItems.length > 0\n ? menuItems[menuItems.length - 1]\n : null;\n}\n\nfunction getModeRoots(menuItems: MenuItem[]): MenuItem[] {\n if (menuItems.length <= 1) {\n return [];\n }\n\n return menuItems.slice(0, -1);\n}\n\n/**\n * Header menu mode utilities.\n *\n * Purpose\n * -------\n * Interprets the backend top-level menu structure used for header menu\n * switching.\n *\n * Expected top-level order:\n * - all items except the last = switchable root menus\n * - last item = shared/common root\n *\n * Responsibilities\n * ----------------\n * - extract a structured representation of the switchable menu roots\n * - resolve the active root for a selected mode\n * - return grouped or flat visible items for rendering\n */\nexport function extractToggleableMenuStructure(\n menuItems: MenuItem[],\n): HeaderMenuStructure {\n const sharedRoot = getLastMenuItem(menuItems);\n const modeRoots = getModeRoots(menuItems);\n\n const menuModeOptions: HeaderMenuModeOption[] = modeRoots.map((root, index) => ({\n index,\n label: root.name,\n href: root.href || undefined,\n root,\n }));\n\n return {\n hasMenuSwitching: menuModeOptions.length > 0,\n modeRoots,\n menuModeOptions,\n sharedRoot,\n sharedItems: sharedRoot?.children ?? [],\n };\n}\n\n/**\n * Returns the active root item for the selected mode.\n *\n * Falls back to the first available mode root when the requested mode\n * is out of bounds.\n */\nexport function getToggleRootForMode(\n structure: HeaderMenuStructure,\n mode: HeaderMenuMode,\n): MenuItem | null {\n return structure.modeRoots[mode] ?? structure.modeRoots[0] ?? null;\n}\n\n/**\n * Returns the active root item for the selected mode directly from raw menu items.\n */\nexport function getToggleRootForMenuItems(\n menuItems: MenuItem[],\n mode: HeaderMenuMode,\n): MenuItem | null {\n const structure = extractToggleableMenuStructure(menuItems);\n return getToggleRootForMode(structure, mode);\n}\n\n/**\n * Returns grouped visible items for rendering.\n *\n * - primaryItems = children of the active root\n * - sharedItems = children of the shared/common root\n */\nexport function getMenuGroupsForMode(\n structure: HeaderMenuStructure,\n mode: HeaderMenuMode,\n): HeaderMenuGroups {\n const activeRoot = getToggleRootForMode(structure, mode);\n\n if (!activeRoot) {\n return {\n primaryItems: structure.sharedItems,\n sharedItems: [],\n };\n }\n\n return {\n primaryItems: activeRoot?.children ?? [],\n sharedItems: structure.sharedItems,\n };\n}\n\n/**\n * Returns grouped visible items directly from raw menu items.\n */\nexport function getVisibleMenuGroupsForMode(\n menuItems: MenuItem[],\n mode: HeaderMenuMode,\n): HeaderMenuGroups {\n const structure = extractToggleableMenuStructure(menuItems);\n return getMenuGroupsForMode(structure, mode);\n}\n\n/**\n * Builds a flat list of visible menu items for the selected mode.\n *\n * Useful for render paths that do not need grouped rendering.\n */\nexport function buildMenuItemsForMode(\n structure: HeaderMenuStructure,\n mode: HeaderMenuMode,\n): MenuItem[] {\n const groups = getMenuGroupsForMode(structure, mode);\n\n return [\n ...groups.primaryItems,\n ...groups.sharedItems,\n ];\n}","import type { HeaderMenuModeOption } from '../types/pn-marketweb-header.types';\n\nexport type HeaderTheme = 'business' | 'private';\nexport type HeaderAppearance = 'light' | 'dark';\n\nexport function normalizeHeaderTheme(theme: HeaderTheme): HeaderTheme {\n switch (theme?.toLowerCase()) {\n case 'business':\n return 'business';\n case 'private':\n return 'private';\n default:\n return 'private';\n }\n}\n\nexport function getAppearanceForTheme(theme: HeaderTheme): HeaderAppearance {\n switch (normalizeHeaderTheme(theme)) {\n case 'private':\n return 'light';\n case 'business':\n return 'dark';\n default:\n return 'light';\n }\n}\n\nexport function resolveHeaderMenuThemes(\n menuThemes: string | undefined,\n menuModeOptions: HeaderMenuModeOption[] | undefined\n): HeaderTheme[] {\n //1. Prop override\n if (menuThemes) {\n try {\n const parsed = JSON.parse(menuThemes);\n\n if (Array.isArray(parsed)) {\n const filtered = parsed\n .filter((item): item is string => typeof item === 'string')\n .map(item => normalizeHeaderTheme(item as HeaderTheme));\n\n if (filtered.length > 0) {\n return filtered;\n }\n }\n } catch (error) {\n console.warn('[pn-marketweb-header] Invalid menu-themes value', error);\n }\n }\n\n // 2. Fallback → VM\n if (!Array.isArray(menuModeOptions)) {\n return [];\n }\n\n return menuModeOptions\n .map(option => option?.root?.toggleTheme)\n .filter((theme): theme is string => typeof theme === 'string')\n .map(theme => normalizeHeaderTheme(theme as HeaderTheme))\n\n}"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{r as e,h as t,d as s,g as a}from"./p-b3a13b6a.js";import{a as i}from"./p-575f557a.js";import{a as n}from"./p-36b39340.js";const r='<svg class="pn-icon-svg" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path fill="#000" d="M16.035 5.52c.718-.705 1.75-.682 2.444 0 .692.678.693 1.688.014 2.326l-.021.02-1.68 1.68a1 1 0 0 0 1.415 1.414l1.669-1.669c1.544-1.466 1.452-3.779.003-5.2s-3.727-1.487-5.244 0l-4.507 4.42c-1.548 1.465-1.457 3.781-.007 5.203a1 1 0 1 0 1.4-1.428c-.692-.68-.692-1.688-.014-2.327l.014-.014z"/><path fill="#000" d="M14.762 10.254a1 1 0 1 0-1.33 1.492c.756.675.754 1.63.014 2.263l-.015.013-4.965 4.426a2.177 2.177 0 0 1-2.897 0c-.757-.675-.755-1.63-.015-2.262l.026-.024 2.097-1.926a1 1 0 1 0-1.353-1.472l-2.085 1.915c-1.704 1.471-1.6 3.837 0 5.262a4.177 4.177 0 0 0 5.558 0l4.958-4.42c1.71-1.47 1.607-3.841.007-5.267"/></svg>';const o=r;const c="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}@media screen and (max-width: 767px){.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}}pn-chat-message{display:flex;text-align:left}pn-chat-message.user,pn-chat-message.buttonresponse{justify-content:flex-end}pn-chat-message.system-message{text-align:center;justify-content:center}pn-chat-message .message-container{border-radius:0.8rem;display:flex;gap:1rem;max-width:85%;overflow-x:hidden}pn-chat-message .message-container .category{width:2.6rem}pn-chat-message .message-container.user{max-width:75%}pn-chat-message .message-container.bot .message,pn-chat-message .message-container.agent .message,pn-chat-message .message-container.link .message{background-color:#f3f2f2}pn-chat-message .message-container.bot .category,pn-chat-message .message-container.agent .category,pn-chat-message .message-container.link .category{align-self:flex-end}pn-chat-message .message-container.link{flex-basis:100%}pn-chat-message .message-container.link .category{align-self:center}pn-chat-message .message-container.link .content{line-height:1.5}pn-chat-message .message-container.link .message{padding:0}pn-chat-message .message-container.link .message a{color:#005d92;font-weight:500;display:flex;justify-content:space-between;padding:1rem 1.6rem;text-decoration:underline}pn-chat-message .message-container.link .business.message{background-color:#fdefee}pn-chat-message .message-container.button{flex-basis:100%;text-align:center;max-width:unset}pn-chat-message .message-container.button .message{padding:0}pn-chat-message .message-container.button .pn-button{min-width:18rem}pn-chat-message .message-container.button .pn-button:disabled{color:#969087}pn-chat-message .message-container.button .pn-button:disabled .pn-button-bg{border-color:#f3f2f2;background-color:#f3f2f2}pn-chat-message .message-container.card{border:solid 1px #d3cecb;border-radius:1.6rem;flex-basis:100%;max-width:100%}pn-chat-message .message-container.card .message{display:flex;flex-direction:column;gap:0.8rem;padding:1.6rem}pn-chat-message .message-container.card .card-heading{font-size:1.6rem;line-height:2.4rem;font-weight:700}pn-chat-message .message-container.card .cta{display:flex;flex-direction:row;gap:0.5rem}pn-chat-message .message-container.card .read-more{align-self:flex-start;margin-top:auto}pn-chat-message .message-container.user .message,pn-chat-message .message-container.buttonresponse .message{background-color:#e0f8ff;color:#2d2013;border-radius:0.8rem 0.8rem 0 0.8rem}pn-chat-message .message-container .message{border-radius:0 0.8rem 0.8rem 0.8rem;display:inline-block;flex:1 1 auto;font-size:1.4rem;line-height:2rem;padding:1rem 1.6rem;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;word-break:break-word}@media (max-width: 767px){pn-chat-message .message-container .message{font-size:1.6rem}}pn-chat-message .message-container.agent .category .pn-icon{background-color:#00a0d6;color:#ffffff;text-align:center;border-radius:50%;display:inline-block;width:2.5rem;height:2.5rem;font-weight:500;font-size:1.2rem;line-height:2.6rem}pn-chat-message[data-card]{height:100%}";const h=c;const l=class{constructor(t){e(this,t);this.category=undefined;this.customerSegment=undefined;this.agentName=undefined}robotIcon='<?xml version="1.0" encoding="UTF-8"?> <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 20 20"> \x3c!-- Generator: Adobe Illustrator 29.5.1, SVG Export Plug-In . SVG Version: 2.1.0 Build 141) --\x3e <defs> <style> .st0 { fill: none; } .st1 { fill: #8eddf9; } .st2 { fill: #f3f2f2; } .st3 { fill: #0d234b; } .st4 { fill: #f06365; } .st5 { clip-path: url(#clippath); } .st6 { fill: #005d92; } </style> <clipPath id="clippath"> <rect class="st0" width="20" height="20"/> </clipPath> </defs> <g class="st5"> <g> <path class="st2" d="M10,20c5.5,0,10-4.5,10-10S15.5,0,10,0,0,4.5,0,10s4.5,10,10,10Z"/> <path class="st3" d="M10.5,4h-.5v2.8h.5v-2.8Z"/> <path class="st3" d="M10.2,4.3c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z"/> <path class="st3" d="M9,5h2.4c1,0,1.8.8,1.8,1.8h-6c0-1,.8-1.8,1.8-1.8Z"/> <path class="st4" d="M17,10.3v-.8c0-1.9-1.5-3.5-3.5-3.5h-7.1c-1.9,0-3.5,1.6-3.5,3.5v.8h14.1Z"/> <path d="M13.9,16.1l-3.7.4v-.4s3.6-.4,3.6-.4c.8,0,1.6-.4,2.1-1s.7-2.9.7-3.7h.4c0,.9-.2,3.3-.8,3.9-.6.7-1.4,1.1-2.3,1.2Z"/> <path class="st4" d="M16.3,12.1v-3.6h.2c1,0,1.8.8,1.8,1.8s-.8,1.8-1.8,1.8h-.2Z"/> <path class="st4" d="M3.7,8.5v3.6h-.2c-1,0-1.8-.8-1.8-1.8s.8-1.8,1.8-1.8h.2Z"/> <path class="st3" d="M13.1,6.6h-6.2c-1.8,0-3.3,1.5-3.3,3.3v2.1c0,1.8,1.5,3.3,3.3,3.3h6.2c1.8,0,3.3-1.5,3.3-3.3v-2.1c0-1.8-1.5-3.3-3.3-3.3Z"/> <path class="st6" d="M12.8,7.8h-5.6c-1.4,0-2.5,1.1-2.5,2.5v1.4c0,1.4,1.1,2.4,2.5,2.4h5.6c1.4,0,2.4-1.1,2.4-2.4v-1.4c0-1.4-1.1-2.5-2.4-2.5Z"/> <path class="st1" d="M12.3,11.9c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z"/> <path class="st1" d="M7.7,11.9c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z"/> <path d="M11,15.8h-1.5c-.3,0-.5.2-.5.5h0c0,.3.2.5.5.5h1.5c.3,0,.5-.2.5-.5h0c0-.3-.2-.5-.5-.5Z"/> </g> </g> </svg>';blue700="blue700";getIcon(){let e=null;switch(this.category){case"Bot":return this.robotIcon;case"Agent":return this.agentName;case"Link":return o}return e}getMessageClass(){switch(this.category){case"ButtonResponse":return"buttonresponse";case"User":return"user";case"System":return"system-message";default:return undefined}}render(){const e=this.customerSegment?.toLowerCase()||"";const a=this.category?.toLowerCase()||"";return t(s,{key:"44ceed04e89a54dc0bac70c255a37ce01390f1fe",class:this.getMessageClass()},t("div",{key:"0c3ccd5d3ac20308445fcffdcb01e0249718db27",class:`message-container ${a}`},this.getIcon()&&t("span",{key:"edde2998b3a1286c6850a0766b74d1ebc6e9cde4",class:"category"},t("pn-icon",{key:"f4a81cc256774382273d2ea53b3591c6e673211b",icon:this.getIcon(),color:this.blue700,"aria-hidden":"true",role:"presentation"})),t("span",{key:"490aa122d234c92569617b38ce6f92e7e2d763ab",class:`message ${e}`},t("slot",{key:"e42e5620692f012ca32cb6f65e00256b7496d256"}))))}};l.style=h;const d="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}@media screen and (max-width: 767px){.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}}pn-marketweb-carousel{display:inline-block}pn-marketweb-carousel .pn-marketweb-carousel .slider-wrapper{margin:1rem;overflow:hidden;position:relative;touch-action:pan-y pinch-zoom}pn-marketweb-carousel .pn-marketweb-carousel .slides-container{display:flex;width:100%;list-style:none;margin:0;padding:0;overflow:hidden;position:relative;touch-action:none;transition:transform 0.5s ease-in-out;user-select:none}pn-marketweb-carousel .pn-marketweb-carousel .slides-container[data-partial=false] .slide{width:100%}pn-marketweb-carousel .pn-marketweb-carousel [data-slide]{flex:0 0 auto;transition:transform 0.5s ease-in-out}pn-marketweb-carousel .pn-marketweb-carousel .nav-button{cursor:pointer;display:flex;position:absolute;top:0;bottom:0;transform:translateY(-50%);height:2rem;margin:auto;padding:0;opacity:0.85;transition:opacity 200ms;z-index:1}pn-marketweb-carousel .pn-marketweb-carousel .nav-button.invisible{opacity:0}pn-marketweb-carousel .pn-marketweb-carousel .nav-button[data-show=false]{display:none}pn-marketweb-carousel .pn-marketweb-carousel .nav-button:hover,pn-marketweb-carousel .pn-marketweb-carousel .nav-button:focus{opacity:1}pn-marketweb-carousel .pn-marketweb-carousel [data-nav-button-prev]{left:1.75rem;border-radius:0 2rem 2rem 0}pn-marketweb-carousel .pn-marketweb-carousel [data-nav-button-next]{right:1.75rem;border-radius:2rem 0 0 2rem}@media (prefers-reduced-motion: reduce){pn-marketweb-carousel .slides-container{transition:none}pn-marketweb-carousel [data-slide]{transition:none}}";const p=d;const m=class{constructor(t){e(this,t);this.previousButtonLabel=undefined;this.nextButtonLabel=undefined;this.ariaNavigationLabel=undefined;this.source=undefined;this.slidesToShow=1;this.showCarouselButtons=true;this.showFirstSlidePrevButton=false;this.showLastSlideNextButton=false;this.slidesData=[];this.currentSlide=0;this.isDragging=false;this.slideWidth=0}static DEFAULTS={SWIPE_THRESHOLD_PX:50,ANIMATION_DURATION_MS:300,OVERSCROLL_LIMIT_PERCENT:30};get hostElement(){return a(this)}slides=null;slidesContainer=null;totalSlides=0;prevButton=null;nextButton=null;dragStartX=0;listeners=[];memoizedSlideWidth=null;componentWillLoad(){this.setInitialValues()}componentDidLoad(){this.setupCarousel();window.addEventListener("resize",this.handleResize)}disconnectedCallback(){this.cleanup();window.removeEventListener("resize",this.handleResize)}async goToSlide(e){if(e>=0&&e<this.totalSlides){this.currentSlide=e;this.moveSlides();this.updateNavButtons()}}async getCurrentSlide(){return this.currentSlide}handleSourceChange(e){if(e){this.setInitialValues()}}setInitialValues(){if(!this.source?.trim()){console.warn("No source provided for carousel");return}try{const e=JSON.parse(this.source);if(!e?.slides){throw new Error("Invalid slides data structure")}if(Array.isArray(e.slides)){this.slidesData=e.slides;this.showCarouselButtons=this.slidesData.length>1}else{throw new Error("Slides data is not an array")}}catch(e){console.error("Error parsing carousel source:",e instanceof Error?e.message:"Unknown error");this.slidesData=[]}}setupCarousel(){this.initializeElements();this.attachEventListeners();this.updateNavButtons()}initializeElements(){this.slidesContainer=this.hostElement.querySelector("[data-slides-container]");this.slides=this.hostElement.querySelectorAll("[data-slide]");this.totalSlides=this.slides?.length??0;if(this.showCarouselButtons){this.prevButton=this.hostElement.querySelector("[data-nav-button-prev]");this.nextButton=this.hostElement.querySelector("[data-nav-button-next]")}this.slideWidth=100/this.slidesToShow}attachEventListeners(){if(!this.slidesContainer)return;const e=(e,t,s,a)=>{e.addEventListener(t,s,a);this.listeners.push({element:e,event:t,handler:s})};e(this.slidesContainer,"touchstart",this.handleTouchStart,{passive:true});e(this.slidesContainer,"touchmove",this.handleTouchMove,{passive:false});e(this.slidesContainer,"touchend",this.handleTouchEnd,{passive:true});e(this.slidesContainer,"mousedown",this.handleTouchStart);e(this.slidesContainer,"mousemove",this.handleTouchMove);e(this.slidesContainer,"mouseup",this.handleTouchEnd);e(this.slidesContainer,"mouseleave",this.handleTouchEnd);if(this.showCarouselButtons){this.nextButton&&e(this.nextButton,"click",this.handleNextClick);this.prevButton&&e(this.prevButton,"click",this.handlePrevClick)}}cleanup(){this.listeners.forEach((({element:e,event:t,handler:s})=>{e.removeEventListener(t,s)}));this.listeners=[]}handleResize=()=>{this.memoizedSlideWidth=null};getSlideWidth(){if(!this.memoizedSlideWidth&&this.slidesContainer){this.memoizedSlideWidth=this.slidesContainer.offsetWidth}return this.memoizedSlideWidth??0}handleNextClick=e=>{e.stopPropagation();this.nextSlide()};handlePrevClick=e=>{e.stopPropagation();this.prevSlide()};handleTouchStart=e=>{if(e.target.classList.contains("nav-button"))return;this.isDragging=true;this.dragStartX="touches"in e?e.touches[0].clientX:e.clientX};handleTouchMove=e=>{if(!this.isDragging)return;if("touches"in e){e.preventDefault()}const t="touches"in e?e.touches[0].clientX:e.clientX;const s=t-this.dragStartX;const a=s/this.getSlideWidth()*100;this.moveSlides(a)};handleTouchEnd=e=>{if(!this.isDragging)return;this.isDragging=false;const t="changedTouches"in e?e.changedTouches[0].clientX:e.clientX;const s=t-this.dragStartX;if(Math.abs(s)>m.DEFAULTS.SWIPE_THRESHOLD_PX){if(s>0&&this.currentSlide>0){this.currentSlide--}else if(s<0&&this.currentSlide<this.totalSlides-1){this.currentSlide++}}this.moveSlides();this.updateNavButtons()};calculateProportionalTranslation(){return-200+(this.slidesToShow-1)*100}moveSlides(e=0){if(!this.slides||!this.slidesContainer){return}try{this.slides.forEach(((t,s)=>{if(t){t.style.width=`${this.slideWidth}%`;let a=0;if(this.slidesToShow===1){a=-100*this.currentSlide}else{if(this.totalSlides===2){if(this.currentSlide===1){a=-50}}else{if(this.currentSlide===1){a=-100}else if(this.currentSlide===2){if(s===0){a=-100}else{a=this.calculateProportionalTranslation()}}}}a+=e;t.style.transform=`translateX(${a}%)`;t.style.position="relative";let i;if(this.slidesToShow===1){i=s===this.currentSlide}else{i=this.currentSlide===0||this.totalSlides===2||this.currentSlide===1&&a===-100||this.currentSlide===2&&(s===0&&a===-100||s>0)}t.setAttribute("aria-hidden",(!i).toString())}}))}catch(e){console.error("Error moving slides:",e)}}updateNavButtons(){if(!this.showCarouselButtons)return;const e=this.currentSlide===0;const t=this.currentSlide===this.totalSlides-1;if(this.prevButton){this.prevButton.classList.toggle("invisible",e&&!this.showFirstSlidePrevButton);this.prevButton.dataset.show=e?`${this.showFirstSlidePrevButton}`:"true"}if(this.nextButton){this.nextButton.classList.toggle("invisible",t&&!this.showLastSlideNextButton);this.nextButton.dataset.show=t?`${this.showLastSlideNextButton}`:"true"}}nextSlide(){if(this.currentSlide>=this.totalSlides-1){this.currentSlide=0}else{this.currentSlide++}this.moveSlides();this.updateNavButtons()}prevSlide(){if(this.currentSlide<=0){this.currentSlide=this.totalSlides-1}else{this.currentSlide--}this.moveSlides();this.updateNavButtons()}render(){return t(s,{key:"b698d9177704754039292c9ce3c3c04ffe3076cb"},t("div",{key:"bcaf850a2c1626f160fd62caa5340c9ef04ca225",class:"pn-marketweb-carousel"},t("section",{key:"6fc7ddd2b8e65b0068a3f61721098403ceda1324",class:"slider-wrapper"},this.showCarouselButtons&&t("div",{key:"cfe389ab17c6b67cac74a18cfe7097866211535f",class:"nav-buttons",role:"group","aria-label":this.ariaNavigationLabel},t("pn-button",{key:"227aa82b01eed8f15e95fb4909bd311a260e4147",appearance:"light",icon:i,"icon-only":"true",tooltip:this.previousButtonLabel,class:`nav-button ${this.currentSlide===0&&!this.showFirstSlidePrevButton?"invisible":""}`,"data-nav-button-prev":true,"area-label":this.previousButtonLabel,"aria-disabled":this.currentSlide===0&&!this.showFirstSlidePrevButton}),t("pn-button",{key:"e8ec979e13ea2c3d30195de671564b4d47fcdae9",appearance:"light",icon:n,"icon-only":"true",tooltip:this.nextButtonLabel,class:"nav-button","data-nav-button-next":true,"area-label":this.nextButtonLabel,"aria-disabled":this.currentSlide===this.totalSlides-1&&!this.showLastSlideNextButton})),this.slidesData&&t("ul",{key:"9b340fd2ff08ae7161957d450feb122611c944e6",class:"slides-container","data-slides-container":true,"data-partial":this.slidesToShow===1?"false":"true","aria-live":"polite",style:{display:"flex",transform:"none"}},this.slidesData.map(((e,s)=>t("li",{class:"slide","data-slide":true,innerHTML:e,style:{width:this.slideWidth+"%"},"aria-hidden":s!==this.currentSlide})))))))}static get watchers(){return{source:["handleSourceChange"]}}};m.style=p;export{l as pn_chat_message,m as pn_marketweb_carousel};
2
- //# sourceMappingURL=p-e43a36e0.entry.js.map
1
+ import{r as e,h as t,d as s,g as a}from"./p-b3a13b6a.js";import{a as i}from"./p-575f557a.js";import{a as n}from"./p-36b39340.js";const r='<svg class="pn-icon-svg" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path fill="#000" d="M16.035 5.52c.718-.705 1.75-.682 2.444 0 .692.678.693 1.688.014 2.326l-.021.02-1.68 1.68a1 1 0 0 0 1.415 1.414l1.669-1.669c1.544-1.466 1.452-3.779.003-5.2s-3.727-1.487-5.244 0l-4.507 4.42c-1.548 1.465-1.457 3.781-.007 5.203a1 1 0 1 0 1.4-1.428c-.692-.68-.692-1.688-.014-2.327l.014-.014z"/><path fill="#000" d="M14.762 10.254a1 1 0 1 0-1.33 1.492c.756.675.754 1.63.014 2.263l-.015.013-4.965 4.426a2.177 2.177 0 0 1-2.897 0c-.757-.675-.755-1.63-.015-2.262l.026-.024 2.097-1.926a1 1 0 1 0-1.353-1.472l-2.085 1.915c-1.704 1.471-1.6 3.837 0 5.262a4.177 4.177 0 0 0 5.558 0l4.958-4.42c1.71-1.47 1.607-3.841.007-5.267"/></svg>';const o=r;const c="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}@media screen and (max-width: 767px){.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}}pn-chat-message{display:flex;text-align:left}pn-chat-message.user,pn-chat-message.buttonresponse{justify-content:flex-end}pn-chat-message.system-message{text-align:center;justify-content:center}pn-chat-message .message-container{border-radius:0.8rem;display:flex;gap:1rem;max-width:85%;overflow-x:hidden}pn-chat-message .message-container .category{width:2.6rem}pn-chat-message .message-container.user{max-width:75%}pn-chat-message .message-container.bot .message,pn-chat-message .message-container.agent .message,pn-chat-message .message-container.link .message{background-color:#f3f2f2}pn-chat-message .message-container.bot .category,pn-chat-message .message-container.agent .category,pn-chat-message .message-container.link .category{align-self:flex-end}pn-chat-message .message-container.link{flex-basis:100%}pn-chat-message .message-container.link .category{align-self:center}pn-chat-message .message-container.link .content{line-height:1.5}pn-chat-message .message-container.link .message{padding:0}pn-chat-message .message-container.link .message a{color:#005d92;font-weight:500;display:flex;justify-content:space-between;padding:1rem 1.6rem;text-decoration:underline}pn-chat-message .message-container.link .business.message{background-color:#fdefee}pn-chat-message .message-container.button{flex-basis:100%;text-align:center;max-width:unset}pn-chat-message .message-container.button .message{padding:0}pn-chat-message .message-container.button .pn-button{min-width:18rem}pn-chat-message .message-container.button .pn-button:disabled{color:#969087}pn-chat-message .message-container.button .pn-button:disabled .pn-button-bg{border-color:#f3f2f2;background-color:#f3f2f2}pn-chat-message .message-container.card{border:solid 1px #d3cecb;border-radius:1.6rem;flex-basis:100%;max-width:100%}pn-chat-message .message-container.card .message{display:flex;flex-direction:column;gap:0.8rem;padding:1.6rem}pn-chat-message .message-container.card .card-heading{font-size:1.6rem;line-height:2.4rem;font-weight:700}pn-chat-message .message-container.card .cta{display:flex;flex-direction:row;gap:0.5rem}pn-chat-message .message-container.card .read-more{align-self:flex-start;margin-top:auto}pn-chat-message .message-container.user .message,pn-chat-message .message-container.buttonresponse .message{background-color:#e0f8ff;color:#2d2013;border-radius:0.8rem 0.8rem 0 0.8rem}pn-chat-message .message-container .message{border-radius:0 0.8rem 0.8rem 0.8rem;display:inline-block;flex:1 1 auto;font-size:1.4rem;line-height:2rem;padding:1rem 1.6rem;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;word-break:break-word}@media (max-width: 767px){pn-chat-message .message-container .message{font-size:1.6rem}}pn-chat-message .message-container.agent .category .pn-icon{background-color:#00a0d6;color:#ffffff;text-align:center;border-radius:50%;display:inline-block;width:2.5rem;height:2.5rem;font-weight:500;font-size:1.2rem;line-height:2.6rem}pn-chat-message[data-card]{height:100%}";const h=c;const l=class{constructor(t){e(this,t);this.category=undefined;this.customerSegment=undefined;this.agentName=undefined}robotIcon='<?xml version="1.0" encoding="UTF-8"?> <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 20 20"> \x3c!-- Generator: Adobe Illustrator 29.5.1, SVG Export Plug-In . SVG Version: 2.1.0 Build 141) --\x3e <defs> <style> .st0 { fill: none; } .st1 { fill: #8eddf9; } .st2 { fill: #f3f2f2; } .st3 { fill: #0d234b; } .st4 { fill: #f06365; } .st5 { clip-path: url(#clippath); } .st6 { fill: #005d92; } </style> <clipPath id="clippath"> <rect class="st0" width="20" height="20"/> </clipPath> </defs> <g class="st5"> <g> <path class="st2" d="M10,20c5.5,0,10-4.5,10-10S15.5,0,10,0,0,4.5,0,10s4.5,10,10,10Z"/> <path class="st3" d="M10.5,4h-.5v2.8h.5v-2.8Z"/> <path class="st3" d="M10.2,4.3c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z"/> <path class="st3" d="M9,5h2.4c1,0,1.8.8,1.8,1.8h-6c0-1,.8-1.8,1.8-1.8Z"/> <path class="st4" d="M17,10.3v-.8c0-1.9-1.5-3.5-3.5-3.5h-7.1c-1.9,0-3.5,1.6-3.5,3.5v.8h14.1Z"/> <path d="M13.9,16.1l-3.7.4v-.4s3.6-.4,3.6-.4c.8,0,1.6-.4,2.1-1s.7-2.9.7-3.7h.4c0,.9-.2,3.3-.8,3.9-.6.7-1.4,1.1-2.3,1.2Z"/> <path class="st4" d="M16.3,12.1v-3.6h.2c1,0,1.8.8,1.8,1.8s-.8,1.8-1.8,1.8h-.2Z"/> <path class="st4" d="M3.7,8.5v3.6h-.2c-1,0-1.8-.8-1.8-1.8s.8-1.8,1.8-1.8h.2Z"/> <path class="st3" d="M13.1,6.6h-6.2c-1.8,0-3.3,1.5-3.3,3.3v2.1c0,1.8,1.5,3.3,3.3,3.3h6.2c1.8,0,3.3-1.5,3.3-3.3v-2.1c0-1.8-1.5-3.3-3.3-3.3Z"/> <path class="st6" d="M12.8,7.8h-5.6c-1.4,0-2.5,1.1-2.5,2.5v1.4c0,1.4,1.1,2.4,2.5,2.4h5.6c1.4,0,2.4-1.1,2.4-2.4v-1.4c0-1.4-1.1-2.5-2.4-2.5Z"/> <path class="st1" d="M12.3,11.9c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z"/> <path class="st1" d="M7.7,11.9c.5,0,1-.4,1-1s-.4-1-1-1-1,.4-1,1,.4,1,1,1Z"/> <path d="M11,15.8h-1.5c-.3,0-.5.2-.5.5h0c0,.3.2.5.5.5h1.5c.3,0,.5-.2.5-.5h0c0-.3-.2-.5-.5-.5Z"/> </g> </g> </svg>';blue700="blue700";getIcon(){let e=null;switch(this.category){case"Bot":return this.robotIcon;case"Agent":return this.agentName;case"Link":return o}return e}getMessageClass(){switch(this.category){case"ButtonResponse":return"buttonresponse";case"User":return"user";case"System":return"system-message";default:return undefined}}render(){const e=this.customerSegment?.toLowerCase()||"";const a=this.category?.toLowerCase()||"";return t(s,{key:"f4d6fb578fe1167f9cc054f17d29ca6a72b9965f",class:this.getMessageClass()},t("div",{key:"2c10c50f0c4ee106fb37c7dc7b934d38e014aadf",class:`message-container ${a}`},this.getIcon()&&t("span",{key:"405d261fdf80ed7d10d6aa71272c4a12310a3d4d",class:"category"},t("pn-icon",{key:"b33a6dce15011c10510462165474c6f69d932ae1",icon:this.getIcon(),color:this.blue700,"aria-hidden":"true",role:"presentation"})),t("span",{key:"d524be9eae67f866b8db74dc038491892986393e",class:`message ${e}`},t("slot",{key:"f57298b5988e3de9912eec740a6dcf26c34d2ea6"}))))}};l.style=h;const d="pn-button-dropdown .pn-button-dropdown>pn-button>.pn-button{min-height:initial}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}@media screen and (max-width: 767px){.sr-only-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}}pn-marketweb-carousel{display:inline-block}pn-marketweb-carousel .pn-marketweb-carousel .slider-wrapper{margin:1rem;overflow:hidden;position:relative;touch-action:pan-y pinch-zoom}pn-marketweb-carousel .pn-marketweb-carousel .slides-container{display:flex;width:100%;list-style:none;margin:0;padding:0;overflow:hidden;position:relative;touch-action:none;transition:transform 0.5s ease-in-out;user-select:none}pn-marketweb-carousel .pn-marketweb-carousel .slides-container[data-partial=false] .slide{width:100%}pn-marketweb-carousel .pn-marketweb-carousel [data-slide]{flex:0 0 auto;transition:transform 0.5s ease-in-out}pn-marketweb-carousel .pn-marketweb-carousel .nav-button{cursor:pointer;display:flex;position:absolute;top:0;bottom:0;transform:translateY(-50%);height:2rem;margin:auto;padding:0;opacity:0.85;transition:opacity 200ms;z-index:1}pn-marketweb-carousel .pn-marketweb-carousel .nav-button.invisible{opacity:0}pn-marketweb-carousel .pn-marketweb-carousel .nav-button[data-show=false]{display:none}pn-marketweb-carousel .pn-marketweb-carousel .nav-button:hover,pn-marketweb-carousel .pn-marketweb-carousel .nav-button:focus{opacity:1}pn-marketweb-carousel .pn-marketweb-carousel [data-nav-button-prev]{left:1.75rem;border-radius:0 2rem 2rem 0}pn-marketweb-carousel .pn-marketweb-carousel [data-nav-button-next]{right:1.75rem;border-radius:2rem 0 0 2rem}@media (prefers-reduced-motion: reduce){pn-marketweb-carousel .slides-container{transition:none}pn-marketweb-carousel [data-slide]{transition:none}}";const p=d;const m=class{constructor(t){e(this,t);this.previousButtonLabel=undefined;this.nextButtonLabel=undefined;this.ariaNavigationLabel=undefined;this.source=undefined;this.slidesToShow=1;this.showCarouselButtons=true;this.showFirstSlidePrevButton=false;this.showLastSlideNextButton=false;this.slidesData=[];this.currentSlide=0;this.isDragging=false;this.slideWidth=0}static DEFAULTS={SWIPE_THRESHOLD_PX:50,ANIMATION_DURATION_MS:300,OVERSCROLL_LIMIT_PERCENT:30};get hostElement(){return a(this)}slides=null;slidesContainer=null;totalSlides=0;prevButton=null;nextButton=null;dragStartX=0;listeners=[];memoizedSlideWidth=null;componentWillLoad(){this.setInitialValues()}componentDidLoad(){this.setupCarousel();window.addEventListener("resize",this.handleResize)}disconnectedCallback(){this.cleanup();window.removeEventListener("resize",this.handleResize)}async goToSlide(e){if(e>=0&&e<this.totalSlides){this.currentSlide=e;this.moveSlides();this.updateNavButtons()}}async getCurrentSlide(){return this.currentSlide}handleSourceChange(e){if(e){this.setInitialValues()}}setInitialValues(){if(!this.source?.trim()){console.warn("No source provided for carousel");return}try{const e=JSON.parse(this.source);if(!e?.slides){throw new Error("Invalid slides data structure")}if(Array.isArray(e.slides)){this.slidesData=e.slides;this.showCarouselButtons=this.slidesData.length>1}else{throw new Error("Slides data is not an array")}}catch(e){console.error("Error parsing carousel source:",e instanceof Error?e.message:"Unknown error");this.slidesData=[]}}setupCarousel(){this.initializeElements();this.attachEventListeners();this.updateNavButtons()}initializeElements(){this.slidesContainer=this.hostElement.querySelector("[data-slides-container]");this.slides=this.hostElement.querySelectorAll("[data-slide]");this.totalSlides=this.slides?.length??0;if(this.showCarouselButtons){this.prevButton=this.hostElement.querySelector("[data-nav-button-prev]");this.nextButton=this.hostElement.querySelector("[data-nav-button-next]")}this.slideWidth=100/this.slidesToShow}attachEventListeners(){if(!this.slidesContainer)return;const e=(e,t,s,a)=>{e.addEventListener(t,s,a);this.listeners.push({element:e,event:t,handler:s})};e(this.slidesContainer,"touchstart",this.handleTouchStart,{passive:true});e(this.slidesContainer,"touchmove",this.handleTouchMove,{passive:false});e(this.slidesContainer,"touchend",this.handleTouchEnd,{passive:true});e(this.slidesContainer,"mousedown",this.handleTouchStart);e(this.slidesContainer,"mousemove",this.handleTouchMove);e(this.slidesContainer,"mouseup",this.handleTouchEnd);e(this.slidesContainer,"mouseleave",this.handleTouchEnd);if(this.showCarouselButtons){this.nextButton&&e(this.nextButton,"click",this.handleNextClick);this.prevButton&&e(this.prevButton,"click",this.handlePrevClick)}}cleanup(){this.listeners.forEach((({element:e,event:t,handler:s})=>{e.removeEventListener(t,s)}));this.listeners=[]}handleResize=()=>{this.memoizedSlideWidth=null};getSlideWidth(){if(!this.memoizedSlideWidth&&this.slidesContainer){this.memoizedSlideWidth=this.slidesContainer.offsetWidth}return this.memoizedSlideWidth??0}handleNextClick=e=>{e.stopPropagation();this.nextSlide()};handlePrevClick=e=>{e.stopPropagation();this.prevSlide()};handleTouchStart=e=>{if(e.target.classList.contains("nav-button"))return;this.isDragging=true;this.dragStartX="touches"in e?e.touches[0].clientX:e.clientX};handleTouchMove=e=>{if(!this.isDragging)return;if("touches"in e){e.preventDefault()}const t="touches"in e?e.touches[0].clientX:e.clientX;const s=t-this.dragStartX;const a=s/this.getSlideWidth()*100;this.moveSlides(a)};handleTouchEnd=e=>{if(!this.isDragging)return;this.isDragging=false;const t="changedTouches"in e?e.changedTouches[0].clientX:e.clientX;const s=t-this.dragStartX;if(Math.abs(s)>m.DEFAULTS.SWIPE_THRESHOLD_PX){if(s>0&&this.currentSlide>0){this.currentSlide--}else if(s<0&&this.currentSlide<this.totalSlides-1){this.currentSlide++}}this.moveSlides();this.updateNavButtons()};calculateProportionalTranslation(){return-200+(this.slidesToShow-1)*100}moveSlides(e=0){if(!this.slides||!this.slidesContainer){return}try{this.slides.forEach(((t,s)=>{if(t){t.style.width=`${this.slideWidth}%`;let a=0;if(this.slidesToShow===1){a=-100*this.currentSlide}else{if(this.totalSlides===2){if(this.currentSlide===1){a=-50}}else{if(this.currentSlide===1){a=-100}else if(this.currentSlide===2){if(s===0){a=-100}else{a=this.calculateProportionalTranslation()}}}}a+=e;t.style.transform=`translateX(${a}%)`;t.style.position="relative";let i;if(this.slidesToShow===1){i=s===this.currentSlide}else{i=this.currentSlide===0||this.totalSlides===2||this.currentSlide===1&&a===-100||this.currentSlide===2&&(s===0&&a===-100||s>0)}t.setAttribute("aria-hidden",(!i).toString())}}))}catch(e){console.error("Error moving slides:",e)}}updateNavButtons(){if(!this.showCarouselButtons)return;const e=this.currentSlide===0;const t=this.currentSlide===this.totalSlides-1;if(this.prevButton){this.prevButton.classList.toggle("invisible",e&&!this.showFirstSlidePrevButton);this.prevButton.dataset.show=e?`${this.showFirstSlidePrevButton}`:"true"}if(this.nextButton){this.nextButton.classList.toggle("invisible",t&&!this.showLastSlideNextButton);this.nextButton.dataset.show=t?`${this.showLastSlideNextButton}`:"true"}}nextSlide(){if(this.currentSlide>=this.totalSlides-1){this.currentSlide=0}else{this.currentSlide++}this.moveSlides();this.updateNavButtons()}prevSlide(){if(this.currentSlide<=0){this.currentSlide=this.totalSlides-1}else{this.currentSlide--}this.moveSlides();this.updateNavButtons()}render(){return t(s,{key:"d3a7419d04a2c4fad14f8b5448343acfb08d9689"},t("div",{key:"4127f2f28a43f182ad3e6270fcddb060cde21031",class:"pn-marketweb-carousel"},t("section",{key:"ebe97d5bcc34cbf2cca67cec5cf5c332253269a7",class:"slider-wrapper"},this.showCarouselButtons&&t("div",{key:"b1afb321a25f04a618a1b9edc921277dc923bc3c",class:"nav-buttons",role:"group","aria-label":this.ariaNavigationLabel},t("pn-button",{key:"2e9ea01a7970b3e3412afffe7163c35c26b78cd5",appearance:"light",icon:i,"icon-only":"true",tooltip:this.previousButtonLabel,class:`nav-button ${this.currentSlide===0&&!this.showFirstSlidePrevButton?"invisible":""}`,"data-nav-button-prev":true,"area-label":this.previousButtonLabel,"aria-disabled":this.currentSlide===0&&!this.showFirstSlidePrevButton}),t("pn-button",{key:"d5eabf25ca890e994eded467bbb95d620a9c3b28",appearance:"light",icon:n,"icon-only":"true",tooltip:this.nextButtonLabel,class:"nav-button","data-nav-button-next":true,"area-label":this.nextButtonLabel,"aria-disabled":this.currentSlide===this.totalSlides-1&&!this.showLastSlideNextButton})),this.slidesData&&t("ul",{key:"3614d28a9b7fd857b70b6e223db3f00e1324a108",class:"slides-container","data-slides-container":true,"data-partial":this.slidesToShow===1?"false":"true","aria-live":"polite",style:{display:"flex",transform:"none"}},this.slidesData.map(((e,s)=>t("li",{class:"slide","data-slide":true,innerHTML:e,style:{width:this.slideWidth+"%"},"aria-hidden":s!==this.currentSlide})))))))}static get watchers(){return{source:["handleSourceChange"]}}};m.style=p;export{l as pn_chat_message,m as pn_marketweb_carousel};
2
+ //# sourceMappingURL=p-067c1c2f.entry.js.map