@duetds/components 6.10.1 → 6.10.3

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 (575) hide show
  1. package/hydrate/index.js +4130 -3647
  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 +95 -0
  15. package/lib/cjs/duet-choice_2.cjs.entry.js +24 -11
  16. package/lib/cjs/duet-collapsible.cjs.entry.js +5 -3
  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 +23 -5
  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 +1 -1
  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 +8 -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 +43 -0
  46. package/lib/cjs/duet-popup-menu.cjs.entry.js +109 -0
  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 +5 -4
  50. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  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 +4 -4
  55. package/lib/cjs/duet-show-more.cjs.entry.js +95 -0
  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 +4 -1174
  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-visually-hidden.cjs.entry.js +1 -1
  76. package/lib/cjs/duet.cjs.js +2 -2
  77. package/lib/cjs/floating-ui.dom.esm-3801794e.js +1251 -0
  78. package/lib/cjs/{focus-utils-b45e4830.js → focus-utils-fa8771cc.js} +1 -1
  79. package/lib/cjs/{index-a6cfed65.js → index-ad229c23.js} +1 -1
  80. package/lib/cjs/loader.cjs.js +2 -2
  81. package/lib/collection/collection-manifest.json +4 -0
  82. package/lib/collection/components/duet-chip/duet-chip.css +174 -0
  83. package/lib/collection/components/duet-chip/duet-chip.js +320 -0
  84. package/lib/collection/components/duet-choice/duet-choice.css +48 -21
  85. package/lib/collection/components/duet-choice/duet-choice.js +39 -8
  86. package/lib/collection/components/duet-collapsible/duet-collapsible.css +10 -2
  87. package/lib/collection/components/duet-collapsible/duet-collapsible.js +22 -1
  88. package/lib/collection/components/duet-editable-table/duet-editable-table.js +3 -1
  89. package/lib/collection/components/duet-number-input/duet-number-input.js +23 -0
  90. package/lib/collection/components/duet-popup-menu/duet-popup-menu.css +50 -0
  91. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +317 -0
  92. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.css +69 -0
  93. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +205 -0
  94. package/lib/collection/components/duet-radio/duet-radio.css +3 -3
  95. package/lib/collection/components/duet-radio/duet-radio.js +9 -3
  96. package/lib/collection/components/duet-shaped-image/duet-shaped-image.css +12 -2
  97. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +25 -2
  98. package/lib/collection/components/duet-show-more/duet-show-more.css +46 -0
  99. package/lib/collection/components/duet-show-more/duet-show-more.js +214 -0
  100. package/lib/collection/components/duet-upload/duet-upload.js +48 -1
  101. package/lib/collection/components/duet-upload/upload-item.js +8 -2
  102. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  103. package/lib/dist-custom-elements/duet-alert.js +1 -1
  104. package/lib/dist-custom-elements/duet-badge.js +1 -1
  105. package/lib/dist-custom-elements/duet-banner.js +4 -4
  106. package/lib/dist-custom-elements/duet-breadcrumb.js +2 -2
  107. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  108. package/lib/dist-custom-elements/duet-button.js +1 -1
  109. package/lib/dist-custom-elements/duet-callout.js +3 -3
  110. package/lib/dist-custom-elements/duet-caption.js +1 -1
  111. package/lib/dist-custom-elements/duet-card.js +3 -3
  112. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  113. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  114. package/lib/dist-custom-elements/duet-chip.d.ts +11 -0
  115. package/lib/dist-custom-elements/duet-chip.js +125 -0
  116. package/lib/dist-custom-elements/duet-choice-group.js +6 -6
  117. package/lib/dist-custom-elements/duet-choice.js +28 -14
  118. package/lib/dist-custom-elements/duet-collapsible.js +7 -4
  119. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  120. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  121. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  122. package/lib/dist-custom-elements/duet-date-picker.js +10 -10
  123. package/lib/dist-custom-elements/duet-divider.js +1 -1
  124. package/lib/dist-custom-elements/duet-editable-table.js +10 -8
  125. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  126. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  127. package/lib/dist-custom-elements/duet-footer.js +4 -4
  128. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  129. package/lib/dist-custom-elements/duet-grid.js +1 -1
  130. package/lib/dist-custom-elements/duet-header.js +8 -8
  131. package/lib/dist-custom-elements/duet-heading.js +1 -1
  132. package/lib/dist-custom-elements/duet-hero.js +9 -9
  133. package/lib/dist-custom-elements/duet-icon.js +1 -1
  134. package/lib/dist-custom-elements/duet-input.js +1 -1
  135. package/lib/dist-custom-elements/duet-label.js +1 -1
  136. package/lib/dist-custom-elements/duet-layout.js +1 -1
  137. package/lib/dist-custom-elements/duet-link.js +1 -1
  138. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  139. package/lib/dist-custom-elements/duet-list.js +1 -1
  140. package/lib/dist-custom-elements/duet-logo.js +1 -1
  141. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  142. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  143. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  144. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  145. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  146. package/lib/dist-custom-elements/duet-modal.js +7 -7
  147. package/lib/dist-custom-elements/duet-multiselect.js +8 -8
  148. package/lib/dist-custom-elements/duet-nav.js +1 -1
  149. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  150. package/lib/dist-custom-elements/duet-notification.js +2 -2
  151. package/lib/dist-custom-elements/duet-number-input.js +18 -10
  152. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  153. package/lib/dist-custom-elements/duet-pagination.js +7 -7
  154. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  155. package/lib/dist-custom-elements/duet-popup-menu-item.d.ts +11 -0
  156. package/lib/dist-custom-elements/duet-popup-menu-item.js +72 -0
  157. package/lib/dist-custom-elements/duet-popup-menu.d.ts +11 -0
  158. package/lib/dist-custom-elements/duet-popup-menu.js +137 -0
  159. package/lib/dist-custom-elements/duet-progress.js +1 -1
  160. package/lib/dist-custom-elements/duet-promo-card.js +3 -3
  161. package/lib/dist-custom-elements/duet-radio-group.js +6 -6
  162. package/lib/dist-custom-elements/duet-radio.js +6 -5
  163. package/lib/dist-custom-elements/duet-range-slider.js +2 -2
  164. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  165. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  166. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  167. package/lib/dist-custom-elements/duet-select.js +1 -1
  168. package/lib/dist-custom-elements/duet-shaped-image.js +5 -4
  169. package/lib/dist-custom-elements/duet-show-more.d.ts +11 -0
  170. package/lib/dist-custom-elements/duet-show-more.js +137 -0
  171. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  172. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  173. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  174. package/lib/dist-custom-elements/duet-slideout-panel.js +2 -2
  175. package/lib/dist-custom-elements/duet-slideout.js +2 -2
  176. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  177. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  178. package/lib/dist-custom-elements/duet-step.js +4 -4
  179. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  180. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  181. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  182. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  183. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  184. package/lib/dist-custom-elements/duet-tab-group.js +11 -11
  185. package/lib/dist-custom-elements/duet-tab.js +1 -1
  186. package/lib/dist-custom-elements/duet-table.js +1 -1
  187. package/lib/dist-custom-elements/duet-textarea.js +8 -8
  188. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  189. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  190. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  191. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  192. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  193. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  194. package/lib/dist-custom-elements/duet-tray.js +3 -3
  195. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  196. package/lib/dist-custom-elements/duet-upload.js +37 -20
  197. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  198. package/lib/dist-custom-elements/index.js +1 -1
  199. package/lib/dist-custom-elements/{p-7a8d0bb0.js → p-0639a930.js} +1 -1
  200. package/lib/dist-custom-elements/{p-d7b4d591.js → p-06f56040.js} +1 -1
  201. package/lib/dist-custom-elements/{p-3b39da12.js → p-0bab8976.js} +3 -3
  202. package/lib/dist-custom-elements/{p-1344c068.js → p-1460c5f4.js} +1 -1
  203. package/lib/dist-custom-elements/{p-a15eaed8.js → p-362cf634.js} +2 -2
  204. package/lib/dist-custom-elements/{p-4fcae101.js → p-4524a59b.js} +2 -2
  205. package/lib/dist-custom-elements/{p-0e902571.js → p-581d4969.js} +1 -1
  206. package/lib/dist-custom-elements/{p-ceee58b4.js → p-59964344.js} +1 -1
  207. package/lib/dist-custom-elements/{p-8b72e2b2.js → p-8549a5d3.js} +1 -1
  208. package/lib/dist-custom-elements/{p-9db7387e.js → p-87b42dc0.js} +3 -3
  209. package/lib/dist-custom-elements/{p-ddfc5de9.js → p-88a1aa29.js} +1 -1
  210. package/lib/dist-custom-elements/{p-0674039c.js → p-9a39285c.js} +1 -1
  211. package/lib/dist-custom-elements/{p-d9a3be78.js → p-9e321809.js} +1 -1
  212. package/lib/dist-custom-elements/{p-72c5512a.js → p-a76c2c68.js} +6 -6
  213. package/lib/dist-custom-elements/{p-bcf1e39a.js → p-ab8093ce.js} +2 -2
  214. package/lib/dist-custom-elements/{p-28c1f4ec.js → p-abf2f8eb.js} +1 -1
  215. package/lib/dist-custom-elements/{p-628b8684.js → p-b0a1fc7a.js} +1 -1
  216. package/lib/dist-custom-elements/{p-1d986611.js → p-b0e822ad.js} +1 -1
  217. package/lib/dist-custom-elements/{p-75c1e787.js → p-bd3f4de1.js} +1 -1
  218. package/lib/dist-custom-elements/{p-8dd1cf45.js → p-c221f8d5.js} +5 -5
  219. package/lib/dist-custom-elements/{p-2f9bbe4a.js → p-c3a8f22f.js} +1 -1
  220. package/lib/dist-custom-elements/{p-fe45f59f.js → p-c5723f69.js} +1 -1
  221. package/lib/dist-custom-elements/{p-717d775c.js → p-c9cee36a.js} +1 -1
  222. package/lib/dist-custom-elements/{p-351d00f1.js → p-d993c8ca.js} +4 -4
  223. package/lib/dist-custom-elements/{p-633e1ebc.js → p-dade840c.js} +2 -2
  224. package/lib/dist-custom-elements/{p-48515caf.js → p-ddbc4897.js} +5 -5
  225. package/lib/dist-custom-elements/{p-d3213a33.js → p-df10a767.js} +71 -274
  226. package/lib/dist-custom-elements/{p-fdc1ca33.js → p-e550208a.js} +1 -1
  227. package/lib/dist-custom-elements/{p-65758ed5.js → p-e6027c0e.js} +8 -8
  228. package/lib/dist-custom-elements/{p-a46a6322.js → p-f4a36471.js} +1 -1
  229. package/lib/dist-custom-elements/{p-1ac08a92.js → p-f97098ff.js} +1 -1
  230. package/lib/dist-custom-elements/p-fa4af49a.js +278 -0
  231. package/lib/duet/duet.esm.js +1 -1
  232. package/lib/duet/duet.js +1 -1
  233. package/lib/duet/{p-87cf954f.system.entry.js → p-000197bb.system.entry.js} +1 -1
  234. package/lib/duet/p-00c61228.system.entry.js +4 -0
  235. package/lib/duet/{p-01a6becd.system.entry.js → p-02a9b697.system.entry.js} +2 -2
  236. package/lib/duet/{p-4d93a692.entry.js → p-07795672.entry.js} +1 -1
  237. package/lib/duet/{p-82047e57.system.entry.js → p-0b208f94.system.entry.js} +1 -1
  238. package/lib/duet/{p-75f889b4.system.entry.js → p-0b4324b1.system.entry.js} +1 -1
  239. package/lib/duet/p-0c7c6acc.system.entry.js +4 -0
  240. package/lib/duet/{p-631d95f8.system.entry.js → p-0de3b52d.system.entry.js} +1 -1
  241. package/lib/duet/{p-5a229ae7.system.entry.js → p-0f05038e.system.entry.js} +1 -1
  242. package/lib/duet/{p-8c4f1396.system.entry.js → p-0f49469b.system.entry.js} +1 -1
  243. package/lib/duet/{p-8542d6f4.entry.js → p-0fc4fd1f.entry.js} +1 -1
  244. package/lib/duet/p-0fdddc6d.system.entry.js +4 -0
  245. package/lib/duet/{p-16ca0476.entry.js → p-0fe6e2f3.entry.js} +1 -1
  246. package/lib/duet/p-1090bfbd.entry.js +4 -0
  247. package/lib/duet/p-10d47bb3.entry.js +4 -0
  248. package/lib/duet/p-10d57786.entry.js +4 -0
  249. package/lib/duet/{p-2cadaf24.entry.js → p-17569309.entry.js} +1 -1
  250. package/lib/duet/{p-02a26b88.entry.js → p-18084aa4.entry.js} +1 -1
  251. package/lib/duet/{p-89a01897.system.entry.js → p-18b63745.system.entry.js} +1 -1
  252. package/lib/duet/{p-1d0a1fa6.system.entry.js → p-190e7c1f.system.entry.js} +1 -1
  253. package/lib/duet/{p-9be7d929.system.entry.js → p-193d3aaa.system.entry.js} +1 -1
  254. package/lib/duet/p-1983b903.system.entry.js +4 -0
  255. package/lib/duet/p-2271aa12.entry.js +4 -0
  256. package/lib/duet/{p-69617bca.entry.js → p-242c1c1a.entry.js} +1 -1
  257. package/lib/duet/{p-a9ce97b9.system.entry.js → p-26cfed76.system.entry.js} +1 -1
  258. package/lib/duet/p-26fb19cc.entry.js +4 -0
  259. package/lib/duet/{p-5b66a87d.entry.js → p-29dd2b2b.entry.js} +1 -1
  260. package/lib/duet/{p-cda24383.entry.js → p-2a8ca3eb.entry.js} +1 -1
  261. package/lib/duet/{p-7243f2ca.entry.js → p-2ab30c7f.entry.js} +1 -1
  262. package/lib/duet/{p-7f7ae89e.entry.js → p-2f2554c2.entry.js} +1 -1
  263. package/lib/duet/p-31a14896.entry.js +4 -0
  264. package/lib/duet/{p-445317f4.system.entry.js → p-33ace290.system.entry.js} +1 -1
  265. package/lib/duet/{p-5f860b63.entry.js → p-33e8ba00.entry.js} +1 -1
  266. package/lib/duet/{p-19dcac63.entry.js → p-346b440a.entry.js} +1 -1
  267. package/lib/duet/{p-70ab41b1.entry.js → p-369190ba.entry.js} +1 -1
  268. package/lib/duet/{p-ff7274a1.system.entry.js → p-38b225ec.system.entry.js} +1 -1
  269. package/lib/duet/{p-0bb09731.system.entry.js → p-3ae87f9a.system.entry.js} +1 -1
  270. package/lib/duet/p-3aebf88e.entry.js +4 -0
  271. package/lib/duet/p-3d4d7d03.system.entry.js +4 -0
  272. package/lib/duet/{p-3144ba75.entry.js → p-3fe319db.entry.js} +1 -1
  273. package/lib/duet/p-4047730e.entry.js +4 -0
  274. package/lib/duet/p-41993ad4.js +4 -0
  275. package/lib/duet/{p-1c7bdfb0.entry.js → p-42199e80.entry.js} +1 -1
  276. package/lib/duet/p-4489355c.system.entry.js +4 -0
  277. package/lib/duet/{p-c490fc82.entry.js → p-45df6b17.entry.js} +1 -1
  278. package/lib/duet/{p-29a1886d.entry.js → p-476bec1d.entry.js} +1 -1
  279. package/lib/duet/{p-a279383c.entry.js → p-49cbf9cc.entry.js} +1 -1
  280. package/lib/duet/{p-5b939562.entry.js → p-49f5f27e.entry.js} +1 -1
  281. package/lib/duet/p-4f40525e.system.entry.js +4 -0
  282. package/lib/duet/{p-2ab14f9d.entry.js → p-53800205.entry.js} +1 -1
  283. package/lib/duet/{p-3794c025.system.entry.js → p-54607ab5.system.entry.js} +1 -1
  284. package/lib/duet/{p-1354a068.entry.js → p-5514488e.entry.js} +1 -1
  285. package/lib/duet/{p-5369340a.system.entry.js → p-5590d075.system.entry.js} +1 -1
  286. package/lib/duet/p-57ec25ee.entry.js +4 -0
  287. package/lib/duet/p-59570fb7.system.entry.js +4 -0
  288. package/lib/duet/{p-f5e2ac5a.system.entry.js → p-596343b6.system.entry.js} +1 -1
  289. package/lib/duet/{p-8905f9e9.entry.js → p-5c5dd33e.entry.js} +1 -1
  290. package/lib/duet/p-5dfc4e72.entry.js +4 -0
  291. package/lib/duet/{p-b7847f6c.system.entry.js → p-5f9fc349.system.entry.js} +1 -1
  292. package/lib/duet/{p-c60e5e81.entry.js → p-60210fa0.entry.js} +1 -1
  293. package/lib/duet/{p-4b7d3edc.entry.js → p-6059377c.entry.js} +1 -1
  294. package/lib/duet/{p-60f7231d.system.entry.js → p-61dbdf5a.system.entry.js} +1 -1
  295. package/lib/duet/{p-e5d2f039.system.entry.js → p-639c44ed.system.entry.js} +1 -1
  296. package/lib/duet/{p-1c1e78f4.system.entry.js → p-642a879a.system.entry.js} +1 -1
  297. package/lib/duet/{p-0ee1b7f3.entry.js → p-645d04bc.entry.js} +1 -1
  298. package/lib/duet/{p-65beaf78.entry.js → p-65180079.entry.js} +1 -1
  299. package/lib/duet/{p-e2e3b866.system.entry.js → p-659b9600.system.entry.js} +1 -1
  300. package/lib/duet/{p-cb896d18.system.entry.js → p-679721de.system.entry.js} +1 -1
  301. package/lib/duet/{p-3d0cabd0.entry.js → p-67f35157.entry.js} +1 -1
  302. package/lib/duet/{p-5b705989.system.js → p-6dea5bde.system.js} +1 -1
  303. package/lib/duet/{p-85350ba7.system.entry.js → p-6fafabc4.system.entry.js} +1 -1
  304. package/lib/duet/{p-a7ad439b.entry.js → p-6ff2601a.entry.js} +1 -1
  305. package/lib/duet/p-72a8644b.system.entry.js +4 -0
  306. package/lib/duet/{p-b7c8caab.system.entry.js → p-74bf128c.system.entry.js} +1 -1
  307. package/lib/duet/{p-7b3b57b5.system.entry.js → p-7604e184.system.entry.js} +1 -1
  308. package/lib/duet/{p-1c1d9986.system.entry.js → p-76c68d61.system.entry.js} +1 -1
  309. package/lib/duet/{p-009c5ed3.entry.js → p-77432368.entry.js} +1 -1
  310. package/lib/duet/{p-0815f8d2.system.entry.js → p-7b75c66a.system.entry.js} +1 -1
  311. package/lib/duet/{p-8bdf321a.system.entry.js → p-7c81a1aa.system.entry.js} +1 -1
  312. package/lib/duet/{p-ea6b5401.system.entry.js → p-7ce403a2.system.entry.js} +1 -1
  313. package/lib/duet/{p-95e558a0.system.entry.js → p-7fd5d974.system.entry.js} +1 -1
  314. package/lib/duet/{p-1402a469.system.entry.js → p-7fe4bf9c.system.entry.js} +1 -1
  315. package/lib/duet/{p-80fcd4a9.system.entry.js → p-8168ef41.system.entry.js} +2 -2
  316. package/lib/duet/{p-d8266018.system.entry.js → p-8215e341.system.entry.js} +1 -1
  317. package/lib/duet/p-82b5380b.system.js +4 -0
  318. package/lib/duet/p-82ebc3a6.system.entry.js +4 -0
  319. package/lib/duet/{p-61232a45.system.entry.js → p-831c76d5.system.entry.js} +1 -1
  320. package/lib/duet/{p-513794cb.system.entry.js → p-855f2712.system.entry.js} +1 -1
  321. package/lib/duet/{p-eb0c0713.system.entry.js → p-87ea8cd4.system.entry.js} +1 -1
  322. package/lib/duet/{p-2654e699.entry.js → p-8a06964b.entry.js} +1 -1
  323. package/lib/duet/{p-3c237b9a.system.entry.js → p-8d9dc8b8.system.entry.js} +1 -1
  324. package/lib/duet/{p-74571004.entry.js → p-8fc58e21.entry.js} +1 -1
  325. package/lib/duet/{p-73fed2b4.entry.js → p-9277a98e.entry.js} +1 -1
  326. package/lib/duet/{p-594fcb94.entry.js → p-9781cd5a.entry.js} +1 -1
  327. package/lib/duet/{p-7f8d73d1.system.entry.js → p-984be1b2.system.entry.js} +1 -1
  328. package/lib/duet/{p-3bad0565.entry.js → p-9ad4b03e.entry.js} +1 -1
  329. package/lib/duet/{p-221a319e.system.entry.js → p-9b4b6a88.system.entry.js} +1 -1
  330. package/lib/duet/{p-9fe84140.system.entry.js → p-9cec464f.system.entry.js} +1 -1
  331. package/lib/duet/{p-96cfe85e.entry.js → p-a1e03781.entry.js} +1 -1
  332. package/lib/duet/{p-f66ba762.system.entry.js → p-a6f4302f.system.entry.js} +1 -1
  333. package/lib/duet/{p-fbef8044.system.js → p-a7774674.system.js} +1 -1
  334. package/lib/duet/{p-9f7016b8.entry.js → p-a80b6e7d.entry.js} +1 -1
  335. package/lib/duet/{p-e7e2beca.entry.js → p-a9fac1f4.entry.js} +1 -1
  336. package/lib/duet/{p-5eb79fac.system.entry.js → p-aa1c11b3.system.entry.js} +1 -1
  337. package/lib/duet/{p-b5f84ba1.entry.js → p-ab15c9ba.entry.js} +1 -1
  338. package/lib/duet/{p-04e21013.entry.js → p-b6f46697.entry.js} +1 -1
  339. package/lib/duet/{p-73018bd7.entry.js → p-bb3ab94b.entry.js} +1 -1
  340. package/lib/duet/{p-c0151dc7.entry.js → p-bb450fde.entry.js} +1 -1
  341. package/lib/duet/{p-e2a64fc4.js → p-bcb2eb05.js} +1 -1
  342. package/lib/duet/{p-fe826eeb.entry.js → p-bd21ed24.entry.js} +1 -1
  343. package/lib/duet/{p-e8145797.system.entry.js → p-be64cb47.system.entry.js} +1 -1
  344. package/lib/duet/{p-127549bc.system.entry.js → p-bf5e03b7.system.entry.js} +1 -1
  345. package/lib/duet/{p-acfb1306.entry.js → p-c01a1e38.entry.js} +1 -1
  346. package/lib/duet/{p-3ea2c86d.system.entry.js → p-c20f14ee.system.entry.js} +1 -1
  347. package/lib/duet/{p-2d50b598.entry.js → p-c56f6296.entry.js} +1 -1
  348. package/lib/duet/{p-95740985.system.entry.js → p-c591ed98.system.entry.js} +1 -1
  349. package/lib/duet/{p-2f3e497c.system.entry.js → p-c838f35a.system.entry.js} +1 -1
  350. package/lib/duet/{p-7e67d36d.system.entry.js → p-c8af967c.system.entry.js} +1 -1
  351. package/lib/duet/{p-37909c09.system.entry.js → p-cd14aa98.system.entry.js} +1 -1
  352. package/lib/duet/{p-906f44d1.system.entry.js → p-ced270b7.system.entry.js} +1 -1
  353. package/lib/duet/{p-50a7fb1c.entry.js → p-d1308874.entry.js} +1 -1
  354. package/lib/duet/{p-518d1263.entry.js → p-d1fdf904.entry.js} +1 -1
  355. package/lib/duet/{p-665f67ed.entry.js → p-d20bc0fc.entry.js} +1 -1
  356. package/lib/duet/{p-8bba046c.entry.js → p-d309acda.entry.js} +1 -1
  357. package/lib/duet/{p-5fed2b0f.entry.js → p-d707c91d.entry.js} +1 -1
  358. package/lib/duet/{p-388212f3.entry.js → p-d70c1993.entry.js} +1 -1
  359. package/lib/duet/{p-762401f8.entry.js → p-d837c30c.entry.js} +1 -1
  360. package/lib/duet/{p-c0c28ecb.entry.js → p-d90b9d82.entry.js} +1 -1
  361. package/lib/duet/{p-759770b5.system.entry.js → p-d95542b2.system.entry.js} +1 -1
  362. package/lib/duet/{p-8f235d9a.system.entry.js → p-dcb58b72.system.entry.js} +1 -1
  363. package/lib/duet/p-df10a767.js +4 -0
  364. package/lib/duet/{p-3508f30c.system.entry.js → p-e13b266c.system.entry.js} +1 -1
  365. package/lib/duet/{p-b9e1d2e3.system.entry.js → p-e1470177.system.entry.js} +1 -1
  366. package/lib/duet/{p-8c8ab0cd.entry.js → p-e195ff77.entry.js} +1 -1
  367. package/lib/duet/{p-59e1c2ab.entry.js → p-e26c92ae.entry.js} +1 -1
  368. package/lib/duet/{p-249de5f3.entry.js → p-e33b158e.entry.js} +1 -1
  369. package/lib/duet/{p-87415ffd.system.entry.js → p-e3a868e7.system.entry.js} +1 -1
  370. package/lib/duet/{p-724bd42f.system.entry.js → p-e5ff4740.system.entry.js} +1 -1
  371. package/lib/duet/{p-b14ce6d0.system.entry.js → p-e664403b.system.entry.js} +1 -1
  372. package/lib/duet/{p-c13f03ef.entry.js → p-e6701508.entry.js} +1 -1
  373. package/lib/duet/{p-848d80c0.entry.js → p-ea0b3f23.entry.js} +1 -1
  374. package/lib/duet/{p-0786d3a0.entry.js → p-eaf5b796.entry.js} +1 -1
  375. package/lib/duet/{p-59b62cfa.entry.js → p-f01b3bfa.entry.js} +1 -1
  376. package/lib/duet/{p-f2403023.system.entry.js → p-f1bce38a.system.entry.js} +1 -1
  377. package/lib/duet/{p-1d42396a.system.entry.js → p-f3baf86a.system.entry.js} +1 -1
  378. package/lib/duet/{p-53dec0a5.system.entry.js → p-f605a26a.system.entry.js} +1 -1
  379. package/lib/duet/{p-470110fc.entry.js → p-f9191467.entry.js} +1 -1
  380. package/lib/duet/p-f93a2b8c.system.js +4 -0
  381. package/lib/duet/p-fb88df1a.entry.js +4 -0
  382. package/lib/duet/{p-c9460722.system.entry.js → p-fca2f60d.system.entry.js} +1 -1
  383. package/lib/duet/{p-7743b137.entry.js → p-fcc9c563.entry.js} +1 -1
  384. package/lib/duet/{p-1fb0d391.entry.js → p-fce75de7.entry.js} +1 -1
  385. package/lib/duet/{p-4b2e1595.system.entry.js → p-fd760e06.system.entry.js} +1 -1
  386. package/lib/duet/{p-6b1a925a.system.entry.js → p-ff0c5b5b.system.entry.js} +1 -1
  387. package/lib/duet/{p-8511fe95.entry.js → p-ff814fdc.entry.js} +1 -1
  388. package/lib/esm/duet-action-button.entry.js +1 -1
  389. package/lib/esm/duet-alert.entry.js +1 -1
  390. package/lib/esm/duet-badge.entry.js +1 -1
  391. package/lib/esm/duet-banner.entry.js +1 -1
  392. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  393. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  394. package/lib/esm/duet-button_2.entry.js +1 -1
  395. package/lib/esm/duet-callout.entry.js +1 -1
  396. package/lib/esm/duet-caption_4.entry.js +1 -1
  397. package/lib/esm/duet-card.entry.js +1 -1
  398. package/lib/esm/duet-checkbox.entry.js +1 -1
  399. package/lib/esm/duet-checkmark.entry.js +1 -1
  400. package/lib/esm/duet-chip.entry.js +91 -0
  401. package/lib/esm/duet-choice_2.entry.js +24 -11
  402. package/lib/esm/duet-collapsible.entry.js +5 -3
  403. package/lib/esm/duet-combobox.entry.js +1 -1
  404. package/lib/esm/duet-contact-card.entry.js +1 -1
  405. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  406. package/lib/esm/duet-date-picker.entry.js +2 -2
  407. package/lib/esm/duet-divider_2.entry.js +1 -1
  408. package/lib/esm/duet-editable-table_3.entry.js +23 -5
  409. package/lib/esm/duet-empty-state.entry.js +1 -1
  410. package/lib/esm/duet-fieldset.entry.js +1 -1
  411. package/lib/esm/duet-footer.entry.js +1 -1
  412. package/lib/esm/duet-grid_2.entry.js +1 -1
  413. package/lib/esm/duet-header_2.entry.js +1 -1
  414. package/lib/esm/duet-hero.entry.js +1 -1
  415. package/lib/esm/duet-icon.entry.js +1 -1
  416. package/lib/esm/duet-input_2.entry.js +1 -1
  417. package/lib/esm/duet-layout.entry.js +1 -1
  418. package/lib/esm/duet-list_2.entry.js +1 -1
  419. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  420. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  421. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  422. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  423. package/lib/esm/duet-menu-bar.entry.js +1 -1
  424. package/lib/esm/duet-modal.entry.js +2 -2
  425. package/lib/esm/duet-multiselect.entry.js +1 -1
  426. package/lib/esm/duet-nav.entry.js +1 -1
  427. package/lib/esm/duet-notification_2.entry.js +1 -1
  428. package/lib/esm/duet-number-input.entry.js +8 -1
  429. package/lib/esm/duet-page-heading.entry.js +1 -1
  430. package/lib/esm/duet-pagination_2.entry.js +1 -1
  431. package/lib/esm/duet-popup-menu-item.entry.js +39 -0
  432. package/lib/esm/duet-popup-menu.entry.js +105 -0
  433. package/lib/esm/duet-progress.entry.js +1 -1
  434. package/lib/esm/duet-promo-card.entry.js +1 -1
  435. package/lib/esm/duet-radio_2.entry.js +5 -4
  436. package/lib/esm/duet-range-slider.entry.js +1 -1
  437. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  438. package/lib/esm/duet-section-layout.entry.js +1 -1
  439. package/lib/esm/duet-select.entry.js +1 -1
  440. package/lib/esm/duet-shaped-image.entry.js +4 -4
  441. package/lib/esm/duet-show-more.entry.js +91 -0
  442. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  443. package/lib/esm/duet-slideout-link.entry.js +1 -1
  444. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  445. package/lib/esm/duet-slideout-panel.entry.js +2 -2
  446. package/lib/esm/duet-slideout.entry.js +2 -2
  447. package/lib/esm/duet-step_2.entry.js +1 -1
  448. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  449. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  450. package/lib/esm/duet-submenu-bar-link.entry.js +1 -1
  451. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  452. package/lib/esm/duet-textarea.entry.js +1 -1
  453. package/lib/esm/duet-toggle.entry.js +1 -1
  454. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  455. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  456. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  457. package/lib/esm/duet-toolbar.entry.js +1 -1
  458. package/lib/esm/duet-tooltip.entry.js +2 -1172
  459. package/lib/esm/duet-tray.entry.js +1 -1
  460. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  461. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  462. package/lib/esm/duet.js +3 -3
  463. package/lib/esm/floating-ui.dom.esm-37dc174a.js +1245 -0
  464. package/lib/esm/{focus-utils-4c89d596.js → focus-utils-20785530.js} +1 -1
  465. package/lib/esm/{index-b45ea754.js → index-dcb8c495.js} +1 -1
  466. package/lib/esm/loader.js +3 -3
  467. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  468. package/lib/esm-es5/duet-alert.entry.js +1 -1
  469. package/lib/esm-es5/duet-badge.entry.js +1 -1
  470. package/lib/esm-es5/duet-banner.entry.js +1 -1
  471. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  472. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  473. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  474. package/lib/esm-es5/duet-callout.entry.js +1 -1
  475. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  476. package/lib/esm-es5/duet-card.entry.js +1 -1
  477. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  478. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  479. package/lib/esm-es5/duet-chip.entry.js +4 -0
  480. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  481. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  482. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  483. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  484. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  485. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  486. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  487. package/lib/esm-es5/duet-editable-table_3.entry.js +2 -2
  488. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  489. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  490. package/lib/esm-es5/duet-footer.entry.js +1 -1
  491. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  492. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  493. package/lib/esm-es5/duet-hero.entry.js +1 -1
  494. package/lib/esm-es5/duet-icon.entry.js +1 -1
  495. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  496. package/lib/esm-es5/duet-layout.entry.js +1 -1
  497. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  498. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  499. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  500. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  501. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  502. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  503. package/lib/esm-es5/duet-modal.entry.js +1 -1
  504. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  505. package/lib/esm-es5/duet-nav.entry.js +1 -1
  506. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  507. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  508. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  509. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  510. package/lib/esm-es5/duet-popup-menu-item.entry.js +4 -0
  511. package/lib/esm-es5/duet-popup-menu.entry.js +4 -0
  512. package/lib/esm-es5/duet-progress.entry.js +1 -1
  513. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  514. package/lib/esm-es5/duet-radio_2.entry.js +2 -2
  515. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  516. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  517. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  518. package/lib/esm-es5/duet-select.entry.js +1 -1
  519. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  520. package/lib/esm-es5/duet-show-more.entry.js +4 -0
  521. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  522. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  523. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  524. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  525. package/lib/esm-es5/duet-slideout.entry.js +2 -2
  526. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  527. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  528. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  529. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  530. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  531. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  532. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  533. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  534. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  535. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  536. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  537. package/lib/esm-es5/duet-tooltip.entry.js +2 -2
  538. package/lib/esm-es5/duet-tray.entry.js +1 -1
  539. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  540. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  541. package/lib/esm-es5/duet.js +1 -1
  542. package/lib/esm-es5/floating-ui.dom.esm-37dc174a.js +4 -0
  543. package/lib/esm-es5/focus-utils-20785530.js +4 -0
  544. package/lib/esm-es5/{index-b45ea754.js → index-dcb8c495.js} +1 -1
  545. package/lib/esm-es5/loader.js +1 -1
  546. package/lib/types/components/duet-chip/duet-chip.d.ts +83 -0
  547. package/lib/types/components/duet-choice/duet-choice.d.ts +7 -0
  548. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +5 -0
  549. package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +1 -0
  550. package/lib/types/components/duet-number-input/duet-number-input.d.ts +4 -0
  551. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +67 -0
  552. package/lib/types/components/duet-popup-menu-item/duet-popup-menu-item.d.ts +47 -0
  553. package/lib/types/components/duet-radio/duet-radio.d.ts +4 -0
  554. package/lib/types/components/duet-shaped-image/duet-shaped-image.d.ts +5 -1
  555. package/lib/types/components/duet-show-more/duet-show-more.d.ts +53 -0
  556. package/lib/types/components/duet-upload/duet-upload.d.ts +10 -0
  557. package/lib/types/components/duet-upload/upload-item.d.ts +1 -0
  558. package/lib/types/components.d.ts +370 -0
  559. package/package.json +11 -6
  560. package/lib/duet/p-2ee395b0.entry.js +0 -4
  561. package/lib/duet/p-5b450895.entry.js +0 -4
  562. package/lib/duet/p-68732531.entry.js +0 -4
  563. package/lib/duet/p-68ed4709.entry.js +0 -4
  564. package/lib/duet/p-6b02f893.system.entry.js +0 -4
  565. package/lib/duet/p-84474371.entry.js +0 -4
  566. package/lib/duet/p-9bb6ecf1.system.js +0 -4
  567. package/lib/duet/p-c0d5c4b4.entry.js +0 -4
  568. package/lib/duet/p-c85da6e1.system.entry.js +0 -4
  569. package/lib/duet/p-d5e35912.system.entry.js +0 -4
  570. package/lib/duet/p-e395bef5.system.entry.js +0 -4
  571. package/lib/duet/p-e6b6d7db.system.entry.js +0 -4
  572. package/lib/duet/p-f3f57a5e.entry.js +0 -4
  573. package/lib/duet/p-fbf03833.system.entry.js +0 -4
  574. package/lib/duet/p-fc9bbd16.js +0 -4
  575. package/lib/esm-es5/focus-utils-4c89d596.js +0 -4
@@ -0,0 +1,320 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h, Host } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common";
6
+ import { createID } from "../../utils/create-id";
7
+ export class DuetChip {
8
+ constructor() {
9
+ /**
10
+ * Own Properties.
11
+ */
12
+ this.chipId = createID("DuetChip");
13
+ /**
14
+ * Component event handling.
15
+ */
16
+ this.onFocus = (ev) => {
17
+ this.focus = true;
18
+ this.duetFocus.emit({
19
+ originalEvent: ev,
20
+ checked: this.checked,
21
+ value: this.value,
22
+ component: "duet-chip",
23
+ });
24
+ };
25
+ this.onBlur = (ev) => {
26
+ this.focus = false;
27
+ this.duetBlur.emit({
28
+ originalEvent: ev,
29
+ checked: this.checked,
30
+ value: this.value,
31
+ component: "duet-chip",
32
+ });
33
+ };
34
+ this.toggleChecked = (ev) => {
35
+ this.checked = !this.checked;
36
+ this.duetChange.emit({
37
+ originalEvent: ev,
38
+ checked: this.checked,
39
+ value: this.value,
40
+ component: "duet-chip",
41
+ });
42
+ };
43
+ this.remove = (ev) => {
44
+ ev.stopPropagation();
45
+ ev.preventDefault();
46
+ this.element.remove();
47
+ };
48
+ this.focus = false;
49
+ this.accessibleLabel = undefined;
50
+ this.variation = "button";
51
+ this.icon = "";
52
+ this.theme = "";
53
+ this.identifier = undefined;
54
+ this.value = undefined;
55
+ this.name = undefined;
56
+ this.checked = false;
57
+ }
58
+ /**
59
+ * Component lifecycle events.
60
+ */
61
+ componentWillLoad() {
62
+ inheritGlobalTheme(this);
63
+ }
64
+ render() {
65
+ const identifier = this.identifier || this.chipId;
66
+ const classes = {
67
+ "duet-chip-container": true,
68
+ [`duet-chip-${this.variation}`]: true,
69
+ "duet-chip-focus": this.focus,
70
+ "duet-chip-has-icon": !!this.icon,
71
+ "duet-theme-turva": this.theme === "turva",
72
+ "duet-chip-filter-checked": this.variation === "filter" && this.checked,
73
+ };
74
+ const focusHandlers = {
75
+ onFocus: this.onFocus,
76
+ onBlur: this.onBlur,
77
+ };
78
+ return (h(Host, null, this.variation === "button" && (h("div", { class: classes }, h("button", Object.assign({ id: identifier, "aria-label": this.accessibleLabel }, focusHandlers), h("div", { class: "duet-chip-icon-container" }, this.icon && (h("duet-icon", { name: this.icon, size: "xx-small", margin: "none", color: "currentColor" }))), h("slot", null)))), this.variation === "input" && (h("div", { class: classes }, h("button", Object.assign({ id: identifier, "aria-label": this.accessibleLabel }, focusHandlers), h("div", { class: "duet-chip-icon-container" }, this.icon && (h("duet-icon", { name: this.icon, size: "xx-small", margin: "none", color: "currentColor" }))), h("slot", null)), h("button", { class: "duet-chip-remove-button", onClick: this.remove }, h("duet-icon", { name: "activity-close", size: "xx-small", margin: "none", color: "currentColor" })))), this.variation === "filter" && (h("div", { class: classes }, h("input", Object.assign({ id: identifier, type: "checkbox", name: this.name, value: this.value, checked: this.checked, onChange: this.toggleChecked }, focusHandlers)), h("label", { htmlFor: identifier }, h("div", { class: "duet-chip-icon-container" }, this.icon && (h("duet-icon", { name: this.icon, size: "xx-small", margin: "none", color: "currentColor" })), h("duet-icon", { name: "messaging-checked-small", size: "xx-small", margin: "none", color: "currentColor", class: "check-mark" })), h("slot", null))))));
79
+ }
80
+ static get is() { return "duet-chip"; }
81
+ static get encapsulation() { return "shadow"; }
82
+ static get originalStyleUrls() {
83
+ return {
84
+ "$": ["duet-chip.scss"]
85
+ };
86
+ }
87
+ static get styleUrls() {
88
+ return {
89
+ "$": ["duet-chip.css"]
90
+ };
91
+ }
92
+ static get properties() {
93
+ return {
94
+ "accessibleLabel": {
95
+ "type": "string",
96
+ "mutable": false,
97
+ "complexType": {
98
+ "original": "string",
99
+ "resolved": "string",
100
+ "references": {}
101
+ },
102
+ "required": false,
103
+ "optional": false,
104
+ "docs": {
105
+ "tags": [],
106
+ "text": "Adds accessible label for the chip that is only shown for screen readers.\nTypically, this label text replaces the visible text on the button for\nusers who use assistive technology."
107
+ },
108
+ "attribute": "accessible-label",
109
+ "reflect": false
110
+ },
111
+ "variation": {
112
+ "type": "string",
113
+ "mutable": false,
114
+ "complexType": {
115
+ "original": "DuetChipVariation",
116
+ "resolved": "\"button\" | \"filter\" | \"input\"",
117
+ "references": {
118
+ "DuetChipVariation": {
119
+ "location": "local",
120
+ "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-chip/duet-chip.tsx"
121
+ }
122
+ }
123
+ },
124
+ "required": false,
125
+ "optional": false,
126
+ "docs": {
127
+ "tags": [],
128
+ "text": "Variation of the chip.\nButton should be used to present a list of actions or suggestions. It behaves like a button and must be used\ntogether with a click handler. Filter acts like a checkbox, it can be toggled on or off, and it should be\nused with a value. Input represents items input by the user, and the chip can be removed with a click.\nWARNING: Input variation is still work-in-progress and subject to change."
129
+ },
130
+ "attribute": "variation",
131
+ "reflect": false,
132
+ "defaultValue": "\"button\""
133
+ },
134
+ "icon": {
135
+ "type": "string",
136
+ "mutable": false,
137
+ "complexType": {
138
+ "original": "DuetIconName",
139
+ "resolved": "string",
140
+ "references": {
141
+ "DuetIconName": {
142
+ "location": "import",
143
+ "path": "../../common-types"
144
+ }
145
+ }
146
+ },
147
+ "required": false,
148
+ "optional": false,
149
+ "docs": {
150
+ "tags": [],
151
+ "text": "Icon to display to the left of the chip content."
152
+ },
153
+ "attribute": "icon",
154
+ "reflect": false,
155
+ "defaultValue": "\"\""
156
+ },
157
+ "theme": {
158
+ "type": "string",
159
+ "mutable": true,
160
+ "complexType": {
161
+ "original": "DuetTheme",
162
+ "resolved": "\"\" | \"default\" | \"turva\"",
163
+ "references": {
164
+ "DuetTheme": {
165
+ "location": "import",
166
+ "path": "../../common-types"
167
+ }
168
+ }
169
+ },
170
+ "required": false,
171
+ "optional": false,
172
+ "docs": {
173
+ "tags": [],
174
+ "text": "Theme of the button."
175
+ },
176
+ "attribute": "theme",
177
+ "reflect": false,
178
+ "defaultValue": "\"\""
179
+ },
180
+ "identifier": {
181
+ "type": "string",
182
+ "mutable": false,
183
+ "complexType": {
184
+ "original": "string",
185
+ "resolved": "string",
186
+ "references": {}
187
+ },
188
+ "required": false,
189
+ "optional": false,
190
+ "docs": {
191
+ "tags": [],
192
+ "text": "Adds a unique identifier for the chip."
193
+ },
194
+ "attribute": "identifier",
195
+ "reflect": false
196
+ },
197
+ "value": {
198
+ "type": "string",
199
+ "mutable": false,
200
+ "complexType": {
201
+ "original": "string",
202
+ "resolved": "string",
203
+ "references": {}
204
+ },
205
+ "required": false,
206
+ "optional": false,
207
+ "docs": {
208
+ "tags": [],
209
+ "text": "The value of the html input when used as filter, or the button's value."
210
+ },
211
+ "attribute": "value",
212
+ "reflect": false
213
+ },
214
+ "name": {
215
+ "type": "string",
216
+ "mutable": false,
217
+ "complexType": {
218
+ "original": "string",
219
+ "resolved": "string",
220
+ "references": {}
221
+ },
222
+ "required": false,
223
+ "optional": false,
224
+ "docs": {
225
+ "tags": [],
226
+ "text": "Name attribute of the html input (filter) or button."
227
+ },
228
+ "attribute": "name",
229
+ "reflect": false
230
+ },
231
+ "checked": {
232
+ "type": "boolean",
233
+ "mutable": true,
234
+ "complexType": {
235
+ "original": "boolean",
236
+ "resolved": "boolean",
237
+ "references": {}
238
+ },
239
+ "required": false,
240
+ "optional": false,
241
+ "docs": {
242
+ "tags": [],
243
+ "text": "Checked state of the filter chip."
244
+ },
245
+ "attribute": "checked",
246
+ "reflect": true,
247
+ "defaultValue": "false"
248
+ }
249
+ };
250
+ }
251
+ static get states() {
252
+ return {
253
+ "focus": {}
254
+ };
255
+ }
256
+ static get events() {
257
+ return [{
258
+ "method": "duetChange",
259
+ "name": "duetChange",
260
+ "bubbles": false,
261
+ "cancelable": true,
262
+ "composed": true,
263
+ "docs": {
264
+ "tags": [],
265
+ "text": "Emitted when the checked property has changed (applicable only for the filter variation)."
266
+ },
267
+ "complexType": {
268
+ "original": "DuetChipEvent",
269
+ "resolved": "{ originalEvent?: Event; checked: boolean; value: string; component: \"duet-chip\"; }",
270
+ "references": {
271
+ "DuetChipEvent": {
272
+ "location": "local",
273
+ "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-chip/duet-chip.tsx"
274
+ }
275
+ }
276
+ }
277
+ }, {
278
+ "method": "duetFocus",
279
+ "name": "duetFocus",
280
+ "bubbles": true,
281
+ "cancelable": true,
282
+ "composed": true,
283
+ "docs": {
284
+ "tags": [],
285
+ "text": "Emitted when the chip receives focus."
286
+ },
287
+ "complexType": {
288
+ "original": "DuetChipEvent",
289
+ "resolved": "{ originalEvent?: Event; checked: boolean; value: string; component: \"duet-chip\"; }",
290
+ "references": {
291
+ "DuetChipEvent": {
292
+ "location": "local",
293
+ "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-chip/duet-chip.tsx"
294
+ }
295
+ }
296
+ }
297
+ }, {
298
+ "method": "duetBlur",
299
+ "name": "duetBlur",
300
+ "bubbles": true,
301
+ "cancelable": true,
302
+ "composed": true,
303
+ "docs": {
304
+ "tags": [],
305
+ "text": "Emitted when the chip loses focus."
306
+ },
307
+ "complexType": {
308
+ "original": "DuetChipEvent",
309
+ "resolved": "{ originalEvent?: Event; checked: boolean; value: string; component: \"duet-chip\"; }",
310
+ "references": {
311
+ "DuetChipEvent": {
312
+ "location": "local",
313
+ "path": "/Users/laaksju3/duetds/packages/components/src/components/duet-chip/duet-chip.tsx"
314
+ }
315
+ }
316
+ }
317
+ }];
318
+ }
319
+ static get elementRef() { return "element"; }
320
+ }
@@ -151,21 +151,6 @@
151
151
  .duet-theme-turva .info .duet-choice-label {
152
152
  border-color: rgb(228, 228, 230);
153
153
  }
154
- .duet-choice-label:not(.no-hover):hover {
155
- border-color: rgb(144, 149, 153);
156
- }
157
- .duet-choice-label:not(.no-hover):hover .duet-checkmark-container {
158
- border-color: rgb(144, 149, 153);
159
- }
160
- .duet-theme-turva .duet-choice-label:not(.no-hover):hover {
161
- border-color: rgb(116, 116, 117);
162
- }
163
- .duet-theme-turva .duet-choice-label:not(.no-hover):hover .duet-checkmark-container {
164
- border-color: rgb(116, 116, 117);
165
- }
166
- .duet-theme-turva .info .duet-choice-label:not(.no-hover):hover {
167
- border-color: rgb(116, 116, 117);
168
- }
169
154
  .duet-choice-label:active {
170
155
  opacity: 0.75;
171
156
  transition: none !important;
@@ -186,12 +171,29 @@
186
171
  .duet-theme-turva .checked .duet-choice-label .duet-checkmark-container {
187
172
  border-color: rgb(198, 12, 48);
188
173
  }
189
- .checked.collapsible .duet-choice-label {
174
+ .checked.collapsible .duet-choice-label, .collapsible-force-expanded.collapsible .duet-choice-label {
175
+ padding-bottom: calc(1rem + 2px);
190
176
  border-bottom: 0 !important;
191
177
  border-bottom-right-radius: 0;
192
178
  border-bottom-left-radius: 0;
193
179
  }
194
180
 
181
+ :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label:not(.checked) {
182
+ border-color: rgb(144, 149, 153);
183
+ }
184
+ :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label:not(.checked) .duet-checkmark-container {
185
+ border-color: rgb(144, 149, 153);
186
+ }
187
+ .duet-theme-turva :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label:not(.checked) {
188
+ border-color: rgb(116, 116, 117);
189
+ }
190
+ .duet-theme-turva :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label:not(.checked) .duet-checkmark-container {
191
+ border-color: rgb(116, 116, 117);
192
+ }
193
+ .duet-theme-turva .info :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label:not(.checked) {
194
+ border-color: rgb(116, 116, 117);
195
+ }
196
+
195
197
  input:focus {
196
198
  outline: 0;
197
199
  }
@@ -341,7 +343,6 @@ input[disabled] + .duet-choice-label:hover, input[disabled] + .duet-choice-label
341
343
  .duet-choice-card-info, .duet-choice-card-collapsible {
342
344
  padding: 20px !important;
343
345
  position: relative;
344
- z-index: 200;
345
346
  width: 100%;
346
347
  font-weight: 400;
347
348
  color: rgb(0, 41, 77);
@@ -366,21 +367,33 @@ input[disabled] + .duet-choice-label:hover, input[disabled] + .duet-choice-label
366
367
  }
367
368
  .duet-choice-card-collapsible {
368
369
  background: rgb(255, 255, 255);
369
- border: 2px solid rgb(0, 119, 179);
370
+ border: 2px solid rgb(225, 227, 230);
370
371
  border-top: 0;
371
372
  }
372
373
  .duet-choice-card-collapsible.duet-theme-turva {
373
374
  background: rgb(255, 255, 255);
375
+ border-color: rgb(228, 228, 230);
376
+ }
377
+ .duet-choice-card-collapsible.checked {
378
+ border-color: rgb(0, 119, 179);
379
+ }
380
+ .duet-choice-card-collapsible.checked.duet-theme-turva {
374
381
  border-color: rgb(23, 28, 58);
375
382
  }
376
383
  .duet-choice-card-collapsible-disabled {
377
384
  background: rgb(245, 248, 250);
378
385
  border-color: rgb(225, 227, 230);
379
386
  }
387
+ .duet-choice-card-collapsible-disabled.checked {
388
+ border-color: rgb(225, 227, 230);
389
+ }
380
390
  .duet-choice-card-collapsible-disabled.duet-theme-turva {
381
391
  background: rgb(245, 245, 247);
382
392
  border-color: rgb(228, 228, 230);
383
393
  }
394
+ .duet-choice-card-collapsible-disabled.duet-theme-turva.checked {
395
+ border-color: rgb(228, 228, 230);
396
+ }
384
397
  .duet-choice-card-info {
385
398
  font-size: 0.875rem;
386
399
  line-height: 1.5;
@@ -392,6 +405,13 @@ input[disabled] + .duet-choice-label:hover, input[disabled] + .duet-choice-label
392
405
  border-color: rgb(228, 228, 230);
393
406
  }
394
407
 
408
+ :host(:not(.no-hover):not(.disabled):hover) .duet-choice-card-collapsible:not(.checked) {
409
+ border-color: rgb(144, 149, 153);
410
+ }
411
+ .duet-theme-turva :host(:not(.no-hover):not(.disabled):hover) .duet-choice-card-collapsible:not(.checked) {
412
+ border-color: rgb(116, 116, 117);
413
+ }
414
+
395
415
  .duet-choice-info-toggle {
396
416
  display: flex;
397
417
  flex-shrink: 0;
@@ -413,6 +433,9 @@ input[disabled] + .duet-choice-label:hover, input[disabled] + .duet-choice-label
413
433
  border-bottom-color: transparent;
414
434
  border-bottom-right-radius: 0;
415
435
  }
436
+ .duet-theme-turva .duet-choice-info-toggle[aria-expanded=true] {
437
+ background: rgb(245, 245, 247);
438
+ }
416
439
  .duet-choice-info-toggle[disabled] {
417
440
  pointer-events: none;
418
441
  background: rgb(245, 248, 250) !important;
@@ -434,9 +457,6 @@ input[disabled] + .duet-choice-label:hover, input[disabled] + .duet-choice-label
434
457
  :host(.user-is-tabbing) .duet-choice-info-toggle:focus {
435
458
  box-shadow: 0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px rgb(0, 119, 179);
436
459
  }
437
- .duet-choice-label:not(.no-hover):hover .duet-choice-info-toggle {
438
- border-left-color: rgb(144, 149, 153);
439
- }
440
460
  .checked .duet-choice-info-toggle {
441
461
  border-left-color: rgb(0, 119, 179) !important;
442
462
  }
@@ -450,6 +470,13 @@ input[disabled] + .duet-choice-label:hover, input[disabled] + .duet-choice-label
450
470
  color: rgb(198, 12, 48);
451
471
  }
452
472
 
473
+ :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label .duet-choice-info-toggle {
474
+ border-left-color: rgb(144, 149, 153);
475
+ }
476
+ .duet-theme-turva :host(:not(.no-hover):not(.disabled):hover) .duet-choice-label .duet-choice-info-toggle {
477
+ border-left-color: rgb(116, 116, 117);
478
+ }
479
+
453
480
  .duet-choice-input {
454
481
  position: absolute !important;
455
482
  width: 100%;
@@ -71,7 +71,7 @@ export class DuetChoice {
71
71
  this.toggleChecked = ev => {
72
72
  ev.preventDefault();
73
73
  ev.stopPropagation();
74
- if (this.disabled || this.groupDisabled) {
74
+ if (this.getDisabled()) {
75
75
  return;
76
76
  }
77
77
  this.isInfoOpen = false;
@@ -112,6 +112,7 @@ export class DuetChoice {
112
112
  this.name = undefined;
113
113
  this.checked = false;
114
114
  this.collapsible = false;
115
+ this.collapsibleForceExpanded = false;
115
116
  this.margin = "auto";
116
117
  this.icon = "";
117
118
  this.expand = false;
@@ -209,9 +210,16 @@ export class DuetChoice {
209
210
  }
210
211
  return null;
211
212
  }
213
+ getDisabled() {
214
+ return this.disabled || this.groupDisabled;
215
+ }
216
+ getExpanded() {
217
+ return this.checked || this.collapsibleForceExpanded;
218
+ }
212
219
  getClassNames() {
213
220
  if (this.hasInfo && !this.collapsible) {
214
221
  return {
222
+ checked: this.checked,
215
223
  "duet-choice-card-info": true,
216
224
  "duet-choice-card-info-expanded": this.isInfoOpen,
217
225
  "duet-choice-card-collapsed": !this.isInfoOpen,
@@ -220,14 +228,16 @@ export class DuetChoice {
220
228
  }
221
229
  if (!this.hasInfo && this.collapsible) {
222
230
  return {
231
+ checked: this.checked,
223
232
  "duet-choice-card-collapsible": true,
224
- "duet-choice-card-collapsible-expanded": this.checked,
225
- "duet-choice-card-collapsed": !this.checked,
226
- "duet-choice-card-collapsible-disabled": this.disabled || this.groupDisabled ? true : false,
233
+ "duet-choice-card-collapsible-expanded": this.getExpanded(),
234
+ "duet-choice-card-collapsed": !this.getExpanded(),
235
+ "duet-choice-card-collapsible-disabled": this.getDisabled(),
227
236
  "duet-theme-turva": this.theme === "turva",
228
237
  };
229
238
  }
230
239
  return {
240
+ checked: this.checked,
231
241
  "duet-choice-default-slot": true,
232
242
  };
233
243
  }
@@ -245,6 +255,8 @@ export class DuetChoice {
245
255
  "duet-m-0": this.margin === "none",
246
256
  "duet-expand": this.expand,
247
257
  "duet-theme-turva": this.theme === "turva",
258
+ "no-hover": this.isHovering,
259
+ disabled: this.getDisabled(),
248
260
  } }, h("div", { class: {
249
261
  "duet-choice-card-flextainer": true,
250
262
  "duet-theme-turva": this.theme === "turva",
@@ -255,13 +267,14 @@ export class DuetChoice {
255
267
  checked: this.checked,
256
268
  info: this.isInfoOpen,
257
269
  collapsible: this.collapsible,
270
+ "collapsible-force-expanded": this.collapsibleForceExpanded,
258
271
  "duet-p-0": this.padding === "none",
259
- } }, h("input", { class: "duet-choice-input", type: this.type, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, disabled: this.disabled || this.groupDisabled, required: this.required, id: identifier, name: this.name, value: this.value, checked: this.checked, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-owns": this.accessibleOwns, "aria-describedby": this.getAriaDescribedby(), onKeyDown: this.handleKeyDown, ref: input => (this.nativeInput = input) }), h("label", { htmlFor: identifier, class: { "duet-choice-label": true, "no-hover": this.isHovering, "has-before-text": this.hasBeforeText }, onClick: this.onClick }, this.hasBeforeText && h("slot", { name: "before-text" }), this.icon && (h("div", { class: "duet-choice-card-icon" }, h("duet-icon", { margin: "none", size: "small", name: this.icon, color: "currentColor" }))), h("div", { class: "duet-choice-card-text" }, choiceGroupLabel && h("duet-visually-hidden", null, choiceGroupLabel, ", "), h("div", null, this.hasLabel ? h("slot", { name: "label" }) : this.label), this.caption && (h("div", null, h("duet-spacer", { size: "xx-small" }), h("duet-caption", { margin: "none", selected: this.checked }, this.caption))), this.hasAdditional && (h("div", null, h("duet-spacer", { size: "xx-small" }), h("slot", { name: "additional" })))), h("div", null, h("div", { class: { "duet-checkmark-container": true, "duet-checkmark-radio": this.type === "radio" } }, this.checked && h("div", { class: "duet-checkmark" }))))), this.hasInfo && !this.collapsible && (h("button", { ref: button => (this.infoButtonEl = button), id: this.infoButtonId, class: {
272
+ } }, h("input", { class: "duet-choice-input", type: this.type, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, disabled: this.getDisabled(), required: this.required, id: identifier, name: this.name, value: this.value, checked: this.checked, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-owns": this.accessibleOwns, "aria-describedby": this.getAriaDescribedby(), onKeyDown: this.handleKeyDown, ref: input => (this.nativeInput = input) }), h("label", { htmlFor: identifier, class: { "duet-choice-label": true, "has-before-text": this.hasBeforeText }, onClick: this.onClick }, this.hasBeforeText && h("slot", { name: "before-text" }), this.icon && (h("div", { class: "duet-choice-card-icon" }, h("duet-icon", { margin: "none", size: "small", name: this.icon, color: "currentColor" }))), h("div", { class: "duet-choice-card-text" }, choiceGroupLabel && h("duet-visually-hidden", null, choiceGroupLabel, ", "), h("div", null, this.hasLabel ? h("slot", { name: "label" }) : this.label), this.caption && (h("div", null, h("duet-spacer", { size: "xx-small" }), h("duet-caption", { margin: "none", selected: this.checked }, this.caption))), this.hasAdditional && (h("div", null, h("duet-spacer", { size: "xx-small" }), h("slot", { name: "additional" })))), h("div", null, h("div", { class: { "duet-checkmark-container": true, "duet-checkmark-radio": this.type === "radio" } }, this.checked && h("div", { class: "duet-checkmark" }))))), this.hasInfo && !this.collapsible && (h("button", { ref: button => (this.infoButtonEl = button), id: this.infoButtonId, class: {
260
273
  "duet-choice-info-toggle": true,
261
274
  "duet-theme-turva": this.theme === "turva",
262
- }, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, onClick: this.toggleInfo, disabled: this.disabled || this.groupDisabled, "aria-expanded": this.isInfoOpen ? "true" : "false", "aria-label": `${this.infoLabel} ${this.label}`, "aria-controls": this.expandId, "aria-flowto": this.expandId, tabindex: this.type === "radio" && !this.checked ? "-1" : "0", type: "button" }, h("duet-visually-hidden", { "aria-hidden": !this.isBlurred ? "true" : "false" }, this.accessibleLabelInfoButton), h("div", { class: "duet-choice-info-icon" }, h("duet-icon", { icon: infoIcon.svg, margin: "none", size: "small", color: "currentColor" }))))), this.collapsible || this.hasInfo ? (h("div", { class: this.getClassNames(), id: this.expandId }, h("span", { class: {
263
- "duet-choice-section-visible": this.collapsible ? this.checked : this.isInfoOpen,
264
- "duet-choice-section-hidden": this.collapsible ? !this.checked : !this.isInfoOpen,
275
+ }, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, onClick: this.toggleInfo, disabled: this.getDisabled(), "aria-expanded": this.isInfoOpen ? "true" : "false", "aria-label": `${this.infoLabel} ${this.label}`, "aria-controls": this.expandId, "aria-flowto": this.expandId, tabindex: this.type === "radio" && !this.checked ? "-1" : "0", type: "button" }, h("duet-visually-hidden", { "aria-hidden": !this.isBlurred ? "true" : "false" }, this.accessibleLabelInfoButton), h("div", { class: "duet-choice-info-icon" }, h("duet-icon", { icon: infoIcon.svg, margin: "none", size: "small", color: "currentColor" }))))), this.collapsible || this.hasInfo ? (h("div", { class: this.getClassNames(), id: this.expandId }, h("span", { class: {
276
+ "duet-choice-section-visible": this.collapsible ? this.getExpanded() : this.isInfoOpen,
277
+ "duet-choice-section-hidden": this.collapsible ? !this.getExpanded() : !this.isInfoOpen,
265
278
  } }, h("span", { id: this.headerId }, h("slot", { name: "header" })), this.hasInfo ? (h("span", null, h("span", { "aria-relevant": "all", "aria-atomic": "true", "aria-live": this.isInfoOpen ? "polite" : "off" }, h("slot", { name: "info" })), h("slot", null))) : (h("span", null, h("slot", null)))), this.isInfoOpen && h(FocusGuard, { moveFocusTo: this.infoButtonEl }))) : null));
266
279
  }
267
280
  static get is() { return "duet-choice"; }
@@ -596,6 +609,24 @@ export class DuetChoice {
596
609
  "reflect": false,
597
610
  "defaultValue": "false"
598
611
  },
612
+ "collapsibleForceExpanded": {
613
+ "type": "boolean",
614
+ "mutable": false,
615
+ "complexType": {
616
+ "original": "boolean",
617
+ "resolved": "boolean",
618
+ "references": {}
619
+ },
620
+ "required": false,
621
+ "optional": false,
622
+ "docs": {
623
+ "tags": [],
624
+ "text": "This attribute works only when the 'collapsible' attribute is set to true.\nIt maintains the visibility of the additional content section, regardless of whether the input is checked or not."
625
+ },
626
+ "attribute": "collapsible-force-expanded",
627
+ "reflect": false,
628
+ "defaultValue": "false"
629
+ },
599
630
  "margin": {
600
631
  "type": "string",
601
632
  "mutable": false,
@@ -11,6 +11,10 @@
11
11
  appearance: none;
12
12
  }
13
13
 
14
+ ::slotted([slot=after-heading]) {
15
+ display: inline-block;
16
+ }
17
+
14
18
  :host {
15
19
  box-sizing: border-box;
16
20
  padding: 0;
@@ -78,6 +82,9 @@
78
82
  cursor: pointer;
79
83
  border-radius: 4px;
80
84
  }
85
+ .duet-collapsible-heading.full-width {
86
+ width: 100%;
87
+ }
81
88
  .duet-collapsible-heading.duet-collapsible-heading-centered {
82
89
  margin: auto;
83
90
  }
@@ -89,13 +96,14 @@
89
96
  color: rgb(23, 28, 58);
90
97
  }
91
98
  .duet-collapsible-heading .duet-collapsible-heading-content {
92
- flex: 0 auto;
93
99
  min-width: 0;
94
100
  }
95
101
  .duet-collapsible-heading.has-after-heading .duet-collapsible-heading-content + div {
96
- flex: 1 0 auto;
97
102
  margin-left: 16px;
98
103
  }
104
+ .duet-collapsible-heading.has-after-heading .duet-collapsible-heading-content + div.float-right {
105
+ margin-left: auto;
106
+ }
99
107
  .duet-collapsible-heading:focus {
100
108
  outline: 0;
101
109
  }
@@ -10,6 +10,7 @@ import { isKeyboardClick } from "../../utils/keyboard-utils";
10
10
  import { sanitizeString } from "../../utils/string-utils";
11
11
  /**
12
12
  * @part duet-collapsible-heading-content - piercing selector for styling the heading content
13
+ * @part duet-collapsible-after-heading - piercing selector for styling the after heading
13
14
  * @part duet-collapsible-content - piercing selector for styling the content
14
15
  * @slot after-heading - Content after the heading can be for example badges.
15
16
  */
@@ -65,6 +66,7 @@ export class DuetCollapsible {
65
66
  this.theme = "";
66
67
  this.accessibleLabel = undefined;
67
68
  this.heading = "";
69
+ this.headingFullWidth = false;
68
70
  this.centerHeading = false;
69
71
  this.headingWeight = "semibold";
70
72
  this.headingSize = undefined;
@@ -103,7 +105,8 @@ export class DuetCollapsible {
103
105
  "duet-theme-turva": this.theme === "turva",
104
106
  "duet-collapsible-normal-weight": this.headingWeight === "normal",
105
107
  "has-after-heading": this.hasAfterHeading,
106
- }, style: { "font-size": this.getFontSizeFromTokens() }, role: "button", ref: button => (this.nativeButton = button), "aria-label": this.accessibleLabel, "aria-expanded": this.open ? "true" : "false", "aria-controls": this.id, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { class: "duet-collapsible-heading-icon" }, h("duet-icon", { margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary", size: this.getEquivalentIconSize(), icon: icon.svg })), h("div", { class: "duet-collapsible-heading-content", part: "duet-collapsible-heading-content" }, this.heading), this.hasAfterHeading && (h("div", null, h("slot", { name: "after-heading" }))))), h("div", { id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" }, part: "duet-collapsible-content" }, h("slot", null))));
108
+ "full-width": this.headingFullWidth,
109
+ }, style: { "font-size": this.getFontSizeFromTokens() }, role: "button", ref: button => (this.nativeButton = button), "aria-label": this.accessibleLabel, "aria-expanded": this.open ? "true" : "false", "aria-controls": this.id, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { class: "duet-collapsible-heading-icon" }, h("duet-icon", { margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary", size: this.getEquivalentIconSize(), icon: icon.svg })), h("div", { class: "duet-collapsible-heading-content", part: "duet-collapsible-heading-content" }, this.heading), this.hasAfterHeading && (h("div", { part: "duet-collapsible-after-heading" }, h("slot", { name: "after-heading" }))))), h("div", { id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" }, part: "duet-collapsible-content" }, h("slot", null))));
107
110
  }
108
111
  static get is() { return "duet-collapsible"; }
109
112
  static get encapsulation() { return "shadow"; }
@@ -177,6 +180,24 @@ export class DuetCollapsible {
177
180
  "reflect": false,
178
181
  "defaultValue": "\"\""
179
182
  },
183
+ "headingFullWidth": {
184
+ "type": "boolean",
185
+ "mutable": false,
186
+ "complexType": {
187
+ "original": "boolean",
188
+ "resolved": "boolean",
189
+ "references": {}
190
+ },
191
+ "required": false,
192
+ "optional": false,
193
+ "docs": {
194
+ "tags": [],
195
+ "text": "Makes collapsible heading full width"
196
+ },
197
+ "attribute": "heading-full-width",
198
+ "reflect": false,
199
+ "defaultValue": "false"
200
+ },
180
201
  "centerHeading": {
181
202
  "type": "boolean",
182
203
  "mutable": false,