@duetds/components 8.6.2 → 8.6.4

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 (370) hide show
  1. package/hydrate/index.js +695 -649
  2. package/lib/cjs/duet-action-button.cjs.entry.js +2 -2
  3. package/lib/cjs/duet-alert.cjs.entry.js +2 -0
  4. package/lib/cjs/duet-banner.cjs.entry.js +6 -4
  5. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +2 -2
  6. package/lib/cjs/duet-button_2.cjs.entry.js +2 -2
  7. package/lib/cjs/duet-caption_4.cjs.entry.js +4 -4
  8. package/lib/cjs/duet-card.cjs.entry.js +2 -2
  9. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-divider_2.cjs.entry.js +2 -2
  12. package/lib/cjs/duet-editable-table_3.cjs.entry.js +2 -2
  13. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-header_2.cjs.entry.js +2 -2
  15. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  16. package/lib/cjs/duet-input_2.cjs.entry.js +2 -2
  17. package/lib/cjs/duet-menu-bar.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-modal.cjs.entry.js +26 -3
  19. package/lib/cjs/duet-page-heading.cjs.entry.js +2 -1
  20. package/lib/cjs/duet-pagination_2.cjs.entry.js +24 -11
  21. package/lib/cjs/duet-popup-menu.cjs.entry.js +1 -0
  22. package/lib/cjs/duet-promo-card.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-scrollable_3.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-slideout-panel.cjs.entry.js +2 -2
  27. package/lib/cjs/duet-slideout.cjs.entry.js +2 -2
  28. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-submenu-bar.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  32. package/lib/cjs/duet.cjs.js +1 -1
  33. package/lib/cjs/loader.cjs.js +1 -1
  34. package/lib/cjs/{token-utils-4ff49a49.js → token-utils-2a219fda.js} +1 -1
  35. package/lib/cjs/{tokens-d270c810.js → tokens-851fb0c9.js} +376 -376
  36. package/lib/cjs/{tokens.module-2198b663.js → tokens.module-3e57c188.js} +250 -250
  37. package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
  38. package/lib/collection/components/duet-alert/duet-alert.js +17 -1
  39. package/lib/collection/components/duet-banner/duet-banner.css +27 -23
  40. package/lib/collection/components/duet-banner/duet-banner.js +4 -2
  41. package/lib/collection/components/duet-button/duet-button.js +5 -5
  42. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  43. package/lib/collection/components/duet-card/duet-card.js +3 -3
  44. package/lib/collection/components/duet-checkbox/duet-checkbox.css +4 -4
  45. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  46. package/lib/collection/components/duet-chip/duet-chip.js +6 -6
  47. package/lib/collection/components/duet-choice/duet-choice.js +3 -3
  48. package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
  49. package/lib/collection/components/duet-combobox/duet-combobox.js +3 -3
  50. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  51. package/lib/collection/components/duet-date-picker/duet-date-picker.js +4 -4
  52. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  53. package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
  54. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  55. package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +1 -1
  56. package/lib/collection/components/duet-footer/duet-footer.js +7 -7
  57. package/lib/collection/components/duet-grid/duet-grid.js +3 -3
  58. package/lib/collection/components/duet-header/duet-header.js +15 -15
  59. package/lib/collection/components/duet-heading/duet-heading.js +1 -1
  60. package/lib/collection/components/duet-hero/duet-hero.js +5 -5
  61. package/lib/collection/components/duet-icon/duet-icon.css +3 -2
  62. package/lib/collection/components/duet-input/duet-input.js +8 -8
  63. package/lib/collection/components/duet-label/duet-label.js +2 -2
  64. package/lib/collection/components/duet-layout/duet-layout.js +1 -1
  65. package/lib/collection/components/duet-link/duet-link.css +12 -6
  66. package/lib/collection/components/duet-link/duet-link.js +1 -1
  67. package/lib/collection/components/duet-list/duet-list.js +3 -3
  68. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  69. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +1 -1
  70. package/lib/collection/components/duet-modal/duet-modal.css +2 -1
  71. package/lib/collection/components/duet-modal/duet-modal.e2e.js +21 -0
  72. package/lib/collection/components/duet-modal/duet-modal.js +75 -10
  73. package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
  74. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +1 -1
  75. package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
  76. package/lib/collection/components/duet-overlay/duet-overlay.js +1 -1
  77. package/lib/collection/components/duet-page-heading/duet-page-heading.css +3 -0
  78. package/lib/collection/components/duet-page-heading/duet-page-heading.js +1 -0
  79. package/lib/collection/components/duet-pagination/duet-pagination.js +37 -10
  80. package/lib/collection/components/duet-paragraph/duet-paragraph.js +3 -3
  81. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +22 -1
  82. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  83. package/lib/collection/components/duet-radio/duet-radio.css +4 -4
  84. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  85. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  86. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +24 -2
  87. package/lib/collection/components/duet-select/duet-select.js +5 -5
  88. package/lib/collection/components/duet-show-more/duet-show-more.js +1 -1
  89. package/lib/collection/components/duet-slideout/duet-slideout.js +1 -1
  90. package/lib/collection/components/duet-spacer/duet-spacer.js +2 -2
  91. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  92. package/lib/collection/components/duet-step/duet-step.js +2 -2
  93. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  94. package/lib/collection/components/duet-tab-group/duet-tab-group.js +5 -5
  95. package/lib/collection/components/duet-textarea/duet-textarea.js +4 -4
  96. package/lib/collection/components/duet-toggle/duet-toggle.js +1 -1
  97. package/lib/collection/components/duet-tooltip/duet-tooltip.js +1 -1
  98. package/lib/collection/components/duet-upload/duet-upload.js +14 -14
  99. package/lib/collection/components/duet-upload-item/duet-upload-item.js +2 -2
  100. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  101. package/lib/dist-custom-elements/duet-alert.js +1 -1
  102. package/lib/dist-custom-elements/duet-banner.js +7 -5
  103. package/lib/dist-custom-elements/duet-breadcrumb.js +1 -1
  104. package/lib/dist-custom-elements/duet-breadcrumbs.js +1 -1
  105. package/lib/dist-custom-elements/duet-button.js +1 -1
  106. package/lib/dist-custom-elements/duet-callout.js +1 -1
  107. package/lib/dist-custom-elements/duet-card.js +2 -2
  108. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  109. package/lib/dist-custom-elements/duet-chip.js +1 -1
  110. package/lib/dist-custom-elements/duet-choice-group.js +3 -3
  111. package/lib/dist-custom-elements/duet-choice.js +1 -1
  112. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  113. package/lib/dist-custom-elements/duet-combobox.js +8 -8
  114. package/lib/dist-custom-elements/duet-contact-card.js +6 -6
  115. package/lib/dist-custom-elements/duet-cookie-consent.js +3 -3
  116. package/lib/dist-custom-elements/duet-date-picker.js +8 -8
  117. package/lib/dist-custom-elements/duet-divider.js +1 -1
  118. package/lib/dist-custom-elements/duet-editable-table.js +5 -5
  119. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  120. package/lib/dist-custom-elements/duet-footer.js +2 -2
  121. package/lib/dist-custom-elements/duet-grid.js +1 -1
  122. package/lib/dist-custom-elements/duet-header.js +6 -6
  123. package/lib/dist-custom-elements/duet-heading.js +1 -1
  124. package/lib/dist-custom-elements/duet-hero.js +5 -5
  125. package/lib/dist-custom-elements/duet-icon.js +1 -1
  126. package/lib/dist-custom-elements/duet-input.js +1 -1
  127. package/lib/dist-custom-elements/duet-label.js +1 -1
  128. package/lib/dist-custom-elements/duet-link.js +1 -1
  129. package/lib/dist-custom-elements/duet-logo.js +1 -1
  130. package/lib/dist-custom-elements/duet-menu-bar-button.js +1 -1
  131. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +1 -1
  132. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +1 -1
  133. package/lib/dist-custom-elements/duet-menu-bar-item.js +1 -1
  134. package/lib/dist-custom-elements/duet-menu-bar-link.js +1 -1
  135. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  136. package/lib/dist-custom-elements/duet-modal.js +31 -7
  137. package/lib/dist-custom-elements/duet-multiselect.js +5 -5
  138. package/lib/dist-custom-elements/duet-notification-drawer.js +3 -3
  139. package/lib/dist-custom-elements/duet-number-input.js +7 -7
  140. package/lib/dist-custom-elements/duet-page-heading.js +3 -2
  141. package/lib/dist-custom-elements/duet-pagination.js +27 -17
  142. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  143. package/lib/dist-custom-elements/duet-popup-menu-item.js +1 -1
  144. package/lib/dist-custom-elements/duet-popup-menu.js +2 -0
  145. package/lib/dist-custom-elements/duet-promo-card.js +3 -3
  146. package/lib/dist-custom-elements/duet-radio-group.js +3 -3
  147. package/lib/dist-custom-elements/duet-radio.js +1 -1
  148. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  149. package/lib/dist-custom-elements/duet-range-stepper.js +8 -3
  150. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  151. package/lib/dist-custom-elements/duet-select.js +1 -1
  152. package/lib/dist-custom-elements/duet-show-more.js +1 -1
  153. package/lib/dist-custom-elements/duet-slideout-lang.js +1 -1
  154. package/lib/dist-custom-elements/duet-slideout-link.js +1 -1
  155. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +1 -1
  156. package/lib/dist-custom-elements/duet-slideout-panel.js +2 -2
  157. package/lib/dist-custom-elements/duet-slideout.js +2 -2
  158. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  159. package/lib/dist-custom-elements/duet-step.js +2 -2
  160. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +1 -1
  161. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  162. package/lib/dist-custom-elements/duet-submenu-bar-item.js +1 -1
  163. package/lib/dist-custom-elements/duet-submenu-bar-link.js +1 -1
  164. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  165. package/lib/dist-custom-elements/duet-tab-group.js +8 -8
  166. package/lib/dist-custom-elements/duet-tab.js +1 -1
  167. package/lib/dist-custom-elements/duet-table.js +1 -1
  168. package/lib/dist-custom-elements/duet-textarea.js +5 -5
  169. package/lib/dist-custom-elements/duet-toggle.js +1 -1
  170. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +1 -1
  171. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +1 -1
  172. package/lib/dist-custom-elements/duet-toolbar-item.js +1 -1
  173. package/lib/dist-custom-elements/duet-toolbar-link.js +1 -1
  174. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  175. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  176. package/lib/dist-custom-elements/duet-tray.js +2 -2
  177. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  178. package/lib/dist-custom-elements/duet-upload.js +11 -11
  179. package/lib/dist-custom-elements/{p-08124065.js → p-01c62feb.js} +1 -1
  180. package/lib/dist-custom-elements/{p-92a16064.js → p-18552e4e.js} +3 -3
  181. package/lib/dist-custom-elements/{p-baf3208f.js → p-1a8d1a11.js} +1 -1
  182. package/lib/dist-custom-elements/{p-83231ea8.js → p-20b3fa1e.js} +3 -3
  183. package/lib/dist-custom-elements/{p-a829df6e.js → p-27b6f57b.js} +1 -1
  184. package/lib/dist-custom-elements/{p-46074a1a.js → p-29926f8a.js} +2 -2
  185. package/lib/dist-custom-elements/{p-2f410810.js → p-29b18cdf.js} +4 -4
  186. package/lib/dist-custom-elements/{p-25c80cdb.js → p-3ec3eb5f.js} +1 -1
  187. package/lib/dist-custom-elements/{p-6d366100.js → p-3f85f7b8.js} +6 -4
  188. package/lib/dist-custom-elements/{p-e10f446d.js → p-43fc089a.js} +5 -5
  189. package/lib/dist-custom-elements/{p-17ed32c8.js → p-4779e8e0.js} +1 -1
  190. package/lib/dist-custom-elements/{p-0c564379.js → p-67ef919e.js} +250 -250
  191. package/lib/dist-custom-elements/{p-e3d597b6.js → p-6ac13d84.js} +1 -1
  192. package/lib/dist-custom-elements/{p-014c1177.js → p-7b97ad08.js} +6 -6
  193. package/lib/dist-custom-elements/{p-28ec3461.js → p-82302a93.js} +3 -3
  194. package/lib/dist-custom-elements/{p-667579b0.js → p-9ca3437c.js} +2 -2
  195. package/lib/dist-custom-elements/{p-bb25377b.js → p-b29a25ab.js} +1 -1
  196. package/lib/dist-custom-elements/{p-63954651.js → p-b676c88c.js} +1 -1
  197. package/lib/dist-custom-elements/{p-d482a2e9.js → p-c76bd205.js} +1 -1
  198. package/lib/{esm/tokens-5e02bbe0.js → dist-custom-elements/p-d5c03b61.js} +376 -376
  199. package/lib/dist-custom-elements/{p-a167e2a0.js → p-d72fa71c.js} +1 -1
  200. package/lib/dist-custom-elements/{p-e702eb52.js → p-d8932b2b.js} +4 -4
  201. package/lib/dist-custom-elements/{p-0cee8a12.js → p-ecaba4be.js} +1 -1
  202. package/lib/dist-custom-elements/{p-755dd68f.js → p-ef51ec63.js} +1 -1
  203. package/lib/dist-custom-elements/{p-f4ac6968.js → p-f40596e9.js} +2 -2
  204. package/lib/dist-custom-elements/{p-a02e62f3.js → p-f47e755d.js} +3 -3
  205. package/lib/duet/duet.esm.js +1 -1
  206. package/lib/duet/{p-1a7649e4.entry.js → p-01e99d98.entry.js} +1 -1
  207. package/lib/duet/{p-4e724a7d.entry.js → p-032e2711.entry.js} +1 -1
  208. package/lib/duet/{p-956fad95.system.entry.js → p-080d1309.system.entry.js} +1 -1
  209. package/lib/duet/p-08379332.entry.js +4 -0
  210. package/lib/duet/{p-37802e1f.system.entry.js → p-0b7eacfc.system.entry.js} +1 -1
  211. package/lib/duet/{p-c586a2c4.system.entry.js → p-166ee660.system.entry.js} +1 -1
  212. package/lib/duet/{p-0bdcf67f.js → p-1784b1d2.js} +1 -1
  213. package/lib/duet/{p-a21391c0.system.entry.js → p-1ab80c29.system.entry.js} +1 -1
  214. package/lib/duet/{p-7f4b420c.system.entry.js → p-1bc74805.system.entry.js} +1 -1
  215. package/lib/duet/{p-4781cd58.entry.js → p-20914caa.entry.js} +1 -1
  216. package/lib/duet/p-21f4713b.system.entry.js +4 -0
  217. package/lib/duet/{p-45bb3cd0.system.entry.js → p-2208faac.system.entry.js} +1 -1
  218. package/lib/duet/{p-69e67b58.entry.js → p-283d802c.entry.js} +1 -1
  219. package/lib/duet/p-33e25171.system.entry.js +4 -0
  220. package/lib/duet/{p-999fff8d.system.entry.js → p-40a7a9b0.system.entry.js} +1 -1
  221. package/lib/duet/{p-76e54ff5.entry.js → p-413838af.entry.js} +1 -1
  222. package/lib/duet/{p-ebbecac7.system.entry.js → p-427eec46.system.entry.js} +1 -1
  223. package/lib/duet/{p-15c22a22.entry.js → p-4605197f.entry.js} +1 -1
  224. package/lib/duet/{p-2522cfc3.entry.js → p-49a25bf5.entry.js} +1 -1
  225. package/lib/duet/p-49f79189.system.entry.js +4 -0
  226. package/lib/duet/p-4a901bfc.js +4 -0
  227. package/lib/duet/{p-e0907f29.entry.js → p-5063685a.entry.js} +1 -1
  228. package/lib/duet/{p-8fb1d27a.system.entry.js → p-51adcace.system.entry.js} +1 -1
  229. package/lib/duet/{p-afe7d680.entry.js → p-5dd177d8.entry.js} +1 -1
  230. package/lib/duet/{p-07ac7f3e.system.entry.js → p-60f12cac.system.entry.js} +1 -1
  231. package/lib/duet/p-6151635f.system.js +1 -1
  232. package/lib/duet/p-622f89ff.entry.js +4 -0
  233. package/lib/duet/p-62512c7e.system.entry.js +4 -0
  234. package/lib/duet/p-62c34a4d.system.entry.js +4 -0
  235. package/lib/duet/{p-ad9b7b51.entry.js → p-6623f965.entry.js} +1 -1
  236. package/lib/duet/{p-9e75e5d8.system.entry.js → p-690a8348.system.entry.js} +1 -1
  237. package/lib/duet/{p-73cd3afd.entry.js → p-6a1bd4d9.entry.js} +1 -1
  238. package/lib/duet/p-6e3a7d3f.system.entry.js +4 -0
  239. package/lib/duet/{p-6c9cfb6d.entry.js → p-6f24a09e.entry.js} +1 -1
  240. package/lib/duet/{p-eafed149.system.entry.js → p-76a419f1.system.entry.js} +1 -1
  241. package/lib/duet/p-787520f2.entry.js +4 -0
  242. package/lib/duet/{p-c776e072.entry.js → p-7f7a7a71.entry.js} +1 -1
  243. package/lib/duet/{p-3302d75d.entry.js → p-805a3314.entry.js} +1 -1
  244. package/lib/duet/{p-a90f23ec.system.entry.js → p-907787c5.system.entry.js} +1 -1
  245. package/lib/duet/{p-b78c3e3e.entry.js → p-91677c21.entry.js} +1 -1
  246. package/lib/duet/{p-b02ca265.entry.js → p-9180b8be.entry.js} +1 -1
  247. package/lib/duet/{p-7a161455.entry.js → p-96ca57c0.entry.js} +1 -1
  248. package/lib/duet/{p-628ae8ba.entry.js → p-a5bb0b7f.entry.js} +1 -1
  249. package/lib/duet/{p-cc9cfdb3.entry.js → p-a64b72f5.entry.js} +1 -1
  250. package/lib/duet/{p-4de910bd.system.entry.js → p-b781e27f.system.entry.js} +1 -1
  251. package/lib/duet/{p-73e66b09.system.js → p-c1445714.system.js} +1 -1
  252. package/lib/duet/{p-7ca15c93.entry.js → p-c2c2e797.entry.js} +1 -1
  253. package/lib/duet/{p-a659cdb5.system.entry.js → p-c30b6ad6.system.entry.js} +1 -1
  254. package/lib/duet/{p-38f9c1e3.entry.js → p-c493cd2e.entry.js} +1 -1
  255. package/lib/duet/p-c51d6fb5.system.js +4 -0
  256. package/lib/duet/p-c5f48c1c.system.entry.js +4 -0
  257. package/lib/duet/p-c86d6786.system.js +4 -0
  258. package/lib/duet/{p-0fc721ab.system.entry.js → p-caf153e4.system.entry.js} +1 -1
  259. package/lib/duet/{p-c68602c9.system.entry.js → p-ce01f793.system.entry.js} +1 -1
  260. package/lib/duet/{p-e640a515.system.entry.js → p-ce6892d9.system.entry.js} +1 -1
  261. package/lib/duet/p-d067ebb8.entry.js +4 -0
  262. package/lib/duet/p-d5c03b61.js +4 -0
  263. package/lib/duet/{p-80ffc878.system.entry.js → p-da0e9110.system.entry.js} +1 -1
  264. package/lib/duet/p-e12b461b.entry.js +4 -0
  265. package/lib/duet/p-e4595aa7.system.entry.js +4 -0
  266. package/lib/duet/p-e7d32eaa.entry.js +4 -0
  267. package/lib/duet/{p-e411627f.entry.js → p-ee4075c2.entry.js} +1 -1
  268. package/lib/duet/{p-174ad02e.system.entry.js → p-f0209c14.system.entry.js} +1 -1
  269. package/lib/duet/p-f252a415.entry.js +4 -0
  270. package/lib/duet/{p-9ac25886.system.entry.js → p-f52f44d6.system.entry.js} +1 -1
  271. package/lib/duet/{p-179881d0.system.entry.js → p-fa3801ea.system.entry.js} +1 -1
  272. package/lib/duet/{p-05a72320.entry.js → p-ff4969cc.entry.js} +1 -1
  273. package/lib/esm/duet-action-button.entry.js +2 -2
  274. package/lib/esm/duet-alert.entry.js +2 -0
  275. package/lib/esm/duet-banner.entry.js +6 -4
  276. package/lib/esm/duet-breadcrumbs.entry.js +2 -2
  277. package/lib/esm/duet-button_2.entry.js +2 -2
  278. package/lib/esm/duet-caption_4.entry.js +4 -4
  279. package/lib/esm/duet-card.entry.js +2 -2
  280. package/lib/esm/duet-checkbox.entry.js +1 -1
  281. package/lib/esm/duet-collapsible.entry.js +1 -1
  282. package/lib/esm/duet-divider_2.entry.js +2 -2
  283. package/lib/esm/duet-editable-table_3.entry.js +2 -2
  284. package/lib/esm/duet-grid_2.entry.js +1 -1
  285. package/lib/esm/duet-header_2.entry.js +2 -2
  286. package/lib/esm/duet-icon.entry.js +3 -3
  287. package/lib/esm/duet-input_2.entry.js +2 -2
  288. package/lib/esm/duet-menu-bar.entry.js +1 -1
  289. package/lib/esm/duet-modal.entry.js +26 -3
  290. package/lib/esm/duet-page-heading.entry.js +2 -1
  291. package/lib/esm/duet-pagination_2.entry.js +24 -11
  292. package/lib/esm/duet-popup-menu.entry.js +1 -0
  293. package/lib/esm/duet-promo-card.entry.js +2 -2
  294. package/lib/esm/duet-radio_2.entry.js +1 -1
  295. package/lib/esm/duet-range-slider.entry.js +1 -1
  296. package/lib/esm/duet-scrollable_3.entry.js +2 -2
  297. package/lib/esm/duet-slideout-panel.entry.js +2 -2
  298. package/lib/esm/duet-slideout.entry.js +2 -2
  299. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  300. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  301. package/lib/esm/duet-tooltip.entry.js +1 -1
  302. package/lib/esm/duet-tray.entry.js +1 -1
  303. package/lib/esm/duet.js +1 -1
  304. package/lib/esm/loader.js +1 -1
  305. package/lib/esm/{token-utils-2adbab3f.js → token-utils-1f843fb9.js} +1 -1
  306. package/lib/{dist-custom-elements/p-f9a8d356.js → esm/tokens-a9d9d4dd.js} +376 -376
  307. package/lib/esm/{tokens.module-8dbafec7.js → tokens.module-ed0ed26f.js} +250 -250
  308. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  309. package/lib/esm-es5/duet-alert.entry.js +1 -1
  310. package/lib/esm-es5/duet-banner.entry.js +1 -1
  311. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  312. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  313. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  314. package/lib/esm-es5/duet-card.entry.js +1 -1
  315. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  316. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  317. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  318. package/lib/esm-es5/duet-editable-table_3.entry.js +2 -2
  319. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  320. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  321. package/lib/esm-es5/duet-icon.entry.js +1 -1
  322. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  323. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  324. package/lib/esm-es5/duet-modal.entry.js +1 -1
  325. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  326. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  327. package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
  328. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  329. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  330. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  331. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  332. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  333. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  334. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  335. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  336. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  337. package/lib/esm-es5/duet-tray.entry.js +1 -1
  338. package/lib/esm-es5/duet.js +1 -1
  339. package/lib/esm-es5/loader.js +1 -1
  340. package/lib/esm-es5/{token-utils-2adbab3f.js → token-utils-1f843fb9.js} +1 -1
  341. package/lib/esm-es5/tokens-a9d9d4dd.js +4 -0
  342. package/lib/esm-es5/tokens.module-ed0ed26f.js +4 -0
  343. package/lib/types/components/duet-alert/duet-alert.d.ts +4 -0
  344. package/lib/types/components/duet-modal/duet-modal.d.ts +12 -2
  345. package/lib/types/components/duet-pagination/duet-pagination.d.ts +4 -0
  346. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +4 -0
  347. package/lib/types/components/duet-range-stepper/duet-range-stepper.d.ts +4 -0
  348. package/lib/types/components.d.ts +34 -2
  349. package/package.json +3 -3
  350. package/lib/duet/p-061f4be0.system.entry.js +0 -4
  351. package/lib/duet/p-1c689a26.system.js +0 -4
  352. package/lib/duet/p-1ef0e5ca.system.entry.js +0 -4
  353. package/lib/duet/p-46dda347.system.entry.js +0 -4
  354. package/lib/duet/p-5c8e3667.entry.js +0 -4
  355. package/lib/duet/p-67dc45d7.js +0 -4
  356. package/lib/duet/p-723e165b.system.entry.js +0 -4
  357. package/lib/duet/p-8a41bde4.system.entry.js +0 -4
  358. package/lib/duet/p-8ba91848.entry.js +0 -4
  359. package/lib/duet/p-a3afb1af.entry.js +0 -4
  360. package/lib/duet/p-b31d31d8.system.js +0 -4
  361. package/lib/duet/p-b6f62761.entry.js +0 -4
  362. package/lib/duet/p-c3c12f8d.entry.js +0 -4
  363. package/lib/duet/p-c5cf76db.entry.js +0 -4
  364. package/lib/duet/p-d739e7af.system.entry.js +0 -4
  365. package/lib/duet/p-deb98669.entry.js +0 -4
  366. package/lib/duet/p-e362468f.system.entry.js +0 -4
  367. package/lib/duet/p-e58015e8.system.entry.js +0 -4
  368. package/lib/duet/p-f9a8d356.js +0 -4
  369. package/lib/esm-es5/tokens-5e02bbe0.js +0 -4
  370. package/lib/esm-es5/tokens.module-8dbafec7.js +0 -4
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import{r as e,c as t,h as a,g as d}from"./p-83e9058b.js";import{d as i,e as o}from"./p-8354d1f1.js";import{i as s}from"./p-a58bd561.js";import{a as l}from"./p-beeb12f1.js";import{f as r}from"./p-d624e990.js";import{f as n}from"./p-a1b7f2a0.js";import{a as m,g as u,c as h,d as p}from"./p-2e36d5bf.js";import{h as c}from"./p-06e608ae.js";import{T as g}from"./p-5c488cf4.js";import"./p-0e052642.js";const b=class{constructor(a){var d,i;e(this,a),this.duetOpen=t(this,"duetOpen",7),this.duetClose=t(this,"duetClose",7),this.duetCloseComplete=t(this,"duetCloseComplete",7),this.duetBeforeClose=t(this,"duetBeforeClose",7),this.hasStickyHeader=!1,this.isAndroidDevice=(null===(i=null===(d=null===navigator||void 0===navigator?void 0:navigator.userAgent)||void 0===d?void 0:d.toLowerCase())||void 0===i?void 0:i.indexOf("android"))>-1||null,this.isSafariBrowser=/^((?!chrome|android).)*safari/i.test(null===navigator||void 0===navigator?void 0:navigator.userAgent),this.accessibleLoaderAnnouncementDefaults=l,this.accessibleCloseLabelDefaults={fi:"Sulje ikkuna",sv:"Stäng fönstret",en:"Close the dialog"},this.handleAndroidResizeEvents=()=>{"INPUT"==document.activeElement.tagName&&window.setTimeout((function(){var e;try{null===(e=null===document||void 0===document?void 0:document.activeElement)||void 0===e||e.scrollIntoViewIfNeeded(!0)}catch(e){}}),100)},this.open=!1,this.language=m(),this.accessibleCloseLabel=u(this.accessibleCloseLabelDefaults,this.language),this.accessibleLoaderAnnouncement=u(this.accessibleLoaderAnnouncementDefaults,this.language),this.size="medium",this.accessibleDescribedBy=void 0,this.accessibleLabelledBy=void 0,this.accessibleLabel=void 0,this.accessibleDetails=void 0,this.accessibleDescription=void 0,this.variation="default",this.gutterSize="medium",this.theme="",this.heading="",this.headingLevel="h3",this.headingVisualLevel=void 0,this.icon="",this.color="",this.active=!1,this.closeOnBlur=!1}openChanged(){this.open?(this.modalEl&&this.modalEl.scrollTop&&(this.modalEl.scrollTop=0),this.focusedElBeforeOpen=document.activeElement,i(this.modalEl,{reserveScrollBarGap:!0}),this.teleport.makeSiblingsInert(),this.slotContainerEl.querySelectorAll(".duet-loader-message").forEach((e=>e.remove())),setTimeout((()=>{"loader"===this.variation?this.addMessage(this.accessibleLoaderAnnouncement,!1):this.isAndroidDevice?this.modalEl.focus():this.buttonEl.setFocus()}),600),setTimeout((()=>{this.modalEl.classList.add("duet-disable-transitions")}),800),this.isAndroidDevice&&window.addEventListener("resize",this.handleAndroidResizeEvents),this.duetOpen.emit()):(this.modalEl.classList.remove("duet-disable-transitions"),this.modalEl.addEventListener("transitionend",(()=>this.duetCloseComplete.emit()),{once:!0}),o(this.modalEl),this.duetClose.emit(),this.teleport.removeInertFromSiblings(),setTimeout((()=>{r(this.focusedElBeforeOpen)}),600),this.isAndroidDevice&&window.removeEventListener("resize",this.handleAndroidResizeEvents))}activeChanged(){this.open=this.active}componentWillLoad(){this.hasStickyHeader=c(this.element,"sticky-header"),s(this)}componentDidLoad(){this.active&&(this.open=!0,this.modalEl.classList.add("duet-disable-transitions"))}connectedCallback(){this.teleport||(this.teleport=new g(this.element)),this.teleport&&this.teleport.activate(),h(this,[{prop:"accessibleCloseLabel",defaults:"accessibleCloseLabelDefaults"},{prop:"accessibleLoaderAnnouncement",defaults:"accessibleLoaderAnnouncementDefaults"}])}disconnectedCallback(){p(this),this.modalEl&&o(this.modalEl)}handleKeyUp(e){this.open&&n(e)&&this.closeModal(e)}async show(){this.open=!0}async hide(){this.open=!1}async scrollToTop(e=!0){var t;const a=e?"smooth":"auto";if("slide-up"===this.variation){const e=(null===(t=this.modalEl.querySelector(".duet-modal-sticky-header"))||void 0===t?void 0:t.clientHeight)||0,d=this.modalEl.querySelector(".duet-modal-body").computedStyleMap().get("padding-top");this.slotContainerEl.style.scrollMarginTop=`${e+d.value}px`,this.slotContainerEl.scrollIntoView({behavior:a})}else this.modalEl.querySelector(".duet-modal-body").scrollIntoView({behavior:a})}async addMessage(e,t=!0){const a=document.createElement(t?"duet-paragraph":"duet-visually-hidden");a.textContent=e,a.classList.add("duet-loader-message"),t&&setTimeout((()=>{this.slotContainerEl.querySelectorAll(".duet-loader-message").forEach((e=>e.classList.remove("show"))),a.classList.add("show")}),10),this.slotContainerEl.appendChild(a)}closeModal(e){this.duetBeforeClose.emit({originalEvent:e,component:"duet-modal"}),e.defaultPrevented||setTimeout((()=>{this.hide()}),1)}render(){var e,t;let d="primary",i="secondary";const o=a("div",{class:"duet-modal-close"},a("duet-button",{ref:e=>this.buttonEl=e,variation:"plain",accessibleLabel:this.accessibleCloseLabel,color:i,iconSize:"large",icon:"navigation-close",iconOnly:!0,margin:"none",theme:this.theme,onClick:e=>this.closeModal(e),fixed:!0}));return"turva"===this.theme&&(d="primary-turva",i="secondary-turva"),a("div",{ref:e=>this.modalEl=e,"aria-label":null!==(e=this.accessibleLabel)&&void 0!==e?e:this.heading,"aria-details":this.accessibleDetails,"aria-description":this.accessibleDescription,"aria-describedby":this.accessibleDescribedBy,role:"loader"===this.variation?"alert":"dialog","aria-modal":!this.isSafariBrowser,tabindex:"-1",class:{"duet-modal-container":!0,"duet-theme-turva":"turva"===this.theme,"duet-modal-active":this.open,"duet-modal-slide-up":"slide-up"===this.variation,"duet-modal-has-sticky-header":this.hasStickyHeader}},a("duet-overlay",{"z-index":"-1",visible:this.open,variation:"loader"===this.variation?"white":"default"}),a("div",{ref:e=>this.modalInnerEl=e,class:{"duet-modal-inner":!0,[this.size]:!0,"duet-modal-slide-up":"slide-up"===this.variation},onClick:e=>{this.closeOnBlur&&(e.target||e.srcElement)===this.modalInnerEl&&this.closeModal(e)}},a("div",{class:{"duet-modal":!0,"duet-modal-has-sticky-header":this.hasStickyHeader,[this.size]:!0,[this.variation]:!0}},"none"!==this.gutterSize&&!this.hasStickyHeader&&a("duet-spacer",null),this.hasStickyHeader?a("div",{class:"duet-modal-sticky-header"},o,a("slot",{name:"sticky-header"})):o,a("div",{class:{"duet-modal-body":!0,"duet-modal-gutter-none":"none"===this.gutterSize,"duet-modal-gutter-small":"small"===this.gutterSize,"duet-modal-gutter-medium":"medium"===this.gutterSize,"duet-modal-gutter-large":"large"===this.gutterSize}},a("div",{class:"duet-modal-header"},a("span",{class:"duet-modal-inner-slot-top"},a("slot",{name:"top"})),this.icon&&a("duet-icon",{name:this.icon,size:"xx-large",color:this.color||d}),this.heading&&a("duet-heading",{"visual-level":null!==(t=this.headingVisualLevel)&&void 0!==t?t:this.headingLevel,level:this.headingLevel,theme:this.theme},this.heading)),"loader"===this.variation&&a("div",{class:"duet-modal-spinner"},a("duet-spinner",{size:"large",color:"primary"})),a("div",{class:"duet-modal-inner-slot-default",ref:e=>this.slotContainerEl=e,"aria-live":"loader"===this.variation?"assertive":"off"},a("slot",null))))))}get element(){return d(this)}static get watchers(){return{open:["openChanged"],active:["activeChanged"]}}};b.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}.duet-modal-container{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;max-height:100vh;overflow-y:auto;visibility:hidden;opacity:0;transition:300ms ease;transition-delay:200ms}.duet-modal-container.duet-modal-active{visibility:visible;opacity:1;transition:300ms ease;transition-delay:0s}.duet-modal-container.duet-disable-transitions{transition:none}.duet-modal-container.duet-modal-slide-up{overflow:hidden}::slotted(img){width:100%}.duet-modal-inner{display:flex;align-items:center;width:100%;min-height:100%;padding:20px 16px}@media (min-width: 36em){.duet-modal-inner{padding:48px 16px}}.duet-modal-inner.duet-modal-slide-up{align-items:stretch;justify-content:center;height:100%;padding-top:48px;padding-bottom:0;overflow:hidden}.duet-modal-inner.duet-modal-slide-up::after{position:absolute;bottom:0;z-index:300;display:block;width:100%;max-width:686px;height:48px;margin:auto;pointer-events:none;content:"";background:linear-gradient(rgba(255, 255, 255, 0), rgb(255, 255, 255))}.duet-modal-inner.duet-modal-slide-up::after.small{max-width:545px}.duet-modal-inner.duet-modal-slide-up::after.large{max-width:100%}@media (min-width: 36em){.duet-modal-inner.duet-modal-slide-up::after.large{max-width:1110px}}@media (max-width: 35.9375em){.duet-modal-inner.large{padding-right:0;padding-left:0}.duet-modal-inner.duet-modal-slide-up{padding:0;padding-top:28px}}.duet-modal{position:relative;width:100%;max-width:686px;margin:auto;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-weight:400;font-variant-numeric:tabular-nums;line-height:1.5;color:rgb(0, 41, 77);background:rgb(255, 255, 255);border-radius:4px;opacity:0;transition:300ms ease;transition-delay:0ms;transform:scale(0.96)}.duet-theme-turva .duet-modal{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}.duet-modal-active .duet-modal{opacity:1;transition:300ms ease;transition-delay:200ms;transform:none}.duet-modal-active .duet-modal.slide-up{top:0;transition:top 600ms ease}.duet-modal.loader{text-align:center;background:transparent}.duet-modal.loader .duet-modal-close{display:none}.duet-modal.loader .duet-modal-spinner{position:relative;height:120px}.duet-modal.loader .duet-modal-inner-slot-default{position:relative;backdrop-filter:blur(10px)}.duet-modal.loader duet-paragraph.duet-loader-message{position:absolute;opacity:0;transition:all 300ms ease;transform:scaleY(0);transform-origin:top}.duet-modal.loader duet-paragraph.duet-loader-message.show{opacity:1;transform:scaleY(1);transform-origin:bottom}.duet-modal.loader duet-paragraph.duet-loader-message.show::part(duet-paragraph){backdrop-filter:blur(10px)}.duet-disable-transitions .duet-modal{transition:none}.duet-modal.small{max-width:545px}.duet-modal.large{max-width:100%}@media (min-width: 36em){.duet-modal.large{max-width:1110px}}.duet-modal.slide-up{top:100vh;margin:0;overflow:auto;border-radius:4px 4px 0 0;opacity:1;transition:top 600ms ease}@media (max-width: 35.9375em){.duet-modal.slide-up{border-radius:16px 16px 0 0}}.duet-modal.duet-modal-has-sticky-header{height:100%;overflow:auto}.duet-modal:focus{outline:0}.duet-modal-body,.duet-modal-sticky-header{width:100%;padding:36px 28px}.duet-modal-body.duet-modal-gutter-none,.duet-modal-sticky-header.duet-modal-gutter-none{padding:0 !important}.duet-modal-body.duet-modal-gutter-small,.duet-modal-sticky-header.duet-modal-gutter-small{padding:36px 20px}.duet-modal-body.duet-modal-gutter-large,.duet-modal-sticky-header.duet-modal-gutter-large{padding:48px 36px}@media (max-width: 22.5em){.duet-modal-body,.duet-modal-sticky-header{padding:36px 20px}.duet-modal-body.duet-modal-gutter-large,.duet-modal-sticky-header.duet-modal-gutter-large{padding:48px 28px}}@media (max-width: 35.9375em){.duet-modal-body,.duet-modal-sticky-header{padding:36px 20px}.duet-modal-body.duet-modal-gutter-large,.duet-modal-sticky-header.duet-modal-gutter-large{padding:48px 36px}}@media (min-width: 36em){.duet-modal-body,.duet-modal-sticky-header{padding:36px}.duet-modal-body.duet-modal-gutter-large,.duet-modal-sticky-header.duet-modal-gutter-large{padding:28px 72px}}@media (min-width: 48em){.duet-modal-body,.duet-modal-sticky-header{padding:36px 72px}.duet-modal-body.duet-modal-gutter-large,.duet-modal-sticky-header.duet-modal-gutter-large{padding:36px 72px}}@media (min-width: 76.25em){.duet-modal-body,.duet-modal-sticky-header{padding:36px 48px 48px}.duet-modal-body.duet-modal-gutter-large,.duet-modal-sticky-header.duet-modal-gutter-large{padding:48px 94px}.small .duet-modal-body,.small .duet-modal-sticky-header{padding:36px 48px}}.duet-modal-header{text-align:center}.duet-modal-sticky-header{position:sticky;top:0;z-index:300;display:block;padding-bottom:12px;text-align:left;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}.duet-theme-turva .duet-modal-sticky-header{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}.duet-modal-close{position:absolute;top:12px;right:12px}.duet-modal-heading{width:100%;padding-right:60px;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:1.25rem;font-style:normal;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(0, 41, 77);text-decoration:none;text-overflow:ellipsis;letter-spacing:-0.01rem;white-space:nowrap}.duet-modal-heading.duet-p-0{padding:0 !important}.duet-modal-heading.duet-m-0{margin:0 !important}';export{b as duet_modal}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as e,c as t,h as a,H as i,g as o}from"./p-83e9058b.js";import{a as s}from"./p-115c79b6.js";import{f as l,t as n}from"./p-f9a8d356.js";import{i as r}from"./p-a58bd561.js";import{c}from"./p-5e59e970.js";import{i as d,s as p,u as h}from"./p-a1b7f2a0.js";import{h as m}from"./p-06e608ae.js";import{s as g}from"./p-0e052642.js";const u=class{constructor(a){e(this,a),this.duetToggle=t(this,"duetToggle",7),this.id=c("DuetCollapsible"),this.handleKeyDown=e=>{d(e)&&this.handleClick(e)},this.getFontSizeFromTokens=(e=this.headingSize)=>{if(e){const t=e.replace(/-/g,"_");return n[`font_size_${t}`]}return l},this.getEquivalentIconSize=(e=this.headingSize)=>{switch(e){case"x-small":case"small":case"medium":default:return"xx-small";case"large":return"x-small";case"x-large":return"small";case"xx-large":return"medium";case"xxx-large":return"x-large";case"xxxx-large":return"xxx-large"}},this.handleClick=e=>{e.preventDefault(),this.open=!this.open,this.duetToggle.emit({component:"duet-collapsible",originalEvent:e})},this.theme="",this.accessibleLabel=void 0,this.heading="",this.headingFullWidth=!1,this.centerHeading=!1,this.headingWeight="semibold",this.headingSize=void 0,this.headingLevel=void 0,this.margin="auto",this.open=!1}componentWillLoad(){r(this),this.hasAfterHeading=m(this.element,"after-heading")}connectedCallback(){p(this)}disconnectedCallback(){h(this)}async setFocus(e){this.nativeButton&&(this.element.classList.add("user-is-tabbing"),this.nativeButton.focus(e))}render(){const e=this.headingLevel?g(this.headingLevel):"div";return a(i,{class:{"duet-m-0":"none"===this.margin}},a(e,null,a("button",{class:{"duet-collapsible-heading":!0,"duet-collapsible-heading-centered":this.centerHeading,"duet-theme-turva":"turva"===this.theme,"duet-collapsible-normal-weight":"normal"===this.headingWeight,"has-after-heading":this.hasAfterHeading,"full-width":this.headingFullWidth},style:{"font-size":this.getFontSizeFromTokens()},role:"button",ref:e=>this.nativeButton=e,"aria-label":this.accessibleLabel,"aria-expanded":this.open?"true":"false","aria-controls":this.id,onClick:this.handleClick,onKeyDown:this.handleKeyDown},a("div",{class:"duet-collapsible-heading-icon"},a("duet-icon",{margin:"none",color:"turva"===this.theme?"secondary-turva":"secondary",size:this.getEquivalentIconSize(),icon:s.svg})),a("div",{class:"duet-collapsible-heading-content",part:"duet-collapsible-heading-content"},this.heading),this.hasAfterHeading&&a("div",{part:"duet-collapsible-after-heading"},a("slot",{name:"after-heading"})))),a("div",{id:this.id,class:{"duet-collapsible-content":!0,"duet-theme-turva":"turva"===this.theme},part:"duet-collapsible-content"},a("slot",null)))}get element(){return o(this)}};u.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=after-heading]){display:inline-block}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;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:1rem;font-weight:600;line-height:1.5;color:rgb(0, 41, 77)}:host(.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:rgb(23, 28, 58)}:host(.duet-m-0){margin:0 !important}.duet-collapsible-content{display:none;padding-left:18px;margin-top: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-weight:400;font-variant-numeric:tabular-nums;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;color:rgb(0, 41, 77)}@media (max-width: 35.9375em){.duet-collapsible-content{font-size:0.875rem}}.duet-collapsible-content.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:rgb(23, 28, 58)}:host([open])>.duet-collapsible-content{display:block}.duet-collapsible-heading{-webkit-user-select:none;user-select:none;display:flex;align-items:center;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:600;line-height:1.5;color:rgb(0, 41, 77);text-align:left;cursor:pointer;border-radius:4px}.duet-collapsible-heading.full-width{width:100%}.duet-collapsible-heading.duet-collapsible-heading-centered{margin:auto}.duet-collapsible-heading.duet-collapsible-normal-weight{font-weight:400}.duet-collapsible-heading.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:rgb(23, 28, 58)}.duet-collapsible-heading .duet-collapsible-heading-content{min-width:0}.duet-collapsible-heading.has-after-heading .duet-collapsible-heading-content+div{margin-left:16px}.duet-collapsible-heading.has-after-heading .duet-collapsible-heading-content+div.float-right{margin-left:auto}.duet-collapsible-heading:focus{outline:0}:host(.user-is-tabbing) .duet-collapsible-heading: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-collapsible-heading.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-collapsible-heading-icon{margin-right:8px !important;display:flex;align-items:center;justify-content:center;color:rgb(0, 41, 77);transition:transform 300ms ease}.duet-collapsible-heading-icon:last-child,.duet-collapsible-heading-icon:last-of-type{margin-right:0 !important}[aria-expanded=true] .duet-collapsible-heading-icon{transform:rotate(180deg)}';export{u as duet_collapsible}
4
+ import{r as e,c as t,h as a,H as i,g as o}from"./p-83e9058b.js";import{a as s}from"./p-115c79b6.js";import{f as l,t as n}from"./p-d5c03b61.js";import{i as r}from"./p-a58bd561.js";import{c}from"./p-5e59e970.js";import{i as d,s as p,u as h}from"./p-a1b7f2a0.js";import{h as m}from"./p-06e608ae.js";import{s as g}from"./p-0e052642.js";const u=class{constructor(a){e(this,a),this.duetToggle=t(this,"duetToggle",7),this.id=c("DuetCollapsible"),this.handleKeyDown=e=>{d(e)&&this.handleClick(e)},this.getFontSizeFromTokens=(e=this.headingSize)=>{if(e){const t=e.replace(/-/g,"_");return n[`font_size_${t}`]}return l},this.getEquivalentIconSize=(e=this.headingSize)=>{switch(e){case"x-small":case"small":case"medium":default:return"xx-small";case"large":return"x-small";case"x-large":return"small";case"xx-large":return"medium";case"xxx-large":return"x-large";case"xxxx-large":return"xxx-large"}},this.handleClick=e=>{e.preventDefault(),this.open=!this.open,this.duetToggle.emit({component:"duet-collapsible",originalEvent:e})},this.theme="",this.accessibleLabel=void 0,this.heading="",this.headingFullWidth=!1,this.centerHeading=!1,this.headingWeight="semibold",this.headingSize=void 0,this.headingLevel=void 0,this.margin="auto",this.open=!1}componentWillLoad(){r(this),this.hasAfterHeading=m(this.element,"after-heading")}connectedCallback(){p(this)}disconnectedCallback(){h(this)}async setFocus(e){this.nativeButton&&(this.element.classList.add("user-is-tabbing"),this.nativeButton.focus(e))}render(){const e=this.headingLevel?g(this.headingLevel):"div";return a(i,{class:{"duet-m-0":"none"===this.margin}},a(e,null,a("button",{class:{"duet-collapsible-heading":!0,"duet-collapsible-heading-centered":this.centerHeading,"duet-theme-turva":"turva"===this.theme,"duet-collapsible-normal-weight":"normal"===this.headingWeight,"has-after-heading":this.hasAfterHeading,"full-width":this.headingFullWidth},style:{"font-size":this.getFontSizeFromTokens()},role:"button",ref:e=>this.nativeButton=e,"aria-label":this.accessibleLabel,"aria-expanded":this.open?"true":"false","aria-controls":this.id,onClick:this.handleClick,onKeyDown:this.handleKeyDown},a("div",{class:"duet-collapsible-heading-icon"},a("duet-icon",{margin:"none",color:"turva"===this.theme?"secondary-turva":"secondary",size:this.getEquivalentIconSize(),icon:s.svg})),a("div",{class:"duet-collapsible-heading-content",part:"duet-collapsible-heading-content"},this.heading),this.hasAfterHeading&&a("div",{part:"duet-collapsible-after-heading"},a("slot",{name:"after-heading"})))),a("div",{id:this.id,class:{"duet-collapsible-content":!0,"duet-theme-turva":"turva"===this.theme},part:"duet-collapsible-content"},a("slot",null)))}get element(){return o(this)}};u.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=after-heading]){display:inline-block}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;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:1rem;font-weight:600;line-height:1.5;color:rgb(0, 41, 77)}:host(.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:rgb(23, 28, 58)}:host(.duet-m-0){margin:0 !important}.duet-collapsible-content{display:none;padding-left:18px;margin-top: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-weight:400;font-variant-numeric:tabular-nums;-webkit-hyphens:auto;hyphens:auto;line-height:1.5;color:rgb(0, 41, 77)}@media (max-width: 35.9375em){.duet-collapsible-content{font-size:0.875rem}}.duet-collapsible-content.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:rgb(23, 28, 58)}:host([open])>.duet-collapsible-content{display:block}.duet-collapsible-heading{-webkit-user-select:none;user-select:none;display:flex;align-items:center;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:600;line-height:1.5;color:rgb(0, 41, 77);text-align:left;cursor:pointer;border-radius:4px}.duet-collapsible-heading.full-width{width:100%}.duet-collapsible-heading.duet-collapsible-heading-centered{margin:auto}.duet-collapsible-heading.duet-collapsible-normal-weight{font-weight:400}.duet-collapsible-heading.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:rgb(23, 28, 58)}.duet-collapsible-heading .duet-collapsible-heading-content{min-width:0}.duet-collapsible-heading.has-after-heading .duet-collapsible-heading-content+div{margin-left:16px}.duet-collapsible-heading.has-after-heading .duet-collapsible-heading-content+div.float-right{margin-left:auto}.duet-collapsible-heading:focus{outline:0}:host(.user-is-tabbing) .duet-collapsible-heading: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-collapsible-heading.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-collapsible-heading-icon{margin-right:8px !important;display:flex;align-items:center;justify-content:center;color:rgb(0, 41, 77);transition:transform 300ms ease}.duet-collapsible-heading-icon:last-child,.duet-collapsible-heading-icon:last-of-type{margin-right:0 !important}[aria-expanded=true] .duet-collapsible-heading-icon{transform:rotate(180deg)}';export{u as duet_collapsible}
@@ -1,4 +1,4 @@
1
1
  var __awaiter=this&&this.__awaiter||function(e,t,r,n){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,i){function s(e){try{u(n.next(e))}catch(e){i(e)}}function d(e){try{u(n["throw"](e))}catch(e){i(e)}}function u(e){e.done?r(e.value):a(e.value).then(s,d)}u((n=n.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,a,i,s;return s={next:d(0),throw:d(1),return:d(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function d(e){return function(t){return u([e,t])}}function u(d){if(n)throw new TypeError("Generator is already executing.");while(s&&(s=0,d[0]&&(r=0)),r)try{if(n=1,a&&(i=d[0]&2?a["return"]:d[0]?a["throw"]||((i=a["return"])&&i.call(a),0):a.next)&&!(i=i.call(a,d[1])).done)return i;if(a=0,i)d=[d[0]&2,i.value];switch(d[0]){case 0:case 1:i=d;break;case 4:r.label++;return{value:d[1],done:false};case 5:r.label++;a=d[1];d=[0];continue;case 7:d=r.ops.pop();r.trys.pop();continue;default:if(!(i=r.trys,i=i.length>0&&i[i.length-1])&&(d[0]===6||d[0]===2)){r=0;continue}if(d[0]===3&&(!i||d[1]>i[0]&&d[1]<i[3])){r.label=d[1];break}if(d[0]===6&&r.label<i[1]){r.label=i[1];i=d;break}if(i&&r.label<i[2]){r.label=i[2];r.ops.push(d);break}if(i[2])r.ops.pop();r.trys.pop();continue}d=t.call(e,r)}catch(e){d=[6,e];a=0}finally{n=i=0}if(d[0]&5)throw d[1];return{value:d[0]?d[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * Built with Duet Design System
4
- */System.register(["./p-9644775c.system.js","./p-b31d31d8.system.js","./p-50f4bca2.system.js","./p-e6b5a1c7.system.js","./p-b864159a.system.js","./p-34d7dd10.system.js"],(function(e){"use strict";var t,r,n,a,i,s,d,u,o,c,g,l,h,b;return{setters:[function(e){t=e.r;r=e.c;n=e.h;a=e.H;i=e.g},function(e){s=e.i;d=e.j;u=e.k;o=e.l},function(e){c=e.i},function(e){g=e.c},function(e){l=e.i},function(e){h=e.s;b=e.u}],execute:function(){var p='*.sc-duet-range-slider,*.sc-duet-range-slider::after,*.sc-duet-range-slider::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-range-slider-h{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%;text-align:left;vertical-align:bottom}.sc-duet-range-slider-h:last-child,.sc-duet-range-slider-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-range-slider-h{width:calc(50% - 16px - 3px)}.duet-expand.sc-duet-range-slider-h{width:100% !important}}.duet-m-0.sc-duet-range-slider-h{margin:0 !important}.duet-range-container.sc-duet-range-slider{position:relative;width:100%}.duet-output.sc-duet-range-slider{position:absolute;top:12px;right:0;z-index:200;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;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(0, 41, 77);background:rgb(255, 255, 255)}.duet-theme-turva.sc-duet-range-slider .duet-output.sc-duet-range-slider{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}.duet-range-disabled.sc-duet-range-slider .duet-output.sc-duet-range-slider{color:rgb(144, 149, 153)}.duet-range-disabled.duet-theme-turva.sc-duet-range-slider .duet-output.sc-duet-range-slider{color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider{position:relative;z-index:100;width:100%;height:4px;background:rgb(207, 210, 212);border-radius:4px}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider{background:rgb(207, 207, 209)}.duet-ie.sc-duet-range-slider .duet-range.sc-duet-range-slider{display:block;width:auto;height:26px;background:transparent !important}.duet-range.sc-duet-range-slider::-moz-range-track{height:1px;background:transparent !important;border:0;-moz-appearance:none}.duet-range.sc-duet-range-slider::-ms-track{color:transparent;background:transparent;border:0}.duet-range.sc-duet-range-slider:focus,.duet-range.sc-duet-range-slider:active{outline:0}.user-is-tabbing.sc-duet-range-slider-h .duet-range.sc-duet-range-slider:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px rgba(0, 119, 179, 0.75)}.user-is-tabbing.sc-duet-range-slider-h .duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px rgba(23, 28, 58, 0.75)}.duet-range.sc-duet-range-slider::-webkit-slider-runnable-track{background:transparent}.duet-range.sc-duet-range-slider::-webkit-slider-thumb{position:relative;width:24px;height:24px;cursor:-webkit-grab;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:50%;transition:box-shadow 300ms ease;-webkit-appearance:none}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-webkit-slider-thumb{border-color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider:active::-webkit-slider-thumb{cursor:-webkit-grabbing}.duet-range.sc-duet-range-slider::-moz-range-thumb{position:relative;width:24px;height:24px;cursor:-moz-grab;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:50%;appearance:none}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-moz-range-thumb{border-color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider:active::-moz-range-thumb{cursor:-moz-grabbing}.duet-range.sc-duet-range-slider::-ms-thumb{position:relative;width:24px;height:24px;overflow:visible;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:50%}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-ms-thumb{border-color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider:disabled{background:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled{background:rgb(207, 207, 209) !important}.duet-range.sc-duet-range-slider:disabled::-webkit-slider-thumb{cursor:default;background:rgb(207, 210, 212);border-color:transparent}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled::-webkit-slider-thumb{background:rgb(207, 207, 209);border-color:transparent}.duet-range.sc-duet-range-slider:disabled::-moz-range-thumb{cursor:default;background:rgb(207, 210, 212);border-color:transparent}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled::-moz-range-thumb{background:rgb(207, 207, 209);border-color:transparent}.duet-range.sc-duet-range-slider:disabled::-ms-thumb{cursor:default;background:rgb(207, 210, 212);border-color:transparent}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled::-ms-thumb{background:rgb(207, 207, 209);border-color:transparent}.duet-range.sc-duet-range-slider::-ms-fill-lower{height:4px;background:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-ms-fill-lower{background:rgb(198, 12, 48)}.duet-range.sc-duet-range-slider::-ms-fill-upper{height:4px;background:rgb(207, 210, 212)}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-ms-fill-upper{background:rgb(207, 207, 209)}.duet-label-hidden.sc-duet-range-slider duet-label.sc-duet-range-slider,.duet-label-hidden.sc-duet-range-slider output.sc-duet-range-slider{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}';var m={turva:{active:s,inactive:d},default:{active:u,inactive:o}};var f=e("duet_range_slider",function(){function e(e){var n=this;t(this,e);this.duetChange=r(this,"duetChange",3);this.duetInput=r(this,"duetInput",7);this.rangeId=g("DuetRange");this.onInput=function(e){var t=e.target;if(t){n.value=parseFloat(t.value)||0}n.duetInput.emit({originalEvent:e,value:n.value,component:"duet-range-slider"})};this.onChange=function(e){var t=e.target;if(t){n.value=parseFloat(t.value)||0}clearTimeout(n.timeoutId);n.timeoutId=setTimeout((function(){n.duetChange.emit({originalEvent:e,value:n.value,component:"duet-range-slider"})}),n.debounce)};this.theme="";this.margin="auto";this.expand=false;this.identifier=undefined;this.name=undefined;this.required=false;this.disabled=false;this.accessibleActiveDescendant=undefined;this.accessibleControls=undefined;this.accessibleOwns=undefined;this.accessibleDescribedBy=undefined;this.min=0;this.label="label";this.labelColor=undefined;this.labelWeight=undefined;this.labelHidden=false;this.unit="";this.max=100;this.step=1;this.locale="fi-FI";this.value=0;this.debounce=0}e.prototype.componentWillLoad=function(){c(this)};e.prototype.connectedCallback=function(){h(this)};e.prototype.disconnectedCallback=function(){b(this)};e.prototype.setFocus=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.nativeInput.focus(e);return[2]}))}))};e.prototype.calculatePercentage=function(){return(this.value-this.min)/(this.max-this.min)*100};e.prototype.render=function(){var e=this;var t=this.identifier||this.rangeId;var r=this.theme==="turva"?"turva":"default";var i=m[r],s=i.inactive,d=i.active;var u=this.calculatePercentage();var o={background:"-webkit-linear-gradient(left,".concat(d," 0%,").concat(d," ").concat(u,"%,").concat(s," ").concat(u,"%)")};return n(a,{class:{"duet-m-0":this.margin==="none","duet-expand":this.expand}},n("div",{class:{"duet-range-container":true,"duet-label-hidden":this.labelHidden,"duet-theme-turva":this.theme==="turva","duet-ie":l(),"duet-range-disabled":this.disabled}},n("duet-label",{theme:r,color:this.labelColor,weight:this.labelWeight,margin:"small",for:t},this.label),n("output",{"aria-hidden":"true",htmlFor:t,class:"duet-output"},this.value.toLocaleString(this.locale),this.unit),n("input",{onInput:this.onInput,onChange:this.onChange,ref:function(t){return e.nativeInput=t},type:"range",min:this.min,max:this.max,step:this.step,value:this.value,style:o,"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":this.value,"aria-valuetext":"".concat(this.value," ").concat(this.unit),"aria-controls":this.accessibleControls,"aria-activedescendant":this.accessibleActiveDescendant,"aria-owns":this.accessibleOwns,"aria-describedby":this.accessibleDescribedBy,id:t,name:this.name,disabled:this.disabled,required:this.required,class:"duet-range"})))};Object.defineProperty(e.prototype,"element",{get:function(){return i(this)},enumerable:false,configurable:true});return e}());f.style=p}}}));
4
+ */System.register(["./p-9644775c.system.js","./p-c86d6786.system.js","./p-50f4bca2.system.js","./p-e6b5a1c7.system.js","./p-b864159a.system.js","./p-34d7dd10.system.js"],(function(e){"use strict";var t,r,n,a,i,s,d,u,o,c,g,l,h,b;return{setters:[function(e){t=e.r;r=e.c;n=e.h;a=e.H;i=e.g},function(e){s=e.i;d=e.j;u=e.k;o=e.l},function(e){c=e.i},function(e){g=e.c},function(e){l=e.i},function(e){h=e.s;b=e.u}],execute:function(){var p='*.sc-duet-range-slider,*.sc-duet-range-slider::after,*.sc-duet-range-slider::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-range-slider-h{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%;text-align:left;vertical-align:bottom}.sc-duet-range-slider-h:last-child,.sc-duet-range-slider-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-range-slider-h{width:calc(50% - 16px - 3px)}.duet-expand.sc-duet-range-slider-h{width:100% !important}}.duet-m-0.sc-duet-range-slider-h{margin:0 !important}.duet-range-container.sc-duet-range-slider{position:relative;width:100%}.duet-output.sc-duet-range-slider{position:absolute;top:12px;right:0;z-index:200;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;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(0, 41, 77);background:rgb(255, 255, 255)}.duet-theme-turva.sc-duet-range-slider .duet-output.sc-duet-range-slider{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}.duet-range-disabled.sc-duet-range-slider .duet-output.sc-duet-range-slider{color:rgb(144, 149, 153)}.duet-range-disabled.duet-theme-turva.sc-duet-range-slider .duet-output.sc-duet-range-slider{color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider{position:relative;z-index:100;width:100%;height:4px;background:rgb(207, 210, 212);border-radius:4px}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider{background:rgb(207, 207, 209)}.duet-ie.sc-duet-range-slider .duet-range.sc-duet-range-slider{display:block;width:auto;height:26px;background:transparent !important}.duet-range.sc-duet-range-slider::-moz-range-track{height:1px;background:transparent !important;border:0;-moz-appearance:none}.duet-range.sc-duet-range-slider::-ms-track{color:transparent;background:transparent;border:0}.duet-range.sc-duet-range-slider:focus,.duet-range.sc-duet-range-slider:active{outline:0}.user-is-tabbing.sc-duet-range-slider-h .duet-range.sc-duet-range-slider:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px rgba(0, 119, 179, 0.75)}.user-is-tabbing.sc-duet-range-slider-h .duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:focus{box-shadow:0 0 0 1px #fff, 0 0 0 3px rgba(23, 28, 58, 0.75)}.duet-range.sc-duet-range-slider::-webkit-slider-runnable-track{background:transparent}.duet-range.sc-duet-range-slider::-webkit-slider-thumb{position:relative;width:24px;height:24px;cursor:-webkit-grab;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:50%;transition:box-shadow 300ms ease;-webkit-appearance:none}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-webkit-slider-thumb{border-color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider:active::-webkit-slider-thumb{cursor:-webkit-grabbing}.duet-range.sc-duet-range-slider::-moz-range-thumb{position:relative;width:24px;height:24px;cursor:-moz-grab;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:50%;appearance:none}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-moz-range-thumb{border-color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider:active::-moz-range-thumb{cursor:-moz-grabbing}.duet-range.sc-duet-range-slider::-ms-thumb{position:relative;width:24px;height:24px;overflow:visible;background:rgb(255, 255, 255);border:1px solid rgb(144, 149, 153);border-radius:50%}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-ms-thumb{border-color:rgb(116, 116, 117)}.duet-range.sc-duet-range-slider:disabled{background:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled{background:rgb(207, 207, 209) !important}.duet-range.sc-duet-range-slider:disabled::-webkit-slider-thumb{cursor:default;background:rgb(207, 210, 212);border-color:transparent}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled::-webkit-slider-thumb{background:rgb(207, 207, 209);border-color:transparent}.duet-range.sc-duet-range-slider:disabled::-moz-range-thumb{cursor:default;background:rgb(207, 210, 212);border-color:transparent}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled::-moz-range-thumb{background:rgb(207, 207, 209);border-color:transparent}.duet-range.sc-duet-range-slider:disabled::-ms-thumb{cursor:default;background:rgb(207, 210, 212);border-color:transparent}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider:disabled::-ms-thumb{background:rgb(207, 207, 209);border-color:transparent}.duet-range.sc-duet-range-slider::-ms-fill-lower{height:4px;background:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-ms-fill-lower{background:rgb(198, 12, 48)}.duet-range.sc-duet-range-slider::-ms-fill-upper{height:4px;background:rgb(207, 210, 212)}.duet-theme-turva.sc-duet-range-slider .duet-range.sc-duet-range-slider::-ms-fill-upper{background:rgb(207, 207, 209)}.duet-label-hidden.sc-duet-range-slider duet-label.sc-duet-range-slider,.duet-label-hidden.sc-duet-range-slider output.sc-duet-range-slider{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}';var m={turva:{active:s,inactive:d},default:{active:u,inactive:o}};var f=e("duet_range_slider",function(){function e(e){var n=this;t(this,e);this.duetChange=r(this,"duetChange",3);this.duetInput=r(this,"duetInput",7);this.rangeId=g("DuetRange");this.onInput=function(e){var t=e.target;if(t){n.value=parseFloat(t.value)||0}n.duetInput.emit({originalEvent:e,value:n.value,component:"duet-range-slider"})};this.onChange=function(e){var t=e.target;if(t){n.value=parseFloat(t.value)||0}clearTimeout(n.timeoutId);n.timeoutId=setTimeout((function(){n.duetChange.emit({originalEvent:e,value:n.value,component:"duet-range-slider"})}),n.debounce)};this.theme="";this.margin="auto";this.expand=false;this.identifier=undefined;this.name=undefined;this.required=false;this.disabled=false;this.accessibleActiveDescendant=undefined;this.accessibleControls=undefined;this.accessibleOwns=undefined;this.accessibleDescribedBy=undefined;this.min=0;this.label="label";this.labelColor=undefined;this.labelWeight=undefined;this.labelHidden=false;this.unit="";this.max=100;this.step=1;this.locale="fi-FI";this.value=0;this.debounce=0}e.prototype.componentWillLoad=function(){c(this)};e.prototype.connectedCallback=function(){h(this)};e.prototype.disconnectedCallback=function(){b(this)};e.prototype.setFocus=function(e){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.nativeInput.focus(e);return[2]}))}))};e.prototype.calculatePercentage=function(){return(this.value-this.min)/(this.max-this.min)*100};e.prototype.render=function(){var e=this;var t=this.identifier||this.rangeId;var r=this.theme==="turva"?"turva":"default";var i=m[r],s=i.inactive,d=i.active;var u=this.calculatePercentage();var o={background:"-webkit-linear-gradient(left,".concat(d," 0%,").concat(d," ").concat(u,"%,").concat(s," ").concat(u,"%)")};return n(a,{class:{"duet-m-0":this.margin==="none","duet-expand":this.expand}},n("div",{class:{"duet-range-container":true,"duet-label-hidden":this.labelHidden,"duet-theme-turva":this.theme==="turva","duet-ie":l(),"duet-range-disabled":this.disabled}},n("duet-label",{theme:r,color:this.labelColor,weight:this.labelWeight,margin:"small",for:t},this.label),n("output",{"aria-hidden":"true",htmlFor:t,class:"duet-output"},this.value.toLocaleString(this.locale),this.unit),n("input",{onInput:this.onInput,onChange:this.onChange,ref:function(t){return e.nativeInput=t},type:"range",min:this.min,max:this.max,step:this.step,value:this.value,style:o,"aria-valuemin":this.min,"aria-valuemax":this.max,"aria-valuenow":this.value,"aria-valuetext":"".concat(this.value," ").concat(this.unit),"aria-controls":this.accessibleControls,"aria-activedescendant":this.accessibleActiveDescendant,"aria-owns":this.accessibleOwns,"aria-describedby":this.accessibleDescribedBy,id:t,name:this.name,disabled:this.disabled,required:this.required,class:"duet-range"})))};Object.defineProperty(e.prototype,"element",{get:function(){return i(this)},enumerable:false,configurable:true});return e}());f.style=p}}}));
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import{r as t,c as i,h as e,F as a,H as s,g as n}from"./p-83e9058b.js";import{i as o}from"./p-a58bd561.js";import{c as r}from"./p-5e59e970.js";import{d as h}from"./p-9e371678.js";import{k as l,l as d,d as p,b as u,a as c,c as g,m,n as b}from"./p-a1b7f2a0.js";import{g as v,c as f,d as k}from"./p-2e36d5bf.js";import{p as y}from"./p-0e052642.js";import{b as w,a as x}from"./p-1784b1d2.js";import"./p-4a901bfc.js";const S=class{constructor(e){t(this,e),this.duetPageChange=i(this,"duetPageChange",3),this.listId=r("duet-pagination-list"),this.firstRenderDone=!1,this.handleMediaQueryChange=t=>{this.matchesCompactBreakpoint=w.includes(this.compactBreakpoint)?t.matches:!t.matches},this.actionChain=async(t,i)=>{if(0===t)this.current=1;else if(t>this.totalPages)this.current=this.totalPages;else if(i!==t){const i=Math.ceil(t/this.visibleItems)-1;i!==this.internalSectionIndex&&(this.internalSectionIndex=i,await this.setFocus())}return!0},this.emitPageEvent=(t,i)=>{const e=Number(i||this.current);this.duetPageChange.emit({component:"duet-pagination",from:e*this.take,to:e*this.take+this.take,current:e,take:this.take,type:"page",originalEvent:t})},this.getEnteredNumber=h((t=>{this.emitPageEvent(t,this.numbersStore),this.current=Number(this.numbersStore),this.numbersStore="",this.duetPageChange.emit({component:"duet-pagination",from:this.current*this.take,to:this.current*this.take+this.take,current:this.current,take:this.take,type:"jump",originalEvent:t})}),500),this.processedPageLinks=null,this.numbersStore="",this.matchesCompactBreakpoint=!1,this.totalPages=10,this.internalSectionIndex=0,this.theme="",this.disabled=!1,this.variation="default",this.accessibleDescribedBy=void 0,this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.accessibleLabelsDefaults={en:{next_page:"Next page",previous_page:"Previous page",first_page:"First page",last_page:"Last page",jump_to:"Jump to page",go_to:"Go to page",description:"You may use arrow keys to select page number",pagination_label:"Pagination, choose a number to jump to a page",select_label:"Total pages {0}, choose a number to jump to a page",prev_section:"Show previous {0} page numbers, screen reader user should use arrowkeys to navigate",next_section:"Show next {0} page numbers, screen reader user should use arrowkeys to navigate"},fi:{next_page:"Seuraava sivu",previous_page:"Edellinen sivu",first_page:"Ensimmäinen sivu",last_page:"Viimeinen sivu",jump_to:"Siirry sivulle",go_to:"Siirry sivulle",description:"Voit käyttää nuolinäppäimiä sivunumeron valitsemiseen",pagination_label:"Sivutus, valitse sivunumero siirtyäksesi sivulle",select_label:"Sivuja yhteensä {0}, valitse sivunumero siirtyäksesi sivulle",prev_section:"Näytä edelliset {0} sivunumerot, käyttäjän pitää käyttää nuolinäppäimiä navigoidaksesi",next_section:"Näytä seuraavat {0} sivunumerot, käyttäjän pitää käyttää nuolinäppäimiä navigoidaksesi"},sv:{next_page:"Nästa sida",previous_page:"Föregående sida",first_page:"Första sidan",last_page:"Sista sidan",jump_to:"Hoppa till sida",go_to:"Hoppa till sida",description:"Du kan använda piltangenterna för att välja sida",pagination_label:"Paginering, välj en siffra för att hoppa till en sida",select_label:"Totalt antal sidor {0}, välj en siffra för att hoppa till en sida",prev_section:"Visa föregående {0} sidnummer, skrivbordsläsare ska använda piltangenterna för att navigera",next_section:"Visa nästa {0} sidnummer, skrivbordsläsare ska använda piltangenterna för att navigera"}},this.accessibleLabels=v(this.accessibleLabelsDefaults),this.take=5,this.visibleItems=5,this.total=1e3,this.compactBreakpoint="x-small",this.ariaControls="",this.current=1,this.pageLinks=void 0}watchPropTotalHandler(){return this.calculatePageTake(),!0}watchStateHandler(t,i){return this.actionChain(t,i)}componentWillLoad(){this.internalSectionIndex=Math.ceil(this.current/this.visibleItems)-1,this.calculatePageTake(),o(this),this.refresh()}componentDidLoad(){this.firstRenderDone=!0}componentWillRender(){0!==this.internalSectionIndex&&this.internalSectionIndex!==this.totalPages&&this.calculatePageTake()}componentDidRender(){this.firstRenderDone&&!this.processedPageLinks&&this.setFocus()}connectedCallback(){this.mq=matchMedia("none"===this.compactBreakpoint?"all":x[this.compactBreakpoint]),this.mq.addEventListener("change",h(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),f(this,{prop:"accessibleLabels",defaults:"accessibleLabelsDefaults"})}disconnectedCallback(){this.mq.removeEventListener("change",this.handleMediaQueryChange),this.mq=null,this.matchesCompactBreakpoint=!1,k(this)}async refresh(){this.processedPageLinks=y(this.pageLinks)}calculatePageTake(){this.totalPages=Math.ceil(this.total/this.take)}async onMouseHandler(t,i){this.disabled||(this.processedPageLinks||(t.preventDefault(),t.stopPropagation(),this.current=this.current+i),this.emitPageEvent(t))}async onKeyboardDown(t){if(this.disabled)return;let i=this.current;(p(t)||u(t))&&i--,(c(t)||g(t))&&i++,l(t)&&i<=this.totalPages&&(this.current=i,this.processedPageLinks?(this.emitPageEvent(t,i-1),window.open(this.processedPageLinks[i-1],"_self","")):this.emitPageEvent(t)),d(t)&&this.shouldDisplayNavigation()&&(this.numbersStore=this.numbersStore+t.key,Number(this.numbersStore)>this.totalPages&&(this.numbersStore=this.totalPages+""),this.getEnteredNumber(t))}async setFocus(){const t=this.nativeNav.querySelector(`[data-id='${this.current}']`);t&&await t.setFocus()}pageClickHandler(t){const i=Number(t.target.getAttribute("data-id"));this.processedPageLinks||(t.preventDefault(),this.current=i),this.emitPageEvent(t,i)}selectClickHandler(t){t.preventDefault();const i=Number(t.target.value);this.current=i,this.processedPageLinks?(this.emitPageEvent(t,i-1),window.open(this.processedPageLinks[i-1],"_self","")):this.emitPageEvent(t,i)}sectionClickHandler(t,i){t.preventDefault();let e=this.internalSectionIndex+i;e*(this.take*this.visibleItems)>this.total&&(e=this.internalSectionIndex),this.internalSectionIndex=e>=0?e:0}jumpToStart(t){this.processedPageLinks||(t.preventDefault(),this.internalSectionIndex=0,this.current=1),this.emitPageEvent(t)}jumpToEnd(t){this.processedPageLinks||(t.preventDefault(),this.internalSectionIndex=Math.ceil(this.totalPages/this.take-1),this.current=this.totalPages),this.emitPageEvent(t)}renderPageButton(t){return e("duet-button",{disabled:this.disabled,class:{"duet-pagination-link":!0},id:`page-${t}-button`,color:t!==this.current?"turva"!==this.theme?"secondary":"secondary-turva":"turva"!==this.theme?"primary":"primary-turva","data-id":t,"center-text":!0,variation:"plain",margin:"none",accessibleLabel:`${this.accessibleLabels.go_to} ${t}`,onClick:t=>this.pageClickHandler(t),theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[t-1]:void 0},e("div",{class:"duet-pagination-page-number","aria-hidden":!0},t))}renderPageNumbers(){const t=[];let i=this.internalSectionIndex*this.visibleItems;do{if(i++,i>this.totalPages)break;t.push(e("li",{class:{"duet-pagination-item":!0,"duet-pagination-item-is-active":i===this.current},role:"menuitem"},this.renderPageButton(i)))}while(i<this.visibleItems+this.internalSectionIndex*this.visibleItems);return t}renderSelect(){const t=[];for(let i=1;i<=this.totalPages;i++)t.push({value:i.toString(),label:i.toString()});const i=e("duet-select",{disabled:this.disabled,theme:this.theme,class:"duet-pagination-select",variation:"compact",items:JSON.stringify(t),value:this.current.toString(),label:this.accessibleLabels.select_label.replace("{0}",`${this.totalPages}`),labelHidden:!0,onDuetChange:t=>this.selectClickHandler(t)});return e("li",null,i,e("span",{class:"duet-pagination-total-pages","aria-hidden":"true"},"/ ",this.totalPages))}shouldDisplayNavigation(){return!("compact"===this.variation||this.matchesCompactBreakpoint||2*this.visibleItems>this.total/this.take)}render(){return e(s,{onKeyDown:t=>this.onKeyboardDown(t),class:{"duet-theme-turva":"turva"===this.theme}},e("nav",{role:"navigation","aria-labelledby":this.accessibleLabelledBy?`${this.accessibleLabelledBy} ${this.listId}`:this.listId,"aria-describedby":this.accessibleDescribedBy?`${this.accessibleDescribedBy} ${this.listId}`:this.listId,"aria-descriptions":this.accessibleDescription,"aria-details":this.accessibleDetails,ref:t=>this.nativeNav=t,"aria-controls":this.ariaControls,class:{"duet-pagination-nav":!0,[`duet-pagination-variation-${this.variation}`]:!0}},""!==this.numbersStore&&e("div",{"aria-live":"assertive","aria-relevant":"text",class:"duet-pagination-overlay","aria-label":`${this.accessibleLabels.jump_to} ${this.numbersStore}`,part:"navigation-overlay"},e("duet-badge",{theme:this.theme},"jump to page : ",this.numbersStore)),e("ol",{id:this.listId,class:{"duet-pagination":!0,"duet-pagination-is-dimmed":""!==this.numbersStore},role:"menubar","aria-label":this.accessibleLabels.pagination_label,"aria-description":this.accessibleLabels.description},("compact"===this.variation||this.matchesCompactBreakpoint)&&e("li",{class:{"duet-pagination-page-button":!0,"duet-pagination-button-first":!0},role:"menuitem",part:"navigation-arrow"},e("duet-action-button",{disabled:0===this.internalSectionIndex&&this.current<=1||this.disabled,"data-direction":"back",accessibleLabel:this.accessibleLabels.first_page,title:this.accessibleLabels.first_page,onClick:t=>this.jumpToStart(t),"icon-name":"action-move-to-first",theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[0]:void 0})),e("li",{class:{"duet-pagination-page-button":!0,"duet-pagination-button-first":!0},role:"menuitem",part:"navigation-arrow"},e("duet-action-button",{disabled:!!(0===this.internalSectionIndex&&this.current<=1||this.current<=1&&this.processedPageLinks||this.disabled),"data-direction":"back",onClick:t=>this.onMouseHandler(t,-1),"accessible-label":this.accessibleLabels.previous_page,title:this.accessibleLabels.previous_page,"icon-name":"action-arrow-left-small",theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[this.current-2]:void 0})),0!==this.internalSectionIndex&&this.shouldDisplayNavigation()&&e(a,null,e("li",{class:"duet-pagination-item",role:"menuitem",part:"navigation-jump"},e("duet-button",{disabled:this.disabled,class:"duet-pagination-link duet-pagination-link-jump-back","center-text":"true",variation:"plain",color:"turva"!==this.theme?"secondary":"secondary-turva",margin:"none",accessibleLabel:this.accessibleLabels.first_page,onClick:t=>this.jumpToStart(t),theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[0]:void 0},e("div",{class:"duet-pagination-page-number"},"1"))),e("li",{class:"duet-pagination-item",role:"menuitem",part:"navigation-section"},e("duet-button",{disabled:this.disabled,class:"duet-pagination-link duet-pagination-link-dots-back","center-text":"true",color:"turva"!==this.theme?"secondary":"secondary-turva",variation:"plain",margin:"none",accessibleLabel:this.accessibleLabels.prev_section.replace("{0}",`${this.visibleItems}`),onClick:t=>this.sectionClickHandler(t,-1),theme:this.theme},e("div",{class:"duet-pagination-page-number","aria-hidden":"true"},"…")))),this.shouldDisplayNavigation()&&this.renderPageNumbers()||this.renderSelect(),(this.internalSectionIndex+1)*this.visibleItems<this.totalPages&&this.shouldDisplayNavigation()&&e(a,null,(this.internalSectionIndex+1)*this.visibleItems!=this.totalPages-1&&e("li",{class:"duet-pagination-item",role:"menuitem",part:"navigation-section"},e("duet-button",{disabled:this.disabled,class:"duet-pagination-link duet-pagination-link-dots-forward","center-text":"true",color:"turva"!==this.theme?"secondary":"secondary-turva",variation:"plain",margin:"none",accessibleLabel:this.accessibleLabels.next_section.replace("{0}",`${this.visibleItems}`),onClick:t=>this.sectionClickHandler(t,1),theme:this.theme},e("div",{class:"duet-pagination-page-number","aria-hidden":"true"},"…"))),e("li",{class:"duet-pagination-item",role:"menuitem",part:"navigation-jump"},e("duet-button",{disabled:this.disabled,class:"duet-pagination-link duet-pagination-link-jump-forward","center-text":"true",color:"turva"!==this.theme?"secondary":"secondary-turva",variation:"plain",margin:"none",accessibleLabel:this.accessibleLabels.last_page,onClick:t=>this.jumpToEnd(t),theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[this.processedPageLinks.length-1]:void 0},e("div",{class:"duet-pagination-page-number"},this.totalPages)))),e("li",{class:{"duet-pagination-page-button":!0,"duet-pagination-button-last":!0},role:"menuitem",part:"navigation-arrow"},e("duet-action-button",{disabled:!!(this.current===this.totalPages&&this.internalSectionIndex===Math.ceil(this.totalPages/this.visibleItems)-1||this.current===this.totalPages&&this.processedPageLinks)||this.disabled,class:"duet-date-dialog-next","accessible-label":this.accessibleLabels.next_page,title:this.accessibleLabels.next_page,onClick:t=>this.onMouseHandler(t,1),"icon-name":"action-move-to-next",theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[this.current]:void 0})),("compact"===this.variation||this.matchesCompactBreakpoint)&&e("li",{class:{"duet-pagination-page-button":!0,"duet-pagination-button-last":!0},role:"menuitem",part:"navigation-arrow"},e("duet-action-button",{disabled:this.current===this.totalPages&&this.internalSectionIndex===Math.ceil(this.totalPages/this.visibleItems)-1||this.disabled,accessibleLabel:this.accessibleLabels.last_page,title:this.accessibleLabels.last_page,onClick:t=>this.jumpToEnd(t),"icon-name":"action-move-to-last",theme:this.theme,url:this.processedPageLinks?this.processedPageLinks[this.totalPages-1]:void 0})))))}get element(){return n(this)}static get watchers(){return{total:["watchPropTotalHandler"],current:["watchStateHandler"],pageLinks:["refresh"]}}};S.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:inline-block;margin:0 auto}.duet-pagination-nav{position:relative}.duet-pagination ::part(button){border:0}.duet-pagination,.duet-pagination li{display:flex;flex-wrap:wrap;gap:0.1rem;align-items:center}.duet-pagination-item-is-active .duet-pagination-page-number{border-bottom-color:inherit;border-bottom-style:solid;border-bottom-width:2px}.duet-pagination duet-button{width:30px;min-width:36px;font-weight:600;text-decoration:none;border-left-width:0}.duet-pagination-overlay{position:absolute;top:1rem;z-index:300;width:100%;text-align:center}.duet-pagination.duet-pagination-is-dimmed{opacity:0.5}.duet-pagination .duet-pagination-select{margin:0 4px 0 12px !important}.duet-pagination-total-pages{margin:0;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:600 !important;line-height:1.25;color:rgb(0, 41, 77);text-align:left}:host(.duet-theme-turva) .duet-pagination-total-pages{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}';const _=class{constructor(e){t(this,e),this.duetRangeStepUpdate=i(this,"duetRangeStepUpdate",7),this.leftBn=r("duetRangeStepper-left"),this.rightBn=r("duetRangeStepper-right"),this.handleClick=(t,i)=>{t.preventDefault(),this.stepIndex+=i,this.clampStepIndex(),this.handleStepClick(t)},this.theme="",this.disabled=!1,this.stepIndex=1,this.stepSize=50,this.total=1e3,this.ariaLabelsDefaults={en:{next_increment:"Next range increment",previous_increment:"Previous range increment",x_of_y:"{0}–{1} of {2}"},fi:{next_increment:"Seuraava välillä",previous_increment:"Edellinen välillä",x_of_y:"{0}–{1} / {2}"},sv:{next_increment:"Nästa intervall",previous_increment:"Föregående intervall",x_of_y:"{0}–{1} av {2}"}},this.ariaLabels=v(this.ariaLabelsDefaults),this.ariaControls=""}watchStepIndexStateHandler(t){this.leftBnRef&&this.rightBnRef&&(t<=1?(this.element===document.activeElement&&this.rightBnRef.setFocus(),this.leftBnRef.setAttribute("disabled","")):this.leftBnRef.removeAttribute("disabled"),t>=this.total/this.stepSize?(this.element===document.activeElement&&this.leftBnRef.setFocus(),this.rightBnRef.setAttribute("disabled","")):this.rightBnRef.removeAttribute("disabled"))}watchStepSizeStateHandler(t,i){t!==i&&(this.stepIndex*t>this.total&&(this.stepIndex=Math.ceil(this.total/t)),this.watchStepIndexStateHandler(this.stepIndex))}handleStepClick(t){this.duetRangeStepUpdate.emit({originalEvent:t,component:"duet-range-stepper",from:this.getFrom(),to:this.getTo(),index:this.stepIndex})}componentWillLoad(){o(this),this.clampStepIndex()}componentDidLoad(){this.watchStepIndexStateHandler(this.stepIndex)}connectedCallback(){f(this,{prop:"ariaLabels",defaults:"ariaLabelsDefaults"})}disconnectedCallback(){k(this)}clampStepIndex(){this.stepIndex<1?this.stepIndex=1:this.stepIndex*this.stepSize>this.total&&(this.stepIndex=Math.ceil(this.total/this.stepSize))}getFrom(){return Math.floor((this.stepIndex-1)*this.stepSize)+1}getTo(){return Math.min(Math.floor(this.stepIndex*this.stepSize),this.total)}generateStepSize(){return this.ariaLabels.x_of_y.replace("{0}",String(this.getFrom())).replace("{1}",String(this.getTo())).replace("{2}",String(this.total))}generatePreviousIncrementLabel(){return 1===this.getFrom()?"":this.ariaLabels.x_of_y.replace("{0}",String(Math.max(this.getFrom()-this.stepSize,1))).replace("{1}",String(Math.min(this.getFrom()-1,this.total))).replace("{2}",String(this.total))}generateNextIncrementLabel(){return this.getTo()===this.total?"":this.ariaLabels.x_of_y.replace("{0}",String(this.getTo()+1)).replace("{1}",String(Math.min(this.getTo()+this.stepSize,this.total))).replace("{2}",String(this.total))}async onKeyboardDown(t){if(this.disabled)return;let i=this.stepIndex,e=1;(p(t)||u(t)||m(t))&&(i--,e=-1,this.leftBnRef.setFocus()),(c(t)||g(t)||b(t))&&(i++,e=1),l(t)&&i>0&&i*this.stepSize<=this.total&&this.handleClick(t,e)}render(){return e("div",{class:{"duet-range-stepper":!0,"duet-theme-turva":"turva"===this.theme},onKeyDown:t=>this.onKeyboardDown(t),"aria-controls":this.ariaControls},e("span",{class:"duet-range-step-counter",part:"range-numbers"},this.generateStepSize()),e("duet-action-button",{disabled:this.disabled,class:"duet-range-step-button duet-range-step-minus",onClick:t=>this.handleClick(t,-1),id:this.leftBn,"accessible-label":`${this.ariaLabels.previous_increment} ${this.generatePreviousIncrementLabel()}`,ref:t=>this.leftBnRef=t,part:"navigation-arrow",iconName:"action-arrow-left-small",title:""}),e("duet-action-button",{disabled:this.disabled,class:"duet-range-step-button duet-range-step-plus",onClick:t=>this.handleClick(t,1),"accessible-label":`${this.ariaLabels.next_increment} ${this.generateNextIncrementLabel()}`,id:this.rightBn,ref:t=>this.rightBnRef=t,part:"navigation-arrow",iconName:"action-arrow-right-small",title:""}))}get element(){return n(this)}static get watchers(){return{stepIndex:["watchStepIndexStateHandler"],stepSize:["watchStepSizeStateHandler"]}}};_.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:inline-block;margin:0 auto}.duet-range-stepper{display:flex;flex-wrap:wrap;gap:0;align-items:baseline;justify-content:center;min-width:30px;min-height:30px;font-weight:600;text-decoration:none;border-left-width:0}.duet-range-stepper{white-space:nowrap}.duet-range-stepper .duet-range-step-counter{font-weight:600;color:rgb(0, 41, 77)}.duet-range-stepper ::part(button){border:0}";export{S as duet_pagination,_ as duet_range_stepper}
@@ -1,4 +1,4 @@
1
1
  var __awaiter=this&&this.__awaiter||function(t,e,n,o){function r(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,i){function a(t){try{d(o.next(t))}catch(t){i(t)}}function u(t){try{d(o["throw"](t))}catch(t){i(t)}}function d(t){t.done?n(t.value):r(t.value).then(a,u)}d((o=o.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o,r,i,a;return a={next:u(0),throw:u(1),return:u(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function u(t){return function(e){return d([t,e])}}function d(u){if(o)throw new TypeError("Generator is already executing.");while(a&&(a=0,u[0]&&(n=0)),n)try{if(o=1,r&&(i=u[0]&2?r["return"]:u[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,u[1])).done)return i;if(r=0,i)u=[u[0]&2,i.value];switch(u[0]){case 0:case 1:i=u;break;case 4:n.label++;return{value:u[1],done:false};case 5:n.label++;r=u[1];u=[0];continue;case 7:u=n.ops.pop();n.trys.pop();continue;default:if(!(i=n.trys,i=i.length>0&&i[i.length-1])&&(u[0]===6||u[0]===2)){n=0;continue}if(u[0]===3&&(!i||u[1]>i[0]&&u[1]<i[3])){n.label=u[1];break}if(u[0]===6&&n.label<i[1]){n.label=i[1];i=u;break}if(i&&n.label<i[2]){n.label=i[2];n.ops.push(u);break}if(i[2])n.ops.pop();n.trys.pop();continue}u=e.call(t,n)}catch(t){u=[6,t];r=0}finally{o=i=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}};
2
2
  /*!
3
3
  * Built with Duet Design System
4
- */System.register(["./p-9644775c.system.js","./p-1c689a26.system.js","./p-50f4bca2.system.js","./p-34d7dd10.system.js"],(function(t){"use strict";var e,n,o,r,i,a,u;return{setters:[function(t){e=t.r;n=t.h;o=t.H;r=t.g},function(t){i=t.a},function(t){a=t.i},function(t){u=t.f}],execute:function(){var d='*,*::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%}@media (min-width: 62em){:host{width:auto}}.duet-submenu-bar-dropdown{position:relative;height:100%}.duet-submenu-bar-dropdown button{position:relative;display:flex;flex-direction:row;gap:16px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:12px 1.5rem;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:600;line-height:1.25;color:rgb(0, 41, 77);text-align:center;text-decoration:none;cursor:pointer}@media (min-width: 62em){.duet-submenu-bar-dropdown button{flex-direction:column;gap:5px;align-items:center;justify-content:center;width:auto;font-size:0.875rem;color:rgb(0, 77, 128)}}.duet-submenu-bar-dropdown button .label{display:flex;gap:5px;align-items:center;justify-content:center}@media (min-width: 62em){.duet-submenu-bar-dropdown button.open{background:rgb(230, 242, 248)}}.duet-submenu-bar-dropdown button.open .caret{transform:rotate(180deg)}.duet-submenu-bar-dropdown button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-submenu-bar-dropdown button.active .label-text{position:relative}.duet-submenu-bar-dropdown button.active .label-text::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:"";background:rgb(0, 119, 179);transform:1px}@media (min-width: 62em){.duet-submenu-bar-dropdown button.active .label-text::after{display:none}}@media (min-width: 62em){.duet-submenu-bar-dropdown button .caret{position:absolute;right:12px}.duet-submenu-bar-dropdown button:hover{color:rgb(0, 41, 77);background:rgb(230, 242, 248)}.duet-submenu-bar-dropdown button:hover.active{color:rgb(0, 41, 77)}.duet-theme-turva .duet-submenu-bar-dropdown button:hover.active{color:rgb(23, 28, 58)}.duet-submenu-bar-dropdown button.active{color:rgb(0, 119, 179)}.duet-theme-turva .duet-submenu-bar-dropdown button.active{color:rgb(198, 12, 48)}.duet-submenu-bar-dropdown button.active::after,.duet-submenu-bar-dropdown button.open::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:"";background:rgb(0, 119, 179);transition:300ms ease;transform:translateY(1px)}.duet-theme-turva .duet-submenu-bar-dropdown button.active::after,.duet-theme-turva .duet-submenu-bar-dropdown button.open::after{background:rgb(198, 12, 48)}}.duet-submenu-bar-dropdown .submenu-bar-dropdown-icon{width:20px;height:20px}@media (min-width: 62em){.duet-submenu-bar-dropdown .submenu-bar-dropdown-icon{width:16px;height:16px}}.duet-submenu-bar-dropdown .items{display:flex;flex-direction:column;align-items:center;justify-content:center;max-height:1000px;padding:4px 0 16px;overflow-y:auto;color:rgb(0, 41, 77);visibility:visible;transition:max-height 0.3s ease-in, padding 0.3s ease-in;-ms-overflow-style:none;scrollbar-width:none}.duet-submenu-bar-dropdown .items::-webkit-scrollbar{display:none}@media (min-width: 62em){.duet-submenu-bar-dropdown .items{position:absolute;top:93%;z-index:600;min-width:320px;padding:8px;background:rgb(255, 255, 255);border-radius:8px;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.07), 0 4px 10px 0 rgba(0, 41, 77, 0.15);transition:none}}.duet-submenu-bar-dropdown .items.hidden{max-height:0;padding:0;overflow:hidden;visibility:hidden;transition:max-height 0.3s ease-in, padding 0.3s ease-in}.duet-submenu-bar-dropdown.duet-theme-turva button{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button:hover{background:rgb(228, 228, 230)}}.duet-submenu-bar-dropdown.duet-theme-turva button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-submenu-bar-dropdown.duet-theme-turva button.active .label-text::after,.duet-submenu-bar-dropdown.duet-theme-turva button.open .label-text::after{background:rgb(198, 12, 48)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button.active,.duet-submenu-bar-dropdown.duet-theme-turva button.open{color:rgb(148, 9, 37)}}.duet-submenu-bar-dropdown.duet-theme-turva button.active::after,.duet-submenu-bar-dropdown.duet-theme-turva button.open::after{background:rgb(148, 9, 37)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button.open{background:rgb(228, 228, 230)}}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva .items{background:rgb(255, 255, 255)}}';var s=t("duet_submenu_bar_dropdown",function(){function t(t){var n=this;e(this,t);this.mql=[window.matchMedia(i.replace(/'/g,""))];this.boundMqlFunctions=[];this.checkIsDesktop=function(){if(n.mql[0].matches){n.isDesktop=true}else{n.isDesktop=false}};this.onClick=function(){var t=n.open;if(!n.isDesktop){var e=Array.from(n.element.parentElement.querySelectorAll("duet-submenu-bar-dropdown"));for(var o=0,r=e;o<r.length;o++){var i=r[o];i.open=false}}if(t){n.open=false}else{n.open=true}};this.isDesktop=false;this.theme="";this.active=false;this.open=false;this.icon=undefined}t.prototype.handleFocus=function(t){var e=this;var n=t.composedPath().every((function(t){return t!==e.element}));if(n&&this.isDesktop){this.open=false}};t.prototype.componentWillLoad=function(){a(this)};t.prototype.connectedCallback=function(){this.checkIsDesktop();for(var t=0;t<this.mql.length;t++){if(this.mql[t].addEventListener){var e=this.checkIsDesktop.bind(this);this.mql[t].addEventListener("change",e);this.boundMqlFunctions[t]=e}}};t.prototype.disconnectedCallback=function(){for(var t=0;t<this.mql.length;t++){if(this.mql[t].removeEventListener){this.mql[t].removeEventListener("change",this.boundMqlFunctions[t])}}this.boundMqlFunctions=[]};t.prototype.handleEscape=function(t){if(u(t)){if(this.open){this.open=false}else{var e=this.element.closest("duet-submenu-bar");e.open=false;e.setFocus()}}};t.prototype.setFocus=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){this.button.focus(t);return[2]}))}))};t.prototype.render=function(){var t=this;return n(o,null,n("div",{class:{"duet-submenu-bar-dropdown":true,"duet-theme-turva":this.theme==="turva",open:this.open,active:this.active}},n("button",{ref:function(e){return t.button=e},"aria-haspopup":"menu","aria-controls":"menu","aria-expanded":this.open?"true":"false","aria-current":this.active?"true":"false",id:"button",type:"button",class:{open:this.open,active:this.active},onClick:this.onClick,onKeyUp:function(e){return t.handleEscape(e)}},this.icon&&n("duet-icon",{class:"submenu-bar-dropdown-icon",theme:this.theme,name:this.icon,size:"auto",margin:"none",color:"currentColor"}),n("div",{class:"label"},n("span",{class:"label-text"},n("slot",{name:"label"})),n("duet-icon",{class:"caret",theme:this.theme,name:"action-arrow-down-small",margin:"none",size:"xxx-small",color:"currentColor"}))),n("div",{tabindex:"-1",role:"menu",id:"menu","aria-labelledby":"button",class:{items:true,hidden:!this.open}},n("slot",null))))};Object.defineProperty(t.prototype,"element",{get:function(){return r(this)},enumerable:false,configurable:true});return t}());s.style=d}}}));
4
+ */System.register(["./p-9644775c.system.js","./p-c51d6fb5.system.js","./p-50f4bca2.system.js","./p-34d7dd10.system.js"],(function(t){"use strict";var e,n,o,r,i,a,u;return{setters:[function(t){e=t.r;n=t.h;o=t.H;r=t.g},function(t){i=t.a},function(t){a=t.i},function(t){u=t.f}],execute:function(){var d='*,*::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%}@media (min-width: 62em){:host{width:auto}}.duet-submenu-bar-dropdown{position:relative;height:100%}.duet-submenu-bar-dropdown button{position:relative;display:flex;flex-direction:row;gap:16px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:12px 1.5rem;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:600;line-height:1.25;color:rgb(0, 41, 77);text-align:center;text-decoration:none;cursor:pointer}@media (min-width: 62em){.duet-submenu-bar-dropdown button{flex-direction:column;gap:5px;align-items:center;justify-content:center;width:auto;font-size:0.875rem;color:rgb(0, 77, 128)}}.duet-submenu-bar-dropdown button .label{display:flex;gap:5px;align-items:center;justify-content:center}@media (min-width: 62em){.duet-submenu-bar-dropdown button.open{background:rgb(230, 242, 248)}}.duet-submenu-bar-dropdown button.open .caret{transform:rotate(180deg)}.duet-submenu-bar-dropdown button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-submenu-bar-dropdown button.active .label-text{position:relative}.duet-submenu-bar-dropdown button.active .label-text::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:"";background:rgb(0, 119, 179);transform:1px}@media (min-width: 62em){.duet-submenu-bar-dropdown button.active .label-text::after{display:none}}@media (min-width: 62em){.duet-submenu-bar-dropdown button .caret{position:absolute;right:12px}.duet-submenu-bar-dropdown button:hover{color:rgb(0, 41, 77);background:rgb(230, 242, 248)}.duet-submenu-bar-dropdown button:hover.active{color:rgb(0, 41, 77)}.duet-theme-turva .duet-submenu-bar-dropdown button:hover.active{color:rgb(23, 28, 58)}.duet-submenu-bar-dropdown button.active{color:rgb(0, 119, 179)}.duet-theme-turva .duet-submenu-bar-dropdown button.active{color:rgb(198, 12, 48)}.duet-submenu-bar-dropdown button.active::after,.duet-submenu-bar-dropdown button.open::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:"";background:rgb(0, 119, 179);transition:300ms ease;transform:translateY(1px)}.duet-theme-turva .duet-submenu-bar-dropdown button.active::after,.duet-theme-turva .duet-submenu-bar-dropdown button.open::after{background:rgb(198, 12, 48)}}.duet-submenu-bar-dropdown .submenu-bar-dropdown-icon{width:20px;height:20px}@media (min-width: 62em){.duet-submenu-bar-dropdown .submenu-bar-dropdown-icon{width:16px;height:16px}}.duet-submenu-bar-dropdown .items{display:flex;flex-direction:column;align-items:center;justify-content:center;max-height:1000px;padding:4px 0 16px;overflow-y:auto;color:rgb(0, 41, 77);visibility:visible;transition:max-height 0.3s ease-in, padding 0.3s ease-in;-ms-overflow-style:none;scrollbar-width:none}.duet-submenu-bar-dropdown .items::-webkit-scrollbar{display:none}@media (min-width: 62em){.duet-submenu-bar-dropdown .items{position:absolute;top:93%;z-index:600;min-width:320px;padding:8px;background:rgb(255, 255, 255);border-radius:8px;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.07), 0 4px 10px 0 rgba(0, 41, 77, 0.15);transition:none}}.duet-submenu-bar-dropdown .items.hidden{max-height:0;padding:0;overflow:hidden;visibility:hidden;transition:max-height 0.3s ease-in, padding 0.3s ease-in}.duet-submenu-bar-dropdown.duet-theme-turva button{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:rgb(23, 28, 58)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button:hover{background:rgb(228, 228, 230)}}.duet-submenu-bar-dropdown.duet-theme-turva button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-submenu-bar-dropdown.duet-theme-turva button.active .label-text::after,.duet-submenu-bar-dropdown.duet-theme-turva button.open .label-text::after{background:rgb(198, 12, 48)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button.active,.duet-submenu-bar-dropdown.duet-theme-turva button.open{color:rgb(148, 9, 37)}}.duet-submenu-bar-dropdown.duet-theme-turva button.active::after,.duet-submenu-bar-dropdown.duet-theme-turva button.open::after{background:rgb(148, 9, 37)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button.open{background:rgb(228, 228, 230)}}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva .items{background:rgb(255, 255, 255)}}';var s=t("duet_submenu_bar_dropdown",function(){function t(t){var n=this;e(this,t);this.mql=[window.matchMedia(i.replace(/'/g,""))];this.boundMqlFunctions=[];this.checkIsDesktop=function(){if(n.mql[0].matches){n.isDesktop=true}else{n.isDesktop=false}};this.onClick=function(){var t=n.open;if(!n.isDesktop){var e=Array.from(n.element.parentElement.querySelectorAll("duet-submenu-bar-dropdown"));for(var o=0,r=e;o<r.length;o++){var i=r[o];i.open=false}}if(t){n.open=false}else{n.open=true}};this.isDesktop=false;this.theme="";this.active=false;this.open=false;this.icon=undefined}t.prototype.handleFocus=function(t){var e=this;var n=t.composedPath().every((function(t){return t!==e.element}));if(n&&this.isDesktop){this.open=false}};t.prototype.componentWillLoad=function(){a(this)};t.prototype.connectedCallback=function(){this.checkIsDesktop();for(var t=0;t<this.mql.length;t++){if(this.mql[t].addEventListener){var e=this.checkIsDesktop.bind(this);this.mql[t].addEventListener("change",e);this.boundMqlFunctions[t]=e}}};t.prototype.disconnectedCallback=function(){for(var t=0;t<this.mql.length;t++){if(this.mql[t].removeEventListener){this.mql[t].removeEventListener("change",this.boundMqlFunctions[t])}}this.boundMqlFunctions=[]};t.prototype.handleEscape=function(t){if(u(t)){if(this.open){this.open=false}else{var e=this.element.closest("duet-submenu-bar");e.open=false;e.setFocus()}}};t.prototype.setFocus=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){this.button.focus(t);return[2]}))}))};t.prototype.render=function(){var t=this;return n(o,null,n("div",{class:{"duet-submenu-bar-dropdown":true,"duet-theme-turva":this.theme==="turva",open:this.open,active:this.active}},n("button",{ref:function(e){return t.button=e},"aria-haspopup":"menu","aria-controls":"menu","aria-expanded":this.open?"true":"false","aria-current":this.active?"true":"false",id:"button",type:"button",class:{open:this.open,active:this.active},onClick:this.onClick,onKeyUp:function(e){return t.handleEscape(e)}},this.icon&&n("duet-icon",{class:"submenu-bar-dropdown-icon",theme:this.theme,name:this.icon,size:"auto",margin:"none",color:"currentColor"}),n("div",{class:"label"},n("span",{class:"label-text"},n("slot",{name:"label"})),n("duet-icon",{class:"caret",theme:this.theme,name:"action-arrow-down-small",margin:"none",size:"xxx-small",color:"currentColor"}))),n("div",{tabindex:"-1",role:"menu",id:"menu","aria-labelledby":"button",class:{items:true,hidden:!this.open}},n("slot",null))))};Object.defineProperty(t.prototype,"element",{get:function(){return r(this)},enumerable:false,configurable:true});return t}());s.style=d}}}));
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- System.register(["./p-9644775c.system.js","./p-b31d31d8.system.js","./p-50f4bca2.system.js","./p-e6b5a1c7.system.js","./p-34d7dd10.system.js","./p-224f6c46.system.js","./p-6ef75455.system.js"],(function(t){"use strict";var e,i,a,s,n,r,o,d,u,l,p,b,c;return{setters:[function(t){e=t.r;i=t.h;a=t.F;s=t.g},function(t){n=t.s},function(t){r=t.i},function(t){o=t.c},function(t){d=t.s;u=t.u},function(t){l=t.a;p=t.g;b=t.c;c=t.d},function(){}],execute:function(){var h='*,*::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;width:100%}.duet-tray{position:fixed;top:4rem;right:0;left:0;z-index:399;display:flex;flex-direction:column;max-height:calc(100% - 8rem);padding:16px 20px 16px 24px;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.5;color:rgb(0, 41, 77);visibility:hidden;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230);box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07);opacity:0;transition:opacity 600ms ease, visibility 600ms ease, transform 600ms ease;transform:translateY(-4rem)}@media (min-width: 62em){.duet-tray{padding:16px 36px}}@media (min-width: 106.25em){.duet-tray{padding:16px 52px 16px 60px}}.duet-tray:focus{outline:0}:host(.user-is-tabbing) .duet-tray:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-tray.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-tray.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:rgb(23, 28, 58);background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-tray.duet-tray-is-active{visibility:visible;opacity:1;transform:translateY(0)}.duet-tray.duet-tray-is-hidden{visibility:hidden;opacity:0;transform:translateY(-4rem)}@media (min-width: 62em){.duet-tray.duet-tray-is-responsive{display:none !important}}.duet-tray.duet-tray-is-expandable{padding-right:66px}@media (min-width: 62em){.duet-tray.duet-tray-is-expandable{padding-right:78px}}@media (min-width: 106.25em){.duet-tray.duet-tray-is-expandable{padding-right:94px}}.duet-tray-expandable{position:relative;z-index:100;width:calc(100% + 46px);max-height:0;overflow-y:auto;visibility:hidden;opacity:0;transition:opacity 600ms ease, visibility 600ms ease, max-height 600ms ease;scrollbar-width:none}.duet-tray-expandable::-webkit-scrollbar{display:none}.duet-tray-expandable.active{max-height:500px;visibility:visible;opacity:1}.duet-tray-expandable-content{width:100%;margin-top:16px;border-top:1px solid rgb(225, 227, 230)}.duet-theme-turva .duet-tray-expandable-content{border-color:rgb(228, 228, 230)}.duet-tray-button{-webkit-user-select:none;user-select:none;padding:20px !important;position:absolute;top:-2px;right:0;z-index:200;color:rgb(0, 41, 77);text-align:center;cursor:pointer;border-radius:4px;transition:transform 300ms ease;-webkit-tap-highlight-color:transparent}@media (min-width: 62em){.duet-tray-button{margin-right:16px}}@media (min-width: 106.25em){.duet-tray-button{margin-right:36px}}.duet-theme-turva .duet-tray-button{color:rgb(23, 28, 58)}.duet-tray-button.duet-tray-is-expanded{transform:rotate(-180deg)}.duet-tray-button:focus{outline:0}:host(.user-is-tabbing) .duet-tray-button:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-theme-turva .duet-tray-button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-tray-button:active{box-shadow:none;opacity:0.75}';var m=parseFloat(n)*2*16;var y=t("duet_tray",function(){function t(t){var i=this;e(this,t);this.isTicking=false;this.expandableId=o("DuetTray");this.animationLoop=function(){i.hiddenState=window.pageYOffset<m;i.isTicking=false};this.toggleExpandable=function(t){t.preventDefault();i.expanded=!i.expanded};this.expanded=false;this.hiddenState=false;this.language=l();this.accessibleCloseLabelDefaults={fi:"Sulje",en:"Close",sv:"Stäng"};this.accessibleCloseLabel=p(this.accessibleCloseLabelDefaults,this.language);this.accessibleOpenLabelDefaults={fi:"Avaa",en:"Open",sv:"Öppna"};this.accessibleOpenLabel=p(this.accessibleOpenLabelDefaults,this.language);this.theme="";this.active=false;this.autoHide=true;this.responsive=true}t.prototype.componentWillLoad=function(){r(this);this.hasAdditionalContent=!!this.element.querySelector("[slot='additional']")};t.prototype.connectedCallback=function(){b(this,[{prop:"accessibleOpenLabel",defaults:"accessibleOpenLabelDefaults"},{prop:"accessibleCloseLabel",defaults:"accessibleCloseLabelDefaults"}]);d(this)};t.prototype.disconnectedCallback=function(){c(this);u(this)};t.prototype.getFrame=function(){if(!this.isTicking&&this.autoHide&&this.active){requestAnimationFrame(this.animationLoop);this.isTicking=true}};t.prototype.handleBodyClick=function(t){if(this.expanded){this.expanded=this.element.contains(t.target)}};t.prototype.render=function(){var t=this;return i("div",{class:{"duet-tray":true,"duet-tray-is-active":this.active,"duet-tray-is-hidden":this.hiddenState,"duet-tray-is-responsive":this.responsive,"duet-theme-turva":this.theme==="turva","duet-tray-is-expandable":this.hasAdditionalContent}},i("div",{class:"duet-tray-default-content",role:"status"},i("slot",null)),this.hasAdditionalContent&&i(a,null,i("button",{"aria-expanded":this.expanded?"true":"false","aria-controls":this.expandableId,onClick:function(e){return t.toggleExpandable(e)},class:{"duet-tray-button":true,"duet-tray-is-expanded":this.expanded}},i("duet-icon",{name:"action-arrow-down",size:"small",color:"currentColor",margin:"none"}),i("duet-visually-hidden",null,this.expanded?this.accessibleCloseLabel:this.accessibleOpenLabel)),i("div",{id:this.expandableId,class:{"duet-tray-expandable":true,active:this.expanded}},i("div",{class:"duet-tray-expandable-content"},i("slot",{name:"additional"})))))};Object.defineProperty(t.prototype,"element",{get:function(){return s(this)},enumerable:false,configurable:true});return t}());y.style=h}}}));
4
+ System.register(["./p-9644775c.system.js","./p-c86d6786.system.js","./p-50f4bca2.system.js","./p-e6b5a1c7.system.js","./p-34d7dd10.system.js","./p-224f6c46.system.js","./p-6ef75455.system.js"],(function(t){"use strict";var e,i,a,s,n,r,o,d,u,l,p,c,b;return{setters:[function(t){e=t.r;i=t.h;a=t.F;s=t.g},function(t){n=t.s},function(t){r=t.i},function(t){o=t.c},function(t){d=t.s;u=t.u},function(t){l=t.a;p=t.g;c=t.c;b=t.d},function(){}],execute:function(){var h='*,*::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;width:100%}.duet-tray{position:fixed;top:4rem;right:0;left:0;z-index:399;display:flex;flex-direction:column;max-height:calc(100% - 8rem);padding:16px 20px 16px 24px;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.5;color:rgb(0, 41, 77);visibility:hidden;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230);box-shadow:0 2px 6px 0 rgba(0, 41, 77, 0.07);opacity:0;transition:opacity 600ms ease, visibility 600ms ease, transform 600ms ease;transform:translateY(-4rem)}@media (min-width: 62em){.duet-tray{padding:16px 36px}}@media (min-width: 106.25em){.duet-tray{padding:16px 52px 16px 60px}}.duet-tray:focus{outline:0}:host(.user-is-tabbing) .duet-tray:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-tray.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-tray.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:rgb(23, 28, 58);background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-tray.duet-tray-is-active{visibility:visible;opacity:1;transform:translateY(0)}.duet-tray.duet-tray-is-hidden{visibility:hidden;opacity:0;transform:translateY(-4rem)}@media (min-width: 62em){.duet-tray.duet-tray-is-responsive{display:none !important}}.duet-tray.duet-tray-is-expandable{padding-right:66px}@media (min-width: 62em){.duet-tray.duet-tray-is-expandable{padding-right:78px}}@media (min-width: 106.25em){.duet-tray.duet-tray-is-expandable{padding-right:94px}}.duet-tray-expandable{position:relative;z-index:100;width:calc(100% + 46px);max-height:0;overflow-y:auto;visibility:hidden;opacity:0;transition:opacity 600ms ease, visibility 600ms ease, max-height 600ms ease;scrollbar-width:none}.duet-tray-expandable::-webkit-scrollbar{display:none}.duet-tray-expandable.active{max-height:500px;visibility:visible;opacity:1}.duet-tray-expandable-content{width:100%;margin-top:16px;border-top:1px solid rgb(225, 227, 230)}.duet-theme-turva .duet-tray-expandable-content{border-color:rgb(228, 228, 230)}.duet-tray-button{-webkit-user-select:none;user-select:none;padding:20px !important;position:absolute;top:-2px;right:0;z-index:200;color:rgb(0, 41, 77);text-align:center;cursor:pointer;border-radius:4px;transition:transform 300ms ease;-webkit-tap-highlight-color:transparent}@media (min-width: 62em){.duet-tray-button{margin-right:16px}}@media (min-width: 106.25em){.duet-tray-button{margin-right:36px}}.duet-theme-turva .duet-tray-button{color:rgb(23, 28, 58)}.duet-tray-button.duet-tray-is-expanded{transform:rotate(-180deg)}.duet-tray-button:focus{outline:0}:host(.user-is-tabbing) .duet-tray-button:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-theme-turva .duet-tray-button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-tray-button:active{box-shadow:none;opacity:0.75}';var m=parseFloat(n)*2*16;var y=t("duet_tray",function(){function t(t){var i=this;e(this,t);this.isTicking=false;this.expandableId=o("DuetTray");this.animationLoop=function(){i.hiddenState=window.pageYOffset<m;i.isTicking=false};this.toggleExpandable=function(t){t.preventDefault();i.expanded=!i.expanded};this.expanded=false;this.hiddenState=false;this.language=l();this.accessibleCloseLabelDefaults={fi:"Sulje",en:"Close",sv:"Stäng"};this.accessibleCloseLabel=p(this.accessibleCloseLabelDefaults,this.language);this.accessibleOpenLabelDefaults={fi:"Avaa",en:"Open",sv:"Öppna"};this.accessibleOpenLabel=p(this.accessibleOpenLabelDefaults,this.language);this.theme="";this.active=false;this.autoHide=true;this.responsive=true}t.prototype.componentWillLoad=function(){r(this);this.hasAdditionalContent=!!this.element.querySelector("[slot='additional']")};t.prototype.connectedCallback=function(){c(this,[{prop:"accessibleOpenLabel",defaults:"accessibleOpenLabelDefaults"},{prop:"accessibleCloseLabel",defaults:"accessibleCloseLabelDefaults"}]);d(this)};t.prototype.disconnectedCallback=function(){b(this);u(this)};t.prototype.getFrame=function(){if(!this.isTicking&&this.autoHide&&this.active){requestAnimationFrame(this.animationLoop);this.isTicking=true}};t.prototype.handleBodyClick=function(t){if(this.expanded){this.expanded=this.element.contains(t.target)}};t.prototype.render=function(){var t=this;return i("div",{class:{"duet-tray":true,"duet-tray-is-active":this.active,"duet-tray-is-hidden":this.hiddenState,"duet-tray-is-responsive":this.responsive,"duet-theme-turva":this.theme==="turva","duet-tray-is-expandable":this.hasAdditionalContent}},i("div",{class:"duet-tray-default-content",role:"status"},i("slot",null)),this.hasAdditionalContent&&i(a,null,i("button",{"aria-expanded":this.expanded?"true":"false","aria-controls":this.expandableId,onClick:function(e){return t.toggleExpandable(e)},class:{"duet-tray-button":true,"duet-tray-is-expanded":this.expanded}},i("duet-icon",{name:"action-arrow-down",size:"small",color:"currentColor",margin:"none"}),i("duet-visually-hidden",null,this.expanded?this.accessibleCloseLabel:this.accessibleOpenLabel)),i("div",{id:this.expandableId,class:{"duet-tray-expandable":true,active:this.expanded}},i("div",{class:"duet-tray-expandable-content"},i("slot",{name:"additional"})))))};Object.defineProperty(t.prototype,"element",{get:function(){return s(this)},enumerable:false,configurable:true});return t}());y.style=h}}}));
@@ -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 i,H as a,g as s,F as d}from"./p-83e9058b.js";import{i as l}from"./p-a58bd561.js";import{f as o,d as n}from"./p-9e371678.js";import{i as r}from"./p-a1b7f2a0.js";import{a as h,c as u,d as b,g as p,s as m}from"./p-2e36d5bf.js";import{p as c,s as g}from"./p-67dc45d7.js";import{b as f,a as y}from"./p-0bdcf67f.js";import{c as v}from"./p-5e59e970.js";import{p as x}from"./p-0e052642.js";import{g as w,a as k}from"./p-fabb616b.js";const T=({data:e,groupId:i,alignment:a})=>{const s=`duet-editable-table duet-editable-table-content-${i}`;return"string"==typeof e?t("td",{innerHTML:e,class:s,part:`${i}content`,style:{verticalAlign:a}}):t("td",{class:s,part:`${i}content`,style:{verticalAlign:a}},e)},L=class{constructor(t){e(this,t),this.duetTableToggle=i(this,"duetTableToggle",7),this.duetMenuClick=i(this,"duetMenuClick",7),this.hasHeadSlotFirst=!1,this.hasHeadSlotLast=!1,this.hasFootSlot=!1,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:i,direction:a,index:s,key:d}=t;this.duetTableToggle.emit({sort_order:i,index:s,direction:a,key:d,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{r(e)&&this.toggleColumn(t,e)},this.language=h(),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,this.hideHeadVisually=!1}componentWillLoad(){l(this),this.hasHeadSlotFirst=!!this.element.querySelector("[slot='thead-first']"),this.hasHeadSlotLast=!!this.element.querySelector("[slot='thead-last']"),this.hasFootSlot=!!this.element.querySelector("[slot='tfoot']")}connectedCallback(){u(this)}disconnectedCallback(){b(this)}createLabel(e){const{sort_order:i,direction:a,index:s,label:d}=e,l=p(d);return this.sortable?t("span",{class:"duet-table-label","data-index":s},t("duet-button",{size:"small",icon:i&&1===a?"action-arrow-down-small":i&&-1===a?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":this.sortableDefaultLabel[this.language],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(o(["index"]))}getRowSortOrder(){return[...this.columns].sort(o(["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 i=this.createLabel(e);return""!==i?t("th",{scope:"col"},i):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,this.actionColumnLabel[this.language])))}renderActions(e,i){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((a=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:i}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:a.name,theme:this.theme,iconName:a.icon,iconColor:a.color,iconSize:a.size,background:a.background,"accessible-label":`${e.actionDescription||""} ${p(a.label)} `}))))}renderTableBody(){const e=this.getSortedColumns(),i=this.getRowSortOrder();return[...this.rows].sort(o(i)).map(((i,a)=>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(i.meta)},e.map((e=>{if(!1!==e.display)return t(T,{data:i[e.key]?i[e.key]:i.item,groupId:this.groupId})})),this.actions&&this.renderActions(i,a))))}render(){return t(a,{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,"hide-head-visually":this.hideHeadVisually},t("table",{role:this.accessibleRole},t("caption",null,t("slot",{name:"tcaption"})),t("thead",null,this.hasHeadSlotFirst&&t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-first"}))),this.renderTableHeader(),this.hasHeadSlotLast&&t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-last"})))),t("tbody",null,this.renderTableBody()),this.hasFootSlot&&t("tfoot",null,t("tr",null,t("td",{class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{name:"tfoot"})))))))}get element(){return s(this)}};L.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 S={none:0,"with-links":16*parseFloat(c),"without-links":16*parseFloat(g)},E=class{constructor(t){e(this,t),this.headingSelector="thead tr > :not(*.duet-editable-table-actions-menu)",this.handleMediaQueryChange=t=>{this.matchesBreakpoint=f.includes(this.breakpoint)?!t.matches:t.matches},this.matchesBreakpoint=!0,this.language=h(),this.theme=void 0,this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.hideHeadVisually=!1}watchLanguageStateHandler(t,e){t!==e&&setTimeout((()=>this.copyHeadingsToCells()),50)}connectedCallback(){this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":y[this.breakpoint]),this.mq.addEventListener("change",n(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>n(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(l(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=S[this.stickyDistance];this.element.querySelectorAll(this.headingSelector).forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords(),u(this)}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0,b(this)}copyHeadingsToCells(){const t=this.element.querySelectorAll(this.headingSelector),e=this.element.querySelectorAll("tbody tr"),i=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{if(i[e]){const a=t.querySelector(".duet-table-cell-heading");if(!a||a.textContent!==i[e]){null==a||a.remove();const s=document.createElement("span");s.textContent=i[e],s.classList.add("duet-table-cell-heading"),s.setAttribute("aria-hidden","true"),s.inert=!0,t.prepend(s)}}}))}))}render(){return t(a,{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,"duet-table-hide-head-visually":this.hideHeadVisually}},t("slot",null))}get element(){return s(this)}static get watchers(){return{language:["watchLanguageStateHandler"]}}};E.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-table-hide-head-visually.duet-table-hide-head-visually thead,duet-table.duet-table-hide-head-visually.duet-table-hide-head-visually thead *{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.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:rgb(0, 41, 77)}duet-table.duet-theme-turva td{color:rgb(23, 28, 58)}duet-table th{font-weight:600;line-height:1.25;color:rgb(101, 119, 135);text-align:left}duet-table.duet-theme-turva th{color:rgb(116, 116, 117)}duet-table tbody th{font-weight:600;color:rgb(0, 41, 77)}duet-table.duet-theme-turva tbody th{color:rgb(23, 28, 58)}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}duet-table span.duet-table-cell-heading{display:none}.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 td span.duet-table-cell-heading{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:rgb(0, 41, 77)}.duet-table-flattened.duet-theme-turva td span.duet-table-cell-heading{color:rgb(23, 28, 58)}.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:rgb(101, 119, 135);text-align:left}.duet-table-sticky thead th{position:sticky;top:0;background:rgb(255, 255, 255)}.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:rgb(255, 255, 255)}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid rgb(225, 227, 230)}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:rgb(228, 228, 230)}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid rgb(101, 119, 135)}.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:rgb(68, 68, 69)}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:rgb(225, 227, 230)}.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:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.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:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.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 rgb(225, 227, 230)}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:rgb(228, 228, 230)}.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 j=[{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-203",system_message:"Files to upload exceed total byte size limit",message:{fi:"Yritit lisätä tiedostoja, jotka ylittäisivät suurimman sallitun yhteenlasketun koon.",sv:"Du försökte lägga till filer som skulle överskrida den maximala kombinerade storleken.",en:"You tried to add files that would exceed the maximum combined size."}},{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."}},{type:"duet-upload-302",system_message:"Files to upload exceeds limits",message:{fi:"Et voi lähettää enempää kuin enimmäismäärän liitteitä.",sv:"Du kan inte ladda upp fler än det maximala antalet bilagor.",en:"You can't upload more than maximum number of attachments."}}],M={fi:"Liiteluettelo",sv:"Lista över bilagor",en:"Attachments list"},z=({label:e,categoryLabel:i})=>t("div",{class:"items-header",tabindex:"-1","aria-label":p(M)},i&&t("duet-heading",{class:"category-header",border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(i)),t("duet-heading",{class:{"filename-header":!0,"no-category":!i},border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(e))),$=(t,e,i)=>{const{allowedMimetypes:a,allowedExtensions:s,maxBytes:d}=e;let l=!1,o=w("default",i);if(t){const{name:e,type:n,size:r}=t,h=((t,e)=>{if(!e||!t)return!0;const i=e.split(",");let a=!1;return i.forEach((e=>{const i=e.split("/"),s=t.split("/");i[0]!==s[0]||i[1]!==s[1]&&"*"!==i[1]||(a=!0)})),a})(n,a),u="all"===s||""===s||" "===s||void 0===s||((t,e)=>{if(!e)return!0;const i=t.split(".");return e.split(",").includes(i[i.length-1])})(e.toLowerCase(),s),b=((t,e)=>!e||!t||e>=t)(r,d);h||(o=w("duet-upload-101",i)),u||(o=w("duet-upload-100",i)),b||(o=w("duet-upload-201",i)),l=h&&u&&b}else l=!1;return{valid:l,errorMessage:l?void 0:p(o.message),errorSystem:l?void 0:o.system_message,errorType:l?void 0:o.type}},F=({payload:t,options:e,onFailure:i,onSuccess:a,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:h,name:u}=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&&a(l,u,l.status),l.readyState===XMLHttpRequest.DONE&&l.status>=300&&l.status<999&&i(l,u,l.status)},s(u)),l.send(h),l},C=class{constructor(a){e(this,a),this.duetChange=i(this,"duetChange",3),this.duetBlur=i(this,"duetBlur",7),this.duetFocus=i(this,"duetFocus",7),this.duetReady=i(this,"duetReady",7),this.duetDone=i(this,"duetDone",3),this.duetState=i(this,"duetState",3),this.duetDelete=i(this,"duetDelete",3),this.duetCancel=i(this,"duetCancel",3),this.duetProgress=i(this,"duetProgress",3),this.duetUpload=i(this,"duetUpload",3),this.linkClick=i(this,"linkClick",3),this.buttonId=v("DuetButton"),this.labelId=v("DuetLabel"),this.uploadId=v("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.filesToUploadExceedsLimit=!1,this.filesToUploadTotalSizeIsAboveMax=!1,this.internalStatusMessageLabel=void 0,this.itemRefs=new Map,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.kick=n((()=>{this.tick=Date.now()}),30),this.categoryLabel={en:"Category",sv:"Filtyp",fi:"Tiedostotyyppi"},this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:i,id:a,originalEvent:s}=e;switch(i){case"delete":this.onDelete(a,s);break;case"cancel":this.onCancel(a,s)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),i=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==i&&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.mapFilesToUploadItems=(e,i,a,s)=>i===this.DefaultGroups.success?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"success",data:e,showLinks:this.showLinks,linkClickEvent:this.emitEvent?this.linkClick:void 0,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.inprogress?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"inprogress",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.pending?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"pending",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.failure?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"failure",data:e,showLinks:this.showLinks,errorCodes:this.errorCodes,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,i,a=!0)=>{try{const a=this.files.get(t);a[e]=i,this.files.set(t,a),this.external&&"url"!==e&&this.trackProgress(t,"uploaded"===e)}catch(t){}a&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(i=>{this.updateValueInMap(e,"progress",i),this.onProgress(e,i,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((i=>{i.valid&&!i.deleted?t.push(i):i.valid||i.deleted||e.push(i)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{const{bytesMaxReached:i,fileMaxReached:a}=this.validateTotals();i||a?this.kick():(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,i)=>{this.updateValueInMap(e,"status",i,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const i=JSON.parse(t.response);this.updateValueInMap(e,"url",i.url)}catch(t){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,i)=>{try{const{error:i}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:i.message,type:i.type},!1)}catch(t){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:i},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",k("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 i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(i+=t.size)})),i>=e))})(0,this.maxBytesTotal),i=((t,e)=>{let i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&i++})),i>=e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",k("duet-upload-202",this.errorCodes),!1),i&&t&&this.updateValueInMap(t,"error",k("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=i,{bytesMaxReached:e,fileMaxReached:i}},this.uploadFile=async(t,e=!1,i)=>{!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),i&&e.append("key",i),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(e){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of Array.from(this.files.entries()))"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,i]of Array.from(this.files.entries()))if(i.uid===t)return{value:i,key:e};return null},this.handleExternalUploadButton=(t,e)=>{this.externalUploadButton&&(this.externalUploadButton.disabled=!(!t&&!e))},this.onDelete=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:s,fileMaxReached:d}=this.validateTotals();this.handleExternalUploadButton(s,d),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:a},component:"duet-upload"}),this.external||a.pending||this.makeXHRDeleteRequest(a),this.resetFormFields()},this.onCancel=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:s,fileMaxReached:d}=this.validateTotals();if(this.handleExternalUploadButton(s,d),!this.external){const{xhr:t}=a;t&&t.abort()}this.kick(),this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:a},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,i)=>{this.duetChange.emit({originalEvent:i,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=Array.from(this.files.values()),e=[],i=[],a=[],s=[];let d=!1;return t.forEach((t=>{const l=this.getGroupFromItemData(t);t.meta&&t.meta.badges&&(d=!0),l===this.DefaultGroups.success?s.push({uid:t.uid,data:t}):l===this.DefaultGroups.inprogress?e.push({uid:t.uid,data:t}):l===this.DefaultGroups.pending?a.push({uid:t.uid,data:t}):l===this.DefaultGroups.failure?i.push({uid:t.uid,data:t}):t.group&&e.push({uid:t.uid,data:t})})),{pending:a,failure:i,success:s,inprogress:e,hasCategory:d}},this.getActions=(t,e)=>e.filter((e=>e.map.includes(t))),this.renderUploadedItems=()=>{this.itemRefs.clear();const e=this.filterMap(),i=e.hasCategory,a=this.hideCancelButton?this.actions.filter((t=>"cancel"!==t.name)):this.actions,s=this.groups.map((s=>{const l=e[s.id];if(null==l?void 0:l.length)return t(d,null,!this.hideGroups&&t(z,{categoryLabel:i?this.categoryLabel:void 0,label:s.label}),l.map((t=>this.mapFilesToUploadItems(t.data,s.id,i,a))))}));return t(d,null,this.showUploadedItemsHeader&&t(z,{categoryLabel:i?this.categoryLabel:void 0,label:this.uploadedItemsHeaderLabel}),s)},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:"Delete the file",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}, yhteensä lähetettävänä {filesTotal}.",inProgressWithErrors:"Lähetetään {filesInProgress}, lähetetty {filesUploaded}, yhteensä lähetettävänä {filesTotal}, {filesWithErrors} epäonnistui",done:"Lähetys valmis, {filesTotal} lisätty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} lisätty onnistuneesti, {filesWithErrors} epäonnistui",files:"tiedostoa",file:"tiedosto"},sv:{inProgress:"Laddar upp {filesUploaded} av {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Uppladdningen slutförd, {filesTotal} har lagts till",doneWithErrors:"Uppladdningen slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Uploading {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"Upload completed, {filesTotal} added successfully",doneWithErrors:"Upload completed, {filesUploaded} added successfully, {filesWithErrors} failed.",files:"files",file:"file"}},this.statusMessageLabel=p(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=p(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=p(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=p(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=p(this.fileListEmptyDefaults),this.error="",this.errorCodes=j,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.hideCancelButton=!1,this.value=void 0,this.externalUploadButtonId=void 0,this.captionOnBottom=!1,this.showUploadedItemsHeader=!1,this.uploadedItemsHeaderLabel={fi:"Ladattu tiedosto",sv:"Lägg till en bilaga",en:"Uploaded file"},this.headerHeadingLevel="h3",this.hideHeader=!1,this.emitEvent=!1,this.actionButtonTitles={cancel:!1,delete:!1},this.renameDuplicates=!1,this.groups=[{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"}},{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}}]}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?m(this.groups):this.statusMessageLabel,l(this),this.listenForActionEvents(),this.onReady(),this.externalUploadButton=document.querySelector(`#${this.externalUploadButtonId}`),this.processedButtonTitles=x(this.actionButtonTitles)}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){const{bytesMaxReached:e,fileMaxReached:i}=this.validateTotals();if(e||i)return this.handleExternalUploadButton(e,i),void this.kick();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,i){this.updateValueInMap(t,e,i)}async focusActionButton(t){var e;await(null===(e=this.itemRefs.get(t))||void 0===e?void 0:e.focusActionButton())}render(){const e=this.identifier||this.uploadId,i=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),s=Math.round(this.maxBytes/1024/1024);let l=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return l=l.replace(/{maxbytes}/g,`${s.toString()} MB`),l=l.replace(/{maxbytestotal}/g,`${i.toString()} MB`),l=l.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),this.externalUploadButton&&(this.externalUploadButton.accessibleLabel=l),t(a,{class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{"label-heading-level":this.headerHeadingLevel,"label-hidden":this.hideHeader,label:this.label,caption:this.captionOnBottom?void 0:l},t("slot",{name:"header"}),!this.files.size&&t("duet-empty-state",{id:this.labelId,part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",icon:"messaging-attachment"},t("duet-paragraph",{margin:"none"},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.renderUploadedItems(),!!this.files.size&&t("slot",{name:"filefooter"}),t("slot",{name:"uploadfooter"}),this.captionOnBottom&&t("duet-caption",{margin:"none",size:"small"},t("div",{class:"upload-bottom-caption"},l)),t("slot",{name:"afterfooter"}),!this.hideButton&&t(d,null,t("duet-spacer",{size:"large"}),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)),(this.fileMaxReached||this.bytesMaxReached||this.filesToUploadExceedsLimit||this.filesToUploadTotalSizeIsAboveMax)&&t(d,null,t("duet-spacer",{size:"medium"}),t("duet-alert",{part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&k("duet-upload-301",this.errorCodes),this.bytesMaxReached&&k("duet-upload-202",this.errorCodes),this.filesToUploadExceedsLimit&&k("duet-upload-302",this.errorCodes),this.filesToUploadTotalSizeIsAboveMax&&k("duet-upload-203",this.errorCodes))),t("duet-visually-hidden",{"aria-hidden":"true"},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,tabIndex:-1}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,i=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,i)})),e.upload.addEventListener("load",(()=>{this.transferComplete(i)})),e.upload.addEventListener("error",(()=>{this.transferFailed(i)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(i)}));let a={payload:{data:t,name:i},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&&(a=this.middleware(a)),F(a)}makeXHRDeleteRequest(t){const{uid:e,item:i}=t,a=new XMLHttpRequest;let s={payload:{data:null,name},options:{type:"DELETE",xhr:a,uri:this.uri,argument:`?key=${e}&name=${i.name}`,headers:{"x-fileuid":e,"x-filename":i.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(s=this.middleware(s)),F(s)}escapeSpecialCharacters(t){return(t+"").replace(/[\\"'(){}\[\]*?$^+]/g,"\\$&").replace(/\u0000/g,"\\0")}getRenamedFileName(t,e){const i=new RegExp(`${this.escapeSpecialCharacters(t)} \\(\\d+\\).${e}`),a=Array.from(this.files.entries()).map((t=>{const[e,i]=t;return e})).filter((a=>i.test(a)||a===`${t}.${e}`)).sort(((t,e)=>t.split(".").slice(0,-1).join(".")>e.split(".").slice(0,-1).join(".")?1:-1)).pop().split(".").slice(0,-1).join(".");if(a===t)return`${t} (1).${e}`;const s=parseInt(a.split("(").pop().slice(0,-1));return`${t} (${s+1}).${e}`}renameFiles(t){return t.map((t=>{if(this.files.get(t.name)){const e=t.name.split("."),i=e.pop(),a=e.join("."),s=this.getRenamedFileName(a,i);return new File([t],s,{type:t.type,lastModified:t.lastModified})}return t}))}async onChange(t){var e;let i=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(this.filesToUploadExceedsLimit=!1,this.files.size+i.length>this.maxFiles)return this.filesToUploadExceedsLimit=!0,void this.kick();if(this.filesToUploadTotalSizeIsAboveMax=!1,((t,e,i)=>{let a=0;return!!(i&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),e.forEach((t=>{t.size&&(a+=t.size)})),a>=i))})(0,i,this.maxBytesTotal))return this.filesToUploadTotalSizeIsAboveMax=!0,void this.kick();if(i){this.renameDuplicates&&(i=this.renameFiles(i));for(const t of i){const{valid:e,errorMessage:i,errorType:a,errorSystem:s}=$(t,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),d={uid:this.genHashName(),item:t,size:t.size,meta:this.metaData,uploaded:!1,valid:e,error:{type:e?void 0:a,message:e?void 0:i,system_message:e?void 0:s},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(t.name,d),e&&!this.external?await this.uploadFile(d):e&&this.external?(this.updateValueInMap(d.item.name,"pending",!0,!1),this.updateValueInMap(d.item.name,"group","pending",!0)):e||this.updateValueInMap(t.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"]}}};C.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}::slotted([slot=uploadfooter]){margin-top:20px}.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:rgb(245, 248, 250)}.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-paragraph::part(duet-paragraph){word-break:break-word}duet-editable-table tfoot{display:none}.upload-bottom-caption{margin-top:12px;margin-bottom:16px;line-height:1.4rem}.items-header{display:none;flex-direction:row;margin-bottom:0}@media (min-width: 36em){.items-header{display:flex}}.items-header:not(:last-child),.items-header:not(:first-child){margin-top:12px}.items-header .category-header{width:35%}.items-header .filename-header{width:65%}.items-header .filename-header.no-category{width:100%}.upload-item-row{display:flex;flex-direction:column;gap:16px;align-content:center;align-items:center;padding:16px 0 16px 0;border-bottom:1px solid rgb(225, 227, 230)}@media (min-width: 36em){.upload-item-row{flex-direction:row;gap:10px}}.upload-item-row .item-categories{width:100%}@media (min-width: 36em){.upload-item-row .item-categories{width:35%}}.upload-item-row .item-name{position:relative;bottom:2px;width:100%;text-align:left}@media (min-width: 36em){.upload-item-row .item-name{width:50%}.upload-item-row .item-name.no-category{width:85%}}.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:block}@media (min-width: 36em){.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:none}}.upload-item-row .item-actions{width:100%;margin-left:-8px;text-align:left}@media (min-width: 36em){.upload-item-row .item-actions{width:15%;padding-top:0;margin-left:auto;text-align:right}}.upload-item-row .duet-upload-item-name duet-icon{position:relative;top:4px}.upload-item-row .duet-upload-item-name duet-progress{display:block;margin-top:16px}";export{L as duet_editable_table,E as duet_table,C as duet_upload}
4
+ import{h as t,r as e,c as i,H as a,g as s,F as d}from"./p-83e9058b.js";import{i as l}from"./p-a58bd561.js";import{f as o,d as n}from"./p-9e371678.js";import{i as r}from"./p-a1b7f2a0.js";import{a as h,c as u,d as b,g as p,s as m}from"./p-2e36d5bf.js";import{p as c,s as g}from"./p-4a901bfc.js";import{b as f,a as y}from"./p-1784b1d2.js";import{c as v}from"./p-5e59e970.js";import{p as x}from"./p-0e052642.js";import{g as w,a as k}from"./p-fabb616b.js";const T=({data:e,groupId:i,alignment:a})=>{const s=`duet-editable-table duet-editable-table-content-${i}`;return"string"==typeof e?t("td",{innerHTML:e,class:s,part:`${i}content`,style:{verticalAlign:a}}):t("td",{class:s,part:`${i}content`,style:{verticalAlign:a}},e)},L=class{constructor(t){e(this,t),this.duetTableToggle=i(this,"duetTableToggle",7),this.duetMenuClick=i(this,"duetMenuClick",7),this.hasHeadSlotFirst=!1,this.hasHeadSlotLast=!1,this.hasFootSlot=!1,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:i,direction:a,index:s,key:d}=t;this.duetTableToggle.emit({sort_order:i,index:s,direction:a,key:d,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{r(e)&&this.toggleColumn(t,e)},this.language=h(),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,this.hideHeadVisually=!1}componentWillLoad(){l(this),this.hasHeadSlotFirst=!!this.element.querySelector("[slot='thead-first']"),this.hasHeadSlotLast=!!this.element.querySelector("[slot='thead-last']"),this.hasFootSlot=!!this.element.querySelector("[slot='tfoot']")}connectedCallback(){u(this)}disconnectedCallback(){b(this)}createLabel(e){const{sort_order:i,direction:a,index:s,label:d}=e,l=p(d);return this.sortable?t("span",{class:"duet-table-label","data-index":s},t("duet-button",{size:"small",icon:i&&1===a?"action-arrow-down-small":i&&-1===a?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":this.sortableDefaultLabel[this.language],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(o(["index"]))}getRowSortOrder(){return[...this.columns].sort(o(["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 i=this.createLabel(e);return""!==i?t("th",{scope:"col"},i):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,this.actionColumnLabel[this.language])))}renderActions(e,i){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((a=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:i}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:a.name,theme:this.theme,iconName:a.icon,iconColor:a.color,iconSize:a.size,background:a.background,"accessible-label":`${e.actionDescription||""} ${p(a.label)} `}))))}renderTableBody(){const e=this.getSortedColumns(),i=this.getRowSortOrder();return[...this.rows].sort(o(i)).map(((i,a)=>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(i.meta)},e.map((e=>{if(!1!==e.display)return t(T,{data:i[e.key]?i[e.key]:i.item,groupId:this.groupId})})),this.actions&&this.renderActions(i,a))))}render(){return t(a,{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,"hide-head-visually":this.hideHeadVisually},t("table",{role:this.accessibleRole},t("caption",null,t("slot",{name:"tcaption"})),t("thead",null,this.hasHeadSlotFirst&&t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-first"}))),this.renderTableHeader(),this.hasHeadSlotLast&&t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-last"})))),t("tbody",null,this.renderTableBody()),this.hasFootSlot&&t("tfoot",null,t("tr",null,t("td",{class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{name:"tfoot"})))))))}get element(){return s(this)}};L.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 S={none:0,"with-links":16*parseFloat(c),"without-links":16*parseFloat(g)},E=class{constructor(t){e(this,t),this.headingSelector="thead tr > :not(*.duet-editable-table-actions-menu)",this.handleMediaQueryChange=t=>{this.matchesBreakpoint=f.includes(this.breakpoint)?!t.matches:t.matches},this.matchesBreakpoint=!0,this.language=h(),this.theme=void 0,this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.hideHeadVisually=!1}watchLanguageStateHandler(t,e){t!==e&&setTimeout((()=>this.copyHeadingsToCells()),50)}connectedCallback(){this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":y[this.breakpoint]),this.mq.addEventListener("change",n(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>n(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(l(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=S[this.stickyDistance];this.element.querySelectorAll(this.headingSelector).forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords(),u(this)}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0,b(this)}copyHeadingsToCells(){const t=this.element.querySelectorAll(this.headingSelector),e=this.element.querySelectorAll("tbody tr"),i=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{if(i[e]){const a=t.querySelector(".duet-table-cell-heading");if(!a||a.textContent!==i[e]){null==a||a.remove();const s=document.createElement("span");s.textContent=i[e],s.classList.add("duet-table-cell-heading"),s.setAttribute("aria-hidden","true"),s.inert=!0,t.prepend(s)}}}))}))}render(){return t(a,{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,"duet-table-hide-head-visually":this.hideHeadVisually}},t("slot",null))}get element(){return s(this)}static get watchers(){return{language:["watchLanguageStateHandler"]}}};E.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-table-hide-head-visually.duet-table-hide-head-visually thead,duet-table.duet-table-hide-head-visually.duet-table-hide-head-visually thead *{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.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:rgb(0, 41, 77)}duet-table.duet-theme-turva td{color:rgb(23, 28, 58)}duet-table th{font-weight:600;line-height:1.25;color:rgb(101, 119, 135);text-align:left}duet-table.duet-theme-turva th{color:rgb(116, 116, 117)}duet-table tbody th{font-weight:600;color:rgb(0, 41, 77)}duet-table.duet-theme-turva tbody th{color:rgb(23, 28, 58)}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}duet-table span.duet-table-cell-heading{display:none}.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 td span.duet-table-cell-heading{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:rgb(0, 41, 77)}.duet-table-flattened.duet-theme-turva td span.duet-table-cell-heading{color:rgb(23, 28, 58)}.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:rgb(101, 119, 135);text-align:left}.duet-table-sticky thead th{position:sticky;top:0;background:rgb(255, 255, 255)}.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:rgb(255, 255, 255)}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid rgb(225, 227, 230)}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:rgb(228, 228, 230)}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid rgb(101, 119, 135)}.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:rgb(68, 68, 69)}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:rgb(225, 227, 230)}.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:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.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:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.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 rgb(225, 227, 230)}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:rgb(228, 228, 230)}.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 rgb(225, 227, 230)}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:rgb(228, 228, 230)}.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 j=[{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-203",system_message:"Files to upload exceed total byte size limit",message:{fi:"Yritit lisätä tiedostoja, jotka ylittäisivät suurimman sallitun yhteenlasketun koon.",sv:"Du försökte lägga till filer som skulle överskrida den maximala kombinerade storleken.",en:"You tried to add files that would exceed the maximum combined size."}},{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."}},{type:"duet-upload-302",system_message:"Files to upload exceeds limits",message:{fi:"Et voi lähettää enempää kuin enimmäismäärän liitteitä.",sv:"Du kan inte ladda upp fler än det maximala antalet bilagor.",en:"You can't upload more than maximum number of attachments."}}],M={fi:"Liiteluettelo",sv:"Lista över bilagor",en:"Attachments list"},z=({label:e,categoryLabel:i})=>t("div",{class:"items-header",tabindex:"-1","aria-label":p(M)},i&&t("duet-heading",{class:"category-header",border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(i)),t("duet-heading",{class:{"filename-header":!0,"no-category":!i},border:"solid",color:"gray-darker",level:"h3","visual-level":"h6",weight:"semibold",margin:"none","aria-hidden":"true"},p(e))),$=(t,e,i)=>{const{allowedMimetypes:a,allowedExtensions:s,maxBytes:d}=e;let l=!1,o=w("default",i);if(t){const{name:e,type:n,size:r}=t,h=((t,e)=>{if(!e||!t)return!0;const i=e.split(",");let a=!1;return i.forEach((e=>{const i=e.split("/"),s=t.split("/");i[0]!==s[0]||i[1]!==s[1]&&"*"!==i[1]||(a=!0)})),a})(n,a),u="all"===s||""===s||" "===s||void 0===s||((t,e)=>{if(!e)return!0;const i=t.split(".");return e.split(",").includes(i[i.length-1])})(e.toLowerCase(),s),b=((t,e)=>!e||!t||e>=t)(r,d);h||(o=w("duet-upload-101",i)),u||(o=w("duet-upload-100",i)),b||(o=w("duet-upload-201",i)),l=h&&u&&b}else l=!1;return{valid:l,errorMessage:l?void 0:p(o.message),errorSystem:l?void 0:o.system_message,errorType:l?void 0:o.type}},F=({payload:t,options:e,onFailure:i,onSuccess:a,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:h,name:u}=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&&a(l,u,l.status),l.readyState===XMLHttpRequest.DONE&&l.status>=300&&l.status<999&&i(l,u,l.status)},s(u)),l.send(h),l},C=class{constructor(a){e(this,a),this.duetChange=i(this,"duetChange",3),this.duetBlur=i(this,"duetBlur",7),this.duetFocus=i(this,"duetFocus",7),this.duetReady=i(this,"duetReady",7),this.duetDone=i(this,"duetDone",3),this.duetState=i(this,"duetState",3),this.duetDelete=i(this,"duetDelete",3),this.duetCancel=i(this,"duetCancel",3),this.duetProgress=i(this,"duetProgress",3),this.duetUpload=i(this,"duetUpload",3),this.linkClick=i(this,"linkClick",3),this.buttonId=v("DuetButton"),this.labelId=v("DuetLabel"),this.uploadId=v("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.filesToUploadExceedsLimit=!1,this.filesToUploadTotalSizeIsAboveMax=!1,this.internalStatusMessageLabel=void 0,this.itemRefs=new Map,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.kick=n((()=>{this.tick=Date.now()}),30),this.categoryLabel={en:"Category",sv:"Filtyp",fi:"Tiedostotyyppi"},this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:i,id:a,originalEvent:s}=e;switch(i){case"delete":this.onDelete(a,s);break;case"cancel":this.onCancel(a,s)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),i=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==i&&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.mapFilesToUploadItems=(e,i,a,s)=>i===this.DefaultGroups.success?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"success",data:e,showLinks:this.showLinks,linkClickEvent:this.emitEvent?this.linkClick:void 0,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.inprogress?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"inprogress",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.pending?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"pending",data:e,showLinks:this.showLinks,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):i===this.DefaultGroups.failure?t("duet-upload-item",{theme:this.theme,actions:this.getActions(i,s),type:"failure",data:e,showLinks:this.showLinks,errorCodes:this.errorCodes,categoryLabel:this.categoryLabel,label:this.uploadedItemsHeaderLabel,showCategory:a,buttonTitles:this.processedButtonTitles,ref:t=>{this.itemRefs.set(e.uid,t)}}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,i,a=!0)=>{try{const a=this.files.get(t);a[e]=i,this.files.set(t,a),this.external&&"url"!==e&&this.trackProgress(t,"uploaded"===e)}catch(t){}a&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(i=>{this.updateValueInMap(e,"progress",i),this.onProgress(e,i,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((i=>{i.valid&&!i.deleted?t.push(i):i.valid||i.deleted||e.push(i)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{const{bytesMaxReached:i,fileMaxReached:a}=this.validateTotals();i||a?this.kick():(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,i)=>{this.updateValueInMap(e,"status",i,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const i=JSON.parse(t.response);this.updateValueInMap(e,"url",i.url)}catch(t){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,i)=>{try{const{error:i}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:i.message,type:i.type},!1)}catch(t){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:i},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",k("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 i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(i+=t.size)})),i>=e))})(0,this.maxBytesTotal),i=((t,e)=>{let i=0;return!!(e&&(this.files.forEach((t=>{t.valid&&i++})),i>=e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",k("duet-upload-202",this.errorCodes),!1),i&&t&&this.updateValueInMap(t,"error",k("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=i,{bytesMaxReached:e,fileMaxReached:i}},this.uploadFile=async(t,e=!1,i)=>{!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),i&&e.append("key",i),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(e){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of Array.from(this.files.entries()))"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,i]of Array.from(this.files.entries()))if(i.uid===t)return{value:i,key:e};return null},this.handleExternalUploadButton=(t,e)=>{this.externalUploadButton&&(this.externalUploadButton.disabled=!(!t&&!e))},this.onDelete=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:s,fileMaxReached:d}=this.validateTotals();this.handleExternalUploadButton(s,d),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:a},component:"duet-upload"}),this.external||a.pending||this.makeXHRDeleteRequest(a),this.resetFormFields()},this.onCancel=(t,e)=>{const i=this.getItemFromUID(t).key,a=this.files.get(i);this.files.delete(i);const{bytesMaxReached:s,fileMaxReached:d}=this.validateTotals();if(this.handleExternalUploadButton(s,d),!this.external){const{xhr:t}=a;t&&t.abort()}this.kick(),this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:a},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,i)=>{this.duetChange.emit({originalEvent:i,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=Array.from(this.files.values()),e=[],i=[],a=[],s=[];let d=!1;return t.forEach((t=>{const l=this.getGroupFromItemData(t);t.meta&&t.meta.badges&&(d=!0),l===this.DefaultGroups.success?s.push({uid:t.uid,data:t}):l===this.DefaultGroups.inprogress?e.push({uid:t.uid,data:t}):l===this.DefaultGroups.pending?a.push({uid:t.uid,data:t}):l===this.DefaultGroups.failure?i.push({uid:t.uid,data:t}):t.group&&e.push({uid:t.uid,data:t})})),{pending:a,failure:i,success:s,inprogress:e,hasCategory:d}},this.getActions=(t,e)=>e.filter((e=>e.map.includes(t))),this.renderUploadedItems=()=>{this.itemRefs.clear();const e=this.filterMap(),i=e.hasCategory,a=this.hideCancelButton?this.actions.filter((t=>"cancel"!==t.name)):this.actions,s=this.groups.map((s=>{const l=e[s.id];if(null==l?void 0:l.length)return t(d,null,!this.hideGroups&&t(z,{categoryLabel:i?this.categoryLabel:void 0,label:s.label}),l.map((t=>this.mapFilesToUploadItems(t.data,s.id,i,a))))}));return t(d,null,this.showUploadedItemsHeader&&t(z,{categoryLabel:i?this.categoryLabel:void 0,label:this.uploadedItemsHeaderLabel}),s)},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:"Delete the file",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}, yhteensä lähetettävänä {filesTotal}.",inProgressWithErrors:"Lähetetään {filesInProgress}, lähetetty {filesUploaded}, yhteensä lähetettävänä {filesTotal}, {filesWithErrors} epäonnistui",done:"Lähetys valmis, {filesTotal} lisätty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} lisätty onnistuneesti, {filesWithErrors} epäonnistui",files:"tiedostoa",file:"tiedosto"},sv:{inProgress:"Laddar upp {filesUploaded} av {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Uppladdningen slutförd, {filesTotal} har lagts till",doneWithErrors:"Uppladdningen slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Uploading {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"Upload completed, {filesTotal} added successfully",doneWithErrors:"Upload completed, {filesUploaded} added successfully, {filesWithErrors} failed.",files:"files",file:"file"}},this.statusMessageLabel=p(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=p(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=p(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=p(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=p(this.fileListEmptyDefaults),this.error="",this.errorCodes=j,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.hideCancelButton=!1,this.value=void 0,this.externalUploadButtonId=void 0,this.captionOnBottom=!1,this.showUploadedItemsHeader=!1,this.uploadedItemsHeaderLabel={fi:"Ladattu tiedosto",sv:"Lägg till en bilaga",en:"Uploaded file"},this.headerHeadingLevel="h3",this.hideHeader=!1,this.emitEvent=!1,this.actionButtonTitles={cancel:!1,delete:!1},this.renameDuplicates=!1,this.groups=[{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"}},{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}}]}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?m(this.groups):this.statusMessageLabel,l(this),this.listenForActionEvents(),this.onReady(),this.externalUploadButton=document.querySelector(`#${this.externalUploadButtonId}`),this.processedButtonTitles=x(this.actionButtonTitles)}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){const{bytesMaxReached:e,fileMaxReached:i}=this.validateTotals();if(e||i)return this.handleExternalUploadButton(e,i),void this.kick();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,i){this.updateValueInMap(t,e,i)}async focusActionButton(t){var e;await(null===(e=this.itemRefs.get(t))||void 0===e?void 0:e.focusActionButton())}render(){const e=this.identifier||this.uploadId,i=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),s=Math.round(this.maxBytes/1024/1024);let l=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return l=l.replace(/{maxbytes}/g,`${s.toString()} MB`),l=l.replace(/{maxbytestotal}/g,`${i.toString()} MB`),l=l.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),this.externalUploadButton&&(this.externalUploadButton.accessibleLabel=l),t(a,{class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{"label-heading-level":this.headerHeadingLevel,"label-hidden":this.hideHeader,label:this.label,caption:this.captionOnBottom?void 0:l},t("slot",{name:"header"}),!this.files.size&&t("duet-empty-state",{id:this.labelId,part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",icon:"messaging-attachment"},t("duet-paragraph",{margin:"none"},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.renderUploadedItems(),!!this.files.size&&t("slot",{name:"filefooter"}),t("slot",{name:"uploadfooter"}),this.captionOnBottom&&t("duet-caption",{margin:"none",size:"small"},t("div",{class:"upload-bottom-caption"},l)),t("slot",{name:"afterfooter"}),!this.hideButton&&t(d,null,t("duet-spacer",{size:"large"}),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)),(this.fileMaxReached||this.bytesMaxReached||this.filesToUploadExceedsLimit||this.filesToUploadTotalSizeIsAboveMax)&&t(d,null,t("duet-spacer",{size:"medium"}),t("duet-alert",{part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&k("duet-upload-301",this.errorCodes),this.bytesMaxReached&&k("duet-upload-202",this.errorCodes),this.filesToUploadExceedsLimit&&k("duet-upload-302",this.errorCodes),this.filesToUploadTotalSizeIsAboveMax&&k("duet-upload-203",this.errorCodes))),t("duet-visually-hidden",{"aria-hidden":"true"},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,tabIndex:-1}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,i=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,i)})),e.upload.addEventListener("load",(()=>{this.transferComplete(i)})),e.upload.addEventListener("error",(()=>{this.transferFailed(i)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(i)}));let a={payload:{data:t,name:i},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&&(a=this.middleware(a)),F(a)}makeXHRDeleteRequest(t){const{uid:e,item:i}=t,a=new XMLHttpRequest;let s={payload:{data:null,name},options:{type:"DELETE",xhr:a,uri:this.uri,argument:`?key=${e}&name=${i.name}`,headers:{"x-fileuid":e,"x-filename":i.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(s=this.middleware(s)),F(s)}escapeSpecialCharacters(t){return(t+"").replace(/[\\"'(){}\[\]*?$^+]/g,"\\$&").replace(/\u0000/g,"\\0")}getRenamedFileName(t,e){const i=new RegExp(`${this.escapeSpecialCharacters(t)} \\(\\d+\\).${e}`),a=Array.from(this.files.entries()).map((t=>{const[e,i]=t;return e})).filter((a=>i.test(a)||a===`${t}.${e}`)).sort(((t,e)=>t.split(".").slice(0,-1).join(".")>e.split(".").slice(0,-1).join(".")?1:-1)).pop().split(".").slice(0,-1).join(".");if(a===t)return`${t} (1).${e}`;const s=parseInt(a.split("(").pop().slice(0,-1));return`${t} (${s+1}).${e}`}renameFiles(t){return t.map((t=>{if(this.files.get(t.name)){const e=t.name.split("."),i=e.pop(),a=e.join("."),s=this.getRenamedFileName(a,i);return new File([t],s,{type:t.type,lastModified:t.lastModified})}return t}))}async onChange(t){var e;let i=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(this.filesToUploadExceedsLimit=!1,this.files.size+i.length>this.maxFiles)return this.filesToUploadExceedsLimit=!0,void this.kick();if(this.filesToUploadTotalSizeIsAboveMax=!1,((t,e,i)=>{let a=0;return!!(i&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),e.forEach((t=>{t.size&&(a+=t.size)})),a>=i))})(0,i,this.maxBytesTotal))return this.filesToUploadTotalSizeIsAboveMax=!0,void this.kick();if(i){this.renameDuplicates&&(i=this.renameFiles(i));for(const t of i){const{valid:e,errorMessage:i,errorType:a,errorSystem:s}=$(t,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),d={uid:this.genHashName(),item:t,size:t.size,meta:this.metaData,uploaded:!1,valid:e,error:{type:e?void 0:a,message:e?void 0:i,system_message:e?void 0:s},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(t.name,d),e&&!this.external?await this.uploadFile(d):e&&this.external?(this.updateValueInMap(d.item.name,"pending",!0,!1),this.updateValueInMap(d.item.name,"group","pending",!0)):e||this.updateValueInMap(t.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"]}}};C.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}::slotted([slot=uploadfooter]){margin-top:20px}.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:rgb(245, 248, 250)}.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-paragraph::part(duet-paragraph){word-break:break-word}duet-editable-table tfoot{display:none}.upload-bottom-caption{margin-top:12px;margin-bottom:16px;line-height:1.4rem}.items-header{display:none;flex-direction:row;margin-bottom:0}@media (min-width: 36em){.items-header{display:flex}}.items-header:not(:last-child),.items-header:not(:first-child){margin-top:12px}.items-header .category-header{width:35%}.items-header .filename-header{width:65%}.items-header .filename-header.no-category{width:100%}.upload-item-row{display:flex;flex-direction:column;gap:16px;align-content:center;align-items:center;padding:16px 0 16px 0;border-bottom:1px solid rgb(225, 227, 230)}@media (min-width: 36em){.upload-item-row{flex-direction:row;gap:10px}}.upload-item-row .item-categories{width:100%}@media (min-width: 36em){.upload-item-row .item-categories{width:35%}}.upload-item-row .item-name{position:relative;bottom:2px;width:100%;text-align:left}@media (min-width: 36em){.upload-item-row .item-name{width:50%}.upload-item-row .item-name.no-category{width:85%}}.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:block}@media (min-width: 36em){.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:none}}.upload-item-row .item-actions{width:100%;margin-left:-8px;text-align:left}@media (min-width: 36em){.upload-item-row .item-actions{width:15%;padding-top:0;margin-left:auto;text-align:right}}.upload-item-row .duet-upload-item-name duet-icon{position:relative;top:4px}.upload-item-row .duet-upload-item-name duet-progress{display:block;margin-top:16px}";export{L as duet_editable_table,E as duet_table,C as duet_upload}
@@ -7,9 +7,9 @@ import { c as createID } from './create-id-149a1b6d.js';
7
7
  import { d as debounce } from './js-utils-9b9e0039.js';
8
8
  import { i as isKeyboardClick } from './keyboard-utils-439bcc8b.js';
9
9
  import { g as getLocaleString, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver } from './language-utils-00ca4c55.js';
10
- import { c as capitalizeFirstLetter, g as getColorByName, s as shadeRGBColor } from './token-utils-2adbab3f.js';
10
+ import { c as capitalizeFirstLetter, g as getColorByName, s as shadeRGBColor } from './token-utils-1f843fb9.js';
11
11
  import './string-utils-ca039233.js';
12
- import './tokens.module-8dbafec7.js';
12
+ import './tokens.module-ed0ed26f.js';
13
13
 
14
14
  const duetActionButtonCss = "*,*::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}.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;color:rgb(0, 41, 77);white-space:nowrap;cursor:pointer;background:rgb(245, 248, 250);border-radius:50%;transition:background-color 300ms ease !important}.duet-action-button.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(245, 245, 247)}.duet-action-button duet-icon{display:block}@media (max-width: 35.9375em){.duet-action-button{width:32px;height:32px}}.duet-action-button:not(:disabled):hover{background:#e9ecee}.duet-action-button:not(:disabled):hover.duet-theme-turva{background:#e9e9eb}.duet-action-button:focus{outline:0;box-shadow:0 0 0 2px #0077b3 !important}.duet-action-button:focus.duet-theme-turva{box-shadow:0 0 0 2px #171c3a !important}.duet-action-button:active:focus{background:#dddfe1 !important;box-shadow:none}.duet-action-button:active:focus.duet-theme-turva{background:#ddddde !important}.duet-action-button:disabled{color:rgb(144, 149, 153);cursor:default;background:rgb(245, 248, 250);opacity:0.75}.duet-action-button.duet-theme-turva:disabled{color:rgb(116, 116, 117);background:rgb(245, 245, 247)}";
15
15
 
@@ -15,6 +15,7 @@ const DuetAlert = class {
15
15
  constructor(hostRef) {
16
16
  registerInstance(this, hostRef);
17
17
  this.duetDismiss = createEvent(this, "duetDismiss", 7);
18
+ this.duetCloseComplete = createEvent(this, "duetCloseComplete", 7);
18
19
  this.descriptiveId = createID("DuetAlert");
19
20
  this.hasShowMoreSlot = false;
20
21
  this.iconVariationMap = {
@@ -35,6 +36,7 @@ const DuetAlert = class {
35
36
  };
36
37
  this.handleHide = () => {
37
38
  this.isDismissed = true;
39
+ this.element.addEventListener("transitionend", () => this.duetCloseComplete.emit(), { once: true });
38
40
  };
39
41
  this.theme = "";
40
42
  this.isDismissed = false;