@postnord/pn-marketweb-components 3.5.2 → 3.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (400) hide show
  1. package/cjs/alert_exclamation_circle-24f29a5b.js +8 -0
  2. package/cjs/alert_exclamation_circle-24f29a5b.js.map +1 -0
  3. package/cjs/loader.cjs.js +1 -1
  4. package/cjs/pn-address-autofill.cjs.entry.js +47 -72
  5. package/cjs/pn-address-autofill.cjs.entry.js.map +1 -1
  6. package/cjs/pn-dropdown-choice-adds-row.cjs.entry.js +18 -6
  7. package/cjs/pn-dropdown-choice-adds-row.cjs.entry.js.map +1 -1
  8. package/cjs/pn-market-web-components.cjs.js +1 -1
  9. package/cjs/pn-marketweb-input.cjs.entry.js +2 -4
  10. package/cjs/pn-marketweb-input.cjs.entry.js.map +1 -1
  11. package/collection/components/input/pn-address-autofill/pn-address-autofill.css +6 -1
  12. package/collection/components/input/pn-address-autofill/pn-address-autofill.js +58 -68
  13. package/collection/components/input/pn-address-autofill/pn-address-autofill.js.map +1 -1
  14. package/collection/components/input/pn-address-autofill/pn-address-autofill.stories.js +2 -1
  15. package/collection/components/input/pn-address-autofill/translations.js +6 -3
  16. package/collection/components/input/pn-address-autofill/translations.js.map +1 -1
  17. package/collection/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.js +18 -6
  18. package/collection/components/input/pn-dropdown-choice-adds-row/pn-dropdown-choice-adds-row.js.map +1 -1
  19. package/components/alert_exclamation_circle.js +6 -0
  20. package/components/alert_exclamation_circle.js.map +1 -0
  21. package/components/pn-address-autofill.js +48 -72
  22. package/components/pn-address-autofill.js.map +1 -1
  23. package/components/pn-dropdown-choice-adds-row.js +18 -6
  24. package/components/pn-dropdown-choice-adds-row.js.map +1 -1
  25. package/components/pn-marketweb-input2.js +1 -3
  26. package/components/pn-marketweb-input2.js.map +1 -1
  27. package/esm/alert_exclamation_circle-f0fe7c7b.js +6 -0
  28. package/esm/alert_exclamation_circle-f0fe7c7b.js.map +1 -0
  29. package/esm/loader.js +1 -1
  30. package/esm/pn-address-autofill.entry.js +47 -72
  31. package/esm/pn-address-autofill.entry.js.map +1 -1
  32. package/esm/pn-dropdown-choice-adds-row.entry.js +18 -6
  33. package/esm/pn-dropdown-choice-adds-row.entry.js.map +1 -1
  34. package/esm/pn-market-web-components.js +1 -1
  35. package/esm/pn-marketweb-input.entry.js +1 -3
  36. package/esm/pn-marketweb-input.entry.js.map +1 -1
  37. package/package.json +1 -1
  38. package/pn-market-web-components/p-0ac30ee9.entry.js +2 -0
  39. package/pn-market-web-components/p-0ac30ee9.entry.js.map +1 -0
  40. package/pn-market-web-components/p-15d70aaf.entry.js +2 -0
  41. package/pn-market-web-components/p-15d70aaf.entry.js.map +1 -0
  42. package/pn-market-web-components/p-76c2c01f.js +2 -0
  43. package/pn-market-web-components/p-76c2c01f.js.map +1 -0
  44. package/pn-market-web-components/p-a11fdf9f.entry.js +2 -0
  45. package/pn-market-web-components/p-a11fdf9f.entry.js.map +1 -0
  46. package/pn-market-web-components/pn-market-web-components.esm.js +1 -1
  47. package/pn-market-web-components/pn-market-web-components.esm.js.map +1 -1
  48. package/types/components/input/pn-address-autofill/pn-address-autofill.d.ts +2 -3
  49. package/types/components/input/pn-address-autofill/translations.d.ts +3 -0
  50. package/types/components.d.ts +2 -0
  51. package/umd/modules/@postnord/web-components/cjs/{angle_down-0b63ebde.js → chevron_down-83e72319.js} +3 -3
  52. package/umd/modules/@postnord/web-components/cjs/chevron_down-83e72319.js.map +1 -0
  53. package/umd/modules/@postnord/web-components/cjs/{angle_right-c8c55b43.js → chevron_right-aeb6aef3.js} +5 -5
  54. package/umd/modules/@postnord/web-components/cjs/chevron_right-aeb6aef3.js.map +1 -0
  55. package/umd/modules/@postnord/web-components/cjs/loader.cjs.js +1 -1
  56. package/umd/modules/@postnord/web-components/cjs/pn-accordion-row.cjs.entry.js +2 -2
  57. package/umd/modules/@postnord/web-components/cjs/pn-accordion-row.cjs.entry.js.map +1 -1
  58. package/umd/modules/@postnord/web-components/cjs/pn-action-menu.cjs.entry.js +42 -12
  59. package/umd/modules/@postnord/web-components/cjs/pn-action-menu.cjs.entry.js.map +1 -1
  60. package/umd/modules/@postnord/web-components/cjs/pn-button_2.cjs.entry.js +1 -1
  61. package/umd/modules/@postnord/web-components/cjs/pn-card.cjs.entry.js +1 -1
  62. package/umd/modules/@postnord/web-components/cjs/pn-checkbox.cjs.entry.js +1 -1
  63. package/umd/modules/@postnord/web-components/cjs/pn-choice-chip.cjs.entry.js +1 -1
  64. package/umd/modules/@postnord/web-components/cjs/pn-counter.cjs.entry.js +1 -1
  65. package/umd/modules/@postnord/web-components/cjs/pn-date-picker.cjs.entry.js +22 -6
  66. package/umd/modules/@postnord/web-components/cjs/pn-date-picker.cjs.entry.js.map +1 -1
  67. package/umd/modules/@postnord/web-components/cjs/pn-fieldset.cjs.entry.js +1 -1
  68. package/umd/modules/@postnord/web-components/cjs/pn-file-upload.cjs.entry.js +1 -1
  69. package/umd/modules/@postnord/web-components/cjs/pn-footer.cjs.entry.js +1 -1
  70. package/umd/modules/@postnord/web-components/cjs/pn-header.cjs.entry.js +1 -1
  71. package/umd/modules/@postnord/web-components/cjs/pn-input.cjs.entry.js +2 -2
  72. package/umd/modules/@postnord/web-components/cjs/pn-modal.cjs.entry.js +21 -7
  73. package/umd/modules/@postnord/web-components/cjs/pn-modal.cjs.entry.js.map +1 -1
  74. package/umd/modules/@postnord/web-components/cjs/pn-multiselect.cjs.entry.js +2 -2
  75. package/umd/modules/@postnord/web-components/cjs/pn-multiselect.cjs.entry.js.map +1 -1
  76. package/umd/modules/@postnord/web-components/cjs/pn-ocr-search.cjs.entry.js +1 -1
  77. package/umd/modules/@postnord/web-components/cjs/pn-page-nav-dropdown-item.cjs.entry.js +1 -1
  78. package/umd/modules/@postnord/web-components/cjs/pn-page-nav-item.cjs.entry.js +1 -1
  79. package/umd/modules/@postnord/web-components/cjs/pn-page-nav.cjs.entry.js +2 -2
  80. package/umd/modules/@postnord/web-components/cjs/pn-page-nav.cjs.entry.js.map +1 -1
  81. package/umd/modules/@postnord/web-components/cjs/pn-pagination.cjs.entry.js +1 -1
  82. package/umd/modules/@postnord/web-components/cjs/pn-progress-bar.cjs.entry.js +1 -1
  83. package/umd/modules/@postnord/web-components/cjs/pn-progress-indicator-step.cjs.entry.js +1 -1
  84. package/umd/modules/@postnord/web-components/cjs/pn-progress-indicator-step.cjs.entry.js.map +1 -1
  85. package/umd/modules/@postnord/web-components/cjs/pn-progress-indicator.cjs.entry.js +1 -1
  86. package/umd/modules/@postnord/web-components/cjs/pn-progress-indicator.cjs.entry.js.map +1 -1
  87. package/umd/modules/@postnord/web-components/cjs/pn-progress-stepper.cjs.entry.js +26 -41
  88. package/umd/modules/@postnord/web-components/cjs/pn-progress-stepper.cjs.entry.js.map +1 -1
  89. package/umd/modules/@postnord/web-components/cjs/pn-radio-button.cjs.entry.js +1 -1
  90. package/umd/modules/@postnord/web-components/cjs/pn-search-field.cjs.entry.js +1 -1
  91. package/umd/modules/@postnord/web-components/cjs/pn-segment.cjs.entry.js +1 -1
  92. package/umd/modules/@postnord/web-components/cjs/pn-segmented-control.cjs.entry.js +1 -1
  93. package/umd/modules/@postnord/web-components/cjs/pn-select.cjs.entry.js +2 -2
  94. package/umd/modules/@postnord/web-components/cjs/pn-select.cjs.entry.js.map +1 -1
  95. package/umd/modules/@postnord/web-components/cjs/pn-tab.cjs.entry.js +1 -1
  96. package/umd/modules/@postnord/web-components/cjs/pn-tablist.cjs.entry.js +2 -2
  97. package/umd/modules/@postnord/web-components/cjs/pn-tablist.cjs.entry.js.map +1 -1
  98. package/umd/modules/@postnord/web-components/cjs/pn-text-link.cjs.entry.js +1 -1
  99. package/umd/modules/@postnord/web-components/cjs/pn-textarea.cjs.entry.js +1 -1
  100. package/umd/modules/@postnord/web-components/cjs/pn-tile.cjs.entry.js +1 -1
  101. package/umd/modules/@postnord/web-components/cjs/pn-toast.cjs.entry.js +25 -16
  102. package/umd/modules/@postnord/web-components/cjs/pn-toast.cjs.entry.js.map +1 -1
  103. package/umd/modules/@postnord/web-components/cjs/pn-toggle-switch.cjs.entry.js +1 -1
  104. package/umd/modules/@postnord/web-components/cjs/pn-tooltip.cjs.entry.js +1 -1
  105. package/umd/modules/@postnord/web-components/cjs/pn-zipcode-search.cjs.entry.js +1 -1
  106. package/umd/modules/@postnord/web-components/cjs/postnord-web-components.cjs.js +1 -1
  107. package/umd/modules/@postnord/web-components/collection/components/buttons/pn-action-menu/pn-action-menu.js +41 -11
  108. package/umd/modules/@postnord/web-components/collection/components/buttons/pn-action-menu/pn-action-menu.js.map +1 -1
  109. package/umd/modules/@postnord/web-components/collection/components/content/pn-accordion/row/pn-accordion-row.js +2 -2
  110. package/umd/modules/@postnord/web-components/collection/components/content/pn-accordion/row/pn-accordion-row.js.map +1 -1
  111. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-modal/pn-modal.css +92 -40
  112. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-modal/pn-modal.js +35 -9
  113. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-modal/pn-modal.js.map +1 -1
  114. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-bar/pn-progress-bar.js +1 -1
  115. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.js +5 -1
  116. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.js.map +1 -1
  117. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-indicator/pn-progress-indicator.js +5 -1
  118. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-indicator/pn-progress-indicator.js.map +1 -1
  119. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-stepper/pn-progress-stepper.css +85 -9
  120. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-stepper/pn-progress-stepper.js +100 -97
  121. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-progress-stepper/pn-progress-stepper.js.map +1 -1
  122. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-spinner/pn-spinner.js +1 -1
  123. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-toast/pn-toast.css +0 -1
  124. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-toast/pn-toast.js +24 -15
  125. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-toast/pn-toast.js.map +1 -1
  126. package/umd/modules/@postnord/web-components/collection/components/feedback/pn-tooltip/pn-tooltip.js +1 -1
  127. package/umd/modules/@postnord/web-components/collection/components/input/pn-checkbox/pn-checkbox.js +1 -1
  128. package/umd/modules/@postnord/web-components/collection/components/input/pn-choice-chip/pn-choice-chip.js +1 -1
  129. package/umd/modules/@postnord/web-components/collection/components/input/pn-counter/pn-counter.js +1 -1
  130. package/umd/modules/@postnord/web-components/collection/components/input/pn-date-picker/pn-date-picker.css +2 -3
  131. package/umd/modules/@postnord/web-components/collection/components/input/pn-date-picker/pn-date-picker.js +22 -6
  132. package/umd/modules/@postnord/web-components/collection/components/input/pn-date-picker/pn-date-picker.js.map +1 -1
  133. package/umd/modules/@postnord/web-components/collection/components/input/pn-fieldset/pn-fieldset.js +1 -1
  134. package/umd/modules/@postnord/web-components/collection/components/input/pn-file-upload/pn-file-upload.js +1 -1
  135. package/umd/modules/@postnord/web-components/collection/components/input/pn-input/pn-input.js +2 -2
  136. package/umd/modules/@postnord/web-components/collection/components/input/pn-multiselect/pn-multiselect.js +2 -2
  137. package/umd/modules/@postnord/web-components/collection/components/input/pn-multiselect/pn-multiselect.js.map +1 -1
  138. package/umd/modules/@postnord/web-components/collection/components/input/pn-radio-button/pn-radio-button.js +1 -1
  139. package/umd/modules/@postnord/web-components/collection/components/input/pn-search-field/pn-search-field.js +1 -1
  140. package/umd/modules/@postnord/web-components/collection/components/input/pn-segmented-control/pn-segmented-control.js +1 -1
  141. package/umd/modules/@postnord/web-components/collection/components/input/pn-segmented-control/segment/pn-segment.js +1 -1
  142. package/umd/modules/@postnord/web-components/collection/components/input/pn-select/pn-select.js +2 -2
  143. package/umd/modules/@postnord/web-components/collection/components/input/pn-select/pn-select.js.map +1 -1
  144. package/umd/modules/@postnord/web-components/collection/components/input/pn-textarea/pn-textarea.js +1 -1
  145. package/umd/modules/@postnord/web-components/collection/components/input/pn-toggle-switch/pn-toggle-switch.js +1 -1
  146. package/umd/modules/@postnord/web-components/collection/components/layout/pn-header/pn-header.js +1 -1
  147. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-card/pn-card.js +1 -1
  148. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-footer/pn-footer.js +1 -1
  149. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-page-nav/dropdown-item/pn-page-nav-dropdown-item.js +1 -1
  150. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-page-nav/item/pn-page-nav-item.js +1 -1
  151. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-page-nav/menu/pn-page-nav.js +2 -2
  152. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-page-nav/menu/pn-page-nav.js.map +1 -1
  153. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-pagination/pn-pagination.js +1 -1
  154. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-tablist/pn-tablist.js +2 -2
  155. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-tablist/pn-tablist.js.map +1 -1
  156. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-tablist/tab/pn-tab.js +1 -1
  157. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-text-link/pn-text-link.js +1 -1
  158. package/umd/modules/@postnord/web-components/collection/components/navigation/pn-tile/pn-tile.js +1 -1
  159. package/umd/modules/@postnord/web-components/collection/components/web-components/pn-ocr-search/pn-ocr-search.js +1 -1
  160. package/umd/modules/@postnord/web-components/collection/components/web-components/pn-zipcode-search/pn-zipcode-search.js +1 -1
  161. package/umd/modules/@postnord/web-components/collection/globals/types.js.map +1 -1
  162. package/umd/modules/@postnord/web-components/components/{angle_down.js → chevron_down.js} +3 -3
  163. package/umd/modules/@postnord/web-components/components/chevron_down.js.map +1 -0
  164. package/umd/modules/@postnord/web-components/{esm/angle_right-b52095c9.js → components/chevron_right.js} +4 -4
  165. package/umd/modules/@postnord/web-components/components/chevron_right.js.map +1 -0
  166. package/umd/modules/@postnord/web-components/components/pn-accordion-row.js +2 -2
  167. package/umd/modules/@postnord/web-components/components/pn-accordion-row.js.map +1 -1
  168. package/umd/modules/@postnord/web-components/components/pn-action-menu.js +42 -12
  169. package/umd/modules/@postnord/web-components/components/pn-action-menu.js.map +1 -1
  170. package/umd/modules/@postnord/web-components/components/pn-card.js +1 -1
  171. package/umd/modules/@postnord/web-components/components/pn-checkbox.js +1 -1
  172. package/umd/modules/@postnord/web-components/components/pn-choice-chip.js +1 -1
  173. package/umd/modules/@postnord/web-components/components/pn-counter.js +1 -1
  174. package/umd/modules/@postnord/web-components/components/pn-date-picker.js +23 -7
  175. package/umd/modules/@postnord/web-components/components/pn-date-picker.js.map +1 -1
  176. package/umd/modules/@postnord/web-components/components/pn-fieldset.js +1 -1
  177. package/umd/modules/@postnord/web-components/components/pn-file-upload.js +1 -1
  178. package/umd/modules/@postnord/web-components/components/pn-footer.js +1 -1
  179. package/umd/modules/@postnord/web-components/components/pn-header.js +1 -1
  180. package/umd/modules/@postnord/web-components/components/pn-input.js +2 -2
  181. package/umd/modules/@postnord/web-components/components/pn-modal.js +25 -10
  182. package/umd/modules/@postnord/web-components/components/pn-modal.js.map +1 -1
  183. package/umd/modules/@postnord/web-components/components/pn-multiselect.js +2 -2
  184. package/umd/modules/@postnord/web-components/components/pn-multiselect.js.map +1 -1
  185. package/umd/modules/@postnord/web-components/components/pn-ocr-search.js +1 -1
  186. package/umd/modules/@postnord/web-components/components/pn-page-nav-dropdown-item.js +1 -1
  187. package/umd/modules/@postnord/web-components/components/pn-page-nav-item.js +1 -1
  188. package/umd/modules/@postnord/web-components/components/pn-page-nav.js +2 -2
  189. package/umd/modules/@postnord/web-components/components/pn-page-nav.js.map +1 -1
  190. package/umd/modules/@postnord/web-components/components/pn-pagination.js +1 -1
  191. package/umd/modules/@postnord/web-components/components/pn-progress-bar2.js +1 -1
  192. package/umd/modules/@postnord/web-components/components/pn-progress-indicator-step.js +1 -1
  193. package/umd/modules/@postnord/web-components/components/pn-progress-indicator-step.js.map +1 -1
  194. package/umd/modules/@postnord/web-components/components/pn-progress-indicator.js +1 -1
  195. package/umd/modules/@postnord/web-components/components/pn-progress-indicator.js.map +1 -1
  196. package/umd/modules/@postnord/web-components/components/pn-progress-stepper.js +34 -48
  197. package/umd/modules/@postnord/web-components/components/pn-progress-stepper.js.map +1 -1
  198. package/umd/modules/@postnord/web-components/components/pn-radio-button.js +1 -1
  199. package/umd/modules/@postnord/web-components/components/pn-search-field2.js +1 -1
  200. package/umd/modules/@postnord/web-components/components/pn-segment.js +1 -1
  201. package/umd/modules/@postnord/web-components/components/pn-segmented-control.js +1 -1
  202. package/umd/modules/@postnord/web-components/components/pn-select2.js +2 -2
  203. package/umd/modules/@postnord/web-components/components/pn-select2.js.map +1 -1
  204. package/umd/modules/@postnord/web-components/components/pn-spinner2.js +1 -1
  205. package/umd/modules/@postnord/web-components/components/pn-tab.js +1 -1
  206. package/umd/modules/@postnord/web-components/components/pn-tablist.js +2 -2
  207. package/umd/modules/@postnord/web-components/components/pn-tablist.js.map +1 -1
  208. package/umd/modules/@postnord/web-components/components/pn-text-link2.js +1 -1
  209. package/umd/modules/@postnord/web-components/components/pn-textarea.js +1 -1
  210. package/umd/modules/@postnord/web-components/components/pn-tile.js +1 -1
  211. package/umd/modules/@postnord/web-components/components/pn-toast.js +25 -16
  212. package/umd/modules/@postnord/web-components/components/pn-toast.js.map +1 -1
  213. package/umd/modules/@postnord/web-components/components/pn-toggle-switch.js +1 -1
  214. package/umd/modules/@postnord/web-components/components/pn-tooltip.js +1 -1
  215. package/umd/modules/@postnord/web-components/components/pn-zipcode-search.js +1 -1
  216. package/umd/modules/@postnord/web-components/esm/{angle_down-d788f691.js → chevron_down-6e3fb42f.js} +3 -3
  217. package/umd/modules/@postnord/web-components/esm/chevron_down-6e3fb42f.js.map +1 -0
  218. package/umd/modules/@postnord/web-components/{components/angle_right.js → esm/chevron_right-9d9305e8.js} +4 -4
  219. package/umd/modules/@postnord/web-components/esm/chevron_right-9d9305e8.js.map +1 -0
  220. package/umd/modules/@postnord/web-components/esm/loader.js +1 -1
  221. package/umd/modules/@postnord/web-components/esm/pn-accordion-row.entry.js +2 -2
  222. package/umd/modules/@postnord/web-components/esm/pn-accordion-row.entry.js.map +1 -1
  223. package/umd/modules/@postnord/web-components/esm/pn-action-menu.entry.js +42 -12
  224. package/umd/modules/@postnord/web-components/esm/pn-action-menu.entry.js.map +1 -1
  225. package/umd/modules/@postnord/web-components/esm/pn-button_2.entry.js +1 -1
  226. package/umd/modules/@postnord/web-components/esm/pn-card.entry.js +1 -1
  227. package/umd/modules/@postnord/web-components/esm/pn-checkbox.entry.js +1 -1
  228. package/umd/modules/@postnord/web-components/esm/pn-choice-chip.entry.js +1 -1
  229. package/umd/modules/@postnord/web-components/esm/pn-counter.entry.js +1 -1
  230. package/umd/modules/@postnord/web-components/esm/pn-date-picker.entry.js +23 -7
  231. package/umd/modules/@postnord/web-components/esm/pn-date-picker.entry.js.map +1 -1
  232. package/umd/modules/@postnord/web-components/esm/pn-fieldset.entry.js +1 -1
  233. package/umd/modules/@postnord/web-components/esm/pn-file-upload.entry.js +1 -1
  234. package/umd/modules/@postnord/web-components/esm/pn-footer.entry.js +1 -1
  235. package/umd/modules/@postnord/web-components/esm/pn-header.entry.js +1 -1
  236. package/umd/modules/@postnord/web-components/esm/pn-input.entry.js +2 -2
  237. package/umd/modules/@postnord/web-components/esm/pn-modal.entry.js +22 -8
  238. package/umd/modules/@postnord/web-components/esm/pn-modal.entry.js.map +1 -1
  239. package/umd/modules/@postnord/web-components/esm/pn-multiselect.entry.js +2 -2
  240. package/umd/modules/@postnord/web-components/esm/pn-multiselect.entry.js.map +1 -1
  241. package/umd/modules/@postnord/web-components/esm/pn-ocr-search.entry.js +1 -1
  242. package/umd/modules/@postnord/web-components/esm/pn-page-nav-dropdown-item.entry.js +1 -1
  243. package/umd/modules/@postnord/web-components/esm/pn-page-nav-item.entry.js +1 -1
  244. package/umd/modules/@postnord/web-components/esm/pn-page-nav.entry.js +2 -2
  245. package/umd/modules/@postnord/web-components/esm/pn-page-nav.entry.js.map +1 -1
  246. package/umd/modules/@postnord/web-components/esm/pn-pagination.entry.js +1 -1
  247. package/umd/modules/@postnord/web-components/esm/pn-progress-bar.entry.js +1 -1
  248. package/umd/modules/@postnord/web-components/esm/pn-progress-indicator-step.entry.js +1 -1
  249. package/umd/modules/@postnord/web-components/esm/pn-progress-indicator-step.entry.js.map +1 -1
  250. package/umd/modules/@postnord/web-components/esm/pn-progress-indicator.entry.js +1 -1
  251. package/umd/modules/@postnord/web-components/esm/pn-progress-indicator.entry.js.map +1 -1
  252. package/umd/modules/@postnord/web-components/esm/pn-progress-stepper.entry.js +26 -41
  253. package/umd/modules/@postnord/web-components/esm/pn-progress-stepper.entry.js.map +1 -1
  254. package/umd/modules/@postnord/web-components/esm/pn-radio-button.entry.js +1 -1
  255. package/umd/modules/@postnord/web-components/esm/pn-search-field.entry.js +1 -1
  256. package/umd/modules/@postnord/web-components/esm/pn-segment.entry.js +1 -1
  257. package/umd/modules/@postnord/web-components/esm/pn-segmented-control.entry.js +1 -1
  258. package/umd/modules/@postnord/web-components/esm/pn-select.entry.js +2 -2
  259. package/umd/modules/@postnord/web-components/esm/pn-select.entry.js.map +1 -1
  260. package/umd/modules/@postnord/web-components/esm/pn-tab.entry.js +1 -1
  261. package/umd/modules/@postnord/web-components/esm/pn-tablist.entry.js +2 -2
  262. package/umd/modules/@postnord/web-components/esm/pn-tablist.entry.js.map +1 -1
  263. package/umd/modules/@postnord/web-components/esm/pn-text-link.entry.js +1 -1
  264. package/umd/modules/@postnord/web-components/esm/pn-textarea.entry.js +1 -1
  265. package/umd/modules/@postnord/web-components/esm/pn-tile.entry.js +1 -1
  266. package/umd/modules/@postnord/web-components/esm/pn-toast.entry.js +25 -16
  267. package/umd/modules/@postnord/web-components/esm/pn-toast.entry.js.map +1 -1
  268. package/umd/modules/@postnord/web-components/esm/pn-toggle-switch.entry.js +1 -1
  269. package/umd/modules/@postnord/web-components/esm/pn-tooltip.entry.js +1 -1
  270. package/umd/modules/@postnord/web-components/esm/pn-zipcode-search.entry.js +1 -1
  271. package/umd/modules/@postnord/web-components/esm/postnord-web-components.js +1 -1
  272. package/umd/modules/@postnord/web-components/hydrate/index.js +204 -137
  273. package/umd/modules/@postnord/web-components/hydrate/index.mjs +204 -137
  274. package/umd/modules/@postnord/web-components/package.json +16 -14
  275. package/umd/modules/@postnord/web-components/postnord-web-components/{p-7e88df1f.entry.js → p-01472170.entry.js} +2 -2
  276. package/umd/modules/@postnord/web-components/postnord-web-components/{p-ed4271af.entry.js → p-06c7e91b.entry.js} +2 -2
  277. package/umd/modules/@postnord/web-components/postnord-web-components/p-06c7e91b.entry.js.map +1 -0
  278. package/umd/modules/@postnord/web-components/postnord-web-components/{p-8773152d.entry.js → p-10532427.entry.js} +2 -2
  279. package/umd/modules/@postnord/web-components/postnord-web-components/{p-ffe79fa4.entry.js → p-11ef58ab.entry.js} +2 -2
  280. package/umd/modules/@postnord/web-components/postnord-web-components/p-16fb83d9.entry.js +6 -0
  281. package/umd/modules/@postnord/web-components/postnord-web-components/p-16fb83d9.entry.js.map +1 -0
  282. package/umd/modules/@postnord/web-components/postnord-web-components/{p-d74ccbb2.entry.js → p-1cd57319.entry.js} +2 -2
  283. package/umd/modules/@postnord/web-components/postnord-web-components/{p-adc6404b.entry.js → p-1e7c31ed.entry.js} +2 -2
  284. package/umd/modules/@postnord/web-components/postnord-web-components/p-1e7c31ed.entry.js.map +1 -0
  285. package/umd/modules/@postnord/web-components/postnord-web-components/{p-c2bbbcaa.entry.js → p-1fe6fc61.entry.js} +2 -2
  286. package/umd/modules/@postnord/web-components/postnord-web-components/{p-203ad7de.entry.js → p-23fdc4b6.entry.js} +2 -2
  287. package/umd/modules/@postnord/web-components/postnord-web-components/p-23fdc4b6.entry.js.map +1 -0
  288. package/umd/modules/@postnord/web-components/postnord-web-components/p-240f6613.entry.js +6 -0
  289. package/umd/modules/@postnord/web-components/postnord-web-components/{p-7ae9c053.entry.js.map → p-240f6613.entry.js.map} +1 -1
  290. package/umd/modules/@postnord/web-components/postnord-web-components/{p-4f67fffa.entry.js → p-28357e12.entry.js} +2 -2
  291. package/umd/modules/@postnord/web-components/postnord-web-components/p-28357e12.entry.js.map +1 -0
  292. package/umd/modules/@postnord/web-components/postnord-web-components/{p-c96ff403.js → p-2f7bb5e8.js} +2 -2
  293. package/umd/modules/@postnord/web-components/postnord-web-components/p-2f7bb5e8.js.map +1 -0
  294. package/umd/modules/@postnord/web-components/postnord-web-components/{p-5b0000e9.entry.js → p-363f578a.entry.js} +2 -2
  295. package/umd/modules/@postnord/web-components/postnord-web-components/{p-c0d19737.entry.js → p-37297b9a.entry.js} +2 -2
  296. package/umd/modules/@postnord/web-components/postnord-web-components/p-49a39ea1.entry.js +6 -0
  297. package/umd/modules/@postnord/web-components/postnord-web-components/p-49a39ea1.entry.js.map +1 -0
  298. package/umd/modules/@postnord/web-components/postnord-web-components/{p-bc95d4b0.entry.js → p-49f5fdd2.entry.js} +2 -2
  299. package/umd/modules/@postnord/web-components/postnord-web-components/p-49f5fdd2.entry.js.map +1 -0
  300. package/umd/modules/@postnord/web-components/postnord-web-components/{p-b556b835.entry.js → p-4d371963.entry.js} +2 -2
  301. package/umd/modules/@postnord/web-components/postnord-web-components/{p-ab29b9c0.entry.js → p-4eaab357.entry.js} +2 -2
  302. package/umd/modules/@postnord/web-components/postnord-web-components/{p-da713fc1.entry.js → p-5ed7e9b7.entry.js} +2 -2
  303. package/umd/modules/@postnord/web-components/postnord-web-components/p-617a946d.entry.js +6 -0
  304. package/umd/modules/@postnord/web-components/postnord-web-components/p-617a946d.entry.js.map +1 -0
  305. package/umd/modules/@postnord/web-components/postnord-web-components/{p-e087c5c5.entry.js → p-63aa3911.entry.js} +2 -2
  306. package/umd/modules/@postnord/web-components/postnord-web-components/p-65ae6360.entry.js +6 -0
  307. package/umd/modules/@postnord/web-components/postnord-web-components/p-65ae6360.entry.js.map +1 -0
  308. package/umd/modules/@postnord/web-components/postnord-web-components/{p-bf015c0f.entry.js → p-699b7bde.entry.js} +2 -2
  309. package/umd/modules/@postnord/web-components/postnord-web-components/{p-9bc1d14f.entry.js → p-6f9a21be.entry.js} +2 -2
  310. package/umd/modules/@postnord/web-components/postnord-web-components/p-75c5fb41.entry.js +6 -0
  311. package/umd/modules/@postnord/web-components/postnord-web-components/p-75c5fb41.entry.js.map +1 -0
  312. package/umd/modules/@postnord/web-components/postnord-web-components/{p-bd14cdca.entry.js → p-8e07bc17.entry.js} +2 -2
  313. package/umd/modules/@postnord/web-components/postnord-web-components/{p-7bd6d804.entry.js → p-8eaa2540.entry.js} +2 -2
  314. package/umd/modules/@postnord/web-components/postnord-web-components/{p-bf967b50.js → p-99600bc7.js} +2 -2
  315. package/umd/modules/@postnord/web-components/postnord-web-components/p-99600bc7.js.map +1 -0
  316. package/umd/modules/@postnord/web-components/postnord-web-components/{p-ff068744.entry.js → p-9cecd28d.entry.js} +2 -2
  317. package/umd/modules/@postnord/web-components/postnord-web-components/{p-605d99df.entry.js → p-a440734f.entry.js} +2 -2
  318. package/umd/modules/@postnord/web-components/postnord-web-components/{p-b9a494ae.entry.js → p-ab553e80.entry.js} +2 -2
  319. package/umd/modules/@postnord/web-components/postnord-web-components/{p-936ed2a1.entry.js → p-ae04e001.entry.js} +2 -2
  320. package/umd/modules/@postnord/web-components/postnord-web-components/p-ae04e001.entry.js.map +1 -0
  321. package/umd/modules/@postnord/web-components/postnord-web-components/{p-a4df55c4.entry.js → p-b202a599.entry.js} +2 -2
  322. package/umd/modules/@postnord/web-components/postnord-web-components/p-b83e6373.entry.js +6 -0
  323. package/umd/modules/@postnord/web-components/postnord-web-components/p-b83e6373.entry.js.map +1 -0
  324. package/umd/modules/@postnord/web-components/postnord-web-components/{p-fcd5028f.entry.js → p-bdb9bdc3.entry.js} +2 -2
  325. package/umd/modules/@postnord/web-components/postnord-web-components/{p-81f9f367.entry.js → p-cebe3a25.entry.js} +2 -2
  326. package/umd/modules/@postnord/web-components/postnord-web-components/{p-76b020f0.entry.js → p-d2f7b4a9.entry.js} +2 -2
  327. package/umd/modules/@postnord/web-components/postnord-web-components/{p-c45dc75d.entry.js → p-e8050420.entry.js} +2 -2
  328. package/umd/modules/@postnord/web-components/postnord-web-components/{p-412fc8d6.entry.js → p-eee2d131.entry.js} +2 -2
  329. package/umd/modules/@postnord/web-components/postnord-web-components/{p-d3521b5d.entry.js → p-fb5d6d47.entry.js} +2 -2
  330. package/umd/modules/@postnord/web-components/postnord-web-components/postnord-web-components.esm.js +1 -1
  331. package/umd/modules/@postnord/web-components/postnord-web-components/postnord-web-components.esm.js.map +1 -1
  332. package/umd/modules/@postnord/web-components/types/components/buttons/pn-action-menu/pn-action-menu.d.ts +3 -0
  333. package/umd/modules/@postnord/web-components/types/components/feedback/pn-modal/pn-modal.d.ts +12 -2
  334. package/umd/modules/@postnord/web-components/types/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.d.ts +4 -0
  335. package/umd/modules/@postnord/web-components/types/components/feedback/pn-progress-indicator/pn-progress-indicator.d.ts +4 -0
  336. package/umd/modules/@postnord/web-components/types/components/feedback/pn-progress-stepper/pn-progress-stepper.d.ts +27 -22
  337. package/umd/modules/@postnord/web-components/types/components/feedback/pn-toast/pn-toast.d.ts +2 -1
  338. package/umd/modules/@postnord/web-components/types/components.d.ts +60 -12
  339. package/umd/modules/@postnord/web-components/types/globals/types.d.ts +2 -1
  340. package/umd/modules/@postnord/web-components/vscode-data.json +7 -3
  341. package/vscode-data.json +4 -0
  342. package/pn-market-web-components/p-59cb7166.entry.js +0 -2
  343. package/pn-market-web-components/p-59cb7166.entry.js.map +0 -1
  344. package/pn-market-web-components/p-7c3091eb.entry.js +0 -2
  345. package/pn-market-web-components/p-7c3091eb.entry.js.map +0 -1
  346. package/pn-market-web-components/p-94a69959.entry.js +0 -2
  347. package/pn-market-web-components/p-94a69959.entry.js.map +0 -1
  348. package/umd/modules/@postnord/web-components/cjs/angle_down-0b63ebde.js.map +0 -1
  349. package/umd/modules/@postnord/web-components/cjs/angle_right-c8c55b43.js.map +0 -1
  350. package/umd/modules/@postnord/web-components/components/angle_down.js.map +0 -1
  351. package/umd/modules/@postnord/web-components/components/angle_right.js.map +0 -1
  352. package/umd/modules/@postnord/web-components/esm/angle_down-d788f691.js.map +0 -1
  353. package/umd/modules/@postnord/web-components/esm/angle_right-b52095c9.js.map +0 -1
  354. package/umd/modules/@postnord/web-components/postnord-web-components/p-203ad7de.entry.js.map +0 -1
  355. package/umd/modules/@postnord/web-components/postnord-web-components/p-2615282e.entry.js +0 -6
  356. package/umd/modules/@postnord/web-components/postnord-web-components/p-2615282e.entry.js.map +0 -1
  357. package/umd/modules/@postnord/web-components/postnord-web-components/p-3bd59ac8.entry.js +0 -6
  358. package/umd/modules/@postnord/web-components/postnord-web-components/p-3bd59ac8.entry.js.map +0 -1
  359. package/umd/modules/@postnord/web-components/postnord-web-components/p-4f67fffa.entry.js.map +0 -1
  360. package/umd/modules/@postnord/web-components/postnord-web-components/p-514107a5.entry.js +0 -6
  361. package/umd/modules/@postnord/web-components/postnord-web-components/p-514107a5.entry.js.map +0 -1
  362. package/umd/modules/@postnord/web-components/postnord-web-components/p-6a30576b.entry.js +0 -6
  363. package/umd/modules/@postnord/web-components/postnord-web-components/p-6a30576b.entry.js.map +0 -1
  364. package/umd/modules/@postnord/web-components/postnord-web-components/p-7ae9c053.entry.js +0 -6
  365. package/umd/modules/@postnord/web-components/postnord-web-components/p-8bc8f614.entry.js +0 -6
  366. package/umd/modules/@postnord/web-components/postnord-web-components/p-8bc8f614.entry.js.map +0 -1
  367. package/umd/modules/@postnord/web-components/postnord-web-components/p-936ed2a1.entry.js.map +0 -1
  368. package/umd/modules/@postnord/web-components/postnord-web-components/p-adc6404b.entry.js.map +0 -1
  369. package/umd/modules/@postnord/web-components/postnord-web-components/p-bc95d4b0.entry.js.map +0 -1
  370. package/umd/modules/@postnord/web-components/postnord-web-components/p-bf967b50.js.map +0 -1
  371. package/umd/modules/@postnord/web-components/postnord-web-components/p-c96ff403.js.map +0 -1
  372. package/umd/modules/@postnord/web-components/postnord-web-components/p-ed4271af.entry.js.map +0 -1
  373. package/umd/modules/@postnord/web-components/postnord-web-components/p-fc5f9092.entry.js +0 -6
  374. package/umd/modules/@postnord/web-components/postnord-web-components/p-fc5f9092.entry.js.map +0 -1
  375. package/umd/modules/@postnord/web-components/readme.md +0 -32
  376. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-7e88df1f.entry.js.map → p-01472170.entry.js.map} +0 -0
  377. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-8773152d.entry.js.map → p-10532427.entry.js.map} +0 -0
  378. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-ffe79fa4.entry.js.map → p-11ef58ab.entry.js.map} +0 -0
  379. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-d74ccbb2.entry.js.map → p-1cd57319.entry.js.map} +0 -0
  380. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-c2bbbcaa.entry.js.map → p-1fe6fc61.entry.js.map} +0 -0
  381. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-5b0000e9.entry.js.map → p-363f578a.entry.js.map} +0 -0
  382. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-c0d19737.entry.js.map → p-37297b9a.entry.js.map} +0 -0
  383. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-b556b835.entry.js.map → p-4d371963.entry.js.map} +0 -0
  384. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-ab29b9c0.entry.js.map → p-4eaab357.entry.js.map} +0 -0
  385. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-da713fc1.entry.js.map → p-5ed7e9b7.entry.js.map} +0 -0
  386. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-e087c5c5.entry.js.map → p-63aa3911.entry.js.map} +0 -0
  387. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-bf015c0f.entry.js.map → p-699b7bde.entry.js.map} +0 -0
  388. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-9bc1d14f.entry.js.map → p-6f9a21be.entry.js.map} +0 -0
  389. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-bd14cdca.entry.js.map → p-8e07bc17.entry.js.map} +0 -0
  390. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-7bd6d804.entry.js.map → p-8eaa2540.entry.js.map} +0 -0
  391. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-ff068744.entry.js.map → p-9cecd28d.entry.js.map} +0 -0
  392. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-605d99df.entry.js.map → p-a440734f.entry.js.map} +0 -0
  393. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-b9a494ae.entry.js.map → p-ab553e80.entry.js.map} +0 -0
  394. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-a4df55c4.entry.js.map → p-b202a599.entry.js.map} +0 -0
  395. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-fcd5028f.entry.js.map → p-bdb9bdc3.entry.js.map} +0 -0
  396. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-81f9f367.entry.js.map → p-cebe3a25.entry.js.map} +0 -0
  397. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-76b020f0.entry.js.map → p-d2f7b4a9.entry.js.map} +0 -0
  398. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-c45dc75d.entry.js.map → p-e8050420.entry.js.map} +0 -0
  399. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-412fc8d6.entry.js.map → p-eee2d131.entry.js.map} +0 -0
  400. /package/umd/modules/@postnord/web-components/postnord-web-components/{p-d3521b5d.entry.js.map → p-fb5d6d47.entry.js.map} +0 -0
@@ -73,7 +73,7 @@ const PnProgressBar = class {
73
73
  return 'green500';
74
74
  }
75
75
  render() {
76
- return (index.h(index.Host, { key: 'e5e7d6c7ac2b3e2cc8838a616d697281c299ef21' }, this.hasLabel() && (index.h("p", { key: '23155051cf0606bee3bf96c4be40cf1549b6ab44', id: this.idLabel, class: "pn-progress-bar-label" }, index.h("span", { key: '98723d9fcc0e8a43ceaf4969a70046418d9d08bf' }, this.label), this.hasIcon() && index.h("pn-icon", { key: '402eea95c3733057d94df1b7abe92d02e7ef1dc8', icon: this.getIconSvg(), color: this.getIconColor() }))), index.h("div", { key: '5d82dfaf2b4ca4ac5ec6aefc83b6422dc8c632fe', id: this.progressId, class: "pn-progress-bar-container", role: "progressbar", "aria-labelledby": this.idLabel, "aria-describedby": this.hasIcon() ? this.idText : null, "aria-valuenow": this.progress, "aria-valuetext": this.progressPercentage }, index.h("div", { key: '7340eb78ac7cbcd5798e804dc173a1d7c0696f49', class: "pn-progress-bar-meter" }, index.h("div", { key: 'a9d2ab1009731727f98d349b9bf04bf39433c478', class: "pn-progress-bar-value", "data-error": this.hasError(), "data-valid": this.isValid() }))), index.h("p", { key: '6f10b1183b320c1e1e4b03bf893a62135779a870', id: this.idText, class: "pn-progress-bar-subtext", role: this.hasError() ? 'alert' : null }, index.h("span", { key: 'd6b8b56cf9853fa1f88aea6c6a43bf9999fa09cd' }, this.getSubtext()))));
76
+ return (index.h(index.Host, { key: '141fef1da768dc423cf53dfa8088f1b98429236c' }, this.hasLabel() && (index.h("p", { key: '294199499037e6ed0e816f8a68850dfede795884', id: this.idLabel, class: "pn-progress-bar-label" }, index.h("span", { key: 'f292e951e29878d186b7f7896d7346fd41677006' }, this.label), this.hasIcon() && index.h("pn-icon", { key: '47b8065b97a8cd0f0d3e57ea4f68b07ad09c12a5', icon: this.getIconSvg(), color: this.getIconColor() }))), index.h("div", { key: '0dd5189948aad2e501ee10076ed212987a52e4d8', id: this.progressId, class: "pn-progress-bar-container", role: "progressbar", "aria-labelledby": this.idLabel, "aria-describedby": this.hasIcon() ? this.idText : null, "aria-valuenow": this.progress, "aria-valuetext": this.progressPercentage }, index.h("div", { key: '51ceae38d589385687dd3e25c86526b4758f2792', class: "pn-progress-bar-meter" }, index.h("div", { key: '714d0aa19a487bf625ae10bcdd68d21d54b6f48a', class: "pn-progress-bar-value", "data-error": this.hasError(), "data-valid": this.isValid() }))), index.h("p", { key: 'b540a56c9d7fdfae49f508472d315ce1eeda5e99', id: this.idText, class: "pn-progress-bar-subtext", role: this.hasError() ? 'alert' : null }, index.h("span", { key: '35d515a823d117a6ab31e3cda778a2ada8093233' }, this.getSubtext()))));
77
77
  }
78
78
  static get watchers() { return {
79
79
  "progress": ["setProgress"]
@@ -62,7 +62,7 @@ const PnProgressIndicatorStep = class {
62
62
  return className;
63
63
  }
64
64
  render() {
65
- return (index.h(index.Host, { key: '72cc83f88a80acff2dc2d379abddf32d1f7100a8', class: this.getClassNames(), onClick: () => this.setActiveStepHandler() }, index.h("div", { key: '39f44c9b4e625898d16278575894ed8f01261a89', class: "progress-line" }), index.h("div", { key: '17858a1e590a364b82db40088f0017a5ddfde37e', class: "info-container" }, index.h("slot", { key: 'bd8a6e97e2a0aa6e3a0ff0565069792dc4e5cd0e' }), this.name), index.h("div", { key: '0122ff04b13f3d610a036bd354333e5b4ed4b898', class: "circle" }, this.done || this.checked ? (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", "enable-background": "new 0 0 24 24", id: "checkmark", version: "1.0", viewBox: "0 0 24 24" }, index.h("polyline", { class: "checkmark-path", fill: "none", points: "20,6 9,17 4,12", stroke: colors.white, "stroke-miterlimit": "10", "stroke-width": "3" }))) : (''))));
65
+ return (index.h(index.Host, { key: 'e5518f2d8c21c889738beb3a42e6865e7c64ac76', class: this.getClassNames(), onClick: () => this.setActiveStepHandler() }, index.h("div", { key: 'b0f5f684ca12fda2b22b51945d3b0b41ab490fa3', class: "progress-line" }), index.h("div", { key: '8d05494d4cc77145e44270666b678cf48eb05a96', class: "info-container" }, index.h("slot", { key: '864bea1ce3dd348be1abadcc3f8fb3757ac009b9' }), this.name), index.h("div", { key: '7d8394e5a4919404a137fd30ce125dfda5ed3034', class: "circle" }, this.done || this.checked ? (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", "enable-background": "new 0 0 24 24", id: "checkmark", version: "1.0", viewBox: "0 0 24 24" }, index.h("polyline", { class: "checkmark-path", fill: "none", points: "20,6 9,17 4,12", stroke: colors.white, "stroke-miterlimit": "10", "stroke-width": "3" }))) : (''))));
66
66
  }
67
67
  };
68
68
  PnProgressIndicatorStep.style = PnProgressIndicatorStepStyle0;
@@ -1 +1 @@
1
- {"file":"pn-progress-indicator-step.entry.cjs.js","mappings":";;;;;;;;;;;AAAA,MAAM,0BAA0B,GAAG,izFAAizF,CAAC;AACr1F,sCAAe,0BAA0B;;MCM5B,uBAAuB;;;;;;;;;uBAWP,KAAK;;;IAIvB,aAAa,CAAuB;IAC7C,oBAAoB;QAClB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACrC;KACF;IAED,iBAAiB;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,kBAAkB;QAChB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW;QACT,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;SAC1D;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACvB;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YAC/B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;SACnB;aAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC;SAChD;KACF;IAED,aAAa;QACX,IAAI,SAAS,GAAG,4BAA4B,CAAC;QAC7C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO;YAAE,SAAS,IAAI,OAAO,CAAC;QACpD,IAAI,IAAI,CAAC,SAAS;YAAE,SAAS,IAAI,YAAY,CAAC;QAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK;YAAE,SAAS,IAAI,SAAS,CAAC;QAC3D,OAAO,SAAS,CAAC;KAClB;IAED,MAAM;QACJ,QACEA,QAACC,UAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,oBAAoB,EAAE,IAC3ED,kEAAK,KAAK,EAAC,eAAe,GAAG,EAC7BA,kEAAK,KAAK,EAAC,gBAAgB,IACzBA,oEAAQ,EACP,IAAI,CAAC,IAAI,CACN,EACNA,kEAAK,KAAK,EAAC,QAAQ,IAChB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,IACxBA,iBACE,KAAK,EAAC,4BAA4B,uBAChB,eAAe,EACjC,EAAE,EAAC,WAAW,EACd,OAAO,EAAC,KAAK,EACb,OAAO,EAAC,WAAW,IAEnBA,sBACE,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,gBAAgB,EACvB,MAAM,EAAEE,YAAK,uBACK,IAAI,kBACT,GAAG,GAChB,CACE,KAEN,EAAE,CACH,CACG,CACD,EACP;KACH;;;;;;","names":["h","Host","white"],"sources":["src/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.scss?tag=pn-progress-indicator-step","src/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.tsx"],"sourcesContent":["@use 'src/globals/main';\n\npn-progress-indicator-step {\n display: flex;\n flex: 1 0 4em;\n\n &:first-child {\n flex: 0 0 auto;\n\n .progress-line {\n display: none;\n }\n\n .info-container {\n transform: translateX(-50%);\n left: 50%;\n }\n }\n}\n\n.pn-progress-indicator-step {\n position: relative;\n display: flex;\n flex: 1 0 4em;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n\n .circle {\n width: 1.5em;\n height: 1.5em;\n padding: 0.3rem;\n border-radius: 50%;\n background-color: main.$gray50;\n @include main.pn-transition('background-color');\n }\n\n .info-container {\n position: absolute;\n bottom: -2.5em;\n right: 0;\n transform: translateX(50%) translateX(-1.2rem);\n white-space: nowrap;\n color: main.$gray50;\n display: flex;\n align-items: center;\n flex-direction: column;\n font-size: 1em;\n font-weight: normal;\n @include main.pn-transition('color');\n\n .pn-icon-svg {\n height: 1.7em;\n width: 1.7em;\n margin-bottom: 0.1em;\n }\n\n .pn-icon-svg path,\n .pn-icon-svg polygon {\n fill: main.$gray50;\n }\n }\n\n .progress-line {\n flex: 1 1 auto;\n margin: auto 4px;\n height: 0.8rem;\n background-color: main.$gray50;\n position: relative;\n overflow: hidden;\n pointer-events: none;\n border-radius: 10rem;\n\n &:after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n height: 0.8rem;\n width: 100%;\n background-color: main.$blue700;\n transform: translateX(-100%);\n @include main.pn-transition('transform');\n transition-delay: main.$timing;\n }\n }\n\n &.active {\n .info-container {\n color: main.$black;\n\n .pn-icon-svg path {\n fill: main.$black;\n }\n\n .pn-icon-svg polygon {\n fill: main.$black;\n }\n }\n }\n\n &.activated {\n cursor: pointer;\n }\n\n &.done,\n &.active {\n .progress-line:after {\n transform: translateX(0);\n }\n\n .circle {\n background-color: main.$blue700;\n }\n }\n\n &.done {\n .checkmark-path {\n stroke-linecap: round;\n stroke-dasharray: 27;\n stroke-dashoffset: -23;\n animation: dash main.$timing cubic-bezier(0.55, 0, 0.1, 1) both;\n }\n }\n}\n\n@keyframes dash {\n to {\n stroke-dashoffset: 0;\n }\n}\n","import { Component, Prop, Event, EventEmitter, h, Host, State } from '@stencil/core';\nimport { white } from 'pn-design-assets/pn-assets/colors.js';\n\n@Component({\n tag: 'pn-progress-indicator-step',\n styleUrl: 'pn-progress-indicator-step.scss',\n})\nexport class PnProgressIndicatorStep {\n @State() activated: boolean;\n @State() done: boolean;\n\n /** Set by the parent component. Do not use manually. @hide true */\n @Prop() activeStep: number;\n /** Set by the parent component. Do not use manually. @hide true */\n @Prop() index: number;\n /** The step name. */\n @Prop() name: string;\n /** Set the step as checked, meaning a white check mark will appear. */\n @Prop() checked: boolean = false;\n /** Set by the parent component. Do not use manually. @hide true */\n @Prop() active?: 'yes' | 'no';\n\n @Event() setactivestep: EventEmitter<number>;\n setActiveStepHandler() {\n if (this.done || this.activated) {\n this.setactivestep.emit(this.index);\n }\n }\n\n componentWillLoad() {\n this.checkStatus();\n }\n\n componentDidUpdate() {\n this.checkStatus();\n }\n\n checkStatus() {\n if (!this.done) {\n this.done = this.checked || this.activeStep > this.index;\n }\n\n if (this.active === 'yes') {\n this.activated = true;\n } else if (this.active === 'no') {\n this.activated = false;\n this.done = false;\n } else if (!this.activated) {\n this.activated = this.activeStep >= this.index;\n }\n }\n\n getClassNames() {\n let className = 'pn-progress-indicator-step';\n if (this.done || this.checked) className += ' done';\n if (this.activated) className += ' activated';\n if (this.activeStep === this.index) className += ' active';\n return className;\n }\n\n render() {\n return (\n <Host class={this.getClassNames()} onClick={() => this.setActiveStepHandler()}>\n <div class=\"progress-line\" />\n <div class=\"info-container\">\n <slot />\n {this.name}\n </div>\n <div class=\"circle\">\n {this.done || this.checked ? (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n enable-background=\"new 0 0 24 24\"\n id=\"checkmark\"\n version=\"1.0\"\n viewBox=\"0 0 24 24\"\n >\n <polyline\n class=\"checkmark-path\"\n fill=\"none\"\n points=\"20,6 9,17 4,12\"\n stroke={white}\n stroke-miterlimit=\"10\"\n stroke-width=\"3\"\n />\n </svg>\n ) : (\n ''\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pn-progress-indicator-step.entry.cjs.js","mappings":";;;;;;;;;;;AAAA,MAAM,0BAA0B,GAAG,izFAAizF,CAAC;AACr1F,sCAAe,0BAA0B;;MCU5B,uBAAuB;;;;;;;;;uBAWP,KAAK;;;IAIvB,aAAa,CAAuB;IAC7C,oBAAoB;QAClB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE;YAC/B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACrC;KACF;IAED,iBAAiB;QACf,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,kBAAkB;QAChB,IAAI,CAAC,WAAW,EAAE,CAAC;KACpB;IAED,WAAW;QACT,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;SAC1D;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE;YACzB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACvB;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,EAAE;YAC/B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;SACnB;aAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAC1B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC;SAChD;KACF;IAED,aAAa;QACX,IAAI,SAAS,GAAG,4BAA4B,CAAC;QAC7C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO;YAAE,SAAS,IAAI,OAAO,CAAC;QACpD,IAAI,IAAI,CAAC,SAAS;YAAE,SAAS,IAAI,YAAY,CAAC;QAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,KAAK;YAAE,SAAS,IAAI,SAAS,CAAC;QAC3D,OAAO,SAAS,CAAC;KAClB;IAED,MAAM;QACJ,QACEA,QAACC,UAAI,qDAAC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,oBAAoB,EAAE,IAC3ED,kEAAK,KAAK,EAAC,eAAe,GAAG,EAC7BA,kEAAK,KAAK,EAAC,gBAAgB,IACzBA,oEAAQ,EACP,IAAI,CAAC,IAAI,CACN,EACNA,kEAAK,KAAK,EAAC,QAAQ,IAChB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,IACxBA,iBACE,KAAK,EAAC,4BAA4B,uBAChB,eAAe,EACjC,EAAE,EAAC,WAAW,EACd,OAAO,EAAC,KAAK,EACb,OAAO,EAAC,WAAW,IAEnBA,sBACE,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,gBAAgB,EACvB,MAAM,EAAEE,YAAK,uBACK,IAAI,kBACT,GAAG,GAChB,CACE,KAEN,EAAE,CACH,CACG,CACD,EACP;KACH;;;;;;","names":["h","Host","white"],"sources":["src/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.scss?tag=pn-progress-indicator-step","src/components/feedback/pn-progress-indicator/pn-progress-indicator-step/pn-progress-indicator-step.tsx"],"sourcesContent":["@use 'src/globals/main';\n\npn-progress-indicator-step {\n display: flex;\n flex: 1 0 4em;\n\n &:first-child {\n flex: 0 0 auto;\n\n .progress-line {\n display: none;\n }\n\n .info-container {\n transform: translateX(-50%);\n left: 50%;\n }\n }\n}\n\n.pn-progress-indicator-step {\n position: relative;\n display: flex;\n flex: 1 0 4em;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n\n .circle {\n width: 1.5em;\n height: 1.5em;\n padding: 0.3rem;\n border-radius: 50%;\n background-color: main.$gray50;\n @include main.pn-transition('background-color');\n }\n\n .info-container {\n position: absolute;\n bottom: -2.5em;\n right: 0;\n transform: translateX(50%) translateX(-1.2rem);\n white-space: nowrap;\n color: main.$gray50;\n display: flex;\n align-items: center;\n flex-direction: column;\n font-size: 1em;\n font-weight: normal;\n @include main.pn-transition('color');\n\n .pn-icon-svg {\n height: 1.7em;\n width: 1.7em;\n margin-bottom: 0.1em;\n }\n\n .pn-icon-svg path,\n .pn-icon-svg polygon {\n fill: main.$gray50;\n }\n }\n\n .progress-line {\n flex: 1 1 auto;\n margin: auto 4px;\n height: 0.8rem;\n background-color: main.$gray50;\n position: relative;\n overflow: hidden;\n pointer-events: none;\n border-radius: 10rem;\n\n &:after {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n height: 0.8rem;\n width: 100%;\n background-color: main.$blue700;\n transform: translateX(-100%);\n @include main.pn-transition('transform');\n transition-delay: main.$timing;\n }\n }\n\n &.active {\n .info-container {\n color: main.$black;\n\n .pn-icon-svg path {\n fill: main.$black;\n }\n\n .pn-icon-svg polygon {\n fill: main.$black;\n }\n }\n }\n\n &.activated {\n cursor: pointer;\n }\n\n &.done,\n &.active {\n .progress-line:after {\n transform: translateX(0);\n }\n\n .circle {\n background-color: main.$blue700;\n }\n }\n\n &.done {\n .checkmark-path {\n stroke-linecap: round;\n stroke-dasharray: 27;\n stroke-dashoffset: -23;\n animation: dash main.$timing cubic-bezier(0.55, 0, 0.1, 1) both;\n }\n }\n}\n\n@keyframes dash {\n to {\n stroke-dashoffset: 0;\n }\n}\n","import { Component, Prop, Event, EventEmitter, h, Host, State } from '@stencil/core';\nimport { white } from 'pn-design-assets/pn-assets/colors.js';\n\n/**\n * @deprecated This component will be removed in v8. Please use the `pn-progress-stepper` instead.\n * @see {@link https://portal.postnord.com/web-components/?path=/docs/components-feedback-progress-stepper--docs Use `pn-progress-stepper` instead.}\n */\n@Component({\n tag: 'pn-progress-indicator-step',\n styleUrl: 'pn-progress-indicator-step.scss',\n})\nexport class PnProgressIndicatorStep {\n @State() activated: boolean;\n @State() done: boolean;\n\n /** Set by the parent component. Do not use manually. @hide true */\n @Prop() activeStep: number;\n /** Set by the parent component. Do not use manually. @hide true */\n @Prop() index: number;\n /** The step name. */\n @Prop() name: string;\n /** Set the step as checked, meaning a white check mark will appear. */\n @Prop() checked: boolean = false;\n /** Set by the parent component. Do not use manually. @hide true */\n @Prop() active?: 'yes' | 'no';\n\n @Event() setactivestep: EventEmitter<number>;\n setActiveStepHandler() {\n if (this.done || this.activated) {\n this.setactivestep.emit(this.index);\n }\n }\n\n componentWillLoad() {\n this.checkStatus();\n }\n\n componentDidUpdate() {\n this.checkStatus();\n }\n\n checkStatus() {\n if (!this.done) {\n this.done = this.checked || this.activeStep > this.index;\n }\n\n if (this.active === 'yes') {\n this.activated = true;\n } else if (this.active === 'no') {\n this.activated = false;\n this.done = false;\n } else if (!this.activated) {\n this.activated = this.activeStep >= this.index;\n }\n }\n\n getClassNames() {\n let className = 'pn-progress-indicator-step';\n if (this.done || this.checked) className += ' done';\n if (this.activated) className += ' activated';\n if (this.activeStep === this.index) className += ' active';\n return className;\n }\n\n render() {\n return (\n <Host class={this.getClassNames()} onClick={() => this.setActiveStepHandler()}>\n <div class=\"progress-line\" />\n <div class=\"info-container\">\n <slot />\n {this.name}\n </div>\n <div class=\"circle\">\n {this.done || this.checked ? (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n enable-background=\"new 0 0 24 24\"\n id=\"checkmark\"\n version=\"1.0\"\n viewBox=\"0 0 24 24\"\n >\n <polyline\n class=\"checkmark-path\"\n fill=\"none\"\n points=\"20,6 9,17 4,12\"\n stroke={white}\n stroke-miterlimit=\"10\"\n stroke-width=\"3\"\n />\n </svg>\n ) : (\n ''\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -38,7 +38,7 @@ const PnProgressIndicator = class {
38
38
  });
39
39
  }
40
40
  render() {
41
- return (index.h("div", { key: '7809a31648a1c899311e83dc28db7b0b23272547', class: "pn-progress-indicator" }, index.h("slot", { key: 'a1b9970f16de43052e473ea166829a1ad6e5e725' })));
41
+ return (index.h("div", { key: '1108f70edf525c6e7e0e45d34a6d58e69c5b9ab2', class: "pn-progress-indicator" }, index.h("slot", { key: 'c4035cf9fadb46f4e573c0225bebb2f8f7187da6' })));
42
42
  }
43
43
  };
44
44
  PnProgressIndicator.style = PnProgressIndicatorStyle0;
@@ -1 +1 @@
1
- {"file":"pn-progress-indicator.entry.cjs.js","mappings":";;;;;;;;;;AAAA,MAAM,sBAAsB,GAAG,0DAA0D,CAAC;AAC1F,kCAAe,sBAAsB;;MCKxB,mBAAmB;;;;0BAIgB,CAAC;;;;IAGtC,cAAc,CAAuB;IAG9C,oBAAoB,CAAC,EAAE,MAAM,EAAE;QAC7B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC3C;IAED,iBAAiB;QACf,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,kBAAkB;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,mBAAmB;QACjB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CACzB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAqC,4BAA4B,CAAC,CACpG,CAAC;QAEF,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YACxB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;SACjB,CAAC,CAAC;KACJ;IAED,MAAM;QACJ,QACEA,kEAAK,KAAK,EAAC,uBAAuB,IAChCA,oEAAQ,CACJ,EACN;KACH;;;;;;","names":["h"],"sources":["src/components/feedback/pn-progress-indicator/pn-progress-indicator.scss?tag=pn-progress-indicator","src/components/feedback/pn-progress-indicator/pn-progress-indicator.tsx"],"sourcesContent":[".pn-progress-indicator {\n display: flex;\n padding: 2.8em 1em 0;\n}\n","import { Component, Prop, Element, Listen, Event, EventEmitter, h } from '@stencil/core';\n\n@Component({\n tag: 'pn-progress-indicator',\n styleUrl: 'pn-progress-indicator.scss',\n})\nexport class PnProgressIndicator {\n @Element() hostElement: HTMLElement;\n\n /** Takes the index of the active step */\n @Prop({ mutable: true }) activeStep: number = 0;\n\n /** This will emit when progress is changed and is the value you want to bind to your VM state */\n @Event() progresschange: EventEmitter<number>;\n\n @Listen('setactivestep')\n setActiveStepHandler({ detail }) {\n this.activeStep = detail;\n this.progresschange.emit(this.activeStep);\n }\n\n componentWillLoad() {\n this.passPropsToChildren();\n }\n\n componentDidUpdate() {\n this.passPropsToChildren();\n }\n\n passPropsToChildren() {\n const children = Array.from(\n this.hostElement.querySelectorAll<HTMLPnProgressIndicatorStepElement>('pn-progress-indicator-step'),\n );\n\n children.forEach((child, i) => {\n child.activeStep = this.activeStep;\n child.index = i;\n });\n }\n\n render() {\n return (\n <div class=\"pn-progress-indicator\">\n <slot />\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pn-progress-indicator.entry.cjs.js","mappings":";;;;;;;;;;AAAA,MAAM,sBAAsB,GAAG,0DAA0D,CAAC;AAC1F,kCAAe,sBAAsB;;MCSxB,mBAAmB;;;;0BAIgB,CAAC;;;;IAGtC,cAAc,CAAuB;IAG9C,oBAAoB,CAAC,EAAE,MAAM,EAAE;QAC7B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;KAC3C;IAED,iBAAiB;QACf,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,kBAAkB;QAChB,IAAI,CAAC,mBAAmB,EAAE,CAAC;KAC5B;IAED,mBAAmB;QACjB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CACzB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAqC,4BAA4B,CAAC,CACpG,CAAC;QAEF,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;YACxB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YACnC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;SACjB,CAAC,CAAC;KACJ;IAED,MAAM;QACJ,QACEA,kEAAK,KAAK,EAAC,uBAAuB,IAChCA,oEAAQ,CACJ,EACN;KACH;;;;;;","names":["h"],"sources":["src/components/feedback/pn-progress-indicator/pn-progress-indicator.scss?tag=pn-progress-indicator","src/components/feedback/pn-progress-indicator/pn-progress-indicator.tsx"],"sourcesContent":[".pn-progress-indicator {\n display: flex;\n padding: 2.8em 1em 0;\n}\n","import { Component, Prop, Element, Listen, Event, EventEmitter, h } from '@stencil/core';\n\n/**\n * @deprecated This component will be removed in v8. Please use the `pn-progress-stepper` instead.\n * @see {@link https://portal.postnord.com/web-components/?path=/docs/components-feedback-progress-stepper--docs Use `pn-progress-stepper` instead.}\n */\n@Component({\n tag: 'pn-progress-indicator',\n styleUrl: 'pn-progress-indicator.scss',\n})\nexport class PnProgressIndicator {\n @Element() hostElement: HTMLElement;\n\n /** Takes the index of the active step */\n @Prop({ mutable: true }) activeStep: number = 0;\n\n /** This will emit when progress is changed and is the value you want to bind to your VM state */\n @Event() progresschange: EventEmitter<number>;\n\n @Listen('setactivestep')\n setActiveStepHandler({ detail }) {\n this.activeStep = detail;\n this.progresschange.emit(this.activeStep);\n }\n\n componentWillLoad() {\n this.passPropsToChildren();\n }\n\n componentDidUpdate() {\n this.passPropsToChildren();\n }\n\n passPropsToChildren() {\n const children = Array.from(\n this.hostElement.querySelectorAll<HTMLPnProgressIndicatorStepElement>('pn-progress-indicator-step'),\n );\n\n children.forEach((child, i) => {\n child.activeStep = this.activeStep;\n child.index = i;\n });\n }\n\n render() {\n return (\n <div class=\"pn-progress-indicator\">\n <slot />\n </div>\n );\n }\n}\n"],"version":3}
@@ -19,63 +19,43 @@ const translations = {
19
19
  },
20
20
  };
21
21
 
22
- const pnProgressStepperCss = "pn-progress-stepper .pn-progress-stepper{position:relative;width:100%;background:#f3f2f2;height:0.5em;border-radius:0.5em;box-shadow:0 0 0 0.0625em #969087}pn-progress-stepper .pn-progress-stepper[data-full] .pn-progress-stepper-value{border-top-right-radius:0.5em;border-bottom-right-radius:0.5em}pn-progress-stepper .pn-progress-stepper-label{margin-bottom:0.5em}pn-progress-stepper .pn-progress-stepper-value{position:absolute;top:-0.0625em;left:-0.0625em;height:0.625em;background-color:#005d92;width:calc(var(--progress-value) + 0.125em);border-radius:0.5em 0 0 0.5em;transition-property:width, border-radius;transition-duration:0.4s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1)}@media (prefers-reduced-motion: reduce){pn-progress-stepper .pn-progress-stepper-value{transition-duration:0s;transition-delay:0s}}";
22
+ const pnProgressStepperCss = "pn-progress-stepper{display:block}pn-progress-stepper .pn-progress{position:relative;width:100%;background:#f3f2f2;height:0.5em;border-radius:0.5em;box-shadow:0 0 0 0.0625em #969087}pn-progress-stepper .pn-progress-label{display:block;color:#2d2013;font-size:1em;margin-bottom:0.5em}pn-progress-stepper .pn-progress-value{position:absolute;top:-0.0625em;left:-0.0625em;height:0.625em;background-color:#005d92;width:calc(var(--pn-progress-value) + 0.125em);border-radius:0.5em 0 0 0.5em;transition-property:width, border-radius;transition-duration:0.4s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1)}@media (prefers-reduced-motion: reduce){pn-progress-stepper .pn-progress-value{transition-duration:0s;transition-delay:0s}}pn-progress-stepper .pn-progress-value[data-full]{border-top-right-radius:0.5em;border-bottom-right-radius:0.5em}pn-progress-stepper .pn-progress-dots{display:flex;align-items:center;justify-content:center;gap:1em}pn-progress-stepper .pn-progress-dot{width:0.875em;height:0.875em;background-color:#f3f2f2;border:0.0625em solid #d3cecb;border-radius:50%;transform:scale(1) translateY(0%);transition-property:background-color, border-color;transition-duration:0.4s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1);animation:pnBackwards 0.2s cubic-bezier(0.7, 0, 0.3, 1);animation-fill-mode:forwards}@media (prefers-reduced-motion: reduce){pn-progress-stepper .pn-progress-dot{transition-duration:0s;transition-delay:0s}}pn-progress-stepper .pn-progress-dot[data-active]{background-color:#005d92;border-color:#005d92;animation:pnForward 0.2s cubic-bezier(0.7, 0, 0.3, 1);animation-fill-mode:forwards}pn-progress-stepper .pn-progress-sr-only{position:absolute;height:1px;width:1px;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);margin:-1px;white-space:nowrap}@keyframes pnForward{0%{transform:scale(1) translateY(0%)}50%{transform:scale(1) translateY(20%)}75%{transform:scale(1.1) translateY(10%)}100%{transform:scale(1) translateY(0%)}}@keyframes pnBackwards{0%{transform:scale(1) translateY(0%)}50%{transform:scale(1) translateY(-20%)}75%{transform:scale(0.9) translateY(-10%)}100%{transform:scale(1) translateY(0%)}}";
23
23
  const PnProgressStepperStyle0 = pnProgressStepperCss;
24
24
 
25
25
  const PnProgressStepper = class {
26
26
  constructor(hostRef) {
27
27
  index.registerInstance(this, hostRef);
28
+ this.builtInLabel = undefined;
28
29
  this.progressValue = 0;
29
- this.label = undefined;
30
+ this.label = '';
31
+ this.progressStepperId = '';
32
+ this.language = null;
30
33
  this.totalSteps = this.maxStep;
31
34
  this.currentStep = this.minStep;
32
35
  this.stepName = undefined;
33
- this.progressStepperId = '';
34
- this.language = null;
36
+ this.dots = false;
35
37
  }
36
38
  id = `pn-progress-stepper-${helpers.uuidv4()}`;
37
- idLabel = `${this.id}-label`;
38
- idBar = `${this.id}-bar`;
39
39
  minStep = 1;
40
40
  maxStep = 7;
41
41
  get hostElement() { return index.getElement(this); }
42
- validateCurrentStep(step) {
43
- this.validate(step, 'currentStep');
44
- }
45
- validateTotalSteps(step) {
46
- this.validate(step, 'totalSteps');
42
+ stepWatchers(a, b, c) {
43
+ if (c === 'currentStep')
44
+ this.validate(a, 'currentStep');
45
+ if (c === 'totalSteps')
46
+ this.validate(b, 'totalSteps');
47
+ this.calculateProgress();
47
48
  }
48
49
  watchLanguage() {
49
- if (this.hasCustomLabel())
50
- return;
51
- this.label = translations.STEP[this.language || helpers.en];
52
- }
53
- watchId() {
54
- if (this.progressStepperId) {
55
- this.idLabel = `${this.progressStepperId}-label`;
56
- this.idBar = `${this.progressStepperId}-bar`;
57
- }
58
- else {
59
- this.idLabel = `${this.id}-label`;
60
- this.idBar = `${this.id}-bar`;
61
- }
50
+ this.builtInLabel = translations.STEP[this.language || helpers.en];
62
51
  }
63
52
  async componentWillLoad() {
64
53
  this.watchLanguage();
65
- this.watchId();
66
54
  this.validate(this.currentStep, 'currentStep');
67
55
  this.validate(this.totalSteps, 'totalSteps');
68
- if (this.language)
69
- return;
70
- await helpers.awaitTopbar(this.hostElement);
71
- }
72
- componentWillRender() {
73
56
  this.calculateProgress();
74
- }
75
- hasCustomLabel() {
76
- if (this.label === undefined)
77
- return false;
78
- return !Object.keys(translations.STEP).find(step => translations.STEP[step] === this.label);
57
+ if (this.language === null)
58
+ await helpers.awaitTopbar(this.hostElement);
79
59
  }
80
60
  validate(step, prop) {
81
61
  const componentName = this.hostElement.localName;
@@ -95,20 +75,25 @@ const PnProgressStepper = class {
95
75
  calculateProgress() {
96
76
  try {
97
77
  this.progressValue = Math.floor((this.currentStep / this.totalSteps) * 100);
98
- this.hostElement.style.setProperty('--progress-value', `${this.progressValue}%`);
78
+ this.hostElement.style.setProperty('--pn-progress-value', `${this.progressValue}%`);
99
79
  }
100
80
  catch (error) {
101
81
  console.error(`${this.hostElement.localName}:`, error.message);
102
82
  }
103
83
  }
84
+ getLabel() {
85
+ return this.label || this.builtInLabel;
86
+ }
87
+ getId() {
88
+ return this.progressStepperId || this.id;
89
+ }
104
90
  render() {
105
- return (index.h(index.Host, { key: '4ba09046dab423fa79ebfdab9fbf312d9d8929cf' }, index.h("p", { key: 'fa2f78ce5509e1dd7af40657a083356e61d393db', id: this.idLabel, class: "pn-progress-stepper-label" }, index.h("span", { key: '963374a110ad8fc87d6d6d2b00cd1694992fffab' }, this.label, " ", this.currentStep, "/", this.totalSteps), this.stepName && index.h("span", { key: 'f5cef98692b9baf2dc2826d1a0ebaebb64e75cf5' }, " - ", this.stepName)), index.h("div", { key: '2259ad7c3a8d77ff6a59d32124695e9259b22ba5', class: "pn-progress-stepper", role: "progressbar", "aria-labelledby": this.idLabel, "aria-valuenow": this.progressValue, id: this.idBar, "data-full": this.currentStep === this.totalSteps }, index.h("div", { key: 'f469df98da0b06db3a80fdcdc96555151789b014', class: "pn-progress-stepper-value" }))));
91
+ return (index.h(index.Host, { key: '8b188af32a20e83f8e8d0460c676bda9e1560911' }, index.h("label", { key: '9501af57bade0fd22ca865990e9c6934fb8da0d2', htmlFor: this.getId(), class: 'pn-progress-label' + (this.dots ? ' pn-progress-sr-only' : '') }, index.h("span", { key: '7ae3e7e7fa8ea5d24fe13c895b6b86d7a0bd780a' }, this.getLabel(), " ", this.currentStep, "/", this.totalSteps), this.stepName && index.h("span", { key: '3e15c0c51b59bbea44e8d589ff29da8c9cb5a666' }, " - ", this.stepName)), index.h("progress", { key: '7e379261374b13ad1b06216fe96146ac7fad73c2', id: this.getId(), class: "pn-progress-sr-only", max: "100", value: this.progressValue }), this.dots ? (index.h("div", { class: "pn-progress-dots", "aria-hidden": "true" }, [...Array(this.totalSteps)].map((_, i) => (index.h("div", { class: "pn-progress-dot", "data-active": i + 1 <= this.currentStep, key: i }))))) : (index.h("div", { "aria-hidden": "true", class: "pn-progress" }, index.h("div", { class: "pn-progress-value", "data-full": this.currentStep === this.totalSteps })))));
106
92
  }
107
93
  static get watchers() { return {
108
- "currentStep": ["validateCurrentStep"],
109
- "totalSteps": ["validateTotalSteps"],
110
- "language": ["watchLanguage"],
111
- "progressStepperId": ["watchId"]
94
+ "currentStep": ["stepWatchers"],
95
+ "totalSteps": ["stepWatchers"],
96
+ "language": ["watchLanguage"]
112
97
  }; }
113
98
  };
114
99
  PnProgressStepper.style = PnProgressStepperStyle0;
@@ -1 +1 @@
1
- {"file":"pn-progress-stepper.entry.cjs.js","mappings":"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","names":["uuidv4","en","awaitTopbar","h","Host"],"sources":["src/components/feedback/pn-progress-stepper/translations.ts","src/components/feedback/pn-progress-stepper/pn-progress-stepper.scss?tag=pn-progress-stepper","src/components/feedback/pn-progress-stepper/pn-progress-stepper.tsx"],"sourcesContent":["export const translations = {\n STEP: {\n da: 'Trin',\n en: 'Step',\n fi: 'Vaihe',\n no: 'Trinn',\n sv: 'Steg',\n },\n};\n","@use 'src/globals/main';\n\npn-progress-stepper .pn-progress-stepper {\n position: relative;\n\n width: 100%;\n background: main.$gray50;\n height: 0.5em;\n border-radius: 0.5em;\n box-shadow: (0 0 0 0.0625em main.$gray400);\n\n &[data-full] .pn-progress-stepper-value {\n border-top-right-radius: 0.5em;\n border-bottom-right-radius: 0.5em;\n }\n\n &-label {\n margin-bottom: 0.5em;\n }\n\n &-value {\n position: absolute;\n top: -0.0625em;\n left: -0.0625em;\n\n height: 0.625em;\n background-color: main.$blue700;\n width: calc(var(--progress-value) + 0.125em);\n border-radius: 0.5em 0 0 0.5em;\n\n @include main.pn-transition('width, border-radius', main.$timing-layout);\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { translations } from './translations';\nimport { en, awaitTopbar, uuidv4 } from '@/globals/helpers';\nimport type { PnLanguages, PnSteps, PnStepProps } from '@/globals/types';\n\n/**\n * The `pn-progress-stepper` is used to visualize the users progress through a flow (checkout/survey, etc...).\n **/\n@Component({\n tag: 'pn-progress-stepper',\n styleUrl: 'pn-progress-stepper.scss',\n})\nexport class PnProgressStepper {\n id: string = `pn-progress-stepper-${uuidv4()}`;\n\n idLabel: string = `${this.id}-label`;\n idBar: string = `${this.id}-bar`;\n\n minStep: 1 = 1;\n maxStep: 7 = 7;\n\n @Element() hostElement: HTMLElement;\n\n /** Percentage calculated with currentStep / totalSteps. */\n @State() progressValue: number = 0;\n\n /** Set custom label for the stepper, recommended default label is \"Step\". */\n @Prop({ mutable: true }) label?: string;\n /** Set total amount of steps, maximum `7` is allowed. */\n @Prop({ mutable: true }) totalSteps: PnSteps = this.maxStep;\n /** The current step of the progress stepper. */\n @Prop({ mutable: true }) currentStep: PnSteps = this.minStep;\n /** You can add a custom optional string to the label if you need a name for the current step. */\n @Prop() stepName?: string;\n /** Set a custom HTML id on the progress stepper element to associate progress bar with label. */\n @Prop() progressStepperId?: string = '';\n /**\n * Set the language manually, only use this prop if the pnTopbar is not loaded.\n * Will not overwrite the `label` prop if used.\n **/\n @Prop() language?: PnLanguages = null;\n\n @Watch('currentStep')\n validateCurrentStep(step: PnSteps) {\n this.validate(step, 'currentStep');\n }\n\n @Watch('totalSteps')\n validateTotalSteps(step: PnSteps) {\n this.validate(step, 'totalSteps');\n }\n\n @Watch('language')\n watchLanguage() {\n if (this.hasCustomLabel()) return;\n this.label = translations.STEP[this.language || en];\n }\n\n @Watch('progressStepperId')\n watchId() {\n if (this.progressStepperId) {\n this.idLabel = `${this.progressStepperId}-label`;\n this.idBar = `${this.progressStepperId}-bar`;\n } else {\n this.idLabel = `${this.id}-label`;\n this.idBar = `${this.id}-bar`;\n }\n }\n\n async componentWillLoad() {\n this.watchLanguage();\n this.watchId();\n\n this.validate(this.currentStep, 'currentStep');\n this.validate(this.totalSteps, 'totalSteps');\n\n if (this.language) return;\n await awaitTopbar(this.hostElement);\n }\n\n componentWillRender() {\n this.calculateProgress();\n }\n\n hasCustomLabel(): boolean {\n if (this.label === undefined) return false;\n return !Object.keys(translations.STEP).find(step => translations.STEP[step] === this.label);\n }\n\n validate(step: PnSteps, prop: PnStepProps) {\n const componentName = this.hostElement.localName;\n if (step < this.minStep) {\n console.warn(\n `${componentName}: The ${prop} ${step} is below the minimum allowed steps of ${this.minStep}. ${prop} will default to ${this.minStep}.`,\n );\n this[prop] = this.minStep;\n }\n if (prop === 'currentStep' && step > this.totalSteps) {\n console.warn(\n `${componentName}: The ${prop} ${step} is above totalSteps ${this.totalSteps}, ${prop} will default to ${this.totalSteps}.`,\n );\n this[prop] = this.totalSteps;\n }\n if (step > this.maxStep) {\n console.warn(\n `${componentName}: The ${prop} ${step} is above the maximum allowed steps of ${this.maxStep}. ${prop} will default to ${this.maxStep}.`,\n );\n this[prop] = this.maxStep;\n }\n }\n\n calculateProgress() {\n try {\n this.progressValue = Math.floor((this.currentStep / this.totalSteps) * 100);\n this.hostElement.style.setProperty('--progress-value', `${this.progressValue}%`);\n } catch (error) {\n console.error(`${this.hostElement.localName}:`, error.message);\n }\n }\n\n render() {\n return (\n <Host>\n <p id={this.idLabel} class=\"pn-progress-stepper-label\">\n <span>\n {this.label} {this.currentStep}/{this.totalSteps}\n </span>\n {this.stepName && <span> - {this.stepName}</span>}\n </p>\n <div\n class=\"pn-progress-stepper\"\n role=\"progressbar\"\n aria-labelledby={this.idLabel}\n aria-valuenow={this.progressValue}\n id={this.idBar}\n data-full={this.currentStep === this.totalSteps}\n >\n <div class=\"pn-progress-stepper-value\"></div>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pn-progress-stepper.entry.cjs.js","mappings":"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","names":["uuidv4","en","awaitTopbar","h","Host"],"sources":["src/components/feedback/pn-progress-stepper/translations.ts","src/components/feedback/pn-progress-stepper/pn-progress-stepper.scss?tag=pn-progress-stepper","src/components/feedback/pn-progress-stepper/pn-progress-stepper.tsx"],"sourcesContent":["export const translations = {\n STEP: {\n da: 'Trin',\n en: 'Step',\n fi: 'Vaihe',\n no: 'Trinn',\n sv: 'Steg',\n },\n};\n","@use 'src/globals/main';\n\npn-progress-stepper {\n display: block;\n}\n\npn-progress-stepper .pn-progress {\n position: relative;\n\n width: 100%;\n background: main.$gray50;\n height: 0.5em;\n border-radius: 0.5em;\n box-shadow: (0 0 0 0.0625em main.$gray400);\n\n &-label {\n display: block;\n color: main.$gray900;\n font-size: 1em;\n margin-bottom: 0.5em;\n }\n\n &-value {\n position: absolute;\n top: -0.0625em;\n left: -0.0625em;\n\n height: 0.625em;\n background-color: main.$blue700;\n width: calc(var(--pn-progress-value) + 0.125em);\n border-radius: 0.5em 0 0 0.5em;\n\n @include main.pn-transition('width, border-radius', main.$timing-layout);\n\n &[data-full] {\n border-top-right-radius: 0.5em;\n border-bottom-right-radius: 0.5em;\n }\n }\n\n &-dots {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 1em;\n }\n\n &-dot {\n width: 0.875em;\n height: 0.875em;\n background-color: main.$gray50;\n border: 0.0625em solid main.$gray200;\n border-radius: 50%;\n\n transform: scale(1) translateY(0%);\n\n @include main.pn-transition('background-color, border-color', main.$timing-layout);\n\n // Default state - plays backwards animation when data-active is removed\n animation: pnBackwards main.$timing main.$easing;\n animation-fill-mode: forwards;\n\n &[data-active] {\n background-color: main.$blue700;\n border-color: main.$blue700;\n animation: pnForward main.$timing main.$easing;\n animation-fill-mode: forwards;\n }\n }\n\n @include main.pn-sr-only-class();\n}\n\n@keyframes pnForward {\n 0% {\n transform: scale(1) translateY(0%);\n }\n 50% {\n transform: scale(1) translateY(20%);\n }\n 75% {\n transform: scale(1.1) translateY(10%);\n }\n 100% {\n transform: scale(1) translateY(0%);\n }\n}\n\n@keyframes pnBackwards {\n 0% {\n transform: scale(1) translateY(0%);\n }\n 50% {\n transform: scale(1) translateY(-20%);\n }\n 75% {\n transform: scale(0.9) translateY(-10%);\n }\n 100% {\n transform: scale(1) translateY(0%);\n }\n}\n","import { Component, Element, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { translations } from './translations';\nimport { en, awaitTopbar, uuidv4 } from '@/globals/helpers';\nimport type { PnLanguages, PnStepProps } from '@/globals/types';\n\n/**\n * The `pn-progress-stepper` is used to visualize the users progress through a flow (checkout/survey, etc...).\n **/\n@Component({\n tag: 'pn-progress-stepper',\n styleUrl: 'pn-progress-stepper.scss',\n})\nexport class PnProgressStepper {\n private readonly id: string = `pn-progress-stepper-${uuidv4()}`;\n\n private readonly minStep: 1 = 1;\n private readonly maxStep: 7 = 7;\n\n @Element() hostElement: HTMLElement;\n\n @State() private builtInLabel: string;\n /** Percentage calculated with currentStep / totalSteps. */\n @State() private progressValue: number = 0;\n\n /** Set custom label for the stepper, default label is \"Step\". */\n @Prop() label?: string = '';\n /** Set a custom HTML id on the progress stepper element to associate progress bar with label. */\n @Prop() progressStepperId?: string = '';\n /**\n * Set the language manually, only use this prop if the pnTopbar is not loaded.\n * Will not overwrite the custom `label` prop if used.\n **/\n @Prop() language?: PnLanguages = null;\n\n /** Set total amount of steps, maximum allowed is `7`. @category Steps */\n @Prop({ mutable: true }) totalSteps: number = this.maxStep;\n /** The current step of the progress stepper. @category Steps */\n @Prop({ mutable: true }) currentStep: number = this.minStep;\n /** You can add a custom optional string to the label if you need a name for the current step. @category Steps */\n @Prop() stepName?: string;\n\n /**\n * Use the dots visual, instead of the bar.\n *\n * This will hide the label from view, but is still accessible to screenreaders.\n *\n * @category Visual\n */\n @Prop() dots: boolean = false;\n\n @Watch('currentStep')\n @Watch('totalSteps')\n stepWatchers(a: number, b: number, c: 'currentStep' | 'totalSteps') {\n if (c === 'currentStep') this.validate(a, 'currentStep');\n if (c === 'totalSteps') this.validate(b, 'totalSteps');\n this.calculateProgress();\n }\n\n @Watch('language')\n watchLanguage() {\n this.builtInLabel = translations.STEP[this.language || en];\n }\n\n async componentWillLoad() {\n this.watchLanguage();\n\n this.validate(this.currentStep, 'currentStep');\n this.validate(this.totalSteps, 'totalSteps');\n\n this.calculateProgress();\n\n if (this.language === null) await awaitTopbar(this.hostElement);\n }\n\n private validate(step: number, prop: PnStepProps) {\n const componentName = this.hostElement.localName;\n if (step < this.minStep) {\n console.warn(\n `${componentName}: The ${prop} ${step} is below the minimum allowed steps of ${this.minStep}. ${prop} will default to ${this.minStep}.`,\n );\n this[prop] = this.minStep;\n }\n if (prop === 'currentStep' && step > this.totalSteps) {\n console.warn(\n `${componentName}: The ${prop} ${step} is above totalSteps ${this.totalSteps}, ${prop} will default to ${this.totalSteps}.`,\n );\n this[prop] = this.totalSteps;\n }\n if (step > this.maxStep) {\n console.warn(\n `${componentName}: The ${prop} ${step} is above the maximum allowed steps of ${this.maxStep}. ${prop} will default to ${this.maxStep}.`,\n );\n this[prop] = this.maxStep;\n }\n }\n\n private calculateProgress() {\n try {\n this.progressValue = Math.floor((this.currentStep / this.totalSteps) * 100);\n this.hostElement.style.setProperty('--pn-progress-value', `${this.progressValue}%`);\n } catch (error) {\n console.error(`${this.hostElement.localName}:`, error.message);\n }\n }\n\n private getLabel() {\n return this.label || this.builtInLabel;\n }\n\n private getId() {\n return this.progressStepperId || this.id;\n }\n\n render() {\n return (\n <Host>\n <label htmlFor={this.getId()} class={'pn-progress-label' + (this.dots ? ' pn-progress-sr-only' : '')}>\n <span>\n {this.getLabel()} {this.currentStep}/{this.totalSteps}\n </span>\n {this.stepName && <span> - {this.stepName}</span>}\n </label>\n <progress id={this.getId()} class=\"pn-progress-sr-only\" max=\"100\" value={this.progressValue} />\n\n {this.dots ? (\n <div class=\"pn-progress-dots\" aria-hidden=\"true\">\n {[...Array(this.totalSteps)].map((_, i) => (\n <div class=\"pn-progress-dot\" data-active={i + 1 <= this.currentStep} key={i} />\n ))}\n </div>\n ) : (\n <div aria-hidden=\"true\" class=\"pn-progress\">\n <div class=\"pn-progress-value\" data-full={this.currentStep === this.totalSteps} />\n </div>\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -37,7 +37,7 @@ const PnRadioButton = class {
37
37
  this.handleId();
38
38
  }
39
39
  render() {
40
- return (index.h(index.Host, { key: 'ae520e0cfb3de29899ac40377cbb55061cd01b68' }, index.h("input", { key: 'd2195982014090f751f36f46687dc9c1e049e32d', type: "radio", id: this.radioid, value: this.value, name: this.name, disabled: this.disabled, required: this.required, checked: this.checked, "aria-describedby": !!this.helpertext && this.idHelper, "aria-invalid": this.invalid?.toString() }), index.h("div", { key: '0ebb9fa07ebb3b896e8efd3545bc7fe295c56d05', class: "pn-radio", "data-tile": this.tile, "data-invalid": this.invalid }, index.h("div", { key: 'a76dd992f2b3f2afb54e1db31ee50638002d5b4a', class: "pn-radio-container" }, index.h("div", { key: 'e456252ee2011d1dee97aff66f6ba4c122a5ca80', class: "pn-radio-outer" }, index.h("div", { key: 'dd7aee8305f27590d524b63336c619d7b440a781', class: "pn-radio-inner" }))), (this.label || this.helpertext) && (index.h("p", { key: '664c532213f996509cf6abe4a9d557b21ba60464', class: "pn-radio-content" }, this.label && (index.h("label", { key: '090e79852aa459100d0a382778bc30b75e61fe32', htmlFor: this.radioid, class: "pn-radio-label" }, this.label)), this.helpertext && (index.h("span", { key: '1785f82b7d25eff5117587777db5d02584609885', id: this.idHelper, class: "pn-radio-helpertext" }, this.helpertext)))), this.tile && this.icon && index.h("pn-icon", { key: '2902b6b37407a1b3dc7b60d47405de5ead710a57', color: "gray900", icon: this.icon }))));
40
+ return (index.h(index.Host, { key: '8bb634e145b549e4cd83b716dee01ef0473d6ab0' }, index.h("input", { key: 'b3d28e2d722957d18f9ea2f6567917627f54c1f1', type: "radio", id: this.radioid, value: this.value, name: this.name, disabled: this.disabled, required: this.required, checked: this.checked, "aria-describedby": !!this.helpertext && this.idHelper, "aria-invalid": this.invalid?.toString() }), index.h("div", { key: '84789bb4bdb07b5c9ae2a5512e70b22236b9efba', class: "pn-radio", "data-tile": this.tile, "data-invalid": this.invalid }, index.h("div", { key: '3a8d38272a31df6d779dbc0c04f25d7d514405c2', class: "pn-radio-container" }, index.h("div", { key: '1c13d1d254e1fe915604acd957ba21bd6217b345', class: "pn-radio-outer" }, index.h("div", { key: '6b576e1ae441544ad56f14d4cae0ab3f407a4200', class: "pn-radio-inner" }))), (this.label || this.helpertext) && (index.h("p", { key: '2f03734659b55b522e49f5daca3f9e494fa873f5', class: "pn-radio-content" }, this.label && (index.h("label", { key: '0fd0b95621317be2f320e359118abdb9c3556100', htmlFor: this.radioid, class: "pn-radio-label" }, this.label)), this.helpertext && (index.h("span", { key: '8a0dea7825a3e71f54b896a93331f374f1811c65', id: this.idHelper, class: "pn-radio-helpertext" }, this.helpertext)))), this.tile && this.icon && index.h("pn-icon", { key: '695a8edf949944d8a86cbdaba665a048fafed99b', color: "gray900", icon: this.icon }))));
41
41
  }
42
42
  static get watchers() { return {
43
43
  "radioid": ["handleId"]
@@ -101,7 +101,7 @@ const PnSearchField = class {
101
101
  return classNames;
102
102
  }
103
103
  render() {
104
- return (index.h(index.Host, { key: 'e37e5e244250cfa6f2f042b2c4b78952fa7d9a79', class: this.getClassNames() }, index.h("div", { key: 'eed981fb9d9fb396fbd18242e54efb2f7d7045aa', class: "input-container" }, index.h("input", { key: '218ba7784220d2709d65ed94b818e14d9d49c08a', type: "search", value: this.value, id: this.searchid, name: this.name, "aria-label": this.label, placeholder: this.placeholder, disabled: this.disabled, required: this.required, autocomplete: this.autocomplete, list: this.list, ref: el => (this.searchElement = el), onKeyDown: e => this.emitSearch({ button: e }), onInput: e => this.setVal(e) }), index.h("div", { key: '90487db137ea5f86500d4cebe40c101085aa6dff', class: "button-container" }, (this.button === 'none' || this.button === 'icon-inline') && (index.h("pn-button", { key: 'db7bd6327c382b49b3a3f1d4ae355273b64f01b3', small: true, class: "search", type: "button", appearance: "light", icon: search, iconOnly: true, noTab: this.button !== 'icon-inline', arialabel: this.translate('SEARCH'), onPnClick: e => this.emitSearch({ click: e.detail }) })), this.button !== 'icon-inline' && (index.h("pn-button", { key: '44b876f97d6a961b12363c0e3e342399ddccad1f', small: true, class: "clear", type: "button", appearance: "light", icon: close_small, iconOnly: true, arialabel: this.translate('CLEAR'), noTab: this.value && (!this.loading || this.button !== 'none'), onPnClick: () => this.clearInput() })), this.button === 'none' || (this.button === 'icon-inline' && index.h("pn-spinner", { key: '8f116b75dee2226c3efb89bbc4df1a1cf1e21175' })))), this.button !== 'none' && this.button !== 'icon-inline' && (index.h("pn-button", { key: 'a952f2dce26f841f3e934d2195649ab8c584c297', label: this.buttonLabel, appearance: this.buttonLight ? 'light' : null, icon: search, iconOnly: true, arialabel: this.button === 'icon' ? this.buttonLabel : null, loading: this.loading, onPnClick: e => this.emitSearch({ click: e.detail }) }))));
104
+ return (index.h(index.Host, { key: '8326d2235579e0cb7a92c864c373bfe10ac93f98', class: this.getClassNames() }, index.h("div", { key: '51875e4b1e11e77646b1f81f25d57472acb61c93', class: "input-container" }, index.h("input", { key: '04fb6a318e2ba6afa3e20b9a132f0b1d84775fc9', type: "search", value: this.value, id: this.searchid, name: this.name, "aria-label": this.label, placeholder: this.placeholder, disabled: this.disabled, required: this.required, autocomplete: this.autocomplete, list: this.list, ref: el => (this.searchElement = el), onKeyDown: e => this.emitSearch({ button: e }), onInput: e => this.setVal(e) }), index.h("div", { key: '0ff204aee2d455d3800d5b2fa8107b27db647587', class: "button-container" }, (this.button === 'none' || this.button === 'icon-inline') && (index.h("pn-button", { key: 'f820315a99ae3ec92ffd3c7e82098442722a6be0', small: true, class: "search", type: "button", appearance: "light", icon: search, iconOnly: true, noTab: this.button !== 'icon-inline', arialabel: this.translate('SEARCH'), onPnClick: e => this.emitSearch({ click: e.detail }) })), this.button !== 'icon-inline' && (index.h("pn-button", { key: '2cb9544a3339ed88bc966b2e01430bc49238d885', small: true, class: "clear", type: "button", appearance: "light", icon: close_small, iconOnly: true, arialabel: this.translate('CLEAR'), noTab: this.value && (!this.loading || this.button !== 'none'), onPnClick: () => this.clearInput() })), this.button === 'none' || (this.button === 'icon-inline' && index.h("pn-spinner", { key: '019aaa565d24b635a012ae8c4f6ceaebbc0b74c6' })))), this.button !== 'none' && this.button !== 'icon-inline' && (index.h("pn-button", { key: 'e0567545bdb6982aaf9dbf989cd5cbbae72c2054', label: this.buttonLabel, appearance: this.buttonLight ? 'light' : null, icon: search, iconOnly: true, arialabel: this.button === 'icon' ? this.buttonLabel : null, loading: this.loading, onPnClick: e => this.emitSearch({ click: e.detail }) }))));
105
105
  }
106
106
  };
107
107
  PnSearchField.style = PnSearchFieldStyle0;
@@ -32,7 +32,7 @@ const PnSegment = class {
32
32
  this.segmentHover.emit(mouse);
33
33
  }
34
34
  render() {
35
- return (index.h(index.Host, { key: 'c04c9f14d3b5436efb16cd391eb2bbc64be74b38', onMouseEnter: (event) => this.handleHover(event) }, index.h("input", { key: '8e755a9c00f5f058e6dcacfb14000fa6ea2916a8', class: "pn-segment", id: this.segmentid, name: this.name, checked: this.selected, type: "radio", value: this.value, disabled: this.disabled }), index.h("label", { key: 'dc13164594408f0cc3da2812fec29c280d09423b', htmlFor: this.segmentid, class: "pn-segment-label" }, this.icon && index.h("pn-icon", { key: 'cb77aa8a7b2595b6a99eb2ff5f58230c934d3bc0', icon: this.icon, color: "blue700" }), index.h("span", { key: 'a4368885dfc0b2d78d0c76df7e7dcaf2de479697', class: "pn-segment-text" }, this.label, index.h("slot", { key: '20e1385578b7f7e52b3a1cc637b84461aa1ef216' })))));
35
+ return (index.h(index.Host, { key: 'aefe64a8e024e1677b3816973b9a91dc1048cb56', onMouseEnter: (event) => this.handleHover(event) }, index.h("input", { key: '4d36074e76de1648020c31d30ad38d8a67ca3984', class: "pn-segment", id: this.segmentid, name: this.name, checked: this.selected, type: "radio", value: this.value, disabled: this.disabled }), index.h("label", { key: '1e6e54d9140bd27266d426ad4e9ecf68f505a7ee', htmlFor: this.segmentid, class: "pn-segment-label" }, this.icon && index.h("pn-icon", { key: '5733ce0a43d33337785771da3071c0c9043fbdde', icon: this.icon, color: "blue700" }), index.h("span", { key: '07759d481e84a914e8c0525d0b21fcc85356c3db', class: "pn-segment-text" }, this.label, index.h("slot", { key: 'de3a243b862d18555f1073165f1b8b817d86aa04' })))));
36
36
  }
37
37
  };
38
38
  PnSegment.style = PnSegmentStyle0;
@@ -128,7 +128,7 @@ const PnSegmentedControl = class {
128
128
  }
129
129
  /*---------------------------------------/SCROLL ARROW LOGIC-------------------------------------------*/
130
130
  render() {
131
- return (index.h(index.Host, { key: '58ff89aa0cbb4ee126d5b61f5061df51eef69df0' }, index.h("div", { key: '45e92ad1f5169facf2681d831cfee5c36a6696ca', class: "pn-segmented-control", ref: el => (this.segmentContainer = el) }, index.h("slot", { key: '80561deedd796d18ca9fde389fbcfb0f8d761403' }), index.h("div", { key: 'b4e95afa434f77eb399616732afc9d3434dc724e', class: "pn-sc-bg", "data-active": true, ref: el => (this.activeBg = el) }), index.h("div", { key: '6889b7c2306eac3c0028c53736ce1cd279fc113f', class: "pn-sc-bg", "data-hover": true, ref: el => (this.hoverBg = el) })), index.h("div", { key: '5afb0f9778f422b093f3137e1a1af7cbbaef6dcc', class: this.scrollArrowClasses(), hidden: !this.showScrollArrows }, index.h("button", { key: '12a9a28a37b94a2bcd6021874add132ef5d1e9fe', "aria-label": "Left", class: "pn-sc-arrow pn-sc-arrow-left", onClick: () => this.scroll(-120), tabindex: "-1" }, index.h("pn-icon", { key: '9013d57af659c0e90442c4773e9b1632cea91a94', icon: arrow_left.arrow_left })), index.h("button", { key: '6eb71575e552897cb49dda3011e61b6ce8016198', "aria-label": "Right", class: "pn-sc-arrow pn-sc-arrow-right", onClick: () => this.scroll(120), tabindex: "-1" }, index.h("pn-icon", { key: '8729b2e9885ec045bb3c847347dc34c44042a824', icon: arrow_right.arrow_right })))));
131
+ return (index.h(index.Host, { key: 'aea003dbcf14cb96c8c3e7820918e1363dcdfca8' }, index.h("div", { key: '42ecbc84057db97c23a7c25b9d687134a75cfcce', class: "pn-segmented-control", ref: el => (this.segmentContainer = el) }, index.h("slot", { key: '5f32c7aca5758f22d940c8940c2b7f23742f9631' }), index.h("div", { key: 'a9a1726d5de7a5732b154c6614e8156ad9ad458c', class: "pn-sc-bg", "data-active": true, ref: el => (this.activeBg = el) }), index.h("div", { key: 'd93f75665a4a1c8d8e1e9d65ea1a6aa7adc9b2e5', class: "pn-sc-bg", "data-hover": true, ref: el => (this.hoverBg = el) })), index.h("div", { key: '10d3355188c2e76da5cfa78a98917491002427df', class: this.scrollArrowClasses(), hidden: !this.showScrollArrows }, index.h("button", { key: 'cfea6659a62e3dba6a8b294e8cffd423f39a97f6', "aria-label": "Left", class: "pn-sc-arrow pn-sc-arrow-left", onClick: () => this.scroll(-120), tabindex: "-1" }, index.h("pn-icon", { key: 'e14140c5d410a33d2f2ea826d636a350463b4437', icon: arrow_left.arrow_left })), index.h("button", { key: 'c0bad9bdf701ae1cc1e31f39478cfafc87be8ec6', "aria-label": "Right", class: "pn-sc-arrow pn-sc-arrow-right", onClick: () => this.scroll(120), tabindex: "-1" }, index.h("pn-icon", { key: '3ac708d78f09c4b3ac6cc6b2ab3de79ebfbb9920', icon: arrow_right.arrow_right })))));
132
132
  }
133
133
  static get watchers() { return {
134
134
  "value": ["valueHandler"]
@@ -8,7 +8,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
8
8
 
9
9
  const index = require('./index-ec4ed1cc.js');
10
10
  const alert_exclamation_circle = require('./alert_exclamation_circle-7e28124d.js');
11
- const angle_down = require('./angle_down-0b63ebde.js');
11
+ const chevron_down = require('./chevron_down-83e72319.js');
12
12
  const helpers = require('./helpers-bff6a1c2.js');
13
13
 
14
14
  const pnSelectCss = "pn-select{display:inline-block}pn-select .pn-select-label{cursor:pointer;display:flex;justify-content:space-between;align-items:flex-end;font-weight:400;color:#2d2013;margin:0 0 0.25em 0;gap:0.5em;-webkit-tap-highlight-color:transparent;transition-property:color;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1)}@media (prefers-reduced-motion: reduce){pn-select .pn-select-label{transition-duration:0s;transition-delay:0s}}pn-select .pn-select-label>span{font-size:0.875em}pn-select .pn-select-input{position:relative}pn-select .pn-select-icon{pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:1.5em;height:1.5em;border-radius:50%;background-color:transparent}pn-select .pn-select-icon[data-default]{right:0.75em}pn-select .pn-select-icon[data-custom]{left:0.75em}pn-select .pn-select-icon[data-custom]~.pn-select-element{padding-left:3em}pn-select .pn-select-icon[data-error]{right:3em}pn-select .pn-select-icon[data-error]~.pn-select-element{padding-right:5em}pn-select .pn-select-icon>.pn-icon-svg{transition-property:transform;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1)}@media (prefers-reduced-motion: reduce){pn-select .pn-select-icon>.pn-icon-svg{transition-duration:0s;transition-delay:0s}}pn-select .pn-select-element{cursor:pointer;color:#2d2013;background-color:#ffffff;border:0.0625em solid #969087;border-radius:0.5em;padding:0.75em;font-family:inherit;font-size:1em;font-weight:500;line-height:1.5em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;outline:0.2rem solid transparent;outline-offset:0.2rem;transition-property:outline-color, background-color, border-color, color;transition-duration:0.2s;transition-timing-function:cubic-bezier(0.7, 0, 0.3, 1);width:100%;padding-right:3em;-webkit-appearance:none;-moz-appearance:none;appearance:none}pn-select .pn-select-element:-webkit-autofill,pn-select .pn-select-element:-webkit-autofill:hover,pn-select .pn-select-element:-webkit-autofill:focus,pn-select .pn-select-element:-webkit-autofill:active{-webkit-box-shadow:0 0 0 10em #e0f8ff inset;-webkit-text-fill-color:#2d2013}pn-select .pn-select-element:focus-visible{outline-color:#005d92;background-color:#ffffff;border-color:#005d92}@media (prefers-reduced-motion: reduce){pn-select .pn-select-element{transition-duration:0s;transition-delay:0s}}pn-select .pn-select-element::placeholder{color:#5e554a;font-weight:normal}pn-select .pn-select-element:hover{border-color:#005d92}pn-select .pn-select-element:disabled{color:#5e554a;background-color:#f3f2f2;border-color:#f3f2f2}pn-select .pn-select-element:open+pn-icon .pn-icon-svg{transform:rotate(180deg)}pn-select .pn-select-element:disabled{color:#5e554a;background-color:#f3f2f2;border-color:#f3f2f2}pn-select .pn-select-element[data-placeholder]{color:#5e554a;font-weight:normal}pn-select .pn-select-element:hover{color:#2d2013;background-color:#effbff}pn-select .pn-select-no-results{margin:0;padding:0.75em}pn-select .pn-select-helper{color:#5e554a;font-size:0.875em;font-weight:400;margin:0.25em 0 0 0;display:flex;flex-direction:column;gap:0.25em}pn-select .pn-select-helper[role=alert]{color:#a70707}pn-select .pn-select[data-error]>.pn-select-label{color:#a70707}pn-select .pn-select[data-error]>.pn-select-input>.pn-select-element{border-color:#a70707}pn-select .pn-select[data-error]>.pn-select-input>.pn-select-element:hover{border-color:#500715}pn-select .pn-select[data-error]>.pn-select-input>.pn-select-element:focus-visible{background-color:#ffffff;border-color:#a70707;outline-color:#a70707}pn-select .pn-select[data-error]>.pn-select-input>.pn-select-element:hover{background-color:#fdefee}";
@@ -47,7 +47,7 @@ const PnSelect = class {
47
47
  return !!this.helpertext || !!this.error;
48
48
  }
49
49
  render() {
50
- return (index.h(index.Host, { key: '1e9048eda53ecaa901689f0164cba2a389f543df' }, index.h("div", { key: 'e24db0f74c4d3657bb1ee6903160fcdaf2910da4', class: "pn-select", "data-error": this.hasError() }, this.label && (index.h("label", { key: 'c4e6c6c613df6392b0a67123d46f9474ae0e305f', htmlFor: this.selectId, class: "pn-select-label" }, index.h("span", { key: '58965840227667a57d624538702990125c5f7dca' }, this.label))), index.h("div", { key: 'd48cef7cd8ceb7cc7fafce1da20574d933d9413f', class: "pn-select-input" }, this.icon && index.h("pn-icon", { key: 'f4021fd781fb67e2df267606b165607369fd0371', class: "pn-select-icon", icon: this.icon, "data-custom": true, "aria-hidden": "true" }), this.hasError() && (index.h("pn-icon", { key: 'e7d35d9f8191aec7c0ced7442b2419c9dc88fb44', class: "pn-select-icon", icon: alert_exclamation_circle.alert_exclamation_circle, color: "warning", "data-error": true, "aria-hidden": "true" })), index.h("select", { key: '1b2bd070a7d12e7504bfddfb389d1cb3e9a9053f', id: this.selectId, class: "pn-select-element", name: this.name, form: this.form, autocomplete: this.autocomplete, "aria-describedby": this.hasMessage() && this.idHelpertext, "aria-invalid": this.hasError().toString(), disabled: this.disabled, "data-placeholder": this.select?.value === '', ref: el => (this.select = el) }, index.h("slot", { key: 'b9d68ad6844d3c0444f4a4c0f53e7f4c98ce41f7' })), index.h("pn-icon", { key: '66bc82e862821f70b7f62559c00a9937301b3715', class: "pn-select-icon", icon: angle_down.angle_down, color: "blue700", "data-default": true, "aria-hidden": "true" })), this.hasMessage() && (index.h("p", { key: '100c25db7cb319a1ae7389bc862ffbcdb6b8f6d3', id: this.idHelpertext, class: "pn-select-helper", role: !!this.error ? 'alert' : null }, index.h("span", { key: '73a0373c059ee9d0ec9abd4bcbf99a48409d8112' }, this.error || this.helpertext))))));
50
+ return (index.h(index.Host, { key: '557d5e0407e14089b58198108c6ac44f90db21ab' }, index.h("div", { key: 'd322762f5c51b96cb35a9e023b4082812113a273', class: "pn-select", "data-error": this.hasError() }, this.label && (index.h("label", { key: '2dcf2247ba943591055418cdf38735be3e8386f8', htmlFor: this.selectId, class: "pn-select-label" }, index.h("span", { key: '29401388d7065dc6ade239f0307c5df9cc61629b' }, this.label))), index.h("div", { key: '725851becae25fd36ebaeed7262b732c7a2cd05e', class: "pn-select-input" }, this.icon && index.h("pn-icon", { key: '4c40b12865b8019bdeca9dcae62bf4767f3cdb90', class: "pn-select-icon", icon: this.icon, "data-custom": true, "aria-hidden": "true" }), this.hasError() && (index.h("pn-icon", { key: '8b0d2445db71a83aafbcf7ad34a08aea692cab5c', class: "pn-select-icon", icon: alert_exclamation_circle.alert_exclamation_circle, color: "warning", "data-error": true, "aria-hidden": "true" })), index.h("select", { key: '8d1555e92ceaffa72a7c12e1911c683a60a4fe42', id: this.selectId, class: "pn-select-element", name: this.name, form: this.form, autocomplete: this.autocomplete, "aria-describedby": this.hasMessage() && this.idHelpertext, "aria-invalid": this.hasError().toString(), disabled: this.disabled, "data-placeholder": this.select?.value === '', ref: el => (this.select = el) }, index.h("slot", { key: 'e0ca451783c2e2736c06b13097331058fec82118' })), index.h("pn-icon", { key: '37d957e3319d281848cfa35b68cc5fa6cb0789cc', class: "pn-select-icon", icon: chevron_down.chevron_down, color: "blue700", "data-default": true, "aria-hidden": "true" })), this.hasMessage() && (index.h("p", { key: 'f98839737c466c368f1f5e4db3aaf77ec45ab236', id: this.idHelpertext, class: "pn-select-helper", role: !!this.error ? 'alert' : null }, index.h("span", { key: '8622d967db51059efb8a96e4bc661ede16e36730' }, this.error || this.helpertext))))));
51
51
  }
52
52
  };
53
53
  PnSelect.style = PnSelectStyle0;
@@ -1 +1 @@
1
- {"file":"pn-select.entry.cjs.js","mappings":";;;;;;;;;;;;;AAAA,MAAM,WAAW,GAAG,ynHAAynH,CAAC;AAC9oH,uBAAe,WAAW;;MCiBb,QAAQ;;;;;wBAeQ,IAAI,CAAC,EAAE;;;;;wBAcL,KAAK;wBAKL,KAAK;uBAKN,KAAK;;;IAtCjC,EAAE,GAAW,aAAaA,cAAM,EAAE,EAAE,CAAC;IACrC,YAAY,GAAW,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC;IAEzC,MAAM,CAAoB;IAE1B,EAAE,CAAmB;;IAwCrB,gBAAgB;QACd,IAAI,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC,MAAMC,iBAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAEpE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KACvE;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;KACrC;IAED,UAAU;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;KAC1C;IAED,MAAM;QACJ,QACEC,QAACC,UAAI,uDACHD,kEAAK,KAAK,EAAC,WAAW,gBAAa,IAAI,CAAC,QAAQ,EAAE,IAC/C,IAAI,CAAC,KAAK,KACTA,oEAAO,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAC,iBAAiB,IACpDA,qEAAO,IAAI,CAAC,KAAK,CAAQ,CACnB,CACT,EACDA,kEAAK,KAAK,EAAC,iBAAiB,IACzB,IAAI,CAAC,IAAI,IAAIA,sEAAS,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,sCAA0B,MAAM,GAAG,EAE/F,IAAI,CAAC,QAAQ,EAAE,KACdA,sEACE,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAEE,iDAAwB,EAC9B,KAAK,EAAC,SAAS,qCAEH,MAAM,GAClB,CACH,EAEDF,qEACE,EAAE,EAAE,IAAI,CAAC,QAAQ,EACjB,KAAK,EAAC,mBAAmB,EACzB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,YAAY,EAAE,IAAI,CAAC,YAAY,sBACb,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,YAAY,kBAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ,sBACL,IAAI,CAAC,MAAM,EAAE,KAAK,KAAK,EAAE,EAC3C,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,IAE7BA,oEAAQ,CACD,EAETA,sEAAS,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAEG,qBAAU,EAAE,KAAK,EAAC,SAAS,uCAA0B,MAAM,GAAG,CAChG,EAEL,IAAI,CAAC,UAAU,EAAE,KAChBH,gEAAG,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAC,kBAAkB,EAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,IACpFA,qEAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAQ,CAC1C,CACL,CACG,CACD,EACP;KACH;;;;;;","names":["uuidv4","forceUpdate","h","Host","alert_exclamation_circle","angle_down"],"sources":["src/components/input/pn-select/pn-select.scss?tag=pn-select","src/components/input/pn-select/pn-select.tsx"],"sourcesContent":["@use 'src/globals/main';\n\n$border: 0.0625em;\n$radius: 0.5em;\n\n$timing: 0.3s;\n\npn-select {\n display: inline-block;\n}\n\npn-select .pn-select {\n &-label {\n @include main.pn-input-label;\n }\n\n &-input {\n position: relative;\n }\n\n &-icon {\n pointer-events: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 1.5em;\n height: 1.5em;\n border-radius: 50%;\n background-color: transparent;\n &[data-default] {\n right: 0.75em;\n }\n &[data-custom] {\n left: 0.75em;\n ~ .pn-select-element {\n padding-left: 3em;\n }\n }\n &[data-error] {\n right: 3em;\n ~ .pn-select-element {\n padding-right: 5em;\n }\n }\n\n > .pn-icon-svg {\n @include main.pn-transition('transform');\n }\n }\n\n &-element {\n cursor: pointer;\n\n @include main.pn-input-field;\n width: 100%;\n padding-right: 3em;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n\n &:open + pn-icon .pn-icon-svg {\n transform: rotate(180deg);\n }\n\n &:disabled {\n @include main.pn-disabled;\n }\n\n &[data-placeholder] {\n @include main.pn-placeholder;\n }\n\n &:hover {\n color: main.$input-color;\n background-color: main.$input-background-hover;\n }\n }\n\n &-no-results {\n margin: 0;\n padding: 0.75em;\n }\n\n &-helper {\n @include main.pn-input-helpertext;\n &[role='alert'] {\n color: main.$helpertext-color-error;\n }\n }\n\n &[data-error] {\n > .pn-select-label {\n color: main.$warning;\n }\n > .pn-select-input > .pn-select-element {\n @include main.pn-input-field-error;\n &:hover {\n background-color: main.$input-background-error-hover;\n }\n }\n }\n}\n","import { Component, h, Host, Element, Prop, forceUpdate } from '@stencil/core';\nimport { alert_exclamation_circle, angle_down } from 'pn-design-assets/pn-assets/icons.js';\nimport { uuidv4 } from '@/index';\n\n/**\n * The `pn-select` uses a native `select` element under the hood.\n * Use the slot to include `option` elements.\n *\n * Just like a regular `select`, you can use the `selected` prop on the nested option elements to preselect an option.\n *\n * @slot - This is the default slot, where the `option` elements go.\n *\n * @nativeChange Use the `change` event to listen to changes on the select element.\n */\n@Component({\n tag: 'pn-select',\n styleUrl: 'pn-select.scss',\n})\nexport class PnSelect {\n id: string = `pn-select-${uuidv4()}`;\n idHelpertext: string = `${this.id}-text`;\n\n select: HTMLSelectElement;\n\n mo: MutationObserver;\n\n @Element() hostElement: HTMLElement;\n\n /** Label placed above the select. */\n @Prop() label!: string;\n /** Display a helper text underneath the select. */\n @Prop() helpertext?: string;\n /** Select HTML id */\n @Prop() selectId: string = this.id;\n /** Display an icon to the left of the select input. */\n @Prop() icon?: string;\n\n /** HTML select name. @category HTML */\n @Prop() name: string;\n /** HTML form name. @category HTML */\n @Prop() form: string;\n /** HTML autocomplete. @category HTML */\n @Prop() autocomplete: string;\n /**\n * Set the select as required.\n * @category Validation\n */\n @Prop() required?: boolean = false;\n /**\n * Disable the select.\n * @category Validation\n */\n @Prop() disabled?: boolean = false;\n /**\n * Trigger the invalid state.\n * @category Validation\n */\n @Prop() invalid?: boolean = false;\n /**\n * Display an error message and trigger the invalid state.\n * @category Validation\n */\n @Prop() error?: string;\n\n componentDidLoad() {\n if (this.mo) this.mo.disconnect();\n\n this.mo = new MutationObserver(() => forceUpdate(this.hostElement));\n\n this.mo.observe(this.hostElement, { childList: true, subtree: true });\n }\n\n hasError() {\n return this.invalid || !!this.error;\n }\n\n hasMessage() {\n return !!this.helpertext || !!this.error;\n }\n\n render() {\n return (\n <Host>\n <div class=\"pn-select\" data-error={this.hasError()}>\n {this.label && (\n <label htmlFor={this.selectId} class=\"pn-select-label\">\n <span>{this.label}</span>\n </label>\n )}\n <div class=\"pn-select-input\">\n {this.icon && <pn-icon class=\"pn-select-icon\" icon={this.icon} data-custom aria-hidden=\"true\" />}\n\n {this.hasError() && (\n <pn-icon\n class=\"pn-select-icon\"\n icon={alert_exclamation_circle}\n color=\"warning\"\n data-error\n aria-hidden=\"true\"\n />\n )}\n\n <select\n id={this.selectId}\n class=\"pn-select-element\"\n name={this.name}\n form={this.form}\n autocomplete={this.autocomplete}\n aria-describedby={this.hasMessage() && this.idHelpertext}\n aria-invalid={this.hasError().toString()}\n disabled={this.disabled}\n data-placeholder={this.select?.value === ''}\n ref={el => (this.select = el)}\n >\n <slot />\n </select>\n\n <pn-icon class=\"pn-select-icon\" icon={angle_down} color=\"blue700\" data-default aria-hidden=\"true\" />\n </div>\n\n {this.hasMessage() && (\n <p id={this.idHelpertext} class=\"pn-select-helper\" role={!!this.error ? 'alert' : null}>\n <span>{this.error || this.helpertext}</span>\n </p>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pn-select.entry.cjs.js","mappings":";;;;;;;;;;;;;AAAA,MAAM,WAAW,GAAG,ynHAAynH,CAAC;AAC9oH,uBAAe,WAAW;;MCiBb,QAAQ;;;;;wBAeQ,IAAI,CAAC,EAAE;;;;;wBAcL,KAAK;wBAKL,KAAK;uBAKN,KAAK;;;IAtCjC,EAAE,GAAW,aAAaA,cAAM,EAAE,EAAE,CAAC;IACrC,YAAY,GAAW,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC;IAEzC,MAAM,CAAoB;IAE1B,EAAE,CAAmB;;IAwCrB,gBAAgB;QACd,IAAI,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC,MAAMC,iBAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAEpE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KACvE;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;KACrC;IAED,UAAU;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;KAC1C;IAED,MAAM;QACJ,QACEC,QAACC,UAAI,uDACHD,kEAAK,KAAK,EAAC,WAAW,gBAAa,IAAI,CAAC,QAAQ,EAAE,IAC/C,IAAI,CAAC,KAAK,KACTA,oEAAO,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAC,iBAAiB,IACpDA,qEAAO,IAAI,CAAC,KAAK,CAAQ,CACnB,CACT,EACDA,kEAAK,KAAK,EAAC,iBAAiB,IACzB,IAAI,CAAC,IAAI,IAAIA,sEAAS,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,sCAA0B,MAAM,GAAG,EAE/F,IAAI,CAAC,QAAQ,EAAE,KACdA,sEACE,KAAK,EAAC,gBAAgB,EACtB,IAAI,EAAEE,iDAAwB,EAC9B,KAAK,EAAC,SAAS,qCAEH,MAAM,GAClB,CACH,EAEDF,qEACE,EAAE,EAAE,IAAI,CAAC,QAAQ,EACjB,KAAK,EAAC,mBAAmB,EACzB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,YAAY,EAAE,IAAI,CAAC,YAAY,sBACb,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,YAAY,kBAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ,sBACL,IAAI,CAAC,MAAM,EAAE,KAAK,KAAK,EAAE,EAC3C,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,IAE7BA,oEAAQ,CACD,EAETA,sEAAS,KAAK,EAAC,gBAAgB,EAAC,IAAI,EAAEG,yBAAY,EAAE,KAAK,EAAC,SAAS,uCAA0B,MAAM,GAAG,CAClG,EAEL,IAAI,CAAC,UAAU,EAAE,KAChBH,gEAAG,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAC,kBAAkB,EAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,GAAG,IAAI,IACpFA,qEAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,CAAQ,CAC1C,CACL,CACG,CACD,EACP;KACH;;;;;;","names":["uuidv4","forceUpdate","h","Host","alert_exclamation_circle","chevron_down"],"sources":["src/components/input/pn-select/pn-select.scss?tag=pn-select","src/components/input/pn-select/pn-select.tsx"],"sourcesContent":["@use 'src/globals/main';\n\n$border: 0.0625em;\n$radius: 0.5em;\n\n$timing: 0.3s;\n\npn-select {\n display: inline-block;\n}\n\npn-select .pn-select {\n &-label {\n @include main.pn-input-label;\n }\n\n &-input {\n position: relative;\n }\n\n &-icon {\n pointer-events: none;\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 1.5em;\n height: 1.5em;\n border-radius: 50%;\n background-color: transparent;\n &[data-default] {\n right: 0.75em;\n }\n &[data-custom] {\n left: 0.75em;\n ~ .pn-select-element {\n padding-left: 3em;\n }\n }\n &[data-error] {\n right: 3em;\n ~ .pn-select-element {\n padding-right: 5em;\n }\n }\n\n > .pn-icon-svg {\n @include main.pn-transition('transform');\n }\n }\n\n &-element {\n cursor: pointer;\n\n @include main.pn-input-field;\n width: 100%;\n padding-right: 3em;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n\n &:open + pn-icon .pn-icon-svg {\n transform: rotate(180deg);\n }\n\n &:disabled {\n @include main.pn-disabled;\n }\n\n &[data-placeholder] {\n @include main.pn-placeholder;\n }\n\n &:hover {\n color: main.$input-color;\n background-color: main.$input-background-hover;\n }\n }\n\n &-no-results {\n margin: 0;\n padding: 0.75em;\n }\n\n &-helper {\n @include main.pn-input-helpertext;\n &[role='alert'] {\n color: main.$helpertext-color-error;\n }\n }\n\n &[data-error] {\n > .pn-select-label {\n color: main.$warning;\n }\n > .pn-select-input > .pn-select-element {\n @include main.pn-input-field-error;\n &:hover {\n background-color: main.$input-background-error-hover;\n }\n }\n }\n}\n","import { Component, h, Host, Element, Prop, forceUpdate } from '@stencil/core';\nimport { alert_exclamation_circle, chevron_down } from 'pn-design-assets/pn-assets/icons.js';\nimport { uuidv4 } from '@/index';\n\n/**\n * The `pn-select` uses a native `select` element under the hood.\n * Use the slot to include `option` elements.\n *\n * Just like a regular `select`, you can use the `selected` prop on the nested option elements to preselect an option.\n *\n * @slot - This is the default slot, where the `option` elements go.\n *\n * @nativeChange Use the `change` event to listen to changes on the select element.\n */\n@Component({\n tag: 'pn-select',\n styleUrl: 'pn-select.scss',\n})\nexport class PnSelect {\n id: string = `pn-select-${uuidv4()}`;\n idHelpertext: string = `${this.id}-text`;\n\n select: HTMLSelectElement;\n\n mo: MutationObserver;\n\n @Element() hostElement: HTMLElement;\n\n /** Label placed above the select. */\n @Prop() label!: string;\n /** Display a helper text underneath the select. */\n @Prop() helpertext?: string;\n /** Select HTML id */\n @Prop() selectId: string = this.id;\n /** Display an icon to the left of the select input. */\n @Prop() icon?: string;\n\n /** HTML select name. @category HTML */\n @Prop() name: string;\n /** HTML form name. @category HTML */\n @Prop() form: string;\n /** HTML autocomplete. @category HTML */\n @Prop() autocomplete: string;\n /**\n * Set the select as required.\n * @category Validation\n */\n @Prop() required?: boolean = false;\n /**\n * Disable the select.\n * @category Validation\n */\n @Prop() disabled?: boolean = false;\n /**\n * Trigger the invalid state.\n * @category Validation\n */\n @Prop() invalid?: boolean = false;\n /**\n * Display an error message and trigger the invalid state.\n * @category Validation\n */\n @Prop() error?: string;\n\n componentDidLoad() {\n if (this.mo) this.mo.disconnect();\n\n this.mo = new MutationObserver(() => forceUpdate(this.hostElement));\n\n this.mo.observe(this.hostElement, { childList: true, subtree: true });\n }\n\n hasError() {\n return this.invalid || !!this.error;\n }\n\n hasMessage() {\n return !!this.helpertext || !!this.error;\n }\n\n render() {\n return (\n <Host>\n <div class=\"pn-select\" data-error={this.hasError()}>\n {this.label && (\n <label htmlFor={this.selectId} class=\"pn-select-label\">\n <span>{this.label}</span>\n </label>\n )}\n <div class=\"pn-select-input\">\n {this.icon && <pn-icon class=\"pn-select-icon\" icon={this.icon} data-custom aria-hidden=\"true\" />}\n\n {this.hasError() && (\n <pn-icon\n class=\"pn-select-icon\"\n icon={alert_exclamation_circle}\n color=\"warning\"\n data-error\n aria-hidden=\"true\"\n />\n )}\n\n <select\n id={this.selectId}\n class=\"pn-select-element\"\n name={this.name}\n form={this.form}\n autocomplete={this.autocomplete}\n aria-describedby={this.hasMessage() && this.idHelpertext}\n aria-invalid={this.hasError().toString()}\n disabled={this.disabled}\n data-placeholder={this.select?.value === ''}\n ref={el => (this.select = el)}\n >\n <slot />\n </select>\n\n <pn-icon class=\"pn-select-icon\" icon={chevron_down} color=\"blue700\" data-default aria-hidden=\"true\" />\n </div>\n\n {this.hasMessage() && (\n <p id={this.idHelpertext} class=\"pn-select-helper\" role={!!this.error ? 'alert' : null}>\n <span>{this.error || this.helpertext}</span>\n </p>\n )}\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -110,7 +110,7 @@ const PnTab = class {
110
110
  }
111
111
  render() {
112
112
  const Tag = this.tag;
113
- return (index.h(index.Host, { key: 'ec9df780cc276853bfc6bcbb9af1f6d4f6e8d83e' }, index.h(Tag, { key: 'aa1b089953f69110583eef6c689973bd118d2fd6', id: this.tabid, class: "pn-tab", ...this.renderProperties(), onClick: (e) => this.handleClick(e), onMouseEnter: (e) => this.triggerEnter(e), onFocus: (e) => this.triggerEnter(e), onMouseLeave: (e) => this.triggerLeave(e), onBlur: (e) => this.triggerLeave(e), onKeyDown: (e) => this.arrowKeyNav(e) }, !!this.icon && index.h("pn-icon", { key: '583bf623f788662aaa3f612552b52ecfc0edae51', icon: this.icon }), index.h("slot", { key: 'a5f216eb6ac2ee8fcb7f90daec3f69cc597f9d7e' }), index.h("span", { key: '26c116fe67ce645c31eed9e37e5529da6fbc97ea' }, this.label))));
113
+ return (index.h(index.Host, { key: '50c638d4e12ae9011d8efa3606499e906c9cb8c3' }, index.h(Tag, { key: '79baf88094716a8499801d0becaeb3a5cb3698d4', id: this.tabid, class: "pn-tab", ...this.renderProperties(), onClick: (e) => this.handleClick(e), onMouseEnter: (e) => this.triggerEnter(e), onFocus: (e) => this.triggerEnter(e), onMouseLeave: (e) => this.triggerLeave(e), onBlur: (e) => this.triggerLeave(e), onKeyDown: (e) => this.arrowKeyNav(e) }, !!this.icon && index.h("pn-icon", { key: '4fd00fa65a2921a5c8197085fc7c2528773b084b', icon: this.icon }), index.h("slot", { key: '5c72c7d4813f0644a5777b0f4d2575409fcf8c36' }), index.h("span", { key: 'b6ee7be6b34ac3dc234ec2bc07f948ba612992e4' }, this.label))));
114
114
  }
115
115
  };
116
116
  PnTab.style = PnTabStyle0;
@@ -7,7 +7,7 @@
7
7
  Object.defineProperty(exports, '__esModule', { value: true });
8
8
 
9
9
  const index = require('./index-ec4ed1cc.js');
10
- const angle_right = require('./angle_right-c8c55b43.js');
10
+ const chevron_right = require('./chevron_right-aeb6aef3.js');
11
11
  const helpers = require('./helpers-bff6a1c2.js');
12
12
 
13
13
  const translations = {
@@ -158,7 +158,7 @@ const PnTablist = class {
158
158
  return translations?.[prop]?.[this.language || helpers.en];
159
159
  }
160
160
  render() {
161
- return (index.h(index.Host, { key: '1de634d581308a90d175beed6e80d87f9503ba46' }, index.h("nav", { key: 'c372ea946ce171e4a96b1298f14216c6fe95218a', class: "pn-tablist", role: this.isMenu ? null : 'tablist', "aria-label": this.label, "data-stacked": this.stackedicons, "data-small": !this.isMenu && this.small, "data-large": this.isMenu, "data-scroll": this.showScrollArrows, ref: el => (this.tabListEl = el) }, index.h("slot", { key: '1040c9e70f6b4a2542913e0695b775dd07c3d1b9' }), index.h("div", { key: '94e99bc1079bc23f38a629c966af8e4de9e8689d', class: "pn-tablist-line" }, index.h("div", { key: '713ab47c16b5bc13035f2e28f2333e9dfdc25177', ref: el => (this.lineActive = el), class: "pn-tablist-line-item pn-tablist-line-active" }), index.h("div", { key: 'aa6a7585dffad93a48900e6a5fa0f74a40ec18ad', ref: el => (this.lineHovered = el), class: "pn-tablist-line-item pn-tablist-line-hovered" }))), index.h("div", { key: 'e5e45bcd0d68a6bf11d16865f4f2f0ceead66ed5', class: "pn-tablist-scroll" }, index.h("pn-button", { key: 'a37736842598d230cc392088f5d6ea4ebd82cc4c', class: "pn-tablist-arrow", "data-show": this.arrowLeft, onClick: () => this.scroll(), noTab: true, appearance: "light", variant: "outlined", icon: angle_right.angle_left, iconOnly: true, arialabel: this.translate('LEFT'), small: true }), index.h("pn-button", { key: 'bb5524b809761dc965b5d6c68c57fc2b3c605593', class: "pn-tablist-arrow", "data-show": this.arrowRight, onClick: () => this.scroll({ right: true }), noTab: true, appearance: "light", variant: "outlined", icon: angle_right.angle_right, iconOnly: true, arialabel: this.translate('RIGHT'), small: true }))));
161
+ return (index.h(index.Host, { key: '6018119e45b053e16de64bae803b3baaaeafa41d' }, index.h("nav", { key: '747235504d6129e765cb87de674b7ffeac293b20', class: "pn-tablist", role: this.isMenu ? null : 'tablist', "aria-label": this.label, "data-stacked": this.stackedicons, "data-small": !this.isMenu && this.small, "data-large": this.isMenu, "data-scroll": this.showScrollArrows, ref: el => (this.tabListEl = el) }, index.h("slot", { key: 'a4e2d984d78fcf9d31d740865fdeb3df588dc772' }), index.h("div", { key: '29ee0561e19d48d4f974d3844772ca72ad6577af', class: "pn-tablist-line" }, index.h("div", { key: 'e6a2b93e8e1c696356ddbaff76ecaa3e7bfd3924', ref: el => (this.lineActive = el), class: "pn-tablist-line-item pn-tablist-line-active" }), index.h("div", { key: '2d884eeeaff74af37abbb46b6e6d6475aeafee0c', ref: el => (this.lineHovered = el), class: "pn-tablist-line-item pn-tablist-line-hovered" }))), index.h("div", { key: '4674ccbc7aea1a08721b11b121c2a00c56af50a6', class: "pn-tablist-scroll" }, index.h("pn-button", { key: '8da1137191ccf9f3e76aa05879b76634323553f8', class: "pn-tablist-arrow", "data-show": this.arrowLeft, onClick: () => this.scroll(), noTab: true, appearance: "light", variant: "outlined", icon: chevron_right.chevron_left, iconOnly: true, arialabel: this.translate('LEFT'), small: true }), index.h("pn-button", { key: '99ce43b13ad34b0326f58e92354265b8bca047e1', class: "pn-tablist-arrow", "data-show": this.arrowRight, onClick: () => this.scroll({ right: true }), noTab: true, appearance: "light", variant: "outlined", icon: chevron_right.chevron_right, iconOnly: true, arialabel: this.translate('RIGHT'), small: true }))));
162
162
  }
163
163
  static get watchers() { return {
164
164
  "value": ["setValue"],
@@ -1 +1 @@
1
- {"file":"pn-tablist.entry.cjs.js","mappings":"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","names":["awaitTopbar","forceUpdate","en","h","Host","angle_left","angle_right"],"sources":["src/components/navigation/pn-tablist/translations.ts","src/components/navigation/pn-tablist/pn-tablist.scss?tag=pn-tablist","src/components/navigation/pn-tablist/pn-tablist.tsx"],"sourcesContent":["export default {\n LEFT: {\n sv: 'Bläddra åt vänster',\n en: 'Scroll to the left',\n da: 'Rul til venstre',\n fi: 'Vieritä vasemmalle',\n no: 'Rull til venstre',\n },\n RIGHT: {\n sv: 'Bläddra åt höger',\n en: 'Scroll to the right',\n da: 'Rul til højre',\n fi: 'Vieritä oikealle',\n no: 'Rull til høyre',\n },\n};\n","@use 'src/globals/main';\n\npn-tablist {\n width: 100%;\n min-width: 0;\n position: relative;\n border-bottom: 0.0625em solid main.$gray200;\n display: block;\n\n .pn-tablist,\n ol,\n ul {\n display: flex;\n width: 100%;\n flex-direction: row;\n gap: 1em;\n position: relative;\n list-style: none;\n padding: 0;\n margin: 0;\n &[data-stacked] .pn-tab {\n margin: 0.5em 0.25em 0.75em;\n gap: 0.25em;\n flex-direction: column;\n }\n &[data-small] .pn-tab {\n margin: 0.25em 0.25em 0.75em;\n > *:not(pn-icon) {\n font-size: 0.875em;\n }\n }\n &[data-large] .pn-tab > *:not(pn-icon) {\n font-size: 1.25em;\n }\n &[data-scroll] {\n overflow-y: hidden;\n overflow-x: auto;\n scroll-snap-type: x mandatory;\n }\n &::-webkit-scrollbar {\n display: none;\n }\n }\n}\n\npn-tablist .pn-tablist {\n &-line {\n height: 0.25em;\n position: absolute;\n bottom: 0;\n\n &-item {\n position: absolute;\n width: 100%;\n height: inherit;\n border-radius: 0.25em 0.25em 0 0;\n\n transform-origin: left center;\n opacity: 0;\n @include main.pn-transition('transform, opacity, width', main.$timing-layout);\n }\n\n &-active {\n z-index: 1;\n background-color: main.$blue700;\n width: var(--pn-active-width);\n transform: translateX(var(--pn-active-offset));\n opacity: var(--pn-active-opacity);\n }\n\n &-hovered {\n background-color: main.$blue400;\n width: var(--pn-hover-width);\n transform: translateX(var(--pn-hover-offset));\n opacity: var(--pn-hover-opacity);\n }\n }\n\n &-scroll {\n position: absolute;\n top: 50%;\n left: 0;\n right: 0;\n pointer-events: none;\n transform: translateY(-50%);\n display: flex;\n justify-content: space-between;\n align-items: center;\n z-index: 1;\n height: 100%;\n }\n\n &-arrow {\n pointer-events: all;\n\n transform: scaleY(0);\n opacity: 0;\n visibility: hidden;\n\n @include main.pn-transition('transform, opacity, visibility');\n\n &[data-show] {\n opacity: 1;\n visibility: visible;\n transform: scaleY(1);\n }\n }\n}\n","import {\n Component,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n State,\n h,\n Host,\n Watch,\n forceUpdate,\n} from '@stencil/core';\nimport { angle_left, angle_right } from 'pn-design-assets/pn-assets/icons.js';\nimport translations from './translations';\nimport { awaitTopbar, en } from '@/globals/helpers';\nimport type { PnLanguages } from '@/globals/types';\n\n/**\n * @slot menu - Can only be used inside of a `pn-header`. Allows the `href` attribute on the `pn-tab` when active.\n */\n@Component({\n tag: 'pn-tablist',\n styleUrl: 'pn-tablist.scss',\n})\nexport class PnTablist {\n private mo: MutationObserver;\n\n private isMenu: boolean = false;\n private isTabHovered: boolean = false;\n\n private tabListEl: HTMLElement;\n private lineActive: HTMLDivElement;\n private lineHovered: HTMLDivElement;\n private tabElement: HTMLPnTabElement;\n\n @Element() hostElement: HTMLElement;\n\n /** Display the scrolling arrows */\n @State() private showScrollArrows: boolean = false;\n /** Display the scroll arrow to the left */\n @State() private arrowLeft: boolean = false;\n /** Display the scroll arrow to the right */\n @State() private arrowRight: boolean = false;\n\n /** Give the tablist a name for screenreaders */\n @Prop() label!: string;\n /** The value of the tab that is currently active, each `<pn-tab value=\"example-value\">` also expects a unique value */\n @Prop({ reflect: true, mutable: true }) value!: string;\n /** Make the tablist smaller */\n @Prop() small?: boolean;\n /** Icons are stacked vertically instead of the default rows */\n @Prop() stackedicons: boolean = false;\n /** Manually set the language. */\n @Prop() language?: PnLanguages = null;\n\n /**\n * This will emit when a tab is changed. The detail property of the event will contain the value of the selected tab.\n * This is the event and value you listen to when you toggle the visibility among your tabpanels.\n **/\n @Event() tabchange: EventEmitter<string>;\n\n @Watch('value')\n setValue() {\n const tabs = Array.from(this.hostElement.querySelectorAll('pn-tab'));\n\n tabs.forEach(tab => {\n tab.activeTab = this.value;\n });\n }\n\n @Watch('showScrollArrows')\n scrollHandler() {\n if (this.showScrollArrows) {\n this.tabListEl.addEventListener('scroll', this.scrollIndicators.bind(this));\n } else {\n this.tabListEl.removeEventListener('scroll', this.scrollIndicators);\n }\n }\n\n @Listen('setActiveTab')\n setActiveTabHandler({ detail }) {\n this.tabElement = detail.el;\n requestAnimationFrame(() => this.activateTab(detail.el));\n if (this.value === detail.val) return;\n this.value = detail.val;\n this.tabchange.emit(this.value);\n this.tabElement.querySelector(this.isMenu ? 'a' : 'button').focus();\n }\n\n @Listen('resize', { target: 'window' })\n rerender() {\n requestAnimationFrame(() => {\n this.scrollIndicators();\n this.isTabHovered = false;\n });\n }\n\n @Listen('tabEnter')\n handleEnter(e: { target: HTMLPnTabElement }) {\n this.isTabHovered = true;\n this.styleLines(e.target);\n }\n\n @Listen('tabLeave')\n handleLeave() {\n this.isTabHovered = false;\n setTimeout(() => {\n if (!this.isTabHovered) this.lineHovered.style.setProperty('--pn-hover-opacity', '0');\n }, 500);\n }\n\n async componentWillLoad() {\n this.isMenu = this.hostElement.slot === 'menu';\n\n if (this.language === null) await awaitTopbar(this.hostElement);\n }\n\n componentDidLoad() {\n if (this.mo) this.mo.disconnect();\n this.mo = new MutationObserver(() => {\n forceUpdate(this.hostElement);\n this.rerender();\n });\n\n this.mo.observe(this.hostElement, { childList: true, subtree: true });\n }\n\n componentDidRender() {\n this.rerender();\n this.setValue();\n }\n\n private getRect(element: HTMLElement | HTMLPnTablistElement): DOMRect {\n return element.getBoundingClientRect();\n }\n\n private activateTab(element: HTMLPnTabElement) {\n this.styleLines(element, true);\n }\n\n private styleLines(element: HTMLElement, active: boolean = false) {\n const tabListCoords = this.getRect(this.tabListEl);\n const scrollOffset = this.tabListEl.scrollLeft;\n\n const line = this.getRect(element);\n\n const width = line.width;\n const offset = line.left + scrollOffset - tabListCoords.left;\n\n const cssVar = active ? 'active' : 'hover';\n const prop = active ? 'lineActive' : 'lineHovered';\n\n this[prop].style.setProperty(`--pn-${cssVar}-width`, `${width}px`);\n this[prop].style.setProperty(`--pn-${cssVar}-offset`, `${offset}px`);\n this[prop].style.setProperty(`--pn-${cssVar}-opacity`, '1');\n }\n\n private scrollIndicators() {\n const { scrollWidth, scrollLeft } = this.tabListEl;\n\n const { clientWidth } = this.hostElement;\n\n this.showScrollArrows = scrollWidth > clientWidth;\n\n this.arrowLeft = this.showScrollArrows && scrollLeft > 0;\n this.arrowRight = this.showScrollArrows && clientWidth + 16 + scrollLeft < scrollWidth;\n }\n\n private scroll({ right = false }: { right?: boolean } = {}) {\n const tabList = this.tabListEl;\n const { scrollLeft, clientWidth } = tabList;\n\n let left: number = scrollLeft;\n // The width of the scroll arrow is 32px, so we remove that from this calculation so the scroll\n const scrollAmount = clientWidth - 64;\n\n if (right) left += scrollAmount;\n else left -= scrollAmount;\n\n tabList.scrollTo({\n left,\n behavior: 'smooth',\n });\n }\n\n private translate(prop: string): string {\n return translations?.[prop]?.[this.language || en];\n }\n\n render() {\n return (\n <Host>\n <nav\n class=\"pn-tablist\"\n role={this.isMenu ? null : 'tablist'}\n aria-label={this.label}\n data-stacked={this.stackedicons}\n data-small={!this.isMenu && this.small}\n data-large={this.isMenu}\n data-scroll={this.showScrollArrows}\n ref={el => (this.tabListEl = el)}\n >\n <slot />\n <div class=\"pn-tablist-line\">\n <div ref={el => (this.lineActive = el)} class=\"pn-tablist-line-item pn-tablist-line-active\" />\n <div ref={el => (this.lineHovered = el)} class=\"pn-tablist-line-item pn-tablist-line-hovered\" />\n </div>\n </nav>\n\n <div class=\"pn-tablist-scroll\">\n <pn-button\n class=\"pn-tablist-arrow\"\n data-show={this.arrowLeft}\n onClick={() => this.scroll()}\n noTab={true}\n appearance=\"light\"\n variant=\"outlined\"\n icon={angle_left}\n iconOnly={true}\n arialabel={this.translate('LEFT')}\n small\n />\n\n <pn-button\n class=\"pn-tablist-arrow\"\n data-show={this.arrowRight}\n onClick={() => this.scroll({ right: true })}\n noTab={true}\n appearance=\"light\"\n variant=\"outlined\"\n icon={angle_right}\n iconOnly={true}\n arialabel={this.translate('RIGHT')}\n small\n />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"pn-tablist.entry.cjs.js","mappings":";;;;;;;;;;;;AAAA,qBAAe;IACb,IAAI,EAAE;QACJ,EAAE,EAAE,oBAAoB;QACxB,EAAE,EAAE,oBAAoB;QACxB,EAAE,EAAE,iBAAiB;QACrB,EAAE,EAAE,oBAAoB;QACxB,EAAE,EAAE,kBAAkB;KACvB;IACD,KAAK,EAAE;QACL,EAAE,EAAE,kBAAkB;QACtB,EAAE,EAAE,qBAAqB;QACzB,EAAE,EAAE,eAAe;QACnB,EAAE,EAAE,kBAAkB;QACtB,EAAE,EAAE,gBAAgB;KACrB;CACF;;ACfD,MAAM,YAAY,GAAG,0kFAA0kF,CAAC;AAChmF,wBAAe,YAAY;;MCwBd,SAAS;;;;gCAcyB,KAAK;yBAEZ,KAAK;0BAEJ,KAAK;;;;4BASZ,KAAK;wBAEJ,IAAI;;IA5B7B,EAAE,CAAmB;IAErB,MAAM,GAAY,KAAK,CAAC;IACxB,YAAY,GAAY,KAAK,CAAC;IAE9B,SAAS,CAAc;IACvB,UAAU,CAAiB;IAC3B,WAAW,CAAiB;IAC5B,UAAU,CAAmB;;;;;;IA0B5B,SAAS,CAAuB;IAGzC,QAAQ;QACN,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAErE,IAAI,CAAC,OAAO,CAAC,GAAG;YACd,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;SAC5B,CAAC,CAAC;KACJ;IAGD,aAAa;QACX,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SAC7E;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACrE;KACF;IAGD,mBAAmB,CAAC,EAAE,MAAM,EAAE;QAC5B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC;QAC5B,qBAAqB,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,GAAG;YAAE,OAAO;QACtC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;KACrE;IAGD,QAAQ;QACN,qBAAqB,CAAC;YACpB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;SAC3B,CAAC,CAAC;KACJ;IAGD,WAAW,CAAC,CAA+B;QACzC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;KAC3B;IAGD,WAAW;QACT,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,UAAU,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,YAAY;gBAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;SACvF,EAAE,GAAG,CAAC,CAAC;KACT;IAED,MAAM,iBAAiB;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAAC;QAE/C,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;YAAE,MAAMA,mBAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACjE;IAED,gBAAgB;QACd,IAAI,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,CAAC,EAAE,GAAG,IAAI,gBAAgB,CAAC;YAC7BC,iBAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;SACjB,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;KACvE;IAED,kBAAkB;QAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,QAAQ,EAAE,CAAC;KACjB;IAEO,OAAO,CAAC,OAA2C;QACzD,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC;KACxC;IAEO,WAAW,CAAC,OAAyB;QAC3C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KAChC;IAEO,UAAU,CAAC,OAAoB,EAAE,SAAkB,KAAK;QAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;QAE/C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAEnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,YAAY,GAAG,aAAa,CAAC,IAAI,CAAC;QAE7D,MAAM,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,GAAG,YAAY,GAAG,aAAa,CAAC;QAEnD,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,MAAM,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC;QACnE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,MAAM,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC;QACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,MAAM,UAAU,EAAE,GAAG,CAAC,CAAC;KAC7D;IAEO,gBAAgB;QACtB,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAEnD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;QAEzC,IAAI,CAAC,gBAAgB,GAAG,WAAW,GAAG,WAAW,CAAC;QAElD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,IAAI,UAAU,GAAG,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,IAAI,WAAW,GAAG,EAAE,GAAG,UAAU,GAAG,WAAW,CAAC;KACxF;IAEO,MAAM,CAAC,EAAE,KAAK,GAAG,KAAK,KAA0B,EAAE;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QAE5C,IAAI,IAAI,GAAW,UAAU,CAAC;;QAE9B,MAAM,YAAY,GAAG,WAAW,GAAG,EAAE,CAAC;QAEtC,IAAI,KAAK;YAAE,IAAI,IAAI,YAAY,CAAC;;YAC3B,IAAI,IAAI,YAAY,CAAC;QAE1B,OAAO,CAAC,QAAQ,CAAC;YACf,IAAI;YACJ,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAC;KACJ;IAEO,SAAS,CAAC,IAAY;QAC5B,OAAO,YAAY,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAIC,UAAE,CAAC,CAAC;KACpD;IAED,MAAM;QACJ,QACEC,QAACC,UAAI,uDACHD,kEACE,KAAK,EAAC,YAAY,EAClB,IAAI,EAAE,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,gBACxB,IAAI,CAAC,KAAK,kBACR,IAAI,CAAC,YAAY,gBACnB,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,gBAC1B,IAAI,CAAC,MAAM,iBACV,IAAI,CAAC,gBAAgB,EAClC,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC,IAEhCA,oEAAQ,EACRA,kEAAK,KAAK,EAAC,iBAAiB,IAC1BA,kEAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,EAAE,KAAK,EAAC,6CAA6C,GAAG,EAC9FA,kEAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,EAAE,KAAK,EAAC,8CAA8C,GAAG,CAC5F,CACF,EAENA,kEAAK,KAAK,EAAC,mBAAmB,IAC5BA,wEACE,KAAK,EAAC,kBAAkB,eACb,IAAI,CAAC,SAAS,EACzB,OAAO,EAAE,MAAM,IAAI,CAAC,MAAM,EAAE,EAC5B,KAAK,EAAE,IAAI,EACX,UAAU,EAAC,OAAO,EAClB,OAAO,EAAC,UAAU,EAClB,IAAI,EAAEE,0BAAY,EAClB,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EACjC,KAAK,SACL,EAEFF,wEACE,KAAK,EAAC,kBAAkB,eACb,IAAI,CAAC,UAAU,EAC1B,OAAO,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAC3C,KAAK,EAAE,IAAI,EACX,UAAU,EAAC,OAAO,EAClB,OAAO,EAAC,UAAU,EAClB,IAAI,EAAEG,2BAAa,EACnB,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAClC,KAAK,SACL,CACE,CACD,EACP;KACH;;;;;;;;;;","names":["awaitTopbar","forceUpdate","en","h","Host","chevron_left","chevron_right"],"sources":["src/components/navigation/pn-tablist/translations.ts","src/components/navigation/pn-tablist/pn-tablist.scss?tag=pn-tablist","src/components/navigation/pn-tablist/pn-tablist.tsx"],"sourcesContent":["export default {\n LEFT: {\n sv: 'Bläddra åt vänster',\n en: 'Scroll to the left',\n da: 'Rul til venstre',\n fi: 'Vieritä vasemmalle',\n no: 'Rull til venstre',\n },\n RIGHT: {\n sv: 'Bläddra åt höger',\n en: 'Scroll to the right',\n da: 'Rul til højre',\n fi: 'Vieritä oikealle',\n no: 'Rull til høyre',\n },\n};\n","@use 'src/globals/main';\n\npn-tablist {\n width: 100%;\n min-width: 0;\n position: relative;\n border-bottom: 0.0625em solid main.$gray200;\n display: block;\n\n .pn-tablist,\n ol,\n ul {\n display: flex;\n width: 100%;\n flex-direction: row;\n gap: 1em;\n position: relative;\n list-style: none;\n padding: 0;\n margin: 0;\n &[data-stacked] .pn-tab {\n margin: 0.5em 0.25em 0.75em;\n gap: 0.25em;\n flex-direction: column;\n }\n &[data-small] .pn-tab {\n margin: 0.25em 0.25em 0.75em;\n > *:not(pn-icon) {\n font-size: 0.875em;\n }\n }\n &[data-large] .pn-tab > *:not(pn-icon) {\n font-size: 1.25em;\n }\n &[data-scroll] {\n overflow-y: hidden;\n overflow-x: auto;\n scroll-snap-type: x mandatory;\n }\n &::-webkit-scrollbar {\n display: none;\n }\n }\n}\n\npn-tablist .pn-tablist {\n &-line {\n height: 0.25em;\n position: absolute;\n bottom: 0;\n\n &-item {\n position: absolute;\n width: 100%;\n height: inherit;\n border-radius: 0.25em 0.25em 0 0;\n\n transform-origin: left center;\n opacity: 0;\n @include main.pn-transition('transform, opacity, width', main.$timing-layout);\n }\n\n &-active {\n z-index: 1;\n background-color: main.$blue700;\n width: var(--pn-active-width);\n transform: translateX(var(--pn-active-offset));\n opacity: var(--pn-active-opacity);\n }\n\n &-hovered {\n background-color: main.$blue400;\n width: var(--pn-hover-width);\n transform: translateX(var(--pn-hover-offset));\n opacity: var(--pn-hover-opacity);\n }\n }\n\n &-scroll {\n position: absolute;\n top: 50%;\n left: 0;\n right: 0;\n pointer-events: none;\n transform: translateY(-50%);\n display: flex;\n justify-content: space-between;\n align-items: center;\n z-index: 1;\n height: 100%;\n }\n\n &-arrow {\n pointer-events: all;\n\n transform: scaleY(0);\n opacity: 0;\n visibility: hidden;\n\n @include main.pn-transition('transform, opacity, visibility');\n\n &[data-show] {\n opacity: 1;\n visibility: visible;\n transform: scaleY(1);\n }\n }\n}\n","import {\n Component,\n Prop,\n Listen,\n Element,\n Event,\n EventEmitter,\n State,\n h,\n Host,\n Watch,\n forceUpdate,\n} from '@stencil/core';\nimport { chevron_left, chevron_right } from 'pn-design-assets/pn-assets/icons.js';\nimport translations from './translations';\nimport { awaitTopbar, en } from '@/globals/helpers';\nimport type { PnLanguages } from '@/globals/types';\n\n/**\n * @slot menu - Can only be used inside of a `pn-header`. Allows the `href` attribute on the `pn-tab` when active.\n */\n@Component({\n tag: 'pn-tablist',\n styleUrl: 'pn-tablist.scss',\n})\nexport class PnTablist {\n private mo: MutationObserver;\n\n private isMenu: boolean = false;\n private isTabHovered: boolean = false;\n\n private tabListEl: HTMLElement;\n private lineActive: HTMLDivElement;\n private lineHovered: HTMLDivElement;\n private tabElement: HTMLPnTabElement;\n\n @Element() hostElement: HTMLElement;\n\n /** Display the scrolling arrows */\n @State() private showScrollArrows: boolean = false;\n /** Display the scroll arrow to the left */\n @State() private arrowLeft: boolean = false;\n /** Display the scroll arrow to the right */\n @State() private arrowRight: boolean = false;\n\n /** Give the tablist a name for screenreaders */\n @Prop() label!: string;\n /** The value of the tab that is currently active, each `<pn-tab value=\"example-value\">` also expects a unique value */\n @Prop({ reflect: true, mutable: true }) value!: string;\n /** Make the tablist smaller */\n @Prop() small?: boolean;\n /** Icons are stacked vertically instead of the default rows */\n @Prop() stackedicons: boolean = false;\n /** Manually set the language. */\n @Prop() language?: PnLanguages = null;\n\n /**\n * This will emit when a tab is changed. The detail property of the event will contain the value of the selected tab.\n * This is the event and value you listen to when you toggle the visibility among your tabpanels.\n **/\n @Event() tabchange: EventEmitter<string>;\n\n @Watch('value')\n setValue() {\n const tabs = Array.from(this.hostElement.querySelectorAll('pn-tab'));\n\n tabs.forEach(tab => {\n tab.activeTab = this.value;\n });\n }\n\n @Watch('showScrollArrows')\n scrollHandler() {\n if (this.showScrollArrows) {\n this.tabListEl.addEventListener('scroll', this.scrollIndicators.bind(this));\n } else {\n this.tabListEl.removeEventListener('scroll', this.scrollIndicators);\n }\n }\n\n @Listen('setActiveTab')\n setActiveTabHandler({ detail }) {\n this.tabElement = detail.el;\n requestAnimationFrame(() => this.activateTab(detail.el));\n if (this.value === detail.val) return;\n this.value = detail.val;\n this.tabchange.emit(this.value);\n this.tabElement.querySelector(this.isMenu ? 'a' : 'button').focus();\n }\n\n @Listen('resize', { target: 'window' })\n rerender() {\n requestAnimationFrame(() => {\n this.scrollIndicators();\n this.isTabHovered = false;\n });\n }\n\n @Listen('tabEnter')\n handleEnter(e: { target: HTMLPnTabElement }) {\n this.isTabHovered = true;\n this.styleLines(e.target);\n }\n\n @Listen('tabLeave')\n handleLeave() {\n this.isTabHovered = false;\n setTimeout(() => {\n if (!this.isTabHovered) this.lineHovered.style.setProperty('--pn-hover-opacity', '0');\n }, 500);\n }\n\n async componentWillLoad() {\n this.isMenu = this.hostElement.slot === 'menu';\n\n if (this.language === null) await awaitTopbar(this.hostElement);\n }\n\n componentDidLoad() {\n if (this.mo) this.mo.disconnect();\n this.mo = new MutationObserver(() => {\n forceUpdate(this.hostElement);\n this.rerender();\n });\n\n this.mo.observe(this.hostElement, { childList: true, subtree: true });\n }\n\n componentDidRender() {\n this.rerender();\n this.setValue();\n }\n\n private getRect(element: HTMLElement | HTMLPnTablistElement): DOMRect {\n return element.getBoundingClientRect();\n }\n\n private activateTab(element: HTMLPnTabElement) {\n this.styleLines(element, true);\n }\n\n private styleLines(element: HTMLElement, active: boolean = false) {\n const tabListCoords = this.getRect(this.tabListEl);\n const scrollOffset = this.tabListEl.scrollLeft;\n\n const line = this.getRect(element);\n\n const width = line.width;\n const offset = line.left + scrollOffset - tabListCoords.left;\n\n const cssVar = active ? 'active' : 'hover';\n const prop = active ? 'lineActive' : 'lineHovered';\n\n this[prop].style.setProperty(`--pn-${cssVar}-width`, `${width}px`);\n this[prop].style.setProperty(`--pn-${cssVar}-offset`, `${offset}px`);\n this[prop].style.setProperty(`--pn-${cssVar}-opacity`, '1');\n }\n\n private scrollIndicators() {\n const { scrollWidth, scrollLeft } = this.tabListEl;\n\n const { clientWidth } = this.hostElement;\n\n this.showScrollArrows = scrollWidth > clientWidth;\n\n this.arrowLeft = this.showScrollArrows && scrollLeft > 0;\n this.arrowRight = this.showScrollArrows && clientWidth + 16 + scrollLeft < scrollWidth;\n }\n\n private scroll({ right = false }: { right?: boolean } = {}) {\n const tabList = this.tabListEl;\n const { scrollLeft, clientWidth } = tabList;\n\n let left: number = scrollLeft;\n // The width of the scroll arrow is 32px, so we remove that from this calculation so the scroll\n const scrollAmount = clientWidth - 64;\n\n if (right) left += scrollAmount;\n else left -= scrollAmount;\n\n tabList.scrollTo({\n left,\n behavior: 'smooth',\n });\n }\n\n private translate(prop: string): string {\n return translations?.[prop]?.[this.language || en];\n }\n\n render() {\n return (\n <Host>\n <nav\n class=\"pn-tablist\"\n role={this.isMenu ? null : 'tablist'}\n aria-label={this.label}\n data-stacked={this.stackedicons}\n data-small={!this.isMenu && this.small}\n data-large={this.isMenu}\n data-scroll={this.showScrollArrows}\n ref={el => (this.tabListEl = el)}\n >\n <slot />\n <div class=\"pn-tablist-line\">\n <div ref={el => (this.lineActive = el)} class=\"pn-tablist-line-item pn-tablist-line-active\" />\n <div ref={el => (this.lineHovered = el)} class=\"pn-tablist-line-item pn-tablist-line-hovered\" />\n </div>\n </nav>\n\n <div class=\"pn-tablist-scroll\">\n <pn-button\n class=\"pn-tablist-arrow\"\n data-show={this.arrowLeft}\n onClick={() => this.scroll()}\n noTab={true}\n appearance=\"light\"\n variant=\"outlined\"\n icon={chevron_left}\n iconOnly={true}\n arialabel={this.translate('LEFT')}\n small\n />\n\n <pn-button\n class=\"pn-tablist-arrow\"\n data-show={this.arrowRight}\n onClick={() => this.scroll({ right: true })}\n noTab={true}\n appearance=\"light\"\n variant=\"outlined\"\n icon={chevron_right}\n iconOnly={true}\n arialabel={this.translate('RIGHT')}\n small\n />\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -29,7 +29,7 @@ const PnTextLink = class {
29
29
  }
30
30
  get hostElement() { return index.getElement(this); }
31
31
  render() {
32
- return (index.h("a", { key: 'e3eedcb07dbfb7530142b37f6fa11c2df8eabd08', id: this.linkid, class: "pn-text-link", href: this.href, rel: this.rel, target: this.target, download: this.download, hreflang: this.hreflang, media: this.media, referrerPolicy: this.referrerpolicy, "data-icon": !!this.icon, "data-icon-left": this.leftIcon, "data-light": this.light }, this.label, index.h("slot", { key: '830b2a522a8c296540c2831d0b5fae2b35933337' }), this.icon && index.h("pn-icon", { key: '97b8e1c3037cad1d5bd3b9910762508615a9e191', icon: this.icon })));
32
+ return (index.h("a", { key: '88ee2cf28a906eecb3b77f3bb4c25103368a6be1', id: this.linkid, class: "pn-text-link", href: this.href, rel: this.rel, target: this.target, download: this.download, hreflang: this.hreflang, media: this.media, referrerPolicy: this.referrerpolicy, "data-icon": !!this.icon, "data-icon-left": this.leftIcon, "data-light": this.light }, this.label, index.h("slot", { key: 'a0ceda16a5282b86356334e0f68872bdf6ddc8dd' }), this.icon && index.h("pn-icon", { key: '85a9dc141e364134bb258bbdb5a7b76ad76b37bf', icon: this.icon })));
33
33
  }
34
34
  };
35
35
  PnTextLink.style = PnTextLinkStyle0;
@@ -56,7 +56,7 @@ const PnTextarea = class {
56
56
  return !!(this.helpertext?.length || this.error?.length);
57
57
  }
58
58
  render() {
59
- return (index.h(index.Host, { key: 'c8cd0f74604646f7ac3ed6e8d4e7846b6d818b02' }, index.h("div", { key: '48fb0a2c6c30968079633a36b5d6a85ee8a07366', class: "pn-textarea", "data-valid": this.valid, "data-error": this.hasError(), "data-resize": this.resize }, index.h("label", { key: 'fbe7eac959225c7ee7d2a13fc3bdc75aca42363a', class: "pn-textarea-label", htmlFor: this.textareaid }, index.h("span", { key: '6d433af86539e7bb9b0bdd673f33f3297f79aa69' }, this.label), this.maxlength >= 1 && index.h("span", { key: '12e7c0a22af8e92136d7c893685d80e741d0c9f1' }, `${this.value?.length || 0}/${this.maxlength}`)), index.h("textarea", { key: 'c7dca374bf36de54afc9e2183ddb95c0c78c9f61', class: "pn-textarea-element", id: this.textareaid, name: this.name, rows: this.rows, cols: this.cols, wrap: this.wrap, autocomplete: this.autocomplete, spellcheck: this.spellcheck, placeholder: this.placeholder, maxlength: this.maxlength, required: this.required, disabled: this.disabled, readonly: this.readonly, "aria-describedby": this.hasMessage() ? this.idHelper : null, "aria-invalid": this.hasError().toString(), onInput: e => this.setVal(e), value: this.value }), this.hasMessage() && (index.h("p", { key: '9a5c29b6db59b4b881fe4b76f3cfd6dd69d79249', id: this.idHelper, class: "pn-textarea-text", role: this.error?.length ? 'alert' : null }, index.h("span", { key: '25a43d7f4ba47550623e4937ae4b8bf830fda6c0' }, this.error || this.helpertext))))));
59
+ return (index.h(index.Host, { key: 'f6402df35f4bd3995044899cdbb88c12a3b0d769' }, index.h("div", { key: 'a29993e5382b5b6d99d301bab1fb7266439fe83b', class: "pn-textarea", "data-valid": this.valid, "data-error": this.hasError(), "data-resize": this.resize }, index.h("label", { key: '23c3bc4dd4f9cf3ebfbfaedaa864dfdab9b69480', class: "pn-textarea-label", htmlFor: this.textareaid }, index.h("span", { key: '422340deb784b2c633d9da8b45a8a91e7bfaaed1' }, this.label), this.maxlength >= 1 && index.h("span", { key: '9dcabac30990f71ba1fbebed9cd7adc6ca0ffd3d' }, `${this.value?.length || 0}/${this.maxlength}`)), index.h("textarea", { key: '49020658e51cdf29c4da81aacfd588a016bb57b8', class: "pn-textarea-element", id: this.textareaid, name: this.name, rows: this.rows, cols: this.cols, wrap: this.wrap, autocomplete: this.autocomplete, spellcheck: this.spellcheck, placeholder: this.placeholder, maxlength: this.maxlength, required: this.required, disabled: this.disabled, readonly: this.readonly, "aria-describedby": this.hasMessage() ? this.idHelper : null, "aria-invalid": this.hasError().toString(), onInput: e => this.setVal(e), value: this.value }), this.hasMessage() && (index.h("p", { key: '68c4dd53d3b63e90fb4ea586120874c39baedcdf', id: this.idHelper, class: "pn-textarea-text", role: this.error?.length ? 'alert' : null }, index.h("span", { key: 'e7dd508206ca9dfb965e47e8ab35fede65e6bf19' }, this.error || this.helpertext))))));
60
60
  }
61
61
  };
62
62
  PnTextarea.style = PnTextareaStyle0;
@@ -66,7 +66,7 @@ const PnTile = class {
66
66
  this.pnTile.emit({ click: event });
67
67
  }
68
68
  render() {
69
- return (index.h(index.Host, { key: '3aad61d5d06a72a5f2a5cd1808b18c3f7d8e437b' }, index.h("div", { key: '15c10f8f668544caa32385121caf382626aa1b8f', class: "pn-tile", "data-horizontal": this.horizontal, "data-href": !!this.url, "data-focus": this.visibleOutline, ref: el => (this.tile = el) }, index.h("div", { key: '9e61d1919dff7343e394ed86b1800284eb750121', class: "pn-tile-illustration", "data-circle": !!this.url, "data-icon": this.showIcon(), role: "presentation", hidden: !this.showImage() }, this.showPropIllustration() ? (index.h("pn-illustration", { illustration: this.illustration })) : (this.showIcon() && index.h("pn-icon", { color: "blue700", icon: this.icon })), index.h("div", { key: '59e5cdf5d9fb09045e215758692d5dc402a2a49a', class: "pn-tile-illustration-slot", hidden: !this.showSlotIllustration(), ref: el => (this.illustrationSlot = el) }, index.h("slot", { key: '00bc0dafa3ae0f89959d0a61d8221ce1e4bc8c2f', name: "illustration" }))), index.h("div", { key: 'c88f8daa6ee6f309d71a3205299ab98a1157a9a9', class: "pn-tile-text" }, index.h("h3", { key: '2cb429bf55430c1fcea8965c4cc73b511738d89d', class: "pn-tile-title" }, this.url ? (index.h("a", { class: "pn-tile-link", href: this.url, target: this.target, rel: !this.rel && this.isExternal() ? 'noopener noreferrer' : this.rel, onClick: e => this.clickHandler(e), onFocus: event => this.handleFocus(event), onBlur: event => this.handleFocus(event) }, this.label)) : (this.label), this.isExternal() && index.h("pn-icon", { key: '5ea4aae5bf9328d68da0ee75990d95c590dc6749', icon: open_in_new.open_in_new, small: true, color: "blue700" })), index.h("div", { key: 'b9d56f8d2ee862215ef7ae7143d3da8073274fe5', class: "pn-tile-slot" }, !!this.text && index.h("p", { key: '76b95108a202c183f270868959cb4a7bb5fe0c57', class: "pn-tile-paragraph" }, this.text), index.h("slot", { key: 'fb3b513fd684adbcbd2af81360437ceec1ff9928' }))))));
69
+ return (index.h(index.Host, { key: 'c24ec58a47482a67e27c1266accd657cf3e8c54a' }, index.h("div", { key: '23727e1b4212192010c81fcb7af59f60fede0152', class: "pn-tile", "data-horizontal": this.horizontal, "data-href": !!this.url, "data-focus": this.visibleOutline, ref: el => (this.tile = el) }, index.h("div", { key: 'b4bd44255ab53ef2dfb130e02aac7809aebcc16b', class: "pn-tile-illustration", "data-circle": !!this.url, "data-icon": this.showIcon(), role: "presentation", hidden: !this.showImage() }, this.showPropIllustration() ? (index.h("pn-illustration", { illustration: this.illustration })) : (this.showIcon() && index.h("pn-icon", { color: "blue700", icon: this.icon })), index.h("div", { key: '3133bd22a2be6d3625dcbe879f98d6aa0c0de723', class: "pn-tile-illustration-slot", hidden: !this.showSlotIllustration(), ref: el => (this.illustrationSlot = el) }, index.h("slot", { key: '6a87734eb323047682be191c51d58c1f857df589', name: "illustration" }))), index.h("div", { key: '2a96a865bc30e22c0d4133273b7bbeea81564bce', class: "pn-tile-text" }, index.h("h3", { key: 'bb9762e899ddb2b879151031b0ad65e61521956e', class: "pn-tile-title" }, this.url ? (index.h("a", { class: "pn-tile-link", href: this.url, target: this.target, rel: !this.rel && this.isExternal() ? 'noopener noreferrer' : this.rel, onClick: e => this.clickHandler(e), onFocus: event => this.handleFocus(event), onBlur: event => this.handleFocus(event) }, this.label)) : (this.label), this.isExternal() && index.h("pn-icon", { key: '97a513fdb9c6daedbf5a8b2614a06bbc5baafb01', icon: open_in_new.open_in_new, small: true, color: "blue700" })), index.h("div", { key: '9d136471d950acd8c7934da681a9a5f332f0fa95', class: "pn-tile-slot" }, !!this.text && index.h("p", { key: 'abc6a5b7bef04f7708ff22550a8354db625ad94c', class: "pn-tile-paragraph" }, this.text), index.h("slot", { key: '7df167c895e2b9cde15326b5f22f222e89690971' }))))));
70
70
  }
71
71
  };
72
72
  PnTile.style = PnTileStyle0;