@duetds/components 6.2.5 → 6.2.7

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 (508) hide show
  1. package/hydrate/index.js +260 -323
  2. package/lib/cjs/duet-action-button.cjs.entry.js +1 -1
  3. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  9. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  12. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-divider_2.cjs.entry.js +6 -2
  17. package/lib/cjs/duet-editable-table_3.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-fieldset.cjs.entry.js +2 -2
  20. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  22. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-icon.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +15 -2
  29. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +26 -15
  30. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +22 -3
  31. package/lib/cjs/duet-menu-bar.cjs.entry.js +4 -3
  32. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  33. package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-nav.cjs.entry.js +2 -80
  35. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-pagination_2.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
  42. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +43 -0
  46. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +51 -0
  47. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +37 -0
  48. package/lib/cjs/duet-submenu-bar.cjs.entry.js +35 -0
  49. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  51. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  52. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +10 -15
  53. package/lib/cjs/duet-toolbar-link.cjs.entry.js +2 -2
  54. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  55. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  56. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  59. package/lib/cjs/duet.cjs.js +2 -2
  60. package/lib/cjs/{focus-utils-18ea61a6.js → focus-utils-0c88987e.js} +1 -1
  61. package/lib/cjs/{index-d2f05eb8.js → index-af5440b5.js} +1 -1
  62. package/lib/cjs/loader.cjs.js +2 -2
  63. package/lib/collection/collection-manifest.json +6 -6
  64. package/lib/collection/components/duet-choice/duet-choice.css +6 -1
  65. package/lib/collection/components/duet-divider/duet-divider.js +27 -1
  66. package/lib/collection/components/duet-fieldset/duet-fieldset.css +2 -0
  67. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +8 -1
  68. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +19 -1
  69. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.css +4 -3
  70. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +31 -32
  71. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.css +10 -2
  72. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +31 -0
  73. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.css +47 -7
  74. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +38 -1
  75. package/lib/collection/components/duet-nav/duet-nav.css +5 -0
  76. package/lib/collection/components/duet-nav/duet-nav.js +0 -117
  77. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +37 -0
  78. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +63 -0
  79. package/lib/collection/components/{duet-menu-bar-menu-dropdown/duet-menu-bar-menu-dropdown.css → duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.css} +28 -18
  80. package/lib/collection/components/{duet-menu-bar-menu-dropdown/duet-menu-bar-menu-dropdown.js → duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js} +20 -37
  81. package/lib/collection/components/{duet-menu-bar-menu-dropdown-link/duet-menu-bar-menu-dropdown-link.css → duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.css} +6 -6
  82. package/lib/collection/components/{duet-menu-bar-menu-dropdown-link/duet-menu-bar-menu-dropdown-link.js → duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js} +6 -6
  83. package/lib/collection/components/{duet-menu-bar-menu-link/duet-menu-bar-menu-link.css → duet-submenu-bar-link/duet-submenu-bar-link.css} +5 -17
  84. package/lib/collection/components/{duet-menu-bar-menu-link/duet-menu-bar-menu-link.js → duet-submenu-bar-link/duet-submenu-bar-link.js} +5 -24
  85. package/lib/collection/components/duet-toolbar/duet-toolbar.css +1 -0
  86. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.css +2 -3
  87. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +15 -32
  88. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +1 -1
  89. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  90. package/lib/dist-custom-elements/duet-alert.js +1 -1
  91. package/lib/dist-custom-elements/duet-badge.js +1 -1
  92. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  93. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  94. package/lib/dist-custom-elements/duet-button.js +1 -1
  95. package/lib/dist-custom-elements/duet-caption.js +1 -1
  96. package/lib/dist-custom-elements/duet-card.js +3 -3
  97. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  98. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  99. package/lib/dist-custom-elements/duet-choice.js +6 -6
  100. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  101. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  102. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  103. package/lib/dist-custom-elements/duet-date-picker.js +8 -8
  104. package/lib/dist-custom-elements/duet-divider.js +1 -1
  105. package/lib/dist-custom-elements/duet-editable-table.js +1 -1
  106. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  107. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  108. package/lib/dist-custom-elements/duet-footer.js +4 -4
  109. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  110. package/lib/dist-custom-elements/duet-grid.js +1 -1
  111. package/lib/dist-custom-elements/duet-header.js +8 -8
  112. package/lib/dist-custom-elements/duet-heading.js +1 -1
  113. package/lib/dist-custom-elements/duet-hero.js +9 -9
  114. package/lib/dist-custom-elements/duet-icon.js +1 -1
  115. package/lib/dist-custom-elements/duet-input.js +1 -1
  116. package/lib/dist-custom-elements/duet-label.js +1 -1
  117. package/lib/dist-custom-elements/duet-layout.js +1 -1
  118. package/lib/dist-custom-elements/duet-link.js +1 -1
  119. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  120. package/lib/dist-custom-elements/duet-list.js +1 -1
  121. package/lib/dist-custom-elements/duet-logo.js +1 -1
  122. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +18 -4
  123. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +28 -17
  124. package/lib/dist-custom-elements/duet-menu-bar-link.js +24 -4
  125. package/lib/dist-custom-elements/duet-menu-bar.js +6 -4
  126. package/lib/dist-custom-elements/duet-modal.js +7 -7
  127. package/lib/dist-custom-elements/duet-multiselect.js +8 -8
  128. package/lib/dist-custom-elements/duet-nav.js +3 -81
  129. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  130. package/lib/dist-custom-elements/duet-notification.js +2 -2
  131. package/lib/dist-custom-elements/duet-number-input.js +7 -7
  132. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  133. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  134. package/lib/dist-custom-elements/duet-progress.js +1 -1
  135. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  136. package/lib/dist-custom-elements/duet-radio.js +1 -1
  137. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  138. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  139. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  140. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  141. package/lib/dist-custom-elements/duet-select.js +1 -1
  142. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  143. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  144. package/lib/dist-custom-elements/duet-step.js +4 -4
  145. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  146. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.d.ts +11 -0
  147. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +69 -0
  148. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.d.ts +11 -0
  149. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +75 -0
  150. package/lib/dist-custom-elements/{duet-menu-bar-menu-link.d.ts → duet-submenu-bar-link.d.ts} +4 -4
  151. package/lib/dist-custom-elements/duet-submenu-bar-link.js +61 -0
  152. package/lib/dist-custom-elements/{duet-menu-bar-menu.d.ts → duet-submenu-bar.d.ts} +4 -4
  153. package/lib/dist-custom-elements/duet-submenu-bar.js +51 -0
  154. package/lib/dist-custom-elements/duet-tab-group.js +8 -8
  155. package/lib/dist-custom-elements/duet-tab.js +1 -1
  156. package/lib/dist-custom-elements/duet-table.js +1 -1
  157. package/lib/dist-custom-elements/duet-textarea.js +8 -8
  158. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  159. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  160. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +12 -17
  161. package/lib/dist-custom-elements/duet-toolbar-link.js +3 -3
  162. package/lib/dist-custom-elements/duet-toolbar.js +2 -2
  163. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  164. package/lib/dist-custom-elements/duet-tray.js +3 -3
  165. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  166. package/lib/dist-custom-elements/duet-upload.js +18 -18
  167. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  168. package/lib/dist-custom-elements/index.d.ts +4 -4
  169. package/lib/dist-custom-elements/index.js +5 -5
  170. package/lib/dist-custom-elements/{p-af2e8de4.js → p-02fd2598.js} +5 -5
  171. package/lib/dist-custom-elements/{p-d2402b45.js → p-041d080b.js} +3 -3
  172. package/lib/dist-custom-elements/{p-0cc49790.js → p-09df2830.js} +1 -1
  173. package/lib/dist-custom-elements/{p-4115062c.js → p-111556c2.js} +1 -1
  174. package/lib/dist-custom-elements/{p-d628dd87.js → p-1237a4c4.js} +3 -3
  175. package/lib/dist-custom-elements/{p-bd64a84d.js → p-297a92d2.js} +2 -2
  176. package/lib/dist-custom-elements/{p-f7c0e5bf.js → p-309315ce.js} +1 -1
  177. package/lib/dist-custom-elements/{p-fed8d27a.js → p-35e8551c.js} +2 -2
  178. package/lib/dist-custom-elements/{p-4447816d.js → p-3df2d486.js} +1 -1
  179. package/lib/dist-custom-elements/{p-14a163e6.js → p-4a0e635e.js} +1 -1
  180. package/lib/dist-custom-elements/{p-10feffd3.js → p-56ed1961.js} +1 -1
  181. package/lib/dist-custom-elements/{p-94eae3e6.js → p-5733624f.js} +7 -3
  182. package/lib/dist-custom-elements/{p-88d217a7.js → p-5a1723f7.js} +2 -2
  183. package/lib/dist-custom-elements/{p-d34c42bc.js → p-5fbf5fd3.js} +1 -1
  184. package/lib/dist-custom-elements/{p-db135ec9.js → p-76006b75.js} +1 -1
  185. package/lib/dist-custom-elements/{p-354f8a94.js → p-862a4479.js} +1 -1
  186. package/lib/dist-custom-elements/{p-25d4fffb.js → p-8d37e357.js} +1 -1
  187. package/lib/dist-custom-elements/{p-37dd7faf.js → p-8e81dfbe.js} +1 -1
  188. package/lib/dist-custom-elements/{p-b5ea480c.js → p-9013a0be.js} +2 -2
  189. package/lib/dist-custom-elements/{p-ad7292b3.js → p-92c140f4.js} +3 -3
  190. package/lib/dist-custom-elements/{p-fddad5df.js → p-9a3387d5.js} +1 -1
  191. package/lib/dist-custom-elements/{p-9245c901.js → p-9d6949a2.js} +1 -1
  192. package/lib/dist-custom-elements/{p-7958dc0c.js → p-9e847d63.js} +6 -6
  193. package/lib/dist-custom-elements/{p-65ee8608.js → p-a27fa23e.js} +3 -3
  194. package/lib/dist-custom-elements/{p-eb6fc032.js → p-ba6b8587.js} +4 -4
  195. package/lib/dist-custom-elements/{p-737dd784.js → p-bc2feeb2.js} +6 -6
  196. package/lib/dist-custom-elements/{p-cab1e8a0.js → p-c10341a6.js} +7 -7
  197. package/lib/dist-custom-elements/{p-9fef7d37.js → p-cac47513.js} +1 -1
  198. package/lib/dist-custom-elements/{p-82fec063.js → p-d3c8a265.js} +1 -1
  199. package/lib/dist-custom-elements/{p-a1212d29.js → p-ef3f8d37.js} +1 -1
  200. package/lib/dist-custom-elements/{p-0ef384ca.js → p-ff072d48.js} +1 -1
  201. package/lib/duet/duet.esm.js +1 -1
  202. package/lib/duet/duet.js +1 -1
  203. package/lib/duet/p-036bfb80.entry.js +4 -0
  204. package/lib/duet/{p-592bcdd4.entry.js → p-03d3502b.entry.js} +1 -1
  205. package/lib/duet/{p-dc51f077.entry.js → p-07d534c7.entry.js} +1 -1
  206. package/lib/duet/p-08c79761.entry.js +4 -0
  207. package/lib/duet/{p-914c3280.system.entry.js → p-0a57b769.system.entry.js} +1 -1
  208. package/lib/duet/{p-d971be46.entry.js → p-0c170a4d.entry.js} +1 -1
  209. package/lib/duet/{p-5e134670.entry.js → p-0ce30a75.entry.js} +1 -1
  210. package/lib/duet/{p-f3d0d889.entry.js → p-0dd46e3f.entry.js} +1 -1
  211. package/lib/duet/p-15d0cceb.system.entry.js +4 -0
  212. package/lib/duet/{p-b5dc8a8f.system.entry.js → p-17ced46d.system.entry.js} +1 -1
  213. package/lib/duet/p-1d847ea3.entry.js +4 -0
  214. package/lib/duet/{p-2f0f8b9e.system.entry.js → p-1d9b86df.system.entry.js} +1 -1
  215. package/lib/duet/{p-60c70efa.entry.js → p-1ea34742.entry.js} +1 -1
  216. package/lib/duet/{p-f6712ec8.system.entry.js → p-1f288583.system.entry.js} +1 -1
  217. package/lib/duet/p-208ebcbc.system.entry.js +4 -0
  218. package/lib/duet/{p-c2c48bb2.entry.js → p-268e3c8c.entry.js} +1 -1
  219. package/lib/duet/{p-f678edf7.system.entry.js → p-2d9c41e0.system.entry.js} +1 -1
  220. package/lib/duet/{p-8a47d599.system.entry.js → p-2e9cf2a4.system.entry.js} +1 -1
  221. package/lib/duet/p-3079f1be.entry.js +4 -0
  222. package/lib/duet/{p-0d6723f5.entry.js → p-30b066fd.entry.js} +1 -1
  223. package/lib/duet/{p-0236fc28.system.entry.js → p-3318424f.system.entry.js} +1 -1
  224. package/lib/duet/{p-6db0f8c0.entry.js → p-376729d9.entry.js} +1 -1
  225. package/lib/duet/{p-45b0469f.entry.js → p-3b828b32.entry.js} +1 -1
  226. package/lib/duet/{p-f150740b.entry.js → p-3b865018.entry.js} +1 -1
  227. package/lib/duet/{p-028da443.system.entry.js → p-3c8ad8cd.system.entry.js} +1 -1
  228. package/lib/duet/{p-c41bfab0.entry.js → p-3d9a52a3.entry.js} +1 -1
  229. package/lib/duet/{p-89bf7be7.entry.js → p-41b9de32.entry.js} +1 -1
  230. package/lib/duet/{p-c12ecca9.entry.js → p-444fc8e9.entry.js} +1 -1
  231. package/lib/duet/{p-bc2c1014.entry.js → p-450786a3.entry.js} +1 -1
  232. package/lib/duet/{p-c3a0505e.system.entry.js → p-47309237.system.entry.js} +1 -1
  233. package/lib/duet/{p-58de4753.system.entry.js → p-48f61d09.system.entry.js} +1 -1
  234. package/lib/duet/{p-09e9e6e0.system.entry.js → p-4e15e266.system.entry.js} +1 -1
  235. package/lib/duet/{p-da803459.entry.js → p-4ee24ce5.entry.js} +1 -1
  236. package/lib/duet/{p-06c01b8a.system.entry.js → p-4fabf780.system.entry.js} +1 -1
  237. package/lib/duet/{p-d16434dc.entry.js → p-515d75a6.entry.js} +1 -1
  238. package/lib/duet/{p-6999702a.js → p-52feef6c.js} +1 -1
  239. package/lib/duet/{p-1e442975.entry.js → p-5589e482.entry.js} +1 -1
  240. package/lib/duet/{p-10b1ea3e.system.entry.js → p-5a78ec38.system.entry.js} +1 -1
  241. package/lib/duet/{p-f2bcb922.system.entry.js → p-5b19cf83.system.entry.js} +1 -1
  242. package/lib/duet/{p-696d99ff.system.entry.js → p-5b3359ff.system.entry.js} +1 -1
  243. package/lib/duet/{p-00ee31e2.system.entry.js → p-6017caa0.system.entry.js} +1 -1
  244. package/lib/duet/{p-0aae8ebf.entry.js → p-62478f35.entry.js} +1 -1
  245. package/lib/duet/p-627ed5fc.system.entry.js +4 -0
  246. package/lib/duet/{p-ef3f4213.entry.js → p-63adae76.entry.js} +1 -1
  247. package/lib/duet/{p-0f8e4b6a.entry.js → p-6617073d.entry.js} +1 -1
  248. package/lib/duet/{p-9101f9ed.entry.js → p-67bc370e.entry.js} +1 -1
  249. package/lib/duet/{p-dd676f12.system.entry.js → p-68478e08.system.entry.js} +1 -1
  250. package/lib/duet/{p-a8d942ea.entry.js → p-68aa0ea8.entry.js} +1 -1
  251. package/lib/duet/{p-d58991bc.system.js → p-6c47a4da.system.js} +1 -1
  252. package/lib/duet/{p-43750071.system.entry.js → p-6df9d2ef.system.entry.js} +1 -1
  253. package/lib/duet/{p-d2ef832d.entry.js → p-6e3529b5.entry.js} +1 -1
  254. package/lib/duet/{p-0d218007.entry.js → p-723e880c.entry.js} +1 -1
  255. package/lib/duet/p-72c8a94d.system.entry.js +4 -0
  256. package/lib/duet/{p-1a45eddb.system.entry.js → p-72d7c562.system.entry.js} +1 -1
  257. package/lib/duet/{p-855f9e2a.system.entry.js → p-769b3759.system.entry.js} +1 -1
  258. package/lib/duet/p-784af1a6.system.entry.js +4 -0
  259. package/lib/duet/{p-e621c31c.system.entry.js → p-78706ed9.system.entry.js} +1 -1
  260. package/lib/duet/{p-e71a6257.system.js → p-7957246c.system.js} +1 -1
  261. package/lib/duet/{p-ebc09697.system.entry.js → p-79914171.system.entry.js} +1 -1
  262. package/lib/duet/{p-6f2e72e2.system.entry.js → p-7af1782b.system.entry.js} +1 -1
  263. package/lib/duet/{p-4e2db855.system.entry.js → p-7ed7ca7e.system.entry.js} +1 -1
  264. package/lib/duet/p-81e3703c.system.entry.js +4 -0
  265. package/lib/duet/{p-c17cae49.entry.js → p-82132ff4.entry.js} +1 -1
  266. package/lib/duet/{p-0fc0e90e.entry.js → p-84260748.entry.js} +1 -1
  267. package/lib/duet/{p-7fcbf80a.system.entry.js → p-844d1319.system.entry.js} +1 -1
  268. package/lib/duet/{p-575e4d53.system.entry.js → p-846b46e9.system.entry.js} +1 -1
  269. package/lib/duet/{p-f9afad76.system.entry.js → p-84cd7524.system.entry.js} +1 -1
  270. package/lib/duet/p-8638d7de.entry.js +4 -0
  271. package/lib/duet/p-89dfbfbd.system.entry.js +4 -0
  272. package/lib/duet/{p-cf11b05b.entry.js → p-8af49320.entry.js} +1 -1
  273. package/lib/duet/{p-61f8dd7f.system.entry.js → p-8da49dbd.system.entry.js} +1 -1
  274. package/lib/duet/{p-b2c913ea.entry.js → p-8f539d42.entry.js} +1 -1
  275. package/lib/duet/{p-0e1a3c6d.entry.js → p-938691b8.entry.js} +1 -1
  276. package/lib/duet/p-93e7f66e.entry.js +4 -0
  277. package/lib/duet/p-95a3277e.entry.js +4 -0
  278. package/lib/duet/{p-0426e86f.system.entry.js → p-96a1387b.system.entry.js} +1 -1
  279. package/lib/duet/{p-1184c37e.entry.js → p-998dc9d1.entry.js} +1 -1
  280. package/lib/duet/p-9df3de8f.system.entry.js +4 -0
  281. package/lib/duet/p-9e2cc27d.system.js +4 -0
  282. package/lib/duet/{p-14e93ad6.system.entry.js → p-9ebc09e1.system.entry.js} +1 -1
  283. package/lib/duet/p-9ee5e0f4.entry.js +4 -0
  284. package/lib/duet/p-9f2d935d.system.entry.js +4 -0
  285. package/lib/duet/p-a095dfc2.system.entry.js +4 -0
  286. package/lib/duet/p-a13ea69f.js +4 -0
  287. package/lib/duet/{p-16cbd476.entry.js → p-a519e8ab.entry.js} +1 -1
  288. package/lib/duet/{p-81e66ef1.entry.js → p-ad1f68b7.entry.js} +1 -1
  289. package/lib/duet/{p-0285e5d3.entry.js → p-af0fd770.entry.js} +1 -1
  290. package/lib/duet/{p-acea52f5.entry.js → p-b32ca39b.entry.js} +1 -1
  291. package/lib/duet/{p-5bffb89f.entry.js → p-b5bd4f2d.entry.js} +1 -1
  292. package/lib/duet/p-b6dd8415.entry.js +4 -0
  293. package/lib/duet/{p-1b63c3bf.entry.js → p-b88f9945.entry.js} +1 -1
  294. package/lib/duet/{p-948d492d.system.entry.js → p-bcb168b2.system.entry.js} +1 -1
  295. package/lib/duet/{p-f7453c05.system.entry.js → p-be4784d8.system.entry.js} +1 -1
  296. package/lib/duet/{p-7e67fedc.system.entry.js → p-c08a9b16.system.entry.js} +1 -1
  297. package/lib/duet/p-c1618675.system.entry.js +4 -0
  298. package/lib/duet/{p-758c0528.system.entry.js → p-c1c987f0.system.entry.js} +1 -1
  299. package/lib/duet/{p-11c58a6b.entry.js → p-c93d9940.entry.js} +1 -1
  300. package/lib/duet/{p-90ea4509.system.entry.js → p-c961ac50.system.entry.js} +1 -1
  301. package/lib/duet/p-cd3c5316.entry.js +4 -0
  302. package/lib/duet/{p-f01d234f.system.entry.js → p-ce3f1348.system.entry.js} +1 -1
  303. package/lib/duet/p-d0c69600.entry.js +4 -0
  304. package/lib/duet/{p-ac4c233b.entry.js → p-d6a70bc1.entry.js} +1 -1
  305. package/lib/duet/p-d9980b95.entry.js +4 -0
  306. package/lib/duet/{p-ec635593.entry.js → p-df2845e2.entry.js} +1 -1
  307. package/lib/duet/{p-bcd4a927.system.entry.js → p-e74d9840.system.entry.js} +1 -1
  308. package/lib/duet/{p-b293c2ff.entry.js → p-e80de484.entry.js} +1 -1
  309. package/lib/duet/{p-9a14ca19.system.entry.js → p-e81f5a5a.system.entry.js} +1 -1
  310. package/lib/duet/{p-b3046425.entry.js → p-e86b6bd8.entry.js} +1 -1
  311. package/lib/duet/p-ea72adbd.system.entry.js +4 -0
  312. package/lib/duet/{p-daa20c36.system.entry.js → p-ea8390ab.system.entry.js} +1 -1
  313. package/lib/duet/{p-16b61523.system.entry.js → p-ed685d17.system.entry.js} +1 -1
  314. package/lib/duet/p-ee8c29ef.system.entry.js +4 -0
  315. package/lib/duet/{p-c5e54be9.entry.js → p-f5f638b4.entry.js} +1 -1
  316. package/lib/duet/p-f754f7e0.entry.js +4 -0
  317. package/lib/duet/{p-4644616b.entry.js → p-f8eeb4bc.entry.js} +1 -1
  318. package/lib/duet/{p-9f60735a.system.entry.js → p-f92ffbf0.system.entry.js} +1 -1
  319. package/lib/duet/{p-79c8d35c.system.entry.js → p-faa38754.system.entry.js} +1 -1
  320. package/lib/duet/{p-ea8e5649.system.entry.js → p-ff40e0e6.system.entry.js} +2 -2
  321. package/lib/duet/p-ffe32425.system.entry.js +4 -0
  322. package/lib/esm/duet-action-button.entry.js +1 -1
  323. package/lib/esm/duet-alert.entry.js +1 -1
  324. package/lib/esm/duet-badge.entry.js +1 -1
  325. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  326. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  327. package/lib/esm/duet-button_2.entry.js +1 -1
  328. package/lib/esm/duet-caption_4.entry.js +1 -1
  329. package/lib/esm/duet-card.entry.js +1 -1
  330. package/lib/esm/duet-checkbox.entry.js +1 -1
  331. package/lib/esm/duet-choice_2.entry.js +3 -3
  332. package/lib/esm/duet-collapsible.entry.js +1 -1
  333. package/lib/esm/duet-combobox.entry.js +1 -1
  334. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  335. package/lib/esm/duet-date-picker.entry.js +2 -2
  336. package/lib/esm/duet-divider_2.entry.js +6 -2
  337. package/lib/esm/duet-editable-table_3.entry.js +1 -1
  338. package/lib/esm/duet-empty-state.entry.js +1 -1
  339. package/lib/esm/duet-fieldset.entry.js +2 -2
  340. package/lib/esm/duet-footer.entry.js +1 -1
  341. package/lib/esm/duet-grid_2.entry.js +1 -1
  342. package/lib/esm/duet-header_2.entry.js +1 -1
  343. package/lib/esm/duet-hero.entry.js +1 -1
  344. package/lib/esm/duet-icon.entry.js +1 -1
  345. package/lib/esm/duet-input_2.entry.js +1 -1
  346. package/lib/esm/duet-layout.entry.js +1 -1
  347. package/lib/esm/duet-list_2.entry.js +1 -1
  348. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +15 -2
  349. package/lib/esm/duet-menu-bar-dropdown.entry.js +26 -15
  350. package/lib/esm/duet-menu-bar-link.entry.js +22 -3
  351. package/lib/esm/duet-menu-bar.entry.js +4 -3
  352. package/lib/esm/duet-modal.entry.js +2 -2
  353. package/lib/esm/duet-multiselect.entry.js +1 -1
  354. package/lib/esm/duet-nav.entry.js +2 -80
  355. package/lib/esm/duet-notification_2.entry.js +1 -1
  356. package/lib/esm/duet-number-input.entry.js +1 -1
  357. package/lib/esm/duet-pagination_2.entry.js +1 -1
  358. package/lib/esm/duet-progress.entry.js +1 -1
  359. package/lib/esm/duet-radio_2.entry.js +1 -1
  360. package/lib/esm/duet-range-slider.entry.js +1 -1
  361. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  362. package/lib/esm/duet-section-layout.entry.js +1 -1
  363. package/lib/esm/duet-select.entry.js +1 -1
  364. package/lib/esm/duet-step_2.entry.js +1 -1
  365. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +39 -0
  366. package/lib/esm/duet-submenu-bar-dropdown.entry.js +47 -0
  367. package/lib/esm/duet-submenu-bar-link.entry.js +33 -0
  368. package/lib/esm/duet-submenu-bar.entry.js +31 -0
  369. package/lib/esm/duet-textarea.entry.js +1 -1
  370. package/lib/esm/duet-toggle.entry.js +1 -1
  371. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  372. package/lib/esm/duet-toolbar-dropdown.entry.js +10 -15
  373. package/lib/esm/duet-toolbar-link.entry.js +2 -2
  374. package/lib/esm/duet-toolbar.entry.js +2 -2
  375. package/lib/esm/duet-tooltip.entry.js +1 -1
  376. package/lib/esm/duet-tray.entry.js +1 -1
  377. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  378. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  379. package/lib/esm/duet.js +2 -2
  380. package/lib/esm/{focus-utils-abaea1e6.js → focus-utils-5d4ccf2f.js} +1 -1
  381. package/lib/esm/{index-4df60498.js → index-49e3528a.js} +1 -1
  382. package/lib/esm/loader.js +2 -2
  383. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  384. package/lib/esm-es5/duet-alert.entry.js +1 -1
  385. package/lib/esm-es5/duet-badge.entry.js +1 -1
  386. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  387. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  388. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  389. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  390. package/lib/esm-es5/duet-card.entry.js +1 -1
  391. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  392. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  393. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  394. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  395. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  396. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  397. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  398. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  399. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  400. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  401. package/lib/esm-es5/duet-footer.entry.js +1 -1
  402. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  403. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  404. package/lib/esm-es5/duet-hero.entry.js +1 -1
  405. package/lib/esm-es5/duet-icon.entry.js +1 -1
  406. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  407. package/lib/esm-es5/duet-layout.entry.js +1 -1
  408. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  409. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  410. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  411. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  412. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  413. package/lib/esm-es5/duet-modal.entry.js +2 -2
  414. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  415. package/lib/esm-es5/duet-nav.entry.js +1 -1
  416. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  417. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  418. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  419. package/lib/esm-es5/duet-progress.entry.js +1 -1
  420. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  421. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  422. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  423. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  424. package/lib/esm-es5/duet-select.entry.js +1 -1
  425. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  426. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +4 -0
  427. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +4 -0
  428. package/lib/esm-es5/duet-submenu-bar-link.entry.js +4 -0
  429. package/lib/esm-es5/duet-submenu-bar.entry.js +4 -0
  430. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  431. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  432. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  433. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  434. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  435. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  436. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  437. package/lib/esm-es5/duet-tray.entry.js +1 -1
  438. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  439. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  440. package/lib/esm-es5/duet.js +1 -1
  441. package/lib/esm-es5/focus-utils-5d4ccf2f.js +4 -0
  442. package/lib/esm-es5/{index-4df60498.js → index-49e3528a.js} +1 -1
  443. package/lib/esm-es5/loader.js +1 -1
  444. package/lib/types/components/duet-divider/duet-divider.d.ts +6 -1
  445. package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +4 -0
  446. package/lib/types/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.d.ts +2 -16
  447. package/lib/types/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.d.ts +5 -0
  448. package/lib/types/components/duet-menu-bar-link/duet-menu-bar-link.d.ts +5 -0
  449. package/lib/types/components/duet-nav/duet-nav.d.ts +0 -18
  450. package/lib/types/components/duet-submenu-bar/duet-submenu-bar.d.ts +24 -0
  451. package/lib/types/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.d.ts +34 -0
  452. package/lib/types/components/{duet-menu-bar-menu-dropdown-link/duet-menu-bar-menu-dropdown-link.d.ts → duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.d.ts} +1 -1
  453. package/lib/types/components/{duet-menu-bar-menu-link/duet-menu-bar-menu-link.d.ts → duet-submenu-bar-link/duet-submenu-bar-link.d.ts} +1 -5
  454. package/lib/types/components/duet-toolbar-dropdown/duet-toolbar-dropdown.d.ts +1 -16
  455. package/lib/types/components.d.ts +166 -194
  456. package/package.json +5 -5
  457. package/lib/cjs/duet-menu-bar-menu-dropdown-link.cjs.entry.js +0 -43
  458. package/lib/cjs/duet-menu-bar-menu-dropdown.cjs.entry.js +0 -56
  459. package/lib/cjs/duet-menu-bar-menu-link.cjs.entry.js +0 -38
  460. package/lib/cjs/duet-menu-bar-menu.cjs.entry.js +0 -56
  461. package/lib/collection/components/duet-menu-bar-menu/duet-menu-bar-menu.css +0 -113
  462. package/lib/collection/components/duet-menu-bar-menu/duet-menu-bar-menu.js +0 -141
  463. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown-link.d.ts +0 -11
  464. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown-link.js +0 -69
  465. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown.d.ts +0 -11
  466. package/lib/dist-custom-elements/duet-menu-bar-menu-dropdown.js +0 -80
  467. package/lib/dist-custom-elements/duet-menu-bar-menu-link.js +0 -63
  468. package/lib/dist-custom-elements/duet-menu-bar-menu.js +0 -74
  469. package/lib/duet/p-0169eb09.entry.js +0 -4
  470. package/lib/duet/p-0c519c1f.system.entry.js +0 -4
  471. package/lib/duet/p-14cca806.entry.js +0 -4
  472. package/lib/duet/p-1833941e.entry.js +0 -4
  473. package/lib/duet/p-27a1c897.entry.js +0 -4
  474. package/lib/duet/p-2c5b761d.entry.js +0 -4
  475. package/lib/duet/p-2cbe5fe4.entry.js +0 -4
  476. package/lib/duet/p-326d3440.system.entry.js +0 -4
  477. package/lib/duet/p-394efc25.system.entry.js +0 -4
  478. package/lib/duet/p-400f8e9d.system.entry.js +0 -4
  479. package/lib/duet/p-4c96e54d.entry.js +0 -4
  480. package/lib/duet/p-4d1a5b9e.system.entry.js +0 -4
  481. package/lib/duet/p-5214682e.system.entry.js +0 -4
  482. package/lib/duet/p-5b00d0cf.system.entry.js +0 -4
  483. package/lib/duet/p-63cb7308.system.entry.js +0 -4
  484. package/lib/duet/p-7ccf8ef9.entry.js +0 -4
  485. package/lib/duet/p-81313736.entry.js +0 -4
  486. package/lib/duet/p-8512b463.js +0 -4
  487. package/lib/duet/p-8681c6e0.entry.js +0 -4
  488. package/lib/duet/p-8f6cf5d1.entry.js +0 -4
  489. package/lib/duet/p-b180a4e2.system.entry.js +0 -4
  490. package/lib/duet/p-b2688afc.system.entry.js +0 -4
  491. package/lib/duet/p-b821b721.system.entry.js +0 -4
  492. package/lib/duet/p-c4932f05.entry.js +0 -4
  493. package/lib/duet/p-d0f1d25f.system.entry.js +0 -4
  494. package/lib/duet/p-dbddb719.entry.js +0 -4
  495. package/lib/duet/p-dc18b76c.system.entry.js +0 -4
  496. package/lib/duet/p-dfcbf758.system.entry.js +0 -4
  497. package/lib/duet/p-f9133dc5.system.js +0 -4
  498. package/lib/esm/duet-menu-bar-menu-dropdown-link.entry.js +0 -39
  499. package/lib/esm/duet-menu-bar-menu-dropdown.entry.js +0 -52
  500. package/lib/esm/duet-menu-bar-menu-link.entry.js +0 -34
  501. package/lib/esm/duet-menu-bar-menu.entry.js +0 -52
  502. package/lib/esm-es5/duet-menu-bar-menu-dropdown-link.entry.js +0 -4
  503. package/lib/esm-es5/duet-menu-bar-menu-dropdown.entry.js +0 -4
  504. package/lib/esm-es5/duet-menu-bar-menu-link.entry.js +0 -4
  505. package/lib/esm-es5/duet-menu-bar-menu.entry.js +0 -4
  506. package/lib/esm-es5/focus-utils-abaea1e6.js +0 -4
  507. package/lib/types/components/duet-menu-bar-menu/duet-menu-bar-menu.d.ts +0 -49
  508. package/lib/types/components/duet-menu-bar-menu-dropdown/duet-menu-bar-menu-dropdown.d.ts +0 -49
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import{r as e,h as o,H as t,g as n}from"./p-52feef6c.js";import{i as r}from"./p-4ebf1618.js";const a=class{constructor(o){e(this,o),this.getVariant=()=>{switch(this.element.parentElement.parentElement.getAttribute("slot")){case"center":case"right":default:return"right"}},this.theme="",this.href="#",this.icon=void 0,this.caret=!1}componentWillLoad(){r(this)}render(){return o(t,null,o("a",{class:{"duet-menu-bar-dropdown-link":!0,[`duet-menu-bar-dropdown-link--slot-${this.getVariant()}`]:!0,"duet-theme-turva":"turva"===this.theme},href:this.href,role:"menuitem"},this.icon&&o("duet-icon",{name:this.icon,size:"x-small",margin:"none",color:"currentColor"}),o("slot",null)))}get element(){return n(this)}};a.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%;height:100%}.duet-menu-bar-dropdown-link{display:flex;flex-direction:row;gap:0.5rem;align-items:center;justify-content:flex-start;height:100%;padding:0.5rem 20px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#00294d;text-align:center;text-decoration:none}.duet-menu-bar-dropdown-link.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}.duet-menu-bar-dropdown-link--slot-right:hover{background:#e6f2f8}.duet-menu-bar-dropdown-link--slot-right:hover.duet-theme-turva{background:#e4e4e6}.duet-menu-bar-dropdown-link--slot-below:hover{color:#004d80;background:#f3f9fc}.duet-menu-bar-dropdown-link--slot-below:hover.duet-theme-turva{color:#940925;background:#e4e4e6}';export{a as duet_menu_bar_dropdown_link}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ System.register(["./p-7957246c.system.js","./p-8078b081.system.js","./p-33b3aba4.system.js"],(function(e){"use strict";var t,n,i,o,r,a,s;return{setters:[function(e){t=e.r;n=e.h;i=e.H;o=e.g},function(e){r=e.m;a=e.c},function(e){s=e.i}],execute:function(){var u="*,*::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%}.duet-menu-bar{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;width:100%;height:100%;height:5rem;padding:0 8px 0 20px;background:white;border-top:1px solid #e1e3e6;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1)}@media ((min-width: 62em)){.duet-menu-bar{padding:0 28px}}.duet-menu-bar>*{display:flex;align-items:center;justify-content:center;height:100%}.duet-menu-bar>:first-child{flex-basis:0;flex-grow:1;justify-content:flex-start}.duet-menu-bar>:last-child{flex-basis:0;flex-grow:1;justify-content:flex-end}.duet-menu-bar ::slotted(*){display:flex;align-items:center;justify-content:center;height:100%}.duet-menu-bar.duet-theme-turva{background:white}";var d=e("duet_menu_bar",function(){function e(e){var n=this;t(this,e);this.mql=[window.matchMedia(r.replace(/'/g,"")),window.matchMedia(a.replace(/'/g,""))];this.boundMqlFunctions=[];this.changeLogoSize=function(){if(n.mql[1].matches){n.logoSize="large"}else{n.logoSize="medium"}};this.logoSize="large";this.theme="";this.logoHref=undefined}e.prototype.componentWillLoad=function(){s(this)};e.prototype.connectedCallback=function(){this.changeLogoSize();for(var e=0;e<this.mql.length;e++){if(this.mql[e].addEventListener){var t=this.changeLogoSize.bind(this);this.mql[e].addEventListener("change",t);this.boundMqlFunctions[e]=t}}};e.prototype.disconnectedCallback=function(){for(var e=0;e<this.mql.length;e++){if(this.mql[e].removeEventListener){this.mql[e].removeEventListener("change",this.boundMqlFunctions[e])}}this.boundMqlFunctions=[]};e.prototype.render=function(){return n(i,null,n("div",{class:{"duet-menu-bar":true,"duet-theme-turva":this.theme==="turva"},role:"menubar"},n("duet-logo",{size:this.logoSize,margin:"none",theme:this.theme,href:this.logoHref}),n("slot",{name:"center"}),n("slot",{name:"right"})))};Object.defineProperty(e.prototype,"element",{get:function(){return o(this)},enumerable:false,configurable:true});return e}());d.style=u}}}));
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ System.register(["./p-7957246c.system.js","./p-33b3aba4.system.js","./p-5d46f619.system.js","./p-17063917.system.js"],(function(e){"use strict";var t,i,a,h,r,d;return{setters:[function(e){t=e.r;i=e.h;a=e.g;h=e.H},function(e){r=e.i},function(e){d=e.g},function(){}],execute:function(){var s="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}.duet-divider{-webkit-user-select:none;user-select:none;display:block;width:100%;height:1px;margin-top:36px !important;margin-bottom:28px;background:#e1e3e6}.duet-divider.duet-p-0{padding:0 !important}.duet-divider.duet-m-0{margin:0 !important}.duet-divider.duet-m-s{margin-bottom:16px !important;margin-top:0 !important}.duet-divider.duet-theme-turva{background:#e4e4e6}";var n=e("duet_divider",function(){function e(e){t(this,e);this.theme="";this.margin="auto";this.color=""}e.prototype.componentWillLoad=function(){r(this)};e.prototype.render=function(){var e=d(this.color);return i("div",{class:{"duet-m-0":this.margin==="none","duet-m-s":this.margin==="small","duet-divider":true,"duet-theme-turva":this.theme==="turva"},style:{background:e}})};Object.defineProperty(e.prototype,"element",{get:function(){return a(this)},enumerable:false,configurable:true});return e}());n.style=s;var p=":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:relative;display:block;width:12px;min-width:12px;height:12px}@media (min-width: 36em){:host{width:16px;min-width:16px;height:16px}}:host(.duet-spacer-horizontal){display:inline-block;height:100% !important}:host(.duet-spacer-horizontal.xx-small){width:4px;min-width:4px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.xx-small){width:4px;min-width:4px}}:host(.duet-spacer-horizontal.x-small){width:4px;min-width:4px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.x-small){width:8px;min-width:8px}}:host(.duet-spacer-horizontal.small){width:8px;min-width:8px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.small){width:12px;min-width:12px}}:host(.duet-spacer-horizontal.medium){height:100%}:host(.duet-spacer-horizontal.large){width:16px;min-width:16px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.large){width:20px;min-width:20px}}:host(.duet-spacer-horizontal.x-large){width:20px;min-width:20px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.x-large){width:28px;min-width:28px}}:host(.duet-spacer-horizontal.xx-large){width:28px;min-width:28px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.xx-large){width:36px;min-width:36px}}:host(.duet-spacer-horizontal.xxx-large){width:36px;min-width:36px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.xxx-large){width:48px;min-width:48px}}:host(.duet-spacer-horizontal.xxxx-large){width:48px;min-width:48px;height:100%}@media (min-width: 36em){:host(.duet-spacer-horizontal.xxxx-large){width:72px;min-width:72px}}:host(.duet-spacer-vertical.xx-small){width:100%;height:4px;min-height:4px}:host(.duet-spacer-vertical.x-small){width:100%;height:4px;min-height:4px}@media (min-width: 36em){:host(.duet-spacer-vertical.x-small){height:8px;min-height:8px}}:host(.duet-spacer-vertical.small){width:100%;height:8px;min-height:8px}@media (min-width: 36em){:host(.duet-spacer-vertical.small){height:12px;min-height:12px}}:host(.duet-spacer-vertical.medium){width:100%}:host(.duet-spacer-vertical.large){width:100%;height:16px;min-height:16px}@media (min-width: 36em){:host(.duet-spacer-vertical.large){height:20px;min-height:20px}}:host(.duet-spacer-vertical.x-large){width:100%;height:20px;min-height:20px}@media (min-width: 36em){:host(.duet-spacer-vertical.x-large){height:28px;min-height:28px}}:host(.duet-spacer-vertical.xx-large){width:100%;height:28px;min-height:28px}@media (min-width: 36em){:host(.duet-spacer-vertical.xx-large){height:36px;min-height:36px}}:host(.duet-spacer-vertical.xxx-large){width:100%;height:36px;min-height:36px}@media (min-width: 36em){:host(.duet-spacer-vertical.xxx-large){height:48px;min-height:48px}}:host(.duet-spacer-vertical.xxxx-large){width:100%;height:48px;min-height:48px}@media (min-width: 36em){:host(.duet-spacer-vertical.xxxx-large){height:72px;min-height:72px}}:host(.duet-spacer-xx-small){display:none}@media (max-width: 22.5em){:host(.duet-spacer-xx-small){display:block}}:host(.duet-spacer-x-small){display:none}@media (max-width: 35.9375em){:host(.duet-spacer-x-small){display:block}}:host(.duet-spacer-small){display:none}@media (min-width: 36em){:host(.duet-spacer-small){display:block}}:host(.duet-spacer-medium){display:none}@media (min-width: 48em){:host(.duet-spacer-medium){display:block}}:host(.duet-spacer-large){display:none}@media (min-width: 62em){:host(.duet-spacer-large){display:block}}:host(.duet-spacer-x-large){display:none}@media (min-width: 64.0625em){:host(.duet-spacer-x-large){display:block}}:host(.duet-spacer-xx-large){display:none}@media (min-width: 76.25em){:host(.duet-spacer-xx-large){display:block}}";var o=e("duet_spacer",function(){function e(e){t(this,e);this.size="medium";this.direction="vertical";this.breakpoint=""}e.prototype.render=function(){var e;return i(h,{class:(e={"duet-spacer":true,"duet-spacer-xx-small":this.breakpoint==="xx-small","duet-spacer-x-small":this.breakpoint==="x-small","duet-spacer-small":this.breakpoint==="small","duet-spacer-medium":this.breakpoint==="medium","duet-spacer-large":this.breakpoint==="large","duet-spacer-x-large":this.breakpoint==="x-large","duet-spacer-xx-large":this.breakpoint==="xx-large"},e[this.size]=true,e["duet-spacer-".concat(this.direction)]=true,e)})};return e}());o.style=p}}}));
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import{h as o}from"./p-52feef6c.js";const s=o=>{"setFocus"in o?o.setFocus():o.focus()},e=({moveFocusTo:e})=>o("div",{class:"duet-focus-guard","aria-hidden":"true",tabIndex:0,onFocus:()=>s(e)});export{e as F,s as f}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as t,h as o,H as e,g as i}from"./p-6999702a.js";import{i as r}from"./p-4ebf1618.js";import{c as a}from"./p-c1325e35.js";import{a as s,g as n}from"./p-ede854e1.js";import"./p-5a9d75e1.js";const l=class{constructor(o){t(this,o),this.tooltipId=a("DuetTooltip"),this.lastScrollTop=0,this.openTooltip=()=>{this.focusTarget="tooltip",this.active=!0},this.closeTooltip=(t=!1)=>{t&&(this.focusTarget="trigger"),this.active=!1},this.toggleOpen=()=>{this.active?this.closeTooltip():this.openTooltip()},this.handleFocusOut=t=>{if(!this.active)return;const o=t.relatedTarget;null==o||this.element.shadowRoot.contains(o)||this.element.contains(o)||this.closeTooltip()},this.handleKeyDown=t=>{(27===t.keyCode||t.target===this.scrollableEl&&t.shiftKey&&9===t.keyCode)&&this.closeTooltip(!0)},this.handleCloseClick=()=>{this.closeTooltip(!0)},this.isElementInViewportVertically=()=>{if(!this.tooltipEl)return!1;var t=this.tooltipEl.getBoundingClientRect();return t.top>=100&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)},this.handleVerticalVisibility=()=>{const t=window.pageYOffset||document.documentElement.scrollTop;this.isElementInViewportVertically()||(this.openDown=t>this.lastScrollTop),this.lastScrollTop=Math.max(0,t)},this.handleHorizontalVisibility=()=>{var t=this.tooltipEl.getBoundingClientRect();const o=t.right<=(window.innerWidth||document.documentElement.clientWidth);this.openRight=!(t.left>=0&&("right"===this.direction||!this.openRight))||"right"===this.direction,this.openLeft=!(o&&("left"===this.direction||!this.openLeft))||"left"===this.direction},this.openDown=!1,this.openLeft=!1,this.openRight=!1,this.theme="",this.language=s(),this.accessibleLabelDefault={fi:"Näytä lisätietoja",en:"Show more information",sv:"Visa mer tilläggsuppgifter"},this.accessibleLabel=n(this.accessibleLabelDefault,this.language),this.accessibleInputLabel=void 0,this.accessibleCloseLabelDefault={fi:"Sulje lisätiedot",en:"Close details",sv:"Stäng tilläggsuppgifter"},this.accessibleCloseLabel=n(this.accessibleCloseLabelDefault,this.language),this.label="",this.breakpoint="medium",this.direction="auto",this.positionVertical="0",this.positionHorizontal="0",this.active=!1}componentWillLoad(){r(this)}componentDidUpdate(){switch(this.focusTarget){case"tooltip":this.scrollableEl.focus({preventScroll:!0});break;case"trigger":this.buttonEl.focus({preventScroll:!0})}this.focusTarget=null}onScroll(){clearTimeout(this.scrollTimer),this.scrollTimer=setTimeout((()=>{this.handleHorizontalVisibility(),this.handleVerticalVisibility()}),100)}handleDocumentClick(t){this.active&&t.composedPath().every((t=>t!==this.element))&&this.closeTooltip()}async handleActiveChange(t){t?(this.handleHorizontalVisibility(),this.openDown=!this.isElementInViewportVertically()):setTimeout((()=>this.openDown=!1),300)}render(){return o(e,{style:{transform:`translateY(${this.positionVertical}) translateX(${this.positionHorizontal})`,zIndex:this.active?"201":""}},o("button",{ref:t=>this.buttonEl=t,"aria-controls":this.tooltipId,"aria-expanded":this.active?"true":"false",onClick:this.toggleOpen,type:"button",class:{"duet-tooltip-button":!0,"duet-tooltip-button-has-label":!!this.label,"duet-theme-turva":"turva"===this.theme}},o("svg",{"aria-hidden":"true",role:"img",fill:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},o("path",{d:"m13.5 17.25c-1.241 0-2.25-1.009-2.25-2.25v-3.75h-.75c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h.75c.827 0 1.5.673 1.5 1.5v3.75c0 .414.336.75.75.75h.75c.414 0 .75.336.75.75s-.336.75-.75.75z"}),o("circle",{cx:"11.625",cy:"7.125",r:"1.125"}),o("path",{d:"m12 24c-6.617 0-12-5.383-12-12s5.383-12 12-12 12 5.383 12 12-5.383 12-12 12zm0-22.5c-5.79 0-10.5 4.71-10.5 10.5s4.71 10.5 10.5 10.5 10.5-4.71 10.5-10.5-4.71-10.5-10.5-10.5z"})),this.label?o("span",{class:"duet-tooltip-label"},this.label):o("duet-visually-hidden",null,this.accessibleInputLabel?`${this.accessibleInputLabel}, ${this.accessibleLabel}`:this.accessibleLabel)),o("div",{ref:t=>this.tooltipEl=t,class:{"duet-tooltip":!0,"duet-mq-large":"large"===this.breakpoint,"duet-mq-medium":"medium"===this.breakpoint,"duet-theme-turva":"turva"===this.theme,"duet-tooltip-down":this.openDown,"duet-tooltip-has-label":!!this.label,"duet-tooltip-left":this.openLeft,"duet-tooltip-right":this.openRight,"duet-tooltip-active":!0===this.active},onClick:t=>t.stopPropagation(),onKeyDown:this.handleKeyDown,onFocusout:this.handleFocusOut},o("div",{ref:t=>this.scrollableEl=t,class:"duet-tooltip-scrollable",tabindex:"0",id:this.tooltipId},o("slot",null)),o("button",{type:"button",class:"duet-tooltip-close",onClick:this.handleCloseClick},o("duet-icon",{name:"navigation-close-small",margin:"none",color:"currentColor",size:"xxx-small"}),o("duet-visually-hidden",null,this.accessibleCloseLabel))))}get element(){return i(this)}static get watchers(){return{active:["handleActiveChange"]}}};l.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;position:relative;z-index:200;display:inline-flex;width:auto;margin-top:-16px !important;margin-left:-3px !important;-webkit-tap-highlight-color:transparent}.duet-tooltip{position:absolute;right:-21px;bottom:100%;z-index:950;display:block;width:282px;min-height:48px;max-height:340px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#00294d;visibility:hidden;background:white;border:1px solid #e1e3e6;border-radius:4px;box-shadow:0 2px 10px 0 rgba(0, 41, 77, 0.07);opacity:0;transition:300ms ease;transform:scale(0.9) translateZ(0) translateY(20px);transform-origin:100% 100%}.duet-tooltip.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a;border-color:#e4e4e6;box-shadow:0 2px 10px 0 rgba(117, 117, 117, 0.13)}.duet-tooltip::after{position:absolute;right:22px;bottom:-20px;z-index:200;width:0;height:0;content:"";border:10px solid transparent;border-top:10px solid white}.duet-tooltip::before{position:absolute;right:21px;bottom:-22px;z-index:100;width:0;height:0;content:"";border:11px solid transparent;border-top:11px solid #e1e3e6}.duet-theme-turva .duet-tooltip::before{border-top:11px solid #e4e4e6}.duet-tooltip.duet-tooltip-down{top:100%;bottom:auto;transform:scale(0.9) translateZ(0) translateY(-20px);transform-origin:100% 0}.duet-tooltip.duet-tooltip-down::after{top:-20px;bottom:auto;border:10px solid transparent;border-bottom:10px solid white}.duet-tooltip.duet-tooltip-down::before{top:-22px;bottom:auto;border:11px solid transparent;border-bottom:11px solid #e1e3e6}.duet-theme-turva .duet-tooltip.duet-tooltip-down::before{border-bottom:11px solid #e4e4e6}.duet-tooltip.duet-tooltip-left{right:-21px !important;transform-origin:100% 100% !important}.duet-tooltip.duet-tooltip-left::after{right:22px !important;transform:none !important}.duet-tooltip.duet-tooltip-left::before{right:21px !important;transform:none !important}.duet-tooltip.duet-tooltip-right{right:auto !important;left:-9px !important;transform-origin:100% 100% !important}.duet-tooltip.duet-tooltip-right::after{right:auto !important;left:22px !important;transform:none !important}.duet-tooltip.duet-tooltip-right::before{right:auto !important;left:21px !important;transform:none !important}.duet-tooltip.duet-tooltip-has-label{right:auto !important;left:0;width:282px !important;transform-origin:0 0 !important}.duet-tooltip.duet-tooltip-has-label::after{right:auto !important;left:1px !important;transform:none !important}.duet-tooltip.duet-tooltip-has-label::before{right:auto !important;left:0 !important;transform:none !important}.duet-tooltip.duet-tooltip-active{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(-8px)}.duet-tooltip.duet-tooltip-active.duet-tooltip-down{transform:scale(1.0001) translateZ(0) translateY(8px)}.duet-tooltip-button{z-index:100;display:inline-block;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 !important;margin-right:-12px;line-height:normal !important;color:#0077b3;white-space:nowrap;cursor:pointer;background:transparent !important;border-radius:4px}.duet-tooltip-button.duet-theme-turva{color:#c60c30}.duet-tooltip-button:hover{color:#004d80}.duet-tooltip-button:hover.duet-theme-turva{color:#940925}.duet-tooltip-button:focus{background:transparent !important;outline:0}:host(.user-is-tabbing) .duet-tooltip-button:focus{background:transparent !important;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3 !important}:host(.user-is-tabbing) .duet-tooltip-button.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a !important}.duet-tooltip-button svg{width:20px;height:20px;pointer-events:none}.duet-tooltip-button-has-label{margin-right:0}.duet-tooltip-scrollable{padding:20px !important;width:100%;max-height:250px;padding-right:25px !important;overflow-y:auto;-webkit-hyphens:auto;hyphens:auto;border-radius:4px;-webkit-overflow-scrolling:touch}.duet-tooltip-scrollable:focus{outline:none}:host(.user-is-tabbing) .duet-tooltip-scrollable: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-tooltip-scrollable:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-tooltip-scrollable::-webkit-scrollbar{width:4px}.duet-tooltip-scrollable::-webkit-scrollbar-track{border-radius:4px}.duet-tooltip-scrollable::-webkit-scrollbar-thumb{background:#e1e3e6;border-radius:4px}.duet-theme-turva .duet-tooltip-scrollable::-webkit-scrollbar-thumb{background:#e4e4e6}.duet-tooltip-label{position:relative;z-index:100;display:inline-block;max-width:calc(100% - 30px);margin-left:12px !important;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;text-align:left;white-space:normal;vertical-align:top}.duet-theme-turva .duet-tooltip-label{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-tooltip-close{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:17px;height:17px;min-height:0 !important;padding:0 !important;margin:0 !important;line-height:normal;color:#00294d;cursor:pointer;background:#f5f8fa;border-radius:50%;-webkit-appearance:none;appearance:none}.duet-tooltip-close:focus{outline:none;box-shadow:0 0 0 2px #0077b3}.duet-theme-turva .duet-tooltip-close:focus{color:#171c3a;box-shadow:0 0 0 2px #171c3a}@media (min-width: 48em){.duet-tooltip.duet-mq-medium{right:-148px;width:320px;transform-origin:50% 100%}.duet-tooltip.duet-mq-medium::after{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-medium::before{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-medium.duet-tooltip-down{transform-origin:50% 0}}@media (min-width: 62em){.duet-tooltip.duet-mq-large{right:-148px;width:320px;transform-origin:50% 100%}.duet-tooltip.duet-mq-large::after{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-large::before{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-large.duet-tooltip-down{transform-origin:50% 0}}';export{l as duet_tooltip}
4
+ import{r as t,h as o,H as e,g as i}from"./p-52feef6c.js";import{i as r}from"./p-4ebf1618.js";import{c as a}from"./p-c1325e35.js";import{a as s,g as n}from"./p-ede854e1.js";import"./p-5a9d75e1.js";const l=class{constructor(o){t(this,o),this.tooltipId=a("DuetTooltip"),this.lastScrollTop=0,this.openTooltip=()=>{this.focusTarget="tooltip",this.active=!0},this.closeTooltip=(t=!1)=>{t&&(this.focusTarget="trigger"),this.active=!1},this.toggleOpen=()=>{this.active?this.closeTooltip():this.openTooltip()},this.handleFocusOut=t=>{if(!this.active)return;const o=t.relatedTarget;null==o||this.element.shadowRoot.contains(o)||this.element.contains(o)||this.closeTooltip()},this.handleKeyDown=t=>{(27===t.keyCode||t.target===this.scrollableEl&&t.shiftKey&&9===t.keyCode)&&this.closeTooltip(!0)},this.handleCloseClick=()=>{this.closeTooltip(!0)},this.isElementInViewportVertically=()=>{if(!this.tooltipEl)return!1;var t=this.tooltipEl.getBoundingClientRect();return t.top>=100&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)},this.handleVerticalVisibility=()=>{const t=window.pageYOffset||document.documentElement.scrollTop;this.isElementInViewportVertically()||(this.openDown=t>this.lastScrollTop),this.lastScrollTop=Math.max(0,t)},this.handleHorizontalVisibility=()=>{var t=this.tooltipEl.getBoundingClientRect();const o=t.right<=(window.innerWidth||document.documentElement.clientWidth);this.openRight=!(t.left>=0&&("right"===this.direction||!this.openRight))||"right"===this.direction,this.openLeft=!(o&&("left"===this.direction||!this.openLeft))||"left"===this.direction},this.openDown=!1,this.openLeft=!1,this.openRight=!1,this.theme="",this.language=s(),this.accessibleLabelDefault={fi:"Näytä lisätietoja",en:"Show more information",sv:"Visa mer tilläggsuppgifter"},this.accessibleLabel=n(this.accessibleLabelDefault,this.language),this.accessibleInputLabel=void 0,this.accessibleCloseLabelDefault={fi:"Sulje lisätiedot",en:"Close details",sv:"Stäng tilläggsuppgifter"},this.accessibleCloseLabel=n(this.accessibleCloseLabelDefault,this.language),this.label="",this.breakpoint="medium",this.direction="auto",this.positionVertical="0",this.positionHorizontal="0",this.active=!1}componentWillLoad(){r(this)}componentDidUpdate(){switch(this.focusTarget){case"tooltip":this.scrollableEl.focus({preventScroll:!0});break;case"trigger":this.buttonEl.focus({preventScroll:!0})}this.focusTarget=null}onScroll(){clearTimeout(this.scrollTimer),this.scrollTimer=setTimeout((()=>{this.handleHorizontalVisibility(),this.handleVerticalVisibility()}),100)}handleDocumentClick(t){this.active&&t.composedPath().every((t=>t!==this.element))&&this.closeTooltip()}async handleActiveChange(t){t?(this.handleHorizontalVisibility(),this.openDown=!this.isElementInViewportVertically()):setTimeout((()=>this.openDown=!1),300)}render(){return o(e,{style:{transform:`translateY(${this.positionVertical}) translateX(${this.positionHorizontal})`,zIndex:this.active?"201":""}},o("button",{ref:t=>this.buttonEl=t,"aria-controls":this.tooltipId,"aria-expanded":this.active?"true":"false",onClick:this.toggleOpen,type:"button",class:{"duet-tooltip-button":!0,"duet-tooltip-button-has-label":!!this.label,"duet-theme-turva":"turva"===this.theme}},o("svg",{"aria-hidden":"true",role:"img",fill:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},o("path",{d:"m13.5 17.25c-1.241 0-2.25-1.009-2.25-2.25v-3.75h-.75c-.414 0-.75-.336-.75-.75s.336-.75.75-.75h.75c.827 0 1.5.673 1.5 1.5v3.75c0 .414.336.75.75.75h.75c.414 0 .75.336.75.75s-.336.75-.75.75z"}),o("circle",{cx:"11.625",cy:"7.125",r:"1.125"}),o("path",{d:"m12 24c-6.617 0-12-5.383-12-12s5.383-12 12-12 12 5.383 12 12-5.383 12-12 12zm0-22.5c-5.79 0-10.5 4.71-10.5 10.5s4.71 10.5 10.5 10.5 10.5-4.71 10.5-10.5-4.71-10.5-10.5-10.5z"})),this.label?o("span",{class:"duet-tooltip-label"},this.label):o("duet-visually-hidden",null,this.accessibleInputLabel?`${this.accessibleInputLabel}, ${this.accessibleLabel}`:this.accessibleLabel)),o("div",{ref:t=>this.tooltipEl=t,class:{"duet-tooltip":!0,"duet-mq-large":"large"===this.breakpoint,"duet-mq-medium":"medium"===this.breakpoint,"duet-theme-turva":"turva"===this.theme,"duet-tooltip-down":this.openDown,"duet-tooltip-has-label":!!this.label,"duet-tooltip-left":this.openLeft,"duet-tooltip-right":this.openRight,"duet-tooltip-active":!0===this.active},onClick:t=>t.stopPropagation(),onKeyDown:this.handleKeyDown,onFocusout:this.handleFocusOut},o("div",{ref:t=>this.scrollableEl=t,class:"duet-tooltip-scrollable",tabindex:"0",id:this.tooltipId},o("slot",null)),o("button",{type:"button",class:"duet-tooltip-close",onClick:this.handleCloseClick},o("duet-icon",{name:"navigation-close-small",margin:"none",color:"currentColor",size:"xxx-small"}),o("duet-visually-hidden",null,this.accessibleCloseLabel))))}get element(){return i(this)}static get watchers(){return{active:["handleActiveChange"]}}};l.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;position:relative;z-index:200;display:inline-flex;width:auto;margin-top:-16px !important;margin-left:-3px !important;-webkit-tap-highlight-color:transparent}.duet-tooltip{position:absolute;right:-21px;bottom:100%;z-index:950;display:block;width:282px;min-height:48px;max-height:340px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#00294d;visibility:hidden;background:white;border:1px solid #e1e3e6;border-radius:4px;box-shadow:0 2px 10px 0 rgba(0, 41, 77, 0.07);opacity:0;transition:300ms ease;transform:scale(0.9) translateZ(0) translateY(20px);transform-origin:100% 100%}.duet-tooltip.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a;border-color:#e4e4e6;box-shadow:0 2px 10px 0 rgba(117, 117, 117, 0.13)}.duet-tooltip::after{position:absolute;right:22px;bottom:-20px;z-index:200;width:0;height:0;content:"";border:10px solid transparent;border-top:10px solid white}.duet-tooltip::before{position:absolute;right:21px;bottom:-22px;z-index:100;width:0;height:0;content:"";border:11px solid transparent;border-top:11px solid #e1e3e6}.duet-theme-turva .duet-tooltip::before{border-top:11px solid #e4e4e6}.duet-tooltip.duet-tooltip-down{top:100%;bottom:auto;transform:scale(0.9) translateZ(0) translateY(-20px);transform-origin:100% 0}.duet-tooltip.duet-tooltip-down::after{top:-20px;bottom:auto;border:10px solid transparent;border-bottom:10px solid white}.duet-tooltip.duet-tooltip-down::before{top:-22px;bottom:auto;border:11px solid transparent;border-bottom:11px solid #e1e3e6}.duet-theme-turva .duet-tooltip.duet-tooltip-down::before{border-bottom:11px solid #e4e4e6}.duet-tooltip.duet-tooltip-left{right:-21px !important;transform-origin:100% 100% !important}.duet-tooltip.duet-tooltip-left::after{right:22px !important;transform:none !important}.duet-tooltip.duet-tooltip-left::before{right:21px !important;transform:none !important}.duet-tooltip.duet-tooltip-right{right:auto !important;left:-9px !important;transform-origin:100% 100% !important}.duet-tooltip.duet-tooltip-right::after{right:auto !important;left:22px !important;transform:none !important}.duet-tooltip.duet-tooltip-right::before{right:auto !important;left:21px !important;transform:none !important}.duet-tooltip.duet-tooltip-has-label{right:auto !important;left:0;width:282px !important;transform-origin:0 0 !important}.duet-tooltip.duet-tooltip-has-label::after{right:auto !important;left:1px !important;transform:none !important}.duet-tooltip.duet-tooltip-has-label::before{right:auto !important;left:0 !important;transform:none !important}.duet-tooltip.duet-tooltip-active{visibility:visible;opacity:1;transition-property:transform, opacity;transform:scale(1.0001) translateZ(0) translateY(-8px)}.duet-tooltip.duet-tooltip-active.duet-tooltip-down{transform:scale(1.0001) translateZ(0) translateY(8px)}.duet-tooltip-button{z-index:100;display:inline-block;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 !important;margin-right:-12px;line-height:normal !important;color:#0077b3;white-space:nowrap;cursor:pointer;background:transparent !important;border-radius:4px}.duet-tooltip-button.duet-theme-turva{color:#c60c30}.duet-tooltip-button:hover{color:#004d80}.duet-tooltip-button:hover.duet-theme-turva{color:#940925}.duet-tooltip-button:focus{background:transparent !important;outline:0}:host(.user-is-tabbing) .duet-tooltip-button:focus{background:transparent !important;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3 !important}:host(.user-is-tabbing) .duet-tooltip-button.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a !important}.duet-tooltip-button svg{width:20px;height:20px;pointer-events:none}.duet-tooltip-button-has-label{margin-right:0}.duet-tooltip-scrollable{padding:20px !important;width:100%;max-height:250px;padding-right:25px !important;overflow-y:auto;-webkit-hyphens:auto;hyphens:auto;border-radius:4px;-webkit-overflow-scrolling:touch}.duet-tooltip-scrollable:focus{outline:none}:host(.user-is-tabbing) .duet-tooltip-scrollable: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-tooltip-scrollable:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-tooltip-scrollable::-webkit-scrollbar{width:4px}.duet-tooltip-scrollable::-webkit-scrollbar-track{border-radius:4px}.duet-tooltip-scrollable::-webkit-scrollbar-thumb{background:#e1e3e6;border-radius:4px}.duet-theme-turva .duet-tooltip-scrollable::-webkit-scrollbar-thumb{background:#e4e4e6}.duet-tooltip-label{position:relative;z-index:100;display:inline-block;max-width:calc(100% - 30px);margin-left:12px !important;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;text-align:left;white-space:normal;vertical-align:top}.duet-theme-turva .duet-tooltip-label{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}.duet-tooltip-close{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:17px;height:17px;min-height:0 !important;padding:0 !important;margin:0 !important;line-height:normal;color:#00294d;cursor:pointer;background:#f5f8fa;border-radius:50%;-webkit-appearance:none;appearance:none}.duet-tooltip-close:focus{outline:none;box-shadow:0 0 0 2px #0077b3}.duet-theme-turva .duet-tooltip-close:focus{color:#171c3a;box-shadow:0 0 0 2px #171c3a}@media (min-width: 48em){.duet-tooltip.duet-mq-medium{right:-148px;width:320px;transform-origin:50% 100%}.duet-tooltip.duet-mq-medium::after{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-medium::before{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-medium.duet-tooltip-down{transform-origin:50% 0}}@media (min-width: 62em){.duet-tooltip.duet-mq-large{right:-148px;width:320px;transform-origin:50% 100%}.duet-tooltip.duet-mq-large::after{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-large::before{right:50%;transform:translateX(50%)}.duet-tooltip.duet-mq-large.duet-tooltip-down{transform-origin:50% 0}}';export{l as duet_tooltip}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as e,c as o,h as t,H as a,g as n}from"./p-6999702a.js";import{i}from"./p-4ebf1618.js";const r=class{constructor(t){e(this,t),this.duetCookieConsent=o(this,"duetCookieConsent",7),this.handleClick=e=>{e.preventDefault(),this.duetCookieConsent.emit({component:"duet-cookie-consent"})},this.accessibleLabel="Hyväksyn evästeiden käytön",this.theme=""}componentWillLoad(){i(this)}render(){return t(a,{tabindex:"0"},t("div",{class:{"duet-cookie-consent":!0,"duet-theme-turva":"turva"===this.theme}},t("div",{class:"duet-cookie-consent-content"},t("div",{class:"expand"},t("slot",null)),t("duet-spacer",{size:"large",direction:"horizontal"}),t("div",null,t("duet-button",{variation:"negative",size:"small",onClick:this.handleClick,margin:"none","aria-label":this.accessibleLabel,theme:this.theme},"OK")))))}get element(){return n(this)}};r.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;position:fixed;right:0;bottom:0;left:0;z-index:950;display:block;width:100%;box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}@media (min-width: 48em){:host{right:28px;bottom:28px;left:auto;width:25rem}}:host(:focus){outline:0}:host(.user-is-tabbing:focus){border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing.duet-theme-turva:focus){box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-cookie-consent{padding:20px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;color:white !important;background-color:rgba(0, 21, 39, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent{background:rgba(0, 21, 39, 0.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.duet-cookie-consent.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";background-color:rgba(12, 14, 29, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent.duet-theme-turva{background:rgba(12, 14, 29, 0.8)}}@media (min-width: 48em){.duet-cookie-consent{padding:20px;border-radius:4px}}.duet-cookie-consent-content{display:flex;align-items:center;max-width:1110px;margin:0 auto}.duet-cookie-consent-content .expand{flex:1}::slotted(a){font-weight:600;color:white !important;text-decoration:underline;white-space:nowrap}::slotted(a[target=_blank]){padding-right:16px;background:url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjUgMmExLjUgMS41IDAgMDEuMTQgM0gzLjc1Yy0uMzggMC0uNy4yOC0uNzQuNjVsLS4wMS4xdjE0LjVjMCAuMzguMjguNy42NS43NGwuMS4wMWgxNC41Yy4zOCAwIC43LS4yOC43NC0uNjVsLjAxLS4xdi02Ljg5YTEuNSAxLjUgMCAwMTMgMHY2Ljg5QTMuNzUgMy43NSAwIDAxMTguMjUgMjRIMy43NUEzLjc1IDMuNzUgMCAwMTAgMjAuMjVWNS43NUEzLjc1IDMuNzUgMCAwMTMuNzUgMnptMTItMmMuNzggMCAxLjQyLjYgMS41IDEuMzZWNy41YTEuNSAxLjUgMCAwMS0zIC4xNFY1LjEybC01LjQ0IDUuNDRhMS41IDEuNSAwIDAxLTIuMjItMmwuMS0uMTJMMTguODggM0gxNi41QTEuNSAxLjUgMCAwMTE1IDEuNjRWMS41YzAtLjc4LjYtMS40MiAxLjM2LTEuNWguMTR6Ii8+PC9zdmc+") no-repeat right 50%;background-size:12px 10px}::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva ::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}';export{r as duet_cookie_consent}
4
+ import{r as e,c as o,h as t,H as a,g as n}from"./p-52feef6c.js";import{i}from"./p-4ebf1618.js";const r=class{constructor(t){e(this,t),this.duetCookieConsent=o(this,"duetCookieConsent",7),this.handleClick=e=>{e.preventDefault(),this.duetCookieConsent.emit({component:"duet-cookie-consent"})},this.accessibleLabel="Hyväksyn evästeiden käytön",this.theme=""}componentWillLoad(){i(this)}render(){return t(a,{tabindex:"0"},t("div",{class:{"duet-cookie-consent":!0,"duet-theme-turva":"turva"===this.theme}},t("div",{class:"duet-cookie-consent-content"},t("div",{class:"expand"},t("slot",null)),t("duet-spacer",{size:"large",direction:"horizontal"}),t("div",null,t("duet-button",{variation:"negative",size:"small",onClick:this.handleClick,margin:"none","aria-label":this.accessibleLabel,theme:this.theme},"OK")))))}get element(){return n(this)}};r.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;position:fixed;right:0;bottom:0;left:0;z-index:950;display:block;width:100%;box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}@media (min-width: 48em){:host{right:28px;bottom:28px;left:auto;width:25rem}}:host(:focus){outline:0}:host(.user-is-tabbing:focus){border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing.duet-theme-turva:focus){box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-cookie-consent{padding:20px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;color:white !important;background-color:rgba(0, 21, 39, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent{background:rgba(0, 21, 39, 0.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.duet-cookie-consent.duet-theme-turva{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";background-color:rgba(12, 14, 29, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent.duet-theme-turva{background:rgba(12, 14, 29, 0.8)}}@media (min-width: 48em){.duet-cookie-consent{padding:20px;border-radius:4px}}.duet-cookie-consent-content{display:flex;align-items:center;max-width:1110px;margin:0 auto}.duet-cookie-consent-content .expand{flex:1}::slotted(a){font-weight:600;color:white !important;text-decoration:underline;white-space:nowrap}::slotted(a[target=_blank]){padding-right:16px;background:url("data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjUgMmExLjUgMS41IDAgMDEuMTQgM0gzLjc1Yy0uMzggMC0uNy4yOC0uNzQuNjVsLS4wMS4xdjE0LjVjMCAuMzguMjguNy42NS43NGwuMS4wMWgxNC41Yy4zOCAwIC43LS4yOC43NC0uNjVsLjAxLS4xdi02Ljg5YTEuNSAxLjUgMCAwMTMgMHY2Ljg5QTMuNzUgMy43NSAwIDAxMTguMjUgMjRIMy43NUEzLjc1IDMuNzUgMCAwMTAgMjAuMjVWNS43NUEzLjc1IDMuNzUgMCAwMTMuNzUgMnptMTItMmMuNzggMCAxLjQyLjYgMS41IDEuMzZWNy41YTEuNSAxLjUgMCAwMS0zIC4xNFY1LjEybC01LjQ0IDUuNDRhMS41IDEuNSAwIDAxLTIuMjItMmwuMS0uMTJMMTguODggM0gxNi41QTEuNSAxLjUgMCAwMTE1IDEuNjRWMS41YzAtLjc4LjYtMS40MiAxLjM2LTEuNWguMTR6Ii8+PC9zdmc+") no-repeat right 50%;background-size:12px 10px}::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva ::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}';export{r as duet_cookie_consent}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{h as t,r as e,c as a,H as i,g as s}from"./p-6999702a.js";import{i as d}from"./p-4ebf1618.js";import{f as l,d as o}from"./p-0b3f675e.js";import{i as n}from"./p-54f35a79.js";import{g as r,s as u}from"./p-ede854e1.js";import{q as h,s as b}from"./p-9052b6f5.js";import{b as p}from"./p-79a9746e.js";import{c as m}from"./p-c1325e35.js";import{p as c}from"./p-5a9d75e1.js";const f=({data:e,groupId:a,alignment:i})=>{const s=`duet-editable-table duet-editable-table-content-${a}`;return"string"==typeof e?t("td",{innerHTML:e,class:s,part:`${a}content`,style:{verticalAlign:i}}):t("td",{class:s,part:`${a}content`,style:{verticalAlign:i}},e)},g=class{constructor(t){e(this,t),this.duetTableToggle=a(this,"duetTableToggle",7),this.duetMenuClick=a(this,"duetMenuClick",7),this.sortableDefaultLabel={fi:"Järjestä",en:"Click to sort",sv:"Klicka för att sortera"},this.actionColumnLabel={en:"Actions for rows",fi:"Toiminnot rivillä",sv:"Åtgärder för rader"},this.toggleColumn=(t,e)=>{e.preventDefault();const{sort_order:a,direction:i,index:s,key:d}=t;this.duetTableToggle.emit({sort_order:a,index:s,direction:i,key:d,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{n(e)&&this.toggleColumn(t,e)},this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.actions=void 0,this.columns=void 0,this.rows=void 0,this.sortable=!1,this.groupId="",this.theme="",this.accessibleRole=void 0}componentWillLoad(){d(this)}createLabel(e){const{sort_order:a,direction:i,index:s,label:d}=e,l=r(d);return this.sortable?t("span",{class:"duet-table-label","data-index":s},t("duet-button",{size:"small",icon:a&&1===i?"action-arrow-down-small":a&&-1===i?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":r(this.sortableDefaultLabel),variation:"plain",margin:"none","icon-right":!0,onClick:t=>this.toggleColumn(e,t),onKeyDown:t=>this.handleKeyDown(e,t)},l)):l}getSortedColumns(){return[...this.columns].sort(l(["index"]))}getRowSortOrder(){return[...this.columns].sort(l(["sort_order"])).filter((t=>t.sort_order)).map((t=>-1===t.direction?`-${t.key}`:t.key))}renderTableHeader(){if(!this.columns)return;const e=this.getSortedColumns();return t("tr",{class:{"duet-table-action-header":!!this.actions}},e.map((e=>{if(!1!==e.display){const a=this.createLabel(e);return""!==a?t("th",{scope:"col"},a):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,r(this.actionColumnLabel))))}renderActions(e,a){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((i=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:a}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:i.name,theme:this.theme,iconName:i.icon,iconColor:i.color,iconSize:i.size,background:i.background}))))}renderTableBody(){const e=this.getSortedColumns(),a=this.getRowSortOrder();return[...this.rows].sort(l(a)).map(((a,i)=>t("tr",{class:{"duet-table-action-row":!!this.actions,"duet-editable-table-row":!0,[`duet-editable-table-row-${this.groupId}`]:!0},"data-meta":JSON.stringify(a.meta)},e.map((e=>{if(!1!==e.display)return t(f,{data:a[e.key]?a[e.key]:a.item,groupId:this.groupId})})),this.actions&&this.renderActions(a,i))))}render(){return t(i,{class:{[`duet-editable-table-${this.variation}`]:!0,"duet-editable-table":!0,[`duet-editable-table-${this.theme}`]:!0,"duet-editable-table-scrollable":"none-scrollable"===this.breakpoint,"duet-editable-table-sortable":this.sortable,"duet-editable-table-actions":!!this.actions,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("duet-table",{class:"duet-editable-table-table",sticky:this.sticky,stickyDistance:this.stickyDistance,margin:this.margin,theme:this.theme,variation:this.variation,breakpoint:this.breakpoint},t("table",{role:this.accessibleRole},t("caption",null,t("slot",{name:"tcaption"})),t("thead",null,t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-first"}))),this.renderTableHeader(),t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-last"})))),t("tbody",null,this.renderTableBody()),t("tfoot",null,t("tr",null,t("th",{class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{name:"tfoot"})))))))}get element(){return s(this)}};g.style=".sc-duet-editable-table-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-editable-table-actions-menu.sc-duet-editable-table{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button.sc-duet-editable-table{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon.sc-duet-editable-table .duet-icon.sc-duet-editable-table{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row.sc-duet-editable-table .duet-text-right.sc-duet-editable-table{text-align:right}.duet-editable-table-header.sc-duet-editable-table tr.sc-duet-editable-table .duet-editable-table-header-hidden.sc-duet-editable-table{padding:0 !important;font-size:0;border-bottom:0}";const y={none:0,"with-links":16*parseFloat(h),"without-links":16*parseFloat(b)},v=class{constructor(t){e(this,t),this.handleMediaQueryChange=t=>{this.matchesBreakpoint=t.matches},this.matchesBreakpoint=!0,this.theme=void 0,this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small"}connectedCallback(){this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":p[this.breakpoint]),this.mq.addEventListener("change",o(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>o(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(d(this),this.copyHeadingsToCells(),this.sticky&&"none-scrollable"===this.breakpoint&&console.warn('[DUET WARNING]: sticky and breakpoint="none-scrollable" are incompatible. Scrollable takes precedence'),this.sticky){const t=y[this.stickyDistance];this.element.querySelectorAll("thead th").forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords()}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0}copyHeadingsToCells(){const t=this.element.querySelectorAll("thead th"),e=this.element.querySelectorAll("tbody tr"),a=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{a[e]&&(t.dataset.heading=a[e])}))}))}render(){return t(i,{class:{[`duet-table-${this.variation}`]:!0,"duet-table-flattened":!this.matchesBreakpoint,"duet-table-sticky":this.matchesBreakpoint&&this.sticky,"duet-table-scrollable":"none-scrollable"===this.breakpoint,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("slot",null))}get element(){return s(this)}};v.style='duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{width:100%;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}.duet-table-flattened table,.duet-table-flattened thead,.duet-table-flattened tbody,.duet-table-flattened tfoot,.duet-table-flattened th,.duet-table-flattened td,.duet-table-flattened tr{display:block}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-fixed th:first-child,.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-fixed th:last-child,.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-fixed th,.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-fixed tbody th,.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-fixed td,.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-fixed td:first-child,.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-fixed td:last-child,.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-fixed tbody td,.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-fixed tbody td,.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-fixed tbody:first-of-type th,.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-fixed td,.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-fixed tr,.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-fixed tfoot td,.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-fixed tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-fixed table{table-layout:fixed}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td,.duet-table-fixed tbody tr td:first-child{padding:4px !important;vertical-align:text-bottom;border-bottom:0 none}.duet-table-fixed thead{display:none}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td{border-bottom:0 none}.duet-table-fixed:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}.duet-table-sortable tbody tr td:first-child,.duet-table-sortable thead tr th:first-child{padding:20px}.duet-table-sortable:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-actions table{table-layout:auto}.duet-table-actions thead th:last-child{width:1px;white-space:nowrap}.duet-editable-table-table.duet-table-flattened tr{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:auto;gap:10px}.duet-editable-table-table.duet-table-flattened tr.duet-table-action-row td:last-child::before{padding:0;content:""}.duet-editable-table-table.duet-table-flattened td{grid-column:1/2}.duet-editable-table-table.duet-table-flattened td:first-child{grid-row:1;grid-column:1}.duet-editable-table-table.duet-table-flattened td:last-child{grid-row:1;grid-column:2}';const x=[{type:"default",system_message:"unknown error",message:{fi:"Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",sv:"Ett okänt fel uppstod, försök igen.",en:"An unknown error occured, please try again."}},{type:"400",system_message:"Bad Request: The server could not understand the request due to invalid syntax.",message:{fi:"Tiedostoa ei hyväksytty.",sv:"Servern avvisade din fil.",en:"The server rejected your file."}},{type:"401",system_message:"Not Authenticated: The client must authenticate itself to get the requested response...",message:{fi:"Vain kirjautunut käyttäjä voi lähettää tiedostoja.",sv:"Du måste vara inloggad för att ladda upp filer.",en:"You need to be logged in to upload files."}},{type:"403",system_message:"No Access: The client does not have access rights to the content.",message:{fi:"Ei oikeuksia lähettää tiedostoja.",sv:"Du har inte rätt åtkomsträttigheter för att ladda upp filer.",en:"You do not have the correct access rights to upload files."}},{type:"413",system_message:"Payload too large",message:{fi:"Tiedosto oli liian vastaanotettavaksi.",sv:"Filen var för stor för servern att hantera.",en:"The file was to large for the server to handle."}},{type:"415",system_message:"Unsupported media type",message:{fi:"Tiedoston tyyppi oli väärä.",sv:"Servern avvisade filen eftersom den hade fel typ.",en:"The server rejected the file because it had the wrong type."}},{type:"429",system_message:"Too many request from same address",message:{fi:"Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",sv:"Servern har fått många förfrågningar från dig, försök igen senare.",en:"The server has received to many request from you, please try again later."}},{type:"500",system_message:"Internal Server Error",message:{fi:"Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",sv:"Servern rapporterade ett okänt fel och uppladdningen misslyckades.",en:"The server reported an unknown error and the upload failed."}},{type:"duet-upload-100",system_message:"File extension not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den type.",en:"You cannot upload files with that extension."}},{type:"duet-upload-001",system_message:"File transfer failed",message:{fi:"Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",sv:"Din anslutning till servern avbröts, försök igen.",en:"Your connection to the server was interrupted, try again."}},{type:"duet-upload-101",system_message:"File mimetype not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den typ.",en:"You cannot upload files of that type."}},{type:"duet-upload-201",system_message:"File is too large",message:{fi:"Tiedosto on liian iso.",sv:"Filen är större än tillåtet.",en:"The file is larger than permitted."}},{type:"duet-upload-202",system_message:"The combined size of all files is too large",message:{fi:"Tiedostojen yhteenlaskettu koko on liian iso.",sv:"Du har nått den maximala kombinerade filstorleken.",en:"You have reached the maximum combined filesize."}},{type:"duet-upload-301",system_message:"The maximum file limit has been reached",message:{fi:"Liitteiden maksimimäärä saavutettu.",sv:"Maximalt antal bilagor har uppnåtts.",en:"Maximum number of attachments reached."}}],k=(t,e)=>{let a={type:void 0,system_message:void 0,message:void 0};return a=(e=c(e)).filter((e=>e.type==t))[0],a||(a=e.filter((t=>"default"===t.type))[0]),a},w=(t,e)=>{const a=k(t,e),i=r(a.message);return""!==i&&i?i:a.system_message},z=({data:e,errorCodes:a})=>{const{item:i,error:s}=e,{name:d}=i,{type:l}=s;return t("span",{class:"duet-upload-item-error",role:"status"},t("duet-paragraph",{class:"duet-upload-item-name",color:"danger",margin:"none",weight:"semi-bold"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),d),t("duet-paragraph",{class:"duet-upload-item-error-label",size:"small",margin:"none",color:"danger"},w(l,a)))},T=({progress:e,name:a})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),a,t("br",null),t("duet-progress",{progress:Math.ceil(e),"aria-hidden":!0})),S=({name:e})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),e),E=({data:e,showLinks:a})=>{const{item:i,size:s,uploaded:d,url:l,meta:o}=e,{name:n}=i,r=t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),n),u=t("span",{class:"duet-upload-item-size",style:{fontSize:"14px",fontWeight:"400"}},"(",((t,e=2)=>{if(0===t)return"0 Bytes";const a=e<0?0:e,i=Math.floor(Math.log(t)/Math.log(1024));return parseFloat((t/Math.pow(1024,i)).toFixed(a))+" "+["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][i]})(s),")"),h=t("duet-paragraph",{color:"secondary",margin:"none",weight:"semi-bold"},d&&l&&a?t("duet-link",{url:l,external:!0},r):r,t("duet-spacer",{size:"xx-small",direction:"horizontal"}),u),b=o&&o.badges?t("span",null,t("duet-spacer",{size:"xx-small"}),o.badges.map((e=>t("duet-badge",{color:"primary"},e)))):void 0;return t("span",{class:"duet-upload-item-success"},t("div",null,h),b)},j=(t,e,a)=>{const{allowedMimetypes:i,allowedExtensions:s,maxBytes:d}=e;let l=!1,o=k("default",a);if(t){const{name:e,type:n,size:r}=t,u=((t,e)=>{if(!e||!t)return!0;const a=e.split(",");let i=!1;return a.forEach((e=>{const a=e.split("/"),s=t.split("/");a[0]!==s[0]||a[1]!==s[1]&&"*"!==a[1]||(i=!0)})),i})(n,i),h="all"===s||""===s||" "===s||void 0===s||((t,e)=>{if(!e)return!0;const a=t.split(".");return e.split(",").includes(a[a.length-1])})(e.toLowerCase(),s),b=((t,e)=>!e||!t||e>=t)(r,d);u||(o=k("duet-upload-101",a)),h||(o=k("duet-upload-100",a)),b||(o=k("duet-upload-201",a)),l=u&&h&&b}else l=!1;return{valid:l,errorMessage:l?void 0:r(o.message),errorSystem:l?void 0:o.system_message,errorType:l?void 0:o.type}},M=({payload:t,options:e,onFailure:a,onSuccess:i,onProgress:s})=>{const{type:d="POST",xhr:l,uri:o,argument:n=null,headers:r=null}=e;l.open(d,`${o}${n||""}`,!0);const{data:u,name:h}=t;return r&&Object.keys(r).forEach((t=>{l.setRequestHeader(t,r[t])})),"POST"===d&&(l.onreadystatechange=()=>{l.readyState===XMLHttpRequest.DONE&&l.status>=200&&l.status<300&&i(l,h,l.status),l.readyState===XMLHttpRequest.DONE&&l.status>=300&&l.status<999&&a(l,h,l.status)},s(h)),l.send(u),l},F=class{constructor(i){e(this,i),this.duetChange=a(this,"duetChange",3),this.duetBlur=a(this,"duetBlur",7),this.duetFocus=a(this,"duetFocus",7),this.duetReady=a(this,"duetReady",7),this.duetDone=a(this,"duetDone",3),this.duetState=a(this,"duetState",3),this.duetDelete=a(this,"duetDelete",3),this.duetCancel=a(this,"duetCancel",3),this.duetProgress=a(this,"duetProgress",3),this.duetUpload=a(this,"duetUpload",3),this.buttonId=m("DuetButton"),this.labelId=m("DuetLabel"),this.uploadId=m("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.internalStatusMessageLabel=void 0,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.kick=o((()=>{this.tick=Date.now()}),30),this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:a,id:i,originalEvent:s}=e;switch(a){case"delete":this.onDelete(i,s);break;case"cancel":this.onCancel(i,s)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),a=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==a&&this.duetState.emit({originalEvent:void 0,data:{valid:this.valid,from:"componentWillRender"},component:"duet-upload"})},this.getGroupFromItemData=t=>t.valid&&100===t.progress?this.DefaultGroups.success:t.progress>0&&100!==t.progress?this.DefaultGroups.inprogress:t.valid?t.pending?this.DefaultGroups.pending:t.group?t.group:"none":this.DefaultGroups.failure,this.getItemHTMLFromItemData=(e,a)=>a===this.DefaultGroups.success?t(E,{data:e,showLinks:this.showLinks}):a===this.DefaultGroups.inprogress?t(T,{progress:e.progress,name:e.item.name}):a===this.DefaultGroups.pending?t(S,{name:e.item.name}):a===this.DefaultGroups.failure?t(z,{data:e,errorCodes:this.errorCodes}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,a,i=!0)=>{try{const i=this.files.get(t);i[e]=a,this.files.set(t,i)}catch(s){}i&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(a=>{this.updateValueInMap(e,"progress",a),this.onProgress(e,a,t)})(t.loaded/t.total*100):console.log("cant read progress")},this.trackProgress=(t,e=!1)=>{e?this.filesInProgress.delete(t):this.filesInProgress.set(t,"inprogress"),0===this.filesInProgress.size&&this.onDone()},this.getFilesAsArray=()=>{const t=[],e=[];return this.files.forEach((a=>{a.valid&&!a.deleted?t.push(a):a.valid||a.deleted||e.push(a)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{this.metaData=e,this.nativeInput.click(),this.onUpload(t,e),t.stopPropagation(),t.preventDefault()},this.transferComplete=t=>{this.updateValueInMap(t,"progress",100,!1),this.trackProgress(t,!0)},this.transferDone=(t,e,a)=>{this.updateValueInMap(e,"status",a,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const a=JSON.parse(t.response);this.updateValueInMap(e,"url",a.url)}catch(i){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,a)=>{try{const{error:a}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:a.message,type:a.type},!1)}catch(i){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:a},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",w("duet-upload-001",this.errorCodes))},this.transferCanceled=t=>{this.files.delete(t),this.validateTotals(t),this.kick()},this.validateTotals=t=>{const e=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),a>e))})(0,this.maxBytesTotal),a=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&a++})),a>e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",w("duet-upload-202",this.errorCodes),!1),a&&t&&this.updateValueInMap(t,"error",w("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=a,{bytesMaxReached:e,fileMaxReached:a}},this.uploadFile=async(t,e=!1,a)=>{!e&&this.deferUpload?(this.updateValueInMap(t.item.name,"pending",!0,!1),this.updateValueInMap(t.item.name,"group","pending",!0)):e&&(this.updateValueInMap(t.item.name,"pending",!1,!1),this.updateValueInMap(t.item.name,"group",void 0,!0));try{if(!this.deferUpload||e){const e=new FormData;e.append("file",t.item),a&&e.append("key",a),e.append("uid",t.uid),e.append("name",t.item.name),e.append("metadata",JSON.stringify({uid:t.uid,url:this.uri,size:t.item.size,meta:t.meta})),t.xhr=await this.makeXHRPostRequest(e)}}catch(i){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of this.files.entries())"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,a]of this.files.entries())if(a.uid===t)return{value:a,key:e};return null},this.onDelete=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);this.files.delete(a),this.validateTotals(),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:i},component:"duet-upload"}),this.external||i.pending||this.makeXHRDeleteRequest(i),this.resetFormFields()},this.onCancel=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);if(this.files.delete(a),this.external)this.kick();else{const{xhr:t}=i;t&&t.abort()}this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:i},component:"duet-upload"})},this.onUpload=(t,e)=>{this.duetUpload.emit({originalEvent:t,metaData:e,component:"duet-upload"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,component:"duet-upload"})},this.onProgress=(t,e,a)=>{this.duetChange.emit({originalEvent:a,data:{key:t,percentComplete:e},component:"duet-upload"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,component:"duet-upload"})},this.onReady=()=>{this.duetReady.emit({component:"duet-upload"})},this.onDone=()=>{this.duetDone.emit({component:"duet-upload",data:{files:this.files}})},this.filterMap=()=>{const t=[...this.files.values()],e=[],a=[],i=[],s=[];return t.forEach((t=>{const d=this.getGroupFromItemData(t),l=this.getItemHTMLFromItemData(t,d);d===this.DefaultGroups.success?s.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.inprogress?e.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.pending?i.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.failure?a.push({uid:t.uid,item:l,group:d}):t.group&&e.push({uid:t.uid,item:l,group:t.group})})),{pending:i,failure:a,success:s,inprogress:e}},this.getColumns=t=>[{sort_order:1,direction:-1,index:0,key:t.id,label:t.label}],this.getActions=t=>this.actions.filter((e=>e.map.includes(t))),this.renderEditableTableGroups=()=>{const e=this.filterMap();return this.groups.map((a=>{const i=e[a.id];if(null==i?void 0:i.length)return t("duet-table",{variation:"plain",breakpoint:"none",role:"log",margin:this.hideGroups?"none":"auto"},t("table",{class:"duet-upload-editable-table"},t("thead",{class:"duet-upload-editable-table-header"},t("tr",null,t("th",{class:{"duet-upload-editable-table-header-hidden":this.hideGroups}},this.hideGroups?t("duet-visually-hidden",null,r(a.label)):r(a.label)))),t("tbody",null,t("tr",null,t("td",{class:"duet-upload-editable-table-data"},t("duet-editable-table",{breakpoint:"none",variation:"plain",groupId:a.id,columns:this.getColumns(a),actions:this.getActions(a.id),margin:"none",rows:i}))))))}))},this.tick=Date.now(),this.accessibleActiveDescendant=void 0,this.accessibleDescribedBy=void 0,this.accessibleControls=void 0,this.accessibleOwns=void 0,this.external=!1,this.middleware=null,this.deferUpload=!1,this.hideButton=!1,this.actions=[{icon:"action-delete",color:"color-danger",size:"x-small",background:"gray-lightest",name:"delete",map:["success","failure"],label:{fi:"Poista tiedosto",en:"Poista tiedosto",sv:"Ta bort filen"}},{icon:"navigation-close",color:"primary",size:"x-small",background:"gray-lightest",name:"cancel",map:["inprogress","pending"],label:{fi:"Keskeytä lähetys",en:"Cancel the upload",sv:"Stop överföringen"}}],this.uri=void 0,this.showLinks=!1,this.caption=void 0,this.statusLabelDefaults={fi:{inProgress:"Lähetetään {filesUploaded} lähetettävästä {filesTotal} tiedostosta",inProgressWithErrors:"Lähetetään {filesInProgress} tiedostoa, lähetetty {filesUploaded} lähetettävästä {filesTotal} tiedostosta, {filesWithErrors} tiedostossa on virheitä",done:"Kaikki {filesTotal} tiedostoa lähetetty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} tiedostoa on lähetetty onnistuneesti, {filesWithErrors} tiedostossa oli virheitä",files:"tiedostot",file:"tiedosto"},sv:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Alla {filesTotal} har lagts till",doneWithErrors:"Handling slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"All {filesTotal} added successfully",doneWithErrors:"Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",files:"File",file:"file"}},this.statusMessageLabel=r(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=r(this.buttonLabelDefaults),this.accessibleButtonLabel=void 0,this.theme="",this.disabled=!1,this.identifier=void 0,this.margin="auto",this.required=!1,this.alignment="middle",this.hideGroups=!1,this.files=new Map,this.valid=!this.required,this.labelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add attachments"},this.label=r(this.labelDefaults),this.descriptionDefaults={en:"You may attach the following filetypes: {filetypes} - as well as the most common video files. You can upload {maxbytestotal} of files at a time, and add up to {maxfiles} attachments at a time each no larger than {maxbytes}.",sv:"Du kan bifoga följande filtyper: {filetypes} - samt de vanligaste videofilerna. Du kan ladda upp {maxbytestotal} av filer åt gången, och lägga till upp till {maxfiles} bilagor åt gången varje inte större än {maxbytes}.",fi:"Voit liittää seuraavat tiedostotyypit: {filetypes} - sekä yleisimmät videotiedostot. Voit lähettää {maxbytestotal} tiedostoa kerrallaan, ja lisätä enintään {maxfiles} liitettä kerrallaan, jokainen enintään {maxbytes} kokoisena."},this.description=r(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=r(this.fileListEmptyDefaults),this.error="",this.errorCodes=x,this.name=void 0,this.maxBytes=2e8,this.maxBytesTotal=void 0,this.maxFiles=99,this.allowedExtensions="all",this.allowedMimetypes="*",this.multiple=!0,this.limitSelection=!1,this.value=void 0,this.groups=[{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}},{id:this.DefaultGroups.success,label:{fi:"Valmiit tiedostot",sv:"Files success",en:"Files success"}},{id:this.DefaultGroups.failure,label:{fi:"Tiedostot, joissa on virheitä",sv:"Filer med fel",en:"Files with errors"}},{id:this.DefaultGroups.inprogress,label:{fi:"Kesken olevat tiedostot",sv:"Filer inprogress",en:"Files inprogress"}}]}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?u(this.groups):this.statusMessageLabel,d(this),this.listenForActionEvents(),this.onReady()}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){await this.setFocus(),this.metaData=t,this.nativeInput.click()}async uploadPending(){this.uploadPendingFiles()}async refresh(){this.kick(),await this.setFocus()}async getFiles(){return!(!this.files||0===this.files.size)&&this.getFilesAsArray()}async updateValue(t,e,a){this.updateValueInMap(t,e,a)}render(){const e=this.identifier||this.uploadId,a=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),s=Math.round(this.maxBytes/1024/1024);let d=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return d=d.replace(/{maxbytes}/g,`${s.toString()} MB`),d=d.replace(/{maxbytestotal}/g,`${a.toString()} MB`),d=d.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),t(i,{class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{label:this.label,caption:d},t("slot",{name:"header"}),!this.files.size&&t("duet-label",{part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",theme:"turva"===this.theme?"turva":"default",size:"small",class:{"duet-upload-filelist-empty":!this.files.size,"duet-upload-filelist":!0,"duet-upload-filelist-filled":this.files.size},id:this.labelId,for:e},t("span",{class:{"duet-upload-filelist-empty-label":!this.files.size}},this.fileListEmpty)),!!this.files.size&&t("slot",{name:"fileheader"}),!!this.files.size&&t("duet-upload-aria-status",{invalid:this.getFilesAsArray().invalid.length,valid:this.getFilesAsArray().valid.length,inprogress:this.filesInProgress.size,total:this.files.size,statusMessageLabel:this.internalStatusMessageLabel}),!!this.files.size&&this.renderEditableTableGroups(),!!this.files.size&&t("slot",{name:"filefooter"}),t("duet-spacer",{size:"large"}),!this.hideButton&&t("duet-button",{id:this.buttonId,onClick:this.startUpload,"accessible-controls":e,disabled:this.fileMaxReached,"accessible-label":this.accessibleButtonLabel,"accessible-owns":e,size:"small",variation:"secondary",fixed:!0,icon:"action-add-circle",part:this.identifier?`${this.identifier}-button-upload`:"duet-upload-button-upload"},this.buttonLabel),t("duet-spacer",{size:"medium"}),(this.fileMaxReached||this.bytesMaxReached)&&t("duet-alert",{part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&w("duet-upload-301",this.errorCodes),this.bytesMaxReached&&w("duet-upload-202",this.errorCodes)),t("duet-spacer",{size:"medium"}),t("duet-visually-hidden",null,t("input",{ref:t=>{this.nativeInput=t},accept:this.limitSelection?`${this.allowedMimetypes},${this.allowedExtensions}`:void 0,onBlur:this.onBlur,onFocus:this.onFocus,onChange:t=>this.onChange(t),type:"file",class:{"duet-upload":!0},disabled:this.disabled,"aria-hidden":"true",required:this.required,name:this.name,id:this.identifier,multiple:this.multiple}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,a=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,a)})),e.upload.addEventListener("load",(()=>{this.transferComplete(a)})),e.upload.addEventListener("error",(()=>{this.transferFailed(a)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(a)}));let i={payload:{data:t,name:a},options:{type:"POST",uri:this.uri,xhr:e,argument:null,headers:void 0},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(i=this.middleware(i)),M(i)}makeXHRDeleteRequest(t){const{uid:e,item:a}=t,i=new XMLHttpRequest;let s={payload:{data:null,name},options:{type:"DELETE",xhr:i,uri:this.uri,argument:`?key=${e}&name=${a.name}`,headers:{"x-fileuid":e,"x-filename":a.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(s=this.middleware(s)),M(s)}async onChange(t){var e;const a=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(a)for(const i of a){const{valid:t,errorMessage:e,errorType:a,errorSystem:s}=j(i,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),d={uid:this.genHashName(),item:i,size:i.size,meta:this.metaData,uploaded:!1,valid:t,error:{type:t?void 0:a,message:t?void 0:e,system_message:t?void 0:s},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(i.name,d);const{bytesMaxReached:l,fileMaxReached:o}=this.validateTotals(i.name);l||o?this.updateValueInMap(i.name,"valid",!1,!1):t&&!this.external?await this.uploadFile(d):t&&this.external?(this.updateValueInMap(d.item.name,"pending",!0,!1),this.updateValueInMap(d.item.name,"group","pending",!0)):t||this.updateValueInMap(i.name,"valid",!1,!0),this.kick()}this.resetFormFields(),this.metaData=void 0,this.duetChange.emit({originalEvent:t,data:{files:this.files},component:"duet-upload"})}get element(){return s(this)}static get watchers(){return{valid:["watchValidHandler"]}}};F.style="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:#f5f8fa}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}.duet-upload-editable-table .duet-upload-item-name duet-icon{position:relative;top:2px}duet-paragraph::part(duet-paragraph){word-break:break-word}";export{g as duet_editable_table,v as duet_table,F as duet_upload}
4
+ import{h as t,r as e,c as a,H as i,g as s}from"./p-52feef6c.js";import{i as d}from"./p-4ebf1618.js";import{f as l,d as o}from"./p-0b3f675e.js";import{i as n}from"./p-54f35a79.js";import{g as r,s as u}from"./p-ede854e1.js";import{q as h,s as b}from"./p-9052b6f5.js";import{b as p}from"./p-79a9746e.js";import{c as m}from"./p-c1325e35.js";import{p as c}from"./p-5a9d75e1.js";const f=({data:e,groupId:a,alignment:i})=>{const s=`duet-editable-table duet-editable-table-content-${a}`;return"string"==typeof e?t("td",{innerHTML:e,class:s,part:`${a}content`,style:{verticalAlign:i}}):t("td",{class:s,part:`${a}content`,style:{verticalAlign:i}},e)},g=class{constructor(t){e(this,t),this.duetTableToggle=a(this,"duetTableToggle",7),this.duetMenuClick=a(this,"duetMenuClick",7),this.sortableDefaultLabel={fi:"Järjestä",en:"Click to sort",sv:"Klicka för att sortera"},this.actionColumnLabel={en:"Actions for rows",fi:"Toiminnot rivillä",sv:"Åtgärder för rader"},this.toggleColumn=(t,e)=>{e.preventDefault();const{sort_order:a,direction:i,index:s,key:d}=t;this.duetTableToggle.emit({sort_order:a,index:s,direction:i,key:d,component:"duet-editable-table",originalEvent:e})},this.handleKeyDown=(t,e)=>{n(e)&&this.toggleColumn(t,e)},this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small",this.actions=void 0,this.columns=void 0,this.rows=void 0,this.sortable=!1,this.groupId="",this.theme="",this.accessibleRole=void 0}componentWillLoad(){d(this)}createLabel(e){const{sort_order:a,direction:i,index:s,label:d}=e,l=r(d);return this.sortable?t("span",{class:"duet-table-label","data-index":s},t("duet-button",{size:"small",icon:a&&1===i?"action-arrow-down-small":a&&-1===i?"action-arrow-up-small":"action-subtract-small","icon-size":"medium-small","accessible-label":r(this.sortableDefaultLabel),variation:"plain",margin:"none","icon-right":!0,onClick:t=>this.toggleColumn(e,t),onKeyDown:t=>this.handleKeyDown(e,t)},l)):l}getSortedColumns(){return[...this.columns].sort(l(["index"]))}getRowSortOrder(){return[...this.columns].sort(l(["sort_order"])).filter((t=>t.sort_order)).map((t=>-1===t.direction?`-${t.key}`:t.key))}renderTableHeader(){if(!this.columns)return;const e=this.getSortedColumns();return t("tr",{class:{"duet-table-action-header":!!this.actions}},e.map((e=>{if(!1!==e.display){const a=this.createLabel(e);return""!==a?t("th",{scope:"col"},a):t("td",null)}})),this.actions&&t("th",{scope:"col",class:"duet-table-action-header-heading"},this.actions&&t("duet-visually-hidden",null,r(this.actionColumnLabel))))}renderActions(e,a){if(this.actions)return t("td",{class:"duet-text-right"},this.actions.map((i=>t("duet-action-button",{actionMeta:Object.assign({},(null==e?void 0:e.meta)||{},{index:a}),actionId:(null==e?void 0:e.uid)||(null==e?void 0:e.id)||null,actionName:i.name,theme:this.theme,iconName:i.icon,iconColor:i.color,iconSize:i.size,background:i.background}))))}renderTableBody(){const e=this.getSortedColumns(),a=this.getRowSortOrder();return[...this.rows].sort(l(a)).map(((a,i)=>t("tr",{class:{"duet-table-action-row":!!this.actions,"duet-editable-table-row":!0,[`duet-editable-table-row-${this.groupId}`]:!0},"data-meta":JSON.stringify(a.meta)},e.map((e=>{if(!1!==e.display)return t(f,{data:a[e.key]?a[e.key]:a.item,groupId:this.groupId})})),this.actions&&this.renderActions(a,i))))}render(){return t(i,{class:{[`duet-editable-table-${this.variation}`]:!0,"duet-editable-table":!0,[`duet-editable-table-${this.theme}`]:!0,"duet-editable-table-scrollable":"none-scrollable"===this.breakpoint,"duet-editable-table-sortable":this.sortable,"duet-editable-table-actions":!!this.actions,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("duet-table",{class:"duet-editable-table-table",sticky:this.sticky,stickyDistance:this.stickyDistance,margin:this.margin,theme:this.theme,variation:this.variation,breakpoint:this.breakpoint},t("table",{role:this.accessibleRole},t("caption",null,t("slot",{name:"tcaption"})),t("thead",null,t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-first"}))),this.renderTableHeader(),t("tr",null,t("td",{class:"duet-editable-table-actions-menu",colSpan:99},t("slot",{name:"thead-last"})))),t("tbody",null,this.renderTableBody()),t("tfoot",null,t("tr",null,t("th",{class:"duet-editable-table-footer-menu",colSpan:99},t("slot",{name:"tfoot"})))))))}get element(){return s(this)}};g.style=".sc-duet-editable-table-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-editable-table-actions-menu.sc-duet-editable-table{position:relative;padding:0 !important;margin:0}.duet-editable-table-actions-menu-button.sc-duet-editable-table{position:relative;right:-16px;float:right;padding:0}.duet-editable-table-actions-menu-icon.sc-duet-editable-table .duet-icon.sc-duet-editable-table{max-width:16px;max-height:16px}.duet-editable-table-row.duet-table-action-row.sc-duet-editable-table .duet-text-right.sc-duet-editable-table{text-align:right}.duet-editable-table-header.sc-duet-editable-table tr.sc-duet-editable-table .duet-editable-table-header-hidden.sc-duet-editable-table{padding:0 !important;font-size:0;border-bottom:0}";const y={none:0,"with-links":16*parseFloat(h),"without-links":16*parseFloat(b)},v=class{constructor(t){e(this,t),this.handleMediaQueryChange=t=>{this.matchesBreakpoint=t.matches},this.matchesBreakpoint=!0,this.theme=void 0,this.margin="auto",this.variation="striped",this.sticky=!1,this.stickyDistance="with-links",this.breakpoint="small"}connectedCallback(){this.mq=matchMedia("none"===this.breakpoint||"none-scrollable"===this.breakpoint?"all":p[this.breakpoint]),this.mq.addEventListener("change",o(this.handleMediaQueryChange,50)),this.handleMediaQueryChange(this.mq),this.observer=new MutationObserver((()=>o(this.copyHeadingsToCells(),50))),this.observer.observe(this.element,{childList:!0,subtree:!0})}componentWillLoad(){if(d(this),this.copyHeadingsToCells(),this.sticky&&"none-scrollable"===this.breakpoint&&console.warn('[DUET WARNING]: sticky and breakpoint="none-scrollable" are incompatible. Scrollable takes precedence'),this.sticky){const t=y[this.stickyDistance];this.element.querySelectorAll("thead th").forEach((e=>e.style.top=`${t}px`))}}componentDidLoad(){this.observer&&this.observer.takeRecords()}disconnectedCallback(){this.observer.disconnect(),this.observer=null,this.mq.removeListener(this.handleMediaQueryChange),this.mq=null,this.matchesBreakpoint=!0}copyHeadingsToCells(){const t=this.element.querySelectorAll("thead th"),e=this.element.querySelectorAll("tbody tr"),a=Array.from(t).map((t=>t.textContent.trim()));e.forEach((t=>{t.querySelectorAll("td").forEach(((t,e)=>{a[e]&&(t.dataset.heading=a[e])}))}))}render(){return t(i,{class:{[`duet-table-${this.variation}`]:!0,"duet-table-flattened":!this.matchesBreakpoint,"duet-table-sticky":this.matchesBreakpoint&&this.sticky,"duet-table-scrollable":"none-scrollable"===this.breakpoint,"duet-m-0":"none"===this.margin,"duet-theme-turva":"turva"===this.theme}},t("slot",null))}get element(){return s(this)}};v.style='duet-table{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:20px !important;display:block;font-variant-numeric:tabular-nums}duet-table table,duet-table thead,duet-table tbody,duet-table tfoot,duet-table th,duet-table td,duet-table tr{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}duet-table.duet-m-0{margin:0 !important}duet-table table{width:100%;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:1rem;text-align:left;border-spacing:0;border-collapse:separate}duet-table.duet-theme-turva table{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}duet-table td{-webkit-hyphens:auto;hyphens:auto;color:#00294d}duet-table.duet-theme-turva td{color:#171c3a}duet-table th{font-weight:600;line-height:1.25;color:#657787;text-align:left}duet-table.duet-theme-turva th{color:#747475}duet-table tbody th{font-weight:600;color:#00294d}duet-table.duet-theme-turva tbody th{color:#171c3a}duet-table .duet-table-action-row td:last-child{justify-self:end;padding-right:20px !important;white-space:nowrap}.duet-table-flattened table,.duet-table-flattened thead,.duet-table-flattened tbody,.duet-table-flattened tfoot,.duet-table-flattened th,.duet-table-flattened td,.duet-table-flattened tr{display:block}.duet-table-flattened thead tr{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}.duet-table-flattened td{line-height:1.25}.duet-table-flattened td:not(:last-child){margin-bottom:16px !important}.duet-table-flattened tbody td,.duet-table-flattened tbody th,.duet-table-flattened tfoot td{padding:0 !important;text-align:left !important}.duet-table-flattened tbody th{font-weight:600;line-height:1.25;color:#657787;text-align:left}.duet-table-flattened td[data-heading]::before{margin-bottom:4px !important;display:block;font-size:1rem;font-weight:600;color:#00294d;content:attr(data-heading)}.duet-table-flattened.duet-theme-turva td[data-heading]::before{color:#171c3a}.duet-table-sticky thead th{position:sticky;top:0;background:white}.duet-table-striped td,.duet-table-striped th{padding:20px !important}@media (max-width: 35.9375em){.duet-table-striped td,.duet-table-striped th{padding:20px 12px !important}}.duet-table-striped tbody th{background:white}.duet-table-striped.duet-table-sticky thead th{border-bottom:1px solid #e1e3e6}.duet-table-striped.duet-table-sticky.duet-theme-turva thead th{border-bottom-color:#e4e4e6}.duet-table-striped tbody:not(:first-of-type) th{padding-top:40px !important}.duet-table-striped tbody:only-of-type tr:nth-of-type(odd){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:only-of-type tr:nth-of-type(odd){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(0, 80, 128, 0.04)}.duet-table-striped.duet-theme-turva tbody:not(:only-of-type) tr:nth-of-type(even){background:rgba(23, 28, 58, 0.04)}.duet-table-striped tfoot td{border-top:1px solid #e1e3e6}.duet-table-striped.duet-theme-turva tfoot td{border-top-color:#e4e4e6}.duet-table-striped.duet-table-flattened tbody:not(:first-of-type) th{padding-top:20px !important}.duet-table-striped.duet-table-flattened tr{padding:20px !important}.duet-table-striped.duet-table-flattened tfoot td{border-top:0}.duet-table-striped.duet-table-flattened tfoot tr{border-top:1px solid #e1e3e6}.duet-table-striped.duet-table-flattened.duet-theme-turva tfoot tr{border-top-color:#e4e4e6}.duet-table-fixed th,.duet-table-minimal th,.duet-table-plain th{padding:16px !important;border-bottom:1px solid #657787}.duet-table-fixed th:first-child,.duet-table-minimal th:first-child,.duet-table-plain th:first-child{padding-left:0 !important}.duet-table-fixed th:last-child,.duet-table-minimal th:last-child,.duet-table-plain th:last-child{padding-right:0 !important}.duet-theme-turva.duet-table-fixed th,.duet-theme-turva.duet-table-minimal th,.duet-theme-turva.duet-table-plain th{border-bottom-color:#444445}.duet-table-fixed tbody th,.duet-table-minimal tbody th,.duet-table-plain tbody th{padding-top:40px !important;border-bottom-color:#e1e3e6}.duet-theme-turva.duet-table-fixed tbody th,.duet-theme-turva.duet-table-minimal tbody th,.duet-theme-turva.duet-table-plain tbody th{border-bottom-color:#e4e4e6}.duet-table-fixed td,.duet-table-minimal td,.duet-table-plain td{padding:16px !important}.duet-table-fixed td:first-child,.duet-table-minimal td:first-child,.duet-table-plain td:first-child{padding-left:0 !important}.duet-table-fixed td:last-child,.duet-table-minimal td:last-child,.duet-table-plain td:last-child{padding-right:0 !important}.duet-table-fixed tbody td,.duet-table-minimal tbody td,.duet-table-plain tbody td{border-bottom:1px solid #e1e3e6}.duet-theme-turva.duet-table-fixed tbody td,.duet-theme-turva.duet-table-minimal tbody td,.duet-theme-turva.duet-table-plain tbody td{border-bottom-color:#e4e4e6}.duet-table-flattened.duet-table-fixed tbody:first-of-type th,.duet-table-flattened.duet-table-minimal tbody:first-of-type th,.duet-table-flattened.duet-table-plain tbody:first-of-type th{padding-top:0 !important}.duet-table-flattened.duet-table-fixed td,.duet-table-flattened.duet-table-minimal td,.duet-table-flattened.duet-table-plain td,.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{border-bottom:0}.duet-table-flattened.duet-table-fixed tr,.duet-table-flattened.duet-table-minimal tr,.duet-table-flattened.duet-table-plain tr{padding:20px 0 !important}.duet-table-flattened.duet-table-fixed tbody th,.duet-table-flattened.duet-table-minimal tbody th,.duet-table-flattened.duet-table-plain tbody th{padding-top:20px !important}.duet-table-flattened.duet-table-fixed tfoot td,.duet-table-flattened.duet-table-minimal tfoot td,.duet-table-flattened.duet-table-plain tfoot td{margin-bottom:4px !important}.duet-table-flattened.duet-table-fixed tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-minimal tbody:not(:only-of-type) tr:first-child,.duet-table-flattened.duet-table-plain tbody:not(:only-of-type) tr:first-child{border-bottom:0}.duet-table-plain.duet-table-flattened tbody tr{border-bottom:1px solid #e1e3e6}.duet-table-plain.duet-table-flattened.duet-theme-turva tbody tr{border-bottom-color:#e4e4e6}.duet-table-minimal tbody tr,.duet-table-minimal tbody tr td{vertical-align:top;border-bottom:0 none}.duet-table-minimal tbody tr:last-of-type,.duet-table-minimal tbody tr:last-of-type td{border-bottom:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened tbody tr,.duet-table-minimal.duet-table-flattened tbody tr td{border-bottom:0 none}.duet-table-minimal.duet-table-flattened tbody tr td[data-heading]::before{display:none}.duet-table-minimal.duet-table-flattened tfoot{border-top:1px solid #e1e3e6}.duet-table-minimal.duet-table-flattened.duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-fixed table{table-layout:fixed}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td,.duet-table-fixed tbody tr td:first-child{padding:4px !important;vertical-align:text-bottom;border-bottom:0 none}.duet-table-fixed thead{display:none}.duet-table-fixed tbody tr,.duet-table-fixed tbody tr td{border-bottom:0 none}.duet-table-fixed:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-fixed:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-scrollable{position:relative;width:100%;overflow-x:auto;background:linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0)), linear-gradient(-90deg, #fff 0%, rgba(255, 255, 255, 0)) 100% 0, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0)) 100% 0%;background-repeat:no-repeat;background-attachment:local, local, scroll, scroll;background-size:100px 100%, 100px 100%, 12px 100%, 12px 100%}.duet-table-selected-column{background:rgba(0, 119, 179, 0.08)}.duet-theme-turva .duet-table-selected-column{background:rgba(68, 68, 69, 0.08)}.duet-table-sortable tbody tr td:first-child,.duet-table-sortable thead tr th:first-child{padding:20px}.duet-table-sortable:not(.duet-table-flattened) tfoot{border-top:1px solid #e1e3e6}.duet-table-sortable:not(.duet-table-flattened).duet-theme-turva tfoot{border-top-color:#e4e4e6}.duet-table-actions table{table-layout:auto}.duet-table-actions thead th:last-child{width:1px;white-space:nowrap}.duet-editable-table-table.duet-table-flattened tr{display:grid;grid-template-columns:repeat(2, 1fr);grid-auto-rows:auto;gap:10px}.duet-editable-table-table.duet-table-flattened tr.duet-table-action-row td:last-child::before{padding:0;content:""}.duet-editable-table-table.duet-table-flattened td{grid-column:1/2}.duet-editable-table-table.duet-table-flattened td:first-child{grid-row:1;grid-column:1}.duet-editable-table-table.duet-table-flattened td:last-child{grid-row:1;grid-column:2}';const x=[{type:"default",system_message:"unknown error",message:{fi:"Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",sv:"Ett okänt fel uppstod, försök igen.",en:"An unknown error occured, please try again."}},{type:"400",system_message:"Bad Request: The server could not understand the request due to invalid syntax.",message:{fi:"Tiedostoa ei hyväksytty.",sv:"Servern avvisade din fil.",en:"The server rejected your file."}},{type:"401",system_message:"Not Authenticated: The client must authenticate itself to get the requested response...",message:{fi:"Vain kirjautunut käyttäjä voi lähettää tiedostoja.",sv:"Du måste vara inloggad för att ladda upp filer.",en:"You need to be logged in to upload files."}},{type:"403",system_message:"No Access: The client does not have access rights to the content.",message:{fi:"Ei oikeuksia lähettää tiedostoja.",sv:"Du har inte rätt åtkomsträttigheter för att ladda upp filer.",en:"You do not have the correct access rights to upload files."}},{type:"413",system_message:"Payload too large",message:{fi:"Tiedosto oli liian vastaanotettavaksi.",sv:"Filen var för stor för servern att hantera.",en:"The file was to large for the server to handle."}},{type:"415",system_message:"Unsupported media type",message:{fi:"Tiedoston tyyppi oli väärä.",sv:"Servern avvisade filen eftersom den hade fel typ.",en:"The server rejected the file because it had the wrong type."}},{type:"429",system_message:"Too many request from same address",message:{fi:"Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",sv:"Servern har fått många förfrågningar från dig, försök igen senare.",en:"The server has received to many request from you, please try again later."}},{type:"500",system_message:"Internal Server Error",message:{fi:"Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",sv:"Servern rapporterade ett okänt fel och uppladdningen misslyckades.",en:"The server reported an unknown error and the upload failed."}},{type:"duet-upload-100",system_message:"File extension not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den type.",en:"You cannot upload files with that extension."}},{type:"duet-upload-001",system_message:"File transfer failed",message:{fi:"Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",sv:"Din anslutning till servern avbröts, försök igen.",en:"Your connection to the server was interrupted, try again."}},{type:"duet-upload-101",system_message:"File mimetype not allowed",message:{fi:"Tiedoston tyyppi ei ole sallittu.",sv:"Du kan inte ladda upp filer av den typ.",en:"You cannot upload files of that type."}},{type:"duet-upload-201",system_message:"File is too large",message:{fi:"Tiedosto on liian iso.",sv:"Filen är större än tillåtet.",en:"The file is larger than permitted."}},{type:"duet-upload-202",system_message:"The combined size of all files is too large",message:{fi:"Tiedostojen yhteenlaskettu koko on liian iso.",sv:"Du har nått den maximala kombinerade filstorleken.",en:"You have reached the maximum combined filesize."}},{type:"duet-upload-301",system_message:"The maximum file limit has been reached",message:{fi:"Liitteiden maksimimäärä saavutettu.",sv:"Maximalt antal bilagor har uppnåtts.",en:"Maximum number of attachments reached."}}],k=(t,e)=>{let a={type:void 0,system_message:void 0,message:void 0};return a=(e=c(e)).filter((e=>e.type==t))[0],a||(a=e.filter((t=>"default"===t.type))[0]),a},w=(t,e)=>{const a=k(t,e),i=r(a.message);return""!==i&&i?i:a.system_message},z=({data:e,errorCodes:a})=>{const{item:i,error:s}=e,{name:d}=i,{type:l}=s;return t("span",{class:"duet-upload-item-error",role:"status"},t("duet-paragraph",{class:"duet-upload-item-name",color:"danger",margin:"none",weight:"semi-bold"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),d),t("duet-paragraph",{class:"duet-upload-item-error-label",size:"small",margin:"none",color:"danger"},w(l,a)))},T=({progress:e,name:a})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),a,t("br",null),t("duet-progress",{progress:Math.ceil(e),"aria-hidden":!0})),S=({name:e})=>t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),e),E=({data:e,showLinks:a})=>{const{item:i,size:s,uploaded:d,url:l,meta:o}=e,{name:n}=i,r=t("span",{class:"duet-upload-item-name"},t("duet-icon",{margin:"none",size:"x-small",name:"messaging-attachment"}),t("duet-spacer",{size:"xx-small",direction:"horizontal"}),n),u=t("span",{class:"duet-upload-item-size",style:{fontSize:"14px",fontWeight:"400"}},"(",((t,e=2)=>{if(0===t)return"0 Bytes";const a=e<0?0:e,i=Math.floor(Math.log(t)/Math.log(1024));return parseFloat((t/Math.pow(1024,i)).toFixed(a))+" "+["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][i]})(s),")"),h=t("duet-paragraph",{color:"secondary",margin:"none",weight:"semi-bold"},d&&l&&a?t("duet-link",{url:l,external:!0},r):r,t("duet-spacer",{size:"xx-small",direction:"horizontal"}),u),b=o&&o.badges?t("span",null,t("duet-spacer",{size:"xx-small"}),o.badges.map((e=>t("duet-badge",{color:"primary"},e)))):void 0;return t("span",{class:"duet-upload-item-success"},t("div",null,h),b)},j=(t,e,a)=>{const{allowedMimetypes:i,allowedExtensions:s,maxBytes:d}=e;let l=!1,o=k("default",a);if(t){const{name:e,type:n,size:r}=t,u=((t,e)=>{if(!e||!t)return!0;const a=e.split(",");let i=!1;return a.forEach((e=>{const a=e.split("/"),s=t.split("/");a[0]!==s[0]||a[1]!==s[1]&&"*"!==a[1]||(i=!0)})),i})(n,i),h="all"===s||""===s||" "===s||void 0===s||((t,e)=>{if(!e)return!0;const a=t.split(".");return e.split(",").includes(a[a.length-1])})(e.toLowerCase(),s),b=((t,e)=>!e||!t||e>=t)(r,d);u||(o=k("duet-upload-101",a)),h||(o=k("duet-upload-100",a)),b||(o=k("duet-upload-201",a)),l=u&&h&&b}else l=!1;return{valid:l,errorMessage:l?void 0:r(o.message),errorSystem:l?void 0:o.system_message,errorType:l?void 0:o.type}},M=({payload:t,options:e,onFailure:a,onSuccess:i,onProgress:s})=>{const{type:d="POST",xhr:l,uri:o,argument:n=null,headers:r=null}=e;l.open(d,`${o}${n||""}`,!0);const{data:u,name:h}=t;return r&&Object.keys(r).forEach((t=>{l.setRequestHeader(t,r[t])})),"POST"===d&&(l.onreadystatechange=()=>{l.readyState===XMLHttpRequest.DONE&&l.status>=200&&l.status<300&&i(l,h,l.status),l.readyState===XMLHttpRequest.DONE&&l.status>=300&&l.status<999&&a(l,h,l.status)},s(h)),l.send(u),l},F=class{constructor(i){e(this,i),this.duetChange=a(this,"duetChange",3),this.duetBlur=a(this,"duetBlur",7),this.duetFocus=a(this,"duetFocus",7),this.duetReady=a(this,"duetReady",7),this.duetDone=a(this,"duetDone",3),this.duetState=a(this,"duetState",3),this.duetDelete=a(this,"duetDelete",3),this.duetCancel=a(this,"duetCancel",3),this.duetProgress=a(this,"duetProgress",3),this.duetUpload=a(this,"duetUpload",3),this.buttonId=m("DuetButton"),this.labelId=m("DuetLabel"),this.uploadId=m("DuetUpload"),this.filesInProgress=new Map,this.fileMaxReached=!1,this.bytesMaxReached=!1,this.internalStatusMessageLabel=void 0,this.DefaultGroups={inprogress:"inprogress",success:"success",pending:"pending",failure:"failure"},this.kick=o((()=>{this.tick=Date.now()}),30),this.listenForActionEvents=()=>{this.element.addEventListener("duetActionEvent",(t=>{const e=t.detail,{action:a,id:i,originalEvent:s}=e;switch(a){case"delete":this.onDelete(i,s);break;case"cancel":this.onCancel(i,s)}}))},this.verifyValidity=()=>{const{invalid:t,valid:e}=this.getFilesAsArray(),a=this.valid;this.valid=0===t.length&&0!==e.length,this.valid!==a&&this.duetState.emit({originalEvent:void 0,data:{valid:this.valid,from:"componentWillRender"},component:"duet-upload"})},this.getGroupFromItemData=t=>t.valid&&100===t.progress?this.DefaultGroups.success:t.progress>0&&100!==t.progress?this.DefaultGroups.inprogress:t.valid?t.pending?this.DefaultGroups.pending:t.group?t.group:"none":this.DefaultGroups.failure,this.getItemHTMLFromItemData=(e,a)=>a===this.DefaultGroups.success?t(E,{data:e,showLinks:this.showLinks}):a===this.DefaultGroups.inprogress?t(T,{progress:e.progress,name:e.item.name}):a===this.DefaultGroups.pending?t(S,{name:e.item.name}):a===this.DefaultGroups.failure?t(z,{data:e,errorCodes:this.errorCodes}):e.group?e.html:"none",this.genHashName=()=>Date.now().toString(36)+Math.random(),this.updateValueInMap=(t,e,a,i=!0)=>{try{const i=this.files.get(t);i[e]=a,this.files.set(t,i)}catch(s){}i&&this.kick()},this.updateProgress=(t,e)=>{t.lengthComputable?(a=>{this.updateValueInMap(e,"progress",a),this.onProgress(e,a,t)})(t.loaded/t.total*100):console.log("cant read progress")},this.trackProgress=(t,e=!1)=>{e?this.filesInProgress.delete(t):this.filesInProgress.set(t,"inprogress"),0===this.filesInProgress.size&&this.onDone()},this.getFilesAsArray=()=>{const t=[],e=[];return this.files.forEach((a=>{a.valid&&!a.deleted?t.push(a):a.valid||a.deleted||e.push(a)})),{valid:t,invalid:e}},this.resetFormFields=()=>{this.nativeInput.value=""},this.startUpload=async(t,e)=>{this.metaData=e,this.nativeInput.click(),this.onUpload(t,e),t.stopPropagation(),t.preventDefault()},this.transferComplete=t=>{this.updateValueInMap(t,"progress",100,!1),this.trackProgress(t,!0)},this.transferDone=(t,e,a)=>{this.updateValueInMap(e,"status",a,!1),this.updateValueInMap(e,"uploaded",!0,!1);try{const a=JSON.parse(t.response);this.updateValueInMap(e,"url",a.url)}catch(i){this.updateValueInMap(e,"url",null),console.error("Server did not respond with expected response {url: string}")}},this.transferDoneWithFailure=(t,e,a)=>{try{const{error:a}=JSON.parse(t.response);this.updateValueInMap(e,"error",{message:a.message,type:a.type},!1)}catch(i){console.error("Server did not respond with expected response error:{message: string, type: int}"),this.updateValueInMap(e,"error",{type:a},!1)}this.updateValueInMap(e,"valid",!1,!0)},this.transferFailed=t=>{this.updateValueInMap(t,"error",w("duet-upload-001",this.errorCodes))},this.transferCanceled=t=>{this.files.delete(t),this.validateTotals(t),this.kick()},this.validateTotals=t=>{const e=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&t.size&&(a+=t.size)})),a>e))})(0,this.maxBytesTotal),a=((t,e)=>{let a=0;return!!(e&&(this.files.forEach((t=>{t.valid&&a++})),a>e))})(0,this.maxFiles);return e&&t&&this.updateValueInMap(t,"error",w("duet-upload-202",this.errorCodes),!1),a&&t&&this.updateValueInMap(t,"error",w("duet-upload-301",this.errorCodes),!1),this.bytesMaxReached=e,this.fileMaxReached=a,{bytesMaxReached:e,fileMaxReached:a}},this.uploadFile=async(t,e=!1,a)=>{!e&&this.deferUpload?(this.updateValueInMap(t.item.name,"pending",!0,!1),this.updateValueInMap(t.item.name,"group","pending",!0)):e&&(this.updateValueInMap(t.item.name,"pending",!1,!1),this.updateValueInMap(t.item.name,"group",void 0,!0));try{if(!this.deferUpload||e){const e=new FormData;e.append("file",t.item),a&&e.append("key",a),e.append("uid",t.uid),e.append("name",t.item.name),e.append("metadata",JSON.stringify({uid:t.uid,url:this.uri,size:t.item.size,meta:t.meta})),t.xhr=await this.makeXHRPostRequest(e)}}catch(i){this.updateValueInMap(t.item.name,"valid",!1,!1)}},this.uploadPendingFiles=()=>{for(const[t,e]of this.files.entries())"pending"===e.group&&!0===e.pending&&this.uploadFile(e,!0,t)},this.getItemFromUID=t=>{for(const[e,a]of this.files.entries())if(a.uid===t)return{value:a,key:e};return null},this.onDelete=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);this.files.delete(a),this.validateTotals(),this.kick(),this.duetDelete.emit({originalEvent:e,data:{deletion:i},component:"duet-upload"}),this.external||i.pending||this.makeXHRDeleteRequest(i),this.resetFormFields()},this.onCancel=(t,e)=>{const a=this.getItemFromUID(t).key,i=this.files.get(a);if(this.files.delete(a),this.external)this.kick();else{const{xhr:t}=i;t&&t.abort()}this.resetFormFields(),this.duetCancel.emit({originalEvent:e,data:{cancelled:i},component:"duet-upload"})},this.onUpload=(t,e)=>{this.duetUpload.emit({originalEvent:t,metaData:e,component:"duet-upload"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,component:"duet-upload"})},this.onProgress=(t,e,a)=>{this.duetChange.emit({originalEvent:a,data:{key:t,percentComplete:e},component:"duet-upload"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,component:"duet-upload"})},this.onReady=()=>{this.duetReady.emit({component:"duet-upload"})},this.onDone=()=>{this.duetDone.emit({component:"duet-upload",data:{files:this.files}})},this.filterMap=()=>{const t=[...this.files.values()],e=[],a=[],i=[],s=[];return t.forEach((t=>{const d=this.getGroupFromItemData(t),l=this.getItemHTMLFromItemData(t,d);d===this.DefaultGroups.success?s.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.inprogress?e.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.pending?i.push({uid:t.uid,item:l,group:d}):d===this.DefaultGroups.failure?a.push({uid:t.uid,item:l,group:d}):t.group&&e.push({uid:t.uid,item:l,group:t.group})})),{pending:i,failure:a,success:s,inprogress:e}},this.getColumns=t=>[{sort_order:1,direction:-1,index:0,key:t.id,label:t.label}],this.getActions=t=>this.actions.filter((e=>e.map.includes(t))),this.renderEditableTableGroups=()=>{const e=this.filterMap();return this.groups.map((a=>{const i=e[a.id];if(null==i?void 0:i.length)return t("duet-table",{variation:"plain",breakpoint:"none",role:"log",margin:this.hideGroups?"none":"auto"},t("table",{class:"duet-upload-editable-table"},t("thead",{class:"duet-upload-editable-table-header"},t("tr",null,t("th",{class:{"duet-upload-editable-table-header-hidden":this.hideGroups}},this.hideGroups?t("duet-visually-hidden",null,r(a.label)):r(a.label)))),t("tbody",null,t("tr",null,t("td",{class:"duet-upload-editable-table-data"},t("duet-editable-table",{breakpoint:"none",variation:"plain",groupId:a.id,columns:this.getColumns(a),actions:this.getActions(a.id),margin:"none",rows:i}))))))}))},this.tick=Date.now(),this.accessibleActiveDescendant=void 0,this.accessibleDescribedBy=void 0,this.accessibleControls=void 0,this.accessibleOwns=void 0,this.external=!1,this.middleware=null,this.deferUpload=!1,this.hideButton=!1,this.actions=[{icon:"action-delete",color:"color-danger",size:"x-small",background:"gray-lightest",name:"delete",map:["success","failure"],label:{fi:"Poista tiedosto",en:"Poista tiedosto",sv:"Ta bort filen"}},{icon:"navigation-close",color:"primary",size:"x-small",background:"gray-lightest",name:"cancel",map:["inprogress","pending"],label:{fi:"Keskeytä lähetys",en:"Cancel the upload",sv:"Stop överföringen"}}],this.uri=void 0,this.showLinks=!1,this.caption=void 0,this.statusLabelDefaults={fi:{inProgress:"Lähetetään {filesUploaded} lähetettävästä {filesTotal} tiedostosta",inProgressWithErrors:"Lähetetään {filesInProgress} tiedostoa, lähetetty {filesUploaded} lähetettävästä {filesTotal} tiedostosta, {filesWithErrors} tiedostossa on virheitä",done:"Kaikki {filesTotal} tiedostoa lähetetty onnistuneesti",doneWithErrors:"Lähetys valmis, {filesUploaded} tiedostoa on lähetetty onnistuneesti, {filesWithErrors} tiedostossa oli virheitä",files:"tiedostot",file:"tiedosto"},sv:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",done:"Alla {filesTotal} har lagts till",doneWithErrors:"Handling slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",files:"filer",file:"fil"},en:{inProgress:"Adding {filesUploaded} of {filesTotal}",inProgressWithErrors:"Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",done:"All {filesTotal} added successfully",doneWithErrors:"Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",files:"File",file:"file"}},this.statusMessageLabel=r(this.statusLabelDefaults),this.buttonLabelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add an attachment"},this.buttonLabel=r(this.buttonLabelDefaults),this.accessibleButtonLabel=void 0,this.theme="",this.disabled=!1,this.identifier=void 0,this.margin="auto",this.required=!1,this.alignment="middle",this.hideGroups=!1,this.files=new Map,this.valid=!this.required,this.labelDefaults={fi:"Lisää liite",sv:"Lägg till en bilaga",en:"Add attachments"},this.label=r(this.labelDefaults),this.descriptionDefaults={en:"You may attach the following filetypes: {filetypes} - as well as the most common video files. You can upload {maxbytestotal} of files at a time, and add up to {maxfiles} attachments at a time each no larger than {maxbytes}.",sv:"Du kan bifoga följande filtyper: {filetypes} - samt de vanligaste videofilerna. Du kan ladda upp {maxbytestotal} av filer åt gången, och lägga till upp till {maxfiles} bilagor åt gången varje inte större än {maxbytes}.",fi:"Voit liittää seuraavat tiedostotyypit: {filetypes} - sekä yleisimmät videotiedostot. Voit lähettää {maxbytestotal} tiedostoa kerrallaan, ja lisätä enintään {maxfiles} liitettä kerrallaan, jokainen enintään {maxbytes} kokoisena."},this.description=r(this.descriptionDefaults),this.fileListEmptyDefaults={fi:"Ei vielä lisättyjä tiedostoja.",sv:"Inga filer har lagts till ännu.",en:"No files added yet."},this.fileListEmpty=r(this.fileListEmptyDefaults),this.error="",this.errorCodes=x,this.name=void 0,this.maxBytes=2e8,this.maxBytesTotal=void 0,this.maxFiles=99,this.allowedExtensions="all",this.allowedMimetypes="*",this.multiple=!0,this.limitSelection=!1,this.value=void 0,this.groups=[{id:this.DefaultGroups.pending,label:{en:"Files to upload",sv:"Filer att ladda",fi:"Ladattavat tiedostot"}},{id:this.DefaultGroups.success,label:{fi:"Valmiit tiedostot",sv:"Files success",en:"Files success"}},{id:this.DefaultGroups.failure,label:{fi:"Tiedostot, joissa on virheitä",sv:"Filer med fel",en:"Files with errors"}},{id:this.DefaultGroups.inprogress,label:{fi:"Kesken olevat tiedostot",sv:"Filer inprogress",en:"Files inprogress"}}]}watchValidHandler(t,e){t!==e&&this.kick()}componentWillLoad(){this.internalStatusMessageLabel="string"==typeof this.statusMessageLabel?u(this.groups):this.statusMessageLabel,d(this),this.listenForActionEvents(),this.onReady()}componentWillRender(){this.verifyValidity()}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async upload(t){await this.setFocus(),this.metaData=t,this.nativeInput.click()}async uploadPending(){this.uploadPendingFiles()}async refresh(){this.kick(),await this.setFocus()}async getFiles(){return!(!this.files||0===this.files.size)&&this.getFilesAsArray()}async updateValue(t,e,a){this.updateValueInMap(t,e,a)}render(){const e=this.identifier||this.uploadId,a=Math.round((this.maxBytesTotal?this.maxBytesTotal:this.maxBytes*this.maxFiles)/1024/1024),s=Math.round(this.maxBytes/1024/1024);let d=this.description.replace(/{maxfiles}/g,this.maxFiles.toString());return d=d.replace(/{maxbytes}/g,`${s.toString()} MB`),d=d.replace(/{maxbytestotal}/g,`${a.toString()} MB`),d=d.replace(/{filetypes}/g,this.allowedExtensions.split(",").join(", ")),t(i,{class:{"duet-m-0":"none"===this.margin}},t("duet-fieldset",{label:this.label,caption:d},t("slot",{name:"header"}),!this.files.size&&t("duet-label",{part:this.identifier?`${this.identifier}-empty-state`:"duet-upload-empty-state",theme:"turva"===this.theme?"turva":"default",size:"small",class:{"duet-upload-filelist-empty":!this.files.size,"duet-upload-filelist":!0,"duet-upload-filelist-filled":this.files.size},id:this.labelId,for:e},t("span",{class:{"duet-upload-filelist-empty-label":!this.files.size}},this.fileListEmpty)),!!this.files.size&&t("slot",{name:"fileheader"}),!!this.files.size&&t("duet-upload-aria-status",{invalid:this.getFilesAsArray().invalid.length,valid:this.getFilesAsArray().valid.length,inprogress:this.filesInProgress.size,total:this.files.size,statusMessageLabel:this.internalStatusMessageLabel}),!!this.files.size&&this.renderEditableTableGroups(),!!this.files.size&&t("slot",{name:"filefooter"}),t("duet-spacer",{size:"large"}),!this.hideButton&&t("duet-button",{id:this.buttonId,onClick:this.startUpload,"accessible-controls":e,disabled:this.fileMaxReached,"accessible-label":this.accessibleButtonLabel,"accessible-owns":e,size:"small",variation:"secondary",fixed:!0,icon:"action-add-circle",part:this.identifier?`${this.identifier}-button-upload`:"duet-upload-button-upload"},this.buttonLabel),t("duet-spacer",{size:"medium"}),(this.fileMaxReached||this.bytesMaxReached)&&t("duet-alert",{part:this.identifier?`${this.identifier}-error-notification`:"duet-upload-error-notification"},this.fileMaxReached&&w("duet-upload-301",this.errorCodes),this.bytesMaxReached&&w("duet-upload-202",this.errorCodes)),t("duet-spacer",{size:"medium"}),t("duet-visually-hidden",null,t("input",{ref:t=>{this.nativeInput=t},accept:this.limitSelection?`${this.allowedMimetypes},${this.allowedExtensions}`:void 0,onBlur:this.onBlur,onFocus:this.onFocus,onChange:t=>this.onChange(t),type:"file",class:{"duet-upload":!0},disabled:this.disabled,"aria-hidden":"true",required:this.required,name:this.name,id:this.identifier,multiple:this.multiple}))))}makeXHRPostRequest(t){const e=new XMLHttpRequest,a=t.get("name");e.upload.addEventListener("progress",(t=>{this.updateProgress(t,a)})),e.upload.addEventListener("load",(()=>{this.transferComplete(a)})),e.upload.addEventListener("error",(()=>{this.transferFailed(a)})),e.upload.addEventListener("abort",(()=>{this.transferCanceled(a)}));let i={payload:{data:t,name:a},options:{type:"POST",uri:this.uri,xhr:e,argument:null,headers:void 0},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(i=this.middleware(i)),M(i)}makeXHRDeleteRequest(t){const{uid:e,item:a}=t,i=new XMLHttpRequest;let s={payload:{data:null,name},options:{type:"DELETE",xhr:i,uri:this.uri,argument:`?key=${e}&name=${a.name}`,headers:{"x-fileuid":e,"x-filename":a.name}},onFailure:this.transferDoneWithFailure,onSuccess:this.transferDone,onProgress:this.trackProgress};return this.middleware&&(s=this.middleware(s)),M(s)}async onChange(t){var e;const a=Array.from(null===(e=this.nativeInput)||void 0===e?void 0:e.files);if(a)for(const i of a){const{valid:t,errorMessage:e,errorType:a,errorSystem:s}=j(i,{maxBytes:this.maxBytes,allowedExtensions:this.allowedExtensions,allowedMimetypes:this.allowedMimetypes},this.errorCodes),d={uid:this.genHashName(),item:i,size:i.size,meta:this.metaData,uploaded:!1,valid:t,error:{type:t?void 0:a,message:t?void 0:e,system_message:t?void 0:s},progress:0,deleted:!1,xhr:!1,url:!1};this.files.set(i.name,d);const{bytesMaxReached:l,fileMaxReached:o}=this.validateTotals(i.name);l||o?this.updateValueInMap(i.name,"valid",!1,!1):t&&!this.external?await this.uploadFile(d):t&&this.external?(this.updateValueInMap(d.item.name,"pending",!0,!1),this.updateValueInMap(d.item.name,"group","pending",!0)):t||this.updateValueInMap(i.name,"valid",!1,!0),this.kick()}this.resetFormFields(),this.metaData=void 0,this.duetChange.emit({originalEvent:t,data:{files:this.files},component:"duet-upload"})}get element(){return s(this)}static get watchers(){return{valid:["watchValidHandler"]}}};F.style="*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:#f5f8fa}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}.duet-upload-editable-table .duet-upload-item-name duet-icon{position:relative;top:2px}duet-paragraph::part(duet-paragraph){word-break:break-word}";export{g as duet_editable_table,v as duet_table,F as duet_upload}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as t,c as e,h as o,H as n,g as i}from"./p-6999702a.js";import{i as r}from"./p-4ebf1618.js";import{D as u}from"./p-76f00bd5.js";import{a,g as d}from"./p-ede854e1.js";import{g as s}from"./p-79a9746e.js";import"./p-5a9d75e1.js";import"./p-9052b6f5.js";const b=class{constructor(o){t(this,o),this.duetFocus=e(this,"duetFocus",7),this.duetBlur=e(this,"duetBlur",7),this.handleClick=t=>{!this.url&&this.element.closest("form")&&(t.preventDefault(),this.proxyButton.click())},this.onFocus=()=>{this.duetFocus.emit()},this.onBlur=()=>{this.duetBlur.emit()},this.accessibleLabel=void 0,this.accessibleControls=void 0,this.accessiblePopup="false",this.accessibleActiveDescendant=void 0,this.accessibleOwns=void 0,this.accessibleDescribedBy=void 0,this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.accessibleExpanded=void 0,this.accessiblePressed=void 0,this.loading=!1,this.variation="default",this.negative=!1,this.theme="",this.margin="auto",this.padding="auto",this.centerText=!1,this.wrapping="auto",this.expand=!1,this.fixed=!1,this.disabled=!1,this.name=void 0,this.value=void 0,this.identifier=void 0,this.submit=!1,this.external=!1,this.language=a(),this.accessibleLabelExternalDefaults=u,this.accessibleLabelExternal=d(this.accessibleLabelExternalDefaults),this.icon="",this.color="",this.iconRight=!1,this.iconSize="medium",this.size="medium",this.iconOnly=!1,this.url=void 0}componentWillLoad(){r(this),this.url&&this.external&&this.icon&&console.warn("[DUET]: Button used as an external link will override any icon that is set")}connectedCallback(){this.proxyButton=document.createElement("button"),this.proxyButton.style.display="none",this.syncToProxyButton(),!this.url&&this.element.closest("form")&&this.element.insertAdjacentElement("beforebegin",this.proxyButton)}disconnectedCallback(){this.proxyButton.remove(),this.proxyButton=null}syncToProxyButton(){this.proxyButton.type=this.getButtonType(),this.proxyButton.disabled=this.disabled,null!=this.name?this.proxyButton.name=this.name:this.proxyButton.removeAttribute("name"),null!=this.value?this.proxyButton.value=this.value:this.proxyButton.removeAttribute("value")}getButtonType(){return this.submit?"submit":"button"}async setFocus(t){this.nativeButton&&this.nativeButton.focus(t)}render(){const t=this.external&&this.url,e=t?"action-new-window":this.icon,i=!!t||this.iconRight,r=o("span",{class:"duet-button-contents",style:{color:s(this.color)}},e&&o("div",{"aria-hidden":"true",class:{"duet-button-icon":!0,left:!i,right:i,[this.iconSize]:!0}},o("duet-icon",{size:"auto",margin:"none",name:e,color:"currentColor"})),o("slot",null)),u={onFocus:this.onFocus,onBlur:this.onBlur,ref:t=>this.nativeButton=t,id:this.identifier,class:{"duet-m-0":"none"===this.margin,"duet-p-0":"none"===this.padding,"duet-no-wrap":"none"===this.wrapping,"duet-button":!0,"duet-button-is-small":"small"===this.size,"duet-button-icon-only":this.iconOnly,"duet-button-text-center":this.centerText,"duet-button-negative":this.negative||"negative"===this.variation,[this.variation]:!0,disabled:this.disabled,icon:!!e,"icon-right":i,[this.iconSize]:!0},"aria-controls":this.accessibleControls,"aria-label":this.accessibleLabel,"aria-expanded":null!=this.accessibleExpanded?this.accessibleExpanded.toString():void 0,"aria-activedescendant":this.accessibleActiveDescendant,"aria-owns":this.accessibleOwns,"aria-describedby":this.accessibleDescribedBy,"aria-labelledby":this.accessibleLabelledBy,"aria-details":this.accessibleDetails,"aria-description":this.accessibleDescription};return o(n,{onClick:this.handleClick,class:{"duet-m-0":"none"===this.margin,"duet-small":"small"===this.size,"duet-fixed":this.fixed,"duet-expand":this.expand,"input-button":"input-button-primary"===this.variation||"input-button-secondary"===this.variation}},o("div",{class:{"duet-button-container":!0,"duet-button-is-loading":this.loading,"duet-theme-turva":"turva"===this.theme,"duet-button-negative":this.negative||"negative"===this.variation,[this.variation]:!0}},this.url?o("a",Object.assign({},u,{href:this.url,target:this.external?"_blank":"_self",rel:this.external?"noopener":void 0}),r,this.external&&o("duet-visually-hidden",null,", ",this.accessibleLabelExternal)):o("button",Object.assign({},u,{type:this.getButtonType(),disabled:this.disabled,name:this.name,value:this.value,"aria-pressed":null!=this.accessiblePressed?this.accessiblePressed.toString():void 0,"aria-haspopup":null!=this.accessiblePopup?this.accessiblePopup.toString():void 0,"aria-disabled":this.disabled}),r),this.loading&&o("duet-spinner",{color:"currentColor"})))}get element(){return i(this)}static get watchers(){return{disabled:["syncToProxyButton"],submit:["syncToProxyButton"],value:["syncToProxyButton"],name:["syncToProxyButton"]}}};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;margin-right:8px !important;margin-bottom:12px !important;position:relative;z-index:1;display:inline-flex;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host{width:100%}}:host(.input-button){z-index:250}:host(.duet-small){margin-right:2px !important;margin-bottom:8px !important}:host(.duet-small):last-child,:host(.duet-small):last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host(.duet-small){width:auto}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}:host(.duet-fixed){width:auto !important}:host(:last-child){margin-right:0 !important}.duet-button-container{position:relative;width:100%}.duet-button{padding:14px 27px 15px !important;-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:block;width:100%;min-width:8rem;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;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:#0077b3 !important;text-align:center;text-decoration:none;cursor:pointer;background:transparent;border-style:solid;border-width:2px;border-radius:20rem;transition:background-color 300ms ease, color 300ms ease, border 300ms ease, box-shadow 300ms ease}.duet-button.duet-p-0{padding:0 !important}.duet-button.duet-m-0{margin:0 !important}.duet-button:not(.input-button-primary,.input-button-secondary){font-variant-numeric:tabular-nums}.duet-button.duet-button-text-center{text-align:center !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only){padding:9px 19px 10px !important;min-width:5.3333333333rem;font-size:0.875rem}.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon{padding-left:48px !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon-right{padding-right:48px !important;padding-left:20px !important}.duet-theme-turva .duet-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:#c60c30 !important}.duet-button .duet-button-contents{position:relative;display:inline-block;margin:0 auto;pointer-events:none}.duet-button.duet-no-wrap{white-space:nowrap}.duet-button.icon{padding-left:52px !important}.duet-button.icon-right{padding-right:52px !important;padding-left:28px !important}.duet-button svg{width:100%;min-width:100%;fill:currentColor}.duet-button .duet-button-icon{position:absolute;top:50%;left:-28px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin:0 !important;transform:translateY(-50%)}.duet-button .duet-button-icon duet-icon{width:16px;height:16px}.duet-button .duet-button-icon.right{right:-28px;left:auto}.duet-button .duet-button-icon.large{left:-32px;width:20px;height:20px}.duet-button .duet-button-icon.large duet-icon{width:20px;height:20px}.duet-button .duet-button-icon.large.right{right:-32px;left:auto}.duet-button .duet-button-icon.medium-small{left:-16px;width:10px;height:10px;padding-top:1px}.duet-button .duet-button-icon.medium-small duet-icon{width:10px;height:10px}.duet-button .duet-button-icon.medium-small.right{right:-16px;left:auto}.duet-button .duet-button-icon.small{left:-16px;width:7px;height:7px}.duet-button .duet-button-icon.small duet-icon{width:7px;height:7px}.duet-button .duet-button-icon.small.right{right:-16px;left:auto}.duet-button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-button:active:not([disabled]){opacity:0.75;transition:none}.duet-button.default{border-color:#e1e3e6}.duet-theme-turva .duet-button.default{color:#c60c30 !important;border-color:#e4e4e6}.duet-button.default:hover{border-color:#0077b3}.duet-theme-turva .duet-button.default:hover{border-color:#c60c30}.duet-button.default.duet-button-negative{background-color:white}.duet-theme-turva .duet-button.default.duet-button-negative{background-color:#e4e4e6 !important}.duet-button.default.duet-button-negative:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.default.duet-button-negative:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.primary,.duet-button.input-button-primary{color:white !important;background:#0077b3;border-color:#0077b3}.duet-theme-turva .duet-button.primary,.duet-theme-turva .duet-button.input-button-primary{color:white !important;background:#c60c30;border-color:#c60c30}.duet-button.primary:hover,.duet-button.input-button-primary:hover{background:#005f8f;border-color:#005f8f;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.primary:hover,.duet-theme-turva .duet-button.input-button-primary:hover{background:#940925;border-color:#940925}.duet-button.primary:focus,.duet-button.input-button-primary:focus{outline:0;box-shadow:0 0 0 1px white, 0 0 0 4px rgba(0, 119, 179, 0.75)}.duet-theme-turva .duet-button.primary:focus,.duet-theme-turva .duet-button.input-button-primary:focus{box-shadow:0 0 0 1px white, 0 0 0 4px rgba(23, 28, 58, 0.7)}.duet-button.secondary,.duet-button.input-button-secondary{color:#00294d !important;background:transparent;border-color:#00294d}.duet-theme-turva .duet-button.secondary,.duet-theme-turva .duet-button.input-button-secondary{color:#171c3a !important;border-color:#171c3a}.duet-button.secondary:hover,.duet-button.input-button-secondary:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.secondary:hover,.duet-theme-turva .duet-button.input-button-secondary:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.secondary.duet-button-negative,.duet-button.input-button-secondary.duet-button-negative{color:#e1e3e6 !important;border-color:white}.duet-theme-turva .duet-button.secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative{color:#e4e4e6 !important}.duet-button.secondary.duet-button-negative:hover,.duet-button.input-button-secondary.duet-button-negative:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.negative{color:#00294d !important;background:white;border-color:white}.duet-theme-turva .duet-button.negative{color:#171c3a !important}.duet-button.negative:hover{color:white !important;background:transparent;border-color:white}.duet-button.negative:focus{outline:0;box-shadow:0 0 0 1px #00294d, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-theme-turva .duet-button.negative:focus{box-shadow:0 0 0 1px #171c3a, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-button.destructive-primary{color:white !important;background:#de2362;border-color:#de2362}.duet-theme-turva .duet-button.destructive-primary{color:white !important;background:#e02a0d;border-color:#e02a0d}.duet-button.destructive-primary:hover{background:#b21c4e;border-color:#b21c4e;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.destructive-primary:hover{background:#b3220a}.duet-button.destructive,.duet-button.destructive-secondary{color:#de2362 !important;background:white;border-color:#de2362}.duet-theme-turva .duet-button.destructive,.duet-theme-turva .duet-button.destructive-secondary{color:#e02a0d !important;background:white;border-color:#e02a0d}.duet-button.destructive:hover,.duet-button.destructive-secondary:hover{color:white !important;background:#b21c4e;border-color:#b21c4e}.duet-theme-turva .duet-button.destructive:hover,.duet-theme-turva .duet-button.destructive-secondary:hover{color:white !important;background:#b3220a;border-color:#b3220a}.duet-button.plain{min-width:48px;padding-right:0 !important;padding-left:0 !important;line-height:1.5;text-align:left;background:transparent;border:0;border-color:transparent;border-radius:4px}.duet-theme-turva .duet-button.plain{color:#c60c30 !important;background:transparent;border-color:transparent}.duet-button.plain.icon{padding-left:20px !important}.duet-button.plain.icon.icon-right{padding-right:20px !important;padding-left:0 !important}.duet-button.plain.icon.medium{padding-left:24px !important}.duet-button.plain.icon.medium.icon-right{padding-right:24px !important;padding-left:0 !important}.duet-button.plain.icon.large{padding-left:30px !important}.duet-button.plain.icon.large.icon-right{padding-right:30px !important;padding-left:0 !important}.duet-button.plain .duet-button-icon.left{left:-16.6666666667px !important}.duet-button.plain .duet-button-icon.left.medium{left:-24px !important}.duet-button.plain .duet-button-icon.left.large{left:-30px !important}.duet-button.plain .duet-button-icon.right{right:-16.6666666667px !important}.duet-button.plain .duet-button-icon.right.medium{right:-24px !important}.duet-button.plain .duet-button-icon.right.large{right:-30px !important}.duet-button.plain[disabled]{color:#657787 !important;cursor:not-allowed;background:transparent !important;border-color:transparent !important}.duet-theme-turva .duet-button.plain[disabled]{color:transparent !important;cursor:not-allowed;background:transparent !important;border-color:#e4e4e6 !important}.duet-button.plain:hover{color:#004d80 !important;background:transparent !important}.duet-theme-turva .duet-button.plain:hover{color:#940925 !important}.duet-button.plain.duet-button-negative{color:white !important}.duet-theme-turva .duet-button.plain.duet-button-negative{color:#e4e4e6 !important}.duet-button.plain.duet-button-negative:hover{color:#0077b3 !important}.duet-theme-turva .duet-button.plain.duet-button-negative:hover{color:#c60c30 !important}.duet-button.duet-button-icon-only{min-width:48px;min-height:48px;padding:0 !important}.duet-button.duet-button-icon-only .duet-button-contents{position:static}.duet-button.duet-button-icon-only .duet-button-icon.left.large,.duet-button.duet-button-icon-only .duet-button-icon.left.medium,.duet-button.duet-button-icon-only .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button.duet-button.input-button-primary,.duet-button.duet-button.input-button-secondary{box-sizing:content-box;min-width:48px;min-height:48px;padding:0 !important;border-width:1px;border-top-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:0}.duet-button.duet-button.input-button-primary .duet-button-contents,.duet-button.duet-button.input-button-secondary .duet-button-contents{position:static}.duet-button.duet-button.input-button-primary .duet-button-icon.left.large,.duet-button.duet-button.input-button-primary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-primary .duet-button-icon.left.small,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.large,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button[disabled],.duet-button[disabled]:hover,.duet-button.duet-button-negative[disabled],.duet-button.duet-button-negative[disabled]:hover{color:#657787 !important;cursor:not-allowed;background:#e1e3e6 !important;border-color:#e1e3e6 !important;box-shadow:none !important}.duet-theme-turva .duet-button[disabled],.duet-theme-turva .duet-button[disabled]:hover,.duet-theme-turva .duet-button.duet-button-negative [disabled],.duet-theme-turva .duet-button.duet-button-negative [disabled]:hover{color:#747475 !important;cursor:not-allowed;background:#e4e4e6 !important;border-color:#e4e4e6 !important}.duet-button-is-loading.primary,.duet-button-is-loading.input-button-primary{color:white}.duet-button-is-loading.default{color:#0077b3}.duet-button-is-loading.default.duet-theme-turva{color:#c60c30}.duet-button-is-loading .duet-button-contents{visibility:hidden;opacity:0}';const p=class{constructor(e){t(this,e),this.accessibleLabel=void 0,this.color="gray-lightest",this.size="small",this.theme=""}componentWillLoad(){r(this)}render(){const t="currentColor"===this.color?"currentColor":s(this.color);return o(n,{class:{"duet-custom-color":"currentColor"!==this.color&&"turva"!==this.theme&&"default"!==this.theme,"duet-theme-turva":"turva"===this.theme&&"currentColor"!==this.color,"duet-theme-default":"default"===this.theme&&"currentColor"!==this.color}},o("div",{class:{"duet-spinner":!0,[this.size]:!0},style:{color:t},"aria-label":this.accessibleLabel}))}};p.style=':host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;top:50%;left:50%;z-index:800;max-width:100%}:host(.duet-theme-default) .duet-spinner{color:#0077b3 !important}:host(.duet-theme-turva) .duet-spinner{color:#c60c30 !important}:host(.duet-custom-color){color:inherit}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-spinner{-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%;z-index:800;width:24px;height:24px;color:#0077b3;border:2px solid transparent;border-left:2px solid currentColor;border-radius:50%;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%;animation:duetRotate 0.6s linear infinite}.duet-spinner::after{position:absolute;top:50%;left:50%;z-index:200;box-sizing:content-box;width:100%;height:100%;overflow:hidden;content:"";border:2px solid currentColor;border-radius:50%;opacity:0.3;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%}.duet-spinner.medium{width:36px;height:36px;border-width:4px}.duet-spinner.medium::after{border-width:4px}.duet-spinner.large{width:72px;height:72px;border-width:8px}.duet-spinner.large::after{border-width:8px}@keyframes duetRotate{0%{transform:translateZ(0) rotate(0deg) translateX(-50%) translateY(-50%)}100%{transform:translateZ(0) rotate(360deg) translateX(-50%) translateY(-50%)}}';export{b as duet_button,p as duet_spinner}
4
+ import{r as t,c as e,h as o,H as n,g as i}from"./p-52feef6c.js";import{i as r}from"./p-4ebf1618.js";import{D as u}from"./p-76f00bd5.js";import{a,g as d}from"./p-ede854e1.js";import{g as s}from"./p-79a9746e.js";import"./p-5a9d75e1.js";import"./p-9052b6f5.js";const b=class{constructor(o){t(this,o),this.duetFocus=e(this,"duetFocus",7),this.duetBlur=e(this,"duetBlur",7),this.handleClick=t=>{!this.url&&this.element.closest("form")&&(t.preventDefault(),this.proxyButton.click())},this.onFocus=()=>{this.duetFocus.emit()},this.onBlur=()=>{this.duetBlur.emit()},this.accessibleLabel=void 0,this.accessibleControls=void 0,this.accessiblePopup="false",this.accessibleActiveDescendant=void 0,this.accessibleOwns=void 0,this.accessibleDescribedBy=void 0,this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.accessibleExpanded=void 0,this.accessiblePressed=void 0,this.loading=!1,this.variation="default",this.negative=!1,this.theme="",this.margin="auto",this.padding="auto",this.centerText=!1,this.wrapping="auto",this.expand=!1,this.fixed=!1,this.disabled=!1,this.name=void 0,this.value=void 0,this.identifier=void 0,this.submit=!1,this.external=!1,this.language=a(),this.accessibleLabelExternalDefaults=u,this.accessibleLabelExternal=d(this.accessibleLabelExternalDefaults),this.icon="",this.color="",this.iconRight=!1,this.iconSize="medium",this.size="medium",this.iconOnly=!1,this.url=void 0}componentWillLoad(){r(this),this.url&&this.external&&this.icon&&console.warn("[DUET]: Button used as an external link will override any icon that is set")}connectedCallback(){this.proxyButton=document.createElement("button"),this.proxyButton.style.display="none",this.syncToProxyButton(),!this.url&&this.element.closest("form")&&this.element.insertAdjacentElement("beforebegin",this.proxyButton)}disconnectedCallback(){this.proxyButton.remove(),this.proxyButton=null}syncToProxyButton(){this.proxyButton.type=this.getButtonType(),this.proxyButton.disabled=this.disabled,null!=this.name?this.proxyButton.name=this.name:this.proxyButton.removeAttribute("name"),null!=this.value?this.proxyButton.value=this.value:this.proxyButton.removeAttribute("value")}getButtonType(){return this.submit?"submit":"button"}async setFocus(t){this.nativeButton&&this.nativeButton.focus(t)}render(){const t=this.external&&this.url,e=t?"action-new-window":this.icon,i=!!t||this.iconRight,r=o("span",{class:"duet-button-contents",style:{color:s(this.color)}},e&&o("div",{"aria-hidden":"true",class:{"duet-button-icon":!0,left:!i,right:i,[this.iconSize]:!0}},o("duet-icon",{size:"auto",margin:"none",name:e,color:"currentColor"})),o("slot",null)),u={onFocus:this.onFocus,onBlur:this.onBlur,ref:t=>this.nativeButton=t,id:this.identifier,class:{"duet-m-0":"none"===this.margin,"duet-p-0":"none"===this.padding,"duet-no-wrap":"none"===this.wrapping,"duet-button":!0,"duet-button-is-small":"small"===this.size,"duet-button-icon-only":this.iconOnly,"duet-button-text-center":this.centerText,"duet-button-negative":this.negative||"negative"===this.variation,[this.variation]:!0,disabled:this.disabled,icon:!!e,"icon-right":i,[this.iconSize]:!0},"aria-controls":this.accessibleControls,"aria-label":this.accessibleLabel,"aria-expanded":null!=this.accessibleExpanded?this.accessibleExpanded.toString():void 0,"aria-activedescendant":this.accessibleActiveDescendant,"aria-owns":this.accessibleOwns,"aria-describedby":this.accessibleDescribedBy,"aria-labelledby":this.accessibleLabelledBy,"aria-details":this.accessibleDetails,"aria-description":this.accessibleDescription};return o(n,{onClick:this.handleClick,class:{"duet-m-0":"none"===this.margin,"duet-small":"small"===this.size,"duet-fixed":this.fixed,"duet-expand":this.expand,"input-button":"input-button-primary"===this.variation||"input-button-secondary"===this.variation}},o("div",{class:{"duet-button-container":!0,"duet-button-is-loading":this.loading,"duet-theme-turva":"turva"===this.theme,"duet-button-negative":this.negative||"negative"===this.variation,[this.variation]:!0}},this.url?o("a",Object.assign({},u,{href:this.url,target:this.external?"_blank":"_self",rel:this.external?"noopener":void 0}),r,this.external&&o("duet-visually-hidden",null,", ",this.accessibleLabelExternal)):o("button",Object.assign({},u,{type:this.getButtonType(),disabled:this.disabled,name:this.name,value:this.value,"aria-pressed":null!=this.accessiblePressed?this.accessiblePressed.toString():void 0,"aria-haspopup":null!=this.accessiblePopup?this.accessiblePopup.toString():void 0,"aria-disabled":this.disabled}),r),this.loading&&o("duet-spinner",{color:"currentColor"})))}get element(){return i(this)}static get watchers(){return{disabled:["syncToProxyButton"],submit:["syncToProxyButton"],value:["syncToProxyButton"],name:["syncToProxyButton"]}}};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;margin-right:8px !important;margin-bottom:12px !important;position:relative;z-index:1;display:inline-flex;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}:host:last-child,:host:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host{width:100%}}:host(.input-button){z-index:250}:host(.duet-small){margin-right:2px !important;margin-bottom:8px !important}:host(.duet-small):last-child,:host(.duet-small):last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){:host(.duet-small){width:auto}}:host(.duet-expand){width:100% !important}:host(.duet-m-0){margin:0 !important}:host(.duet-fixed){width:auto !important}:host(:last-child){margin-right:0 !important}.duet-button-container{position:relative;width:100%}.duet-button{padding:14px 27px 15px !important;-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:block;width:100%;min-width:8rem;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;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:#0077b3 !important;text-align:center;text-decoration:none;cursor:pointer;background:transparent;border-style:solid;border-width:2px;border-radius:20rem;transition:background-color 300ms ease, color 300ms ease, border 300ms ease, box-shadow 300ms ease}.duet-button.duet-p-0{padding:0 !important}.duet-button.duet-m-0{margin:0 !important}.duet-button:not(.input-button-primary,.input-button-secondary){font-variant-numeric:tabular-nums}.duet-button.duet-button-text-center{text-align:center !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only){padding:9px 19px 10px !important;min-width:5.3333333333rem;font-size:0.875rem}.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon{padding-left:48px !important}.duet-button.duet-button-is-small:not(.duet-button-icon-only).icon-right{padding-right:48px !important;padding-left:20px !important}.duet-theme-turva .duet-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:#c60c30 !important}.duet-button .duet-button-contents{position:relative;display:inline-block;margin:0 auto;pointer-events:none}.duet-button.duet-no-wrap{white-space:nowrap}.duet-button.icon{padding-left:52px !important}.duet-button.icon-right{padding-right:52px !important;padding-left:28px !important}.duet-button svg{width:100%;min-width:100%;fill:currentColor}.duet-button .duet-button-icon{position:absolute;top:50%;left:-28px;display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin:0 !important;transform:translateY(-50%)}.duet-button .duet-button-icon duet-icon{width:16px;height:16px}.duet-button .duet-button-icon.right{right:-28px;left:auto}.duet-button .duet-button-icon.large{left:-32px;width:20px;height:20px}.duet-button .duet-button-icon.large duet-icon{width:20px;height:20px}.duet-button .duet-button-icon.large.right{right:-32px;left:auto}.duet-button .duet-button-icon.medium-small{left:-16px;width:10px;height:10px;padding-top:1px}.duet-button .duet-button-icon.medium-small duet-icon{width:10px;height:10px}.duet-button .duet-button-icon.medium-small.right{right:-16px;left:auto}.duet-button .duet-button-icon.small{left:-16px;width:7px;height:7px}.duet-button .duet-button-icon.small duet-icon{width:7px;height:7px}.duet-button .duet-button-icon.small.right{right:-16px;left:auto}.duet-button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-button:active:not([disabled]){opacity:0.75;transition:none}.duet-button.default{border-color:#e1e3e6}.duet-theme-turva .duet-button.default{color:#c60c30 !important;border-color:#e4e4e6}.duet-button.default:hover{border-color:#0077b3}.duet-theme-turva .duet-button.default:hover{border-color:#c60c30}.duet-button.default.duet-button-negative{background-color:white}.duet-theme-turva .duet-button.default.duet-button-negative{background-color:#e4e4e6 !important}.duet-button.default.duet-button-negative:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.default.duet-button-negative:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.primary,.duet-button.input-button-primary{color:white !important;background:#0077b3;border-color:#0077b3}.duet-theme-turva .duet-button.primary,.duet-theme-turva .duet-button.input-button-primary{color:white !important;background:#c60c30;border-color:#c60c30}.duet-button.primary:hover,.duet-button.input-button-primary:hover{background:#005f8f;border-color:#005f8f;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.primary:hover,.duet-theme-turva .duet-button.input-button-primary:hover{background:#940925;border-color:#940925}.duet-button.primary:focus,.duet-button.input-button-primary:focus{outline:0;box-shadow:0 0 0 1px white, 0 0 0 4px rgba(0, 119, 179, 0.75)}.duet-theme-turva .duet-button.primary:focus,.duet-theme-turva .duet-button.input-button-primary:focus{box-shadow:0 0 0 1px white, 0 0 0 4px rgba(23, 28, 58, 0.7)}.duet-button.secondary,.duet-button.input-button-secondary{color:#00294d !important;background:transparent;border-color:#00294d}.duet-theme-turva .duet-button.secondary,.duet-theme-turva .duet-button.input-button-secondary{color:#171c3a !important;border-color:#171c3a}.duet-button.secondary:hover,.duet-button.input-button-secondary:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.secondary:hover,.duet-theme-turva .duet-button.input-button-secondary:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.secondary.duet-button-negative,.duet-button.input-button-secondary.duet-button-negative{color:#e1e3e6 !important;border-color:white}.duet-theme-turva .duet-button.secondary.duet-button-negative,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative{color:#e4e4e6 !important}.duet-button.secondary.duet-button-negative:hover,.duet-button.input-button-secondary.duet-button-negative:hover{color:#0077b3 !important;border-color:#0077b3}.duet-theme-turva .duet-button.secondary.duet-button-negative:hover,.duet-theme-turva .duet-button.input-button-secondary.duet-button-negative:hover{color:#c60c30 !important;border-color:#c60c30}.duet-button.negative{color:#00294d !important;background:white;border-color:white}.duet-theme-turva .duet-button.negative{color:#171c3a !important}.duet-button.negative:hover{color:white !important;background:transparent;border-color:white}.duet-button.negative:focus{outline:0;box-shadow:0 0 0 1px #00294d, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-theme-turva .duet-button.negative:focus{box-shadow:0 0 0 1px #171c3a, 0 0 0 4px rgba(255, 255, 255, 0.7)}.duet-button.destructive-primary{color:white !important;background:#de2362;border-color:#de2362}.duet-theme-turva .duet-button.destructive-primary{color:white !important;background:#e02a0d;border-color:#e02a0d}.duet-button.destructive-primary:hover{background:#b21c4e;border-color:#b21c4e;box-shadow:0 4px 20px rgba(34, 34, 34, 0.1)}.duet-theme-turva .duet-button.destructive-primary:hover{background:#b3220a}.duet-button.destructive,.duet-button.destructive-secondary{color:#de2362 !important;background:white;border-color:#de2362}.duet-theme-turva .duet-button.destructive,.duet-theme-turva .duet-button.destructive-secondary{color:#e02a0d !important;background:white;border-color:#e02a0d}.duet-button.destructive:hover,.duet-button.destructive-secondary:hover{color:white !important;background:#b21c4e;border-color:#b21c4e}.duet-theme-turva .duet-button.destructive:hover,.duet-theme-turva .duet-button.destructive-secondary:hover{color:white !important;background:#b3220a;border-color:#b3220a}.duet-button.plain{min-width:48px;padding-right:0 !important;padding-left:0 !important;line-height:1.5;text-align:left;background:transparent;border:0;border-color:transparent;border-radius:4px}.duet-theme-turva .duet-button.plain{color:#c60c30 !important;background:transparent;border-color:transparent}.duet-button.plain.icon{padding-left:20px !important}.duet-button.plain.icon.icon-right{padding-right:20px !important;padding-left:0 !important}.duet-button.plain.icon.medium{padding-left:24px !important}.duet-button.plain.icon.medium.icon-right{padding-right:24px !important;padding-left:0 !important}.duet-button.plain.icon.large{padding-left:30px !important}.duet-button.plain.icon.large.icon-right{padding-right:30px !important;padding-left:0 !important}.duet-button.plain .duet-button-icon.left{left:-16.6666666667px !important}.duet-button.plain .duet-button-icon.left.medium{left:-24px !important}.duet-button.plain .duet-button-icon.left.large{left:-30px !important}.duet-button.plain .duet-button-icon.right{right:-16.6666666667px !important}.duet-button.plain .duet-button-icon.right.medium{right:-24px !important}.duet-button.plain .duet-button-icon.right.large{right:-30px !important}.duet-button.plain[disabled]{color:#657787 !important;cursor:not-allowed;background:transparent !important;border-color:transparent !important}.duet-theme-turva .duet-button.plain[disabled]{color:transparent !important;cursor:not-allowed;background:transparent !important;border-color:#e4e4e6 !important}.duet-button.plain:hover{color:#004d80 !important;background:transparent !important}.duet-theme-turva .duet-button.plain:hover{color:#940925 !important}.duet-button.plain.duet-button-negative{color:white !important}.duet-theme-turva .duet-button.plain.duet-button-negative{color:#e4e4e6 !important}.duet-button.plain.duet-button-negative:hover{color:#0077b3 !important}.duet-theme-turva .duet-button.plain.duet-button-negative:hover{color:#c60c30 !important}.duet-button.duet-button-icon-only{min-width:48px;min-height:48px;padding:0 !important}.duet-button.duet-button-icon-only .duet-button-contents{position:static}.duet-button.duet-button-icon-only .duet-button-icon.left.large,.duet-button.duet-button-icon-only .duet-button-icon.left.medium,.duet-button.duet-button-icon-only .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button.duet-button.input-button-primary,.duet-button.duet-button.input-button-secondary{box-sizing:content-box;min-width:48px;min-height:48px;padding:0 !important;border-width:1px;border-top-left-radius:0;border-top-right-radius:4px;border-bottom-right-radius:4px;border-bottom-left-radius:0}.duet-button.duet-button.input-button-primary .duet-button-contents,.duet-button.duet-button.input-button-secondary .duet-button-contents{position:static}.duet-button.duet-button.input-button-primary .duet-button-icon.left.large,.duet-button.duet-button.input-button-primary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-primary .duet-button-icon.left.small,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.large,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.medium,.duet-button.duet-button.input-button-secondary .duet-button-icon.left.small{position:absolute;top:50% !important;left:50% !important;padding:0;margin:0;transform:translateX(-50%) translateY(-50%)}.duet-button[disabled],.duet-button[disabled]:hover,.duet-button.duet-button-negative[disabled],.duet-button.duet-button-negative[disabled]:hover{color:#657787 !important;cursor:not-allowed;background:#e1e3e6 !important;border-color:#e1e3e6 !important;box-shadow:none !important}.duet-theme-turva .duet-button[disabled],.duet-theme-turva .duet-button[disabled]:hover,.duet-theme-turva .duet-button.duet-button-negative [disabled],.duet-theme-turva .duet-button.duet-button-negative [disabled]:hover{color:#747475 !important;cursor:not-allowed;background:#e4e4e6 !important;border-color:#e4e4e6 !important}.duet-button-is-loading.primary,.duet-button-is-loading.input-button-primary{color:white}.duet-button-is-loading.default{color:#0077b3}.duet-button-is-loading.default.duet-theme-turva{color:#c60c30}.duet-button-is-loading .duet-button-contents{visibility:hidden;opacity:0}';const p=class{constructor(e){t(this,e),this.accessibleLabel=void 0,this.color="gray-lightest",this.size="small",this.theme=""}componentWillLoad(){r(this)}render(){const t="currentColor"===this.color?"currentColor":s(this.color);return o(n,{class:{"duet-custom-color":"currentColor"!==this.color&&"turva"!==this.theme&&"default"!==this.theme,"duet-theme-turva":"turva"===this.theme&&"currentColor"!==this.color,"duet-theme-default":"default"===this.theme&&"currentColor"!==this.color}},o("div",{class:{"duet-spinner":!0,[this.size]:!0},style:{color:t},"aria-label":this.accessibleLabel}))}};p.style=':host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;top:50%;left:50%;z-index:800;max-width:100%}:host(.duet-theme-default) .duet-spinner{color:#0077b3 !important}:host(.duet-theme-turva) .duet-spinner{color:#c60c30 !important}:host(.duet-custom-color){color:inherit}*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-spinner{-webkit-user-select:none;user-select:none;position:absolute;top:50%;left:50%;z-index:800;width:24px;height:24px;color:#0077b3;border:2px solid transparent;border-left:2px solid currentColor;border-radius:50%;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%;animation:duetRotate 0.6s linear infinite}.duet-spinner::after{position:absolute;top:50%;left:50%;z-index:200;box-sizing:content-box;width:100%;height:100%;overflow:hidden;content:"";border:2px solid currentColor;border-radius:50%;opacity:0.3;transform:translateZ(0) translateX(-50%) translateY(-50%);transform-origin:0% 0%}.duet-spinner.medium{width:36px;height:36px;border-width:4px}.duet-spinner.medium::after{border-width:4px}.duet-spinner.large{width:72px;height:72px;border-width:8px}.duet-spinner.large::after{border-width:8px}@keyframes duetRotate{0%{transform:translateZ(0) rotate(0deg) translateX(-50%) translateY(-50%)}100%{transform:translateZ(0) rotate(360deg) translateX(-50%) translateY(-50%)}}';export{b as duet_button,p as duet_spinner}
@@ -1,4 +1,4 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import{r as t,c as i,h as e,H as n,g as o}from"./p-6999702a.js";import{f as s}from"./p-d004da5f.js";import{i as u}from"./p-4ebf1618.js";import{c as a}from"./p-c1325e35.js";import{c as d,r}from"./p-56118313.js";import{f as p}from"./p-54f35a79.js";import{g as l}from"./p-ede854e1.js";import"./p-5a9d75e1.js";const c={search:s,email:{title:"form-email",tags:"form email",svg:'<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" role="img"><path d="M12 23.999c-3.205 0-6.218-1.248-8.484-3.514S.001 15.206.001 12.001s1.248-6.218 3.514-8.485C5.782 1.25 8.795.001 12 .001s6.218 1.248 8.485 3.514A11.92 11.92 0 0 1 24 12v2.25A3.754 3.754 0 0 1 20.25 18a3.77 3.77 0 0 1-3.48-2.365A6.009 6.009 0 0 1 12 18c-3.308 0-6-2.692-6-6s2.692-6 6-6 6 2.692 6 6v2.25c0 1.241 1.009 2.25 2.25 2.25s2.25-1.009 2.25-2.25V12c0-2.804-1.092-5.441-3.075-7.424A10.433 10.433 0 0 0 12 1.501c-2.804 0-5.441 1.092-7.424 3.075S1.501 9.196 1.501 12c0 2.805 1.092 5.441 3.075 7.424s4.619 3.074 7.423 3.074c2.257 0 4.494-.746 6.299-2.1a.749.749 0 1 1 .9 1.199A12.049 12.049 0 0 1 12 23.999zM12 7.5c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5 4.5-2.019 4.5-4.5-2.019-4.5-4.5-4.5z"/></svg>'}},h=class{constructor(e){t(this,e),this.duetInput=i(this,"duetInput",7),this.duetChange=i(this,"duetChange",3),this.duetBlur=i(this,"duetBlur",7),this.duetClear=i(this,"duetClear",7),this.duetFocus=i(this,"duetFocus",7),this.inputId=a("DuetInput"),this.clearId=a("DuetInputClear"),this.labelId=a("DuetLabel"),this.topCaptionId=a("DuetCaptionTop"),this.topCaptionPlaceholderId=a("DuetCaptionPlaceholderTop"),this.errorId=a("DuetError"),this.disallowPatternRegex=null,this.clearLabel=l({en:"Clear",fi:"Tyhjennä",sv:"Rensa"}),this.timeAnnouncement=l({en:"Time",fi:"Aika",sv:"Tid"}),this.onInput=t=>{this.disallowPatternRegex&&d(this.nativeInput,this.disallowPatternRegex),this.value=this.nativeInput.value||"",this.duetInput.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onClear=t=>{this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.getDescribedBy=()=>{let t="";return this.isCaptionVisible&&this.topCaptionId?(t=this.topCaptionId,this.accessibleDescribedBy&&(t+=" "+this.accessibleDescribedBy)):t=this.accessibleDescribedBy.length>0?this.accessibleDescribedBy:void 0,t},this.handleClearClick=t=>{const i=this.clearInput();return this.onClear(t),i},this.keyHandler=t=>(p(t)&&this.clear&&this.handleClearClick(t),t),this.accessibleActiveDescendant=void 0,this.accessibleAutocomplete=void 0,this.accessibleControls=void 0,this.accessibleOwns=void 0,this.accessibleExpanded=void 0,this.accessibleDescribedBy="",this.accessibleHasPopup=void 0,this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.debounce=0,this.clear=!1,this.caption=void 0,this.echoPlaceholder=!1,this.theme="",this.expand=!1,this.disabled=!1,this.identifier=void 0,this.margin="auto",this.required=!1,this.type="text",this.variation="default",this.label="label",this.error="",this.labelHidden=!1,this.numericKeyboard=!1,this.name=void 0,this.pattern=void 0,this.maxlength=void 0,this.minlength=void 0,this.placeholder=void 0,this.component="input",this.role=void 0,this.icon=void 0,this.autoComplete="on",this.disallowPattern=null,this.value=void 0,this.tooltip="",this.tooltipDirection="auto"}disallowedPatternChange(){this.disallowPatternRegex=this.disallowPattern?new RegExp(this.disallowPattern,"g"):null}valueChanged(){var t;if((null===(t=null==this?void 0:this.nativeInput)||void 0===t?void 0:t.value)!==this.value){const t=r(this.nativeInput);this.nativeInput.value=this.value,t()}this.isCaptionVisible=!!this.caption;const i=()=>this.duetChange.emit({value:this.value,component:"duet-input"});0===this.debounce?i():(clearTimeout(this.timeoutId),this.timeoutId=setTimeout(i,this.debounce))}componentWillLoad(){u(this),this.disallowedPatternChange(),this.isCaptionVisible=!!this.caption}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async resetCursor(){if(this.nativeInput){const t=r(this.nativeInput);this.nativeInput.value=this.value,t()}}async clearInput(){this.nativeInput&&(this.nativeInput.value="",this.value="")}render(){const t=this.identifier||this.inputId,i={};let o;if(this.numericKeyboard&&(i.inputmode="numeric"),this.pattern&&"tel"!==this.type?i.pattern=this.pattern:this.pattern||"tel"!==this.type||(i.pattern="[0-9+ ]+"),this.value){o=new Date;try{o.setHours(Number(this.value.slice(0,2)),Number(this.value.slice(3,5)),0,0)}catch(s){o=void 0}}return e(n,{class:{"duet-expand":this.expand,"duet-m-0":"none"===this.margin},onKeyUp:t=>this.keyHandler(t)},"time"===this.type&&e("duet-visually-hidden",{"aria-live":"polite","aria-atomic":"true"},o?`${this.timeAnnouncement} ${o.toLocaleTimeString()}`:""),e("div",{class:{"duet-input-container":!0,"duet-theme-turva":"turva"===this.theme,[`duet-input-variation-${this.variation}`]:!0,"duet-label-hidden":this.labelHidden,"duet-input-top-caption-shown":this.isCaptionVisible,"has-icon":!!this.icon||"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type,"has-error":!!this.error,"has-clear":this.clear}},e("duet-label",{theme:"turva"===this.theme?"turva":"default",class:{"duet-has-tooltip":!!this.tooltip},margin:this.isCaptionVisible?"small":"auto",id:this.labelId,for:t},this.label),this.tooltip&&e("duet-tooltip",{direction:this.tooltipDirection,accessibleInputLabel:this.label},this.tooltip),this.caption&&e("duet-caption",{id:this.topCaptionId,size:"medium"},this.caption),e("div",{class:"duet-input-relative"},this.placeholder&&this.echoPlaceholder&&(this.value||"time"===this.type)&&e("duet-caption",{id:this.topCaptionPlaceholderId,class:"duet-input-placeholder",margin:"none",size:"small"},this.placeholder),e("input",Object.assign({ref:t=>this.nativeInput=t,onInput:this.onInput,onBlur:this.onBlur,onFocus:this.onFocus,type:this.type,class:{"duet-input":!0,disabled:this.disabled,"is-number":"number"===this.component,"is-date":"date"===this.component},value:this.value,disabled:this.disabled,"aria-invalid":this.error?"true":"false","aria-labelledby":this.accessibleLabelledBy?`${this.errorId} ${this.labelId} ${this.accessibleLabelledBy}`:`${this.errorId} ${this.labelId}`,"aria-controls":this.accessibleControls,"aria-autocomplete":this.accessibleAutocomplete,"aria-activedescendant":this.accessibleActiveDescendant,"aria-details":this.accessibleDetails,"aria-errormessage":this.error?this.errorId:null,"aria-description":this.accessibleDescription,"aria-expanded":this.accessibleExpanded,"aria-haspopup":this.accessibleHasPopup,"aria-owns":this.accessibleOwns,"aria-describedby":this.getDescribedBy(),placeholder:this.placeholder,spellcheck:"false",minlength:this.minlength,maxlength:this.maxlength,autocomplete:this.autoComplete,required:this.required,role:this.role,name:this.name,id:t},i)),!this.icon&&"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type&&"button"!==this.variation&&e("div",{class:"duet-input-icon"},e("duet-icon",{margin:"none",size:"small",icon:c[this.type].svg,color:"currentColor"})),this.clear&&this.value&&e("div",{class:"duet-input-clear-icon"},e("button",{onClick:this.handleClearClick,id:this.clearId,"aria-label":this.clearLabel,"aria-keyshortcuts":"Escape"},e("duet-icon",{margin:"none",size:"xx-small",name:"activity-close",color:"currentColor"}))),this.icon&&"button"!==this.variation&&e("div",{class:"duet-input-icon"},e("duet-icon",{margin:"none",size:"small",name:this.icon,color:"currentColor"})),"button"===this.variation&&e("slot",{name:"button"}),e("slot",null)),e("span",{class:"duet-input-help",id:this.errorId,"aria-atomic":"true","aria-live":"polite","aria-relevant":"additions removals"},this.error&&e("span",{class:"duet-input-error"},this.error))))}get element(){return o(this)}static get watchers(){return{disallowPattern:["disallowedPatternChange"],value:["valueChanged"]}}};h.style='*.sc-duet-input,*.sc-duet-input::after,*.sc-duet-input::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-input-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%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:bottom}.sc-duet-input-h:last-child,.sc-duet-input-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-input-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-input-h{width:100% !important}.duet-m-0.sc-duet-input-h{margin:0 !important}duet-tooltip.sc-duet-input{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-input{position:relative;top:4px;right:auto}}duet-caption.sc-duet-input:not(:last-of-type){margin-bottom:0}.duet-input-placeholder.sc-duet-input{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:white}.duet-input-icon.sc-duet-input{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;font-size:0;line-height:normal;color:#00294d;pointer-events:none;transform:translateY(-50%)}.duet-theme-turva.sc-duet-input .duet-input-icon.sc-duet-input{color:#171c3a}.duet-input-container.sc-duet-input{position:relative;width:100%;height:100%}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input{position:relative;z-index:250}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input{position:absolute;top:-24px;right:0;min-width:48px;min-height:48px}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva.sc-duet-input .duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:active{opacity:0.75;transition:none}.duet-input-container.has-clear.has-icon.sc-duet-input .duet-input-clear-icon.sc-duet-input{top:-24px;right:24px}.duet-input.sc-duet-input{position:relative;z-index:100;display:block !important;width:100% !important;min-width:8rem;max-width:initial !important;height:auto !important;padding:12px 14px !important;margin:initial !important;margin-bottom:initial !important;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 !important;font-variant-numeric:tabular-nums;line-height:1.5 !important;color:#00294d !important;cursor:initial !important;background:white !important;background-clip:initial !important;border:1px solid #909599 !important;border-radius:4px !important;box-shadow:initial !important;transition:box-shadow 150ms ease, border 150ms ease !important}.duet-input.is-number.sc-duet-input{padding-right:112px !important}.duet-input.is-date.sc-duet-input{padding-right:64px !important}.has-error.sc-duet-input .duet-input.sc-duet-input{border-color:#de2362 !important}.has-error.sc-duet-input .duet-input.sc-duet-input+.duet-input-icon.sc-duet-input{color:#de2362 !important}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input{border-color:#e02a0d !important}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input+.duet-input-icon.sc-duet-input{color:#e02a0d !important}.has-icon.sc-duet-input .duet-input.sc-duet-input{padding-right:48px !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a !important;border-color:#747475 !important}.duet-input.sc-duet-input::-ms-clear{display:none}.duet-input.sc-duet-input::-webkit-contacts-auto-fill-button{display:none !important}.duet-input.sc-duet-input::-webkit-input-placeholder{color:#657787;opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input::-webkit-input-placeholder{color:#747475}.duet-input.sc-duet-input:focus::-webkit-input-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus::-webkit-input-placeholder{color:#cfcfd1}.duet-input.sc-duet-input::-moz-placeholder{color:#657787;opacity:1 !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input::-moz-placeholder{color:#747475}.duet-input.sc-duet-input:focus::-moz-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus::-moz-placeholder{color:#cfcfd1}.duet-input.sc-duet-input:-ms-input-placeholder{color:#657787}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:-ms-input-placeholder{color:#747475}.duet-input.sc-duet-input:focus:-ms-input-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus:-ms-input-placeholder{color:#cfcfd1}.duet-input[disabled].sc-duet-input{color:#00294d !important;cursor:text !important;background:#f5f8fa !important;border-color:#f5f8fa !important;box-shadow:none !important;opacity:1 !important;-webkit-text-fill-color:#00294d !important}.duet-theme-turva.sc-duet-input .duet-input[disabled].sc-duet-input{color:#171c3a !important;background:#f5f5f7 !important;border-color:#f5f5f7 !important;-webkit-text-fill-color:#171c3a !important}.duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #909599 !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #747475 !important}.has-error.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #e02a0d}.duet-input.sc-duet-input:focus{border-color:#0077b3 !important;outline:0;box-shadow:0 0 0 1px #0077b3 !important;transition:none}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus{border-color:#171c3a !important;box-shadow:0 0 0 1px #171c3a !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus+.duet-input-icon.sc-duet-input{color:#171c3a}.has-error.sc-duet-input .duet-input.sc-duet-input:focus{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input:focus{box-shadow:0 0 0 1px #e02a0d}.duet-input.sc-duet-input:focus+.duet-input-icon.sc-duet-input{color:#0077b3}.duet-input[type=search].sc-duet-input:not(:placeholder-shown):focus+.duet-input-icon.sc-duet-input{display:none}.duet-input.sc-duet-input:not(:focus):not(:hover):invalid{box-shadow:none !important}.duet-input[type=number].sc-duet-input::-webkit-inner-spin-button,.duet-input[type=number].sc-duet-input::-webkit-outer-spin-button,.duet-input[type=time].sc-duet-input::-webkit-inner-spin-button,.duet-input[type=time].sc-duet-input::-webkit-outer-spin-button{display:none;margin:0;-webkit-appearance:none}.duet-input.sc-duet-input::-webkit-search-cancel-button{margin-right:-28px}.duet-input-help.sc-duet-input{display:block;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#657787;border-radius:4px}.duet-input-help.sc-duet-input span.sc-duet-input{display:block;margin-top:8px}.duet-theme-turva.sc-duet-input .duet-input-help.sc-duet-input{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#747475}.has-error.sc-duet-input .duet-input-help.sc-duet-input{color:#de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input-help.sc-duet-input{color:#e02a0d}.duet-label-hidden.sc-duet-input duet-label.sc-duet-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.duet-input-relative.sc-duet-input{position:relative;width:100%}.duet-input-variation-button.sc-duet-input{position:relative;width:100%}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input duet-button.sc-duet-input{z-index:250;margin-bottom:0}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input .duet-input.sc-duet-input{border-right-width:0 !important;border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}';const m=class{constructor(i){t(this,i),this.theme="",this.for=void 0,this.margin="auto",this.size="medium"}componentWillLoad(){u(this)}render(){return e(n,{class:{"duet-label":!0,"duet-label-small":"small"===this.size,"duet-theme-turva":"turva"===this.theme,"duet-small-margin":"small"===this.margin,"duet-m-0":"none"===this.margin}},e("label",{htmlFor:this.for},e("span",null,e("slot",null))))}};m.style='*.sc-duet-label,*.sc-duet-label::after,*.sc-duet-label::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-label-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;line-height:1.25;cursor:default}.duet-p-0.sc-duet-label-h{padding:0 !important}.duet-m-0.sc-duet-label-h{margin:0 !important}.duet-m-0.sc-duet-label-h{margin-bottom:0 !important}.duet-small-margin.sc-duet-label-h{margin-top:8px !important;margin-bottom:4px !important}.duet-has-tooltip.sc-duet-label-h{padding-right:48px}@media (min-width: 48em){.duet-has-tooltip.sc-duet-label-h{padding-right:0}}label.sc-duet-label{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:#00294d;text-align:left;word-break:break-word}label.sc-duet-label span.sc-duet-label{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-label-small.sc-duet-label-h label.sc-duet-label{font-size:0.875rem}.duet-label-small.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-size:0.875rem}.duet-theme-turva.sc-duet-label-h label.sc-duet-label{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}';export{h as duet_input,m as duet_label}
4
+ import{r as t,c as i,h as e,H as n,g as o}from"./p-52feef6c.js";import{f as s}from"./p-d004da5f.js";import{i as u}from"./p-4ebf1618.js";import{c as a}from"./p-c1325e35.js";import{c as d,r}from"./p-56118313.js";import{f as p}from"./p-54f35a79.js";import{g as l}from"./p-ede854e1.js";import"./p-5a9d75e1.js";const c={search:s,email:{title:"form-email",tags:"form email",svg:'<svg fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" role="img"><path d="M12 23.999c-3.205 0-6.218-1.248-8.484-3.514S.001 15.206.001 12.001s1.248-6.218 3.514-8.485C5.782 1.25 8.795.001 12 .001s6.218 1.248 8.485 3.514A11.92 11.92 0 0 1 24 12v2.25A3.754 3.754 0 0 1 20.25 18a3.77 3.77 0 0 1-3.48-2.365A6.009 6.009 0 0 1 12 18c-3.308 0-6-2.692-6-6s2.692-6 6-6 6 2.692 6 6v2.25c0 1.241 1.009 2.25 2.25 2.25s2.25-1.009 2.25-2.25V12c0-2.804-1.092-5.441-3.075-7.424A10.433 10.433 0 0 0 12 1.501c-2.804 0-5.441 1.092-7.424 3.075S1.501 9.196 1.501 12c0 2.805 1.092 5.441 3.075 7.424s4.619 3.074 7.423 3.074c2.257 0 4.494-.746 6.299-2.1a.749.749 0 1 1 .9 1.199A12.049 12.049 0 0 1 12 23.999zM12 7.5c-2.481 0-4.5 2.019-4.5 4.5s2.019 4.5 4.5 4.5 4.5-2.019 4.5-4.5-2.019-4.5-4.5-4.5z"/></svg>'}},h=class{constructor(e){t(this,e),this.duetInput=i(this,"duetInput",7),this.duetChange=i(this,"duetChange",3),this.duetBlur=i(this,"duetBlur",7),this.duetClear=i(this,"duetClear",7),this.duetFocus=i(this,"duetFocus",7),this.inputId=a("DuetInput"),this.clearId=a("DuetInputClear"),this.labelId=a("DuetLabel"),this.topCaptionId=a("DuetCaptionTop"),this.topCaptionPlaceholderId=a("DuetCaptionPlaceholderTop"),this.errorId=a("DuetError"),this.disallowPatternRegex=null,this.clearLabel=l({en:"Clear",fi:"Tyhjennä",sv:"Rensa"}),this.timeAnnouncement=l({en:"Time",fi:"Aika",sv:"Tid"}),this.onInput=t=>{this.disallowPatternRegex&&d(this.nativeInput,this.disallowPatternRegex),this.value=this.nativeInput.value||"",this.duetInput.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onBlur=t=>{this.duetBlur.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onFocus=t=>{this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.onClear=t=>{this.duetFocus.emit({originalEvent:t,value:this.value,component:"duet-input"})},this.getDescribedBy=()=>{let t="";return this.isCaptionVisible&&this.topCaptionId?(t=this.topCaptionId,this.accessibleDescribedBy&&(t+=" "+this.accessibleDescribedBy)):t=this.accessibleDescribedBy.length>0?this.accessibleDescribedBy:void 0,t},this.handleClearClick=t=>{const i=this.clearInput();return this.onClear(t),i},this.keyHandler=t=>(p(t)&&this.clear&&this.handleClearClick(t),t),this.accessibleActiveDescendant=void 0,this.accessibleAutocomplete=void 0,this.accessibleControls=void 0,this.accessibleOwns=void 0,this.accessibleExpanded=void 0,this.accessibleDescribedBy="",this.accessibleHasPopup=void 0,this.accessibleDetails=void 0,this.accessibleLabelledBy=void 0,this.accessibleDescription=void 0,this.debounce=0,this.clear=!1,this.caption=void 0,this.echoPlaceholder=!1,this.theme="",this.expand=!1,this.disabled=!1,this.identifier=void 0,this.margin="auto",this.required=!1,this.type="text",this.variation="default",this.label="label",this.error="",this.labelHidden=!1,this.numericKeyboard=!1,this.name=void 0,this.pattern=void 0,this.maxlength=void 0,this.minlength=void 0,this.placeholder=void 0,this.component="input",this.role=void 0,this.icon=void 0,this.autoComplete="on",this.disallowPattern=null,this.value=void 0,this.tooltip="",this.tooltipDirection="auto"}disallowedPatternChange(){this.disallowPatternRegex=this.disallowPattern?new RegExp(this.disallowPattern,"g"):null}valueChanged(){var t;if((null===(t=null==this?void 0:this.nativeInput)||void 0===t?void 0:t.value)!==this.value){const t=r(this.nativeInput);this.nativeInput.value=this.value,t()}this.isCaptionVisible=!!this.caption;const i=()=>this.duetChange.emit({value:this.value,component:"duet-input"});0===this.debounce?i():(clearTimeout(this.timeoutId),this.timeoutId=setTimeout(i,this.debounce))}componentWillLoad(){u(this),this.disallowedPatternChange(),this.isCaptionVisible=!!this.caption}async setFocus(t){this.nativeInput&&this.nativeInput.focus(t)}async resetCursor(){if(this.nativeInput){const t=r(this.nativeInput);this.nativeInput.value=this.value,t()}}async clearInput(){this.nativeInput&&(this.nativeInput.value="",this.value="")}render(){const t=this.identifier||this.inputId,i={};let o;if(this.numericKeyboard&&(i.inputmode="numeric"),this.pattern&&"tel"!==this.type?i.pattern=this.pattern:this.pattern||"tel"!==this.type||(i.pattern="[0-9+ ]+"),this.value){o=new Date;try{o.setHours(Number(this.value.slice(0,2)),Number(this.value.slice(3,5)),0,0)}catch(s){o=void 0}}return e(n,{class:{"duet-expand":this.expand,"duet-m-0":"none"===this.margin},onKeyUp:t=>this.keyHandler(t)},"time"===this.type&&e("duet-visually-hidden",{"aria-live":"polite","aria-atomic":"true"},o?`${this.timeAnnouncement} ${o.toLocaleTimeString()}`:""),e("div",{class:{"duet-input-container":!0,"duet-theme-turva":"turva"===this.theme,[`duet-input-variation-${this.variation}`]:!0,"duet-label-hidden":this.labelHidden,"duet-input-top-caption-shown":this.isCaptionVisible,"has-icon":!!this.icon||"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type,"has-error":!!this.error,"has-clear":this.clear}},e("duet-label",{theme:"turva"===this.theme?"turva":"default",class:{"duet-has-tooltip":!!this.tooltip},margin:this.isCaptionVisible?"small":"auto",id:this.labelId,for:t},this.label),this.tooltip&&e("duet-tooltip",{direction:this.tooltipDirection,accessibleInputLabel:this.label},this.tooltip),this.caption&&e("duet-caption",{id:this.topCaptionId,size:"medium"},this.caption),e("div",{class:"duet-input-relative"},this.placeholder&&this.echoPlaceholder&&(this.value||"time"===this.type)&&e("duet-caption",{id:this.topCaptionPlaceholderId,class:"duet-input-placeholder",margin:"none",size:"small"},this.placeholder),e("input",Object.assign({ref:t=>this.nativeInput=t,onInput:this.onInput,onBlur:this.onBlur,onFocus:this.onFocus,type:this.type,class:{"duet-input":!0,disabled:this.disabled,"is-number":"number"===this.component,"is-date":"date"===this.component},value:this.value,disabled:this.disabled,"aria-invalid":this.error?"true":"false","aria-labelledby":this.accessibleLabelledBy?`${this.errorId} ${this.labelId} ${this.accessibleLabelledBy}`:`${this.errorId} ${this.labelId}`,"aria-controls":this.accessibleControls,"aria-autocomplete":this.accessibleAutocomplete,"aria-activedescendant":this.accessibleActiveDescendant,"aria-details":this.accessibleDetails,"aria-errormessage":this.error?this.errorId:null,"aria-description":this.accessibleDescription,"aria-expanded":this.accessibleExpanded,"aria-haspopup":this.accessibleHasPopup,"aria-owns":this.accessibleOwns,"aria-describedby":this.getDescribedBy(),placeholder:this.placeholder,spellcheck:"false",minlength:this.minlength,maxlength:this.maxlength,autocomplete:this.autoComplete,required:this.required,role:this.role,name:this.name,id:t},i)),!this.icon&&"text"!==this.type&&"tel"!==this.type&&"password"!==this.type&&"time"!==this.type&&"button"!==this.variation&&e("div",{class:"duet-input-icon"},e("duet-icon",{margin:"none",size:"small",icon:c[this.type].svg,color:"currentColor"})),this.clear&&this.value&&e("div",{class:"duet-input-clear-icon"},e("button",{onClick:this.handleClearClick,id:this.clearId,"aria-label":this.clearLabel,"aria-keyshortcuts":"Escape"},e("duet-icon",{margin:"none",size:"xx-small",name:"activity-close",color:"currentColor"}))),this.icon&&"button"!==this.variation&&e("div",{class:"duet-input-icon"},e("duet-icon",{margin:"none",size:"small",name:this.icon,color:"currentColor"})),"button"===this.variation&&e("slot",{name:"button"}),e("slot",null)),e("span",{class:"duet-input-help",id:this.errorId,"aria-atomic":"true","aria-live":"polite","aria-relevant":"additions removals"},this.error&&e("span",{class:"duet-input-error"},this.error))))}get element(){return o(this)}static get watchers(){return{disallowPattern:["disallowedPatternChange"],value:["valueChanged"]}}};h.style='*.sc-duet-input,*.sc-duet-input::after,*.sc-duet-input::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-input-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%;min-width:calc(33.333% - 8px);max-width:100%;text-align:left;vertical-align:bottom}.sc-duet-input-h:last-child,.sc-duet-input-h:last-of-type{margin-right:0 !important}@media (min-width: 36em){.sc-duet-input-h{width:calc(50% - 16px - 3px)}}.duet-expand.sc-duet-input-h{width:100% !important}.duet-m-0.sc-duet-input-h{margin:0 !important}duet-tooltip.sc-duet-input{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-input{position:relative;top:4px;right:auto}}duet-caption.sc-duet-input:not(:last-of-type){margin-bottom:0}.duet-input-placeholder.sc-duet-input{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:white}.duet-input-icon.sc-duet-input{position:absolute;top:50%;right:16px;z-index:200;width:20px;height:20px;font-size:0;line-height:normal;color:#00294d;pointer-events:none;transform:translateY(-50%)}.duet-theme-turva.sc-duet-input .duet-input-icon.sc-duet-input{color:#171c3a}.duet-input-container.sc-duet-input{position:relative;width:100%;height:100%}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input{position:relative;z-index:250}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input{position:absolute;top:-24px;right:0;min-width:48px;min-height:48px}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva.sc-duet-input .duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-input-container.has-clear.sc-duet-input .duet-input-clear-icon.sc-duet-input button.sc-duet-input:active{opacity:0.75;transition:none}.duet-input-container.has-clear.has-icon.sc-duet-input .duet-input-clear-icon.sc-duet-input{top:-24px;right:24px}.duet-input.sc-duet-input{position:relative;z-index:100;display:block !important;width:100% !important;min-width:8rem;max-width:initial !important;height:auto !important;padding:12px 14px !important;margin:initial !important;margin-bottom:initial !important;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 !important;font-variant-numeric:tabular-nums;line-height:1.5 !important;color:#00294d !important;cursor:initial !important;background:white !important;background-clip:initial !important;border:1px solid #909599 !important;border-radius:4px !important;box-shadow:initial !important;transition:box-shadow 150ms ease, border 150ms ease !important}.duet-input.is-number.sc-duet-input{padding-right:112px !important}.duet-input.is-date.sc-duet-input{padding-right:64px !important}.has-error.sc-duet-input .duet-input.sc-duet-input{border-color:#de2362 !important}.has-error.sc-duet-input .duet-input.sc-duet-input+.duet-input-icon.sc-duet-input{color:#de2362 !important}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input{border-color:#e02a0d !important}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input+.duet-input-icon.sc-duet-input{color:#e02a0d !important}.has-icon.sc-duet-input .duet-input.sc-duet-input{padding-right:48px !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a !important;border-color:#747475 !important}.duet-input.sc-duet-input::-ms-clear{display:none}.duet-input.sc-duet-input::-webkit-contacts-auto-fill-button{display:none !important}.duet-input.sc-duet-input::-webkit-input-placeholder{color:#657787;opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input::-webkit-input-placeholder{color:#747475}.duet-input.sc-duet-input:focus::-webkit-input-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus::-webkit-input-placeholder{color:#cfcfd1}.duet-input.sc-duet-input::-moz-placeholder{color:#657787;opacity:1 !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input::-moz-placeholder{color:#747475}.duet-input.sc-duet-input:focus::-moz-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus::-moz-placeholder{color:#cfcfd1}.duet-input.sc-duet-input:-ms-input-placeholder{color:#657787}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:-ms-input-placeholder{color:#747475}.duet-input.sc-duet-input:focus:-ms-input-placeholder{color:#cfd2d4}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus:-ms-input-placeholder{color:#cfcfd1}.duet-input[disabled].sc-duet-input{color:#00294d !important;cursor:text !important;background:#f5f8fa !important;border-color:#f5f8fa !important;box-shadow:none !important;opacity:1 !important;-webkit-text-fill-color:#00294d !important}.duet-theme-turva.sc-duet-input .duet-input[disabled].sc-duet-input{color:#171c3a !important;background:#f5f5f7 !important;border-color:#f5f5f7 !important;-webkit-text-fill-color:#171c3a !important}.duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #909599 !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #747475 !important}.has-error.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input:hover:not(:disabled){box-shadow:0 0 0 1px #e02a0d}.duet-input.sc-duet-input:focus{border-color:#0077b3 !important;outline:0;box-shadow:0 0 0 1px #0077b3 !important;transition:none}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus{border-color:#171c3a !important;box-shadow:0 0 0 1px #171c3a !important}.duet-theme-turva.sc-duet-input .duet-input.sc-duet-input:focus+.duet-input-icon.sc-duet-input{color:#171c3a}.has-error.sc-duet-input .duet-input.sc-duet-input:focus{box-shadow:0 0 0 1px #de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input.sc-duet-input:focus{box-shadow:0 0 0 1px #e02a0d}.duet-input.sc-duet-input:focus+.duet-input-icon.sc-duet-input{color:#0077b3}.duet-input[type=search].sc-duet-input:not(:placeholder-shown):focus+.duet-input-icon.sc-duet-input{display:none}.duet-input.sc-duet-input:not(:focus):not(:hover):invalid{box-shadow:none !important}.duet-input[type=number].sc-duet-input::-webkit-inner-spin-button,.duet-input[type=number].sc-duet-input::-webkit-outer-spin-button,.duet-input[type=time].sc-duet-input::-webkit-inner-spin-button,.duet-input[type=time].sc-duet-input::-webkit-outer-spin-button{display:none;margin:0;-webkit-appearance:none}.duet-input.sc-duet-input::-webkit-search-cancel-button{margin-right:-28px}.duet-input-help.sc-duet-input{display:block;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#657787;border-radius:4px}.duet-input-help.sc-duet-input span.sc-duet-input{display:block;margin-top:8px}.duet-theme-turva.sc-duet-input .duet-input-help.sc-duet-input{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#747475}.has-error.sc-duet-input .duet-input-help.sc-duet-input{color:#de2362}.duet-theme-turva.has-error.sc-duet-input .duet-input-help.sc-duet-input{color:#e02a0d}.duet-label-hidden.sc-duet-input duet-label.sc-duet-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}.duet-input-relative.sc-duet-input{position:relative;width:100%}.duet-input-variation-button.sc-duet-input{position:relative;width:100%}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input{display:flex;flex-direction:row;flex-wrap:nowrap;align-content:center;align-items:center;justify-content:flex-start;width:auto}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input duet-button.sc-duet-input{z-index:250;margin-bottom:0}.duet-input-variation-button.sc-duet-input .duet-input-relative.sc-duet-input .duet-input.sc-duet-input{border-right-width:0 !important;border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}';const m=class{constructor(i){t(this,i),this.theme="",this.for=void 0,this.margin="auto",this.size="medium"}componentWillLoad(){u(this)}render(){return e(n,{class:{"duet-label":!0,"duet-label-small":"small"===this.size,"duet-theme-turva":"turva"===this.theme,"duet-small-margin":"small"===this.margin,"duet-m-0":"none"===this.margin}},e("label",{htmlFor:this.for},e("span",null,e("slot",null))))}};m.style='*.sc-duet-label,*.sc-duet-label::after,*.sc-duet-label::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-label-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:12px !important;position:relative;z-index:100;display:inline-flex;width:auto;margin-top:8px !important;line-height:1.25;cursor:default}.duet-p-0.sc-duet-label-h{padding:0 !important}.duet-m-0.sc-duet-label-h{margin:0 !important}.duet-m-0.sc-duet-label-h{margin-bottom:0 !important}.duet-small-margin.sc-duet-label-h{margin-top:8px !important;margin-bottom:4px !important}.duet-has-tooltip.sc-duet-label-h{padding-right:48px}@media (min-width: 48em){.duet-has-tooltip.sc-duet-label-h{padding-right:0}}label.sc-duet-label{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:#00294d;text-align:left;word-break:break-word}label.sc-duet-label span.sc-duet-label{font-size:1rem;font-weight:600 !important;word-break:break-word}.duet-label-small.sc-duet-label-h label.sc-duet-label{font-size:0.875rem}.duet-label-small.sc-duet-label-h label.sc-duet-label span.sc-duet-label{font-size:0.875rem}.duet-theme-turva.sc-duet-label-h label.sc-duet-label{font-family:"turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#171c3a}';export{h as duet_input,m as duet_label}
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import{r as t,h as o,H as e,g as n}from"./p-52feef6c.js";import{i as r}from"./p-4ebf1618.js";const a=class{constructor(o){t(this,o),this.onClick=()=>{this.open=!this.open},this.theme="",this.active=!1,this.open=!1,this.icon=void 0}handleFocus(t){t.composedPath().every((t=>t!==this.element))&&(this.open=!1)}componentWillLoad(){r(this)}render(){let t="right";return this.element&&this.element.parentElement&&(t="left"===this.element.parentElement.getAttribute("slot")?"right":"left"),o(e,null,o("div",{class:{"duet-toolbar-dropdown":!0,"duet-theme-turva":"turva"===this.theme,[t]:!0}},o("button",{"aria-haspopup":"menu","aria-controls":"menu","aria-expanded":this.open?"true":"false",id:"button",type:"button",class:{active:this.active,open:this.open},onClick:this.onClick},this.icon&&o("duet-icon",{name:this.icon,size:"x-small",margin:"none",color:"currentColor"}),o("div",{class:"label"},o("slot",{name:"label"}),o("duet-icon",{class:"caret",name:"action-arrow-down-small",margin:"none",size:"xxx-small",color:"currentColor"}))),o("div",{tabindex:"-1",role:"menu",id:"menu","aria-labelledby":"button",class:{items:!0,hidden:!this.open}},o("slot",null))))}get element(){return n(this)}};a.style='*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;height:100%}.duet-toolbar-dropdown{position:relative;height:100%}.duet-toolbar-dropdown button{position:relative;display:flex;gap:8px;align-items:center;justify-content:center;height:100%;padding:0 16px;font-family:"localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";font-size:0.875rem;font-weight:400;line-height:1.25;color:#004d80;text-align:center;text-decoration:none;cursor:pointer}.duet-toolbar-dropdown button .label{display:flex;gap:0.5rem;align-items:center;justify-content:center}.duet-toolbar-dropdown button:hover{color:#00294d;background:#f3f9fc}.duet-toolbar-dropdown button.open .caret{transform:rotate(180deg)}.duet-toolbar-dropdown button.active,.duet-toolbar-dropdown button.open{color:#00294d}.duet-toolbar-dropdown button.active::after,.duet-toolbar-dropdown button.open::after{position:absolute;top:auto;bottom:1px;left:0;display:block;width:100%;height:1px;content:"";background:#0077b3;transition:300ms ease;transform:translateY(1px)}.duet-toolbar-dropdown .items{position:absolute;top:102%;right:0%;left:auto;z-index:600;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:175px;padding:1rem 0;color:#00294d;background:#f3f9fc;border-radius:0 0 8px 8px;box-shadow:0 6px 6px 0 rgba(0, 41, 77, 0.1)}.duet-toolbar-dropdown .items.hidden{display:none}.duet-toolbar-dropdown.right .items{right:auto;left:0%}.duet-toolbar-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:#940925}.duet-toolbar-dropdown.duet-theme-turva button:hover{color:#171c3a;background:#f5f5f7}.duet-toolbar-dropdown.duet-theme-turva button.active,.duet-toolbar-dropdown.duet-theme-turva button.open{color:#171c3a}.duet-toolbar-dropdown.duet-theme-turva button.active::after,.duet-toolbar-dropdown.duet-theme-turva button.open::after{background:#c60c30}.duet-toolbar-dropdown.duet-theme-turva .items{background:#f5f5f7}';export{a as duet_toolbar_dropdown}