@duetds/components 6.2.5 → 6.2.6

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 (503) hide show
  1. package/hydrate/index.js +255 -321
  2. package/lib/cjs/duet-action-button.cjs.entry.js +1 -1
  3. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  9. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  12. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-editable-table_3.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-fieldset.cjs.entry.js +2 -2
  20. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  22. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-icon.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +15 -2
  29. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +26 -15
  30. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +22 -3
  31. package/lib/cjs/duet-menu-bar.cjs.entry.js +4 -3
  32. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  33. package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-nav.cjs.entry.js +2 -80
  35. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-pagination_2.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
  42. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +43 -0
  46. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +51 -0
  47. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +37 -0
  48. package/lib/cjs/duet-submenu-bar.cjs.entry.js +35 -0
  49. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  51. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  52. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +10 -15
  53. package/lib/cjs/duet-toolbar-link.cjs.entry.js +2 -2
  54. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  55. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  56. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  59. package/lib/cjs/duet.cjs.js +2 -2
  60. package/lib/cjs/{focus-utils-18ea61a6.js → focus-utils-0d18f24e.js} +1 -1
  61. package/lib/cjs/{index-d2f05eb8.js → index-14a34a4b.js} +1 -1
  62. package/lib/cjs/loader.cjs.js +2 -2
  63. package/lib/collection/collection-manifest.json +6 -6
  64. package/lib/collection/components/duet-choice/duet-choice.css +6 -1
  65. package/lib/collection/components/duet-fieldset/duet-fieldset.css +2 -0
  66. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +8 -1
  67. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +19 -1
  68. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.css +4 -3
  69. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +31 -32
  70. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.css +10 -2
  71. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +31 -0
  72. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.css +47 -7
  73. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +38 -1
  74. package/lib/collection/components/duet-nav/duet-nav.css +5 -0
  75. package/lib/collection/components/duet-nav/duet-nav.js +0 -117
  76. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +37 -0
  77. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +63 -0
  78. package/lib/collection/components/{duet-menu-bar-menu-dropdown/duet-menu-bar-menu-dropdown.css → duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.css} +28 -18
  79. package/lib/collection/components/{duet-menu-bar-menu-dropdown/duet-menu-bar-menu-dropdown.js → duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js} +20 -37
  80. package/lib/collection/components/{duet-menu-bar-menu-dropdown-link/duet-menu-bar-menu-dropdown-link.css → duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.css} +6 -6
  81. package/lib/collection/components/{duet-menu-bar-menu-dropdown-link/duet-menu-bar-menu-dropdown-link.js → duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js} +6 -6
  82. package/lib/collection/components/{duet-menu-bar-menu-link/duet-menu-bar-menu-link.css → duet-submenu-bar-link/duet-submenu-bar-link.css} +5 -17
  83. package/lib/collection/components/{duet-menu-bar-menu-link/duet-menu-bar-menu-link.js → duet-submenu-bar-link/duet-submenu-bar-link.js} +5 -24
  84. package/lib/collection/components/duet-toolbar/duet-toolbar.css +1 -0
  85. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.css +2 -3
  86. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +15 -32
  87. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +1 -1
  88. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  89. package/lib/dist-custom-elements/duet-alert.js +1 -1
  90. package/lib/dist-custom-elements/duet-badge.js +1 -1
  91. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  92. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  93. package/lib/dist-custom-elements/duet-button.js +1 -1
  94. package/lib/dist-custom-elements/duet-caption.js +1 -1
  95. package/lib/dist-custom-elements/duet-card.js +3 -3
  96. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  97. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  98. package/lib/dist-custom-elements/duet-choice.js +6 -6
  99. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  100. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  101. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  102. package/lib/dist-custom-elements/duet-date-picker.js +8 -8
  103. package/lib/dist-custom-elements/duet-divider.js +1 -1
  104. package/lib/dist-custom-elements/duet-editable-table.js +1 -1
  105. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  106. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  107. package/lib/dist-custom-elements/duet-footer.js +4 -4
  108. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  109. package/lib/dist-custom-elements/duet-grid.js +1 -1
  110. package/lib/dist-custom-elements/duet-header.js +8 -8
  111. package/lib/dist-custom-elements/duet-heading.js +1 -1
  112. package/lib/dist-custom-elements/duet-hero.js +9 -9
  113. package/lib/dist-custom-elements/duet-icon.js +1 -1
  114. package/lib/dist-custom-elements/duet-input.js +1 -1
  115. package/lib/dist-custom-elements/duet-label.js +1 -1
  116. package/lib/dist-custom-elements/duet-layout.js +1 -1
  117. package/lib/dist-custom-elements/duet-link.js +1 -1
  118. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  119. package/lib/dist-custom-elements/duet-list.js +1 -1
  120. package/lib/dist-custom-elements/duet-logo.js +1 -1
  121. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +18 -4
  122. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +28 -17
  123. package/lib/dist-custom-elements/duet-menu-bar-link.js +24 -4
  124. package/lib/dist-custom-elements/duet-menu-bar.js +6 -4
  125. package/lib/dist-custom-elements/duet-modal.js +7 -7
  126. package/lib/dist-custom-elements/duet-multiselect.js +8 -8
  127. package/lib/dist-custom-elements/duet-nav.js +3 -81
  128. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  129. package/lib/dist-custom-elements/duet-notification.js +2 -2
  130. package/lib/dist-custom-elements/duet-number-input.js +7 -7
  131. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  132. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  133. package/lib/dist-custom-elements/duet-progress.js +1 -1
  134. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  135. package/lib/dist-custom-elements/duet-radio.js +1 -1
  136. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  137. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  138. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  139. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  140. package/lib/dist-custom-elements/duet-select.js +1 -1
  141. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  142. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  143. package/lib/dist-custom-elements/duet-step.js +4 -4
  144. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  145. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.d.ts +11 -0
  146. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +69 -0
  147. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.d.ts +11 -0
  148. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +75 -0
  149. package/lib/dist-custom-elements/{duet-menu-bar-menu-link.d.ts → duet-submenu-bar-link.d.ts} +4 -4
  150. package/lib/dist-custom-elements/duet-submenu-bar-link.js +61 -0
  151. package/lib/dist-custom-elements/{duet-menu-bar-menu.d.ts → duet-submenu-bar.d.ts} +4 -4
  152. package/lib/dist-custom-elements/duet-submenu-bar.js +51 -0
  153. package/lib/dist-custom-elements/duet-tab-group.js +8 -8
  154. package/lib/dist-custom-elements/duet-tab.js +1 -1
  155. package/lib/dist-custom-elements/duet-table.js +1 -1
  156. package/lib/dist-custom-elements/duet-textarea.js +8 -8
  157. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  158. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  159. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +12 -17
  160. package/lib/dist-custom-elements/duet-toolbar-link.js +3 -3
  161. package/lib/dist-custom-elements/duet-toolbar.js +2 -2
  162. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  163. package/lib/dist-custom-elements/duet-tray.js +3 -3
  164. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  165. package/lib/dist-custom-elements/duet-upload.js +18 -18
  166. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  167. package/lib/dist-custom-elements/index.d.ts +4 -4
  168. package/lib/dist-custom-elements/index.js +5 -5
  169. package/lib/dist-custom-elements/{p-94eae3e6.js → p-0145dc9f.js} +1 -1
  170. package/lib/dist-custom-elements/{p-cab1e8a0.js → p-029208b5.js} +7 -7
  171. package/lib/dist-custom-elements/{p-d628dd87.js → p-076044f7.js} +3 -3
  172. package/lib/dist-custom-elements/{p-37dd7faf.js → p-0bc5bea3.js} +1 -1
  173. package/lib/dist-custom-elements/{p-eb6fc032.js → p-11621a52.js} +4 -4
  174. package/lib/dist-custom-elements/{p-9fef7d37.js → p-1c5a0ab0.js} +1 -1
  175. package/lib/dist-custom-elements/{p-10feffd3.js → p-2d3fc462.js} +1 -1
  176. package/lib/dist-custom-elements/{p-b5ea480c.js → p-2f9f54eb.js} +2 -2
  177. package/lib/dist-custom-elements/{p-d2402b45.js → p-31b3a82e.js} +3 -3
  178. package/lib/dist-custom-elements/{p-ad7292b3.js → p-3b1bc8f3.js} +3 -3
  179. package/lib/dist-custom-elements/{p-db135ec9.js → p-4905133d.js} +1 -1
  180. package/lib/dist-custom-elements/{p-a1212d29.js → p-49d5f105.js} +1 -1
  181. package/lib/dist-custom-elements/{p-fed8d27a.js → p-52471a7a.js} +2 -2
  182. package/lib/dist-custom-elements/{p-88d217a7.js → p-5846a06a.js} +2 -2
  183. package/lib/dist-custom-elements/{p-4115062c.js → p-626f0ed7.js} +1 -1
  184. package/lib/dist-custom-elements/{p-354f8a94.js → p-7b1b2eef.js} +1 -1
  185. package/lib/dist-custom-elements/{p-7958dc0c.js → p-88b72658.js} +6 -6
  186. package/lib/dist-custom-elements/{p-fddad5df.js → p-91098fd5.js} +1 -1
  187. package/lib/dist-custom-elements/{p-737dd784.js → p-9d08c707.js} +6 -6
  188. package/lib/dist-custom-elements/{p-14a163e6.js → p-a1724291.js} +1 -1
  189. package/lib/dist-custom-elements/{p-d34c42bc.js → p-a5f24f49.js} +1 -1
  190. package/lib/dist-custom-elements/{p-4447816d.js → p-ab04760e.js} +1 -1
  191. package/lib/dist-custom-elements/{p-82fec063.js → p-becb3aa3.js} +1 -1
  192. package/lib/dist-custom-elements/{p-65ee8608.js → p-cc5bc0c6.js} +3 -3
  193. package/lib/dist-custom-elements/{p-f7c0e5bf.js → p-ce42be86.js} +1 -1
  194. package/lib/dist-custom-elements/{p-25d4fffb.js → p-d188f26e.js} +1 -1
  195. package/lib/dist-custom-elements/{p-bd64a84d.js → p-db985827.js} +2 -2
  196. package/lib/dist-custom-elements/{p-af2e8de4.js → p-e4c2e7eb.js} +5 -5
  197. package/lib/dist-custom-elements/{p-0ef384ca.js → p-f079cc55.js} +1 -1
  198. package/lib/dist-custom-elements/{p-9245c901.js → p-f4d2face.js} +1 -1
  199. package/lib/dist-custom-elements/{p-0cc49790.js → p-fe5341bf.js} +1 -1
  200. package/lib/duet/duet.esm.js +1 -1
  201. package/lib/duet/duet.js +1 -1
  202. package/lib/duet/{p-f01d234f.system.entry.js → p-01a95d2f.system.entry.js} +1 -1
  203. package/lib/duet/{p-f7453c05.system.entry.js → p-06a4aee0.system.entry.js} +1 -1
  204. package/lib/duet/{p-0d218007.entry.js → p-07a46bc0.entry.js} +1 -1
  205. package/lib/duet/{p-f150740b.entry.js → p-0818ae38.entry.js} +1 -1
  206. package/lib/duet/{p-81e66ef1.entry.js → p-08f88403.entry.js} +1 -1
  207. package/lib/duet/{p-16b61523.system.entry.js → p-140c2b23.system.entry.js} +1 -1
  208. package/lib/duet/{p-0f8e4b6a.entry.js → p-16665db1.entry.js} +1 -1
  209. package/lib/duet/{p-0236fc28.system.entry.js → p-16803126.system.entry.js} +1 -1
  210. package/lib/duet/{p-f2bcb922.system.entry.js → p-18bdd586.system.entry.js} +1 -1
  211. package/lib/duet/{p-9101f9ed.entry.js → p-1bde084c.entry.js} +1 -1
  212. package/lib/duet/{p-696d99ff.system.entry.js → p-1c8bd070.system.entry.js} +1 -1
  213. package/lib/duet/p-1d75f8c8.system.entry.js +4 -0
  214. package/lib/duet/{p-daa20c36.system.entry.js → p-1f1ce7cb.system.entry.js} +1 -1
  215. package/lib/duet/{p-43750071.system.entry.js → p-250c73cb.system.entry.js} +1 -1
  216. package/lib/duet/p-25bbc964.system.entry.js +4 -0
  217. package/lib/duet/p-2821969c.system.entry.js +4 -0
  218. package/lib/duet/{p-10b1ea3e.system.entry.js → p-2ddfb202.system.entry.js} +1 -1
  219. package/lib/duet/{p-45b0469f.entry.js → p-2e21973b.entry.js} +1 -1
  220. package/lib/duet/{p-d16434dc.entry.js → p-321b7e1b.entry.js} +1 -1
  221. package/lib/duet/{p-e621c31c.system.entry.js → p-38c7c72f.system.entry.js} +1 -1
  222. package/lib/duet/{p-2f0f8b9e.system.entry.js → p-3d2b34f3.system.entry.js} +1 -1
  223. package/lib/duet/{p-bcd4a927.system.entry.js → p-3e4a074c.system.entry.js} +1 -1
  224. package/lib/duet/{p-c12ecca9.entry.js → p-3e4cfd2d.entry.js} +1 -1
  225. package/lib/duet/{p-60c70efa.entry.js → p-428f4378.entry.js} +1 -1
  226. package/lib/duet/{p-bc2c1014.entry.js → p-44fb0cd4.entry.js} +1 -1
  227. package/lib/duet/{p-c41bfab0.entry.js → p-453bb082.entry.js} +1 -1
  228. package/lib/duet/{p-f9afad76.system.entry.js → p-476affb5.system.entry.js} +1 -1
  229. package/lib/duet/{p-b293c2ff.entry.js → p-498a337c.entry.js} +1 -1
  230. package/lib/duet/p-49f74a78.system.entry.js +4 -0
  231. package/lib/duet/p-4afc265b.entry.js +4 -0
  232. package/lib/duet/{p-0d6723f5.entry.js → p-4bf9ce5d.entry.js} +1 -1
  233. package/lib/duet/{p-914c3280.system.entry.js → p-4d7701cf.system.entry.js} +1 -1
  234. package/lib/duet/{p-16cbd476.entry.js → p-4e5a7d50.entry.js} +1 -1
  235. package/lib/duet/{p-1184c37e.entry.js → p-4e669043.entry.js} +1 -1
  236. package/lib/duet/{p-5bffb89f.entry.js → p-52b1ae9c.entry.js} +1 -1
  237. package/lib/duet/{p-c3a0505e.system.entry.js → p-589d18c0.system.entry.js} +1 -1
  238. package/lib/duet/{p-9a14ca19.system.entry.js → p-5be0eb10.system.entry.js} +1 -1
  239. package/lib/duet/p-5d2799c7.system.entry.js +4 -0
  240. package/lib/duet/{p-acea52f5.entry.js → p-5d3d3ef4.entry.js} +1 -1
  241. package/lib/duet/p-5ffa7084.entry.js +4 -0
  242. package/lib/duet/p-61208b24.system.entry.js +4 -0
  243. package/lib/duet/p-665fc09a.entry.js +4 -0
  244. package/lib/duet/{p-00ee31e2.system.entry.js → p-6801edc9.system.entry.js} +1 -1
  245. package/lib/duet/{p-758c0528.system.entry.js → p-68802a44.system.entry.js} +1 -1
  246. package/lib/duet/p-6ba131a6.entry.js +4 -0
  247. package/lib/duet/{p-f678edf7.system.entry.js → p-6dcb5ddf.system.entry.js} +1 -1
  248. package/lib/duet/{p-b2c913ea.entry.js → p-71669602.entry.js} +1 -1
  249. package/lib/duet/p-71b48d4c.entry.js +4 -0
  250. package/lib/duet/p-73b840aa.entry.js +4 -0
  251. package/lib/duet/{p-6f2e72e2.system.entry.js → p-7758cfac.system.entry.js} +1 -1
  252. package/lib/duet/{p-a8d942ea.entry.js → p-79740f92.entry.js} +1 -1
  253. package/lib/duet/{p-6999702a.js → p-7aa97a75.js} +1 -1
  254. package/lib/duet/{p-ec635593.entry.js → p-7c171bac.entry.js} +1 -1
  255. package/lib/duet/{p-cf11b05b.entry.js → p-7d6c1aee.entry.js} +1 -1
  256. package/lib/duet/p-7e2dd844.system.entry.js +4 -0
  257. package/lib/duet/p-7e3dd6a8.system.entry.js +4 -0
  258. package/lib/duet/p-80b2336e.entry.js +4 -0
  259. package/lib/duet/{p-6db0f8c0.entry.js → p-80e9768b.entry.js} +1 -1
  260. package/lib/duet/{p-ef3f4213.entry.js → p-80ee2e1e.entry.js} +1 -1
  261. package/lib/duet/{p-0285e5d3.entry.js → p-821b780e.entry.js} +1 -1
  262. package/lib/duet/{p-ea8e5649.system.entry.js → p-86cc218e.system.entry.js} +2 -2
  263. package/lib/duet/{p-06c01b8a.system.entry.js → p-882e9987.system.entry.js} +1 -1
  264. package/lib/duet/{p-592bcdd4.entry.js → p-88cd99ba.entry.js} +1 -1
  265. package/lib/duet/{p-d58991bc.system.js → p-8b50f74e.system.js} +1 -1
  266. package/lib/duet/{p-8512b463.js → p-8bf3f0e9.js} +1 -1
  267. package/lib/duet/{p-89bf7be7.entry.js → p-92867eb0.entry.js} +1 -1
  268. package/lib/duet/{p-58de4753.system.entry.js → p-93825b5f.system.entry.js} +1 -1
  269. package/lib/duet/{p-b3046425.entry.js → p-9663117c.entry.js} +1 -1
  270. package/lib/duet/{p-5e134670.entry.js → p-96c274ff.entry.js} +1 -1
  271. package/lib/duet/p-98821736.entry.js +4 -0
  272. package/lib/duet/{p-8a47d599.system.entry.js → p-99577e5e.system.entry.js} +1 -1
  273. package/lib/duet/{p-948d492d.system.entry.js → p-9ab64b1c.system.entry.js} +1 -1
  274. package/lib/duet/{p-7e67fedc.system.entry.js → p-9adf9ec0.system.entry.js} +1 -1
  275. package/lib/duet/p-9b946c8f.system.entry.js +4 -0
  276. package/lib/duet/{p-b5dc8a8f.system.entry.js → p-9ba30a52.system.entry.js} +1 -1
  277. package/lib/duet/{p-e71a6257.system.js → p-9c0ae091.system.js} +1 -1
  278. package/lib/duet/{p-14e93ad6.system.entry.js → p-9f02fd3a.system.entry.js} +1 -1
  279. package/lib/duet/p-a03ec953.system.entry.js +4 -0
  280. package/lib/duet/{p-7fcbf80a.system.entry.js → p-a238f10c.system.entry.js} +1 -1
  281. package/lib/duet/p-a259e3da.system.entry.js +4 -0
  282. package/lib/duet/{p-855f9e2a.system.entry.js → p-a345635b.system.entry.js} +1 -1
  283. package/lib/duet/p-a5a7be5e.entry.js +4 -0
  284. package/lib/duet/{p-0426e86f.system.entry.js → p-a5af4cc5.system.entry.js} +1 -1
  285. package/lib/duet/{p-575e4d53.system.entry.js → p-b20f40db.system.entry.js} +1 -1
  286. package/lib/duet/{p-4644616b.entry.js → p-b21e895c.entry.js} +1 -1
  287. package/lib/duet/{p-90ea4509.system.entry.js → p-b31232db.system.entry.js} +1 -1
  288. package/lib/duet/{p-0169eb09.entry.js → p-b3fd554a.entry.js} +1 -1
  289. package/lib/duet/{p-61f8dd7f.system.entry.js → p-b5ee9c33.system.entry.js} +1 -1
  290. package/lib/duet/{p-d2ef832d.entry.js → p-b624c8ec.entry.js} +1 -1
  291. package/lib/duet/{p-ebc09697.system.entry.js → p-b68e7921.system.entry.js} +1 -1
  292. package/lib/duet/{p-dc51f077.entry.js → p-b8adb02e.entry.js} +1 -1
  293. package/lib/duet/{p-1b63c3bf.entry.js → p-bb33769c.entry.js} +1 -1
  294. package/lib/duet/{p-d971be46.entry.js → p-bfab9d81.entry.js} +1 -1
  295. package/lib/duet/{p-028da443.system.entry.js → p-c33cfdf4.system.entry.js} +1 -1
  296. package/lib/duet/p-c346b2c2.system.entry.js +4 -0
  297. package/lib/duet/{p-ac4c233b.entry.js → p-ccae1572.entry.js} +1 -1
  298. package/lib/duet/p-cdbad668.system.js +4 -0
  299. package/lib/duet/{p-9f60735a.system.entry.js → p-ce6d729c.system.entry.js} +1 -1
  300. package/lib/duet/{p-11c58a6b.entry.js → p-cf202e49.entry.js} +1 -1
  301. package/lib/duet/{p-0aae8ebf.entry.js → p-d3a8e2e6.entry.js} +1 -1
  302. package/lib/duet/{p-dfcbf758.system.entry.js → p-d3b1d4dc.system.entry.js} +1 -1
  303. package/lib/duet/{p-0fc0e90e.entry.js → p-d6045a19.entry.js} +1 -1
  304. package/lib/duet/{p-f6712ec8.system.entry.js → p-d64a3684.system.entry.js} +1 -1
  305. package/lib/duet/p-daa9f332.system.entry.js +4 -0
  306. package/lib/duet/{p-79c8d35c.system.entry.js → p-dd594b0c.system.entry.js} +1 -1
  307. package/lib/duet/{p-1a45eddb.system.entry.js → p-df2f8d6d.system.entry.js} +1 -1
  308. package/lib/duet/{p-c2c48bb2.entry.js → p-e2f77664.entry.js} +1 -1
  309. package/lib/duet/p-e651e225.entry.js +4 -0
  310. package/lib/duet/{p-c17cae49.entry.js → p-e6f8fb38.entry.js} +1 -1
  311. package/lib/duet/{p-0e1a3c6d.entry.js → p-e78f9d3b.entry.js} +1 -1
  312. package/lib/duet/{p-da803459.entry.js → p-e8da082b.entry.js} +1 -1
  313. package/lib/duet/{p-4e2db855.system.entry.js → p-e9259242.system.entry.js} +1 -1
  314. package/lib/duet/{p-1e442975.entry.js → p-ea769354.entry.js} +1 -1
  315. package/lib/duet/{p-f3d0d889.entry.js → p-efbe9082.entry.js} +1 -1
  316. package/lib/duet/{p-c5e54be9.entry.js → p-f17dd3be.entry.js} +1 -1
  317. package/lib/duet/{p-09e9e6e0.system.entry.js → p-f1d8bc66.system.entry.js} +1 -1
  318. package/lib/duet/p-f3f652cb.entry.js +4 -0
  319. package/lib/duet/{p-dd676f12.system.entry.js → p-f6665a9b.system.entry.js} +1 -1
  320. package/lib/duet/p-fb7e3c61.entry.js +4 -0
  321. package/lib/esm/duet-action-button.entry.js +1 -1
  322. package/lib/esm/duet-alert.entry.js +1 -1
  323. package/lib/esm/duet-badge.entry.js +1 -1
  324. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  325. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  326. package/lib/esm/duet-button_2.entry.js +1 -1
  327. package/lib/esm/duet-caption_4.entry.js +1 -1
  328. package/lib/esm/duet-card.entry.js +1 -1
  329. package/lib/esm/duet-checkbox.entry.js +1 -1
  330. package/lib/esm/duet-choice_2.entry.js +3 -3
  331. package/lib/esm/duet-collapsible.entry.js +1 -1
  332. package/lib/esm/duet-combobox.entry.js +1 -1
  333. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  334. package/lib/esm/duet-date-picker.entry.js +2 -2
  335. package/lib/esm/duet-divider_2.entry.js +1 -1
  336. package/lib/esm/duet-editable-table_3.entry.js +1 -1
  337. package/lib/esm/duet-empty-state.entry.js +1 -1
  338. package/lib/esm/duet-fieldset.entry.js +2 -2
  339. package/lib/esm/duet-footer.entry.js +1 -1
  340. package/lib/esm/duet-grid_2.entry.js +1 -1
  341. package/lib/esm/duet-header_2.entry.js +1 -1
  342. package/lib/esm/duet-hero.entry.js +1 -1
  343. package/lib/esm/duet-icon.entry.js +1 -1
  344. package/lib/esm/duet-input_2.entry.js +1 -1
  345. package/lib/esm/duet-layout.entry.js +1 -1
  346. package/lib/esm/duet-list_2.entry.js +1 -1
  347. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +15 -2
  348. package/lib/esm/duet-menu-bar-dropdown.entry.js +26 -15
  349. package/lib/esm/duet-menu-bar-link.entry.js +22 -3
  350. package/lib/esm/duet-menu-bar.entry.js +4 -3
  351. package/lib/esm/duet-modal.entry.js +2 -2
  352. package/lib/esm/duet-multiselect.entry.js +1 -1
  353. package/lib/esm/duet-nav.entry.js +2 -80
  354. package/lib/esm/duet-notification_2.entry.js +1 -1
  355. package/lib/esm/duet-number-input.entry.js +1 -1
  356. package/lib/esm/duet-pagination_2.entry.js +1 -1
  357. package/lib/esm/duet-progress.entry.js +1 -1
  358. package/lib/esm/duet-radio_2.entry.js +1 -1
  359. package/lib/esm/duet-range-slider.entry.js +1 -1
  360. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  361. package/lib/esm/duet-section-layout.entry.js +1 -1
  362. package/lib/esm/duet-select.entry.js +1 -1
  363. package/lib/esm/duet-step_2.entry.js +1 -1
  364. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +39 -0
  365. package/lib/esm/duet-submenu-bar-dropdown.entry.js +47 -0
  366. package/lib/esm/duet-submenu-bar-link.entry.js +33 -0
  367. package/lib/esm/duet-submenu-bar.entry.js +31 -0
  368. package/lib/esm/duet-textarea.entry.js +1 -1
  369. package/lib/esm/duet-toggle.entry.js +1 -1
  370. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  371. package/lib/esm/duet-toolbar-dropdown.entry.js +10 -15
  372. package/lib/esm/duet-toolbar-link.entry.js +2 -2
  373. package/lib/esm/duet-toolbar.entry.js +2 -2
  374. package/lib/esm/duet-tooltip.entry.js +1 -1
  375. package/lib/esm/duet-tray.entry.js +1 -1
  376. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  377. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  378. package/lib/esm/duet.js +2 -2
  379. package/lib/esm/{focus-utils-abaea1e6.js → focus-utils-25584abb.js} +1 -1
  380. package/lib/esm/{index-4df60498.js → index-f74e4d6a.js} +1 -1
  381. package/lib/esm/loader.js +2 -2
  382. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  383. package/lib/esm-es5/duet-alert.entry.js +1 -1
  384. package/lib/esm-es5/duet-badge.entry.js +1 -1
  385. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  386. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  387. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  388. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  389. package/lib/esm-es5/duet-card.entry.js +1 -1
  390. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  391. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  392. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  393. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  394. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  395. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  396. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  397. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  398. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  399. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  400. package/lib/esm-es5/duet-footer.entry.js +1 -1
  401. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  402. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  403. package/lib/esm-es5/duet-hero.entry.js +1 -1
  404. package/lib/esm-es5/duet-icon.entry.js +1 -1
  405. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  406. package/lib/esm-es5/duet-layout.entry.js +1 -1
  407. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  408. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  409. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  410. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  411. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  412. package/lib/esm-es5/duet-modal.entry.js +1 -1
  413. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  414. package/lib/esm-es5/duet-nav.entry.js +1 -1
  415. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  416. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  417. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  418. package/lib/esm-es5/duet-progress.entry.js +1 -1
  419. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  420. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  421. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  422. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  423. package/lib/esm-es5/duet-select.entry.js +1 -1
  424. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  425. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +4 -0
  426. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +4 -0
  427. package/lib/esm-es5/duet-submenu-bar-link.entry.js +4 -0
  428. package/lib/esm-es5/duet-submenu-bar.entry.js +4 -0
  429. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  430. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  431. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  432. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  433. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  434. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  435. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  436. package/lib/esm-es5/duet-tray.entry.js +1 -1
  437. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  438. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  439. package/lib/esm-es5/duet.js +1 -1
  440. package/lib/esm-es5/focus-utils-25584abb.js +4 -0
  441. package/lib/esm-es5/{index-4df60498.js → index-f74e4d6a.js} +1 -1
  442. package/lib/esm-es5/loader.js +1 -1
  443. package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +4 -0
  444. package/lib/types/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.d.ts +2 -16
  445. package/lib/types/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.d.ts +5 -0
  446. package/lib/types/components/duet-menu-bar-link/duet-menu-bar-link.d.ts +5 -0
  447. package/lib/types/components/duet-nav/duet-nav.d.ts +0 -18
  448. package/lib/types/components/duet-submenu-bar/duet-submenu-bar.d.ts +24 -0
  449. package/lib/types/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.d.ts +34 -0
  450. package/lib/types/components/{duet-menu-bar-menu-dropdown-link/duet-menu-bar-menu-dropdown-link.d.ts → duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.d.ts} +1 -1
  451. package/lib/types/components/{duet-menu-bar-menu-link/duet-menu-bar-menu-link.d.ts → duet-submenu-bar-link/duet-submenu-bar-link.d.ts} +1 -5
  452. package/lib/types/components/duet-toolbar-dropdown/duet-toolbar-dropdown.d.ts +1 -16
  453. package/lib/types/components.d.ts +158 -194
  454. package/package.json +5 -5
  455. package/lib/cjs/duet-menu-bar-menu-dropdown-link.cjs.entry.js +0 -43
  456. package/lib/cjs/duet-menu-bar-menu-dropdown.cjs.entry.js +0 -56
  457. package/lib/cjs/duet-menu-bar-menu-link.cjs.entry.js +0 -38
  458. package/lib/cjs/duet-menu-bar-menu.cjs.entry.js +0 -56
  459. package/lib/collection/components/duet-menu-bar-menu/duet-menu-bar-menu.css +0 -113
  460. package/lib/collection/components/duet-menu-bar-menu/duet-menu-bar-menu.js +0 -141
  461. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown-link.d.ts +0 -11
  462. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown-link.js +0 -69
  463. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown.d.ts +0 -11
  464. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown.js +0 -80
  465. package/lib/dist-custom-elements/duet-menu-bar-menu-link.js +0 -63
  466. package/lib/dist-custom-elements/duet-menu-bar-menu.js +0 -74
  467. package/lib/duet/p-0c519c1f.system.entry.js +0 -4
  468. package/lib/duet/p-14cca806.entry.js +0 -4
  469. package/lib/duet/p-1833941e.entry.js +0 -4
  470. package/lib/duet/p-27a1c897.entry.js +0 -4
  471. package/lib/duet/p-2c5b761d.entry.js +0 -4
  472. package/lib/duet/p-2cbe5fe4.entry.js +0 -4
  473. package/lib/duet/p-326d3440.system.entry.js +0 -4
  474. package/lib/duet/p-394efc25.system.entry.js +0 -4
  475. package/lib/duet/p-400f8e9d.system.entry.js +0 -4
  476. package/lib/duet/p-4c96e54d.entry.js +0 -4
  477. package/lib/duet/p-4d1a5b9e.system.entry.js +0 -4
  478. package/lib/duet/p-5214682e.system.entry.js +0 -4
  479. package/lib/duet/p-5b00d0cf.system.entry.js +0 -4
  480. package/lib/duet/p-63cb7308.system.entry.js +0 -4
  481. package/lib/duet/p-7ccf8ef9.entry.js +0 -4
  482. package/lib/duet/p-81313736.entry.js +0 -4
  483. package/lib/duet/p-8681c6e0.entry.js +0 -4
  484. package/lib/duet/p-8f6cf5d1.entry.js +0 -4
  485. package/lib/duet/p-b180a4e2.system.entry.js +0 -4
  486. package/lib/duet/p-b2688afc.system.entry.js +0 -4
  487. package/lib/duet/p-b821b721.system.entry.js +0 -4
  488. package/lib/duet/p-c4932f05.entry.js +0 -4
  489. package/lib/duet/p-d0f1d25f.system.entry.js +0 -4
  490. package/lib/duet/p-dbddb719.entry.js +0 -4
  491. package/lib/duet/p-dc18b76c.system.entry.js +0 -4
  492. package/lib/duet/p-f9133dc5.system.js +0 -4
  493. package/lib/esm/duet-menu-bar-menu-dropdown-link.entry.js +0 -39
  494. package/lib/esm/duet-menu-bar-menu-dropdown.entry.js +0 -52
  495. package/lib/esm/duet-menu-bar-menu-link.entry.js +0 -34
  496. package/lib/esm/duet-menu-bar-menu.entry.js +0 -52
  497. package/lib/esm-es5/duet-menu-bar-menu-dropdown-link.entry.js +0 -4
  498. package/lib/esm-es5/duet-menu-bar-menu-dropdown.entry.js +0 -4
  499. package/lib/esm-es5/duet-menu-bar-menu-link.entry.js +0 -4
  500. package/lib/esm-es5/duet-menu-bar-menu.entry.js +0 -4
  501. package/lib/esm-es5/focus-utils-abaea1e6.js +0 -4
  502. package/lib/types/components/duet-menu-bar-menu/duet-menu-bar-menu.d.ts +0 -49
  503. package/lib/types/components/duet-menu-bar-menu-dropdown/duet-menu-bar-menu-dropdown.d.ts +0 -49
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{h as t,r as e,c as a,H as i,g as s}from"./p-6999702a.js";import{i as d}from"./p-4ebf1618.js";import{f as l,d as o}from"./p-0b3f675e.js";import{i as n}from"./p-54f35a79.js";import{g as r,s as u}from"./p-ede854e1.js";import{q as h,s as b}from"./p-9052b6f5.js";import{b as p}from"./p-79a9746e.js";import{c as m}from"./p-c1325e35.js";import{p as c}from"./p-5a9d75e1.js";const f=({data:e,groupId:a,alignment:i})=>{const s=`duet-editable-table duet-editable-table-content-${a}`;return"string"==typeof e?t("td",{innerHTML:e,class:s,part:`${a}content`,style:{verticalAlign:i}}):t("td",{class:s,part:`${a}content`,style:{verticalAlign:i}},e)},g=class{constructor(t){e(this,t),this.duetTableToggle=a(this,"duetTableToggle",7),this.duetMenuClick=a(this,"duetMenuClick",7),this.sortableDefaultLabel={fi:"Järjestä",en:"Click to sort",sv:"Klicka för att sortera"},this.actionColumnLabel={en:"Actions for rows",fi:"Toiminnot rivillä",sv:"Åtgärder för rader"},this.toggleColumn=(t,e)=>{e.preventDefault();const{sort_order:a,direction:i,index:s,key:d}=t;this.duetTableToggle.emit({sort_order:a,index:s,direction:i,key:d,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{n(e)&&this.toggleColumn(t,e)},this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.actions=void 0,this.columns=void 0,this.rows=void 0,this.sortable=!1,this.groupId="",this.theme="",this.accessibleRole=void 0}componentWillLoad(){d(this)}createLabel(e){const{sort_order:a,direction:i,index:s,label:d}=e,l=r(d);return this.sortable?t("span",{class:"duet-table-label","data-index":s},t("duet-button",{size:"small",icon:a&&1===i?"action-arrow-down-small":a&&-1===i?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":r(this.sortableDefaultLabel),variation:"plain",margin:"none","icon-right":!0,onClick:t=>this.toggleColumn(e,t),onKeyDown:t=>this.handleKeyDown(e,t)},l)):l}getSortedColumns(){return[...this.columns].sort(l(["index"]))}getRowSortOrder(){return[...this.columns].sort(l(["sort_order"])).filter((t=>t.sort_order)).map((t=>-1===t.direction?`-${t.key}`:t.key))}renderTableHeader(){if(!this.columns)return;const e=this.getSortedColumns();return t("tr",{class:{"duet-table-action-header":!!this.actions}},e.map((e=>{if(!1!==e.display){const a=this.createLabel(e);return""!==a?t("th",{scope:"col"},a):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,r(this.actionColumnLabel))))}renderActions(e,a){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((i=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:a}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:i.name,theme:this.theme,iconName:i.icon,iconColor:i.color,iconSize:i.size,background:i.background}))))}renderTableBody(){const e=this.getSortedColumns(),a=this.getRowSortOrder();return[...this.rows].sort(l(a)).map(((a,i)=>t("tr",{class:{"duet-table-action-row":!!this.actions,"duet-editable-table-row":!0,[`duet-editable-table-row-${this.groupId}`]:!0},"data-meta":JSON.stringify(a.meta)},e.map((e=>{if(!1!==e.display)return t(f,{data:a[e.key]?a[e.key]:a.item,groupId:this.groupId})})),this.actions&&this.renderActions(a,i))))}render(){return t(i,{class:{[`duet-editable-table-${this.variation}`]:!0,"duet-editable-table":!0,[`duet-editable-table-${this.theme}`]:!0,"duet-editable-table-scrollable":"none-scrollable"===this.breakpoint,"duet-editable-table-sortable":this.sortable,"duet-editable-table-actions":!!this.actions,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("duet-table",{class:"duet-editable-table-table",sticky:this.sticky,stickyDistance:this.stickyDistance,margin:this.margin,theme:this.theme,variation:this.variation,breakpoint:this.breakpoint},t("table",{role:this.accessibleRole},t("caption",null,t("slot",{name:"tcaption"})),t("thead",null,t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-first"}))),this.renderTableHeader(),t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-last"})))),t("tbody",null,this.renderTableBody()),t("tfoot",null,t("tr",null,t("th",{class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{name:"tfoot"})))))))}get element(){return s(this)}};g.style=".sc-duet-editable-table-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-editable-table-actions-menu.sc-duet-editable-table{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button.sc-duet-editable-table{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon.sc-duet-editable-table .duet-icon.sc-duet-editable-table{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row.sc-duet-editable-table .duet-text-right.sc-duet-editable-table{text-align:right}.duet-editable-table-header.sc-duet-editable-table tr.sc-duet-editable-table .duet-editable-table-header-hidden.sc-duet-editable-table{padding:0 !important;font-size:0;border-bottom:0}";const y={none:0,"with-links":16*parseFloat(h),"without-links":16*parseFloat(b)},v=class{constructor(t){e(this,t),this.handleMediaQueryChange=t=>{this.matchesBreakpoint=t.matches},this.matchesBreakpoint=!0,this.theme=void 0,this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small"}connectedCallback(){this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":p[this.breakpoint]),this.mq.addEventListener("change",o(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>o(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(d(this),this.copyHeadingsToCells(),this.sticky&&"none-scrollable"===this.breakpoint&&console.warn('[DUET WARNING]: sticky and breakpoint="none-scrollable" are incompatible. Scrollable takes precedence'),this.sticky){const t=y[this.stickyDistance];this.element.querySelectorAll("thead th").forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords()}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0}copyHeadingsToCells(){const t=this.element.querySelectorAll("thead th"),e=this.element.querySelectorAll("tbody tr"),a=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{a[e]&&(t.dataset.heading=a[e])}))}))}render(){return t(i,{class:{[`duet-table-${this.variation}`]:!0,"duet-table-flattened":!this.matchesBreakpoint,"duet-table-sticky":this.matchesBreakpoint&&this.sticky,"duet-table-scrollable":"none-scrollable"===this.breakpoint,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("slot",null))}get element(){return s(this)}};v.style='duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{width:100%;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}.duet-table-flattened table,.duet-table-flattened thead,.duet-table-flattened tbody,.duet-table-flattened tfoot,.duet-table-flattened th,.duet-table-flattened td,.duet-table-flattened tr{display:block}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-fixed th:first-child,.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-fixed th:last-child,.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-fixed th,.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-fixed tbody th,.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-fixed td,.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-fixed td:first-child,.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-fixed td:last-child,.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-fixed tbody td,.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-fixed tbody td,.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-fixed tbody:first-of-type th,.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-fixed td,.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-fixed tr,.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-fixed tfoot td,.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-fixed tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-fixed table{table-layout:fixed}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td,.duet-table-fixed tbody tr td:first-child{padding:4px !important;vertical-align:text-bottom;border-bottom:0 none}.duet-table-fixed thead{display:none}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td{border-bottom:0 none}.duet-table-fixed:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}.duet-table-sortable tbody tr td:first-child,.duet-table-sortable thead tr th:first-child{padding:20px}.duet-table-sortable:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-actions table{table-layout:auto}.duet-table-actions thead th:last-child{width:1px;white-space:nowrap}.duet-editable-table-table.duet-table-flattened tr{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:auto;gap:10px}.duet-editable-table-table.duet-table-flattened tr.duet-table-action-row td:last-child::before{padding:0;content:""}.duet-editable-table-table.duet-table-flattened td{grid-column:1/2}.duet-editable-table-table.duet-table-flattened td:first-child{grid-row:1;grid-column:1}.duet-editable-table-table.duet-table-flattened td:last-child{grid-row:1;grid-column:2}';const x=[{type:"default",system_message:"unknown error",message:{fi:"Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",sv:"Ett okänt fel uppstod, försök igen.",en:"An unknown error occured, please try again."}},{type:"400",system_message:"Bad Request: The server could not understand the request due to invalid syntax.",message:{fi:"Tiedostoa ei hyväksytty.",sv:"Servern avvisade din fil.",en:"The server rejected your file."}},{type:"401",system_message:"Not Authenticated: The client must authenticate itself to get the requested response...",message:{fi:"Vain kirjautunut käyttäjä voi lähettää tiedostoja.",sv:"Du måste vara inloggad för att ladda upp filer.",en:"You need to be logged in to upload files."}},{type:"403",system_message:"No Access: The client does not have access rights to the content.",message:{fi:"Ei oikeuksia lähettää tiedostoja.",sv:"Du har inte rätt åtkomsträttigheter för att ladda upp filer.",en:"You do not have the correct access rights to upload files."}},{type:"413",system_message:"Payload too large",message:{fi:"Tiedosto oli liian vastaanotettavaksi.",sv:"Filen var för stor för servern att hantera.",en:"The file was to large for the server to handle."}},{type:"415",system_message:"Unsupported media type",message:{fi:"Tiedoston tyyppi oli väärä.",sv:"Servern avvisade filen eftersom den hade fel typ.",en:"The server rejected the file because it had the wrong type."}},{type:"429",system_message:"Too many request from same address",message:{fi:"Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",sv:"Servern har fått många förfrågningar från dig, försök igen senare.",en:"The server has received to many request from you, please try again later."}},{type:"500",system_message:"Internal Server Error",message:{fi:"Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",sv:"Servern rapporterade ett okänt fel och uppladdningen misslyckades.",en:"The server reported an unknown error and the upload failed."}},{type:"duet-upload-100",system_message:"File extension not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den type.",en:"You cannot upload files with that extension."}},{type:"duet-upload-001",system_message:"File transfer failed",message:{fi:"Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",sv:"Din anslutning till servern avbröts, försök igen.",en:"Your connection to the server was interrupted, try again."}},{type:"duet-upload-101",system_message:"File mimetype not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den typ.",en:"You cannot upload files of that type."}},{type:"duet-upload-201",system_message:"File is too large",message:{fi:"Tiedosto on liian iso.",sv:"Filen är större än tillåtet.",en:"The file is larger than permitted."}},{type:"duet-upload-202",system_message:"The combined size of all files is too large",message:{fi:"Tiedostojen yhteenlaskettu koko on liian iso.",sv:"Du har nått den maximala kombinerade filstorleken.",en:"You have reached the maximum combined filesize."}},{type:"duet-upload-301",system_message:"The maximum file limit has been reached",message:{fi:"Liitteiden maksimimäärä saavutettu.",sv:"Maximalt antal bilagor har uppnåtts.",en:"Maximum number of attachments reached."}}],k=(t,e)=>{let a={type:void 0,system_message:void 0,message:void 0};return a=(e=c(e)).filter((e=>e.type==t))[0],a||(a=e.filter((t=>"default"===t.type))[0]),a},w=(t,e)=>{const a=k(t,e),i=r(a.message);return""!==i&&i?i:a.system_message},z=({data:e,errorCodes:a})=>{const{item:i,error:s}=e,{name:d}=i,{type:l}=s;return t("span",{class:"duet-upload-item-error",role:"status"},t("duet-paragraph",{class:"duet-upload-item-name",color:"danger",margin:"none",weight:"semi-bold"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),d),t("duet-paragraph",{class:"duet-upload-item-error-label",size:"small",margin:"none",color:"danger"},w(l,a)))},T=({progress:e,name:a})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),a,t("br",null),t("duet-progress",{progress:Math.ceil(e),"aria-hidden":!0})),S=({name:e})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),e),E=({data:e,showLinks:a})=>{const{item:i,size:s,uploaded:d,url:l,meta:o}=e,{name:n}=i,r=t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),n),u=t("span",{class:"duet-upload-item-size",style:{fontSize:"14px",fontWeight:"400"}},"(",((t,e=2)=>{if(0===t)return"0 Bytes";const a=e<0?0:e,i=Math.floor(Math.log(t)/Math.log(1024));return parseFloat((t/Math.pow(1024,i)).toFixed(a))+" "+["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][i]})(s),")"),h=t("duet-paragraph",{color:"secondary",margin:"none",weight:"semi-bold"},d&&l&&a?t("duet-link",{url:l,external:!0},r):r,t("duet-spacer",{size:"xx-small",direction:"horizontal"}),u),b=o&&o.badges?t("span",null,t("duet-spacer",{size:"xx-small"}),o.badges.map((e=>t("duet-badge",{color:"primary"},e)))):void 0;return t("span",{class:"duet-upload-item-success"},t("div",null,h),b)},j=(t,e,a)=>{const{allowedMimetypes:i,allowedExtensions:s,maxBytes:d}=e;let l=!1,o=k("default",a);if(t){const{name:e,type:n,size:r}=t,u=((t,e)=>{if(!e||!t)return!0;const a=e.split(",");let i=!1;return a.forEach((e=>{const a=e.split("/"),s=t.split("/");a[0]!==s[0]||a[1]!==s[1]&&"*"!==a[1]||(i=!0)})),i})(n,i),h="all"===s||""===s||" "===s||void 0===s||((t,e)=>{if(!e)return!0;const a=t.split(".");return e.split(",").includes(a[a.length-1])})(e.toLowerCase(),s),b=((t,e)=>!e||!t||e>=t)(r,d);u||(o=k("duet-upload-101",a)),h||(o=k("duet-upload-100",a)),b||(o=k("duet-upload-201",a)),l=u&&h&&b}else l=!1;return{valid:l,errorMessage:l?void 0:r(o.message),errorSystem:l?void 0:o.system_message,errorType:l?void 0:o.type}},M=({payload:t,options:e,onFailure:a,onSuccess:i,onProgress:s})=>{const{type:d="POST",xhr:l,uri:o,argument:n=null,headers:r=null}=e;l.open(d,`${o}${n||""}`,!0);const{data:u,name:h}=t;return r&&Object.keys(r).forEach((t=>{l.setRequestHeader(t,r[t])})),"POST"===d&&(l.onreadystatechange=()=>{l.readyState===XMLHttpRequest.DONE&&l.status>=200&&l.status<300&&i(l,h,l.status),l.readyState===XMLHttpRequest.DONE&&l.status>=300&&l.status<999&&a(l,h,l.status)},s(h)),l.send(u),l},F=class{constructor(i){e(this,i),this.duetChange=a(this,"duetChange",3),this.duetBlur=a(this,"duetBlur",7),this.duetFocus=a(this,"duetFocus",7),this.duetReady=a(this,"duetReady",7),this.duetDone=a(this,"duetDone",3),this.duetState=a(this,"duetState",3),this.duetDelete=a(this,"duetDelete",3),this.duetCancel=a(this,"duetCancel",3),this.duetProgress=a(this,"duetProgress",3),this.duetUpload=a(this,"duetUpload",3),this.buttonId=m("DuetButton"),this.labelId=m("DuetLabel"),this.uploadId=m("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.internalStatusMessageLabel=void 0,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.kick=o((()=>{this.tick=Date.now()}),30),this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:a,id:i,originalEvent:s}=e;switch(a){case"delete":this.onDelete(i,s);break;case"cancel":this.onCancel(i,s)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),a=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==a&&this.duetState.emit({originalEvent:void 0,data:{valid:this.valid,from:"componentWillRender"},component:"duet-upload"})},this.getGroupFromItemData=t=>t.valid&&100===t.progress?this.DefaultGroups.success:t.progress>0&&100!==t.progress?this.DefaultGroups.inprogress:t.valid?t.pending?this.DefaultGroups.pending:t.group?t.group:"none":this.DefaultGroups.failure,this.getItemHTMLFromItemData=(e,a)=>a===this.DefaultGroups.success?t(E,{data:e,showLinks:this.showLinks}):a===this.DefaultGroups.inprogress?t(T,{progress:e.progress,name:e.item.name}):a===this.DefaultGroups.pending?t(S,{name:e.item.name}):a===this.DefaultGroups.failure?t(z,{data:e,errorCodes:this.errorCodes}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,a,i=!0)=>{try{const i=this.files.get(t);i[e]=a,this.files.set(t,i)}catch(s){}i&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(a=>{this.updateValueInMap(e,"progress",a),this.onProgress(e,a,t)})(t.loaded/t.total*100):console.log("cant read progress")},this.trackProgress=(t,e=!1)=>{e?this.filesInProgress.delete(t):this.filesInProgress.set(t,"inprogress"),0===this.filesInProgress.size&&this.onDone()},this.getFilesAsArray=()=>{const t=[],e=[];return this.files.forEach((a=>{a.valid&&!a.deleted?t.push(a):a.valid||a.deleted||e.push(a)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{this.metaData=e,this.nativeInput.click(),this.onUpload(t,e),t.stopPropagation(),t.preventDefault()},this.transferComplete=t=>{this.updateValueInMap(t,"progress",100,!1),this.trackProgress(t,!0)},this.transferDone=(t,e,a)=>{this.updateValueInMap(e,"status",a,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const a=JSON.parse(t.response);this.updateValueInMap(e,"url",a.url)}catch(i){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,a)=>{try{const{error:a}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:a.message,type:a.type},!1)}catch(i){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:a},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",w("duet-upload-001",this.errorCodes))},this.transferCanceled=t=>{this.files.delete(t),this.validateTotals(t),this.kick()},this.validateTotals=t=>{const e=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),a>e))})(0,this.maxBytesTotal),a=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&a++})),a>e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",w("duet-upload-202",this.errorCodes),!1),a&&t&&this.updateValueInMap(t,"error",w("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=a,{bytesMaxReached:e,fileMaxReached:a}},this.uploadFile=async(t,e=!1,a)=>{!e&&this.deferUpload?(this.updateValueInMap(t.item.name,"pending",!0,!1),this.updateValueInMap(t.item.name,"group","pending",!0)):e&&(this.updateValueInMap(t.item.name,"pending",!1,!1),this.updateValueInMap(t.item.name,"group",void 0,!0));try{if(!this.deferUpload||e){const e=new FormData;e.append("file",t.item),a&&e.append("key",a),e.append("uid",t.uid),e.append("name",t.item.name),e.append("metadata",JSON.stringify({uid:t.uid,url:this.uri,size:t.item.size,meta:t.meta})),t.xhr=await this.makeXHRPostRequest(e)}}catch(i){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of this.files.entries())"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,a]of this.files.entries())if(a.uid===t)return{value:a,key:e};return null},this.onDelete=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);this.files.delete(a),this.validateTotals(),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:i},component:"duet-upload"}),this.external||i.pending||this.makeXHRDeleteRequest(i),this.resetFormFields()},this.onCancel=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);if(this.files.delete(a),this.external)this.kick();else{const{xhr:t}=i;t&&t.abort()}this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:i},component:"duet-upload"})},this.onUpload=(t,e)=>{this.duetUpload.emit({originalEvent:t,metaData:e,component:"duet-upload"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,component:"duet-upload"})},this.onProgress=(t,e,a)=>{this.duetChange.emit({originalEvent:a,data:{key:t,percentComplete:e},component:"duet-upload"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,component:"duet-upload"})},this.onReady=()=>{this.duetReady.emit({component:"duet-upload"})},this.onDone=()=>{this.duetDone.emit({component:"duet-upload",data:{files:this.files}})},this.filterMap=()=>{const t=[...this.files.values()],e=[],a=[],i=[],s=[];return t.forEach((t=>{const d=this.getGroupFromItemData(t),l=this.getItemHTMLFromItemData(t,d);d===this.DefaultGroups.success?s.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.inprogress?e.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.pending?i.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.failure?a.push({uid:t.uid,item:l,group:d}):t.group&&e.push({uid:t.uid,item:l,group:t.group})})),{pending:i,failure:a,success:s,inprogress:e}},this.getColumns=t=>[{sort_order:1,direction:-1,index:0,key:t.id,label:t.label}],this.getActions=t=>this.actions.filter((e=>e.map.includes(t))),this.renderEditableTableGroups=()=>{const e=this.filterMap();return this.groups.map((a=>{const i=e[a.id];if(null==i?void 0:i.length)return t("duet-table",{variation:"plain",breakpoint:"none",role:"log",margin:this.hideGroups?"none":"auto"},t("table",{class:"duet-upload-editable-table"},t("thead",{class:"duet-upload-editable-table-header"},t("tr",null,t("th",{class:{"duet-upload-editable-table-header-hidden":this.hideGroups}},this.hideGroups?t("duet-visually-hidden",null,r(a.label)):r(a.label)))),t("tbody",null,t("tr",null,t("td",{class:"duet-upload-editable-table-data"},t("duet-editable-table",{breakpoint:"none",variation:"plain",groupId:a.id,columns:this.getColumns(a),actions:this.getActions(a.id),margin:"none",rows:i}))))))}))},this.tick=Date.now(),this.accessibleActiveDescendant=void 0,this.accessibleDescribedBy=void 0,this.accessibleControls=void 0,this.accessibleOwns=void 0,this.external=!1,this.middleware=null,this.deferUpload=!1,this.hideButton=!1,this.actions=[{icon:"action-delete",color:"color-danger",size:"x-small",background:"gray-lightest",name:"delete",map:["success","failure"],label:{fi:"Poista tiedosto",en:"Poista tiedosto",sv:"Ta bort filen"}},{icon:"navigation-close",color:"primary",size:"x-small",background:"gray-lightest",name:"cancel",map:["inprogress","pending"],label:{fi:"Keskeytä lähetys",en:"Cancel the upload",sv:"Stop överföringen"}}],this.uri=void 0,this.showLinks=!1,this.caption=void 0,this.statusLabelDefaults={fi:{inProgress:"Lähetetään {filesUploaded} lähetettävästä {filesTotal} tiedostosta",inProgressWithErrors:"Lähetetään {filesInProgress} tiedostoa, lähetetty {filesUploaded} lähetettävästä {filesTotal} tiedostosta, {filesWithErrors} tiedostossa on virheitä",done:"Kaikki {filesTotal} tiedostoa lähetetty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} tiedostoa on lähetetty onnistuneesti, {filesWithErrors} tiedostossa oli virheitä",files:"tiedostot",file:"tiedosto"},sv:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Alla {filesTotal} har lagts till",doneWithErrors:"Handling slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"All {filesTotal} added successfully",doneWithErrors:"Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",files:"File",file:"file"}},this.statusMessageLabel=r(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=r(this.buttonLabelDefaults),this.accessibleButtonLabel=void 0,this.theme="",this.disabled=!1,this.identifier=void 0,this.margin="auto",this.required=!1,this.alignment="middle",this.hideGroups=!1,this.files=new Map,this.valid=!this.required,this.labelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add attachments"},this.label=r(this.labelDefaults),this.descriptionDefaults={en:"You may attach the following filetypes: {filetypes} - as well as the most common video files. You can upload {maxbytestotal} of files at a time, and add up to {maxfiles} attachments at a time each no larger than {maxbytes}.",sv:"Du kan bifoga följande filtyper: {filetypes} - samt de vanligaste videofilerna. Du kan ladda upp {maxbytestotal} av filer åt gången, och lägga till upp till {maxfiles} bilagor åt gången varje inte större än {maxbytes}.",fi:"Voit liittää seuraavat tiedostotyypit: {filetypes} - sekä yleisimmät videotiedostot. Voit lähettää {maxbytestotal} tiedostoa kerrallaan, ja lisätä enintään {maxfiles} liitettä kerrallaan, jokainen enintään {maxbytes} kokoisena."},this.description=r(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=r(this.fileListEmptyDefaults),this.error="",this.errorCodes=x,this.name=void 0,this.maxBytes=2e8,this.maxBytesTotal=void 0,this.maxFiles=99,this.allowedExtensions="all",this.allowedMimetypes="*",this.multiple=!0,this.limitSelection=!1,this.value=void 0,this.groups=[{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}},{id:this.DefaultGroups.success,label:{fi:"Valmiit tiedostot",sv:"Files success",en:"Files success"}},{id:this.DefaultGroups.failure,label:{fi:"Tiedostot, joissa on virheitä",sv:"Filer med fel",en:"Files with errors"}},{id:this.DefaultGroups.inprogress,label:{fi:"Kesken olevat tiedostot",sv:"Filer inprogress",en:"Files inprogress"}}]}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?u(this.groups):this.statusMessageLabel,d(this),this.listenForActionEvents(),this.onReady()}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){await this.setFocus(),this.metaData=t,this.nativeInput.click()}async uploadPending(){this.uploadPendingFiles()}async refresh(){this.kick(),await this.setFocus()}async getFiles(){return!(!this.files||0===this.files.size)&&this.getFilesAsArray()}async updateValue(t,e,a){this.updateValueInMap(t,e,a)}render(){const e=this.identifier||this.uploadId,a=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),s=Math.round(this.maxBytes/1024/1024);let d=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return d=d.replace(/{maxbytes}/g,`${s.toString()} MB`),d=d.replace(/{maxbytestotal}/g,`${a.toString()} MB`),d=d.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),t(i,{class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{label:this.label,caption:d},t("slot",{name:"header"}),!this.files.size&&t("duet-label",{part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",theme:"turva"===this.theme?"turva":"default",size:"small",class:{"duet-upload-filelist-empty":!this.files.size,"duet-upload-filelist":!0,"duet-upload-filelist-filled":this.files.size},id:this.labelId,for:e},t("span",{class:{"duet-upload-filelist-empty-label":!this.files.size}},this.fileListEmpty)),!!this.files.size&&t("slot",{name:"fileheader"}),!!this.files.size&&t("duet-upload-aria-status",{invalid:this.getFilesAsArray().invalid.length,valid:this.getFilesAsArray().valid.length,inprogress:this.filesInProgress.size,total:this.files.size,statusMessageLabel:this.internalStatusMessageLabel}),!!this.files.size&&this.renderEditableTableGroups(),!!this.files.size&&t("slot",{name:"filefooter"}),t("duet-spacer",{size:"large"}),!this.hideButton&&t("duet-button",{id:this.buttonId,onClick:this.startUpload,"accessible-controls":e,disabled:this.fileMaxReached,"accessible-label":this.accessibleButtonLabel,"accessible-owns":e,size:"small",variation:"secondary",fixed:!0,icon:"action-add-circle",part:this.identifier?`${this.identifier}-button-upload`:"duet-upload-button-upload"},this.buttonLabel),t("duet-spacer",{size:"medium"}),(this.fileMaxReached||this.bytesMaxReached)&&t("duet-alert",{part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&w("duet-upload-301",this.errorCodes),this.bytesMaxReached&&w("duet-upload-202",this.errorCodes)),t("duet-spacer",{size:"medium"}),t("duet-visually-hidden",null,t("input",{ref:t=>{this.nativeInput=t},accept:this.limitSelection?`${this.allowedMimetypes},${this.allowedExtensions}`:void 0,onBlur:this.onBlur,onFocus:this.onFocus,onChange:t=>this.onChange(t),type:"file",class:{"duet-upload":!0},disabled:this.disabled,"aria-hidden":"true",required:this.required,name:this.name,id:this.identifier,multiple:this.multiple}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,a=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,a)})),e.upload.addEventListener("load",(()=>{this.transferComplete(a)})),e.upload.addEventListener("error",(()=>{this.transferFailed(a)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(a)}));let i={payload:{data:t,name:a},options:{type:"POST",uri:this.uri,xhr:e,argument:null,headers:void 0},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(i=this.middleware(i)),M(i)}makeXHRDeleteRequest(t){const{uid:e,item:a}=t,i=new XMLHttpRequest;let s={payload:{data:null,name},options:{type:"DELETE",xhr:i,uri:this.uri,argument:`?key=${e}&name=${a.name}`,headers:{"x-fileuid":e,"x-filename":a.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(s=this.middleware(s)),M(s)}async onChange(t){var e;const a=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(a)for(const i of a){const{valid:t,errorMessage:e,errorType:a,errorSystem:s}=j(i,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),d={uid:this.genHashName(),item:i,size:i.size,meta:this.metaData,uploaded:!1,valid:t,error:{type:t?void 0:a,message:t?void 0:e,system_message:t?void 0:s},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(i.name,d);const{bytesMaxReached:l,fileMaxReached:o}=this.validateTotals(i.name);l||o?this.updateValueInMap(i.name,"valid",!1,!1):t&&!this.external?await this.uploadFile(d):t&&this.external?(this.updateValueInMap(d.item.name,"pending",!0,!1),this.updateValueInMap(d.item.name,"group","pending",!0)):t||this.updateValueInMap(i.name,"valid",!1,!0),this.kick()}this.resetFormFields(),this.metaData=void 0,this.duetChange.emit({originalEvent:t,data:{files:this.files},component:"duet-upload"})}get element(){return s(this)}static get watchers(){return{valid:["watchValidHandler"]}}};F.style="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:#f5f8fa}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}.duet-upload-editable-table .duet-upload-item-name duet-icon{position:relative;top:2px}duet-paragraph::part(duet-paragraph){word-break:break-word}";export{g as duet_editable_table,v as duet_table,F as duet_upload}
4
+ import{h as t,r as e,c as a,H as i,g as s}from"./p-7aa97a75.js";import{i as d}from"./p-4ebf1618.js";import{f as l,d as o}from"./p-0b3f675e.js";import{i as n}from"./p-54f35a79.js";import{g as r,s as u}from"./p-ede854e1.js";import{q as h,s as b}from"./p-9052b6f5.js";import{b as p}from"./p-79a9746e.js";import{c as m}from"./p-c1325e35.js";import{p as c}from"./p-5a9d75e1.js";const f=({data:e,groupId:a,alignment:i})=>{const s=`duet-editable-table duet-editable-table-content-${a}`;return"string"==typeof e?t("td",{innerHTML:e,class:s,part:`${a}content`,style:{verticalAlign:i}}):t("td",{class:s,part:`${a}content`,style:{verticalAlign:i}},e)},g=class{constructor(t){e(this,t),this.duetTableToggle=a(this,"duetTableToggle",7),this.duetMenuClick=a(this,"duetMenuClick",7),this.sortableDefaultLabel={fi:"Järjestä",en:"Click to sort",sv:"Klicka för att sortera"},this.actionColumnLabel={en:"Actions for rows",fi:"Toiminnot rivillä",sv:"Åtgärder för rader"},this.toggleColumn=(t,e)=>{e.preventDefault();const{sort_order:a,direction:i,index:s,key:d}=t;this.duetTableToggle.emit({sort_order:a,index:s,direction:i,key:d,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{n(e)&&this.toggleColumn(t,e)},this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.actions=void 0,this.columns=void 0,this.rows=void 0,this.sortable=!1,this.groupId="",this.theme="",this.accessibleRole=void 0}componentWillLoad(){d(this)}createLabel(e){const{sort_order:a,direction:i,index:s,label:d}=e,l=r(d);return this.sortable?t("span",{class:"duet-table-label","data-index":s},t("duet-button",{size:"small",icon:a&&1===i?"action-arrow-down-small":a&&-1===i?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":r(this.sortableDefaultLabel),variation:"plain",margin:"none","icon-right":!0,onClick:t=>this.toggleColumn(e,t),onKeyDown:t=>this.handleKeyDown(e,t)},l)):l}getSortedColumns(){return[...this.columns].sort(l(["index"]))}getRowSortOrder(){return[...this.columns].sort(l(["sort_order"])).filter((t=>t.sort_order)).map((t=>-1===t.direction?`-${t.key}`:t.key))}renderTableHeader(){if(!this.columns)return;const e=this.getSortedColumns();return t("tr",{class:{"duet-table-action-header":!!this.actions}},e.map((e=>{if(!1!==e.display){const a=this.createLabel(e);return""!==a?t("th",{scope:"col"},a):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,r(this.actionColumnLabel))))}renderActions(e,a){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((i=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:a}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:i.name,theme:this.theme,iconName:i.icon,iconColor:i.color,iconSize:i.size,background:i.background}))))}renderTableBody(){const e=this.getSortedColumns(),a=this.getRowSortOrder();return[...this.rows].sort(l(a)).map(((a,i)=>t("tr",{class:{"duet-table-action-row":!!this.actions,"duet-editable-table-row":!0,[`duet-editable-table-row-${this.groupId}`]:!0},"data-meta":JSON.stringify(a.meta)},e.map((e=>{if(!1!==e.display)return t(f,{data:a[e.key]?a[e.key]:a.item,groupId:this.groupId})})),this.actions&&this.renderActions(a,i))))}render(){return t(i,{class:{[`duet-editable-table-${this.variation}`]:!0,"duet-editable-table":!0,[`duet-editable-table-${this.theme}`]:!0,"duet-editable-table-scrollable":"none-scrollable"===this.breakpoint,"duet-editable-table-sortable":this.sortable,"duet-editable-table-actions":!!this.actions,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("duet-table",{class:"duet-editable-table-table",sticky:this.sticky,stickyDistance:this.stickyDistance,margin:this.margin,theme:this.theme,variation:this.variation,breakpoint:this.breakpoint},t("table",{role:this.accessibleRole},t("caption",null,t("slot",{name:"tcaption"})),t("thead",null,t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-first"}))),this.renderTableHeader(),t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-last"})))),t("tbody",null,this.renderTableBody()),t("tfoot",null,t("tr",null,t("th",{class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{name:"tfoot"})))))))}get element(){return s(this)}};g.style=".sc-duet-editable-table-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-editable-table-actions-menu.sc-duet-editable-table{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button.sc-duet-editable-table{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon.sc-duet-editable-table .duet-icon.sc-duet-editable-table{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row.sc-duet-editable-table .duet-text-right.sc-duet-editable-table{text-align:right}.duet-editable-table-header.sc-duet-editable-table tr.sc-duet-editable-table .duet-editable-table-header-hidden.sc-duet-editable-table{padding:0 !important;font-size:0;border-bottom:0}";const y={none:0,"with-links":16*parseFloat(h),"without-links":16*parseFloat(b)},v=class{constructor(t){e(this,t),this.handleMediaQueryChange=t=>{this.matchesBreakpoint=t.matches},this.matchesBreakpoint=!0,this.theme=void 0,this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small"}connectedCallback(){this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":p[this.breakpoint]),this.mq.addEventListener("change",o(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>o(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(d(this),this.copyHeadingsToCells(),this.sticky&&"none-scrollable"===this.breakpoint&&console.warn('[DUET WARNING]: sticky and breakpoint="none-scrollable" are incompatible. Scrollable takes precedence'),this.sticky){const t=y[this.stickyDistance];this.element.querySelectorAll("thead th").forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords()}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0}copyHeadingsToCells(){const t=this.element.querySelectorAll("thead th"),e=this.element.querySelectorAll("tbody tr"),a=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{a[e]&&(t.dataset.heading=a[e])}))}))}render(){return t(i,{class:{[`duet-table-${this.variation}`]:!0,"duet-table-flattened":!this.matchesBreakpoint,"duet-table-sticky":this.matchesBreakpoint&&this.sticky,"duet-table-scrollable":"none-scrollable"===this.breakpoint,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("slot",null))}get element(){return s(this)}};v.style='duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{width:100%;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}.duet-table-flattened table,.duet-table-flattened thead,.duet-table-flattened tbody,.duet-table-flattened tfoot,.duet-table-flattened th,.duet-table-flattened td,.duet-table-flattened tr{display:block}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-fixed th:first-child,.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-fixed th:last-child,.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-fixed th,.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-fixed tbody th,.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-fixed td,.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-fixed td:first-child,.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-fixed td:last-child,.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-fixed tbody td,.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-fixed tbody td,.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-fixed tbody:first-of-type th,.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-fixed td,.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-fixed tr,.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-fixed tfoot td,.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-fixed tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-fixed table{table-layout:fixed}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td,.duet-table-fixed tbody tr td:first-child{padding:4px !important;vertical-align:text-bottom;border-bottom:0 none}.duet-table-fixed thead{display:none}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td{border-bottom:0 none}.duet-table-fixed:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}.duet-table-sortable tbody tr td:first-child,.duet-table-sortable thead tr th:first-child{padding:20px}.duet-table-sortable:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-actions table{table-layout:auto}.duet-table-actions thead th:last-child{width:1px;white-space:nowrap}.duet-editable-table-table.duet-table-flattened tr{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:auto;gap:10px}.duet-editable-table-table.duet-table-flattened tr.duet-table-action-row td:last-child::before{padding:0;content:""}.duet-editable-table-table.duet-table-flattened td{grid-column:1/2}.duet-editable-table-table.duet-table-flattened td:first-child{grid-row:1;grid-column:1}.duet-editable-table-table.duet-table-flattened td:last-child{grid-row:1;grid-column:2}';const x=[{type:"default",system_message:"unknown error",message:{fi:"Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",sv:"Ett okänt fel uppstod, försök igen.",en:"An unknown error occured, please try again."}},{type:"400",system_message:"Bad Request: The server could not understand the request due to invalid syntax.",message:{fi:"Tiedostoa ei hyväksytty.",sv:"Servern avvisade din fil.",en:"The server rejected your file."}},{type:"401",system_message:"Not Authenticated: The client must authenticate itself to get the requested response...",message:{fi:"Vain kirjautunut käyttäjä voi lähettää tiedostoja.",sv:"Du måste vara inloggad för att ladda upp filer.",en:"You need to be logged in to upload files."}},{type:"403",system_message:"No Access: The client does not have access rights to the content.",message:{fi:"Ei oikeuksia lähettää tiedostoja.",sv:"Du har inte rätt åtkomsträttigheter för att ladda upp filer.",en:"You do not have the correct access rights to upload files."}},{type:"413",system_message:"Payload too large",message:{fi:"Tiedosto oli liian vastaanotettavaksi.",sv:"Filen var för stor för servern att hantera.",en:"The file was to large for the server to handle."}},{type:"415",system_message:"Unsupported media type",message:{fi:"Tiedoston tyyppi oli väärä.",sv:"Servern avvisade filen eftersom den hade fel typ.",en:"The server rejected the file because it had the wrong type."}},{type:"429",system_message:"Too many request from same address",message:{fi:"Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",sv:"Servern har fått många förfrågningar från dig, försök igen senare.",en:"The server has received to many request from you, please try again later."}},{type:"500",system_message:"Internal Server Error",message:{fi:"Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",sv:"Servern rapporterade ett okänt fel och uppladdningen misslyckades.",en:"The server reported an unknown error and the upload failed."}},{type:"duet-upload-100",system_message:"File extension not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den type.",en:"You cannot upload files with that extension."}},{type:"duet-upload-001",system_message:"File transfer failed",message:{fi:"Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",sv:"Din anslutning till servern avbröts, försök igen.",en:"Your connection to the server was interrupted, try again."}},{type:"duet-upload-101",system_message:"File mimetype not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den typ.",en:"You cannot upload files of that type."}},{type:"duet-upload-201",system_message:"File is too large",message:{fi:"Tiedosto on liian iso.",sv:"Filen är större än tillåtet.",en:"The file is larger than permitted."}},{type:"duet-upload-202",system_message:"The combined size of all files is too large",message:{fi:"Tiedostojen yhteenlaskettu koko on liian iso.",sv:"Du har nått den maximala kombinerade filstorleken.",en:"You have reached the maximum combined filesize."}},{type:"duet-upload-301",system_message:"The maximum file limit has been reached",message:{fi:"Liitteiden maksimimäärä saavutettu.",sv:"Maximalt antal bilagor har uppnåtts.",en:"Maximum number of attachments reached."}}],k=(t,e)=>{let a={type:void 0,system_message:void 0,message:void 0};return a=(e=c(e)).filter((e=>e.type==t))[0],a||(a=e.filter((t=>"default"===t.type))[0]),a},w=(t,e)=>{const a=k(t,e),i=r(a.message);return""!==i&&i?i:a.system_message},z=({data:e,errorCodes:a})=>{const{item:i,error:s}=e,{name:d}=i,{type:l}=s;return t("span",{class:"duet-upload-item-error",role:"status"},t("duet-paragraph",{class:"duet-upload-item-name",color:"danger",margin:"none",weight:"semi-bold"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),d),t("duet-paragraph",{class:"duet-upload-item-error-label",size:"small",margin:"none",color:"danger"},w(l,a)))},T=({progress:e,name:a})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),a,t("br",null),t("duet-progress",{progress:Math.ceil(e),"aria-hidden":!0})),S=({name:e})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),e),E=({data:e,showLinks:a})=>{const{item:i,size:s,uploaded:d,url:l,meta:o}=e,{name:n}=i,r=t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),n),u=t("span",{class:"duet-upload-item-size",style:{fontSize:"14px",fontWeight:"400"}},"(",((t,e=2)=>{if(0===t)return"0 Bytes";const a=e<0?0:e,i=Math.floor(Math.log(t)/Math.log(1024));return parseFloat((t/Math.pow(1024,i)).toFixed(a))+" "+["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][i]})(s),")"),h=t("duet-paragraph",{color:"secondary",margin:"none",weight:"semi-bold"},d&&l&&a?t("duet-link",{url:l,external:!0},r):r,t("duet-spacer",{size:"xx-small",direction:"horizontal"}),u),b=o&&o.badges?t("span",null,t("duet-spacer",{size:"xx-small"}),o.badges.map((e=>t("duet-badge",{color:"primary"},e)))):void 0;return t("span",{class:"duet-upload-item-success"},t("div",null,h),b)},j=(t,e,a)=>{const{allowedMimetypes:i,allowedExtensions:s,maxBytes:d}=e;let l=!1,o=k("default",a);if(t){const{name:e,type:n,size:r}=t,u=((t,e)=>{if(!e||!t)return!0;const a=e.split(",");let i=!1;return a.forEach((e=>{const a=e.split("/"),s=t.split("/");a[0]!==s[0]||a[1]!==s[1]&&"*"!==a[1]||(i=!0)})),i})(n,i),h="all"===s||""===s||" "===s||void 0===s||((t,e)=>{if(!e)return!0;const a=t.split(".");return e.split(",").includes(a[a.length-1])})(e.toLowerCase(),s),b=((t,e)=>!e||!t||e>=t)(r,d);u||(o=k("duet-upload-101",a)),h||(o=k("duet-upload-100",a)),b||(o=k("duet-upload-201",a)),l=u&&h&&b}else l=!1;return{valid:l,errorMessage:l?void 0:r(o.message),errorSystem:l?void 0:o.system_message,errorType:l?void 0:o.type}},M=({payload:t,options:e,onFailure:a,onSuccess:i,onProgress:s})=>{const{type:d="POST",xhr:l,uri:o,argument:n=null,headers:r=null}=e;l.open(d,`${o}${n||""}`,!0);const{data:u,name:h}=t;return r&&Object.keys(r).forEach((t=>{l.setRequestHeader(t,r[t])})),"POST"===d&&(l.onreadystatechange=()=>{l.readyState===XMLHttpRequest.DONE&&l.status>=200&&l.status<300&&i(l,h,l.status),l.readyState===XMLHttpRequest.DONE&&l.status>=300&&l.status<999&&a(l,h,l.status)},s(h)),l.send(u),l},F=class{constructor(i){e(this,i),this.duetChange=a(this,"duetChange",3),this.duetBlur=a(this,"duetBlur",7),this.duetFocus=a(this,"duetFocus",7),this.duetReady=a(this,"duetReady",7),this.duetDone=a(this,"duetDone",3),this.duetState=a(this,"duetState",3),this.duetDelete=a(this,"duetDelete",3),this.duetCancel=a(this,"duetCancel",3),this.duetProgress=a(this,"duetProgress",3),this.duetUpload=a(this,"duetUpload",3),this.buttonId=m("DuetButton"),this.labelId=m("DuetLabel"),this.uploadId=m("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.internalStatusMessageLabel=void 0,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.kick=o((()=>{this.tick=Date.now()}),30),this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:a,id:i,originalEvent:s}=e;switch(a){case"delete":this.onDelete(i,s);break;case"cancel":this.onCancel(i,s)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),a=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==a&&this.duetState.emit({originalEvent:void 0,data:{valid:this.valid,from:"componentWillRender"},component:"duet-upload"})},this.getGroupFromItemData=t=>t.valid&&100===t.progress?this.DefaultGroups.success:t.progress>0&&100!==t.progress?this.DefaultGroups.inprogress:t.valid?t.pending?this.DefaultGroups.pending:t.group?t.group:"none":this.DefaultGroups.failure,this.getItemHTMLFromItemData=(e,a)=>a===this.DefaultGroups.success?t(E,{data:e,showLinks:this.showLinks}):a===this.DefaultGroups.inprogress?t(T,{progress:e.progress,name:e.item.name}):a===this.DefaultGroups.pending?t(S,{name:e.item.name}):a===this.DefaultGroups.failure?t(z,{data:e,errorCodes:this.errorCodes}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,a,i=!0)=>{try{const i=this.files.get(t);i[e]=a,this.files.set(t,i)}catch(s){}i&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(a=>{this.updateValueInMap(e,"progress",a),this.onProgress(e,a,t)})(t.loaded/t.total*100):console.log("cant read progress")},this.trackProgress=(t,e=!1)=>{e?this.filesInProgress.delete(t):this.filesInProgress.set(t,"inprogress"),0===this.filesInProgress.size&&this.onDone()},this.getFilesAsArray=()=>{const t=[],e=[];return this.files.forEach((a=>{a.valid&&!a.deleted?t.push(a):a.valid||a.deleted||e.push(a)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{this.metaData=e,this.nativeInput.click(),this.onUpload(t,e),t.stopPropagation(),t.preventDefault()},this.transferComplete=t=>{this.updateValueInMap(t,"progress",100,!1),this.trackProgress(t,!0)},this.transferDone=(t,e,a)=>{this.updateValueInMap(e,"status",a,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const a=JSON.parse(t.response);this.updateValueInMap(e,"url",a.url)}catch(i){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,a)=>{try{const{error:a}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:a.message,type:a.type},!1)}catch(i){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:a},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",w("duet-upload-001",this.errorCodes))},this.transferCanceled=t=>{this.files.delete(t),this.validateTotals(t),this.kick()},this.validateTotals=t=>{const e=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),a>e))})(0,this.maxBytesTotal),a=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&a++})),a>e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",w("duet-upload-202",this.errorCodes),!1),a&&t&&this.updateValueInMap(t,"error",w("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=a,{bytesMaxReached:e,fileMaxReached:a}},this.uploadFile=async(t,e=!1,a)=>{!e&&this.deferUpload?(this.updateValueInMap(t.item.name,"pending",!0,!1),this.updateValueInMap(t.item.name,"group","pending",!0)):e&&(this.updateValueInMap(t.item.name,"pending",!1,!1),this.updateValueInMap(t.item.name,"group",void 0,!0));try{if(!this.deferUpload||e){const e=new FormData;e.append("file",t.item),a&&e.append("key",a),e.append("uid",t.uid),e.append("name",t.item.name),e.append("metadata",JSON.stringify({uid:t.uid,url:this.uri,size:t.item.size,meta:t.meta})),t.xhr=await this.makeXHRPostRequest(e)}}catch(i){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of this.files.entries())"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,a]of this.files.entries())if(a.uid===t)return{value:a,key:e};return null},this.onDelete=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);this.files.delete(a),this.validateTotals(),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:i},component:"duet-upload"}),this.external||i.pending||this.makeXHRDeleteRequest(i),this.resetFormFields()},this.onCancel=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);if(this.files.delete(a),this.external)this.kick();else{const{xhr:t}=i;t&&t.abort()}this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:i},component:"duet-upload"})},this.onUpload=(t,e)=>{this.duetUpload.emit({originalEvent:t,metaData:e,component:"duet-upload"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,component:"duet-upload"})},this.onProgress=(t,e,a)=>{this.duetChange.emit({originalEvent:a,data:{key:t,percentComplete:e},component:"duet-upload"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,component:"duet-upload"})},this.onReady=()=>{this.duetReady.emit({component:"duet-upload"})},this.onDone=()=>{this.duetDone.emit({component:"duet-upload",data:{files:this.files}})},this.filterMap=()=>{const t=[...this.files.values()],e=[],a=[],i=[],s=[];return t.forEach((t=>{const d=this.getGroupFromItemData(t),l=this.getItemHTMLFromItemData(t,d);d===this.DefaultGroups.success?s.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.inprogress?e.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.pending?i.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.failure?a.push({uid:t.uid,item:l,group:d}):t.group&&e.push({uid:t.uid,item:l,group:t.group})})),{pending:i,failure:a,success:s,inprogress:e}},this.getColumns=t=>[{sort_order:1,direction:-1,index:0,key:t.id,label:t.label}],this.getActions=t=>this.actions.filter((e=>e.map.includes(t))),this.renderEditableTableGroups=()=>{const e=this.filterMap();return this.groups.map((a=>{const i=e[a.id];if(null==i?void 0:i.length)return t("duet-table",{variation:"plain",breakpoint:"none",role:"log",margin:this.hideGroups?"none":"auto"},t("table",{class:"duet-upload-editable-table"},t("thead",{class:"duet-upload-editable-table-header"},t("tr",null,t("th",{class:{"duet-upload-editable-table-header-hidden":this.hideGroups}},this.hideGroups?t("duet-visually-hidden",null,r(a.label)):r(a.label)))),t("tbody",null,t("tr",null,t("td",{class:"duet-upload-editable-table-data"},t("duet-editable-table",{breakpoint:"none",variation:"plain",groupId:a.id,columns:this.getColumns(a),actions:this.getActions(a.id),margin:"none",rows:i}))))))}))},this.tick=Date.now(),this.accessibleActiveDescendant=void 0,this.accessibleDescribedBy=void 0,this.accessibleControls=void 0,this.accessibleOwns=void 0,this.external=!1,this.middleware=null,this.deferUpload=!1,this.hideButton=!1,this.actions=[{icon:"action-delete",color:"color-danger",size:"x-small",background:"gray-lightest",name:"delete",map:["success","failure"],label:{fi:"Poista tiedosto",en:"Poista tiedosto",sv:"Ta bort filen"}},{icon:"navigation-close",color:"primary",size:"x-small",background:"gray-lightest",name:"cancel",map:["inprogress","pending"],label:{fi:"Keskeytä lähetys",en:"Cancel the upload",sv:"Stop överföringen"}}],this.uri=void 0,this.showLinks=!1,this.caption=void 0,this.statusLabelDefaults={fi:{inProgress:"Lähetetään {filesUploaded} lähetettävästä {filesTotal} tiedostosta",inProgressWithErrors:"Lähetetään {filesInProgress} tiedostoa, lähetetty {filesUploaded} lähetettävästä {filesTotal} tiedostosta, {filesWithErrors} tiedostossa on virheitä",done:"Kaikki {filesTotal} tiedostoa lähetetty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} tiedostoa on lähetetty onnistuneesti, {filesWithErrors} tiedostossa oli virheitä",files:"tiedostot",file:"tiedosto"},sv:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Alla {filesTotal} har lagts till",doneWithErrors:"Handling slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"All {filesTotal} added successfully",doneWithErrors:"Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",files:"File",file:"file"}},this.statusMessageLabel=r(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=r(this.buttonLabelDefaults),this.accessibleButtonLabel=void 0,this.theme="",this.disabled=!1,this.identifier=void 0,this.margin="auto",this.required=!1,this.alignment="middle",this.hideGroups=!1,this.files=new Map,this.valid=!this.required,this.labelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add attachments"},this.label=r(this.labelDefaults),this.descriptionDefaults={en:"You may attach the following filetypes: {filetypes} - as well as the most common video files. You can upload {maxbytestotal} of files at a time, and add up to {maxfiles} attachments at a time each no larger than {maxbytes}.",sv:"Du kan bifoga följande filtyper: {filetypes} - samt de vanligaste videofilerna. Du kan ladda upp {maxbytestotal} av filer åt gången, och lägga till upp till {maxfiles} bilagor åt gången varje inte större än {maxbytes}.",fi:"Voit liittää seuraavat tiedostotyypit: {filetypes} - sekä yleisimmät videotiedostot. Voit lähettää {maxbytestotal} tiedostoa kerrallaan, ja lisätä enintään {maxfiles} liitettä kerrallaan, jokainen enintään {maxbytes} kokoisena."},this.description=r(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=r(this.fileListEmptyDefaults),this.error="",this.errorCodes=x,this.name=void 0,this.maxBytes=2e8,this.maxBytesTotal=void 0,this.maxFiles=99,this.allowedExtensions="all",this.allowedMimetypes="*",this.multiple=!0,this.limitSelection=!1,this.value=void 0,this.groups=[{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}},{id:this.DefaultGroups.success,label:{fi:"Valmiit tiedostot",sv:"Files success",en:"Files success"}},{id:this.DefaultGroups.failure,label:{fi:"Tiedostot, joissa on virheitä",sv:"Filer med fel",en:"Files with errors"}},{id:this.DefaultGroups.inprogress,label:{fi:"Kesken olevat tiedostot",sv:"Filer inprogress",en:"Files inprogress"}}]}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?u(this.groups):this.statusMessageLabel,d(this),this.listenForActionEvents(),this.onReady()}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){await this.setFocus(),this.metaData=t,this.nativeInput.click()}async uploadPending(){this.uploadPendingFiles()}async refresh(){this.kick(),await this.setFocus()}async getFiles(){return!(!this.files||0===this.files.size)&&this.getFilesAsArray()}async updateValue(t,e,a){this.updateValueInMap(t,e,a)}render(){const e=this.identifier||this.uploadId,a=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),s=Math.round(this.maxBytes/1024/1024);let d=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return d=d.replace(/{maxbytes}/g,`${s.toString()} MB`),d=d.replace(/{maxbytestotal}/g,`${a.toString()} MB`),d=d.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),t(i,{class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{label:this.label,caption:d},t("slot",{name:"header"}),!this.files.size&&t("duet-label",{part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",theme:"turva"===this.theme?"turva":"default",size:"small",class:{"duet-upload-filelist-empty":!this.files.size,"duet-upload-filelist":!0,"duet-upload-filelist-filled":this.files.size},id:this.labelId,for:e},t("span",{class:{"duet-upload-filelist-empty-label":!this.files.size}},this.fileListEmpty)),!!this.files.size&&t("slot",{name:"fileheader"}),!!this.files.size&&t("duet-upload-aria-status",{invalid:this.getFilesAsArray().invalid.length,valid:this.getFilesAsArray().valid.length,inprogress:this.filesInProgress.size,total:this.files.size,statusMessageLabel:this.internalStatusMessageLabel}),!!this.files.size&&this.renderEditableTableGroups(),!!this.files.size&&t("slot",{name:"filefooter"}),t("duet-spacer",{size:"large"}),!this.hideButton&&t("duet-button",{id:this.buttonId,onClick:this.startUpload,"accessible-controls":e,disabled:this.fileMaxReached,"accessible-label":this.accessibleButtonLabel,"accessible-owns":e,size:"small",variation:"secondary",fixed:!0,icon:"action-add-circle",part:this.identifier?`${this.identifier}-button-upload`:"duet-upload-button-upload"},this.buttonLabel),t("duet-spacer",{size:"medium"}),(this.fileMaxReached||this.bytesMaxReached)&&t("duet-alert",{part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&w("duet-upload-301",this.errorCodes),this.bytesMaxReached&&w("duet-upload-202",this.errorCodes)),t("duet-spacer",{size:"medium"}),t("duet-visually-hidden",null,t("input",{ref:t=>{this.nativeInput=t},accept:this.limitSelection?`${this.allowedMimetypes},${this.allowedExtensions}`:void 0,onBlur:this.onBlur,onFocus:this.onFocus,onChange:t=>this.onChange(t),type:"file",class:{"duet-upload":!0},disabled:this.disabled,"aria-hidden":"true",required:this.required,name:this.name,id:this.identifier,multiple:this.multiple}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,a=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,a)})),e.upload.addEventListener("load",(()=>{this.transferComplete(a)})),e.upload.addEventListener("error",(()=>{this.transferFailed(a)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(a)}));let i={payload:{data:t,name:a},options:{type:"POST",uri:this.uri,xhr:e,argument:null,headers:void 0},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(i=this.middleware(i)),M(i)}makeXHRDeleteRequest(t){const{uid:e,item:a}=t,i=new XMLHttpRequest;let s={payload:{data:null,name},options:{type:"DELETE",xhr:i,uri:this.uri,argument:`?key=${e}&name=${a.name}`,headers:{"x-fileuid":e,"x-filename":a.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(s=this.middleware(s)),M(s)}async onChange(t){var e;const a=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(a)for(const i of a){const{valid:t,errorMessage:e,errorType:a,errorSystem:s}=j(i,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),d={uid:this.genHashName(),item:i,size:i.size,meta:this.metaData,uploaded:!1,valid:t,error:{type:t?void 0:a,message:t?void 0:e,system_message:t?void 0:s},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(i.name,d);const{bytesMaxReached:l,fileMaxReached:o}=this.validateTotals(i.name);l||o?this.updateValueInMap(i.name,"valid",!1,!1):t&&!this.external?await this.uploadFile(d):t&&this.external?(this.updateValueInMap(d.item.name,"pending",!0,!1),this.updateValueInMap(d.item.name,"group","pending",!0)):t||this.updateValueInMap(i.name,"valid",!1,!0),this.kick()}this.resetFormFields(),this.metaData=void 0,this.duetChange.emit({originalEvent:t,data:{files:this.files},component:"duet-upload"})}get element(){return s(this)}static get watchers(){return{valid:["watchValidHandler"]}}};F.style="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:#f5f8fa}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}.duet-upload-editable-table .duet-upload-item-name duet-icon{position:relative;top:2px}duet-paragraph::part(duet-paragraph){word-break:break-word}";export{g as duet_editable_table,v as duet_table,F as duet_upload}
@@ -1,4 +1,4 @@
1
- var __awaiter=this&&this.__awaiter||function(t,e,n,i){function o(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,a){function r(t){try{c(i.next(t))}catch(e){a(e)}}function s(t){try{c(i["throw"](t))}catch(e){a(e)}}function c(t){t.done?n(t.value):o(t.value).then(r,s)}c((i=i.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},i,o,a,r;return r={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(r[Symbol.iterator]=function(){return this}),r;function s(t){return function(e){return c([t,e])}}function c(r){if(i)throw new TypeError("Generator is already executing.");while(n)try{if(i=1,o&&(a=r[0]&2?o["return"]:r[0]?o["throw"]||((a=o["return"])&&a.call(o),0):o.next)&&!(a=a.call(o,r[1])).done)return a;if(o=0,a)r=[r[0]&2,a.value];switch(r[0]){case 0:case 1:a=r;break;case 4:n.label++;return{value:r[1],done:false};case 5:n.label++;o=r[1];r=[0];continue;case 7:r=n.ops.pop();n.trys.pop();continue;default:if(!(a=n.trys,a=a.length>0&&a[a.length-1])&&(r[0]===6||r[0]===2)){n=0;continue}if(r[0]===3&&(!a||r[1]>a[0]&&r[1]<a[3])){n.label=r[1];break}if(r[0]===6&&n.label<a[1]){n.label=a[1];a=r;break}if(a&&n.label<a[2]){n.label=a[2];n.ops.push(r);break}if(a[2])n.ops.pop();n.trys.pop();continue}r=e.call(t,n)}catch(s){r=[6,s];o=0}finally{i=a=0}if(r[0]&5)throw r[1];return{value:r[0]?r[1]:void 0,done:true}}};
1
+ var __awaiter=this&&this.__awaiter||function(t,e,n,i){function o(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,a){function r(t){try{s(i.next(t))}catch(e){a(e)}}function c(t){try{s(i["throw"](t))}catch(e){a(e)}}function s(t){t.done?n(t.value):o(t.value).then(r,c)}s((i=i.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},i,o,a,r;return r={next:c(0),throw:c(1),return:c(2)},typeof Symbol==="function"&&(r[Symbol.iterator]=function(){return this}),r;function c(t){return function(e){return s([t,e])}}function s(r){if(i)throw new TypeError("Generator is already executing.");while(n)try{if(i=1,o&&(a=r[0]&2?o["return"]:r[0]?o["throw"]||((a=o["return"])&&a.call(o),0):o.next)&&!(a=a.call(o,r[1])).done)return a;if(o=0,a)r=[r[0]&2,a.value];switch(r[0]){case 0:case 1:a=r;break;case 4:n.label++;return{value:r[1],done:false};case 5:n.label++;o=r[1];r=[0];continue;case 7:r=n.ops.pop();n.trys.pop();continue;default:if(!(a=n.trys,a=a.length>0&&a[a.length-1])&&(r[0]===6||r[0]===2)){n=0;continue}if(r[0]===3&&(!a||r[1]>a[0]&&r[1]<a[3])){n.label=r[1];break}if(r[0]===6&&n.label<a[1]){n.label=a[1];a=r;break}if(a&&n.label<a[2]){n.label=a[2];n.ops.push(r);break}if(a[2])n.ops.pop();n.trys.pop();continue}r=e.call(t,n)}catch(c){r=[6,c];o=0}finally{i=a=0}if(r[0]&5)throw r[1];return{value:r[0]?r[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * Built with Duet Design System
4
- */System.register(["./p-e71a6257.system.js","./p-33b3aba4.system.js","./p-5f6bd5db.system.js","./p-34ea0849.system.js","./p-a63f753e.system.js","./p-f69b64c9.system.js","./p-5d46f619.system.js","./p-b6d51921.system.js","./p-17063917.system.js"],(function(t){"use strict";var e,n,i,o,a,r,s,c,u,l,d,b,h;return{setters:[function(t){e=t.r;n=t.c;i=t.h;o=t.H;a=t.g},function(t){r=t.i},function(t){s=t.c},function(t){c=t.d},function(t){u=t.i},function(t){l=t.g},function(t){d=t.c;b=t.g;h=t.s},function(){},function(){}],execute:function(){var f="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:inline-block;margin:0 auto}button.duet-action-button{white-space:nowrap}button.duet-action-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:auto !important;padding:0 !important;margin:0 0 0 8px !important;color:#00294d;cursor:pointer;background:#f5f8fa;border-radius:50%;transition:background-color 300ms ease !important}.duet-theme-turva button.duet-action-button{color:#171c3a;background:#f5f5f7}button.duet-action-button duet-icon{display:block}@media (max-width: 35.9375em){button.duet-action-button{width:32px;height:32px}}button.duet-action-button:not(:disabled):hover{background:#e9ecee}.duet-theme-turva button.duet-action-button:not(:disabled):hover{background:#e9e9eb}button.duet-action-button:focus{outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva button.duet-action-button:focus{box-shadow:0 0 0 2px #171c3a !important}button.duet-action-button:active:focus{background:#dddfe1 !important;box-shadow:none}.duet-theme-turva button.duet-action-button:active:focus{background:#ddddde !important}button.duet-action-button:disabled{color:#909599;cursor:default;background:#f5f8fa;opacity:0.75}.duet-theme-turva button.duet-action-button:disabled{color:#747475;background:#f5f5f7}";var p=t("duet_action_button",function(){function t(t){var i=this;e(this,t);this.duetActionEvent=n(this,"duetActionEvent",6);this.listId=s("duet-action-button");this.emitPageEvent=c((function(t){i.duetActionEvent.emit({component:"duet-action-button",originalEvent:t,action:i.actionId,name:i.actionName,meta:i.actionMeta,id:i.listId})}));this.numbersStore="";this.theme="";this.iconName="action-arrow-left-small";this.iconColor="currentColor";this.iconSize="xx-small";this.actionName="default-action";this.actionId=undefined;this.actionMeta=undefined;this.disabled=false;this.color="";this.background="";this.accessibleTitle=true;this.accessibleDescribedBy=undefined;this.accessibleDetails=undefined;this.accessibleLabelledBy=undefined;this.accessibleDescription=undefined;this.accessibleLabelsDefaults={en:{label:"Click to activate action"},fi:{label:"Klikkaa toiminnon aktivointiin"},sv:{label:"Klicka för att aktivera åtgärd"}};this.accessibleLabels=l(this.accessibleLabelsDefaults);this.accessibleControls=""}t.prototype.onKeyboardDown=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){if(u(t)){this.emitPageEvent(t)}return[2]}))}))};t.prototype.getTitle=function(){var t="";if(typeof this.accessibleTitle==="string"){t=this.accessibleTitle}if(this.accessibleTitle===true){t=d("".concat(this.actionName))}return t};t.prototype.onMouseHandler=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){t.preventDefault();this.duetActionEvent.emit({component:"duet-action-button",originalEvent:t,action:this.actionName,id:this.actionId,meta:this.actionMeta});return[2]}))}))};t.prototype.componentWillLoad=function(){r(this)};t.prototype.render=function(){var t;var e=this;var n=this.color==="currentColor"?"currentColor":b(this.color,this.theme);var a=b(this.background,this.theme);var r=a?h(a,-.1):a;var s=a?"\n button.duet-action-button {\n background: ".concat(a," !important;\n }\n button.duet-action-button:not(:disabled):hover {\n background: ").concat(r," !important;\n }\n "):"";var c={color:n,"border-color":b(this.iconColor,this.theme),"border-width":"1px","border-style":"solid"};return i(o,{onKeyDown:function(t){return e.onKeyboardDown(t)}},i("style",{innerHTML:s}),i("button",{part:"button",style:c,disabled:this.disabled,id:this.listId,class:(t={"duet-action-button":true,"duet-action-button--disabled":this.disabled},t["duet-action-button--".concat(this.theme)]=this.theme!=="",t),type:"button",onClick:function(t){return e.onMouseHandler(t)},"aria-label":this.accessibleLabels.label,"aria-labelledby":this.accessibleLabelledBy,"aria-description":this.accessibleDescription,"aria-describedby":this.accessibleDescribedBy,"aria-details":this.accessibleDetails,"aria-controls":this.accessibleControls,title:this.getTitle()},i("duet-icon",{part:"icon",name:this.iconName,color:this.iconColor,margin:"none",size:this.iconSize}),i("duet-visually-hidden",null,i("slot",null))))};Object.defineProperty(t.prototype,"element",{get:function(){return a(this)},enumerable:false,configurable:true});return t}());p.style=f}}}));
4
+ */System.register(["./p-9c0ae091.system.js","./p-33b3aba4.system.js","./p-5f6bd5db.system.js","./p-34ea0849.system.js","./p-a63f753e.system.js","./p-f69b64c9.system.js","./p-5d46f619.system.js","./p-b6d51921.system.js","./p-17063917.system.js"],(function(t){"use strict";var e,n,i,o,a,r,c,s,u,l,d,b,h;return{setters:[function(t){e=t.r;n=t.c;i=t.h;o=t.H;a=t.g},function(t){r=t.i},function(t){c=t.c},function(t){s=t.d},function(t){u=t.i},function(t){l=t.g},function(t){d=t.c;b=t.g;h=t.s},function(){},function(){}],execute:function(){var f="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:inline-block;margin:0 auto}button.duet-action-button{white-space:nowrap}button.duet-action-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:auto !important;padding:0 !important;margin:0 0 0 8px !important;color:#00294d;cursor:pointer;background:#f5f8fa;border-radius:50%;transition:background-color 300ms ease !important}.duet-theme-turva button.duet-action-button{color:#171c3a;background:#f5f5f7}button.duet-action-button duet-icon{display:block}@media (max-width: 35.9375em){button.duet-action-button{width:32px;height:32px}}button.duet-action-button:not(:disabled):hover{background:#e9ecee}.duet-theme-turva button.duet-action-button:not(:disabled):hover{background:#e9e9eb}button.duet-action-button:focus{outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-theme-turva button.duet-action-button:focus{box-shadow:0 0 0 2px #171c3a !important}button.duet-action-button:active:focus{background:#dddfe1 !important;box-shadow:none}.duet-theme-turva button.duet-action-button:active:focus{background:#ddddde !important}button.duet-action-button:disabled{color:#909599;cursor:default;background:#f5f8fa;opacity:0.75}.duet-theme-turva button.duet-action-button:disabled{color:#747475;background:#f5f5f7}";var p=t("duet_action_button",function(){function t(t){var i=this;e(this,t);this.duetActionEvent=n(this,"duetActionEvent",6);this.listId=c("duet-action-button");this.emitPageEvent=s((function(t){i.duetActionEvent.emit({component:"duet-action-button",originalEvent:t,action:i.actionId,name:i.actionName,meta:i.actionMeta,id:i.listId})}));this.numbersStore="";this.theme="";this.iconName="action-arrow-left-small";this.iconColor="currentColor";this.iconSize="xx-small";this.actionName="default-action";this.actionId=undefined;this.actionMeta=undefined;this.disabled=false;this.color="";this.background="";this.accessibleTitle=true;this.accessibleDescribedBy=undefined;this.accessibleDetails=undefined;this.accessibleLabelledBy=undefined;this.accessibleDescription=undefined;this.accessibleLabelsDefaults={en:{label:"Click to activate action"},fi:{label:"Klikkaa toiminnon aktivointiin"},sv:{label:"Klicka för att aktivera åtgärd"}};this.accessibleLabels=l(this.accessibleLabelsDefaults);this.accessibleControls=""}t.prototype.onKeyboardDown=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){if(u(t)){this.emitPageEvent(t)}return[2]}))}))};t.prototype.getTitle=function(){var t="";if(typeof this.accessibleTitle==="string"){t=this.accessibleTitle}if(this.accessibleTitle===true){t=d("".concat(this.actionName))}return t};t.prototype.onMouseHandler=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){t.preventDefault();this.duetActionEvent.emit({component:"duet-action-button",originalEvent:t,action:this.actionName,id:this.actionId,meta:this.actionMeta});return[2]}))}))};t.prototype.componentWillLoad=function(){r(this)};t.prototype.render=function(){var t;var e=this;var n=this.color==="currentColor"?"currentColor":b(this.color,this.theme);var a=b(this.background,this.theme);var r=a?h(a,-.1):a;var c=a?"\n button.duet-action-button {\n background: ".concat(a," !important;\n }\n button.duet-action-button:not(:disabled):hover {\n background: ").concat(r," !important;\n }\n "):"";var s={color:n,"border-color":b(this.iconColor,this.theme),"border-width":"1px","border-style":"solid"};return i(o,{onKeyDown:function(t){return e.onKeyboardDown(t)}},i("style",{innerHTML:c}),i("button",{part:"button",style:s,disabled:this.disabled,id:this.listId,class:(t={"duet-action-button":true,"duet-action-button--disabled":this.disabled},t["duet-action-button--".concat(this.theme)]=this.theme!=="",t),type:"button",onClick:function(t){return e.onMouseHandler(t)},"aria-label":this.accessibleLabels.label,"aria-labelledby":this.accessibleLabelledBy,"aria-description":this.accessibleDescription,"aria-describedby":this.accessibleDescribedBy,"aria-details":this.accessibleDetails,"aria-controls":this.accessibleControls,title:this.getTitle()},i("duet-icon",{part:"icon",name:this.iconName,color:this.iconColor,margin:"none",size:this.iconSize}),i("duet-visually-hidden",null,i("slot",null))))};Object.defineProperty(t.prototype,"element",{get:function(){return a(this)},enumerable:false,configurable:true});return t}());p.style=f}}}));
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- System.register(["./p-e71a6257.system.js","./p-33b3aba4.system.js"],(function(e){"use strict";var t,o,n,i,a,r;return{setters:[function(e){t=e.r;o=e.c;n=e.h;i=e.H;a=e.g},function(e){r=e.i}],execute:function(){var s='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:fixed;right:0;bottom:0;left:0;z-index:950;display:block;width:100%;box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}@media (min-width: 48em){:host{right:28px;bottom:28px;left:auto;width:25rem}}:host(:focus){outline:0}:host(.user-is-tabbing:focus){border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing.duet-theme-turva:focus){box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-cookie-consent{padding:20px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;color:white !important;background-color:rgba(0, 21, 39, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent{background:rgba(0, 21, 39, 0.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.duet-cookie-consent.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";background-color:rgba(12, 14, 29, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent.duet-theme-turva{background:rgba(12, 14, 29, 0.8)}}@media (min-width: 48em){.duet-cookie-consent{padding:20px;border-radius:4px}}.duet-cookie-consent-content{display:flex;align-items:center;max-width:1110px;margin:0 auto}.duet-cookie-consent-content .expand{flex:1}::slotted(a){font-weight:600;color:white !important;text-decoration:underline;white-space:nowrap}::slotted(a[target=_blank]){padding-right:16px;background:url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjUgMmExLjUgMS41IDAgMDEuMTQgM0gzLjc1Yy0uMzggMC0uNy4yOC0uNzQuNjVsLS4wMS4xdjE0LjVjMCAuMzguMjguNy42NS43NGwuMS4wMWgxNC41Yy4zOCAwIC43LS4yOC43NC0uNjVsLjAxLS4xdi02Ljg5YTEuNSAxLjUgMCAwMTMgMHY2Ljg5QTMuNzUgMy43NSAwIDAxMTguMjUgMjRIMy43NUEzLjc1IDMuNzUgMCAwMTAgMjAuMjVWNS43NUEzLjc1IDMuNzUgMCAwMTMuNzUgMnptMTItMmMuNzggMCAxLjQyLjYgMS41IDEuMzZWNy41YTEuNSAxLjUgMCAwMS0zIC4xNFY1LjEybC01LjQ0IDUuNDRhMS41IDEuNSAwIDAxLTIuMjItMmwuMS0uMTJMMTguODggM0gxNi41QTEuNSAxLjUgMCAwMTE1IDEuNjRWMS41YzAtLjc4LjYtMS40MiAxLjM2LTEuNWguMTR6Ii8+PC9zdmc+") no-repeat right 50%;background-size:12px 10px}::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva ::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}';var u=e("duet_cookie_consent",function(){function e(e){var n=this;t(this,e);this.duetCookieConsent=o(this,"duetCookieConsent",7);this.handleClick=function(e){e.preventDefault();n.duetCookieConsent.emit({component:"duet-cookie-consent"})};this.accessibleLabel="Hyväksyn evästeiden käytön";this.theme=""}e.prototype.componentWillLoad=function(){r(this)};e.prototype.render=function(){return n(i,{tabindex:"0"},n("div",{class:{"duet-cookie-consent":true,"duet-theme-turva":this.theme==="turva"}},n("div",{class:"duet-cookie-consent-content"},n("div",{class:"expand"},n("slot",null)),n("duet-spacer",{size:"large",direction:"horizontal"}),n("div",null,n("duet-button",{variation:"negative",size:"small",onClick:this.handleClick,margin:"none","aria-label":this.accessibleLabel,theme:this.theme},"OK")))))};Object.defineProperty(e.prototype,"element",{get:function(){return a(this)},enumerable:false,configurable:true});return e}());u.style=s}}}));
4
+ System.register(["./p-9c0ae091.system.js","./p-33b3aba4.system.js"],(function(e){"use strict";var t,o,n,i,a,r;return{setters:[function(e){t=e.r;o=e.c;n=e.h;i=e.H;a=e.g},function(e){r=e.i}],execute:function(){var s='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:fixed;right:0;bottom:0;left:0;z-index:950;display:block;width:100%;box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}@media (min-width: 48em){:host{right:28px;bottom:28px;left:auto;width:25rem}}:host(:focus){outline:0}:host(.user-is-tabbing:focus){border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing.duet-theme-turva:focus){box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-cookie-consent{padding:20px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;color:white !important;background-color:rgba(0, 21, 39, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent{background:rgba(0, 21, 39, 0.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.duet-cookie-consent.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";background-color:rgba(12, 14, 29, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent.duet-theme-turva{background:rgba(12, 14, 29, 0.8)}}@media (min-width: 48em){.duet-cookie-consent{padding:20px;border-radius:4px}}.duet-cookie-consent-content{display:flex;align-items:center;max-width:1110px;margin:0 auto}.duet-cookie-consent-content .expand{flex:1}::slotted(a){font-weight:600;color:white !important;text-decoration:underline;white-space:nowrap}::slotted(a[target=_blank]){padding-right:16px;background:url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjUgMmExLjUgMS41IDAgMDEuMTQgM0gzLjc1Yy0uMzggMC0uNy4yOC0uNzQuNjVsLS4wMS4xdjE0LjVjMCAuMzguMjguNy42NS43NGwuMS4wMWgxNC41Yy4zOCAwIC43LS4yOC43NC0uNjVsLjAxLS4xdi02Ljg5YTEuNSAxLjUgMCAwMTMgMHY2Ljg5QTMuNzUgMy43NSAwIDAxMTguMjUgMjRIMy43NUEzLjc1IDMuNzUgMCAwMTAgMjAuMjVWNS43NUEzLjc1IDMuNzUgMCAwMTMuNzUgMnptMTItMmMuNzggMCAxLjQyLjYgMS41IDEuMzZWNy41YTEuNSAxLjUgMCAwMS0zIC4xNFY1LjEybC01LjQ0IDUuNDRhMS41IDEuNSAwIDAxLTIuMjItMmwuMS0uMTJMMTguODggM0gxNi41QTEuNSAxLjUgMCAwMTE1IDEuNjRWMS41YzAtLjc4LjYtMS40MiAxLjM2LTEuNWguMTR6Ii8+PC9zdmc+") no-repeat right 50%;background-size:12px 10px}::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva ::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}';var u=e("duet_cookie_consent",function(){function e(e){var n=this;t(this,e);this.duetCookieConsent=o(this,"duetCookieConsent",7);this.handleClick=function(e){e.preventDefault();n.duetCookieConsent.emit({component:"duet-cookie-consent"})};this.accessibleLabel="Hyväksyn evästeiden käytön";this.theme=""}e.prototype.componentWillLoad=function(){r(this)};e.prototype.render=function(){return n(i,{tabindex:"0"},n("div",{class:{"duet-cookie-consent":true,"duet-theme-turva":this.theme==="turva"}},n("div",{class:"duet-cookie-consent-content"},n("div",{class:"expand"},n("slot",null)),n("duet-spacer",{size:"large",direction:"horizontal"}),n("div",null,n("duet-button",{variation:"negative",size:"small",onClick:this.handleClick,margin:"none","aria-label":this.accessibleLabel,theme:this.theme},"OK")))))};Object.defineProperty(e.prototype,"element",{get:function(){return a(this)},enumerable:false,configurable:true});return e}());u.style=s}}}));
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as e,h as r,F as a,H as t,g as o}from"./p-6999702a.js";import{i as s}from"./p-4ebf1618.js";import{g as i}from"./p-ede854e1.js";import"./p-5a9d75e1.js";const n=class{constructor(r){e(this,r),this.observers=[],this.breadcrumbsAriaLabel=i({fi:"Murupolku",sv:"Ströbröd",en:"Breadcrumbs"}),this.children=void 0,this.theme=""}componentWillLoad(){s(this),this.children=Array.from(this.element.children)}connectedCallback(){Array.from(this.element.children).forEach((e=>{const r=new MutationObserver((()=>this.children=Array.from(this.element.children)));r.observe(e,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),this.observers=[...this.observers,r]}))}disconnectedCallback(){this.observers.forEach((e=>e.disconnect())),this.observers=[]}render(){return r(t,null,r("nav",{"aria-label":this.breadcrumbsAriaLabel,class:{"duet-breadcrumbs":!0,"duet-theme-turva":"turva"===this.theme}},r("ol",null,this.children.map(((e,t)=>r(a,null,t>0&&r("li",{"aria-hidden":"true"},r("duet-icon",{class:"duet-breadrumbs-arrow",size:"auto",icon:'<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" role="img"><path d="M19.5 12a2.3 2.3 0 0 1-.78 1.729L7.568 23.54a1.847 1.847 0 0 1-2.439-2.773l9.752-8.579a.25.25 0 0 0 0-.376L5.129 3.233A1.847 1.847 0 0 1 7.568.46l11.148 9.808A2.31 2.31 0 0 1 19.5 12z"/></svg>',margin:"none",color:"currentColor"})),r("li",{innerHTML:e.outerHTML}),r("div",{class:"hide"},r("slot",null))))))))}get element(){return o(this)}};n.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block}.duet-breadcrumbs{font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-breadcrumbs ol{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;padding:10px 16px;color:#00294d;list-style:none;background:#f3f9fc;border-bottom:1px solid #e1e3e6}@media (min-width: 62em){.duet-breadcrumbs ol{padding:10px 36px}}.duet-breadcrumbs.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-breadcrumbs.duet-theme-turva ol{color:#171c3a;background:#f5f5f7}.duet-breadcrumbs .duet-breadrumbs-arrow{display:inherit;align-items:center;justify-content:center;width:0.375rem;height:0.375rem}.duet-breadcrumbs .hide{display:none}';export{n as duet_breadcrumbs}
4
+ import{r as e,h as r,F as a,H as t,g as o}from"./p-7aa97a75.js";import{i as s}from"./p-4ebf1618.js";import{g as i}from"./p-ede854e1.js";import"./p-5a9d75e1.js";const n=class{constructor(r){e(this,r),this.observers=[],this.breadcrumbsAriaLabel=i({fi:"Murupolku",sv:"Ströbröd",en:"Breadcrumbs"}),this.children=void 0,this.theme=""}componentWillLoad(){s(this),this.children=Array.from(this.element.children)}connectedCallback(){Array.from(this.element.children).forEach((e=>{const r=new MutationObserver((()=>this.children=Array.from(this.element.children)));r.observe(e,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),this.observers=[...this.observers,r]}))}disconnectedCallback(){this.observers.forEach((e=>e.disconnect())),this.observers=[]}render(){return r(t,null,r("nav",{"aria-label":this.breadcrumbsAriaLabel,class:{"duet-breadcrumbs":!0,"duet-theme-turva":"turva"===this.theme}},r("ol",null,this.children.map(((e,t)=>r(a,null,t>0&&r("li",{"aria-hidden":"true"},r("duet-icon",{class:"duet-breadrumbs-arrow",size:"auto",icon:'<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" role="img"><path d="M19.5 12a2.3 2.3 0 0 1-.78 1.729L7.568 23.54a1.847 1.847 0 0 1-2.439-2.773l9.752-8.579a.25.25 0 0 0 0-.376L5.129 3.233A1.847 1.847 0 0 1 7.568.46l11.148 9.808A2.31 2.31 0 0 1 19.5 12z"/></svg>',margin:"none",color:"currentColor"})),r("li",{innerHTML:e.outerHTML}),r("div",{class:"hide"},r("slot",null))))))))}get element(){return o(this)}};n.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block}.duet-breadcrumbs{font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-breadcrumbs ol{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;padding:10px 16px;color:#00294d;list-style:none;background:#f3f9fc;border-bottom:1px solid #e1e3e6}@media (min-width: 62em){.duet-breadcrumbs ol{padding:10px 36px}}.duet-breadcrumbs.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-breadcrumbs.duet-theme-turva ol{color:#171c3a;background:#f5f5f7}.duet-breadcrumbs .duet-breadrumbs-arrow{display:inherit;align-items:center;justify-content:center;width:0.375rem;height:0.375rem}.duet-breadcrumbs .hide{display:none}';export{n as duet_breadcrumbs}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- System.register(["./p-e71a6257.system.js"],(function(e){"use strict";var t;return{setters:[function(e){t=e.h}],execute:function(){var s=e("f",(function(e){if("setFocus"in e){e.setFocus()}else{e.focus()}}));var u=e("F",(function(e){var u=e.moveFocusTo;return t("div",{class:"duet-focus-guard","aria-hidden":"true",tabIndex:0,onFocus:function(){return s(u)}})}))}}}));
4
+ System.register(["./p-9c0ae091.system.js"],(function(e){"use strict";var t;return{setters:[function(e){t=e.h}],execute:function(){var s=e("f",(function(e){if("setFocus"in e){e.setFocus()}else{e.focus()}}));var u=e("F",(function(e){var u=e.moveFocusTo;return t("div",{class:"duet-focus-guard","aria-hidden":"true",tabIndex:0,onFocus:function(){return s(u)}})}))}}}));
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{h as o}from"./p-6999702a.js";const s=o=>{"setFocus"in o?o.setFocus():o.focus()},a=({moveFocusTo:a})=>o("div",{class:"duet-focus-guard","aria-hidden":"true",tabIndex:0,onFocus:()=>s(a)});export{a as F,s as f}
4
+ import{h as o}from"./p-7aa97a75.js";const s=o=>{"setFocus"in o?o.setFocus():o.focus()},a=({moveFocusTo:a})=>o("div",{class:"duet-focus-guard","aria-hidden":"true",tabIndex:0,onFocus:()=>s(a)});export{a as F,s as f}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{h as o,F as t,r as e,c as s,H as i,g as c}from"./p-6999702a.js";import{i as b}from"./p-4ebf1618.js";import{d}from"./p-0b3f675e.js";import{n as m,f as u,o as l,b as x,c as a}from"./p-54f35a79.js";import{g as h,a as n}from"./p-ede854e1.js";import{p as r}from"./p-5a9d75e1.js";const p=({item:e,search:s="",selected:i})=>{const c=""!==s?new RegExp("("+s.split(" ").join("|")+")","gi"):void 0;return o(t,null,i&&o("duet-icon",{class:"option-icon",name:"messaging-checked",size:"xx-small",margin:"none"}),c?o("span",{class:"option-container","aria-hidden":"true"},o("span",{innerHTML:e.name.replace(c,'<span class="highlight">$&</span>')})):e.name,e.tags&&o("span",{class:"option-tags"},e.tags.join(", ")))},v=({item:t,active:e,total:s,selected:i,label:c,clickHandler:b=(o=>{o.preventDefault()}),keyHandler:d=(o=>{o.preventDefault()}),search:m})=>o("li",{class:{"list-item":!0,option:!0,active:e,selected:i},id:e?"active_item":"","data-index":t.id,"aria-selected":e?"true":void 0,"aria-current":i?"true":void 0,role:"option","aria-label":c||`${t.name}, (${t.id+1} of ${s})`},o("a",{tabindex:"-1",onClick:o=>b(o),onKeyUp:o=>d(o),class:"option-link","aria-label":c||`${t.name}, (${t.id+1} of ${s})`,"aria-hidden":"true"},o(p,{item:t,search:m,selected:i}))),g=class{constructor(o){e(this,o),this.duetChange=s(this,"duetChange",3),this.resizeObserver=new ResizeObserver(d((o=>{var t,e;if(1===(null==o?void 0:o.length)){const s=null===(e=null===(t=o[0])||void 0===t?void 0:t.target)||void 0===e?void 0:e.getBoundingClientRect().width;this.listContainer.style.width=`${s+1}px`}}),100)),this.processedItems=null,this.inputWidth=0,this.inputValue="",this.selectionMsg="",this.listOpen=!1,this.selectedItems=new Set,this.activeItem=void 0,this.accessibleLabelDefaults={en:{heading:"Select:",item:"{name}, ({current} of {total})",itemFiltered:"{name}, ({current} of {total}, {hiddenItems} filtered)"},fi:{heading:"Valitse:",item:"{name}, ({current}/{total})",itemFiltered:"{name}, ({current}/{total}, {hiddenItems} suodatettu)"},sv:{heading:"Välj:",item:"{name}, ({current} av {total})",itemFiltered:"{name}, ({current} av {total}, {hiddenItems} filtrerade)"}},this.accessibleLabels=h(r(this.accessibleLabelDefaults),n()),this.theme="",this.force=!1,this.items=void 0,this.formatter=o=>o&&o.name?o.name:"",this.value=void 0}activeItemHandler(o){this.input.accessibleActiveDescendant=this.listOpen&&(o||0===o)?"active_item":""}handleDocumentClick(o){o.composedPath().every((o=>o!==this.element))&&(this.updateInputText(!0),this.listOpen=!1)}async formatItem(o){return this.formatter(o)}componentWillLoad(){b(this)}connectedCallback(){this.items=this.processedItems=r(this.items),this.input=this.element.querySelector("duet-input"),this.input.addEventListener("duetChange",this.updateInputValue.bind(this)),this.input.addEventListener("click",(()=>{this.listOpen=!!this.inputValue.length})),this.element.addEventListener("keydown",this.handleInputKeyDownEvent.bind(this)),this.input.accessibleAutocomplete="list",this.input.accessibleControls="duet-combobox-list-element"}disconnectedCallback(){this.input.removeEventListener("duetChange",this.updateInputValue.bind(this)),this.input.removeEventListener("click",(()=>this.listOpen=!!this.inputValue.length)),this.element.removeEventListener("keydown",this.handleInputKeyDownEvent.bind(this)),this.listElement.removeEventListener("click",(o=>{o.stopPropagation()})),this.resizeObserver.disconnect()}componentDidLoad(){this.resizeObserver.observe(this.input),this.listElement.addEventListener("click",(o=>{o.stopPropagation()}))}onListClick(o,t){return o.preventDefault(),this.updateSelectedItems(t.id),this.listOpen=!1,this.listOpen}shouldListBeFiltered(){if(this.selectedItems.size&&this.input.value===this.inputValue){const o=this.items.filter((o=>this.selectedItems.has(o.id)));return!(this.formatter(o).toLowerCase()===this.input.value.toLowerCase())}return!0}returnFilteredOrNonFiltered(){return this.processedItems?this.shouldListBeFiltered()?this.getFilteredItems():this.sortFilteredItems(this.processedItems):[]}async updateSelectedItems(o){this.selectedItems.clear(),this.selectedItems&&(this.selectedItems.has(o)?this.selectedItems.delete(o):this.selectedItems.add(o)),await this.updateInputText()}async updateInputText(o=!1){const t=0===this.selectedItems.size?[]:this.items.filter((o=>this.selectedItems.has(o.id)));1===this.selectedItems.size&&(this.input.value="",this.input.value=await this.formatItem(t[0]),this.input.scrollLeft=this.input.scrollWidth,this.activeItem=void 0,this.value=await this.formatItem(t[0]),this.duetChange.emit({value:t[0].value,item:t[0],component:"duet-combobox"})),o&&0===this.selectedItems.size&&(this.force&&(this.inputValue="",this.input.value=""),this.activeItem=void 0),this.listOpen=!1}updateInputValue(o){var t;this.inputValue=o.detail.value,this.listOpen=String(this.inputValue).length>0&&(null===(t=this.getFilteredItems())||void 0===t?void 0:t.length)>0}handleInputKeyDownEvent(o){if(this.input.accessibleActiveDescendant=void 0,m(o))return o.preventDefault(),this.selectActiveItem(),this.updateInputText(!1),void(this.listOpen=!1);if(u(o)||l(o))return this.updateInputText(!0),void(this.listOpen=!1);let t=this.activeItem;if(x(o)?(o.preventDefault(),t=this.activeItem-1):a(o)&&(o.preventDefault(),t=this.listOpen?this.activeItem+1:this.activeItem,this.listOpen=!0),a(o)||x(o)){const o=this.shouldListBeFiltered()?this.getFilteredItems():this.processedItems;(t<0||!t)&&(t=0),t>=o.length&&(t=o.length-1),this.input.accessibleActiveDescendant="active_item",this.activeItem=t,this.scrollToActive()}this.announceActive()}selectActiveItem(){if(void 0===this.activeItem)return;const o=this.returnFilteredOrNonFiltered();this.updateSelectedItems(o[this.activeItem].id)}announceActive(o){o||(o=this.returnFilteredOrNonFiltered()),void 0!==this.activeItem&&-1!==this.activeItem&&(this.selectionMsg=structuredClone(this.formatLabel(o[this.activeItem],o.length,this.items.length)))}scrollToActive(){const o=this.listElement.querySelector(".active");o&&o.scrollIntoView({behavior:"smooth",block:"center"})}formatLabel(o,t,e){return o&&void 0!==e?(t===e?this.accessibleLabels.item:this.accessibleLabels.itemFiltered).replace("{name}",String(o.name)).replace("{current}",String(this.activeItem+1)).replace("{total}",String(t)).replace("{hiddenItems}",String(e-t)):""}getFilteredItems(){const o=this.processedItems.filter((o=>{var t,e,s,i;return(null===(t=String(o.value))||void 0===t?void 0:t.toLowerCase().startsWith(null===(e=this.inputValue)||void 0===e?void 0:e.toLowerCase()))||(null===(s=String(o.name))||void 0===s?void 0:s.toLowerCase().startsWith(null===(i=this.inputValue)||void 0===i?void 0:i.toLowerCase()))||this.selectedItems.has(o.id)}));return this.sortFilteredItems(o)}sortFilteredItems(o){return o.length>0&&o.filter((o=>this.selectedItems.has(o.id))).forEach((t=>{const e=o.indexOf(t);o.splice(e,1),o.unshift(t)})),o}render(){const t=this.returnFilteredOrNonFiltered();return o(i,{role:"combobox","aria-expanded":this.listOpen?"true":"false","aria-owns":"duet-combobox-list-element","aria-haspopup":"listbox",class:{"duet-combobox":!0,[`duet-theme-${this.theme}`]:!0}},o("slot",null),o("div",{role:"list",class:{"duet-combobox-list":!0,open:this.listOpen},ref:o=>this.listContainer=o},o("ul",{class:{"duet-combobox-listbox-open":this.listOpen,"duet-combobox-listbox":!0},role:"listbox",ref:o=>this.listElement=o,id:"duet-combobox-list-element"},t.map(((e,s)=>o(v,{item:e,active:s===this.activeItem,selected:this.selectedItems.has(e.id),search:this.inputValue,total:t.length,clickHandler:o=>this.onListClick(o,e),label:this.formatLabel(e,this.returnFilteredOrNonFiltered().length,this.items.length)}))))))}get element(){return c(this)}static get watchers(){return{activeItem:["activeItemHandler"]}}};g.style='.sc-duet-combobox-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;width:auto;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#00294d}.sc-duet-combobox-h a.sc-duet-combobox{color:#00294d;transition:none}.duet-theme-turva.sc-duet-combobox-h{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}.duet-theme-turva.sc-duet-combobox-h a.sc-duet-combobox{color:#171c3a}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.sc-duet-combobox .option-tags.sc-duet-combobox{color:#747475}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.selected.sc-duet-combobox{background:#f4cfd6}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover{color:white;background:#c60c30}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox .option-tags.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus .option-tags.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover .option-tags.sc-duet-combobox{color:white}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox a.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus a.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover a.sc-duet-combobox{color:white}.duet-combobox-list.sc-duet-combobox{position:absolute;top:calc(100% - 12px);height:0;overflow:hidden;background:white;border-radius:0 4px;box-shadow:0 2px 10px 0 rgba(0, 41, 77, 0.1);opacity:0}.duet-combobox-list.open.sc-duet-combobox{z-index:700;display:block;height:auto;opacity:1}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox{max-height:200px;padding:0.75rem 0;margin:0;overflow-y:scroll;font-weight:600;list-style:none;cursor:pointer;scroll-behavior:smooth}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox{padding:4px 0}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:not(.selected){padding-left:16px}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:not(.selected) .highlight.sc-duet-combobox{text-decoration:underline}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.sc-duet-combobox .option-link.sc-duet-combobox{display:block;width:100%}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.sc-duet-combobox .option-tags.sc-duet-combobox{float:right;padding-right:0.875rem;font-weight:400;color:#909599}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option-link.sc-duet-combobox{display:block;width:100%}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.selected.sc-duet-combobox{padding-left:0;background:#cde5f1}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.selected.option.sc-duet-combobox .option-icon.sc-duet-combobox{padding:0 8px 0 8px}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.selected.option.sc-duet-combobox .option-tags.sc-duet-combobox{color:#909599}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover{color:white;background:#0077b3}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox .option-tags.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus .option-tags.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover .option-tags.sc-duet-combobox{color:white}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox a.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus a.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover a.sc-duet-combobox{color:white}';export{g as duet_combobox}
4
+ import{h as o,F as t,r as e,c as s,H as i,g as c}from"./p-7aa97a75.js";import{i as b}from"./p-4ebf1618.js";import{d}from"./p-0b3f675e.js";import{n as m,f as u,o as l,b as x,c as a}from"./p-54f35a79.js";import{g as h,a as n}from"./p-ede854e1.js";import{p as r}from"./p-5a9d75e1.js";const p=({item:e,search:s="",selected:i})=>{const c=""!==s?new RegExp("("+s.split(" ").join("|")+")","gi"):void 0;return o(t,null,i&&o("duet-icon",{class:"option-icon",name:"messaging-checked",size:"xx-small",margin:"none"}),c?o("span",{class:"option-container","aria-hidden":"true"},o("span",{innerHTML:e.name.replace(c,'<span class="highlight">$&</span>')})):e.name,e.tags&&o("span",{class:"option-tags"},e.tags.join(", ")))},v=({item:t,active:e,total:s,selected:i,label:c,clickHandler:b=(o=>{o.preventDefault()}),keyHandler:d=(o=>{o.preventDefault()}),search:m})=>o("li",{class:{"list-item":!0,option:!0,active:e,selected:i},id:e?"active_item":"","data-index":t.id,"aria-selected":e?"true":void 0,"aria-current":i?"true":void 0,role:"option","aria-label":c||`${t.name}, (${t.id+1} of ${s})`},o("a",{tabindex:"-1",onClick:o=>b(o),onKeyUp:o=>d(o),class:"option-link","aria-label":c||`${t.name}, (${t.id+1} of ${s})`,"aria-hidden":"true"},o(p,{item:t,search:m,selected:i}))),g=class{constructor(o){e(this,o),this.duetChange=s(this,"duetChange",3),this.resizeObserver=new ResizeObserver(d((o=>{var t,e;if(1===(null==o?void 0:o.length)){const s=null===(e=null===(t=o[0])||void 0===t?void 0:t.target)||void 0===e?void 0:e.getBoundingClientRect().width;this.listContainer.style.width=`${s+1}px`}}),100)),this.processedItems=null,this.inputWidth=0,this.inputValue="",this.selectionMsg="",this.listOpen=!1,this.selectedItems=new Set,this.activeItem=void 0,this.accessibleLabelDefaults={en:{heading:"Select:",item:"{name}, ({current} of {total})",itemFiltered:"{name}, ({current} of {total}, {hiddenItems} filtered)"},fi:{heading:"Valitse:",item:"{name}, ({current}/{total})",itemFiltered:"{name}, ({current}/{total}, {hiddenItems} suodatettu)"},sv:{heading:"Välj:",item:"{name}, ({current} av {total})",itemFiltered:"{name}, ({current} av {total}, {hiddenItems} filtrerade)"}},this.accessibleLabels=h(r(this.accessibleLabelDefaults),n()),this.theme="",this.force=!1,this.items=void 0,this.formatter=o=>o&&o.name?o.name:"",this.value=void 0}activeItemHandler(o){this.input.accessibleActiveDescendant=this.listOpen&&(o||0===o)?"active_item":""}handleDocumentClick(o){o.composedPath().every((o=>o!==this.element))&&(this.updateInputText(!0),this.listOpen=!1)}async formatItem(o){return this.formatter(o)}componentWillLoad(){b(this)}connectedCallback(){this.items=this.processedItems=r(this.items),this.input=this.element.querySelector("duet-input"),this.input.addEventListener("duetChange",this.updateInputValue.bind(this)),this.input.addEventListener("click",(()=>{this.listOpen=!!this.inputValue.length})),this.element.addEventListener("keydown",this.handleInputKeyDownEvent.bind(this)),this.input.accessibleAutocomplete="list",this.input.accessibleControls="duet-combobox-list-element"}disconnectedCallback(){this.input.removeEventListener("duetChange",this.updateInputValue.bind(this)),this.input.removeEventListener("click",(()=>this.listOpen=!!this.inputValue.length)),this.element.removeEventListener("keydown",this.handleInputKeyDownEvent.bind(this)),this.listElement.removeEventListener("click",(o=>{o.stopPropagation()})),this.resizeObserver.disconnect()}componentDidLoad(){this.resizeObserver.observe(this.input),this.listElement.addEventListener("click",(o=>{o.stopPropagation()}))}onListClick(o,t){return o.preventDefault(),this.updateSelectedItems(t.id),this.listOpen=!1,this.listOpen}shouldListBeFiltered(){if(this.selectedItems.size&&this.input.value===this.inputValue){const o=this.items.filter((o=>this.selectedItems.has(o.id)));return!(this.formatter(o).toLowerCase()===this.input.value.toLowerCase())}return!0}returnFilteredOrNonFiltered(){return this.processedItems?this.shouldListBeFiltered()?this.getFilteredItems():this.sortFilteredItems(this.processedItems):[]}async updateSelectedItems(o){this.selectedItems.clear(),this.selectedItems&&(this.selectedItems.has(o)?this.selectedItems.delete(o):this.selectedItems.add(o)),await this.updateInputText()}async updateInputText(o=!1){const t=0===this.selectedItems.size?[]:this.items.filter((o=>this.selectedItems.has(o.id)));1===this.selectedItems.size&&(this.input.value="",this.input.value=await this.formatItem(t[0]),this.input.scrollLeft=this.input.scrollWidth,this.activeItem=void 0,this.value=await this.formatItem(t[0]),this.duetChange.emit({value:t[0].value,item:t[0],component:"duet-combobox"})),o&&0===this.selectedItems.size&&(this.force&&(this.inputValue="",this.input.value=""),this.activeItem=void 0),this.listOpen=!1}updateInputValue(o){var t;this.inputValue=o.detail.value,this.listOpen=String(this.inputValue).length>0&&(null===(t=this.getFilteredItems())||void 0===t?void 0:t.length)>0}handleInputKeyDownEvent(o){if(this.input.accessibleActiveDescendant=void 0,m(o))return o.preventDefault(),this.selectActiveItem(),this.updateInputText(!1),void(this.listOpen=!1);if(u(o)||l(o))return this.updateInputText(!0),void(this.listOpen=!1);let t=this.activeItem;if(x(o)?(o.preventDefault(),t=this.activeItem-1):a(o)&&(o.preventDefault(),t=this.listOpen?this.activeItem+1:this.activeItem,this.listOpen=!0),a(o)||x(o)){const o=this.shouldListBeFiltered()?this.getFilteredItems():this.processedItems;(t<0||!t)&&(t=0),t>=o.length&&(t=o.length-1),this.input.accessibleActiveDescendant="active_item",this.activeItem=t,this.scrollToActive()}this.announceActive()}selectActiveItem(){if(void 0===this.activeItem)return;const o=this.returnFilteredOrNonFiltered();this.updateSelectedItems(o[this.activeItem].id)}announceActive(o){o||(o=this.returnFilteredOrNonFiltered()),void 0!==this.activeItem&&-1!==this.activeItem&&(this.selectionMsg=structuredClone(this.formatLabel(o[this.activeItem],o.length,this.items.length)))}scrollToActive(){const o=this.listElement.querySelector(".active");o&&o.scrollIntoView({behavior:"smooth",block:"center"})}formatLabel(o,t,e){return o&&void 0!==e?(t===e?this.accessibleLabels.item:this.accessibleLabels.itemFiltered).replace("{name}",String(o.name)).replace("{current}",String(this.activeItem+1)).replace("{total}",String(t)).replace("{hiddenItems}",String(e-t)):""}getFilteredItems(){const o=this.processedItems.filter((o=>{var t,e,s,i;return(null===(t=String(o.value))||void 0===t?void 0:t.toLowerCase().startsWith(null===(e=this.inputValue)||void 0===e?void 0:e.toLowerCase()))||(null===(s=String(o.name))||void 0===s?void 0:s.toLowerCase().startsWith(null===(i=this.inputValue)||void 0===i?void 0:i.toLowerCase()))||this.selectedItems.has(o.id)}));return this.sortFilteredItems(o)}sortFilteredItems(o){return o.length>0&&o.filter((o=>this.selectedItems.has(o.id))).forEach((t=>{const e=o.indexOf(t);o.splice(e,1),o.unshift(t)})),o}render(){const t=this.returnFilteredOrNonFiltered();return o(i,{role:"combobox","aria-expanded":this.listOpen?"true":"false","aria-owns":"duet-combobox-list-element","aria-haspopup":"listbox",class:{"duet-combobox":!0,[`duet-theme-${this.theme}`]:!0}},o("slot",null),o("div",{role:"list",class:{"duet-combobox-list":!0,open:this.listOpen},ref:o=>this.listContainer=o},o("ul",{class:{"duet-combobox-listbox-open":this.listOpen,"duet-combobox-listbox":!0},role:"listbox",ref:o=>this.listElement=o,id:"duet-combobox-list-element"},t.map(((e,s)=>o(v,{item:e,active:s===this.activeItem,selected:this.selectedItems.has(e.id),search:this.inputValue,total:t.length,clickHandler:o=>this.onListClick(o,e),label:this.formatLabel(e,this.returnFilteredOrNonFiltered().length,this.items.length)}))))))}get element(){return c(this)}static get watchers(){return{activeItem:["activeItemHandler"]}}};g.style='.sc-duet-combobox-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;width:auto;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#00294d}.sc-duet-combobox-h a.sc-duet-combobox{color:#00294d;transition:none}.duet-theme-turva.sc-duet-combobox-h{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}.duet-theme-turva.sc-duet-combobox-h a.sc-duet-combobox{color:#171c3a}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.sc-duet-combobox .option-tags.sc-duet-combobox{color:#747475}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.selected.sc-duet-combobox{background:#f4cfd6}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover{color:white;background:#c60c30}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox .option-tags.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus .option-tags.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover .option-tags.sc-duet-combobox{color:white}.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox a.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus a.sc-duet-combobox,.duet-theme-turva.sc-duet-combobox-h .duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover a.sc-duet-combobox{color:white}.duet-combobox-list.sc-duet-combobox{position:absolute;top:calc(100% - 12px);height:0;overflow:hidden;background:white;border-radius:0 4px;box-shadow:0 2px 10px 0 rgba(0, 41, 77, 0.1);opacity:0}.duet-combobox-list.open.sc-duet-combobox{z-index:700;display:block;height:auto;opacity:1}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox{max-height:200px;padding:0.75rem 0;margin:0;overflow-y:scroll;font-weight:600;list-style:none;cursor:pointer;scroll-behavior:smooth}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox{padding:4px 0}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:not(.selected){padding-left:16px}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:not(.selected) .highlight.sc-duet-combobox{text-decoration:underline}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.sc-duet-combobox .option-link.sc-duet-combobox{display:block;width:100%}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option.sc-duet-combobox .option-tags.sc-duet-combobox{float:right;padding-right:0.875rem;font-weight:400;color:#909599}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.option-link.sc-duet-combobox{display:block;width:100%}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.selected.sc-duet-combobox{padding-left:0;background:#cde5f1}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.selected.option.sc-duet-combobox .option-icon.sc-duet-combobox{padding:0 8px 0 8px}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.selected.option.sc-duet-combobox .option-tags.sc-duet-combobox{color:#909599}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover{color:white;background:#0077b3}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox .option-tags.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus .option-tags.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover .option-tags.sc-duet-combobox{color:white}.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.active.sc-duet-combobox a.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:focus a.sc-duet-combobox,.duet-combobox-list.sc-duet-combobox .duet-combobox-listbox.sc-duet-combobox .list-item.sc-duet-combobox:hover a.sc-duet-combobox{color:white}';export{g as duet_combobox}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- System.register(["./p-e71a6257.system.js","./p-e566ff11.system.js"],(function(e){"use strict";var t,i,a,n,d;return{setters:[function(e){t=e.r;i=e.h;a=e.H;n=e.g},function(e){d=e.i}],execute:function(){var o="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex:1 0 auto;width:100%}:host(.duet-middle){display:flex}:host(.duet-middle) .duet-layout{padding:36px 28px !important}@media (min-width: 36em){:host(.duet-middle) .duet-layout{padding:48px 36px !important}}@media (min-width: 62em){:host(.duet-middle) .duet-layout{padding:56px !important}}:host(.duet-ie){height:100%}:host(.duet-middle.duet-ie){height:auto}.duet-layout{position:relative;padding:0 16px;margin:48px auto 36px}@media (min-width: 36em){.duet-layout{margin-top:72px}}.duet-layout.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}@media (min-width: 36em){.duet-layout{padding:0 28px}}@media (min-width: 62em){.duet-layout{display:flex;flex-direction:row;padding:0 56px;margin-bottom:48px}}@media (min-width: 76.25em){.duet-layout{max-width:1110px;padding:0}}.duet-main{display:block;width:100%}@media (min-width: 62em){.duet-main{min-width:600px;margin:0 auto}.has-sidebar .duet-main{max-width:734px;margin-right:20px}}";var r=e("duet_section_layout",function(){function e(e){t(this,e);this.margin="auto";this.middle=false}e.prototype.render=function(){return i(a,{class:{"duet-middle":this.middle,"duet-ie":d()}},i("div",{class:{"duet-layout":true,"duet-m-0":this.margin==="none"}},i("section",{class:"duet-main"},i("slot",null))))};Object.defineProperty(e.prototype,"element",{get:function(){return n(this)},enumerable:false,configurable:true});return e}());r.style=o}}}));
4
+ System.register(["./p-9c0ae091.system.js","./p-e566ff11.system.js"],(function(e){"use strict";var t,i,a,n,d;return{setters:[function(e){t=e.r;i=e.h;a=e.H;n=e.g},function(e){d=e.i}],execute:function(){var o="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;flex:1 0 auto;width:100%}:host(.duet-middle){display:flex}:host(.duet-middle) .duet-layout{padding:36px 28px !important}@media (min-width: 36em){:host(.duet-middle) .duet-layout{padding:48px 36px !important}}@media (min-width: 62em){:host(.duet-middle) .duet-layout{padding:56px !important}}:host(.duet-ie){height:100%}:host(.duet-middle.duet-ie){height:auto}.duet-layout{position:relative;padding:0 16px;margin:48px auto 36px}@media (min-width: 36em){.duet-layout{margin-top:72px}}.duet-layout.duet-m-0{margin-top:0 !important;margin-bottom:0 !important}@media (min-width: 36em){.duet-layout{padding:0 28px}}@media (min-width: 62em){.duet-layout{display:flex;flex-direction:row;padding:0 56px;margin-bottom:48px}}@media (min-width: 76.25em){.duet-layout{max-width:1110px;padding:0}}.duet-main{display:block;width:100%}@media (min-width: 62em){.duet-main{min-width:600px;margin:0 auto}.has-sidebar .duet-main{max-width:734px;margin-right:20px}}";var r=e("duet_section_layout",function(){function e(e){t(this,e);this.margin="auto";this.middle=false}e.prototype.render=function(){return i(a,{class:{"duet-middle":this.middle,"duet-ie":d()}},i("div",{class:{"duet-layout":true,"duet-m-0":this.margin==="none"}},i("section",{class:"duet-main"},i("slot",null))))};Object.defineProperty(e.prototype,"element",{get:function(){return n(this)},enumerable:false,configurable:true});return e}());r.style=o}}}));
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as t,c as e,h as i,H as s,g as o}from"./p-6999702a.js";import{i as a}from"./p-4ebf1618.js";import{c as l}from"./p-c1325e35.js";import{f as r,o as n,n as d,d as h,b as u,a as c,c as m}from"./p-54f35a79.js";import{g as p}from"./p-ede854e1.js";import{p as b}from"./p-5a9d75e1.js";const f=class{constructor(i){t(this,i),this.duetChange=e(this,"duetChange",3),this.duetFocus=e(this,"duetFocus",7),this.duetBlur=e(this,"duetBlur",7),this.errorId=l("DuetError"),this.labelId=l("DuetLabel"),this.topCaptionId=l("DuetCaptionTop"),this.selectedLangObject={en:"selected",fi:"valittu",sv:"vald"},this.onChange=t=>{this.duetChange.emit({originalEvent:t,value:this.value,component:"duet-multiselect"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,value:this.value,component:"duet-multiselect"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-multiselect"})},this.onMultiselectKeyDown=t=>{(r(t)||n(t))&&this.checkboxesVisible&&(this.checkboxesVisible=!1,this.multiselectElement.focus(),t.preventDefault())},this.onMultiselectInputKeyDown=t=>{d(t)&&(t.preventDefault(),this.toggleCheckboxes(),setTimeout((()=>{if(this.checkboxesVisible){const t=this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(0)}`);t&&t.focus()}}),200))},this.onCheckboxKeyDown=(t,e)=>{let i;h(t)||u(t)?i=this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(e-1)}`):(c(t)||m(t))&&(i=this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(e+1)}`)),i&&(i.focus(),t.preventDefault(),this.activeDescendant=i.id)},this.toggleCheckboxes=()=>{this.checkboxesVisible=!this.checkboxesVisible},this.toggleCheckbox=(t,e)=>{this.value=function(t,e){return t.includes(e)?t.filter((t=>t!==e)):[...t,e]}(this.value,e),this.onChange(t)},this.getOptionIdentifier=t=>`${this.identifier}-option-${t}`,this.processedItems=[],this.checkboxesVisible=!1,this.activeDescendant="",this.margin="auto",this.error="",this.expand=!1,this.value=[],this.theme="",this.labelHidden=!1,this.identifier=l("DuetMultiselect"),this.placeholder="",this.caption=void 0,this.items=void 0,this.disabled=!1,this.label="label",this.tooltip="",this.tooltipDirection="auto"}handleFocus(t){t.composedPath().every((t=>t!==this.element))&&(this.checkboxesVisible=!1)}componentWillLoad(){a(this),this.isCaptionVisible=!!this.caption,this.refresh()}async setFocus(t){this.multiselectElement&&this.multiselectElement.focus(t)}async refresh(){this.processedItems=b(this.items)}render(){const t=p(this.selectedLangObject);return i(s,{class:{"duet-m-0":"none"===this.margin,"duet-expand":this.expand}},i("div",{class:{"duet-multiselect-container":!0,"duet-label-hidden":this.labelHidden,"duet-theme-turva":"turva"===this.theme,"duet-input-top-caption-shown":this.isCaptionVisible,"has-error":!!this.error},onKeyDown:t=>this.onMultiselectKeyDown(t)},i("duet-label",{theme:"turva"===this.theme?"turva":"default",class:{"duet-has-tooltip":!!this.tooltip},id:this.labelId,for:this.identifier},this.label),this.tooltip&&i("duet-tooltip",{class:"duet-multiselect-tooltip",direction:this.tooltipDirection,accessibleInputLabel:this.label},this.tooltip),this.caption&&i("duet-caption",{id:this.topCaptionId,size:"medium"},this.caption),i("div",{class:"duet-multiselect-wrapper"},i("button",{id:this.identifier,ref:t=>this.multiselectElement=t,class:{"duet-multiselect":!0,"duet-multiselect-active":this.checkboxesVisible},tabindex:"0",onClick:()=>this.toggleCheckboxes(),onFocus:t=>this.onFocus(t),onBlur:t=>this.onBlur(t),role:"combobox","aria-expanded":this.checkboxesVisible?"true":"false","aria-haspopup":"listbox","aria-labelledby":`${this.labelId} ${this.errorId}`,"aria-owns":`${this.identifier}-checkboxes`,onKeyDown:t=>this.onMultiselectInputKeyDown(t),disabled:this.disabled},i("span",{role:"textbox","aria-readonly":"true","aria-multiline":"false","aria-autocomplete":"none","aria-controls":`${this.identifier}-checkboxes`},this.placeholder),this.value&&this.value.length>0&&i("duet-badge",{class:"duet-multiselect-badge",margin:"none",theme:this.theme},this.value.length," ",t,i("duet-visually-hidden",null,", ",this.value.map((t=>t.label)).join(", "))),i("svg",{role:"img",class:{"duet-multiselect-icon":!0,"duet-multiselect-icon--rotate":this.checkboxesVisible},fill:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},i("path",{d:"m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z"}))),i("div",{id:`${this.identifier}-checkboxes`,role:"listbox",class:{"duet-multiselect-checkboxes":!0,"duet-multiselect-checkboxes-active":this.checkboxesVisible},"aria-activedescendant":this.activeDescendant,"aria-multiselectable":"true"},this.processedItems&&this.processedItems.map(((t,e)=>{var s,o;return i("duet-checkbox",{identifier:this.getOptionIdentifier(e),role:"option",label:t.label,value:t.value,key:t.value,checked:null===(s=this.value)||void 0===s?void 0:s.includes(t),"accessible-selected":(null===(o=this.value)||void 0===o?void 0:o.includes(t))?"true":void 0,disabled:!this.checkboxesVisible||t.disabled,onDuetChange:e=>this.toggleCheckbox(e,t),onKeyDown:t=>this.onCheckboxKeyDown(t,e),theme:this.theme})})))),i("span",{class:"duet-multiselect-help",id:this.errorId,"aria-live":"assertive","aria-relevant":"additions removals"},this.error&&i("span",null,this.error))))}get element(){return o(this)}static get watchers(){return{items:["refresh"]}}};f.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;display:inline-flex;width:100%;max-width:100%;vertical-align:bottom}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}:host.duet-expand{width:100% !important}}:host(.duet-m-0){margin:0 !important}.duet-multiselect-tooltip{position:absolute;top:12px;right:0}@media (min-width: 48em){.duet-multiselect-tooltip{position:relative;top:4px;right:auto}}.duet-multiselect-placeholder{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:white}.duet-multiselect-container{position:relative;width:100%}.duet-multiselect-wrapper{position:relative;width:100%;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.25}.duet-theme-turva .duet-multiselect-wrapper{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-multiselect{display:flex;gap:12px;align-items:center;justify-content:flex-start;width:100%;min-width:8rem;padding:12px 14px !important;overflow:hidden;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.5;color:#00294d;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:white;border:1px solid #909599;border-radius:4px;transition:150ms ease}.duet-multiselect:hover{border-color:#909599;box-shadow:0 0 0 1px #909599}.duet-theme-turva .duet-multiselect:hover{border-color:#747475;box-shadow:0 0 0 1px #747475}.has-error .duet-multiselect:hover{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error .duet-multiselect:hover{box-shadow:0 0 0 1px #e02a0d}.duet-multiselect:focus,.duet-multiselect.duet-multiselect-active{border-color:#0077b3;outline:0;box-shadow:0 0 0 1px #0077b3;transition:none}.duet-theme-turva .duet-multiselect:focus,.duet-theme-turva .duet-multiselect.duet-multiselect-active{border-color:#171c3a;box-shadow:0 0 0 1px #171c3a}.has-error .duet-multiselect:focus,.has-error .duet-multiselect.duet-multiselect-active{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error .duet-multiselect:focus,.duet-theme-turva.has-error .duet-multiselect.duet-multiselect-active{box-shadow:0 0 0 1px #e02a0d}.duet-multiselect[disabled]{color:#00294d !important;cursor:default !important;background:#f5f8fa !important;border-color:#f5f8fa !important;box-shadow:none !important;opacity:1 !important;-webkit-text-fill-color:#00294d !important}.duet-theme-turva .duet-multiselect[disabled]{color:#171c3a !important;background:#f5f5f7 !important;border-color:#f5f5f7 !important;-webkit-text-fill-color:#171c3a !important}.duet-multiselect>:first-child{flex:1}.duet-multiselect .duet-multiselect-badge{position:absolute;right:3rem}.has-error .duet-multiselect{border-color:#de2362 !important}.has-error .duet-multiselect .duet-multiselect-icon{color:#de2362 !important}.duet-theme-turva.has-error .duet-multiselect{border-color:#e02a0d !important}.duet-theme-turva.has-error .duet-multiselect .duet-multiselect-icon{color:#e02a0d !important}.duet-theme-turva .duet-multiselect{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a;border-color:#747475}.duet-multiselect svg{width:20px;height:20px;color:#00294d;pointer-events:none}.duet-theme-turva .duet-multiselect svg{color:#171c3a}.duet-multiselect svg.duet-multiselect-icon--rotate{transform:rotate(180deg)}.duet-multiselect-checkboxes{position:absolute;z-index:700;width:100%;padding:16px;margin:8px 0 0;visibility:hidden;background:white;border:1px solid #e1e3e6;border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}.duet-theme-turva .duet-multiselect-checkboxes{background:white;border-color:#e4e4e6;box-shadow:0 4px 10px 0 rgba(23, 28, 58, 0.15)}.duet-multiselect-checkboxes.duet-multiselect-checkboxes-active{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}.duet-multiselect-help{display:block;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#657787;border-radius:4px}.duet-multiselect-help span{display:block;margin-top:8px}.duet-theme-turva .duet-multiselect-help{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#747475}.has-error .duet-multiselect-help{color:#de2362}.duet-theme-turva.has-error .duet-multiselect-help{color:#e02a0d}.duet-label-hidden duet-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}';export{f as duet_multiselect}
4
+ import{r as t,c as e,h as i,H as s,g as o}from"./p-7aa97a75.js";import{i as a}from"./p-4ebf1618.js";import{c as l}from"./p-c1325e35.js";import{f as r,o as n,n as d,d as h,b as u,a as c,c as m}from"./p-54f35a79.js";import{g as p}from"./p-ede854e1.js";import{p as b}from"./p-5a9d75e1.js";const f=class{constructor(i){t(this,i),this.duetChange=e(this,"duetChange",3),this.duetFocus=e(this,"duetFocus",7),this.duetBlur=e(this,"duetBlur",7),this.errorId=l("DuetError"),this.labelId=l("DuetLabel"),this.topCaptionId=l("DuetCaptionTop"),this.selectedLangObject={en:"selected",fi:"valittu",sv:"vald"},this.onChange=t=>{this.duetChange.emit({originalEvent:t,value:this.value,component:"duet-multiselect"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,value:this.value,component:"duet-multiselect"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-multiselect"})},this.onMultiselectKeyDown=t=>{(r(t)||n(t))&&this.checkboxesVisible&&(this.checkboxesVisible=!1,this.multiselectElement.focus(),t.preventDefault())},this.onMultiselectInputKeyDown=t=>{d(t)&&(t.preventDefault(),this.toggleCheckboxes(),setTimeout((()=>{if(this.checkboxesVisible){const t=this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(0)}`);t&&t.focus()}}),200))},this.onCheckboxKeyDown=(t,e)=>{let i;h(t)||u(t)?i=this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(e-1)}`):(c(t)||m(t))&&(i=this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(e+1)}`)),i&&(i.focus(),t.preventDefault(),this.activeDescendant=i.id)},this.toggleCheckboxes=()=>{this.checkboxesVisible=!this.checkboxesVisible},this.toggleCheckbox=(t,e)=>{this.value=function(t,e){return t.includes(e)?t.filter((t=>t!==e)):[...t,e]}(this.value,e),this.onChange(t)},this.getOptionIdentifier=t=>`${this.identifier}-option-${t}`,this.processedItems=[],this.checkboxesVisible=!1,this.activeDescendant="",this.margin="auto",this.error="",this.expand=!1,this.value=[],this.theme="",this.labelHidden=!1,this.identifier=l("DuetMultiselect"),this.placeholder="",this.caption=void 0,this.items=void 0,this.disabled=!1,this.label="label",this.tooltip="",this.tooltipDirection="auto"}handleFocus(t){t.composedPath().every((t=>t!==this.element))&&(this.checkboxesVisible=!1)}componentWillLoad(){a(this),this.isCaptionVisible=!!this.caption,this.refresh()}async setFocus(t){this.multiselectElement&&this.multiselectElement.focus(t)}async refresh(){this.processedItems=b(this.items)}render(){const t=p(this.selectedLangObject);return i(s,{class:{"duet-m-0":"none"===this.margin,"duet-expand":this.expand}},i("div",{class:{"duet-multiselect-container":!0,"duet-label-hidden":this.labelHidden,"duet-theme-turva":"turva"===this.theme,"duet-input-top-caption-shown":this.isCaptionVisible,"has-error":!!this.error},onKeyDown:t=>this.onMultiselectKeyDown(t)},i("duet-label",{theme:"turva"===this.theme?"turva":"default",class:{"duet-has-tooltip":!!this.tooltip},id:this.labelId,for:this.identifier},this.label),this.tooltip&&i("duet-tooltip",{class:"duet-multiselect-tooltip",direction:this.tooltipDirection,accessibleInputLabel:this.label},this.tooltip),this.caption&&i("duet-caption",{id:this.topCaptionId,size:"medium"},this.caption),i("div",{class:"duet-multiselect-wrapper"},i("button",{id:this.identifier,ref:t=>this.multiselectElement=t,class:{"duet-multiselect":!0,"duet-multiselect-active":this.checkboxesVisible},tabindex:"0",onClick:()=>this.toggleCheckboxes(),onFocus:t=>this.onFocus(t),onBlur:t=>this.onBlur(t),role:"combobox","aria-expanded":this.checkboxesVisible?"true":"false","aria-haspopup":"listbox","aria-labelledby":`${this.labelId} ${this.errorId}`,"aria-owns":`${this.identifier}-checkboxes`,onKeyDown:t=>this.onMultiselectInputKeyDown(t),disabled:this.disabled},i("span",{role:"textbox","aria-readonly":"true","aria-multiline":"false","aria-autocomplete":"none","aria-controls":`${this.identifier}-checkboxes`},this.placeholder),this.value&&this.value.length>0&&i("duet-badge",{class:"duet-multiselect-badge",margin:"none",theme:this.theme},this.value.length," ",t,i("duet-visually-hidden",null,", ",this.value.map((t=>t.label)).join(", "))),i("svg",{role:"img",class:{"duet-multiselect-icon":!0,"duet-multiselect-icon--rotate":this.checkboxesVisible},fill:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},i("path",{d:"m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z"}))),i("div",{id:`${this.identifier}-checkboxes`,role:"listbox",class:{"duet-multiselect-checkboxes":!0,"duet-multiselect-checkboxes-active":this.checkboxesVisible},"aria-activedescendant":this.activeDescendant,"aria-multiselectable":"true"},this.processedItems&&this.processedItems.map(((t,e)=>{var s,o;return i("duet-checkbox",{identifier:this.getOptionIdentifier(e),role:"option",label:t.label,value:t.value,key:t.value,checked:null===(s=this.value)||void 0===s?void 0:s.includes(t),"accessible-selected":(null===(o=this.value)||void 0===o?void 0:o.includes(t))?"true":void 0,disabled:!this.checkboxesVisible||t.disabled,onDuetChange:e=>this.toggleCheckbox(e,t),onKeyDown:t=>this.onCheckboxKeyDown(t,e),theme:this.theme})})))),i("span",{class:"duet-multiselect-help",id:this.errorId,"aria-live":"assertive","aria-relevant":"additions removals"},this.error&&i("span",null,this.error))))}get element(){return o(this)}static get watchers(){return{items:["refresh"]}}};f.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;display:inline-flex;width:100%;max-width:100%;vertical-align:bottom}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (min-width: 36em){:host{width:calc(50% - 16px - 3px)}:host.duet-expand{width:100% !important}}:host(.duet-m-0){margin:0 !important}.duet-multiselect-tooltip{position:absolute;top:12px;right:0}@media (min-width: 48em){.duet-multiselect-tooltip{position:relative;top:4px;right:auto}}.duet-multiselect-placeholder{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:white}.duet-multiselect-container{position:relative;width:100%}.duet-multiselect-wrapper{position:relative;width:100%;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:400;line-height:1.25}.duet-theme-turva .duet-multiselect-wrapper{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-multiselect{display:flex;gap:12px;align-items:center;justify-content:flex-start;width:100%;min-width:8rem;padding:12px 14px !important;overflow:hidden;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.5;color:#00294d;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:white;border:1px solid #909599;border-radius:4px;transition:150ms ease}.duet-multiselect:hover{border-color:#909599;box-shadow:0 0 0 1px #909599}.duet-theme-turva .duet-multiselect:hover{border-color:#747475;box-shadow:0 0 0 1px #747475}.has-error .duet-multiselect:hover{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error .duet-multiselect:hover{box-shadow:0 0 0 1px #e02a0d}.duet-multiselect:focus,.duet-multiselect.duet-multiselect-active{border-color:#0077b3;outline:0;box-shadow:0 0 0 1px #0077b3;transition:none}.duet-theme-turva .duet-multiselect:focus,.duet-theme-turva .duet-multiselect.duet-multiselect-active{border-color:#171c3a;box-shadow:0 0 0 1px #171c3a}.has-error .duet-multiselect:focus,.has-error .duet-multiselect.duet-multiselect-active{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error .duet-multiselect:focus,.duet-theme-turva.has-error .duet-multiselect.duet-multiselect-active{box-shadow:0 0 0 1px #e02a0d}.duet-multiselect[disabled]{color:#00294d !important;cursor:default !important;background:#f5f8fa !important;border-color:#f5f8fa !important;box-shadow:none !important;opacity:1 !important;-webkit-text-fill-color:#00294d !important}.duet-theme-turva .duet-multiselect[disabled]{color:#171c3a !important;background:#f5f5f7 !important;border-color:#f5f5f7 !important;-webkit-text-fill-color:#171c3a !important}.duet-multiselect>:first-child{flex:1}.duet-multiselect .duet-multiselect-badge{position:absolute;right:3rem}.has-error .duet-multiselect{border-color:#de2362 !important}.has-error .duet-multiselect .duet-multiselect-icon{color:#de2362 !important}.duet-theme-turva.has-error .duet-multiselect{border-color:#e02a0d !important}.duet-theme-turva.has-error .duet-multiselect .duet-multiselect-icon{color:#e02a0d !important}.duet-theme-turva .duet-multiselect{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a;border-color:#747475}.duet-multiselect svg{width:20px;height:20px;color:#00294d;pointer-events:none}.duet-theme-turva .duet-multiselect svg{color:#171c3a}.duet-multiselect svg.duet-multiselect-icon--rotate{transform:rotate(180deg)}.duet-multiselect-checkboxes{position:absolute;z-index:700;width:100%;padding:16px;margin:8px 0 0;visibility:hidden;background:white;border:1px solid #e1e3e6;border-radius:4px;box-shadow:0 4px 10px 0 rgba(0, 41, 77, 0.15);opacity:0;transition:transform 300ms ease, opacity 300ms ease, visibility 300ms ease;transform:scale(0.96) translateZ(0) translateY(-20px);transform-origin:top right}.duet-theme-turva .duet-multiselect-checkboxes{background:white;border-color:#e4e4e6;box-shadow:0 4px 10px 0 rgba(23, 28, 58, 0.15)}.duet-multiselect-checkboxes.duet-multiselect-checkboxes-active{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(0)}.duet-multiselect-help{display:block;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#657787;border-radius:4px}.duet-multiselect-help span{display:block;margin-top:8px}.duet-theme-turva .duet-multiselect-help{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#747475}.has-error .duet-multiselect-help{color:#de2362}.duet-theme-turva.has-error .duet-multiselect-help{color:#e02a0d}.duet-label-hidden duet-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}';export{f as duet_multiselect}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as t,h as i,g as e,H as d}from"./p-6999702a.js";import{m as r,a as n,b as a}from"./p-c4d8cad0.js";import{w as s,a as m}from"./p-12721178.js";import{i as o}from"./p-4ebf1618.js";function g(t){return"duet-grid-item"===t.tagName.toLowerCase()}const u=class{constructor(i){t(this,i),this.mql=[window.matchMedia(r.replace(/'/g,"")),window.matchMedia(n.replace(/'/g,"")),window.matchMedia(a.replace(/'/g,""))],this.distributeFormElement=!1,this.responsive=!1,this.breakpoint="small",this.direction="horizontal",this.alignment="top",this.distribution="default",this.mobile=""}outerHeight(t){const i=t.offsetHeight,e=window.getComputedStyle(t);return["top","bottom"].map((t=>parseInt(e[`margin-${t}`]))).reduce(((t,i)=>t+i),i)}async connectedCallback(){const t=this.element;if(this.distributeFormElement="form_distribute"===this.alignment,this.mutationO=s(t,"duet-grid-item",(()=>{this.updateGridItems()})),this.distributeFormElement){this.mutation1=m(t,"duet-input",(()=>{this.updateGridItemsWithInputFields()}));for(let t=0;t<this.mql.length;t++)this.mql[t].addEventListener&&this.mql[t].addEventListener("change",this.updateGridItemsWithInputFields.bind(this))}this.updateGridItems()}disconnectedCallback(){this.mutationO&&(this.mutationO.disconnect(),this.mutationO=void 0),this.mutation1&&(this.mutation1.disconnect(),this.mutation1=void 0);for(let t=0;t<this.mql.length;t++)this.mql[t].removeEventListener&&this.mql[t].removeEventListener("change",this.updateGridItemsWithInputFields.bind(this))}async updateGridItems(){Array.from(this.element.children).filter(g).forEach((t=>{t.responsive=this.responsive,t.breakpoint=this.breakpoint}))}async updateGridItemsWithInputFields(){const t=Array.from(this.element.children).filter(g),i=!!window&&"column"===window.getComputedStyle(this.element).flexDirection;let e=0;const d=[];t.forEach((t=>{const i=t.querySelector("span.duet-input-error"),e=i?this.outerHeight(i):0;d.push(e)})),e=Math.max(...d),t.forEach((t=>{const d=t.querySelector("span.duet-input-error"),r=d?this.outerHeight(d):0;r<e&&!i?t.setAttribute("style",`padding-bottom: ${e-r}px;`):(r===e||i)&&t.setAttribute("style","padding-bottom: 0px;")}))}render(){return i(d,{class:{"duet-grid":!0,"duet-no-stacking":!this.responsive,"duet-grid-align-top":"top"===this.alignment,"duet-grid-align-bottom":"bottom"===this.alignment||"form_distribute"===this.alignment,"duet-grid-align-center":"center"===this.alignment,"duet-grid-align-stretch":"stretch"===this.alignment,"duet-grid-align-baseline":"baseline"===this.alignment,"duet-grid-distribution-left":"left"===this.distribution,"duet-grid-distribution-right":"right"===this.distribution,"duet-grid-distribution-center":"center"===this.distribution,"duet-grid-distribution-between":"space-between"===this.distribution,"duet-grid-distribution-around":"space-around"===this.distribution,"duet-grid-distribution-evenly":"space-evenly"===this.distribution,"duet-grid-mobile-left":"left"===this.mobile,"duet-grid-mobile-center":"center"===this.mobile,"duet-grid-mobile-right":"right"===this.mobile,"duet-grid-direction-horizontal":"horizontal"===this.direction,"duet-grid-direction-vertical":"vertical"===this.direction,"duet-grid-breakpoint-small":"small"===this.breakpoint,"duet-grid-breakpoint-medium":"medium"===this.breakpoint,"duet-grid-breakpoint-x-large":"x-large"===this.breakpoint}})}get element(){return e(this)}static get watchers(){return{responsive:["updateGridItems"],breakpoint:["updateGridItems"]}}};u.style=".sc-duet-grid-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;width:100%;max-width:100%;height:auto}@media (min-width: 36em){.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:row !important}}@media (min-width: 48em){.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:row !important}}@media (min-width: 64.0625em){.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:row !important}}.duet-grid-wrap.sc-duet-grid-h{flex-wrap:wrap !important}.duet-no-stacking.sc-duet-grid-h{flex-direction:row !important}.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 36em){.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 48em){.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 64.0625em){.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-align-top.duet-no-stacking.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-align-bottom.duet-no-stacking.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-align-center.duet-no-stacking.sc-duet-grid-h{align-items:center !important}.duet-grid-align-stretch.duet-no-stacking.sc-duet-grid-h{align-items:stretch !important}.duet-grid-align-baseline.duet-no-stacking.sc-duet-grid-h{align-items:baseline !important}@media (min-width: 36em){.duet-grid-align-top.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 36em){.duet-grid-align-bottom.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 36em){.duet-grid-align-center.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:center !important}}@media (min-width: 36em){.duet-grid-align-stretch.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 36em){.duet-grid-align-baseline.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 48em){.duet-grid-align-top.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 48em){.duet-grid-align-bottom.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 48em){.duet-grid-align-center.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:center !important}}@media (min-width: 48em){.duet-grid-align-stretch.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 48em){.duet-grid-align-baseline.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 64.0625em){.duet-grid-align-top.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 64.0625em){.duet-grid-align-bottom.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 64.0625em){.duet-grid-align-center.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 64.0625em){.duet-grid-align-stretch.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 64.0625em){.duet-grid-align-baseline.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:baseline !important}}.duet-grid-distribution-left.sc-duet-grid-h{justify-content:flex-start !important}.duet-grid-distribution-right.sc-duet-grid-h{justify-content:flex-end !important}.duet-grid-distribution-center.sc-duet-grid-h{justify-content:center !important}.duet-grid-distribution-between.sc-duet-grid-h{justify-content:space-between !important}.duet-grid-distribution-around.sc-duet-grid-h{justify-content:space-around !important}.duet-grid-distribution-evenly.sc-duet-grid-h{justify-content:space-evenly !important}@media (max-width: 35.9375em){.duet-grid-mobile-left.sc-duet-grid-h{align-items:flex-start !important;justify-content:flex-start !important;text-align:left !important}}@media (max-width: 35.9375em){.duet-grid-mobile-center.sc-duet-grid-h{align-items:center !important;justify-content:center !important;text-align:center !important}.duet-grid-mobile-center.sc-duet-grid-h *.sc-duet-grid{text-align:center !important}}@media (max-width: 35.9375em){.duet-grid-mobile-right.sc-duet-grid-h{align-items:flex-end !important;justify-content:flex-end !important;text-align:right !important}.duet-grid-mobile-right.sc-duet-grid-h *.sc-duet-grid{text-align:right !important}}";const l=class{constructor(i){t(this,i),this.fill=!1,this.maxWidth=void 0,this.minWidth=void 0,this.theme="",this.margin="auto",this.responsive=!1,this.breakpoint="small"}componentWillLoad(){o(this)}render(){return i(d,{style:{"min-width":this.minWidth,"max-width":this.maxWidth},class:{"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme,"duet-grid-item":!0,"duet-grid-item-fill":this.fill,"duet-grid-item-responsive":this.responsive,"duet-grid-item-br-medium":"medium"===this.breakpoint,"duet-grid-item-br-x-large":"x-large"===this.breakpoint}})}};l.style='.sc-duet-grid-item-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;min-width:0;max-width:100%;flex:0 0 auto;padding-right:8px;padding-left:8px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-style:normal;font-weight:400;line-height:1.5;color:#00294d}.sc-duet-grid-item-h:first-child,.sc-duet-grid-item-h:first-of-type{padding-left:0}.sc-duet-grid-item-h:last-child,.sc-duet-grid-item-h:last-of-type{padding-right:0}@media (max-width: 35.9375em){.duet-grid-item-responsive.sc-duet-grid-item-h{width:100% !important;min-width:0 !important;max-width:100% !important;padding-right:0;padding-left:0}}@media screen and (max-width: 47.9375em){.duet-grid-item-br-medium.sc-duet-grid-item-h{width:100% !important;min-width:0 !important;max-width:100% !important}}@media screen and (max-width: 47.9375em){.duet-grid-item-responsive.duet-grid-item-br-medium.sc-duet-grid-item-h{padding-right:0;padding-left:0}}@media screen and (max-width: 64em){.duet-grid-item-br-x-large.sc-duet-grid-item-h{width:100% !important;min-width:0 !important;max-width:100% !important}}@media screen and (max-width: 64em){.duet-grid-item-responsive.duet-grid-item-br-x-large.sc-duet-grid-item-h{padding-right:0;padding-left:0}}.duet-grid-item-fill.sc-duet-grid-item-h{flex:1 1 auto;width:100%}.duet-theme-turva.sc-duet-grid-item-h{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}.duet-m-0.sc-duet-grid-item-h{padding:0 !important;margin:0 !important}';export{u as duet_grid,l as duet_grid_item}
4
+ import{r as t,h as i,g as e,H as d}from"./p-7aa97a75.js";import{m as r,a as n,b as a}from"./p-c4d8cad0.js";import{w as s,a as m}from"./p-12721178.js";import{i as o}from"./p-4ebf1618.js";function g(t){return"duet-grid-item"===t.tagName.toLowerCase()}const u=class{constructor(i){t(this,i),this.mql=[window.matchMedia(r.replace(/'/g,"")),window.matchMedia(n.replace(/'/g,"")),window.matchMedia(a.replace(/'/g,""))],this.distributeFormElement=!1,this.responsive=!1,this.breakpoint="small",this.direction="horizontal",this.alignment="top",this.distribution="default",this.mobile=""}outerHeight(t){const i=t.offsetHeight,e=window.getComputedStyle(t);return["top","bottom"].map((t=>parseInt(e[`margin-${t}`]))).reduce(((t,i)=>t+i),i)}async connectedCallback(){const t=this.element;if(this.distributeFormElement="form_distribute"===this.alignment,this.mutationO=s(t,"duet-grid-item",(()=>{this.updateGridItems()})),this.distributeFormElement){this.mutation1=m(t,"duet-input",(()=>{this.updateGridItemsWithInputFields()}));for(let t=0;t<this.mql.length;t++)this.mql[t].addEventListener&&this.mql[t].addEventListener("change",this.updateGridItemsWithInputFields.bind(this))}this.updateGridItems()}disconnectedCallback(){this.mutationO&&(this.mutationO.disconnect(),this.mutationO=void 0),this.mutation1&&(this.mutation1.disconnect(),this.mutation1=void 0);for(let t=0;t<this.mql.length;t++)this.mql[t].removeEventListener&&this.mql[t].removeEventListener("change",this.updateGridItemsWithInputFields.bind(this))}async updateGridItems(){Array.from(this.element.children).filter(g).forEach((t=>{t.responsive=this.responsive,t.breakpoint=this.breakpoint}))}async updateGridItemsWithInputFields(){const t=Array.from(this.element.children).filter(g),i=!!window&&"column"===window.getComputedStyle(this.element).flexDirection;let e=0;const d=[];t.forEach((t=>{const i=t.querySelector("span.duet-input-error"),e=i?this.outerHeight(i):0;d.push(e)})),e=Math.max(...d),t.forEach((t=>{const d=t.querySelector("span.duet-input-error"),r=d?this.outerHeight(d):0;r<e&&!i?t.setAttribute("style",`padding-bottom: ${e-r}px;`):(r===e||i)&&t.setAttribute("style","padding-bottom: 0px;")}))}render(){return i(d,{class:{"duet-grid":!0,"duet-no-stacking":!this.responsive,"duet-grid-align-top":"top"===this.alignment,"duet-grid-align-bottom":"bottom"===this.alignment||"form_distribute"===this.alignment,"duet-grid-align-center":"center"===this.alignment,"duet-grid-align-stretch":"stretch"===this.alignment,"duet-grid-align-baseline":"baseline"===this.alignment,"duet-grid-distribution-left":"left"===this.distribution,"duet-grid-distribution-right":"right"===this.distribution,"duet-grid-distribution-center":"center"===this.distribution,"duet-grid-distribution-between":"space-between"===this.distribution,"duet-grid-distribution-around":"space-around"===this.distribution,"duet-grid-distribution-evenly":"space-evenly"===this.distribution,"duet-grid-mobile-left":"left"===this.mobile,"duet-grid-mobile-center":"center"===this.mobile,"duet-grid-mobile-right":"right"===this.mobile,"duet-grid-direction-horizontal":"horizontal"===this.direction,"duet-grid-direction-vertical":"vertical"===this.direction,"duet-grid-breakpoint-small":"small"===this.breakpoint,"duet-grid-breakpoint-medium":"medium"===this.breakpoint,"duet-grid-breakpoint-x-large":"x-large"===this.breakpoint}})}get element(){return e(this)}static get watchers(){return{responsive:["updateGridItems"],breakpoint:["updateGridItems"]}}};u.style=".sc-duet-grid-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;width:100%;max-width:100%;height:auto}@media (min-width: 36em){.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:row !important}}@media (min-width: 48em){.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:row !important}}@media (min-width: 64.0625em){.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:row !important}}.duet-grid-wrap.sc-duet-grid-h{flex-wrap:wrap !important}.duet-no-stacking.sc-duet-grid-h{flex-direction:row !important}.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 36em){.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 48em){.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 64.0625em){.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-align-top.duet-no-stacking.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-align-bottom.duet-no-stacking.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-align-center.duet-no-stacking.sc-duet-grid-h{align-items:center !important}.duet-grid-align-stretch.duet-no-stacking.sc-duet-grid-h{align-items:stretch !important}.duet-grid-align-baseline.duet-no-stacking.sc-duet-grid-h{align-items:baseline !important}@media (min-width: 36em){.duet-grid-align-top.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 36em){.duet-grid-align-bottom.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 36em){.duet-grid-align-center.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:center !important}}@media (min-width: 36em){.duet-grid-align-stretch.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 36em){.duet-grid-align-baseline.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 48em){.duet-grid-align-top.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 48em){.duet-grid-align-bottom.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 48em){.duet-grid-align-center.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:center !important}}@media (min-width: 48em){.duet-grid-align-stretch.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 48em){.duet-grid-align-baseline.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 64.0625em){.duet-grid-align-top.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 64.0625em){.duet-grid-align-bottom.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 64.0625em){.duet-grid-align-center.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 64.0625em){.duet-grid-align-stretch.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 64.0625em){.duet-grid-align-baseline.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:baseline !important}}.duet-grid-distribution-left.sc-duet-grid-h{justify-content:flex-start !important}.duet-grid-distribution-right.sc-duet-grid-h{justify-content:flex-end !important}.duet-grid-distribution-center.sc-duet-grid-h{justify-content:center !important}.duet-grid-distribution-between.sc-duet-grid-h{justify-content:space-between !important}.duet-grid-distribution-around.sc-duet-grid-h{justify-content:space-around !important}.duet-grid-distribution-evenly.sc-duet-grid-h{justify-content:space-evenly !important}@media (max-width: 35.9375em){.duet-grid-mobile-left.sc-duet-grid-h{align-items:flex-start !important;justify-content:flex-start !important;text-align:left !important}}@media (max-width: 35.9375em){.duet-grid-mobile-center.sc-duet-grid-h{align-items:center !important;justify-content:center !important;text-align:center !important}.duet-grid-mobile-center.sc-duet-grid-h *.sc-duet-grid{text-align:center !important}}@media (max-width: 35.9375em){.duet-grid-mobile-right.sc-duet-grid-h{align-items:flex-end !important;justify-content:flex-end !important;text-align:right !important}.duet-grid-mobile-right.sc-duet-grid-h *.sc-duet-grid{text-align:right !important}}";const l=class{constructor(i){t(this,i),this.fill=!1,this.maxWidth=void 0,this.minWidth=void 0,this.theme="",this.margin="auto",this.responsive=!1,this.breakpoint="small"}componentWillLoad(){o(this)}render(){return i(d,{style:{"min-width":this.minWidth,"max-width":this.maxWidth},class:{"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme,"duet-grid-item":!0,"duet-grid-item-fill":this.fill,"duet-grid-item-responsive":this.responsive,"duet-grid-item-br-medium":"medium"===this.breakpoint,"duet-grid-item-br-x-large":"x-large"===this.breakpoint}})}};l.style='.sc-duet-grid-item-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;min-width:0;max-width:100%;flex:0 0 auto;padding-right:8px;padding-left:8px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;font-style:normal;font-weight:400;line-height:1.5;color:#00294d}.sc-duet-grid-item-h:first-child,.sc-duet-grid-item-h:first-of-type{padding-left:0}.sc-duet-grid-item-h:last-child,.sc-duet-grid-item-h:last-of-type{padding-right:0}@media (max-width: 35.9375em){.duet-grid-item-responsive.sc-duet-grid-item-h{width:100% !important;min-width:0 !important;max-width:100% !important;padding-right:0;padding-left:0}}@media screen and (max-width: 47.9375em){.duet-grid-item-br-medium.sc-duet-grid-item-h{width:100% !important;min-width:0 !important;max-width:100% !important}}@media screen and (max-width: 47.9375em){.duet-grid-item-responsive.duet-grid-item-br-medium.sc-duet-grid-item-h{padding-right:0;padding-left:0}}@media screen and (max-width: 64em){.duet-grid-item-br-x-large.sc-duet-grid-item-h{width:100% !important;min-width:0 !important;max-width:100% !important}}@media screen and (max-width: 64em){.duet-grid-item-responsive.duet-grid-item-br-x-large.sc-duet-grid-item-h{padding-right:0;padding-left:0}}.duet-grid-item-fill.sc-duet-grid-item-h{flex:1 1 auto;width:100%}.duet-theme-turva.sc-duet-grid-item-h{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}.duet-m-0.sc-duet-grid-item-h{padding:0 !important;margin:0 !important}';export{u as duet_grid,l as duet_grid_item}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import{r as e,h as o,H as t,g as n}from"./p-7aa97a75.js";import{i as r}from"./p-4ebf1618.js";const a=class{constructor(o){e(this,o),this.getVariant=()=>{switch(this.element.parentElement.parentElement.getAttribute("slot")){case"center":case"right":default:return"right"}},this.theme="",this.href="#",this.icon=void 0,this.caret=!1}componentWillLoad(){r(this)}render(){return o(t,null,o("a",{class:{"duet-menu-bar-dropdown-link":!0,[`duet-menu-bar-dropdown-link--slot-${this.getVariant()}`]:!0,"duet-theme-turva":"turva"===this.theme},href:this.href,role:"menuitem"},this.icon&&o("duet-icon",{name:this.icon,size:"x-small",margin:"none",color:"currentColor"}),o("slot",null)))}get element(){return n(this)}};a.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%}.duet-menu-bar-dropdown-link{display:flex;flex-direction:row;gap:0.5rem;align-items:center;justify-content:flex-start;height:100%;padding:0.5rem 20px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#00294d;text-align:center;text-decoration:none}.duet-menu-bar-dropdown-link.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}.duet-menu-bar-dropdown-link--slot-right:hover{background:#e6f2f8}.duet-menu-bar-dropdown-link--slot-right:hover.duet-theme-turva{background:#e4e4e6}.duet-menu-bar-dropdown-link--slot-below:hover{color:#004d80;background:#f3f9fc}.duet-menu-bar-dropdown-link--slot-below:hover.duet-theme-turva{color:#940925;background:#e4e4e6}';export{a as duet_menu_bar_dropdown_link}