@duetds/components 6.10.3 → 6.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (613) hide show
  1. package/hydrate/index.js +229 -118
  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-banner.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  9. package/lib/cjs/duet-callout.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  12. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-chip.cjs.entry.js +82 -9
  15. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  16. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-contact-card.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  21. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  22. package/lib/cjs/duet-editable-table_3.cjs.entry.js +29 -134
  23. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-grid_2.cjs.entry.js +6 -3
  27. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-icon.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-menu-bar.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  39. package/lib/cjs/duet-multiselect.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-nav.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  42. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-pagination_2.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +4 -2
  46. package/lib/cjs/duet-popup-menu.cjs.entry.js +11 -7
  47. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  48. package/lib/cjs/duet-promo-card.cjs.entry.js +1 -1
  49. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  51. package/lib/cjs/duet-scrollable_3.cjs.entry.js +2 -2
  52. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  53. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  54. package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
  55. package/lib/cjs/duet-show-more.cjs.entry.js +1 -1
  56. package/lib/cjs/duet-slideout-lang.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +1 -1
  59. package/lib/cjs/duet-slideout-panel.cjs.entry.js +2 -2
  60. package/lib/cjs/duet-slideout.cjs.entry.js +2 -2
  61. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  62. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +1 -1
  63. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +1 -1
  65. package/lib/cjs/duet-submenu-bar.cjs.entry.js +1 -1
  66. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  67. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  68. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  69. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
  70. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  71. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  73. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  74. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  75. package/lib/cjs/duet-upload-item.cjs.entry.js +93 -0
  76. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  77. package/lib/cjs/duet.cjs.js +2 -2
  78. package/lib/cjs/errorcodes.utils-5deca818.js +39 -0
  79. package/lib/cjs/{focus-utils-fa8771cc.js → focus-utils-a66763f4.js} +1 -1
  80. package/lib/cjs/{index-ad229c23.js → index-4eb7ce33.js} +1 -1
  81. package/lib/cjs/loader.cjs.js +2 -2
  82. package/lib/collection/collection-manifest.json +2 -1
  83. package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
  84. package/lib/collection/components/duet-alert/duet-alert.js +1 -1
  85. package/lib/collection/components/duet-button/duet-button.js +5 -5
  86. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  87. package/lib/collection/components/duet-card/duet-card.js +3 -3
  88. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  89. package/lib/collection/components/duet-chip/duet-chip.css +38 -10
  90. package/lib/collection/components/duet-chip/duet-chip.js +88 -13
  91. package/lib/collection/components/duet-choice/duet-choice.css +22 -22
  92. package/lib/collection/components/duet-choice/duet-choice.js +3 -3
  93. package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
  94. package/lib/collection/components/duet-combobox/duet-combobox.js +3 -3
  95. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  96. package/lib/collection/components/duet-date-picker/duet-date-picker.js +4 -4
  97. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  98. package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
  99. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  100. package/lib/collection/components/duet-footer/duet-footer.js +7 -7
  101. package/lib/collection/components/duet-grid/duet-grid.css +260 -116
  102. package/lib/collection/components/duet-grid/duet-grid.js +25 -4
  103. package/lib/collection/components/duet-header/duet-header.js +15 -15
  104. package/lib/collection/components/duet-heading/duet-heading.js +1 -1
  105. package/lib/collection/components/duet-hero/duet-hero.js +5 -5
  106. package/lib/collection/components/duet-icon/duet-icon.js +1 -1
  107. package/lib/collection/components/duet-input/duet-input.js +8 -8
  108. package/lib/collection/components/duet-label/duet-label.js +2 -2
  109. package/lib/collection/components/duet-layout/duet-layout.js +1 -1
  110. package/lib/collection/components/duet-list/duet-list.js +3 -3
  111. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  112. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +1 -1
  113. package/lib/collection/components/duet-modal/duet-modal.js +3 -3
  114. package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
  115. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +1 -1
  116. package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
  117. package/lib/collection/components/duet-pagination/duet-pagination.js +2 -2
  118. package/lib/collection/components/duet-paragraph/duet-paragraph.js +3 -3
  119. package/lib/collection/components/duet-popup-menu/duet-popup-menu.css +8 -1
  120. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +49 -5
  121. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +21 -1
  122. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  123. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  124. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
  125. package/lib/collection/components/duet-scrollable/duet-scrollable.css +1 -1
  126. package/lib/collection/components/duet-select/duet-select.js +5 -5
  127. package/lib/collection/components/duet-show-more/duet-show-more.js +1 -1
  128. package/lib/collection/components/duet-slideout/duet-slideout.js +1 -1
  129. package/lib/collection/components/duet-spacer/duet-spacer.js +2 -2
  130. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  131. package/lib/collection/components/duet-step/duet-step.js +2 -2
  132. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  133. package/lib/collection/components/duet-tab-group/duet-tab-group.js +5 -5
  134. package/lib/collection/components/duet-textarea/duet-textarea.js +4 -4
  135. package/lib/collection/components/duet-toggle/duet-toggle.js +1 -1
  136. package/lib/collection/components/duet-tooltip/duet-tooltip.js +1 -1
  137. package/lib/collection/components/duet-upload/duet-upload.js +51 -27
  138. package/lib/collection/components/duet-upload-item/duet-upload-item.js +299 -0
  139. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  140. package/lib/dist-custom-elements/duet-alert.js +1 -1
  141. package/lib/dist-custom-elements/duet-badge.js +1 -1
  142. package/lib/dist-custom-elements/duet-banner.js +4 -4
  143. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  144. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  145. package/lib/dist-custom-elements/duet-button.js +1 -1
  146. package/lib/dist-custom-elements/duet-callout.js +3 -3
  147. package/lib/dist-custom-elements/duet-caption.js +1 -1
  148. package/lib/dist-custom-elements/duet-card.js +3 -3
  149. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  150. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  151. package/lib/dist-custom-elements/duet-chip.js +87 -12
  152. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  153. package/lib/dist-custom-elements/duet-choice.js +6 -6
  154. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  155. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  156. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  157. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  158. package/lib/dist-custom-elements/duet-date-picker.js +10 -10
  159. package/lib/dist-custom-elements/duet-divider.js +1 -1
  160. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  161. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  162. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  163. package/lib/dist-custom-elements/duet-footer.js +4 -4
  164. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  165. package/lib/dist-custom-elements/duet-grid.js +1 -1
  166. package/lib/dist-custom-elements/duet-header.js +8 -8
  167. package/lib/dist-custom-elements/duet-heading.js +1 -1
  168. package/lib/dist-custom-elements/duet-hero.js +9 -9
  169. package/lib/dist-custom-elements/duet-icon.js +1 -1
  170. package/lib/dist-custom-elements/duet-input.js +1 -1
  171. package/lib/dist-custom-elements/duet-label.js +1 -1
  172. package/lib/dist-custom-elements/duet-layout.js +1 -1
  173. package/lib/dist-custom-elements/duet-link.js +1 -1
  174. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  175. package/lib/dist-custom-elements/duet-list.js +1 -1
  176. package/lib/dist-custom-elements/duet-logo.js +1 -1
  177. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  178. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  179. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  180. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  181. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  182. package/lib/dist-custom-elements/duet-modal.js +7 -7
  183. package/lib/dist-custom-elements/duet-multiselect.js +8 -8
  184. package/lib/dist-custom-elements/duet-nav.js +1 -1
  185. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  186. package/lib/dist-custom-elements/duet-notification.js +2 -2
  187. package/lib/dist-custom-elements/duet-number-input.js +9 -9
  188. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  189. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  190. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  191. package/lib/dist-custom-elements/duet-popup-menu-item.js +6 -3
  192. package/lib/dist-custom-elements/duet-popup-menu.js +12 -7
  193. package/lib/dist-custom-elements/duet-progress.js +1 -1
  194. package/lib/dist-custom-elements/duet-promo-card.js +3 -3
  195. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  196. package/lib/dist-custom-elements/duet-radio.js +1 -1
  197. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  198. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  199. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  200. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  201. package/lib/dist-custom-elements/duet-select.js +1 -1
  202. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  203. package/lib/dist-custom-elements/duet-show-more.js +5 -5
  204. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  205. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  206. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  207. package/lib/dist-custom-elements/duet-slideout-panel.js +2 -2
  208. package/lib/dist-custom-elements/duet-slideout.js +2 -2
  209. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  210. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  211. package/lib/dist-custom-elements/duet-step.js +4 -4
  212. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  213. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  214. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  215. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  216. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  217. package/lib/dist-custom-elements/duet-tab-group.js +11 -11
  218. package/lib/dist-custom-elements/duet-tab.js +1 -1
  219. package/lib/dist-custom-elements/duet-table.js +1 -1
  220. package/lib/dist-custom-elements/duet-textarea.js +8 -8
  221. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  222. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  223. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  224. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  225. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  226. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  227. package/lib/dist-custom-elements/duet-tray.js +3 -3
  228. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  229. package/lib/dist-custom-elements/duet-upload-item.d.ts +11 -0
  230. package/lib/dist-custom-elements/duet-upload-item.js +9 -0
  231. package/lib/dist-custom-elements/duet-upload.js +58 -158
  232. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  233. package/lib/dist-custom-elements/index.js +1 -1
  234. package/lib/dist-custom-elements/{p-362cf634.js → p-006d0fb1.js} +2 -2
  235. package/lib/dist-custom-elements/{p-f97098ff.js → p-03297bf3.js} +1 -1
  236. package/lib/dist-custom-elements/{p-ab8093ce.js → p-08f20e44.js} +2 -2
  237. package/lib/dist-custom-elements/{p-0639a930.js → p-0f04ecb5.js} +1 -1
  238. package/lib/dist-custom-elements/{p-9a39285c.js → p-171c70e8.js} +1 -1
  239. package/lib/dist-custom-elements/{p-4524a59b.js → p-1b34adf1.js} +2 -2
  240. package/lib/dist-custom-elements/{p-c9cee36a.js → p-1f14a267.js} +1 -1
  241. package/lib/dist-custom-elements/{p-b0a1fc7a.js → p-226f50bb.js} +1 -1
  242. package/lib/dist-custom-elements/{p-c5723f69.js → p-25d3d458.js} +1 -1
  243. package/lib/dist-custom-elements/{p-e550208a.js → p-25fa826f.js} +1 -1
  244. package/lib/dist-custom-elements/{p-581d4969.js → p-265d42fd.js} +1 -1
  245. package/lib/dist-custom-elements/{p-bd3f4de1.js → p-26a65533.js} +1 -1
  246. package/lib/dist-custom-elements/{p-a76c2c68.js → p-2b8c0c2f.js} +6 -6
  247. package/lib/dist-custom-elements/{p-e6027c0e.js → p-37255027.js} +8 -8
  248. package/lib/dist-custom-elements/{p-abf2f8eb.js → p-3e609785.js} +1 -1
  249. package/lib/dist-custom-elements/{p-fa4af49a.js → p-4c575cf4.js} +3 -3
  250. package/lib/dist-custom-elements/{p-dade840c.js → p-5114f1bd.js} +2 -2
  251. package/lib/dist-custom-elements/{p-9e321809.js → p-5c48ca92.js} +1 -1
  252. package/lib/dist-custom-elements/{p-ddbc4897.js → p-661fee29.js} +6 -6
  253. package/lib/dist-custom-elements/{p-88a1aa29.js → p-7681059e.js} +1 -1
  254. package/lib/dist-custom-elements/{p-c3a8f22f.js → p-7c2e755b.js} +1 -1
  255. package/lib/dist-custom-elements/{p-c221f8d5.js → p-80cd62f8.js} +5 -5
  256. package/lib/dist-custom-elements/p-84a78894.js +187 -0
  257. package/lib/dist-custom-elements/{p-87b42dc0.js → p-8a1632b1.js} +3 -3
  258. package/lib/dist-custom-elements/{p-f4a36471.js → p-a60259d1.js} +1 -1
  259. package/lib/dist-custom-elements/{p-06f56040.js → p-b98f1d2a.js} +1 -1
  260. package/lib/dist-custom-elements/{p-b0e822ad.js → p-c85e7fbd.js} +1 -1
  261. package/lib/dist-custom-elements/{p-8549a5d3.js → p-d5e61aac.js} +1 -1
  262. package/lib/dist-custom-elements/{p-0bab8976.js → p-dbb9df4e.js} +3 -3
  263. package/lib/dist-custom-elements/p-e0afb5aa.js +197 -0
  264. package/lib/dist-custom-elements/{p-1460c5f4.js → p-e467de13.js} +1 -1
  265. package/lib/dist-custom-elements/{p-d993c8ca.js → p-ffc196f5.js} +4 -4
  266. package/lib/duet/duet.esm.js +1 -1
  267. package/lib/duet/duet.js +1 -1
  268. package/lib/duet/{p-a6f4302f.system.entry.js → p-000a0a75.system.entry.js} +1 -1
  269. package/lib/duet/{p-aa1c11b3.system.entry.js → p-00355028.system.entry.js} +1 -1
  270. package/lib/duet/{p-a7774674.system.js → p-053be9dd.system.js} +1 -1
  271. package/lib/duet/p-05dd0fb6.entry.js +4 -0
  272. package/lib/duet/{p-0b208f94.system.entry.js → p-06969947.system.entry.js} +1 -1
  273. package/lib/duet/{p-0c7c6acc.system.entry.js → p-08c7360e.system.entry.js} +1 -1
  274. package/lib/duet/{p-76c68d61.system.entry.js → p-099119d3.system.entry.js} +1 -1
  275. package/lib/duet/{p-855f2712.system.entry.js → p-0b696003.system.entry.js} +1 -1
  276. package/lib/duet/{p-00c61228.system.entry.js → p-101cc3fe.system.entry.js} +1 -1
  277. package/lib/duet/{p-7c81a1aa.system.entry.js → p-110c2c76.system.entry.js} +1 -1
  278. package/lib/duet/{p-f3baf86a.system.entry.js → p-11d01178.system.entry.js} +1 -1
  279. package/lib/duet/{p-0fdddc6d.system.entry.js → p-13fa33f3.system.entry.js} +1 -1
  280. package/lib/duet/{p-984be1b2.system.entry.js → p-1483de5f.system.entry.js} +1 -1
  281. package/lib/duet/{p-c20f14ee.system.entry.js → p-15505723.system.entry.js} +1 -1
  282. package/lib/duet/{p-d95542b2.system.entry.js → p-1616c51d.system.entry.js} +1 -1
  283. package/lib/duet/{p-be64cb47.system.entry.js → p-184ee980.system.entry.js} +1 -1
  284. package/lib/duet/{p-26fb19cc.entry.js → p-19ea4e54.entry.js} +1 -1
  285. package/lib/duet/{p-f1bce38a.system.entry.js → p-1ff16557.system.entry.js} +1 -1
  286. package/lib/duet/{p-26cfed76.system.entry.js → p-20c19d2e.system.entry.js} +1 -1
  287. package/lib/duet/p-26ed5006.system.entry.js +4 -0
  288. package/lib/duet/{p-49f5f27e.entry.js → p-276da9b8.entry.js} +1 -1
  289. package/lib/duet/{p-fca2f60d.system.entry.js → p-28b0deff.system.entry.js} +1 -1
  290. package/lib/duet/{p-3fe319db.entry.js → p-28cf3d78.entry.js} +1 -1
  291. package/lib/duet/{p-ff0c5b5b.system.entry.js → p-2a37e574.system.entry.js} +1 -1
  292. package/lib/duet/{p-7604e184.system.entry.js → p-2a9b8270.system.entry.js} +1 -1
  293. package/lib/duet/{p-45df6b17.entry.js → p-2a9e5e4c.entry.js} +1 -1
  294. package/lib/duet/{p-cd14aa98.system.entry.js → p-2bd98cbe.system.entry.js} +1 -1
  295. package/lib/duet/{p-9781cd5a.entry.js → p-31155f08.entry.js} +1 -1
  296. package/lib/duet/{p-ea0b3f23.entry.js → p-322f69c7.entry.js} +1 -1
  297. package/lib/duet/{p-d309acda.entry.js → p-32d31570.entry.js} +1 -1
  298. package/lib/duet/{p-c8af967c.system.entry.js → p-32ee127a.system.entry.js} +1 -1
  299. package/lib/duet/{p-645d04bc.entry.js → p-35b74797.entry.js} +1 -1
  300. package/lib/duet/{p-8fc58e21.entry.js → p-368e63a8.entry.js} +1 -1
  301. package/lib/duet/{p-7fe4bf9c.system.entry.js → p-380ead38.system.entry.js} +1 -1
  302. package/lib/duet/{p-8a06964b.entry.js → p-38e24930.entry.js} +1 -1
  303. package/lib/duet/{p-77432368.entry.js → p-3b33c459.entry.js} +1 -1
  304. package/lib/duet/{p-9ad4b03e.entry.js → p-3c43d0ee.entry.js} +1 -1
  305. package/lib/duet/{p-74bf128c.system.entry.js → p-40463065.system.entry.js} +1 -1
  306. package/lib/duet/p-434b31e9.system.js +4 -0
  307. package/lib/duet/{p-679721de.system.entry.js → p-45046cb8.system.entry.js} +1 -1
  308. package/lib/duet/{p-d20bc0fc.entry.js → p-4667e5cc.entry.js} +1 -1
  309. package/lib/duet/{p-e664403b.system.entry.js → p-4956fa1c.system.entry.js} +1 -1
  310. package/lib/duet/{p-ab15c9ba.entry.js → p-4af3a90a.entry.js} +1 -1
  311. package/lib/duet/{p-f9191467.entry.js → p-4f321fb8.entry.js} +1 -1
  312. package/lib/duet/{p-29dd2b2b.entry.js → p-4f90dd0a.entry.js} +1 -1
  313. package/lib/duet/{p-7fd5d974.system.entry.js → p-4fc64fe9.system.entry.js} +1 -1
  314. package/lib/duet/{p-e5ff4740.system.entry.js → p-521b2f02.system.entry.js} +1 -1
  315. package/lib/duet/p-540d7ed6.entry.js +4 -0
  316. package/lib/duet/{p-82ebc3a6.system.entry.js → p-549a1ffd.system.entry.js} +1 -1
  317. package/lib/duet/{p-fcc9c563.entry.js → p-5e2af124.entry.js} +1 -1
  318. package/lib/duet/{p-8168ef41.system.entry.js → p-5ed8969b.system.entry.js} +2 -2
  319. package/lib/duet/{p-d837c30c.entry.js → p-604adb3e.entry.js} +1 -1
  320. package/lib/duet/{p-e1470177.system.entry.js → p-60c99082.system.entry.js} +1 -1
  321. package/lib/duet/{p-c838f35a.system.entry.js → p-6508eed1.system.entry.js} +1 -1
  322. package/lib/duet/{p-87ea8cd4.system.entry.js → p-684b2d77.system.entry.js} +1 -1
  323. package/lib/duet/{p-659b9600.system.entry.js → p-6892546a.system.entry.js} +1 -1
  324. package/lib/duet/{p-7b75c66a.system.entry.js → p-699f593c.system.entry.js} +1 -1
  325. package/lib/duet/p-6b115b63.system.js +4 -0
  326. package/lib/duet/{p-e13b266c.system.entry.js → p-6baede6c.system.entry.js} +1 -1
  327. package/lib/duet/{p-07795672.entry.js → p-6bb42603.entry.js} +1 -1
  328. package/lib/duet/{p-e6701508.entry.js → p-6e93b2f3.entry.js} +1 -1
  329. package/lib/duet/{p-0fc4fd1f.entry.js → p-6ee35830.entry.js} +1 -1
  330. package/lib/duet/{p-f01b3bfa.entry.js → p-700cc5d1.entry.js} +1 -1
  331. package/lib/duet/{p-49cbf9cc.entry.js → p-721bf508.entry.js} +1 -1
  332. package/lib/duet/{p-33ace290.system.entry.js → p-7284cb09.system.entry.js} +1 -1
  333. package/lib/duet/{p-d707c91d.entry.js → p-72d18d55.entry.js} +1 -1
  334. package/lib/duet/{p-3d4d7d03.system.entry.js → p-756341c2.system.entry.js} +1 -1
  335. package/lib/duet/{p-65180079.entry.js → p-7565b093.entry.js} +1 -1
  336. package/lib/duet/{p-190e7c1f.system.entry.js → p-773268e7.system.entry.js} +1 -1
  337. package/lib/duet/{p-242c1c1a.entry.js → p-77616680.entry.js} +1 -1
  338. package/lib/duet/{p-61dbdf5a.system.entry.js → p-7a3071a5.system.entry.js} +1 -1
  339. package/lib/duet/{p-c591ed98.system.entry.js → p-7e061e75.system.entry.js} +1 -1
  340. package/lib/duet/{p-6ff2601a.entry.js → p-7f588669.entry.js} +1 -1
  341. package/lib/duet/{p-57ec25ee.entry.js → p-8094e185.entry.js} +1 -1
  342. package/lib/duet/{p-fd760e06.system.entry.js → p-8146f5d7.system.entry.js} +1 -1
  343. package/lib/duet/{p-831c76d5.system.entry.js → p-82330774.system.entry.js} +1 -1
  344. package/lib/duet/{p-18b63745.system.entry.js → p-8275330c.system.entry.js} +1 -1
  345. package/lib/duet/{p-0fe6e2f3.entry.js → p-8445fc10.entry.js} +1 -1
  346. package/lib/duet/{p-f605a26a.system.entry.js → p-8584bcfe.system.entry.js} +1 -1
  347. package/lib/duet/{p-c01a1e38.entry.js → p-86e7a88a.entry.js} +1 -1
  348. package/lib/duet/p-871eca43.entry.js +4 -0
  349. package/lib/duet/{p-bf5e03b7.system.entry.js → p-8862fec1.system.entry.js} +1 -1
  350. package/lib/duet/{p-369190ba.entry.js → p-8cf359d9.entry.js} +1 -1
  351. package/lib/duet/{p-9b4b6a88.system.entry.js → p-8daa915d.system.entry.js} +1 -1
  352. package/lib/duet/{p-38b225ec.system.entry.js → p-8db6114f.system.entry.js} +1 -1
  353. package/lib/duet/p-90f06b7a.system.entry.js +4 -0
  354. package/lib/duet/p-91b3d075.entry.js +4 -0
  355. package/lib/duet/p-9226aca2.entry.js +4 -0
  356. package/lib/duet/{p-bd21ed24.entry.js → p-99a90b30.entry.js} +1 -1
  357. package/lib/duet/{p-346b440a.entry.js → p-9ad6fc83.entry.js} +1 -1
  358. package/lib/duet/p-9e72b23c.system.entry.js +4 -0
  359. package/lib/duet/{p-60210fa0.entry.js → p-9ec0d197.entry.js} +1 -1
  360. package/lib/duet/{p-dcb58b72.system.entry.js → p-a0f76a04.system.entry.js} +1 -1
  361. package/lib/duet/p-a1978b4b.entry.js +4 -0
  362. package/lib/duet/p-a2ddca83.system.entry.js +4 -0
  363. package/lib/duet/{p-e195ff77.entry.js → p-a5cf2316.entry.js} +1 -1
  364. package/lib/duet/{p-a1e03781.entry.js → p-a61825d9.entry.js} +1 -1
  365. package/lib/duet/{p-d1fdf904.entry.js → p-a6696d45.entry.js} +1 -1
  366. package/lib/duet/{p-bb450fde.entry.js → p-a66ca0af.entry.js} +1 -1
  367. package/lib/duet/{p-d90b9d82.entry.js → p-a7ed46e3.entry.js} +1 -1
  368. package/lib/duet/{p-a80b6e7d.entry.js → p-a86ae0c3.entry.js} +1 -1
  369. package/lib/duet/{p-53800205.entry.js → p-ae7602cb.entry.js} +1 -1
  370. package/lib/duet/{p-5590d075.system.entry.js → p-b134229a.system.entry.js} +1 -1
  371. package/lib/duet/p-b362d8f7.entry.js +4 -0
  372. package/lib/duet/{p-2ab30c7f.entry.js → p-b4b5f803.entry.js} +1 -1
  373. package/lib/duet/{p-10d57786.entry.js → p-b594282a.entry.js} +1 -1
  374. package/lib/duet/{p-8d9dc8b8.system.entry.js → p-b650e679.system.entry.js} +1 -1
  375. package/lib/duet/{p-ff814fdc.entry.js → p-b77224fc.entry.js} +1 -1
  376. package/lib/duet/{p-8215e341.system.entry.js → p-b7fe2c37.system.entry.js} +1 -1
  377. package/lib/duet/{p-0b4324b1.system.entry.js → p-bc541e97.system.entry.js} +1 -1
  378. package/lib/duet/{p-0f05038e.system.entry.js → p-be295e13.system.entry.js} +1 -1
  379. package/lib/duet/{p-33e8ba00.entry.js → p-c0874730.entry.js} +1 -1
  380. package/lib/duet/{p-0f49469b.system.entry.js → p-c0c92199.system.entry.js} +1 -1
  381. package/lib/duet/p-c185ea87.system.entry.js +4 -0
  382. package/lib/duet/{p-b6f46697.entry.js → p-c1c6a4f5.entry.js} +1 -1
  383. package/lib/duet/p-c2ff6bb2.entry.js +4 -0
  384. package/lib/duet/{p-bb3ab94b.entry.js → p-c391b2a4.entry.js} +1 -1
  385. package/lib/duet/{p-10d47bb3.entry.js → p-c5efb3f6.entry.js} +1 -1
  386. package/lib/duet/{p-3aebf88e.entry.js → p-c6122404.entry.js} +1 -1
  387. package/lib/duet/p-c6b09397.js +4 -0
  388. package/lib/duet/p-c79f4b4b.entry.js +4 -0
  389. package/lib/duet/{p-e26c92ae.entry.js → p-c9198461.entry.js} +1 -1
  390. package/lib/duet/{p-193d3aaa.system.entry.js → p-ca2725cd.system.entry.js} +1 -1
  391. package/lib/duet/{p-6fafabc4.system.entry.js → p-ca4d7a6d.system.entry.js} +1 -1
  392. package/lib/duet/{p-3ae87f9a.system.entry.js → p-cb4799d1.system.entry.js} +1 -1
  393. package/lib/duet/{p-476bec1d.entry.js → p-ccb08e8c.entry.js} +1 -1
  394. package/lib/duet/p-cf504df5.js +4 -0
  395. package/lib/duet/{p-eaf5b796.entry.js → p-cff11c78.entry.js} +1 -1
  396. package/lib/duet/{p-18084aa4.entry.js → p-d0175269.entry.js} +1 -1
  397. package/lib/duet/{p-639c44ed.system.entry.js → p-d029f8dc.system.entry.js} +1 -1
  398. package/lib/duet/{p-c56f6296.entry.js → p-d42279cd.entry.js} +1 -1
  399. package/lib/duet/{p-6059377c.entry.js → p-d4bc7a19.entry.js} +1 -1
  400. package/lib/duet/{p-e3a868e7.system.entry.js → p-d6dfa7c8.system.entry.js} +1 -1
  401. package/lib/duet/{p-d1308874.entry.js → p-d841291b.entry.js} +1 -1
  402. package/lib/duet/{p-d70c1993.entry.js → p-d988f03a.entry.js} +1 -1
  403. package/lib/duet/{p-5c5dd33e.entry.js → p-da4f4b6c.entry.js} +1 -1
  404. package/lib/duet/{p-6dea5bde.system.js → p-dd1393e3.system.js} +1 -1
  405. package/lib/duet/{p-0de3b52d.system.entry.js → p-dee73c08.system.entry.js} +1 -1
  406. package/lib/duet/{p-5f9fc349.system.entry.js → p-df213a66.system.entry.js} +1 -1
  407. package/lib/duet/{p-ced270b7.system.entry.js → p-e288bb38.system.entry.js} +1 -1
  408. package/lib/duet/{p-e33b158e.entry.js → p-e368e194.entry.js} +1 -1
  409. package/lib/duet/{p-54607ab5.system.entry.js → p-e6315f68.system.entry.js} +1 -1
  410. package/lib/duet/{p-9277a98e.entry.js → p-e79c63b6.entry.js} +1 -1
  411. package/lib/duet/{p-9cec464f.system.entry.js → p-e8d8c7a2.system.entry.js} +1 -1
  412. package/lib/duet/{p-42199e80.entry.js → p-e983ff0c.entry.js} +1 -1
  413. package/lib/duet/{p-000197bb.system.entry.js → p-ec796dfe.system.entry.js} +1 -1
  414. package/lib/duet/{p-fce75de7.entry.js → p-f58832f6.entry.js} +1 -1
  415. package/lib/duet/p-f5b53f2f.system.entry.js +4 -0
  416. package/lib/duet/{p-642a879a.system.entry.js → p-f74e934b.system.entry.js} +1 -1
  417. package/lib/duet/{p-596343b6.system.entry.js → p-f78e3197.system.entry.js} +1 -1
  418. package/lib/duet/{p-2a8ca3eb.entry.js → p-f90e86d3.entry.js} +1 -1
  419. package/lib/duet/p-f9603b0d.entry.js +4 -0
  420. package/lib/duet/{p-bcb2eb05.js → p-fbd0d098.js} +1 -1
  421. package/lib/duet/{p-a9fac1f4.entry.js → p-fd1dcee1.entry.js} +1 -1
  422. package/lib/duet/{p-72a8644b.system.entry.js → p-feaaff49.system.entry.js} +1 -1
  423. package/lib/duet/p-ff5a9358.system.entry.js +4 -0
  424. package/lib/duet/{p-67f35157.entry.js → p-ffa34163.entry.js} +1 -1
  425. package/lib/esm/duet-action-button.entry.js +1 -1
  426. package/lib/esm/duet-alert.entry.js +1 -1
  427. package/lib/esm/duet-badge.entry.js +1 -1
  428. package/lib/esm/duet-banner.entry.js +1 -1
  429. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  430. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  431. package/lib/esm/duet-button_2.entry.js +1 -1
  432. package/lib/esm/duet-callout.entry.js +1 -1
  433. package/lib/esm/duet-caption_4.entry.js +1 -1
  434. package/lib/esm/duet-card.entry.js +1 -1
  435. package/lib/esm/duet-checkbox.entry.js +1 -1
  436. package/lib/esm/duet-checkmark.entry.js +1 -1
  437. package/lib/esm/duet-chip.entry.js +82 -9
  438. package/lib/esm/duet-choice_2.entry.js +3 -3
  439. package/lib/esm/duet-collapsible.entry.js +1 -1
  440. package/lib/esm/duet-combobox.entry.js +1 -1
  441. package/lib/esm/duet-contact-card.entry.js +1 -1
  442. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  443. package/lib/esm/duet-date-picker.entry.js +2 -2
  444. package/lib/esm/duet-divider_2.entry.js +1 -1
  445. package/lib/esm/duet-editable-table_3.entry.js +21 -126
  446. package/lib/esm/duet-empty-state.entry.js +1 -1
  447. package/lib/esm/duet-fieldset.entry.js +1 -1
  448. package/lib/esm/duet-footer.entry.js +1 -1
  449. package/lib/esm/duet-grid_2.entry.js +6 -3
  450. package/lib/esm/duet-header_2.entry.js +1 -1
  451. package/lib/esm/duet-hero.entry.js +1 -1
  452. package/lib/esm/duet-icon.entry.js +1 -1
  453. package/lib/esm/duet-input_2.entry.js +1 -1
  454. package/lib/esm/duet-layout.entry.js +1 -1
  455. package/lib/esm/duet-list_2.entry.js +1 -1
  456. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  457. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  458. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  459. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  460. package/lib/esm/duet-menu-bar.entry.js +1 -1
  461. package/lib/esm/duet-modal.entry.js +2 -2
  462. package/lib/esm/duet-multiselect.entry.js +1 -1
  463. package/lib/esm/duet-nav.entry.js +1 -1
  464. package/lib/esm/duet-notification_2.entry.js +1 -1
  465. package/lib/esm/duet-number-input.entry.js +1 -1
  466. package/lib/esm/duet-page-heading.entry.js +1 -1
  467. package/lib/esm/duet-pagination_2.entry.js +1 -1
  468. package/lib/esm/duet-popup-menu-item.entry.js +4 -2
  469. package/lib/esm/duet-popup-menu.entry.js +11 -7
  470. package/lib/esm/duet-progress.entry.js +1 -1
  471. package/lib/esm/duet-promo-card.entry.js +1 -1
  472. package/lib/esm/duet-radio_2.entry.js +1 -1
  473. package/lib/esm/duet-range-slider.entry.js +1 -1
  474. package/lib/esm/duet-scrollable_3.entry.js +2 -2
  475. package/lib/esm/duet-section-layout.entry.js +1 -1
  476. package/lib/esm/duet-select.entry.js +1 -1
  477. package/lib/esm/duet-shaped-image.entry.js +1 -1
  478. package/lib/esm/duet-show-more.entry.js +1 -1
  479. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  480. package/lib/esm/duet-slideout-link.entry.js +1 -1
  481. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  482. package/lib/esm/duet-slideout-panel.entry.js +2 -2
  483. package/lib/esm/duet-slideout.entry.js +2 -2
  484. package/lib/esm/duet-step_2.entry.js +1 -1
  485. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  486. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  487. package/lib/esm/duet-submenu-bar-link.entry.js +1 -1
  488. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  489. package/lib/esm/duet-textarea.entry.js +1 -1
  490. package/lib/esm/duet-toggle.entry.js +1 -1
  491. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  492. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  493. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  494. package/lib/esm/duet-toolbar.entry.js +1 -1
  495. package/lib/esm/duet-tooltip.entry.js +1 -1
  496. package/lib/esm/duet-tray.entry.js +1 -1
  497. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  498. package/lib/esm/duet-upload-item.entry.js +89 -0
  499. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  500. package/lib/esm/duet.js +3 -3
  501. package/lib/esm/errorcodes.utils-c0c33bce.js +36 -0
  502. package/lib/esm/{focus-utils-20785530.js → focus-utils-e2239371.js} +1 -1
  503. package/lib/esm/{index-dcb8c495.js → index-b67ea1f1.js} +1 -1
  504. package/lib/esm/loader.js +3 -3
  505. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  506. package/lib/esm-es5/duet-alert.entry.js +1 -1
  507. package/lib/esm-es5/duet-badge.entry.js +1 -1
  508. package/lib/esm-es5/duet-banner.entry.js +1 -1
  509. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  510. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  511. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  512. package/lib/esm-es5/duet-callout.entry.js +1 -1
  513. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  514. package/lib/esm-es5/duet-card.entry.js +1 -1
  515. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  516. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  517. package/lib/esm-es5/duet-chip.entry.js +1 -1
  518. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  519. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  520. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  521. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  522. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  523. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  524. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  525. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  526. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  527. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  528. package/lib/esm-es5/duet-footer.entry.js +1 -1
  529. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  530. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  531. package/lib/esm-es5/duet-hero.entry.js +1 -1
  532. package/lib/esm-es5/duet-icon.entry.js +1 -1
  533. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  534. package/lib/esm-es5/duet-layout.entry.js +1 -1
  535. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  536. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  537. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  538. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  539. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  540. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  541. package/lib/esm-es5/duet-modal.entry.js +1 -1
  542. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  543. package/lib/esm-es5/duet-nav.entry.js +1 -1
  544. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  545. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  546. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  547. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  548. package/lib/esm-es5/duet-popup-menu-item.entry.js +1 -1
  549. package/lib/esm-es5/duet-popup-menu.entry.js +2 -2
  550. package/lib/esm-es5/duet-progress.entry.js +1 -1
  551. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  552. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  553. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  554. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  555. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  556. package/lib/esm-es5/duet-select.entry.js +1 -1
  557. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  558. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  559. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  560. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  561. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  562. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  563. package/lib/esm-es5/duet-slideout.entry.js +2 -2
  564. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  565. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  566. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  567. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  568. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  569. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  570. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  571. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  572. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  573. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  574. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  575. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  576. package/lib/esm-es5/duet-tray.entry.js +1 -1
  577. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  578. package/lib/esm-es5/duet-upload-item.entry.js +4 -0
  579. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  580. package/lib/esm-es5/duet.js +1 -1
  581. package/lib/esm-es5/errorcodes.utils-c0c33bce.js +4 -0
  582. package/lib/esm-es5/focus-utils-e2239371.js +4 -0
  583. package/lib/esm-es5/{index-dcb8c495.js → index-b67ea1f1.js} +1 -1
  584. package/lib/esm-es5/loader.js +1 -1
  585. package/lib/types/components/duet-chip/duet-chip.d.ts +16 -2
  586. package/lib/types/components/duet-grid/duet-grid.d.ts +4 -0
  587. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +10 -0
  588. package/lib/types/components/duet-popup-menu-item/duet-popup-menu-item.d.ts +4 -0
  589. package/lib/types/components/duet-upload/duet-upload.d.ts +2 -1
  590. package/lib/types/components/duet-upload-item/duet-upload-item.d.ts +29 -0
  591. package/lib/types/components.d.ts +75 -0
  592. package/package.json +5 -5
  593. package/lib/collection/components/duet-upload/upload-item.js +0 -44
  594. package/lib/dist-custom-elements/p-59964344.js +0 -183
  595. package/lib/duet/p-02a9b697.system.entry.js +0 -4
  596. package/lib/duet/p-1090bfbd.entry.js +0 -4
  597. package/lib/duet/p-17569309.entry.js +0 -4
  598. package/lib/duet/p-1983b903.system.entry.js +0 -4
  599. package/lib/duet/p-2271aa12.entry.js +0 -4
  600. package/lib/duet/p-2f2554c2.entry.js +0 -4
  601. package/lib/duet/p-31a14896.entry.js +0 -4
  602. package/lib/duet/p-4047730e.entry.js +0 -4
  603. package/lib/duet/p-41993ad4.js +0 -4
  604. package/lib/duet/p-4489355c.system.entry.js +0 -4
  605. package/lib/duet/p-4f40525e.system.entry.js +0 -4
  606. package/lib/duet/p-5514488e.entry.js +0 -4
  607. package/lib/duet/p-59570fb7.system.entry.js +0 -4
  608. package/lib/duet/p-5dfc4e72.entry.js +0 -4
  609. package/lib/duet/p-7ce403a2.system.entry.js +0 -4
  610. package/lib/duet/p-f93a2b8c.system.js +0 -4
  611. package/lib/duet/p-fb88df1a.entry.js +0 -4
  612. package/lib/esm-es5/focus-utils-20785530.js +0 -4
  613. package/lib/types/components/duet-upload/upload-item.d.ts +0 -20
package/hydrate/index.js CHANGED
@@ -7615,7 +7615,7 @@ class DuetCheckmark {
7615
7615
  }; }
7616
7616
  }
7617
7617
 
7618
- const duetChipCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-chip,*.sc-duet-chip::after,*.sc-duet-chip::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-chip-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;position:relative;display:inline-block;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}/*!@:host:last-child, :host:last-of-type*/.sc-duet-chip-h:last-child,.sc-duet-chip-h:last-of-type{margin-right:0 !important}/*!@.duet-chip-container*/.duet-chip-container.sc-duet-chip{-webkit-user-select:none;user-select:none;padding:8px 16px 9px !important;position:relative;z-index:100;display:block;width:100%;hyphens:none;line-height:1.1;color:rgb(0, 41, 77) !important;text-align:center;cursor:pointer;background:rgb(255, 255, 255);border-style:solid;border-width:1px;border-radius:8px;transition:background-color 300ms ease, color 300ms ease, border-color 300ms ease, padding 300ms ease}/*!@.duet-chip-container.duet-p-0*/.duet-chip-container.duet-p-0.sc-duet-chip{padding:0 !important}/*!@.duet-chip-container.duet-m-0*/.duet-chip-container.duet-m-0.sc-duet-chip{margin:0 !important}/*!@.duet-chip-container.duet-theme-turva*/.duet-chip-container.duet-theme-turva.sc-duet-chip{color:rgb(23, 28, 58) !important;background:rgb(255, 255, 255);border-color:rgb(23, 28, 58)}/*!@.duet-chip-container.duet-theme-turva:hover*/.duet-chip-container.duet-theme-turva.sc-duet-chip:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}/*!@.duet-chip-container.duet-theme-turva:hover button,\n.duet-chip-container.duet-theme-turva:hover label*/.duet-chip-container.duet-theme-turva.sc-duet-chip:hover button.sc-duet-chip,.duet-chip-container.duet-theme-turva.sc-duet-chip:hover label.sc-duet-chip{color:rgb(23, 28, 58) !important}/*!@.duet-chip-container:hover*/.duet-chip-container.sc-duet-chip:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}/*!@.duet-chip-container:hover button,\n.duet-chip-container:hover label*/.duet-chip-container.sc-duet-chip:hover button.sc-duet-chip,.duet-chip-container.sc-duet-chip:hover label.sc-duet-chip{color:rgb(0, 119, 179) !important}/*!@.duet-chip-container:hover.duet-theme-turva button,\n.duet-chip-container:hover.duet-theme-turva label*/.duet-chip-container.sc-duet-chip:hover.duet-theme-turva button.sc-duet-chip,.duet-chip-container.sc-duet-chip:hover.duet-theme-turva label.sc-duet-chip{color:rgb(198, 12, 48) !important}/*!@.duet-chip-container button,\n.duet-chip-container label*/.duet-chip-container.sc-duet-chip button.sc-duet-chip,.duet-chip-container.sc-duet-chip label.sc-duet-chip{width:100%;height: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:0.875rem;font-weight:600;color:rgb(0, 41, 77) !important;cursor:pointer}/*!@.duet-chip-container button:focus,\n.duet-chip-container label:focus*/.duet-chip-container.sc-duet-chip button.sc-duet-chip:focus,.duet-chip-container.sc-duet-chip label.sc-duet-chip:focus{outline:none}/*!@.duet-chip-container button:hover,\n.duet-chip-container label:hover*/.duet-chip-container.sc-duet-chip button.sc-duet-chip:hover,.duet-chip-container.sc-duet-chip label.sc-duet-chip:hover{color:rgb(0, 119, 179) !important}/*!@.duet-chip-container .duet-chip-icon-container*/.duet-chip-container.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{display:inline-block;padding:0;transition:padding 300ms ease}/*!@.duet-chip-container.duet-chip-has-icon*/.duet-chip-container.duet-chip-has-icon.sc-duet-chip{padding-left:12px !important}/*!@.duet-chip-container.duet-chip-has-icon .duet-chip-icon-container*/.duet-chip-container.duet-chip-has-icon.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{padding-right:8px}/*!@.duet-chip-container duet-icon:not(.check-mark)*/.duet-chip-container.sc-duet-chip duet-icon.sc-duet-chip:not(.check-mark){width:auto;transition:width 300ms ease, transform 300ms ease;transform:scaleX(1)}/*!@.duet-chip-container duet-icon.check-mark*/.duet-chip-container.sc-duet-chip duet-icon.check-mark.sc-duet-chip{width:0;overflow:hidden;transition:width 300ms ease, transform 300ms ease;transform:scaleX(0)}/*!@.duet-chip-container.duet-chip-filter-checked*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip{padding-left:12px !important;background:rgb(230, 242, 248);border-color:rgb(230, 242, 248)}/*!@.duet-chip-container.duet-chip-filter-checked .duet-chip-icon-container*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{padding-right:8px}/*!@.duet-chip-container.duet-chip-filter-checked duet-icon:not(.check-mark)*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip duet-icon.sc-duet-chip:not(.check-mark){width:0;overflow:hidden;transition:width 300ms ease, transform 300ms ease;transform:scaleX(0)}/*!@.duet-chip-container.duet-chip-filter-checked duet-icon.check-mark*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip duet-icon.check-mark.sc-duet-chip{width:auto;transition:width 300ms ease, transform 300ms ease;transform:scaleX(1)}/*!@.duet-chip-container.duet-chip-filter-checked.duet-theme-turva*/.duet-chip-container.duet-chip-filter-checked.duet-theme-turva.sc-duet-chip{background:rgb(245, 245, 247);border-color:rgb(245, 245, 247)}/*!@.duet-chip-container.duet-chip-input*/.duet-chip-container.duet-chip-input.sc-duet-chip{display:inline-flex;padding-right:0 !important}/*!@.duet-chip-container.duet-chip-input .duet-chip-remove-button*/.duet-chip-container.duet-chip-input.sc-duet-chip .duet-chip-remove-button.sc-duet-chip{padding:8px 12px;margin:-8px 0}/*!@:host(.user-is-tabbing) .duet-chip-focus*/.user-is-tabbing.sc-duet-chip-h .duet-chip-focus.sc-duet-chip{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}/*!@:host(.user-is-tabbing) .duet-chip-focus.duet-theme-turva*/.user-is-tabbing.sc-duet-chip-h .duet-chip-focus.duet-theme-turva.sc-duet-chip{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}/*!@.duet-chip-container input*/.duet-chip-container.sc-duet-chip input.sc-duet-chip{position:absolute !important;top:0;left:0;z-index:-1;width:100%;height:100%;cursor:pointer;opacity:0}";
7618
+ const duetChipCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-chip,*.sc-duet-chip::after,*.sc-duet-chip::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-chip-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;position:relative;display:inline-block;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}/*!@:host:last-child, :host:last-of-type*/.sc-duet-chip-h:last-child,.sc-duet-chip-h:last-of-type{margin-right:0 !important}/*!@.duet-chip-container*/.duet-chip-container.sc-duet-chip{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:block;width:100%;hyphens:none;line-height:1.1;color:rgb(0, 41, 77) !important;text-align:center;cursor:pointer;background:rgb(255, 255, 255);border-style:solid;border-width:1px;border-radius:8px;transition:background-color 300ms ease, color 300ms ease, border-color 300ms ease, padding 300ms ease}/*!@.duet-chip-container.duet-p-0*/.duet-chip-container.duet-p-0.sc-duet-chip{padding:0 !important}/*!@.duet-chip-container.duet-m-0*/.duet-chip-container.duet-m-0.sc-duet-chip{margin:0 !important}/*!@.duet-chip-container.duet-theme-turva*/.duet-chip-container.duet-theme-turva.sc-duet-chip{color:rgb(23, 28, 58) !important;background:rgb(255, 255, 255);border-color:rgb(23, 28, 58)}/*!@.duet-chip-container.duet-theme-turva:hover*/.duet-chip-container.duet-theme-turva.sc-duet-chip:hover{color:rgb(198, 12, 48) !important;border-color:rgb(198, 12, 48)}/*!@.duet-chip-container.duet-theme-turva:hover button,\n.duet-chip-container.duet-theme-turva:hover label*/.duet-chip-container.duet-theme-turva.sc-duet-chip:hover button.sc-duet-chip,.duet-chip-container.duet-theme-turva.sc-duet-chip:hover label.sc-duet-chip{color:rgb(23, 28, 58) !important}/*!@.duet-chip-container:hover*/.duet-chip-container.sc-duet-chip:hover{color:rgb(0, 119, 179) !important;border-color:rgb(0, 119, 179)}/*!@.duet-chip-container:hover button,\n.duet-chip-container:hover label*/.duet-chip-container.sc-duet-chip:hover button.sc-duet-chip,.duet-chip-container.sc-duet-chip:hover label.sc-duet-chip{color:rgb(0, 119, 179) !important}/*!@.duet-chip-container:hover.duet-theme-turva button,\n.duet-chip-container:hover.duet-theme-turva label*/.duet-chip-container.sc-duet-chip:hover.duet-theme-turva button.sc-duet-chip,.duet-chip-container.sc-duet-chip:hover.duet-theme-turva label.sc-duet-chip{color:rgb(198, 12, 48) !important}/*!@.duet-chip-container button,\n.duet-chip-container label*/.duet-chip-container.sc-duet-chip button.sc-duet-chip,.duet-chip-container.sc-duet-chip label.sc-duet-chip{display:flex;align-items:center;width:100%;height:100%;padding:7px 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:600;color:rgb(0, 41, 77) !important;cursor:pointer}/*!@.duet-chip-container button:focus,\n.duet-chip-container label:focus*/.duet-chip-container.sc-duet-chip button.sc-duet-chip:focus,.duet-chip-container.sc-duet-chip label.sc-duet-chip:focus{outline:none}/*!@.duet-chip-container button:hover,\n.duet-chip-container label:hover*/.duet-chip-container.sc-duet-chip button.sc-duet-chip:hover,.duet-chip-container.sc-duet-chip label.sc-duet-chip:hover{color:rgb(0, 119, 179) !important}/*!@.duet-chip-container .duet-chip-icon-container*/.duet-chip-container.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{display:flex;align-items:center;height:16px;padding:0;transition:padding 300ms ease}/*!@.duet-chip-container.duet-chip-has-icon .duet-chip-icon-container*/.duet-chip-container.duet-chip-has-icon.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{width:24px;height:16px;padding-right:8px}/*!@.duet-chip-container.duet-chip-has-icon.duet-chip-filter-checked .duet-chip-icon-container*/.duet-chip-container.duet-chip-has-icon.duet-chip-filter-checked.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{padding-right:11px;padding-left:3px}/*!@.duet-chip-container duet-icon:not(.check-mark)*/.duet-chip-container.sc-duet-chip duet-icon.sc-duet-chip:not(.check-mark){width:auto;transition:width 300ms ease, transform 300ms ease;transform:scaleX(1)}/*!@.duet-chip-container duet-icon.check-mark*/.duet-chip-container.sc-duet-chip duet-icon.check-mark.sc-duet-chip{width:0;overflow:hidden;transition:width 300ms ease, transform 300ms ease;transform:scaleX(0)}/*!@.duet-chip-container.duet-chip-filter-checked*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip{background:rgb(230, 242, 248);border-color:rgb(230, 242, 248)}/*!@.duet-chip-container.duet-chip-filter-checked .duet-chip-icon-container*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip .duet-chip-icon-container.sc-duet-chip{padding-right:8px}/*!@.duet-chip-container.duet-chip-filter-checked .duet-chip-icon-container duet-icon:not(.check-mark)*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip .duet-chip-icon-container.sc-duet-chip duet-icon.sc-duet-chip:not(.check-mark){width:0;overflow:hidden;transition:width 300ms ease, transform 300ms ease;transform:scaleX(0)}/*!@.duet-chip-container.duet-chip-filter-checked .duet-chip-icon-container duet-icon.check-mark*/.duet-chip-container.duet-chip-filter-checked.sc-duet-chip .duet-chip-icon-container.sc-duet-chip duet-icon.check-mark.sc-duet-chip{width:auto;transition:width 300ms ease, transform 300ms ease;transform:scaleX(1)}/*!@.duet-chip-container.duet-chip-filter-checked.duet-theme-turva*/.duet-chip-container.duet-chip-filter-checked.duet-theme-turva.sc-duet-chip{background:rgb(245, 245, 247);border-color:rgb(245, 245, 247)}/*!@.duet-chip-container div.duet-chip-popup-disclosure*/.duet-chip-container.sc-duet-chip div.duet-chip-popup-disclosure.sc-duet-chip{padding-left:8px}/*!@.duet-chip-container div.duet-chip-popup-disclosure duet-icon*/.duet-chip-container.sc-duet-chip div.duet-chip-popup-disclosure.sc-duet-chip duet-icon.sc-duet-chip{transition:transform 300ms ease}/*!@.duet-chip-container.duet-chip-filter-popup-open*/.duet-chip-container.duet-chip-filter-popup-open.sc-duet-chip{background:rgb(243, 249, 252);border-color:rgb(243, 249, 252)}/*!@.duet-chip-container.duet-chip-filter-popup-open.duet-theme-turva*/.duet-chip-container.duet-chip-filter-popup-open.duet-theme-turva.sc-duet-chip{background:rgb(245, 245, 247);border-color:rgb(245, 245, 247)}/*!@.duet-chip-container.duet-chip-filter-popup-open .duet-chip-popup-disclosure duet-icon*/.duet-chip-container.duet-chip-filter-popup-open.sc-duet-chip .duet-chip-popup-disclosure.sc-duet-chip duet-icon.sc-duet-chip{transform:rotate(180deg)}/*!@.duet-chip-container.duet-chip-input*/.duet-chip-container.duet-chip-input.sc-duet-chip{display:flex;align-items:center;padding-right:0 !important}/*!@.duet-chip-container.duet-chip-input .duet-chip-input-button*/.duet-chip-container.duet-chip-input.sc-duet-chip .duet-chip-input-button.sc-duet-chip{flex-grow:1}/*!@.duet-chip-container.duet-chip-input .duet-chip-remove-button*/.duet-chip-container.duet-chip-input.sc-duet-chip .duet-chip-remove-button.sc-duet-chip{width:26px;padding:8px 16px 8px 0;margin:-8px 0}/*!@:host(.user-is-tabbing) .duet-chip-focus*/.user-is-tabbing.sc-duet-chip-h .duet-chip-focus.sc-duet-chip{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}/*!@:host(.user-is-tabbing) .duet-chip-focus.duet-theme-turva*/.user-is-tabbing.sc-duet-chip-h .duet-chip-focus.duet-theme-turva.sc-duet-chip{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}/*!@.duet-chip-container input*/.duet-chip-container.sc-duet-chip input.sc-duet-chip{position:absolute !important;top:0;left:0;z-index:-1;width:100%;height:100%;cursor:pointer;opacity:0}";
7619
7619
 
7620
7620
  class DuetChip {
7621
7621
  constructor(hostRef) {
@@ -7627,6 +7627,55 @@ class DuetChip {
7627
7627
  * Own Properties.
7628
7628
  */
7629
7629
  this.chipId = createID("DuetChip");
7630
+ this.popupSetUp = () => {
7631
+ const popup = this.element.querySelector("duet-popup-menu");
7632
+ if (popup) {
7633
+ this.popup = popup;
7634
+ popup.controller = this.element;
7635
+ const labelSpan = this.element.querySelector("span");
7636
+ const originalText = labelSpan.textContent;
7637
+ const originalValue = this.value;
7638
+ if (!popup.id) {
7639
+ popup.id = "popup-menu";
7640
+ }
7641
+ popup.addEventListener("duetToggle", (evt) => {
7642
+ this.popupOpen = evt.detail.open;
7643
+ });
7644
+ const clearActive = () => {
7645
+ popup.querySelectorAll("duet-popup-menu-item").forEach(item => {
7646
+ item.active = false;
7647
+ });
7648
+ };
7649
+ popup.querySelectorAll("duet-popup-menu-item").forEach(item => {
7650
+ item.addEventListener("click", evt => {
7651
+ var _a;
7652
+ const value = (_a = item.value) !== null && _a !== void 0 ? _a : item.innerText;
7653
+ if (!item.active) {
7654
+ clearActive();
7655
+ item.active = true;
7656
+ labelSpan.textContent = item.innerText;
7657
+ this.value = value;
7658
+ this.checked = true;
7659
+ }
7660
+ else {
7661
+ clearActive();
7662
+ labelSpan.textContent = originalText;
7663
+ this.value = originalValue;
7664
+ this.checked = false;
7665
+ }
7666
+ this.emitChange(evt);
7667
+ // A workaround to the difference of event handling between the browers.
7668
+ // Chrome will emit a separate click event on the chip after the popup is closed, resulting popup.toggle() to
7669
+ // open the popup again. Firefox does not have this behavior.
7670
+ setTimeout(() => {
7671
+ if (this.popup.isOpen()) {
7672
+ this.popup.hide();
7673
+ }
7674
+ });
7675
+ });
7676
+ });
7677
+ }
7678
+ };
7630
7679
  /**
7631
7680
  * Component event handling.
7632
7681
  */
@@ -7648,21 +7697,42 @@ class DuetChip {
7648
7697
  component: "duet-chip",
7649
7698
  });
7650
7699
  };
7651
- this.toggleChecked = (ev) => {
7652
- this.checked = !this.checked;
7700
+ this.emitChange = originalEvent => {
7653
7701
  this.duetChange.emit({
7654
- originalEvent: ev,
7702
+ originalEvent,
7655
7703
  checked: this.checked,
7656
7704
  value: this.value,
7657
7705
  component: "duet-chip",
7658
7706
  });
7659
7707
  };
7660
- this.remove = (ev) => {
7661
- ev.stopPropagation();
7662
- ev.preventDefault();
7708
+ /**
7709
+ * Change checked state and emit duetChange event.
7710
+ */
7711
+ this.onFilterChange = (evt) => {
7712
+ this.checked = !this.checked;
7713
+ this.emitChange(evt);
7714
+ };
7715
+ /**
7716
+ * Stop propagation and prevent default if popup is present, as the popup controls value and checked state.
7717
+ */
7718
+ this.onFilterClick = (evt) => {
7719
+ if (this.popup) {
7720
+ evt.stopPropagation();
7721
+ evt.preventDefault();
7722
+ this.popup.toggle();
7723
+ }
7724
+ };
7725
+ /**
7726
+ * Remove input chip
7727
+ */
7728
+ this.onRemoveClick = (evt) => {
7729
+ evt.stopPropagation();
7730
+ evt.preventDefault();
7663
7731
  this.element.remove();
7664
7732
  };
7665
7733
  this.focus = false;
7734
+ this.popup = undefined;
7735
+ this.popupOpen = undefined;
7666
7736
  this.accessibleLabel = undefined;
7667
7737
  this.variation = "button";
7668
7738
  this.icon = "";
@@ -7677,8 +7747,10 @@ class DuetChip {
7677
7747
  */
7678
7748
  componentWillLoad() {
7679
7749
  inheritGlobalTheme(this);
7750
+ this.popupSetUp();
7680
7751
  }
7681
7752
  render() {
7753
+ var _a;
7682
7754
  const identifier = this.identifier || this.chipId;
7683
7755
  const classes = {
7684
7756
  "duet-chip-container": true,
@@ -7687,12 +7759,13 @@ class DuetChip {
7687
7759
  "duet-chip-has-icon": !!this.icon,
7688
7760
  "duet-theme-turva": this.theme === "turva",
7689
7761
  "duet-chip-filter-checked": this.variation === "filter" && this.checked,
7762
+ "duet-chip-filter-popup-open": this.popupOpen,
7690
7763
  };
7691
7764
  const focusHandlers = {
7692
7765
  onFocus: this.onFocus,
7693
7766
  onBlur: this.onBlur,
7694
7767
  };
7695
- return (hAsync(Host, null, this.variation === "button" && (hAsync("div", { class: classes }, hAsync("button", Object.assign({ id: identifier, "aria-label": this.accessibleLabel }, focusHandlers), hAsync("div", { class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { name: this.icon, size: "xx-small", margin: "none", color: "currentColor" }))), hAsync("slot", null)))), this.variation === "input" && (hAsync("div", { class: classes }, hAsync("button", Object.assign({ id: identifier, "aria-label": this.accessibleLabel }, focusHandlers), hAsync("div", { class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { name: this.icon, size: "xx-small", margin: "none", color: "currentColor" }))), hAsync("slot", null)), hAsync("button", { class: "duet-chip-remove-button", onClick: this.remove }, hAsync("duet-icon", { name: "activity-close", size: "xx-small", margin: "none", color: "currentColor" })))), this.variation === "filter" && (hAsync("div", { class: classes }, hAsync("input", Object.assign({ id: identifier, type: "checkbox", name: this.name, value: this.value, checked: this.checked, onChange: this.toggleChecked }, focusHandlers)), hAsync("label", { htmlFor: identifier }, hAsync("div", { class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { name: this.icon, size: "xx-small", margin: "none", color: "currentColor" })), hAsync("duet-icon", { name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor", class: "check-mark" })), hAsync("slot", null))))));
7768
+ return (hAsync(Host, null, this.variation === "button" && (hAsync("div", { class: classes }, hAsync("button", Object.assign({ id: identifier, "aria-label": this.accessibleLabel }, focusHandlers), hAsync("div", { class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { name: this.icon, size: "x-small", margin: "none", color: "currentColor" }))), hAsync("slot", null)))), this.variation === "input" && (hAsync("div", { class: classes }, hAsync("button", Object.assign({ id: identifier, class: "duet-chip-input-button", "aria-label": this.accessibleLabel }, focusHandlers), hAsync("div", { class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { name: this.icon, size: "x-small", margin: "none", color: "currentColor" }))), hAsync("slot", null)), hAsync("button", { class: "duet-chip-remove-button", onClick: this.onRemoveClick }, hAsync("duet-icon", { name: "activity-close", size: "xx-small", margin: "none", color: "currentColor" })))), this.variation === "filter" && (hAsync("div", { class: classes }, hAsync("input", Object.assign({ "aria-haspopup": this.popup && "menu", "aria-controls": (_a = this.popup) === null || _a === void 0 ? void 0 : _a.id, "aria-expanded": this.popup ? (this.popupOpen ? "true" : "false") : undefined, id: identifier, type: "checkbox", name: this.name, value: this.value, checked: this.checked, onClick: this.onFilterClick, onChange: this.onFilterChange }, focusHandlers)), hAsync("label", { htmlFor: identifier }, hAsync("div", { class: "duet-chip-icon-container" }, this.icon && (hAsync("duet-icon", { name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("duet-icon", { name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor", class: "check-mark" })), hAsync("slot", null), this.popup && (hAsync("div", { class: "duet-chip-popup-disclosure" }, hAsync("duet-icon", { name: "action-arrow-down-small", size: "xx-small", margin: "none", color: "currentColor" }))))))));
7696
7769
  }
7697
7770
  get element() { return getElement(this); }
7698
7771
  static get style() { return duetChipCss; }
@@ -7705,10 +7778,12 @@ class DuetChip {
7705
7778
  "icon": [1],
7706
7779
  "theme": [1025],
7707
7780
  "identifier": [1],
7708
- "value": [1],
7781
+ "value": [1025],
7709
7782
  "name": [1],
7710
7783
  "checked": [1540],
7711
- "focus": [32]
7784
+ "focus": [32],
7785
+ "popup": [32],
7786
+ "popupOpen": [32]
7712
7787
  },
7713
7788
  "$listeners$": undefined,
7714
7789
  "$lazyBundleId$": "-",
@@ -7730,7 +7805,7 @@ const FocusGuard = ({ moveFocusTo }) => {
7730
7805
  return hAsync("div", { class: "duet-focus-guard", "aria-hidden": "true", tabIndex: 0, onFocus: () => focusElement(moveFocusTo) });
7731
7806
  };
7732
7807
 
7733
- const duetChoiceCss = "*.sc-duet-choice,*.sc-duet-choice::after,*.sc-duet-choice::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-choice-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;flex-direction:column;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-choice-h:last-child,.sc-duet-choice-h:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){.sc-duet-choice-h{width:100%}}.duet-expand.sc-duet-choice-h{width:100% !important}.duet-m-0.sc-duet-choice-h{margin:0 !important}.duet-fixed.sc-duet-choice-h{width:auto !important}.vertical.sc-duet-choice-h{margin-right:0 !important}@media (min-width: 48em){.horizontal.sc-duet-choice-h{margin-bottom:0 !important}}@media (min-width: 48em){.horizontal-responsive.sc-duet-choice-h{margin-bottom:0 !important;margin-right:16px !important}.horizontal-responsive.sc-duet-choice-h:last-child,.horizontal-responsive.sc-duet-choice-h:last-of-type{margin-right:0 !important}}.sc-duet-choice-h:last-child:not(:only-child){margin-right:0 !important}.duet-choice-card.sc-duet-choice{position:relative;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:400;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:rgb(0, 41, 77) !important;text-align:left;background:rgb(255, 255, 255);border-width:2px}.duet-choice-card.duet-p-0.sc-duet-choice{padding:0 !important}.duet-choice-card.duet-m-0.sc-duet-choice{margin:0 !important}.duet-theme-turva.sc-duet-choice .duet-choice-card.sc-duet-choice{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58) !important}.duet-choice-card-flextainer.sc-duet-choice{display:flex}.duet-choice-label.sc-duet-choice{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:flex;gap:1rem;align-items:center;justify-content:flex-start;width:100%;height:100%;min-height:3.875rem;padding:1rem;font-size:1rem;font-weight:600;text-decoration:none;word-break:break-word;cursor:pointer;border:2px solid rgb(225, 227, 230);border-radius:4px;transition:background-color 150ms ease}.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-icon.sc-duet-choice,.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-text.sc-duet-choice{align-self:flex-start;margin-top:0.25rem}.duet-choice-label.sc-duet-choice>div.sc-duet-choice:last-child{flex:1;align-self:flex-start;justify-self:flex-end;margin-top:0.25rem}.has-info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-top-right-radius:0;border-bottom-right-radius:0}.info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-bottom-right-radius:0;border-bottom-left-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-theme-turva.sc-duet-choice .info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-label.sc-duet-choice:active{opacity:0.75;transition:none !important}.checked.sc-duet-choice .duet-choice-label.sc-duet-choice{color:rgb(0, 119, 179) !important;background:rgb(243, 249, 252);border-color:rgb(0, 119, 179) !important}.checked.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice .duet-choice-label.sc-duet-choice{color:rgb(23, 28, 58) !important;background:rgb(245, 245, 247);border-color:rgb(23, 28, 58) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(198, 12, 48)}.checked.collapsible.sc-duet-choice .duet-choice-label.sc-duet-choice,.collapsible-force-expanded.collapsible.sc-duet-choice .duet-choice-label.sc-duet-choice{padding-bottom:calc(1rem + 2px);border-bottom:0 !important;border-bottom-right-radius:0;border-bottom-left-radius:0}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.duet-theme-turva .info .sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}input.sc-duet-choice:focus{outline:0}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3)}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2)}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(101, 119, 135) !important;cursor:default !important;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(101, 119, 135) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:hover,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:active,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:focus{box-shadow:none !important;opacity:1 !important;transition:none !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(116, 116, 117) !important;background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(116, 116, 117) !important}.checked.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(225, 227, 230) !important;border-color:rgb(225, 227, 230) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(228, 228, 230) !important;border-color:rgb(228, 228, 230) !important}.duet-checkmark-container.sc-duet-choice{position:relative;width:20px;height:20px;margin-left:auto;border:1px solid rgb(144, 149, 153);border-radius:4px;transition:border 300ms ease}.duet-theme-turva.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.checked.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(0, 119, 179);border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58) !important}.duet-checkmark-container.duet-checkmark-radio.sc-duet-choice{border-radius:50%}[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice [disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 207, 209) !important}.checked.sc-duet-choice [disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice [disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 207, 209) !important}.duet-checkmark.sc-duet-choice{position:absolute;top:10px;left:3px;width:5.3333333333px;height:11.8518518519px;border-top:2px solid rgb(255, 255, 255);border-right:2px solid rgb(255, 255, 255);opacity:1;transform:scaleX(-1) rotate(135deg) translateZ(0);transform-origin:left top;animation-name:duet-checkmark;animation-duration:600ms;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes duet-checkmark{0%{width:0;height:0;opacity:1}20%{width:5.3333333333px;height:0;opacity:1}40%,100%{width:5.3333333333px;height:11.8518518519px;opacity:1}}.duet-choice-card-icon.sc-duet-choice{position:relative}.duet-choice-card-icon.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-section-hidden.sc-duet-choice{display:none}.duet-choice-card-info.duet-choice-card-collapsed.sc-duet-choice,.duet-choice-card-collapsed.duet-choice-card-collapsible.sc-duet-choice{position:relative;width:auto;padding:0 !important;background:unset !important;border:0;border-radius:0}.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:20px !important;position:relative;width:100%;font-weight:400;color:rgb(0, 41, 77);border:2px solid rgb(225, 227, 230);border-top:0;border-radius:0 0 4px 4px}@media (min-width: 36em){.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:28px !important}}.duet-theme-turva.sc-duet-choice .duet-choice-card-info.sc-duet-choice,.duet-theme-turva.sc-duet-choice .duet-choice-card-collapsible.sc-duet-choice{color:rgb(23, 28, 58);border-color:rgb(23, 28, 58)}.checked.sc-duet-choice .duet-choice-card-info.sc-duet-choice,.checked.sc-duet-choice .duet-choice-card-collapsible.sc-duet-choice{display:block}.duet-choice-card-info-expanded.sc-duet-choice,.duet-choice-card-collapsible-expanded.sc-duet-choice{display:block}.duet-choice-card-collapsible.sc-duet-choice{background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-top:0}.duet-choice-card-collapsible.duet-theme-turva.sc-duet-choice{background:rgb(255, 255, 255);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible.checked.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-choice-card-collapsible.checked.duet-theme-turva.sc-duet-choice{border-color:rgb(23, 28, 58)}.duet-choice-card-collapsible-disabled.sc-duet-choice{background:rgb(245, 248, 250);border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.checked.sc-duet-choice{border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.checked.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-card-info.sc-duet-choice{font-size:0.875rem;line-height:1.5;background:rgb(245, 248, 250);transition:150ms ease-out}.duet-choice-card-info.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-choice-info-toggle.sc-duet-choice{display:flex;flex-shrink:0;align-items:flex-start;justify-content:center;width:57.6px;padding-top:1.25rem;cursor:pointer;background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-left:0 none;border-top-right-radius:4px;border-bottom-right-radius:4px;-webkit-appearance:none;appearance:none}.duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 248, 250);border-bottom-color:transparent;border-bottom-right-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 245, 247)}.duet-choice-info-toggle[disabled].sc-duet-choice{pointer-events:none;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}.duet-choice-info-toggle[disabled].sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(144, 149, 153) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(116, 116, 117) !important}.duet-choice-info-toggle.sc-duet-choice:focus{outline:none}.user-is-tabbing.sc-duet-choice-h .duet-choice-info-toggle.sc-duet-choice:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.checked.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(0, 119, 179) !important}.duet-choice-info-toggle.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(198, 12, 48)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(116, 116, 117)}.duet-choice-input.sc-duet-choice{position:absolute !important;width:100%;height:100%;opacity:0}";
7808
+ const duetChoiceCss = "*.sc-duet-choice,*.sc-duet-choice::after,*.sc-duet-choice::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-choice-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;flex-direction:column;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-choice-h:last-child,.sc-duet-choice-h:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){.sc-duet-choice-h{width:100%}}.duet-expand.sc-duet-choice-h{width:100% !important}.duet-m-0.sc-duet-choice-h{margin:0 !important}.duet-fixed.sc-duet-choice-h{width:auto !important}.vertical.sc-duet-choice-h{margin-right:0 !important}@media (min-width: 48em){.horizontal.sc-duet-choice-h{margin-bottom:0 !important}}@media (min-width: 48em){.horizontal-responsive.sc-duet-choice-h{margin-bottom:0 !important;margin-right:16px !important}.horizontal-responsive.sc-duet-choice-h:last-child,.horizontal-responsive.sc-duet-choice-h:last-of-type{margin-right:0 !important}}.sc-duet-choice-h:last-child:not(:only-child){margin-right:0 !important}.duet-choice-card.sc-duet-choice{position:relative;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:400;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:rgb(0, 41, 77) !important;text-align:left;background:rgb(255, 255, 255);border-width:2px}.duet-choice-card.duet-p-0.sc-duet-choice{padding:0 !important}.duet-choice-card.duet-m-0.sc-duet-choice{margin:0 !important}.duet-theme-turva.sc-duet-choice .duet-choice-card.sc-duet-choice{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58) !important}.duet-choice-card-flextainer.sc-duet-choice{display:flex}.duet-choice-label.sc-duet-choice{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:flex;gap:1rem;align-items:center;justify-content:flex-start;width:100%;height:100%;min-height:3.875rem;padding:1rem;font-size:1rem;font-weight:600;text-decoration:none;word-break:break-word;cursor:pointer;border:2px solid rgb(225, 227, 230);border-radius:4px;transition:background-color 150ms ease}.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-icon.sc-duet-choice,.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-text.sc-duet-choice{align-self:flex-start;margin-top:0.25rem}.duet-choice-label.sc-duet-choice>div.sc-duet-choice:last-child{flex:1;align-self:flex-start;justify-self:flex-end;margin-top:0.25rem}.has-info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-top-right-radius:0;border-bottom-right-radius:0}.info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-bottom-right-radius:0;border-bottom-left-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-theme-turva.sc-duet-choice .info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-label.sc-duet-choice:active{opacity:0.75;transition:none !important}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice{color:rgb(0, 119, 179) !important;background:rgb(243, 249, 252);border-color:rgb(0, 119, 179) !important}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice{color:rgb(23, 28, 58) !important;background:rgb(245, 245, 247);border-color:rgb(23, 28, 58) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(198, 12, 48)}.checked.collapsible.sc-duet-choice>.duet-choice-label.sc-duet-choice,.collapsible-force-expanded.collapsible.sc-duet-choice>.duet-choice-label.sc-duet-choice{padding-bottom:calc(1rem + 2px);border-bottom:0 !important;border-bottom-right-radius:0;border-bottom-left-radius:0}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.duet-theme-turva .info .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}input.sc-duet-choice:focus{outline:0}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3)}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2)}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58)}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(101, 119, 135) !important;cursor:default !important;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(101, 119, 135) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:hover,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:active,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:focus{box-shadow:none !important;opacity:1 !important;transition:none !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(116, 116, 117) !important;background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(116, 116, 117) !important}.checked.sc-duet-choice>input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(225, 227, 230) !important;border-color:rgb(225, 227, 230) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(228, 228, 230) !important;border-color:rgb(228, 228, 230) !important}.duet-checkmark-container.sc-duet-choice{position:relative;width:20px;height:20px;margin-left:auto;border:1px solid rgb(144, 149, 153);border-radius:4px;transition:border 300ms ease}.duet-theme-turva.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(0, 119, 179);border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58) !important}.duet-checkmark-container.duet-checkmark-radio.sc-duet-choice{border-radius:50%}[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice [disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 207, 209) !important}.checked.sc-duet-choice>[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 207, 209) !important}.duet-checkmark.sc-duet-choice{position:absolute;top:10px;left:3px;width:5.3333333333px;height:11.8518518519px;border-top:2px solid rgb(255, 255, 255);border-right:2px solid rgb(255, 255, 255);opacity:1;transform:scaleX(-1) rotate(135deg) translateZ(0);transform-origin:left top;animation-name:duet-checkmark;animation-duration:600ms;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes duet-checkmark{0%{width:0;height:0;opacity:1}20%{width:5.3333333333px;height:0;opacity:1}40%,100%{width:5.3333333333px;height:11.8518518519px;opacity:1}}.duet-choice-card-icon.sc-duet-choice{position:relative}.duet-choice-card-icon.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-section-hidden.sc-duet-choice{display:none}.duet-choice-card-info.duet-choice-card-collapsed.sc-duet-choice,.duet-choice-card-collapsed.duet-choice-card-collapsible.sc-duet-choice{position:relative;width:auto;padding:0 !important;background:unset !important;border:0;border-radius:0}.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:20px !important;position:relative;width:100%;font-weight:400;color:rgb(0, 41, 77);border:2px solid rgb(225, 227, 230);border-top:0;border-radius:0 0 4px 4px}@media (min-width: 36em){.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:28px !important}}.duet-theme-turva.sc-duet-choice .duet-choice-card-info.sc-duet-choice,.duet-theme-turva.sc-duet-choice .duet-choice-card-collapsible.sc-duet-choice{color:rgb(23, 28, 58);border-color:rgb(23, 28, 58)}.checked.sc-duet-choice>.duet-choice-card-info.sc-duet-choice,.checked.sc-duet-choice>.duet-choice-card-collapsible.sc-duet-choice{display:block}.duet-choice-card-info-expanded.sc-duet-choice,.duet-choice-card-collapsible-expanded.sc-duet-choice{display:block}.duet-choice-card-collapsible.sc-duet-choice{background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-top:0}.duet-choice-card-collapsible.duet-theme-turva.sc-duet-choice{background:rgb(255, 255, 255);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible.checked.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-choice-card-collapsible.checked.duet-theme-turva.sc-duet-choice{border-color:rgb(23, 28, 58)}.duet-choice-card-collapsible-disabled.sc-duet-choice{background:rgb(245, 248, 250);border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.checked.sc-duet-choice{border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.checked.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-card-info.sc-duet-choice{font-size:0.875rem;line-height:1.5;background:rgb(245, 248, 250);transition:150ms ease-out}.duet-choice-card-info.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-choice-info-toggle.sc-duet-choice{display:flex;flex-shrink:0;align-items:flex-start;justify-content:center;width:57.6px;padding-top:1.25rem;cursor:pointer;background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-left:0 none;border-top-right-radius:4px;border-bottom-right-radius:4px;-webkit-appearance:none;appearance:none}.duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 248, 250);border-bottom-color:transparent;border-bottom-right-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 245, 247)}.duet-choice-info-toggle[disabled].sc-duet-choice{pointer-events:none;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}.duet-choice-info-toggle[disabled].sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(144, 149, 153) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(116, 116, 117) !important}.duet-choice-info-toggle.sc-duet-choice:focus{outline:none}.user-is-tabbing.sc-duet-choice-h .duet-choice-info-toggle.sc-duet-choice:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179)}.checked.sc-duet-choice+.duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(0, 119, 179) !important}.duet-choice-info-toggle.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(198, 12, 48)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(116, 116, 117)}.duet-choice-input.sc-duet-choice{position:absolute !important;width:100%;height:100%;opacity:0}";
7734
7809
 
7735
7810
  /**
7736
7811
  * @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
@@ -10656,7 +10731,7 @@ class DuetFooter {
10656
10731
  }; }
10657
10732
  }
10658
10733
 
10659
- const duetGridCss = ".sc-duet-grid-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;width:100%;max-width:100%;height:auto}.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:row !important}.duet-grid-breakpoint-x-small.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}@media (max-width: 22.5em){.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}}@media (min-width: 36em){.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:row !important}.duet-grid-breakpoint-small.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 48em){.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:row !important}.duet-grid-breakpoint-medium.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 62em){.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:row !important}.duet-grid-breakpoint-large.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 64.0625em){.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:row !important}.duet-grid-breakpoint-x-large.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}.duet-grid-wrap.sc-duet-grid-h{flex-wrap:wrap !important}.duet-no-stacking.sc-duet-grid-h{flex-direction:row !important}.duet-no-stacking.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}.duet-grid-direction-vertical.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}@media (max-width: 35.9375em){.duet-grid-direction-vertical.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 36em){.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 48em){.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 62em){.duet-grid-direction-vertical.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 64.0625em){.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-align-top.duet-no-stacking.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-align-bottom.duet-no-stacking.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-align-center.duet-no-stacking.sc-duet-grid-h{align-items:center !important}.duet-grid-align-stretch.duet-no-stacking.sc-duet-grid-h{align-items:stretch !important}.duet-grid-align-baseline.duet-no-stacking.sc-duet-grid-h{align-items:baseline !important}.duet-grid-align-top.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-align-bottom.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-align-center.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:center !important}.duet-grid-align-stretch.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:stretch !important}.duet-grid-align-baseline.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:baseline !important}@media (min-width: 36em){.duet-grid-align-top.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 36em){.duet-grid-align-bottom.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 36em){.duet-grid-align-center.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:center !important}}@media (min-width: 36em){.duet-grid-align-stretch.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 36em){.duet-grid-align-baseline.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 48em){.duet-grid-align-top.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 48em){.duet-grid-align-bottom.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 48em){.duet-grid-align-center.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:center !important}}@media (min-width: 48em){.duet-grid-align-stretch.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 48em){.duet-grid-align-baseline.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 62em){.duet-grid-align-top.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 62em){.duet-grid-align-bottom.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 62em){.duet-grid-align-center.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 62em){.duet-grid-align-stretch.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 62em){.duet-grid-align-baseline.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 64.0625em){.duet-grid-align-top.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 64.0625em){.duet-grid-align-bottom.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 64.0625em){.duet-grid-align-center.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 64.0625em){.duet-grid-align-stretch.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 64.0625em){.duet-grid-align-baseline.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:baseline !important}}.duet-grid-distribution-left.sc-duet-grid-h{justify-content:flex-start !important}.duet-grid-distribution-right.sc-duet-grid-h{justify-content:flex-end !important}.duet-grid-distribution-center.sc-duet-grid-h{justify-content:center !important}.duet-grid-distribution-between.sc-duet-grid-h{justify-content:space-between !important}.duet-grid-distribution-around.sc-duet-grid-h{justify-content:space-around !important}.duet-grid-distribution-evenly.sc-duet-grid-h{justify-content:space-evenly !important}@media (max-width: 35.9375em){.duet-grid-mobile-left.sc-duet-grid-h{align-items:flex-start !important;justify-content:flex-start !important;text-align:left !important}}@media (max-width: 35.9375em){.duet-grid-mobile-center.sc-duet-grid-h{align-items:center !important;justify-content:center !important;text-align:center !important}.duet-grid-mobile-center.sc-duet-grid-h *.sc-duet-grid{text-align:center !important}}@media (max-width: 35.9375em){.duet-grid-mobile-right.sc-duet-grid-h{align-items:flex-end !important;justify-content:flex-end !important;text-align:right !important}.duet-grid-mobile-right.sc-duet-grid-h *.sc-duet-grid{text-align:right !important}}";
10734
+ const duetGridCss = ".sc-duet-grid-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-grid-variation-flex.sc-duet-grid-h{display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;width:100%;max-width:100%;height:auto}.duet-grid-variation-flex.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-x-small.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}@media (max-width: 22.5em){.duet-grid-variation-flex.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-small.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-medium.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-large.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-x-large.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}.duet-grid-variation-flex.duet-grid-wrap.sc-duet-grid-h{flex-wrap:wrap !important}.duet-grid-variation-flex.duet-no-stacking.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-no-stacking.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-align-top.duet-no-stacking.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-variation-flex.duet-grid-align-bottom.duet-no-stacking.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-variation-flex.duet-grid-align-center.duet-no-stacking.sc-duet-grid-h{align-items:center !important}.duet-grid-variation-flex.duet-grid-align-stretch.duet-no-stacking.sc-duet-grid-h{align-items:stretch !important}.duet-grid-variation-flex.duet-grid-align-baseline.duet-no-stacking.sc-duet-grid-h{align-items:baseline !important}.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:center !important}.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:stretch !important}.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:baseline !important}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:center !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:center !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:baseline !important}}.duet-grid-variation-flex.duet-grid-distribution-left.sc-duet-grid-h{justify-content:flex-start !important}.duet-grid-variation-flex.duet-grid-distribution-right.sc-duet-grid-h{justify-content:flex-end !important}.duet-grid-variation-flex.duet-grid-distribution-center.sc-duet-grid-h{justify-content:center !important}.duet-grid-variation-flex.duet-grid-distribution-between.sc-duet-grid-h{justify-content:space-between !important}.duet-grid-variation-flex.duet-grid-distribution-around.sc-duet-grid-h{justify-content:space-around !important}.duet-grid-variation-flex.duet-grid-distribution-evenly.sc-duet-grid-h{justify-content:space-evenly !important}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-mobile-left.sc-duet-grid-h{align-items:flex-start !important;justify-content:flex-start !important;text-align:left !important}}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-mobile-center.sc-duet-grid-h{align-items:center !important;justify-content:center !important;text-align:center !important}.duet-grid-variation-flex.duet-grid-mobile-center.sc-duet-grid-h *.sc-duet-grid{text-align:center !important}}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-mobile-right.sc-duet-grid-h{align-items:flex-end !important;justify-content:flex-end !important;text-align:right !important}.duet-grid-variation-flex.duet-grid-mobile-right.sc-duet-grid-h *.sc-duet-grid{text-align:right !important}}.duet-grid-variation-grid.sc-duet-grid-h{display:grid;grid-template-rows:repeat(1, 1fr);grid-template-columns:repeat(4, minmax(0, 1fr));gap:16px;align-items:flex-start;justify-content:center;margin:0 20px}@media (min-width: 36em){.duet-grid-variation-grid.sc-duet-grid-h{gap:24px;margin:0 40px}}@media (min-width: 48em){.duet-grid-variation-grid.sc-duet-grid-h{grid-template-columns:repeat(8, 55px);gap:24px 32px;margin:0 auto}}@media (min-width: 62em){.duet-grid-variation-grid.sc-duet-grid-h{grid-template-columns:repeat(12, minmax(0, 1fr));margin:0 64px}}@media (min-width: 76.25em){.duet-grid-variation-grid.sc-duet-grid-h{grid-template-columns:repeat(12, 55px);gap:40px;margin:0 auto}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-small.sc-duet-grid-s>*{grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-small.sc-duet-grid-s>*{grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-small.sc-duet-grid-s>*{grid-column:3/span 8}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-medium.sc-duet-grid-s>*{grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-medium.sc-duet-grid-s>*{grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-medium.sc-duet-grid-s>*{grid-column:2/span 10}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-large.sc-duet-grid-s>*{grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-large.sc-duet-grid-s>*{grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-large.sc-duet-grid-s>*{grid-column:1/span 12}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(2){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(2){grid-column:9/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(2){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(2){grid-column:5/span 8}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 6}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(2){grid-column:5/span 4}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(2){grid-column:7/span 6}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(2){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(2){grid-column:5/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(3){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(3){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(3){grid-column:9/span 4}}";
10660
10735
 
10661
10736
  function isGridItem(element) {
10662
10737
  return element.tagName.toLowerCase() === "duet-grid-item";
@@ -10677,6 +10752,7 @@ class DuetGrid {
10677
10752
  this.alignment = "top";
10678
10753
  this.distribution = "default";
10679
10754
  this.mobile = "";
10755
+ this.gridTemplate = null;
10680
10756
  }
10681
10757
  /**
10682
10758
  * Private functions
@@ -10797,7 +10873,9 @@ class DuetGrid {
10797
10873
  "duet-grid-breakpoint-large": this.breakpoint === "large",
10798
10874
  "duet-grid-breakpoint-x-large": this.breakpoint === "x-large",
10799
10875
  "duet-grid-row-reverse": this.rowReverse,
10800
- } }));
10876
+ [`duet-grid-variation-${this.gridTemplate ? "grid" : "flex"}`]: true,
10877
+ [`duet-grid-template-${this.gridTemplate}`]: true,
10878
+ } }, hAsync("slot", null)));
10801
10879
  }
10802
10880
  get element() { return getElement(this); }
10803
10881
  static get watchers() { return {
@@ -10807,7 +10885,7 @@ class DuetGrid {
10807
10885
  }; }
10808
10886
  static get style() { return duetGridCss; }
10809
10887
  static get cmpMeta() { return {
10810
- "$flags$": 2,
10888
+ "$flags$": 6,
10811
10889
  "$tagName$": "duet-grid",
10812
10890
  "$members$": {
10813
10891
  "responsive": [4],
@@ -10817,6 +10895,7 @@ class DuetGrid {
10817
10895
  "alignment": [1],
10818
10896
  "distribution": [1],
10819
10897
  "mobile": [1],
10898
+ "gridTemplate": [1, "grid-template"],
10820
10899
  "distributeFormElement": [32]
10821
10900
  },
10822
10901
  "$listeners$": undefined,
@@ -16292,22 +16371,23 @@ const computePosition = (reference, floating, options) => {
16292
16371
  });
16293
16372
  };
16294
16373
 
16295
- const duetPopupMenuCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-popup-menu,*.sc-duet-popup-menu::after,*.sc-duet-popup-menu::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-popup-menu-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@.duet-popup-menu-list*/.duet-popup-menu-list.sc-duet-popup-menu{position:fixed;top:0;left:0;z-index:950;width:max-content;min-width:175px;padding:0;padding:1rem 0;margin:0;color:rgb(0, 41, 77);list-style:none;visibility:hidden !important;background:rgb(243, 249, 252);border-radius:0 0 8px 8px;box-shadow:0 6px 6px 0 rgba(0, 41, 77, 0.1);opacity:0;transition:transform 300ms ease, visibility 300ms ease, opacity 300ms ease;transform:scaleY(0);transform-origin:top center}/*!@.duet-popup-menu-list.open*/.duet-popup-menu-list.open.sc-duet-popup-menu{visibility:visible !important;opacity:1;transform:scaleY(1)}";
16374
+ const duetPopupMenuCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-popup-menu,*.sc-duet-popup-menu::after,*.sc-duet-popup-menu::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-popup-menu-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@.duet-popup-menu-list*/.duet-popup-menu-list.sc-duet-popup-menu{position:absolute;top:0;left:0;z-index:950;width:max-content;min-width:175px;padding:0;padding:1rem 0;margin:0;color:rgb(0, 41, 77);list-style:none;visibility:hidden !important;background:rgb(243, 249, 252);border-radius:0 0 8px 8px;box-shadow:0 6px 6px 0 rgba(0, 41, 77, 0.1);opacity:0;transition:transform 300ms ease, visibility 300ms ease, opacity 300ms ease;transform:scaleY(0);transform-origin:top center}/*!@.duet-popup-menu-list.open*/.duet-popup-menu-list.open.sc-duet-popup-menu{visibility:visible !important;opacity:1;transform:scaleY(1)}/*!@.duet-popup-menu-list.fixed*/.duet-popup-menu-list.fixed.sc-duet-popup-menu{position:fixed}/*!@.duet-popup-menu-list.duet-theme-turva*/.duet-popup-menu-list.duet-theme-turva.sc-duet-popup-menu{color:rgb(23, 28, 58) !important;background:rgb(245, 245, 247)}";
16296
16375
 
16297
16376
  class DuetPopupMenu {
16298
16377
  constructor(hostRef) {
16299
16378
  registerInstance(this, hostRef);
16379
+ this.duetToggle = createEvent$2(this, "duetToggle", 7);
16300
16380
  this.updatePlacement = async () => {
16301
16381
  if (!this.controller) {
16302
16382
  return;
16303
16383
  }
16304
- const position = await computePosition(this.controller, this.element, {
16384
+ const coordinates = await computePosition(this.controller, this.element, {
16305
16385
  middleware: [offset({ mainAxis: this.mainAxisOffset, crossAxis: this.crossAxisOffset }), flip()],
16306
16386
  placement: this.placement,
16307
- strategy: "fixed",
16387
+ strategy: this.position,
16308
16388
  });
16309
- this.menuY = position.y;
16310
- this.menuX = position.x;
16389
+ this.menuY = coordinates.y;
16390
+ this.menuX = coordinates.x;
16311
16391
  };
16312
16392
  this.open = false;
16313
16393
  this.menuY = undefined;
@@ -16316,6 +16396,7 @@ class DuetPopupMenu {
16316
16396
  this.theme = "";
16317
16397
  this.controller = undefined;
16318
16398
  this.placement = "bottom-start";
16399
+ this.position = "absolute";
16319
16400
  this.mainAxisOffset = 0;
16320
16401
  this.crossAxisOffset = 0;
16321
16402
  }
@@ -16355,6 +16436,7 @@ class DuetPopupMenu {
16355
16436
  */
16356
16437
  async show() {
16357
16438
  this.open = true;
16439
+ this.duetToggle.emit({ open: this.open, component: "duet-popup-menu" });
16358
16440
  this.updatePlacement();
16359
16441
  }
16360
16442
  /**
@@ -16362,6 +16444,7 @@ class DuetPopupMenu {
16362
16444
  */
16363
16445
  async hide() {
16364
16446
  this.open = false;
16447
+ this.duetToggle.emit({ open: this.open, component: "duet-popup-menu" });
16365
16448
  }
16366
16449
  /**
16367
16450
  * Toggle.
@@ -16379,7 +16462,7 @@ class DuetPopupMenu {
16379
16462
  top: `${this.menuY}px`,
16380
16463
  left: `${this.menuX}px`,
16381
16464
  };
16382
- return (hAsync(Host, null, hAsync("div", { style: positionStyles, class: { open: this.open, "duet-popup-menu-list": true }, role: "menu", "aria-label": this.accessibleLabel }, hAsync("slot", null))));
16465
+ return (hAsync(Host, { class: this.position }, hAsync("div", { style: positionStyles, class: { open: this.open, "duet-popup-menu-list": true, "duet-theme-turva": this.theme === "turva" }, role: "menu", "aria-label": this.accessibleLabel }, hAsync("slot", null))));
16383
16466
  }
16384
16467
  get element() { return getElement(this); }
16385
16468
  static get style() { return duetPopupMenuCss; }
@@ -16391,6 +16474,7 @@ class DuetPopupMenu {
16391
16474
  "theme": [1025],
16392
16475
  "controller": [16],
16393
16476
  "placement": [1],
16477
+ "position": [1],
16394
16478
  "mainAxisOffset": [2, "main-axis-offset"],
16395
16479
  "crossAxisOffset": [2, "cross-axis-offset"],
16396
16480
  "open": [32],
@@ -16416,6 +16500,7 @@ class DuetPopupMenuItem {
16416
16500
  this.theme = "";
16417
16501
  this.url = undefined;
16418
16502
  this.external = false;
16503
+ this.value = undefined;
16419
16504
  this.leadingIcon = undefined;
16420
16505
  this.trailingIcon = undefined;
16421
16506
  this.trailingText = undefined;
@@ -16432,8 +16517,9 @@ class DuetPopupMenuItem {
16432
16517
  const classes = {
16433
16518
  "duet-popup-menu-item": true,
16434
16519
  active: this.active,
16520
+ "duet-theme-turva": this.theme === "turva",
16435
16521
  };
16436
- return (hAsync(Host, null, hAsync(TagName, { role: "menuitem", "aria-label": this.accessibleLabel, class: classes, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { name: this.leadingIcon, size: "xx-small", color: "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), hAsync("span", { class: "duet-popup-menu-item-label" }, hAsync("slot", null)), this.trailingIcon && (hAsync("duet-icon", { name: this.trailingIcon, size: "xx-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && hAsync("span", { class: "duet-popup-menu-item-trailing" }, this.trailingText))));
16522
+ return (hAsync(Host, null, hAsync(TagName, { role: "menuitem", "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (hAsync("duet-icon", { name: this.leadingIcon, size: "xx-small", color: "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), hAsync("span", { class: "duet-popup-menu-item-label" }, hAsync("slot", null)), this.trailingIcon && (hAsync("duet-icon", { name: this.trailingIcon, size: "xx-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && hAsync("span", { class: "duet-popup-menu-item-trailing" }, this.trailingText))));
16437
16523
  }
16438
16524
  get element() { return getElement(this); }
16439
16525
  static get style() { return duetPopupMenuItemCss; }
@@ -16445,6 +16531,7 @@ class DuetPopupMenuItem {
16445
16531
  "theme": [1025],
16446
16532
  "url": [1],
16447
16533
  "external": [4],
16534
+ "value": [1],
16448
16535
  "leadingIcon": [1, "leading-icon"],
16449
16536
  "trailingIcon": [1, "trailing-icon"],
16450
16537
  "trailingText": [1, "trailing-text"],
@@ -17197,7 +17284,7 @@ class DuetRangeStepper {
17197
17284
  }; }
17198
17285
  }
17199
17286
 
17200
- const duetScrollableCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-scrollable,*.sc-duet-scrollable::after,*.sc-duet-scrollable::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-scrollable-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}/*!@:host*/.sc-duet-scrollable-h{position:relative !important}/*!@:host .duet-scrollable-items*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable{display:flex}/*!@:host .duet-scrollable-items .duet-scrollable-button*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button.sc-duet-scrollable{position:relative;flex:0 0 auto;flex-basis:40px;padding:10px;cursor:pointer}/*!@:host .duet-scrollable-items .duet-scrollable-button:active*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button.sc-duet-scrollable:active{transform:scale(0.8)}/*!@:host .duet-scrollable-items .duet-scrollable-button--left*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button--left.sc-duet-scrollable{left:-12px}/*!@:host .duet-scrollable-items .duet-scrollable-button--right*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button--right.sc-duet-scrollable{right:-12px}/*!@:host .duet-scrollable-items .duet-scrollable-button--occluded*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button--occluded.sc-duet-scrollable{display:none}/*!@:host .duet-scrollable-items .duet-scrollable-list*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.sc-duet-scrollable{display:flex;flex-wrap:nowrap;gap:20px;padding-top:2px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scroll-snap-type:x mandatory;scroll-behavior:smooth;scroll-margin:0 20px;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}/*!@:host .duet-scrollable-items .duet-scrollable-list:not(.buttons)*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.sc-duet-scrollable:not(.buttons){white-space:normal}/*!@:host .duet-scrollable-items .duet-scrollable-list::-webkit-scrollbar*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.sc-duet-scrollable::-webkit-scrollbar{display:none}/*!@:host .duet-scrollable-items .duet-scrollable-list.collapsed*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.collapsed.sc-duet-scrollable{flex-wrap:wrap}/*!@:host .duet-scrollable-items.center*/.sc-duet-scrollable-h .duet-scrollable-items.center.sc-duet-scrollable{justify-content:center}/*!@:host .duet-scrollable-items.center .duet-scrollable-list.collapsed*/.sc-duet-scrollable-h .duet-scrollable-items.center.sc-duet-scrollable .duet-scrollable-list.collapsed.sc-duet-scrollable{justify-content:center}/*!@.collapse*/.collapse.sc-duet-scrollable{width:100%;text-align:center}/*!@.collapse.hide*/.collapse.hide.sc-duet-scrollable{visibility:hidden}/*!@::slotted(*)*/.sc-duet-scrollable-s>*{scroll-snap-align:center;margin-left:0;-webkit-transition:-webkit-transform 0.2s ease-in-out;transition:-webkit-transform 0.2s ease-in-out;transition:transform 0.2s ease-in-out;transition:transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out}";
17287
+ const duetScrollableCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-scrollable,*.sc-duet-scrollable::after,*.sc-duet-scrollable::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-scrollable-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}/*!@:host*/.sc-duet-scrollable-h{position:relative !important}/*!@:host .duet-scrollable-items*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable{display:flex}/*!@:host .duet-scrollable-items .duet-scrollable-button*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button.sc-duet-scrollable{position:relative;flex:0 0 auto;flex-basis:40px;padding:10px;cursor:pointer}/*!@:host .duet-scrollable-items .duet-scrollable-button:active*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button.sc-duet-scrollable:active{transform:scale(0.8)}/*!@:host .duet-scrollable-items .duet-scrollable-button--left*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button--left.sc-duet-scrollable{left:-12px}/*!@:host .duet-scrollable-items .duet-scrollable-button--right*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button--right.sc-duet-scrollable{right:-12px}/*!@:host .duet-scrollable-items .duet-scrollable-button--occluded*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-button--occluded.sc-duet-scrollable{visibility:hidden}/*!@:host .duet-scrollable-items .duet-scrollable-list*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.sc-duet-scrollable{display:flex;flex-wrap:nowrap;gap:20px;padding-top:2px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scroll-snap-type:x mandatory;scroll-behavior:smooth;scroll-margin:0 20px;-ms-overflow-style:-ms-autohiding-scrollbar;-webkit-overflow-scrolling:touch}/*!@:host .duet-scrollable-items .duet-scrollable-list:not(.buttons)*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.sc-duet-scrollable:not(.buttons){white-space:normal}/*!@:host .duet-scrollable-items .duet-scrollable-list::-webkit-scrollbar*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.sc-duet-scrollable::-webkit-scrollbar{display:none}/*!@:host .duet-scrollable-items .duet-scrollable-list.collapsed*/.sc-duet-scrollable-h .duet-scrollable-items.sc-duet-scrollable .duet-scrollable-list.collapsed.sc-duet-scrollable{flex-wrap:wrap}/*!@:host .duet-scrollable-items.center*/.sc-duet-scrollable-h .duet-scrollable-items.center.sc-duet-scrollable{justify-content:center}/*!@:host .duet-scrollable-items.center .duet-scrollable-list.collapsed*/.sc-duet-scrollable-h .duet-scrollable-items.center.sc-duet-scrollable .duet-scrollable-list.collapsed.sc-duet-scrollable{justify-content:center}/*!@.collapse*/.collapse.sc-duet-scrollable{width:100%;text-align:center}/*!@.collapse.hide*/.collapse.hide.sc-duet-scrollable{visibility:hidden}/*!@::slotted(*)*/.sc-duet-scrollable-s>*{scroll-snap-align:center;margin-left:0;-webkit-transition:-webkit-transform 0.2s ease-in-out;transition:-webkit-transform 0.2s ease-in-out;transition:transform 0.2s ease-in-out;transition:transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out}";
17201
17288
 
17202
17289
  /**
17203
17290
  * @slot collapse-button-label - This is to label collapse button.
@@ -20359,89 +20446,6 @@ const getI18nError = (errorCode, errorCodes) => {
20359
20446
  }
20360
20447
  };
20361
20448
 
20362
- const formatBytes = (bytes, decimals = 2) => {
20363
- if (bytes === 0) {
20364
- return "0 Bytes";
20365
- }
20366
- const k = 1024;
20367
- const dm = decimals < 0 ? 0 : decimals;
20368
- const sizes = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
20369
- const i = Math.floor(Math.log(bytes) / Math.log(k));
20370
- return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + " " + sizes[i];
20371
- };
20372
-
20373
- //tiedosto latautuu
20374
- const fileUploadingInfo = {
20375
- fi: "Tiedosto latautuu",
20376
- sv: "Filen laddas upp",
20377
- en: "File is uploading",
20378
- };
20379
- const UploadItem = ({ data, showLinks, type, actions, errorCodes, theme, label, categoryLabel, showCategory, onLinkClick, }) => {
20380
- const { uid, item, size, uploaded, url, meta, progress, error } = data;
20381
- const { name } = item;
20382
- const linkClickHandler = (event) => {
20383
- if (onLinkClick) {
20384
- event.preventDefault();
20385
- onLinkClick(name, url || "", meta);
20386
- }
20387
- };
20388
- const getFileNameLine = () => {
20389
- switch (type) {
20390
- case "inprogress":
20391
- return (hAsync("span", { class: "duet-upload-item-name", role: "status" },
20392
- hAsync("duet-paragraph", { class: "duet-upload-item-name", color: "gray-darker", margin: "none", weight: "semi-bold" },
20393
- hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
20394
- hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }),
20395
- name),
20396
- hAsync("duet-visually-hidden", null,
20397
- hAsync("duet-paragraph", null, getLocaleString(fileUploadingInfo))),
20398
- hAsync("duet-progress", { progress: Math.ceil(progress), "aria-hidden": true })));
20399
- case "pending":
20400
- return (hAsync("span", { class: "duet-upload-item-name" },
20401
- hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
20402
- hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }),
20403
- name));
20404
- case "failure":
20405
- return (hAsync("span", { class: "duet-upload-item-error", role: "status" },
20406
- hAsync("duet-paragraph", { class: "duet-upload-item-name", color: "danger", margin: "none", weight: "semi-bold" },
20407
- hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
20408
- hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }),
20409
- name),
20410
- hAsync("duet-paragraph", { class: "duet-upload-item-error-label", size: "small", margin: "none", color: "danger" }, getI18nError(error.type, errorCodes))));
20411
- default:
20412
- return uploaded && url && showLinks ? (hAsync("duet-paragraph", { color: "secondary", margin: "none", weight: "semi-bold" },
20413
- hAsync("duet-link", { onClick: linkClickHandler, url: url, external: true }, ContentName),
20414
- hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }),
20415
- SizeText)) : (hAsync("duet-paragraph", { color: "secondary", margin: "none", weight: "semi-bold" },
20416
- ContentName,
20417
- hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }),
20418
- SizeText));
20419
- }
20420
- };
20421
- const ContentName = (hAsync("span", { class: "duet-upload-item-name" },
20422
- hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }),
20423
- hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }),
20424
- name));
20425
- const SizeText = (hAsync("span", { class: "duet-upload-item-size", style: { fontSize: "14px", fontWeight: "400" } },
20426
- "(",
20427
- formatBytes(size),
20428
- ")"));
20429
- const Badges = meta && meta.badges ? (hAsync("span", null, meta.badges.map(badgeText => (hAsync("duet-badge", { color: "primary" }, badgeText))))) : undefined;
20430
- const actionDescription = `${meta && meta.badges ? meta.badges.join(",") : ""} ${name}`;
20431
- return (hAsync("div", { class: {
20432
- "upload-item-row": true,
20433
- } },
20434
- showCategory && (hAsync("div", { class: "item-categories" },
20435
- hAsync("duet-heading", { class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(categoryLabel)),
20436
- Badges)),
20437
- hAsync("div", { class: { "item-name": true, "no-category": !showCategory } },
20438
- !!label && (hAsync("duet-heading", { class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(label))),
20439
- getFileNameLine()),
20440
- hAsync("div", { class: "item-actions" }, actions.map(actionItem => {
20441
- return (hAsync("duet-action-button", { actionMeta: Object.assign({}, meta || {}), actionId: uid || null, actionName: actionItem.name, theme: theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background, "accessible-label": `${actionDescription} ${getLocaleString(actionItem.label)} `, accessibleTitle: false }));
20442
- }))));
20443
- };
20444
-
20445
20449
  const UploadItemHeader = ({ label, categoryLabel }) => {
20446
20450
  return (hAsync("div", { class: "items-header" },
20447
20451
  categoryLabel && (hAsync("duet-heading", { class: "category-header", border: "solid", color: "gray-darker", level: "h3", "visual-level": "h6", weight: "semibold", margin: "none" }, getLocaleString(categoryLabel))),
@@ -20614,6 +20618,7 @@ class DuetUpload {
20614
20618
  this.bytesMaxReached = false;
20615
20619
  this.filesToUploadExceedsLimit = false;
20616
20620
  this.internalStatusMessageLabel = undefined;
20621
+ this.itemRefs = new Map();
20617
20622
  /**
20618
20623
  * Properties
20619
20624
  */
@@ -20685,16 +20690,24 @@ class DuetUpload {
20685
20690
  };
20686
20691
  this.mapFilesToUploadItems = (data, group, showCategory) => {
20687
20692
  if (group === this.DefaultGroups.success) {
20688
- return (hAsync(UploadItem, { theme: this.theme, actions: this.getActions(group), type: "success", data: data, showLinks: this.showLinks, onLinkClick: this.emitEvent ? this.onLinkClick : undefined, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory }));
20693
+ return (hAsync("duet-upload-item", { theme: this.theme, actions: this.getActions(group), type: "success", data: data, showLinks: this.showLinks, linkClickEvent: this.emitEvent ? this.linkClick : undefined, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
20694
+ this.itemRefs.set(data.uid, item);
20695
+ } }));
20689
20696
  }
20690
20697
  else if (group === this.DefaultGroups.inprogress) {
20691
- return (hAsync(UploadItem, { theme: this.theme, actions: this.getActions(group), type: "inprogress", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory }));
20698
+ return (hAsync("duet-upload-item", { theme: this.theme, actions: this.getActions(group), type: "inprogress", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
20699
+ this.itemRefs.set(data.uid, item);
20700
+ } }));
20692
20701
  }
20693
20702
  else if (group === this.DefaultGroups.pending) {
20694
- return (hAsync(UploadItem, { theme: this.theme, actions: this.getActions(group), type: "pending", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory }));
20703
+ return (hAsync("duet-upload-item", { theme: this.theme, actions: this.getActions(group), type: "pending", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
20704
+ this.itemRefs.set(data.uid, item);
20705
+ } }));
20695
20706
  }
20696
20707
  else if (group === this.DefaultGroups.failure) {
20697
- return (hAsync(UploadItem, { theme: this.theme, actions: this.getActions(group), type: "failure", data: data, showLinks: this.showLinks, errorCodes: this.errorCodes, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory }));
20708
+ return (hAsync("duet-upload-item", { theme: this.theme, actions: this.getActions(group), type: "failure", data: data, showLinks: this.showLinks, errorCodes: this.errorCodes, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, ref: item => {
20709
+ this.itemRefs.set(data.uid, item);
20710
+ } }));
20698
20711
  }
20699
20712
  else if (data.group) {
20700
20713
  return data.html;
@@ -20978,14 +20991,6 @@ class DuetUpload {
20978
20991
  data: { files: this.files },
20979
20992
  });
20980
20993
  };
20981
- this.onLinkClick = (name, url, meta) => {
20982
- if (this.emitEvent) {
20983
- this.linkClick.emit({
20984
- component: "duet-upload",
20985
- data: { name, url, meta },
20986
- });
20987
- }
20988
- };
20989
20994
  /**
20990
20995
  * @description This functions return sorted map items byg condition which are:
20991
20996
  */
@@ -21047,6 +21052,7 @@ class DuetUpload {
21047
21052
  return this.actions.filter(item => item.map.includes(id));
21048
21053
  };
21049
21054
  this.renderUploadedItems = () => {
21055
+ this.itemRefs.clear();
21050
21056
  const filteredItems = this.filterMap();
21051
21057
  const hasCategory = filteredItems.hasCategory;
21052
21058
  const ItemRows = this.groups.map(group => {
@@ -21294,6 +21300,10 @@ class DuetUpload {
21294
21300
  async updateValue(item, key, value) {
21295
21301
  this.updateValueInMap(item, key, value);
21296
21302
  }
21303
+ async focusActionButton(uid) {
21304
+ var _a;
21305
+ await ((_a = this.itemRefs.get(uid)) === null || _a === void 0 ? void 0 : _a.focusActionButton());
21306
+ }
21297
21307
  /**
21298
21308
  * render() function
21299
21309
  * Always the last one in the class.
@@ -21502,7 +21512,8 @@ class DuetUpload {
21502
21512
  "uploadPending": [64],
21503
21513
  "refresh": [64],
21504
21514
  "getFiles": [64],
21505
- "updateValue": [64]
21515
+ "updateValue": [64],
21516
+ "focusActionButton": [64]
21506
21517
  },
21507
21518
  "$listeners$": undefined,
21508
21519
  "$lazyBundleId$": "-",
@@ -21595,6 +21606,105 @@ class DuetUploadAriaStatus {
21595
21606
  }; }
21596
21607
  }
21597
21608
 
21609
+ const formatBytes = (bytes, decimals = 2) => {
21610
+ if (bytes === 0) {
21611
+ return "0 Bytes";
21612
+ }
21613
+ const k = 1024;
21614
+ const dm = decimals < 0 ? 0 : decimals;
21615
+ const sizes = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
21616
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
21617
+ return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + " " + sizes[i];
21618
+ };
21619
+
21620
+ class DuetUploadItem {
21621
+ constructor(hostRef) {
21622
+ registerInstance(this, hostRef);
21623
+ this.fileUploadingInfo = {
21624
+ fi: "Tiedosto latautuu",
21625
+ sv: "Filen laddas upp",
21626
+ en: "File is uploading",
21627
+ };
21628
+ this.onLinkClick = (event) => {
21629
+ const { url, meta } = this.data;
21630
+ if (!!this.linkClickEvent) {
21631
+ event.preventDefault();
21632
+ this.linkClickEvent.emit({
21633
+ component: "duet-upload",
21634
+ data: { name: this.data.item.name, url, meta },
21635
+ });
21636
+ }
21637
+ };
21638
+ this.theme = "";
21639
+ this.data = undefined;
21640
+ this.type = undefined;
21641
+ this.showLinks = undefined;
21642
+ this.actions = undefined;
21643
+ this.label = undefined;
21644
+ this.categoryLabel = undefined;
21645
+ this.errorCodes = undefined;
21646
+ this.showCategory = undefined;
21647
+ this.linkClickEvent = undefined;
21648
+ }
21649
+ /**
21650
+ * Component lifecycle events.
21651
+ */
21652
+ componentWillLoad() {
21653
+ inheritGlobalTheme(this);
21654
+ }
21655
+ async focusActionButton() {
21656
+ if (this.actionButton) {
21657
+ await this.actionButton.setFocus();
21658
+ }
21659
+ }
21660
+ getFileNameLine() {
21661
+ const { item, size, uploaded, url, progress, error } = this.data;
21662
+ const { name } = item;
21663
+ const ContentName = (hAsync("span", { class: "duet-upload-item-name" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }), hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }), name));
21664
+ const SizeText = (hAsync("span", { class: "duet-upload-item-size", style: { fontSize: "14px", fontWeight: "400" } }, "(", formatBytes(size), ")"));
21665
+ switch (this.type) {
21666
+ case "inprogress":
21667
+ return (hAsync("span", { class: "duet-upload-item-name", role: "status" }, hAsync("duet-paragraph", { class: "duet-upload-item-name", color: "gray-darker", margin: "none", weight: "semi-bold" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }), hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }), name), hAsync("duet-visually-hidden", null, hAsync("duet-paragraph", null, getLocaleString(this.fileUploadingInfo))), hAsync("duet-progress", { progress: Math.ceil(progress), "aria-hidden": true })));
21668
+ case "pending":
21669
+ return (hAsync("span", { class: "duet-upload-item-name" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }), hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }), name));
21670
+ case "failure":
21671
+ return (hAsync("span", { class: "duet-upload-item-error", role: "status" }, hAsync("duet-paragraph", { class: "duet-upload-item-name", color: "danger", margin: "none", weight: "semi-bold" }, hAsync("duet-icon", { margin: "none", size: "x-small", name: "messaging-attachment" }), hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }), name), hAsync("duet-paragraph", { class: "duet-upload-item-error-label", size: "small", margin: "none", color: "danger" }, getI18nError(error.type, this.errorCodes))));
21672
+ default:
21673
+ return uploaded && url && this.showLinks ? (hAsync("duet-paragraph", { color: "secondary", margin: "none", weight: "semi-bold" }, hAsync("duet-link", { onClick: this.onLinkClick, url: url, external: true }, ContentName), hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }), SizeText)) : (hAsync("duet-paragraph", { color: "secondary", margin: "none", weight: "semi-bold" }, ContentName, hAsync("duet-spacer", { size: "xx-small", direction: "horizontal" }), SizeText));
21674
+ }
21675
+ }
21676
+ render() {
21677
+ const { uid, meta } = this.data;
21678
+ const Badges = meta && meta.badges ? (hAsync("span", null, meta.badges.map(badgeText => (hAsync("duet-badge", { color: "primary" }, badgeText))))) : undefined;
21679
+ const actionDescription = `${meta && meta.badges ? meta.badges.join(",") : ""} ${name}`;
21680
+ return (hAsync("div", { class: {
21681
+ "upload-item-row": true,
21682
+ } }, this.showCategory && (hAsync("div", { class: "item-categories" }, hAsync("duet-heading", { class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.categoryLabel)), Badges)), hAsync("div", { class: { "item-name": true, "no-category": !this.showCategory } }, !!this.label && (hAsync("duet-heading", { class: "heading", color: "color-secondary", level: "h6", weight: "semibold" }, getLocaleString(this.label))), this.getFileNameLine()), hAsync("div", { class: "item-actions" }, this.actions.map(actionItem => {
21683
+ return (hAsync("duet-action-button", { actionMeta: Object.assign({}, meta || {}), actionId: uid || null, actionName: actionItem.name, theme: this.theme, iconName: actionItem.icon, iconColor: actionItem.color, iconSize: actionItem.size, background: actionItem.background, "accessible-label": `${actionDescription} ${getLocaleString(actionItem.label)} `, accessibleTitle: false, ref: button => (this.actionButton = button) }));
21684
+ }))));
21685
+ }
21686
+ static get cmpMeta() { return {
21687
+ "$flags$": 0,
21688
+ "$tagName$": "duet-upload-item",
21689
+ "$members$": {
21690
+ "theme": [1025],
21691
+ "data": [16],
21692
+ "type": [1],
21693
+ "showLinks": [4, "show-links"],
21694
+ "actions": [8],
21695
+ "label": [16],
21696
+ "categoryLabel": [16],
21697
+ "errorCodes": [16],
21698
+ "showCategory": [4, "show-category"],
21699
+ "linkClickEvent": [16],
21700
+ "focusActionButton": [64]
21701
+ },
21702
+ "$listeners$": undefined,
21703
+ "$lazyBundleId$": "-",
21704
+ "$attrsToReflect$": []
21705
+ }; }
21706
+ }
21707
+
21598
21708
  const duetVisuallyHiddenCss = "/*!@:host*/.sc-duet-visually-hidden-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;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}";
21599
21709
 
21600
21710
  class DuetVisuallyHidden {
@@ -21711,6 +21821,7 @@ registerComponents([
21711
21821
  DuetTray,
21712
21822
  DuetUpload,
21713
21823
  DuetUploadAriaStatus,
21824
+ DuetUploadItem,
21714
21825
  DuetVisuallyHidden,
21715
21826
  ]);
21716
21827