@duetds/components 6.11.1 → 7.0.0

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 (674) hide show
  1. package/hydrate/index.js +479 -289
  2. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  3. package/lib/cjs/duet-alert.cjs.entry.js +14 -2
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-banner.cjs.entry.js +3 -3
  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 +4 -4
  9. package/lib/cjs/duet-callout.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
  11. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  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 +1 -1
  15. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
  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 +3 -3
  22. package/lib/cjs/duet-editable-table_3.cjs.entry.js +75 -22
  23. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-fieldset.cjs.entry.js +3 -2
  25. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-header_2.cjs.entry.js +14 -9
  28. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  30. package/lib/cjs/duet-input_2.cjs.entry.js +2 -2
  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 +3 -2
  38. package/lib/cjs/duet-modal.cjs.entry.js +6 -2
  39. package/lib/cjs/duet-multiselect.cjs.entry.js +23 -4
  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 +4 -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 +1 -1
  46. package/lib/cjs/duet-popup-menu.cjs.entry.js +4 -31
  47. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  48. package/lib/cjs/duet-promo-card.cjs.entry.js +3 -3
  49. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  51. package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
  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 +4 -4
  60. package/lib/cjs/duet-slideout.cjs.entry.js +4 -4
  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-button_2.cjs.entry.js +92 -0
  73. package/lib/cjs/duet-tooltip.cjs.entry.js +33 -48
  74. package/lib/cjs/duet-tray.cjs.entry.js +2 -2
  75. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  76. package/lib/cjs/duet-upload-item.cjs.entry.js +5 -4
  77. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  78. package/lib/cjs/duet.cjs.js +2 -2
  79. package/lib/cjs/{floating-ui.dom.esm-3801794e.js → floating-ui.dom.esm-d537b048.js} +154 -159
  80. package/lib/cjs/{focus-utils-832cb087.js → focus-utils-6d4f01d9.js} +1 -1
  81. package/lib/cjs/{index-f9a10385.js → index-b7f668db.js} +1 -1
  82. package/lib/cjs/loader.cjs.js +2 -2
  83. package/lib/cjs/teleport-04ad16c2.js +88 -0
  84. package/lib/cjs/{token-utils-18a05118.js → token-utils-c1864408.js} +1 -1
  85. package/lib/cjs/{tokens.module-d30fb52a.js → tokens.module-5fe478ed.js} +0 -1
  86. package/lib/collection/collection-manifest.json +2 -1
  87. package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
  88. package/lib/collection/components/duet-alert/duet-alert.js +54 -2
  89. package/lib/collection/components/duet-button/duet-button.css +22 -1
  90. package/lib/collection/components/duet-button/duet-button.js +5 -5
  91. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  92. package/lib/collection/components/duet-card/duet-card.js +3 -3
  93. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  94. package/lib/collection/components/duet-chip/duet-chip.js +4 -4
  95. package/lib/collection/components/duet-choice/duet-choice.js +3 -3
  96. package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
  97. package/lib/collection/components/duet-combobox/duet-combobox.js +3 -3
  98. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  99. package/lib/collection/components/duet-date-picker/duet-date-picker.js +4 -4
  100. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  101. package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
  102. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  103. package/lib/collection/components/duet-fieldset/duet-fieldset.js +25 -1
  104. package/lib/collection/components/duet-footer/duet-footer.js +7 -7
  105. package/lib/collection/components/duet-grid/duet-grid.js +3 -3
  106. package/lib/collection/components/duet-header/duet-header.js +28 -23
  107. package/lib/collection/components/duet-heading/duet-heading.js +1 -1
  108. package/lib/collection/components/duet-hero/duet-hero.js +5 -5
  109. package/lib/collection/components/duet-icon/duet-icon.js +1 -1
  110. package/lib/collection/components/duet-input/duet-input.css +1 -1
  111. package/lib/collection/components/duet-input/duet-input.js +8 -8
  112. package/lib/collection/components/duet-label/duet-label.js +2 -2
  113. package/lib/collection/components/duet-layout/duet-layout.js +1 -1
  114. package/lib/collection/components/duet-list/duet-list.js +3 -3
  115. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  116. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +3 -2
  117. package/lib/collection/components/duet-modal/duet-modal.js +7 -3
  118. package/lib/collection/components/duet-multiselect/duet-multiselect.css +36 -0
  119. package/lib/collection/components/duet-multiselect/duet-multiselect.js +44 -7
  120. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +1 -1
  121. package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
  122. package/lib/collection/components/duet-pagination/duet-pagination.js +2 -2
  123. package/lib/collection/components/duet-paragraph/duet-paragraph.js +3 -3
  124. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +1 -1
  125. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  126. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  127. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  128. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
  129. package/lib/collection/components/duet-select/duet-select.js +5 -5
  130. package/lib/collection/components/duet-show-more/duet-show-more.js +1 -1
  131. package/lib/collection/components/duet-slideout/duet-slideout.js +1 -1
  132. package/lib/collection/components/duet-spacer/duet-spacer.js +2 -2
  133. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  134. package/lib/collection/components/duet-step/duet-step.js +2 -2
  135. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  136. package/lib/collection/components/duet-tab-group/duet-tab-group.js +5 -5
  137. package/lib/collection/components/duet-table/duet-table.css +13 -11
  138. package/lib/collection/components/duet-table/duet-table.js +10 -1
  139. package/lib/collection/components/duet-textarea/duet-textarea.js +4 -4
  140. package/lib/collection/components/duet-toggle/duet-toggle.js +1 -1
  141. package/lib/collection/components/duet-tooltip/duet-tooltip-button.css +87 -0
  142. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +175 -0
  143. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.css +2 -0
  144. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +9 -12
  145. package/lib/collection/components/duet-tooltip/duet-tooltip.css +4 -61
  146. package/lib/collection/components/duet-tooltip/duet-tooltip.js +39 -48
  147. package/lib/collection/components/duet-upload/duet-upload.js +66 -32
  148. package/lib/collection/components/duet-upload/upload-item-header.js +6 -1
  149. package/lib/collection/components/duet-upload/upload-validators.js +19 -0
  150. package/lib/collection/components/duet-upload-item/duet-upload-item.js +5 -4
  151. package/lib/collection/utils/math.utils.js +3 -0
  152. package/lib/collection/utils/teleport.js +64 -10
  153. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  154. package/lib/dist-custom-elements/duet-alert.js +1 -1
  155. package/lib/dist-custom-elements/duet-badge.js +1 -1
  156. package/lib/dist-custom-elements/duet-banner.js +5 -5
  157. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  158. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  159. package/lib/dist-custom-elements/duet-button.js +1 -1
  160. package/lib/dist-custom-elements/duet-callout.js +3 -3
  161. package/lib/dist-custom-elements/duet-caption.js +1 -1
  162. package/lib/dist-custom-elements/duet-card.js +4 -4
  163. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  164. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  165. package/lib/dist-custom-elements/duet-chip.js +2 -2
  166. package/lib/dist-custom-elements/duet-choice-group.js +17 -11
  167. package/lib/dist-custom-elements/duet-choice.js +5 -5
  168. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  169. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  170. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  171. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  172. package/lib/dist-custom-elements/duet-date-picker.js +25 -19
  173. package/lib/dist-custom-elements/duet-divider.js +1 -1
  174. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  175. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  176. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  177. package/lib/dist-custom-elements/duet-footer.js +4 -4
  178. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  179. package/lib/dist-custom-elements/duet-grid.js +1 -1
  180. package/lib/dist-custom-elements/duet-header.js +20 -15
  181. package/lib/dist-custom-elements/duet-heading.js +1 -1
  182. package/lib/dist-custom-elements/duet-hero.js +9 -9
  183. package/lib/dist-custom-elements/duet-icon.js +1 -1
  184. package/lib/dist-custom-elements/duet-input.js +1 -1
  185. package/lib/dist-custom-elements/duet-label.js +1 -1
  186. package/lib/dist-custom-elements/duet-layout.js +1 -1
  187. package/lib/dist-custom-elements/duet-link.js +1 -1
  188. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  189. package/lib/dist-custom-elements/duet-list.js +1 -1
  190. package/lib/dist-custom-elements/duet-logo.js +1 -1
  191. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  192. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  193. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  194. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  195. package/lib/dist-custom-elements/duet-menu-bar.js +4 -3
  196. package/lib/dist-custom-elements/duet-modal.js +11 -7
  197. package/lib/dist-custom-elements/duet-multiselect.js +44 -18
  198. package/lib/dist-custom-elements/duet-nav.js +1 -1
  199. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  200. package/lib/dist-custom-elements/duet-notification.js +2 -2
  201. package/lib/dist-custom-elements/duet-number-input.js +26 -17
  202. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  203. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  204. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  205. package/lib/dist-custom-elements/duet-popup-menu-item.js +2 -2
  206. package/lib/dist-custom-elements/duet-popup-menu.js +3 -30
  207. package/lib/dist-custom-elements/duet-progress.js +1 -1
  208. package/lib/dist-custom-elements/duet-promo-card.js +4 -4
  209. package/lib/dist-custom-elements/duet-radio-group.js +17 -11
  210. package/lib/dist-custom-elements/duet-radio.js +1 -1
  211. package/lib/dist-custom-elements/duet-range-slider.js +3 -3
  212. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  213. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  214. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  215. package/lib/dist-custom-elements/duet-select.js +1 -1
  216. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  217. package/lib/dist-custom-elements/duet-show-more.js +5 -5
  218. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  219. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  220. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  221. package/lib/dist-custom-elements/duet-slideout-panel.js +3 -3
  222. package/lib/dist-custom-elements/duet-slideout.js +3 -3
  223. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  224. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  225. package/lib/dist-custom-elements/duet-step.js +4 -4
  226. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  227. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  228. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  229. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  230. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  231. package/lib/dist-custom-elements/duet-tab-group.js +27 -21
  232. package/lib/dist-custom-elements/duet-tab.js +1 -1
  233. package/lib/dist-custom-elements/duet-table.js +1 -1
  234. package/lib/dist-custom-elements/duet-textarea.js +21 -15
  235. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  236. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  237. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  238. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  239. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  240. package/lib/dist-custom-elements/duet-tooltip-button.d.ts +11 -0
  241. package/lib/dist-custom-elements/duet-tooltip-button.js +9 -0
  242. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  243. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  244. package/lib/dist-custom-elements/duet-tray.js +4 -4
  245. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  246. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  247. package/lib/dist-custom-elements/duet-upload.js +80 -35
  248. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  249. package/lib/dist-custom-elements/index.js +1 -1
  250. package/lib/dist-custom-elements/{p-98bca605.js → p-19b04293.js} +1 -1
  251. package/lib/dist-custom-elements/{p-fc2fdeba.js → p-1fef65c4.js} +1 -1
  252. package/lib/dist-custom-elements/{p-b5568c37.js → p-20d8a7ab.js} +14 -13
  253. package/lib/dist-custom-elements/{p-b1c2af98.js → p-28facbdc.js} +2 -2
  254. package/lib/dist-custom-elements/{p-fa37a369.js → p-32a42529.js} +4 -4
  255. package/lib/dist-custom-elements/{p-95d44d0f.js → p-34d193a7.js} +1 -1
  256. package/lib/dist-custom-elements/p-371290d2.js +145 -0
  257. package/lib/dist-custom-elements/{p-09ac696c.js → p-47bc3fc6.js} +1 -1
  258. package/lib/dist-custom-elements/{p-74b72454.js → p-4fa0d10e.js} +3 -3
  259. package/lib/dist-custom-elements/{p-8badaab4.js → p-507ae246.js} +2 -2
  260. package/lib/dist-custom-elements/{p-4fb34519.js → p-591040e5.js} +1 -1
  261. package/lib/dist-custom-elements/p-63c149ab.js +86 -0
  262. package/lib/dist-custom-elements/{p-215e9694.js → p-66206ea5.js} +1 -1
  263. package/lib/dist-custom-elements/{p-48b731bc.js → p-80bd412e.js} +22 -16
  264. package/lib/dist-custom-elements/{p-5db7fd87.js → p-84003069.js} +5 -3
  265. package/lib/dist-custom-elements/{p-a8b46969.js → p-86f35893.js} +1 -1
  266. package/lib/{esm/floating-ui.dom.esm-37dc174a.js → dist-custom-elements/p-8adb9463.js} +154 -159
  267. package/lib/dist-custom-elements/{p-67064f22.js → p-8dbc5e4b.js} +1 -1
  268. package/lib/dist-custom-elements/{p-8319ca94.js → p-8e9d78b5.js} +1 -1
  269. package/lib/dist-custom-elements/{p-cb811b5c.js → p-91f98ca2.js} +5 -5
  270. package/lib/dist-custom-elements/{p-0d04d137.js → p-93609c40.js} +2 -2
  271. package/lib/dist-custom-elements/{p-841186f0.js → p-960b00e1.js} +2 -2
  272. package/lib/dist-custom-elements/{p-e41a8579.js → p-9fb22951.js} +2 -2
  273. package/lib/dist-custom-elements/{p-184261b3.js → p-a7cc7bd9.js} +2 -2
  274. package/lib/dist-custom-elements/p-b1fa6ee7.js +72 -0
  275. package/lib/dist-custom-elements/{p-7be4444a.js → p-b95006a5.js} +2 -2
  276. package/lib/dist-custom-elements/{p-217bb82f.js → p-c2a056b1.js} +2 -2
  277. package/lib/dist-custom-elements/{p-0c3282a0.js → p-c85f0028.js} +17 -11
  278. package/lib/dist-custom-elements/{p-05ab48bf.js → p-cbc43bac.js} +21 -7
  279. package/lib/dist-custom-elements/{p-1888263b.js → p-da75f5d9.js} +1 -1
  280. package/lib/dist-custom-elements/p-dd112690.js +273 -0
  281. package/lib/dist-custom-elements/{p-37f86174.js → p-de10f837.js} +45 -55
  282. package/lib/dist-custom-elements/{p-661e7864.js → p-de68431d.js} +1 -1
  283. package/lib/dist-custom-elements/p-e78bd379.js +87 -0
  284. package/lib/dist-custom-elements/{p-cd9b5f96.js → p-e8475b3c.js} +1 -1
  285. package/lib/dist-custom-elements/{p-3366d1ff.js → p-eb0475d3.js} +1 -1
  286. package/lib/dist-custom-elements/{p-841f9d02.js → p-f3ffb5b4.js} +2 -2
  287. package/lib/dist-custom-elements/{p-b7cc653b.js → p-f933f857.js} +1 -1
  288. package/lib/duet/duet.esm.js +1 -1
  289. package/lib/duet/duet.js +1 -1
  290. package/lib/duet/{p-d9886ef0.system.entry.js → p-01aaac6a.system.entry.js} +1 -1
  291. package/lib/duet/{p-a306b058.system.entry.js → p-01f3e23e.system.entry.js} +1 -1
  292. package/lib/duet/{p-c7f097e8.entry.js → p-02ce139d.entry.js} +1 -1
  293. package/lib/duet/p-02fa277e.system.entry.js +4 -0
  294. package/lib/duet/{p-2a14f9c7.system.entry.js → p-04dd24ca.system.entry.js} +1 -1
  295. package/lib/duet/p-05545e81.entry.js +4 -0
  296. package/lib/duet/{p-1ebe62cb.entry.js → p-07871336.entry.js} +1 -1
  297. package/lib/duet/{p-54589f3a.entry.js → p-090b0eb4.entry.js} +1 -1
  298. package/lib/duet/{p-5cc44de5.system.entry.js → p-0c3cfb88.system.entry.js} +1 -1
  299. package/lib/duet/{p-f3a4805a.entry.js → p-0ec7bc0d.entry.js} +1 -1
  300. package/lib/duet/{p-ff28d71a.entry.js → p-104758cf.entry.js} +1 -1
  301. package/lib/duet/{p-65bef373.entry.js → p-10b014f5.entry.js} +1 -1
  302. package/lib/duet/{p-1830770c.entry.js → p-1137a234.entry.js} +1 -1
  303. package/lib/duet/{p-3cfd5322.system.entry.js → p-11a22107.system.entry.js} +1 -1
  304. package/lib/duet/{p-933417e6.system.entry.js → p-125fff3c.system.entry.js} +1 -1
  305. package/lib/duet/{p-50180a44.system.entry.js → p-15c364ef.system.entry.js} +1 -1
  306. package/lib/duet/p-180b9ef7.entry.js +4 -0
  307. package/lib/duet/{p-09f48cb9.entry.js → p-1e2689a2.entry.js} +1 -1
  308. package/lib/duet/p-231e217b.entry.js +4 -0
  309. package/lib/duet/{p-fda4e4a4.system.entry.js → p-2362c81c.system.entry.js} +1 -1
  310. package/lib/duet/{p-05bfc8ff.system.entry.js → p-236348a6.system.entry.js} +1 -1
  311. package/lib/duet/{p-77cbe175.entry.js → p-26082482.entry.js} +1 -1
  312. package/lib/duet/{p-6910113f.entry.js → p-27831ad1.entry.js} +1 -1
  313. package/lib/duet/p-27cbcb00.system.entry.js +4 -0
  314. package/lib/duet/{p-9c464273.entry.js → p-28cbcde9.entry.js} +1 -1
  315. package/lib/duet/{p-f23c11c2.system.entry.js → p-2b90e0bf.system.entry.js} +1 -1
  316. package/lib/duet/{p-31562410.entry.js → p-2f8baf13.entry.js} +1 -1
  317. package/lib/duet/{p-34293dad.entry.js → p-2f8ff010.entry.js} +1 -1
  318. package/lib/duet/{p-305f20a0.system.entry.js → p-31f51b63.system.entry.js} +1 -1
  319. package/lib/duet/{p-8d288b4f.entry.js → p-3351f110.entry.js} +1 -1
  320. package/lib/duet/p-33620d03.js +4 -0
  321. package/lib/duet/p-3493bd62.entry.js +4 -0
  322. package/lib/duet/{p-59dde679.system.entry.js → p-361a40a6.system.entry.js} +1 -1
  323. package/lib/duet/{p-bea6e5e0.entry.js → p-399ae33f.entry.js} +1 -1
  324. package/lib/duet/{p-9bbda8a9.system.entry.js → p-3a48878a.system.entry.js} +1 -1
  325. package/lib/duet/{p-25aa9da5.entry.js → p-3addfa0b.entry.js} +1 -1
  326. package/lib/duet/{p-34e93067.system.entry.js → p-3bd38a60.system.entry.js} +1 -1
  327. package/lib/duet/{p-9b5f71df.entry.js → p-3bdaca53.entry.js} +1 -1
  328. package/lib/duet/{p-95dbb7e9.system.entry.js → p-3bf13db2.system.entry.js} +1 -1
  329. package/lib/duet/{p-daf609a8.entry.js → p-3ddc61bc.entry.js} +1 -1
  330. package/lib/duet/p-3e3f76cc.entry.js +4 -0
  331. package/lib/duet/{p-11090514.entry.js → p-407bc2e8.entry.js} +1 -1
  332. package/lib/duet/{p-58491286.entry.js → p-4525bb7b.entry.js} +1 -1
  333. package/lib/duet/p-45d92a24.system.js +4 -0
  334. package/lib/duet/{p-f9625065.system.entry.js → p-46ae0197.system.entry.js} +1 -1
  335. package/lib/duet/{p-15e3eca0.system.entry.js → p-4908aa39.system.entry.js} +1 -1
  336. package/lib/duet/p-491006e1.system.js +4 -0
  337. package/lib/duet/{p-617c03dc.system.entry.js → p-494e7691.system.entry.js} +1 -1
  338. package/lib/duet/{p-212651b5.system.entry.js → p-49e39bc1.system.entry.js} +1 -1
  339. package/lib/duet/p-4b3bef47.entry.js +4 -0
  340. package/lib/duet/{p-9180e7f5.system.entry.js → p-4b57b898.system.entry.js} +1 -1
  341. package/lib/duet/{p-4e6ad0aa.entry.js → p-4d272de8.entry.js} +1 -1
  342. package/lib/duet/{p-47ec0bce.system.entry.js → p-4ee4938c.system.entry.js} +1 -1
  343. package/lib/duet/{p-5b4e316c.system.entry.js → p-4f99c879.system.entry.js} +1 -1
  344. package/lib/duet/{p-cc70ab4a.entry.js → p-5003f2f7.entry.js} +1 -1
  345. package/lib/duet/p-501d76ac.system.entry.js +4 -0
  346. package/lib/duet/{p-be7a7b77.entry.js → p-51ea8a1e.entry.js} +1 -1
  347. package/lib/duet/{p-130d0e42.entry.js → p-56e8e51e.entry.js} +1 -1
  348. package/lib/duet/{p-e2c354ef.system.entry.js → p-5700d7df.system.entry.js} +1 -1
  349. package/lib/duet/{p-3dc8596c.system.entry.js → p-5726b0c6.system.entry.js} +1 -1
  350. package/lib/duet/{p-c405af98.system.entry.js → p-57c81cdf.system.entry.js} +1 -1
  351. package/lib/duet/{p-57708d82.entry.js → p-58d191e0.entry.js} +1 -1
  352. package/lib/duet/{p-86991900.system.entry.js → p-5bb44d21.system.entry.js} +1 -1
  353. package/lib/duet/{p-c37c86ef.entry.js → p-5be89661.entry.js} +1 -1
  354. package/lib/duet/{p-a05fa71c.entry.js → p-5c682b2c.entry.js} +1 -1
  355. package/lib/duet/{p-732d4693.system.entry.js → p-5d06caee.system.entry.js} +1 -1
  356. package/lib/duet/{p-88501e6a.entry.js → p-5d1f9c44.entry.js} +1 -1
  357. package/lib/duet/{p-6d9e809f.system.entry.js → p-61c551d2.system.entry.js} +1 -1
  358. package/lib/duet/{p-f0173106.system.entry.js → p-63330f08.system.entry.js} +1 -1
  359. package/lib/duet/{p-0c72528c.system.entry.js → p-63566970.system.entry.js} +1 -1
  360. package/lib/duet/p-63c149ab.js +4 -0
  361. package/lib/duet/{p-bb64f25d.system.entry.js → p-66ab3c0e.system.entry.js} +2 -2
  362. package/lib/duet/{p-5e965627.system.entry.js → p-6c1482e6.system.entry.js} +1 -1
  363. package/lib/duet/{p-fe3dbb59.entry.js → p-715db5f9.entry.js} +1 -1
  364. package/lib/duet/{p-277d9e45.system.js → p-71a46879.system.js} +1 -1
  365. package/lib/duet/{p-3db4b9e1.entry.js → p-720ffaf8.entry.js} +1 -1
  366. package/lib/duet/{p-a727e03a.entry.js → p-74bee1d0.entry.js} +1 -1
  367. package/lib/duet/p-7709b117.entry.js +4 -0
  368. package/lib/duet/{p-5e2c8e38.entry.js → p-7a3c5568.entry.js} +1 -1
  369. package/lib/duet/{p-3117f16c.system.entry.js → p-7d1b0468.system.entry.js} +1 -1
  370. package/lib/duet/{p-66cc34da.entry.js → p-7d5e5659.entry.js} +1 -1
  371. package/lib/duet/{p-312656b2.entry.js → p-7e43823e.entry.js} +1 -1
  372. package/lib/duet/p-8894b5f8.system.entry.js +4 -0
  373. package/lib/duet/p-892b0784.system.js +5 -0
  374. package/lib/duet/p-8ace7a8f.entry.js +4 -0
  375. package/lib/duet/{p-d2cbaed2.entry.js → p-8adadd0e.entry.js} +1 -1
  376. package/lib/duet/p-8adb9463.js +4 -0
  377. package/lib/duet/{p-b959ac63.system.entry.js → p-8aee7f16.system.entry.js} +1 -1
  378. package/lib/duet/{p-fe5705fe.system.entry.js → p-8b01d5ae.system.entry.js} +1 -1
  379. package/lib/duet/p-8be782cb.system.entry.js +4 -0
  380. package/lib/duet/{p-f2b11d36.system.entry.js → p-8bfe774e.system.entry.js} +1 -1
  381. package/lib/duet/{p-10695d55.system.js → p-8c6e3c4f.system.js} +1 -1
  382. package/lib/duet/{p-00fc5376.system.entry.js → p-8e64876c.system.entry.js} +1 -1
  383. package/lib/duet/p-90b90630.system.entry.js +4 -0
  384. package/lib/duet/p-90d5fb9a.entry.js +4 -0
  385. package/lib/duet/{p-8548fc3a.system.entry.js → p-9116810a.system.entry.js} +1 -1
  386. package/lib/duet/{p-b66706de.entry.js → p-91e92ff0.entry.js} +1 -1
  387. package/lib/duet/p-92a26eb7.system.entry.js +4 -0
  388. package/lib/duet/{p-36fafe5f.entry.js → p-939bceb1.entry.js} +1 -1
  389. package/lib/duet/{p-52fdd651.system.entry.js → p-968c8724.system.entry.js} +1 -1
  390. package/lib/duet/p-9837720e.system.entry.js +4 -0
  391. package/lib/duet/{p-22a436ef.entry.js → p-99a6c65d.entry.js} +1 -1
  392. package/lib/duet/{p-9d3deabb.system.entry.js → p-9a9f4f83.system.entry.js} +1 -1
  393. package/lib/duet/{p-66ce877b.entry.js → p-9ad54264.entry.js} +1 -1
  394. package/lib/duet/{p-42242eb4.entry.js → p-9bad6410.entry.js} +1 -1
  395. package/lib/duet/{p-df03f394.entry.js → p-9ef41dff.entry.js} +1 -1
  396. package/lib/duet/{p-97162b31.system.entry.js → p-a04538da.system.entry.js} +1 -1
  397. package/lib/duet/{p-f75b8801.system.entry.js → p-a4dc39b7.system.entry.js} +1 -1
  398. package/lib/duet/{p-e3d40270.entry.js → p-a61f629f.entry.js} +1 -1
  399. package/lib/duet/p-a659351d.system.js +4 -0
  400. package/lib/duet/{p-c1ec3ad4.entry.js → p-a6a78989.entry.js} +1 -1
  401. package/lib/duet/{p-75f7a572.js → p-a76ceaf6.js} +1 -1
  402. package/lib/duet/{p-293d6a2b.entry.js → p-acfd55b1.entry.js} +1 -1
  403. package/lib/duet/{p-896fff8f.entry.js → p-afd647b4.entry.js} +1 -1
  404. package/lib/duet/{p-daa1595d.entry.js → p-b150413c.entry.js} +1 -1
  405. package/lib/duet/{p-4ca5d008.system.entry.js → p-b4548652.system.entry.js} +1 -1
  406. package/lib/duet/{p-419b1bec.system.entry.js → p-b50fe6a3.system.entry.js} +1 -1
  407. package/lib/duet/p-b63e9d32.system.entry.js +4 -0
  408. package/lib/duet/p-b63fdf97.entry.js +4 -0
  409. package/lib/duet/{p-ced4679a.entry.js → p-b70632f4.entry.js} +1 -1
  410. package/lib/duet/{p-930c8f3c.system.entry.js → p-b8f45b9b.system.entry.js} +1 -1
  411. package/lib/duet/{p-5847fbcf.system.entry.js → p-ba8d654e.system.entry.js} +1 -1
  412. package/lib/duet/{p-6fcc9de8.entry.js → p-c047dce3.entry.js} +1 -1
  413. package/lib/duet/{p-fde10739.system.entry.js → p-c06dd7ff.system.entry.js} +1 -1
  414. package/lib/duet/{p-45043c9d.system.entry.js → p-c1aa415d.system.entry.js} +1 -1
  415. package/lib/duet/p-c6265d54.system.entry.js +4 -0
  416. package/lib/duet/{p-615a393c.system.entry.js → p-c7f078b4.system.entry.js} +1 -1
  417. package/lib/duet/{p-7f9909ed.entry.js → p-ca587193.entry.js} +1 -1
  418. package/lib/duet/{p-9fb4f41a.system.entry.js → p-cc2c3bda.system.entry.js} +1 -1
  419. package/lib/duet/{p-5c37dda9.system.entry.js → p-ccbd26f8.system.entry.js} +1 -1
  420. package/lib/duet/{p-a6d18e87.system.entry.js → p-cd494ec0.system.entry.js} +1 -1
  421. package/lib/duet/{p-655275ec.entry.js → p-d0517764.entry.js} +1 -1
  422. package/lib/duet/{p-c905c010.entry.js → p-d1ada824.entry.js} +1 -1
  423. package/lib/duet/{p-d1ee4298.system.entry.js → p-d23f5574.system.entry.js} +1 -1
  424. package/lib/duet/{p-1e161672.entry.js → p-d38f4401.entry.js} +1 -1
  425. package/lib/duet/{p-d649d264.system.entry.js → p-d5a72abd.system.entry.js} +1 -1
  426. package/lib/duet/{p-41c64229.system.entry.js → p-d976e355.system.entry.js} +1 -1
  427. package/lib/duet/p-dafb7efd.js +5 -0
  428. package/lib/duet/{p-1eada326.system.entry.js → p-dc00285e.system.entry.js} +1 -1
  429. package/lib/duet/{p-d6e7f2d1.entry.js → p-ddec1906.entry.js} +1 -1
  430. package/lib/duet/{p-27b9e751.system.entry.js → p-dfecd542.system.entry.js} +1 -1
  431. package/lib/duet/{p-c65b31df.entry.js → p-e1a2ad9b.entry.js} +1 -1
  432. package/lib/duet/{p-222548cd.entry.js → p-e26224c8.entry.js} +1 -1
  433. package/lib/duet/{p-17f95bce.entry.js → p-e2674cbd.entry.js} +1 -1
  434. package/lib/duet/{p-889fc0c6.entry.js → p-e464c127.entry.js} +1 -1
  435. package/lib/duet/{p-f31b839f.system.entry.js → p-e62bcf02.system.entry.js} +1 -1
  436. package/lib/duet/{p-78eb3378.system.entry.js → p-e73904ab.system.entry.js} +1 -1
  437. package/lib/duet/{p-a7d43918.entry.js → p-e775f206.entry.js} +1 -1
  438. package/lib/duet/{p-08945ef7.entry.js → p-e8496052.entry.js} +1 -1
  439. package/lib/duet/{p-e591257f.entry.js → p-e8e50fdb.entry.js} +1 -1
  440. package/lib/duet/{p-653fd5d0.system.entry.js → p-ecfdc7d9.system.entry.js} +1 -1
  441. package/lib/duet/p-edddef22.entry.js +4 -0
  442. package/lib/duet/{p-a7f9f585.system.entry.js → p-ee2dc527.system.entry.js} +1 -1
  443. package/lib/duet/{p-4bae7f7e.entry.js → p-ee3d6a73.entry.js} +1 -1
  444. package/lib/duet/{p-26f8a5e3.entry.js → p-ef194759.entry.js} +1 -1
  445. package/lib/duet/{p-2ba628cc.system.entry.js → p-f06b4b03.system.entry.js} +1 -1
  446. package/lib/duet/{p-ab07e9c2.entry.js → p-f29123b4.entry.js} +1 -1
  447. package/lib/duet/{p-f22404fe.system.js → p-f36c856d.system.js} +1 -1
  448. package/lib/duet/{p-81ef610a.system.entry.js → p-f36ee41c.system.entry.js} +1 -1
  449. package/lib/duet/p-fa56fe59.entry.js +4 -0
  450. package/lib/duet/{p-c2a407e8.system.entry.js → p-fa7cdc28.system.entry.js} +1 -1
  451. package/lib/duet/{p-69abe752.system.entry.js → p-fc3275ba.system.entry.js} +1 -1
  452. package/lib/duet/p-fd4785ab.js +4 -0
  453. package/lib/duet/{p-d00f7632.system.entry.js → p-fd54a219.system.entry.js} +1 -1
  454. package/lib/duet/p-fe4cd626.entry.js +4 -0
  455. package/lib/esm/duet-action-button.entry.js +3 -3
  456. package/lib/esm/duet-alert.entry.js +14 -2
  457. package/lib/esm/duet-badge.entry.js +1 -1
  458. package/lib/esm/duet-banner.entry.js +3 -3
  459. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  460. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  461. package/lib/esm/duet-button_2.entry.js +4 -4
  462. package/lib/esm/duet-callout.entry.js +1 -1
  463. package/lib/esm/duet-caption_4.entry.js +3 -3
  464. package/lib/esm/duet-card.entry.js +3 -3
  465. package/lib/esm/duet-checkbox.entry.js +1 -1
  466. package/lib/esm/duet-checkmark.entry.js +1 -1
  467. package/lib/esm/duet-chip.entry.js +1 -1
  468. package/lib/esm/duet-choice_2.entry.js +2 -2
  469. package/lib/esm/duet-collapsible.entry.js +1 -1
  470. package/lib/esm/duet-combobox.entry.js +1 -1
  471. package/lib/esm/duet-contact-card.entry.js +1 -1
  472. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  473. package/lib/esm/duet-date-picker.entry.js +2 -2
  474. package/lib/esm/duet-divider_2.entry.js +3 -3
  475. package/lib/esm/duet-editable-table_3.entry.js +75 -22
  476. package/lib/esm/duet-empty-state.entry.js +1 -1
  477. package/lib/esm/duet-fieldset.entry.js +3 -2
  478. package/lib/esm/duet-footer.entry.js +1 -1
  479. package/lib/esm/duet-grid_2.entry.js +1 -1
  480. package/lib/esm/duet-header_2.entry.js +14 -9
  481. package/lib/esm/duet-hero.entry.js +1 -1
  482. package/lib/esm/duet-icon.entry.js +3 -3
  483. package/lib/esm/duet-input_2.entry.js +2 -2
  484. package/lib/esm/duet-layout.entry.js +1 -1
  485. package/lib/esm/duet-list_2.entry.js +1 -1
  486. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  487. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  488. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  489. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  490. package/lib/esm/duet-menu-bar.entry.js +3 -2
  491. package/lib/esm/duet-modal.entry.js +6 -2
  492. package/lib/esm/duet-multiselect.entry.js +23 -4
  493. package/lib/esm/duet-nav.entry.js +1 -1
  494. package/lib/esm/duet-notification_2.entry.js +1 -1
  495. package/lib/esm/duet-number-input.entry.js +4 -1
  496. package/lib/esm/duet-page-heading.entry.js +1 -1
  497. package/lib/esm/duet-pagination_2.entry.js +1 -1
  498. package/lib/esm/duet-popup-menu-item.entry.js +1 -1
  499. package/lib/esm/duet-popup-menu.entry.js +3 -30
  500. package/lib/esm/duet-progress.entry.js +1 -1
  501. package/lib/esm/duet-promo-card.entry.js +3 -3
  502. package/lib/esm/duet-radio_2.entry.js +1 -1
  503. package/lib/esm/duet-range-slider.entry.js +2 -2
  504. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  505. package/lib/esm/duet-section-layout.entry.js +1 -1
  506. package/lib/esm/duet-select.entry.js +1 -1
  507. package/lib/esm/duet-shaped-image.entry.js +1 -1
  508. package/lib/esm/duet-show-more.entry.js +1 -1
  509. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  510. package/lib/esm/duet-slideout-link.entry.js +1 -1
  511. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  512. package/lib/esm/duet-slideout-panel.entry.js +4 -4
  513. package/lib/esm/duet-slideout.entry.js +4 -4
  514. package/lib/esm/duet-step_2.entry.js +1 -1
  515. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  516. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  517. package/lib/esm/duet-submenu-bar-link.entry.js +1 -1
  518. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  519. package/lib/esm/duet-textarea.entry.js +1 -1
  520. package/lib/esm/duet-toggle.entry.js +1 -1
  521. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  522. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  523. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  524. package/lib/esm/duet-toolbar.entry.js +1 -1
  525. package/lib/esm/duet-tooltip-button_2.entry.js +87 -0
  526. package/lib/esm/duet-tooltip.entry.js +33 -48
  527. package/lib/esm/duet-tray.entry.js +2 -2
  528. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  529. package/lib/esm/duet-upload-item.entry.js +5 -4
  530. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  531. package/lib/esm/duet.js +3 -3
  532. package/lib/{dist-custom-elements/p-df10a767.js → esm/floating-ui.dom.esm-6025c98f.js} +154 -159
  533. package/lib/esm/{focus-utils-08d27c67.js → focus-utils-8a8cfffd.js} +1 -1
  534. package/lib/esm/{index-729ef6e7.js → index-d48e2c74.js} +1 -1
  535. package/lib/esm/loader.js +3 -3
  536. package/lib/esm/teleport-4ede216d.js +86 -0
  537. package/lib/esm/{token-utils-058d6220.js → token-utils-a1dcaa4b.js} +1 -1
  538. package/lib/esm/{tokens.module-f436c2cd.js → tokens.module-ed773027.js} +1 -1
  539. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  540. package/lib/esm-es5/duet-alert.entry.js +2 -2
  541. package/lib/esm-es5/duet-badge.entry.js +1 -1
  542. package/lib/esm-es5/duet-banner.entry.js +1 -1
  543. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  544. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  545. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  546. package/lib/esm-es5/duet-callout.entry.js +1 -1
  547. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  548. package/lib/esm-es5/duet-card.entry.js +1 -1
  549. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  550. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  551. package/lib/esm-es5/duet-chip.entry.js +1 -1
  552. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  553. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  554. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  555. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  556. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  557. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  558. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  559. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  560. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  561. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  562. package/lib/esm-es5/duet-footer.entry.js +1 -1
  563. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  564. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  565. package/lib/esm-es5/duet-hero.entry.js +1 -1
  566. package/lib/esm-es5/duet-icon.entry.js +1 -1
  567. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  568. package/lib/esm-es5/duet-layout.entry.js +1 -1
  569. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  570. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  571. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  572. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  573. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  574. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  575. package/lib/esm-es5/duet-modal.entry.js +1 -1
  576. package/lib/esm-es5/duet-multiselect.entry.js +2 -2
  577. package/lib/esm-es5/duet-nav.entry.js +1 -1
  578. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  579. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  580. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  581. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  582. package/lib/esm-es5/duet-popup-menu-item.entry.js +1 -1
  583. package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
  584. package/lib/esm-es5/duet-progress.entry.js +1 -1
  585. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  586. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  587. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  588. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  589. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  590. package/lib/esm-es5/duet-select.entry.js +1 -1
  591. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  592. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  593. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  594. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  595. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  596. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  597. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  598. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  599. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  600. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  601. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  602. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  603. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  604. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  605. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  606. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +2 -2
  607. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  608. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  609. package/lib/esm-es5/duet-tooltip-button_2.entry.js +4 -0
  610. package/lib/esm-es5/duet-tooltip.entry.js +2 -2
  611. package/lib/esm-es5/duet-tray.entry.js +1 -1
  612. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  613. package/lib/esm-es5/duet-upload-item.entry.js +1 -1
  614. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  615. package/lib/esm-es5/duet.js +1 -1
  616. package/lib/esm-es5/floating-ui.dom.esm-6025c98f.js +4 -0
  617. package/lib/esm-es5/focus-utils-8a8cfffd.js +4 -0
  618. package/lib/esm-es5/index-d48e2c74.js +5 -0
  619. package/lib/esm-es5/loader.js +1 -1
  620. package/lib/esm-es5/teleport-4ede216d.js +4 -0
  621. package/lib/esm-es5/{token-utils-058d6220.js → token-utils-a1dcaa4b.js} +1 -1
  622. package/lib/esm-es5/{tokens.module-f436c2cd.js → tokens.module-ed773027.js} +1 -1
  623. package/lib/types/components/duet-alert/duet-alert.d.ts +12 -0
  624. package/lib/types/components/duet-fieldset/duet-fieldset.d.ts +6 -1
  625. package/lib/types/components/duet-header/duet-header.d.ts +3 -0
  626. package/lib/types/components/duet-modal/duet-modal.d.ts +1 -0
  627. package/lib/types/components/duet-multiselect/duet-multiselect.d.ts +9 -0
  628. package/lib/types/components/duet-tooltip/duet-tooltip-button.d.ts +29 -0
  629. package/lib/types/components/duet-tooltip/duet-tooltip-popup.d.ts +4 -7
  630. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +3 -2
  631. package/lib/types/components/duet-upload/duet-upload.d.ts +21 -16
  632. package/lib/types/components/duet-upload/upload-validators.d.ts +1 -0
  633. package/lib/types/components.d.ts +71 -7
  634. package/lib/types/utils/teleport.d.ts +15 -2
  635. package/package.json +5 -5
  636. package/lib/cjs/duet-tooltip-popup.cjs.entry.js +0 -56
  637. package/lib/dist-custom-elements/p-95109364.js +0 -136
  638. package/lib/dist-custom-elements/p-d6238b66.js +0 -88
  639. package/lib/dist-custom-elements/p-f3b91052.js +0 -273
  640. package/lib/duet/p-00215a97.entry.js +0 -4
  641. package/lib/duet/p-106940dd.js +0 -5
  642. package/lib/duet/p-1700211f.system.js +0 -5
  643. package/lib/duet/p-1760b8d4.system.entry.js +0 -4
  644. package/lib/duet/p-1ea89299.entry.js +0 -4
  645. package/lib/duet/p-2a64f169.system.entry.js +0 -4
  646. package/lib/duet/p-2d68f259.entry.js +0 -4
  647. package/lib/duet/p-340e36a8.system.js +0 -4
  648. package/lib/duet/p-3a417fd2.entry.js +0 -4
  649. package/lib/duet/p-61fb382d.entry.js +0 -4
  650. package/lib/duet/p-6494c48e.entry.js +0 -4
  651. package/lib/duet/p-6c24d8b4.entry.js +0 -4
  652. package/lib/duet/p-7084c7fa.system.entry.js +0 -4
  653. package/lib/duet/p-7649b95e.js +0 -4
  654. package/lib/duet/p-7e64358b.entry.js +0 -4
  655. package/lib/duet/p-8040b3f3.system.entry.js +0 -4
  656. package/lib/duet/p-82b5380b.system.js +0 -4
  657. package/lib/duet/p-86dc2ebb.entry.js +0 -4
  658. package/lib/duet/p-90ad5759.system.entry.js +0 -4
  659. package/lib/duet/p-a1057e50.js +0 -4
  660. package/lib/duet/p-a8af0ea4.entry.js +0 -4
  661. package/lib/duet/p-bd751ea4.system.entry.js +0 -4
  662. package/lib/duet/p-d3910688.entry.js +0 -4
  663. package/lib/duet/p-d759b718.system.entry.js +0 -4
  664. package/lib/duet/p-d7fa5f72.system.entry.js +0 -4
  665. package/lib/duet/p-df10a767.js +0 -4
  666. package/lib/duet/p-e0cfe3d5.entry.js +0 -4
  667. package/lib/duet/p-e73a1930.entry.js +0 -4
  668. package/lib/duet/p-ebbb398a.system.entry.js +0 -4
  669. package/lib/duet/p-f3c3932d.system.entry.js +0 -4
  670. package/lib/esm/duet-tooltip-popup.entry.js +0 -52
  671. package/lib/esm-es5/duet-tooltip-popup.entry.js +0 -4
  672. package/lib/esm-es5/floating-ui.dom.esm-37dc174a.js +0 -4
  673. package/lib/esm-es5/focus-utils-08d27c67.js +0 -4
  674. package/lib/esm-es5/index-729ef6e7.js +0 -5
@@ -352,7 +352,7 @@ export class DuetHero {
352
352
  "references": {
353
353
  "DuetHeroIconSize": {
354
354
  "location": "local",
355
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-hero/duet-hero.tsx"
355
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-hero/duet-hero.tsx"
356
356
  }
357
357
  }
358
358
  },
@@ -569,7 +569,7 @@ export class DuetHero {
569
569
  "references": {
570
570
  "DuetHeroButtonData": {
571
571
  "location": "local",
572
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-hero/duet-hero.tsx"
572
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-hero/duet-hero.tsx"
573
573
  }
574
574
  }
575
575
  },
@@ -643,7 +643,7 @@ export class DuetHero {
643
643
  "references": {
644
644
  "DuetHeroVariation": {
645
645
  "location": "local",
646
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-hero/duet-hero.tsx"
646
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-hero/duet-hero.tsx"
647
647
  }
648
648
  }
649
649
  },
@@ -752,7 +752,7 @@ export class DuetHero {
752
752
  "references": {
753
753
  "DuetHeroClickEvent": {
754
754
  "location": "local",
755
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-hero/duet-hero.tsx"
755
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-hero/duet-hero.tsx"
756
756
  }
757
757
  }
758
758
  }
@@ -772,7 +772,7 @@ export class DuetHero {
772
772
  "references": {
773
773
  "DuetHeroAnalyticsEvent": {
774
774
  "location": "local",
775
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-hero/duet-hero.tsx"
775
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-hero/duet-hero.tsx"
776
776
  }
777
777
  }
778
778
  }
@@ -322,7 +322,7 @@ export class DuetIcon {
322
322
  "references": {
323
323
  "DuetIconSize": {
324
324
  "location": "local",
325
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-icon/duet-icon.tsx"
325
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-icon/duet-icon.tsx"
326
326
  }
327
327
  }
328
328
  },
@@ -51,12 +51,12 @@ input[type=search]::-webkit-search-cancel-button {
51
51
  }
52
52
 
53
53
  duet-tooltip {
54
+ position: relative;
54
55
  top: 12px;
55
56
  right: 0;
56
57
  }
57
58
  @media (min-width: 48em) {
58
59
  duet-tooltip {
59
- position: relative;
60
60
  right: auto;
61
61
  }
62
62
  }
@@ -730,7 +730,7 @@ export class DuetInput {
730
730
  "references": {
731
731
  "DuetInputType": {
732
732
  "location": "local",
733
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
733
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
734
734
  }
735
735
  }
736
736
  },
@@ -753,7 +753,7 @@ export class DuetInput {
753
753
  "references": {
754
754
  "DuetVariationType": {
755
755
  "location": "local",
756
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
756
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
757
757
  }
758
758
  }
759
759
  },
@@ -933,7 +933,7 @@ export class DuetInput {
933
933
  "references": {
934
934
  "DuetInputComponentType": {
935
935
  "location": "local",
936
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
936
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
937
937
  }
938
938
  }
939
939
  },
@@ -1106,7 +1106,7 @@ export class DuetInput {
1106
1106
  "references": {
1107
1107
  "DuetInputEvent": {
1108
1108
  "location": "local",
1109
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
1109
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
1110
1110
  }
1111
1111
  }
1112
1112
  }
@@ -1126,7 +1126,7 @@ export class DuetInput {
1126
1126
  "references": {
1127
1127
  "DuetInputEvent": {
1128
1128
  "location": "local",
1129
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
1129
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
1130
1130
  }
1131
1131
  }
1132
1132
  }
@@ -1146,7 +1146,7 @@ export class DuetInput {
1146
1146
  "references": {
1147
1147
  "DuetInputEvent": {
1148
1148
  "location": "local",
1149
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
1149
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
1150
1150
  }
1151
1151
  }
1152
1152
  }
@@ -1166,7 +1166,7 @@ export class DuetInput {
1166
1166
  "references": {
1167
1167
  "DuetInputEvent": {
1168
1168
  "location": "local",
1169
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
1169
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
1170
1170
  }
1171
1171
  }
1172
1172
  }
@@ -1186,7 +1186,7 @@ export class DuetInput {
1186
1186
  "references": {
1187
1187
  "DuetInputEvent": {
1188
1188
  "location": "local",
1189
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-input/duet-input.tsx"
1189
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-input/duet-input.tsx"
1190
1190
  }
1191
1191
  }
1192
1192
  }
@@ -92,7 +92,7 @@ export class DuetLabel {
92
92
  "references": {
93
93
  "DuetLabelMargin": {
94
94
  "location": "local",
95
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-label/duet-label.tsx"
95
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-label/duet-label.tsx"
96
96
  }
97
97
  }
98
98
  },
@@ -115,7 +115,7 @@ export class DuetLabel {
115
115
  "references": {
116
116
  "DuetLabelSize": {
117
117
  "location": "local",
118
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-label/duet-label.tsx"
118
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-label/duet-label.tsx"
119
119
  }
120
120
  }
121
121
  },
@@ -123,7 +123,7 @@ export class DuetLayout {
123
123
  "references": {
124
124
  "DuetLayoutStickyDistance": {
125
125
  "location": "local",
126
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-layout/duet-layout.tsx"
126
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-layout/duet-layout.tsx"
127
127
  }
128
128
  }
129
129
  },
@@ -166,7 +166,7 @@ export class DuetList {
166
166
  "references": {
167
167
  "DuetListMobileAlignment": {
168
168
  "location": "local",
169
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-list/duet-list.tsx"
169
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-list/duet-list.tsx"
170
170
  }
171
171
  }
172
172
  },
@@ -212,7 +212,7 @@ export class DuetList {
212
212
  "references": {
213
213
  "DuetListVariation": {
214
214
  "location": "local",
215
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-list/duet-list.tsx"
215
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-list/duet-list.tsx"
216
216
  }
217
217
  }
218
218
  },
@@ -235,7 +235,7 @@ export class DuetList {
235
235
  "references": {
236
236
  "DuetListLabelWidth": {
237
237
  "location": "local",
238
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-list/duet-list.tsx"
238
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-list/duet-list.tsx"
239
239
  }
240
240
  }
241
241
  },
@@ -179,7 +179,7 @@ export class DuetLogo {
179
179
  "references": {
180
180
  "DuetLogoSize": {
181
181
  "location": "local",
182
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-logo/duet-logo.tsx"
182
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-logo/duet-logo.tsx"
183
183
  }
184
184
  }
185
185
  },
@@ -32,7 +32,8 @@ export class DuetMenuBar {
32
32
  });
33
33
  if (active && active.offsetLeft) {
34
34
  if (active.offsetLeft > 50) {
35
- this.container.scrollLeft = active.offsetLeft - this.element.offsetWidth / 2 + active.offsetWidth / 2;
35
+ this.container.scrollLeft =
36
+ active.offsetLeft - this.element.getBoundingClientRect().width / 2 + active.offsetWidth / 2;
36
37
  }
37
38
  }
38
39
  };
@@ -262,7 +263,7 @@ export class DuetMenuBar {
262
263
  "references": {
263
264
  "DuetMenuBarChangeEvent": {
264
265
  "location": "local",
265
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-menu-bar/duet-menu-bar.tsx"
266
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-menu-bar/duet-menu-bar.tsx"
266
267
  }
267
268
  }
268
269
  }
@@ -8,6 +8,7 @@ import { createID } from "../../utils/create-id";
8
8
  import { focusElement, FocusGuard } from "../../utils/focus-utils";
9
9
  import { isEscapeKey } from "../../utils/keyboard-utils";
10
10
  import { connectLanguageChangeObserver, disconnectLanguageChangeObserver, getLanguage, getLocaleString, } from "../../utils/language-utils";
11
+ import { Teleport } from "../../utils/teleport";
11
12
  // The transition below is slightly higher than the actual CSS transition as VoiceOver on
12
13
  // iOS has otherwise problems moving the focus from modal back to the original element.
13
14
  // This issue is similar to what we’ve seen in Duet Date Picker + iOS VoiceOver.
@@ -70,6 +71,7 @@ export class DuetModal {
70
71
  }
71
72
  this.focusedElBeforeOpen = document.activeElement;
72
73
  disableBodyScroll(this.modalEl, { reserveScrollBarGap: true });
74
+ this.teleport.go(true);
73
75
  setTimeout(() => {
74
76
  this.buttonEl.setFocus();
75
77
  }, TRANSITION_MS);
@@ -87,6 +89,7 @@ export class DuetModal {
87
89
  this.modalEl.classList.remove("duet-disable-transitions");
88
90
  enableBodyScroll(this.modalEl);
89
91
  this.duetClose.emit();
92
+ this.teleport.resume(TRANSITION_MS);
90
93
  setTimeout(() => {
91
94
  focusElement(this.focusedElBeforeOpen);
92
95
  }, TRANSITION_MS);
@@ -110,6 +113,7 @@ export class DuetModal {
110
113
  inheritGlobalTheme(this);
111
114
  }
112
115
  componentDidLoad() {
116
+ this.teleport = new Teleport(this.element);
113
117
  if (this.active) {
114
118
  // This specific line below can’t be moved to componentWillLoad()
115
119
  // as it breaks body scroll enabling.
@@ -298,7 +302,7 @@ export class DuetModal {
298
302
  "references": {
299
303
  "DuetModalSize": {
300
304
  "location": "local",
301
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-modal/duet-modal.tsx"
305
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-modal/duet-modal.tsx"
302
306
  }
303
307
  }
304
308
  },
@@ -408,7 +412,7 @@ export class DuetModal {
408
412
  "references": {
409
413
  "DuetModalSize": {
410
414
  "location": "local",
411
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-modal/duet-modal.tsx"
415
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-modal/duet-modal.tsx"
412
416
  }
413
417
  }
414
418
  },
@@ -644,7 +648,7 @@ export class DuetModal {
644
648
  "references": {
645
649
  "DuetModalCloseEvent": {
646
650
  "location": "local",
647
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-modal/duet-modal.tsx"
651
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-modal/duet-modal.tsx"
648
652
  }
649
653
  }
650
654
  }
@@ -222,6 +222,42 @@
222
222
  transition-property: transform, opacity;
223
223
  transform: scale(1.0001) translateZ(0) translateY(0);
224
224
  }
225
+ .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons {
226
+ padding: 8px 0;
227
+ margin: -16px;
228
+ margin-bottom: 16px;
229
+ border-bottom: 1px solid rgb(225, 227, 230);
230
+ }
231
+ .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button {
232
+ padding: 6px 16px;
233
+ margin: -4px 0;
234
+ font-family: "localtapiola-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
235
+ font-size: 0.875rem;
236
+ font-weight: 600;
237
+ color: rgb(0, 119, 179);
238
+ cursor: pointer;
239
+ border-radius: 4px;
240
+ }
241
+ .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button:first-child {
242
+ border-right: 1px solid rgb(225, 227, 230);
243
+ }
244
+ .duet-theme-turva .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button {
245
+ font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
246
+ color: rgb(198, 12, 48);
247
+ }
248
+ .duet-theme-turva .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button:focus {
249
+ box-shadow: 0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px rgb(23, 28, 58);
250
+ }
251
+ .duet-theme-turva .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button:hover {
252
+ color: rgb(23, 28, 58);
253
+ }
254
+ .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button:focus {
255
+ outline: 0;
256
+ box-shadow: 0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179);
257
+ }
258
+ .duet-multiselect-checkboxes .duet-multiselect-all-control-buttons button:hover {
259
+ color: rgb(0, 41, 77);
260
+ }
225
261
 
226
262
  .duet-multiselect-help {
227
263
  display: block;
@@ -23,6 +23,16 @@ export class DuetMultiselect {
23
23
  fi: "valittu",
24
24
  sv: "vald",
25
25
  };
26
+ this.selectAllLabel = {
27
+ en: "Select all",
28
+ fi: "Valitse kaikki",
29
+ sv: "Välj alla",
30
+ };
31
+ this.clearAllLabel = {
32
+ en: "Clear all",
33
+ fi: "Tyhjennä kaikki",
34
+ sv: "Rensa alla",
35
+ };
26
36
  /**
27
37
  * Component event handling.
28
38
  */
@@ -62,7 +72,7 @@ export class DuetMultiselect {
62
72
  this.toggleCheckboxes();
63
73
  setTimeout(() => {
64
74
  if (this.checkboxesVisible) {
65
- const firstOption = this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(0)}`);
75
+ const firstOption = this.element.shadowRoot.querySelector(`#${this.getOptionIdentifier(this.allControls ? -2 : 0)}`);
66
76
  if (firstOption) {
67
77
  firstOption.focus();
68
78
  }
@@ -91,6 +101,14 @@ export class DuetMultiselect {
91
101
  this.value = toggleInArray(this.value, item);
92
102
  this.onChange(e);
93
103
  };
104
+ this.handleSelectAllClick = (e) => {
105
+ this.value = this.processedItems;
106
+ this.onChange(e);
107
+ };
108
+ this.handleClearAllClick = (e) => {
109
+ this.value = [];
110
+ this.onChange(e);
111
+ };
94
112
  this.getOptionIdentifier = (key) => {
95
113
  return `${this.identifier}-option-${key}`;
96
114
  };
@@ -119,6 +137,7 @@ export class DuetMultiselect {
119
137
  this.theme = "";
120
138
  this.labelHidden = false;
121
139
  this.identifier = createID("DuetMultiselect");
140
+ this.allControls = false;
122
141
  this.placeholder = "";
123
142
  this.caption = undefined;
124
143
  this.items = undefined;
@@ -180,7 +199,7 @@ export class DuetMultiselect {
180
199
  }, onKeyDown: (e) => this.onMultiselectKeyDown(e) }, h("duet-label", { theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, id: this.labelId, for: this.identifier }, this.label), this.tooltip && (h("duet-tooltip", { class: "duet-multiselect-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), this.caption && (h("duet-caption", { id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { class: "duet-multiselect-wrapper" }, h("button", { id: this.identifier, ref: el => (this.multiselectElement = el), class: { "duet-multiselect": true, "duet-multiselect-active": this.checkboxesVisible }, tabindex: "0", onClick: () => this.toggleCheckboxes(), onFocus: e => this.onFocus(e), onBlur: e => this.onBlur(e), role: "combobox", "aria-expanded": this.checkboxesVisible ? "true" : "false", "aria-haspopup": "listbox", "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-owns": `${this.identifier}-checkboxes`, onKeyDown: (e) => this.onMultiselectInputKeyDown(e), disabled: this.disabled }, h("span", { role: "textbox", "aria-readonly": "true", "aria-multiline": "false", "aria-autocomplete": "none", "aria-controls": `${this.identifier}-checkboxes` }, this.placeholder), this.value && this.value.length > 0 && (h("duet-badge", { class: "duet-multiselect-badge", margin: "none", theme: this.theme }, this.value.length, " ", this.selectedLangObject[this.language], h("duet-visually-hidden", null, ", ", this.value.map(item => item.label).join(", ")))), h("svg", { role: "img", class: { "duet-multiselect-icon": true, "duet-multiselect-icon--rotate": this.checkboxesVisible }, fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" }))), h("div", { id: `${this.identifier}-checkboxes`, role: "listbox", class: {
181
200
  "duet-multiselect-checkboxes": true,
182
201
  "duet-multiselect-checkboxes-active": this.checkboxesVisible,
183
- }, "aria-activedescendant": this.activeDescendant, "aria-multiselectable": "true" }, this.processedItems &&
202
+ }, "aria-activedescendant": this.activeDescendant, "aria-multiselectable": "true" }, this.processedItems && this.allControls && (h("div", { class: "duet-multiselect-all-control-buttons" }, h("button", { class: "duet-multiselect-select-all", onClick: this.handleSelectAllClick, id: this.getOptionIdentifier(-2), onKeyDown: (e) => this.onCheckboxKeyDown(e, -2) }, this.selectAllLabel[this.language]), h("button", { class: "duet-multiselect-clear-all", onClick: this.handleClearAllClick, id: this.getOptionIdentifier(-1), onKeyDown: (e) => this.onCheckboxKeyDown(e, -1) }, this.clearAllLabel[this.language]))), this.processedItems &&
184
203
  this.processedItems.map((item, key) => {
185
204
  var _a, _b;
186
205
  return (h("duet-checkbox", { identifier: this.getOptionIdentifier(key), role: "option", label: item.label, value: item.value, key: item.value, checked: (_a = this.value) === null || _a === void 0 ? void 0 : _a.includes(item), "accessible-selected": ((_b = this.value) === null || _b === void 0 ? void 0 : _b.includes(item)) ? "true" : undefined, disabled: !this.checkboxesVisible || item.disabled, onDuetChange: e => this.toggleCheckbox(e, item), onKeyDown: (e) => this.onCheckboxKeyDown(e, key), theme: this.theme }));
@@ -286,7 +305,7 @@ export class DuetMultiselect {
286
305
  "references": {
287
306
  "DuetMultiselectItem": {
288
307
  "location": "local",
289
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
308
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
290
309
  }
291
310
  }
292
311
  },
@@ -357,6 +376,24 @@ export class DuetMultiselect {
357
376
  "reflect": false,
358
377
  "defaultValue": "createID(\"DuetMultiselect\")"
359
378
  },
379
+ "allControls": {
380
+ "type": "boolean",
381
+ "mutable": false,
382
+ "complexType": {
383
+ "original": "boolean",
384
+ "resolved": "boolean",
385
+ "references": {}
386
+ },
387
+ "required": false,
388
+ "optional": false,
389
+ "docs": {
390
+ "tags": [],
391
+ "text": "If set, the multiselect will display buttons to select or deselect all items.\nThis should be used when there are many items, consider when the number of items is more than 5."
392
+ },
393
+ "attribute": "all-controls",
394
+ "reflect": false,
395
+ "defaultValue": "false"
396
+ },
360
397
  "placeholder": {
361
398
  "type": "string",
362
399
  "mutable": false,
@@ -401,7 +438,7 @@ export class DuetMultiselect {
401
438
  "references": {
402
439
  "DuetMultiselectItem": {
403
440
  "location": "local",
404
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
441
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
405
442
  }
406
443
  }
407
444
  },
@@ -535,7 +572,7 @@ export class DuetMultiselect {
535
572
  "references": {
536
573
  "DuetMultiselectEvent": {
537
574
  "location": "local",
538
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
575
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
539
576
  }
540
577
  }
541
578
  }
@@ -555,7 +592,7 @@ export class DuetMultiselect {
555
592
  "references": {
556
593
  "DuetMultiselectEvent": {
557
594
  "location": "local",
558
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
595
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
559
596
  }
560
597
  }
561
598
  }
@@ -575,7 +612,7 @@ export class DuetMultiselect {
575
612
  "references": {
576
613
  "DuetMultiselectEvent": {
577
614
  "location": "local",
578
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
615
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-multiselect/duet-multiselect.tsx"
579
616
  }
580
617
  }
581
618
  }
@@ -278,7 +278,7 @@ export class DuetNotificationDrawer {
278
278
  "references": {
279
279
  "DuetNotificationDrawerDirection": {
280
280
  "location": "local",
281
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-notification-drawer/duet-notification-drawer.tsx"
281
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-notification-drawer/duet-notification-drawer.tsx"
282
282
  }
283
283
  }
284
284
  },
@@ -1003,7 +1003,7 @@ export class DuetNumberInput {
1003
1003
  "references": {
1004
1004
  "DuetNumberInputEvent": {
1005
1005
  "location": "local",
1006
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1006
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1007
1007
  }
1008
1008
  }
1009
1009
  }
@@ -1023,7 +1023,7 @@ export class DuetNumberInput {
1023
1023
  "references": {
1024
1024
  "DuetNumberInputEvent": {
1025
1025
  "location": "local",
1026
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1026
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1027
1027
  }
1028
1028
  }
1029
1029
  }
@@ -1043,7 +1043,7 @@ export class DuetNumberInput {
1043
1043
  "references": {
1044
1044
  "DuetNumberInputEvent": {
1045
1045
  "location": "local",
1046
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1046
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1047
1047
  }
1048
1048
  }
1049
1049
  }
@@ -1063,7 +1063,7 @@ export class DuetNumberInput {
1063
1063
  "references": {
1064
1064
  "DuetNumberInputEvent": {
1065
1065
  "location": "local",
1066
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1066
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-number-input/duet-number-input.tsx"
1067
1067
  }
1068
1068
  }
1069
1069
  }
@@ -343,7 +343,7 @@ export class DuetPagination {
343
343
  "references": {
344
344
  "DuetPaginationVariation": {
345
345
  "location": "local",
346
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-pagination/duet-pagination.tsx"
346
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-pagination/duet-pagination.tsx"
347
347
  }
348
348
  }
349
349
  },
@@ -587,7 +587,7 @@ export class DuetPagination {
587
587
  "references": {
588
588
  "DuetPaginationPageEvent": {
589
589
  "location": "local",
590
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-pagination/duet-pagination.tsx"
590
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-pagination/duet-pagination.tsx"
591
591
  }
592
592
  }
593
593
  }
@@ -107,7 +107,7 @@ export class DuetParagraph {
107
107
  "references": {
108
108
  "DuetParagraphSize": {
109
109
  "location": "local",
110
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-paragraph/duet-paragraph.tsx"
110
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-paragraph/duet-paragraph.tsx"
111
111
  }
112
112
  }
113
113
  },
@@ -130,7 +130,7 @@ export class DuetParagraph {
130
130
  "references": {
131
131
  "DuetParagraphWeight": {
132
132
  "location": "local",
133
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-paragraph/duet-paragraph.tsx"
133
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-paragraph/duet-paragraph.tsx"
134
134
  }
135
135
  }
136
136
  },
@@ -153,7 +153,7 @@ export class DuetParagraph {
153
153
  "references": {
154
154
  "DuetParagraphVariation": {
155
155
  "location": "local",
156
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-paragraph/duet-paragraph.tsx"
156
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-paragraph/duet-paragraph.tsx"
157
157
  }
158
158
  }
159
159
  },
@@ -327,7 +327,7 @@ export class DuetPopupMenu {
327
327
  "references": {
328
328
  "DuetPopupMenuEvent": {
329
329
  "location": "local",
330
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-popup-menu/duet-popup-menu.tsx"
330
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-popup-menu/duet-popup-menu.tsx"
331
331
  }
332
332
  }
333
333
  }
@@ -272,7 +272,7 @@ export class DuetPopupMenuItem {
272
272
  "references": {
273
273
  "DuetPopupMenuItemEvent": {
274
274
  "location": "local",
275
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-popup-menu-item/duet-popup-menu-item.tsx"
275
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-popup-menu-item/duet-popup-menu-item.tsx"
276
276
  }
277
277
  }
278
278
  }
@@ -292,7 +292,7 @@ export class DuetPopupMenuItem {
292
292
  "references": {
293
293
  "DuetPopupMenuItemEvent": {
294
294
  "location": "local",
295
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-popup-menu-item/duet-popup-menu-item.tsx"
295
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-popup-menu-item/duet-popup-menu-item.tsx"
296
296
  }
297
297
  }
298
298
  }
@@ -540,7 +540,7 @@ export class DuetRadio {
540
540
  "references": {
541
541
  "DuetRadioEvent": {
542
542
  "location": "local",
543
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-radio/duet-radio.tsx"
543
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-radio/duet-radio.tsx"
544
544
  }
545
545
  }
546
546
  }
@@ -560,7 +560,7 @@ export class DuetRadio {
560
560
  "references": {
561
561
  "DuetRadioEvent": {
562
562
  "location": "local",
563
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-radio/duet-radio.tsx"
563
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-radio/duet-radio.tsx"
564
564
  }
565
565
  }
566
566
  }
@@ -580,7 +580,7 @@ export class DuetRadio {
580
580
  "references": {
581
581
  "DuetRadioEvent": {
582
582
  "location": "local",
583
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-radio/duet-radio.tsx"
583
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-radio/duet-radio.tsx"
584
584
  }
585
585
  }
586
586
  }
@@ -512,7 +512,7 @@ export class DuetRangeSlider {
512
512
  "references": {
513
513
  "DuetRangeChangeEvent": {
514
514
  "location": "local",
515
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-range-slider/duet-range-slider.tsx"
515
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-range-slider/duet-range-slider.tsx"
516
516
  }
517
517
  }
518
518
  }
@@ -532,7 +532,7 @@ export class DuetRangeSlider {
532
532
  "references": {
533
533
  "DuetRangeChangeEvent": {
534
534
  "location": "local",
535
- "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-range-slider/duet-range-slider.tsx"
535
+ "path": "/Users/mgibas/workspace/duet/packages/components/src/components/duet-range-slider/duet-range-slider.tsx"
536
536
  }
537
537
  }
538
538
  }