@duetds/components 8.1.4 → 8.1.5

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 (586) hide show
  1. package/hydrate/index.js +119 -63
  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 +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 +1 -1
  22. package/lib/cjs/duet-editable-table_3.cjs.entry.js +1 -1
  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-file-chooser.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-icon.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-input_2.cjs.entry.js +7 -3
  32. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-menu-bar.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-modal.cjs.entry.js +18 -5
  40. package/lib/cjs/duet-multiselect.cjs.entry.js +4 -2
  41. package/lib/cjs/duet-nav.cjs.entry.js +1 -1
  42. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  43. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-pagination_2.cjs.entry.js +1 -1
  46. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +2 -2
  47. package/lib/cjs/duet-popup-menu.cjs.entry.js +1 -1
  48. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  49. package/lib/cjs/duet-promo-card.cjs.entry.js +1 -1
  50. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  51. package/lib/cjs/duet-range-slider.cjs.entry.js +4 -2
  52. package/lib/cjs/duet-scrollable_3.cjs.entry.js +1 -1
  53. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  54. package/lib/cjs/duet-select.cjs.entry.js +4 -2
  55. package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
  56. package/lib/cjs/duet-show-more.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-slideout-lang.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
  59. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +1 -1
  60. package/lib/cjs/duet-slideout-panel.cjs.entry.js +2 -2
  61. package/lib/cjs/duet-slideout.cjs.entry.js +77 -66
  62. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  63. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +1 -1
  65. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +1 -1
  66. package/lib/cjs/duet-submenu-bar.cjs.entry.js +1 -1
  67. package/lib/cjs/duet-textarea.cjs.entry.js +4 -2
  68. package/lib/cjs/duet-toggle.cjs.entry.js +4 -2
  69. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  70. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
  71. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  73. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +2 -2
  74. package/lib/cjs/duet-tooltip.cjs.entry.js +11 -2
  75. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  76. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  77. package/lib/cjs/duet-upload-item.cjs.entry.js +1 -1
  78. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  79. package/lib/cjs/duet.cjs.js +2 -2
  80. package/lib/cjs/{focus-utils-fd4fdee9.js → focus-utils-ec077a62.js} +1 -1
  81. package/lib/cjs/{index-6ea7b876.js → index-00f527af.js} +1 -1
  82. package/lib/cjs/loader.cjs.js +2 -2
  83. package/lib/collection/common/focusable-component.js +1 -0
  84. package/lib/collection/common/opener-component.js +1 -0
  85. package/lib/collection/components/duet-input/duet-input.js +43 -1
  86. package/lib/collection/components/duet-label/duet-label.css +7 -0
  87. package/lib/collection/components/duet-label/duet-label.js +26 -0
  88. package/lib/collection/components/duet-modal/duet-modal.css +105 -16
  89. package/lib/collection/components/duet-modal/duet-modal.js +40 -3
  90. package/lib/collection/components/duet-multiselect/duet-multiselect.js +43 -1
  91. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.css +4 -0
  92. package/lib/collection/components/duet-range-slider/duet-range-slider.js +43 -1
  93. package/lib/collection/components/duet-select/duet-select.js +43 -1
  94. package/lib/collection/components/duet-slideout/duet-slideout.css +35 -0
  95. package/lib/collection/components/duet-slideout/duet-slideout.js +101 -91
  96. package/lib/collection/components/duet-textarea/duet-textarea.js +43 -1
  97. package/lib/collection/components/duet-toggle/duet-toggle.js +43 -1
  98. package/lib/collection/components/duet-tooltip/duet-tooltip.js +27 -1
  99. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  100. package/lib/dist-custom-elements/duet-alert.js +1 -1
  101. package/lib/dist-custom-elements/duet-badge.js +1 -1
  102. package/lib/dist-custom-elements/duet-banner.js +4 -4
  103. package/lib/dist-custom-elements/duet-breadcrumb.js +3 -3
  104. package/lib/dist-custom-elements/duet-breadcrumbs.js +1 -1
  105. package/lib/dist-custom-elements/duet-button.js +1 -1
  106. package/lib/dist-custom-elements/duet-callout.js +3 -3
  107. package/lib/dist-custom-elements/duet-caption.js +1 -1
  108. package/lib/dist-custom-elements/duet-card.js +3 -3
  109. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  110. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  111. package/lib/dist-custom-elements/duet-chip.js +2 -2
  112. package/lib/dist-custom-elements/duet-choice-group.js +8 -8
  113. package/lib/dist-custom-elements/duet-choice.js +5 -5
  114. package/lib/dist-custom-elements/duet-collapsible.js +2 -2
  115. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  116. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  117. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  118. package/lib/dist-custom-elements/duet-date-picker.js +12 -12
  119. package/lib/dist-custom-elements/duet-divider.js +1 -1
  120. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  121. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  122. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  123. package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
  124. package/lib/dist-custom-elements/duet-footer.js +4 -4
  125. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  126. package/lib/dist-custom-elements/duet-grid.js +1 -1
  127. package/lib/dist-custom-elements/duet-header.js +8 -8
  128. package/lib/dist-custom-elements/duet-heading.js +1 -1
  129. package/lib/dist-custom-elements/duet-hero.js +9 -9
  130. package/lib/dist-custom-elements/duet-icon.js +1 -1
  131. package/lib/dist-custom-elements/duet-input.js +1 -1
  132. package/lib/dist-custom-elements/duet-label.js +1 -1
  133. package/lib/dist-custom-elements/duet-layout.js +1 -1
  134. package/lib/dist-custom-elements/duet-link.js +1 -1
  135. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  136. package/lib/dist-custom-elements/duet-list.js +1 -1
  137. package/lib/dist-custom-elements/duet-logo.js +1 -1
  138. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  139. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  140. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  141. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  142. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  143. package/lib/dist-custom-elements/duet-modal.js +24 -10
  144. package/lib/dist-custom-elements/duet-multiselect.js +14 -10
  145. package/lib/dist-custom-elements/duet-nav.js +1 -1
  146. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  147. package/lib/dist-custom-elements/duet-notification.js +2 -2
  148. package/lib/dist-custom-elements/duet-number-input.js +11 -11
  149. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  150. package/lib/dist-custom-elements/duet-pagination.js +13 -13
  151. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  152. package/lib/dist-custom-elements/duet-popup-menu-item.js +3 -3
  153. package/lib/dist-custom-elements/duet-popup-menu.js +1 -1
  154. package/lib/dist-custom-elements/duet-progress.js +1 -1
  155. package/lib/dist-custom-elements/duet-promo-card.js +3 -3
  156. package/lib/dist-custom-elements/duet-radio-group.js +8 -8
  157. package/lib/dist-custom-elements/duet-radio.js +1 -1
  158. package/lib/dist-custom-elements/duet-range-slider.js +7 -3
  159. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  160. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  161. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  162. package/lib/dist-custom-elements/duet-select.js +1 -1
  163. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  164. package/lib/dist-custom-elements/duet-show-more.js +5 -5
  165. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  166. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  167. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  168. package/lib/dist-custom-elements/duet-slideout-panel.js +2 -2
  169. package/lib/dist-custom-elements/duet-slideout.js +80 -69
  170. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  171. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  172. package/lib/dist-custom-elements/duet-step.js +4 -4
  173. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  174. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  175. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  176. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  177. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  178. package/lib/dist-custom-elements/duet-tab-group.js +13 -13
  179. package/lib/dist-custom-elements/duet-tab.js +1 -1
  180. package/lib/dist-custom-elements/duet-table.js +1 -1
  181. package/lib/dist-custom-elements/duet-textarea.js +15 -11
  182. package/lib/dist-custom-elements/duet-toggle.js +7 -3
  183. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  184. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  185. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  186. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  187. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  188. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  189. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  190. package/lib/dist-custom-elements/duet-tray.js +3 -3
  191. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  192. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  193. package/lib/dist-custom-elements/duet-upload.js +18 -18
  194. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  195. package/lib/dist-custom-elements/index.js +1 -1
  196. package/lib/dist-custom-elements/{p-2eb72ea1.js → p-0156b860.js} +1 -1
  197. package/lib/dist-custom-elements/{p-b06b80ce.js → p-1c7bd169.js} +1 -1
  198. package/lib/dist-custom-elements/{p-59fdca12.js → p-1e82d8a1.js} +1 -1
  199. package/lib/dist-custom-elements/{p-0d74f436.js → p-254a95d4.js} +2 -2
  200. package/lib/dist-custom-elements/{p-5b14ef9f.js → p-3158e24f.js} +1 -1
  201. package/lib/dist-custom-elements/{p-19fc0434.js → p-3cc835d7.js} +1 -1
  202. package/lib/dist-custom-elements/{p-506c2666.js → p-3d6047c0.js} +5 -2
  203. package/lib/dist-custom-elements/{p-d94a9d9c.js → p-471a62cc.js} +1 -1
  204. package/lib/dist-custom-elements/{p-1ed786bc.js → p-475baac7.js} +1 -1
  205. package/lib/dist-custom-elements/{p-7c5f9c80.js → p-4a55dff3.js} +5 -5
  206. package/lib/dist-custom-elements/{p-2941d90a.js → p-4c5751cd.js} +1 -1
  207. package/lib/dist-custom-elements/{p-18ec08ac.js → p-4d3e1b52.js} +3 -3
  208. package/lib/dist-custom-elements/{p-8aaaefdf.js → p-583e21a8.js} +2 -2
  209. package/lib/dist-custom-elements/{p-91facf89.js → p-66f15eba.js} +1 -1
  210. package/lib/dist-custom-elements/{p-7a6cf439.js → p-6b977095.js} +4 -4
  211. package/lib/dist-custom-elements/{p-36cee998.js → p-6d0197c3.js} +5 -5
  212. package/lib/dist-custom-elements/{p-c9808777.js → p-7bb90fcc.js} +15 -11
  213. package/lib/dist-custom-elements/{p-98dcc2eb.js → p-7bcdcf71.js} +3 -3
  214. package/lib/dist-custom-elements/{p-5f8459bd.js → p-7d7291bf.js} +13 -9
  215. package/lib/dist-custom-elements/{p-482e780b.js → p-8735b4db.js} +2 -2
  216. package/lib/dist-custom-elements/{p-d18ca3d9.js → p-975a4689.js} +1 -1
  217. package/lib/dist-custom-elements/{p-ff50aff2.js → p-9a9a04bd.js} +2 -2
  218. package/lib/dist-custom-elements/{p-9b14643e.js → p-9b174e03.js} +1 -1
  219. package/lib/dist-custom-elements/{p-f91938ae.js → p-9c2d3a9d.js} +2 -2
  220. package/lib/dist-custom-elements/{p-802e0cd4.js → p-a4605d27.js} +16 -6
  221. package/lib/dist-custom-elements/{p-57e61e85.js → p-b590a133.js} +1 -1
  222. package/lib/dist-custom-elements/{p-4091ca56.js → p-bb1ac896.js} +1 -1
  223. package/lib/dist-custom-elements/{p-88b5a225.js → p-c493eecb.js} +1 -1
  224. package/lib/dist-custom-elements/{p-d68c9433.js → p-cab60e87.js} +1 -1
  225. package/lib/dist-custom-elements/{p-9c5b3e92.js → p-d10e4492.js} +1 -1
  226. package/lib/dist-custom-elements/{p-077e5396.js → p-d517fc9a.js} +10 -10
  227. package/lib/dist-custom-elements/{p-8c81a26f.js → p-da8acaf1.js} +2 -2
  228. package/lib/dist-custom-elements/{p-583ae9d7.js → p-f3d25b08.js} +1 -1
  229. package/lib/dist-custom-elements/{p-bb59b14d.js → p-fc6bb9ab.js} +1 -1
  230. package/lib/duet/duet.esm.js +1 -1
  231. package/lib/duet/duet.js +1 -1
  232. package/lib/duet/{p-9894f629.system.entry.js → p-0081d434.system.entry.js} +1 -1
  233. package/lib/duet/{p-a9b6b8d5.entry.js → p-0198349d.entry.js} +1 -1
  234. package/lib/duet/p-031b59ba.system.entry.js +4 -0
  235. package/lib/duet/{p-d6938dce.entry.js → p-0440798d.entry.js} +1 -1
  236. package/lib/duet/{p-ea5bad4c.entry.js → p-049d43f7.entry.js} +1 -1
  237. package/lib/duet/{p-4bfc3a15.entry.js → p-05f62501.entry.js} +1 -1
  238. package/lib/duet/{p-8e7dc4ed.system.entry.js → p-074fcd6b.system.entry.js} +1 -1
  239. package/lib/duet/{p-c65851ca.entry.js → p-0777ebba.entry.js} +1 -1
  240. package/lib/duet/{p-244387a0.entry.js → p-0c5ed102.entry.js} +1 -1
  241. package/lib/duet/{p-07c3d88d.entry.js → p-0ec40046.entry.js} +1 -1
  242. package/lib/duet/{p-906c13df.entry.js → p-10f289cb.entry.js} +1 -1
  243. package/lib/duet/{p-5373f6cf.system.entry.js → p-12f3d121.system.entry.js} +1 -1
  244. package/lib/duet/{p-90378229.system.entry.js → p-1498e92a.system.entry.js} +1 -1
  245. package/lib/duet/{p-5b27ed7e.entry.js → p-154ca6bb.entry.js} +1 -1
  246. package/lib/duet/{p-2590ca65.system.entry.js → p-15a4a165.system.entry.js} +1 -1
  247. package/lib/duet/p-16b80d3b.js +4 -0
  248. package/lib/duet/{p-c1e6dcf6.entry.js → p-17373631.entry.js} +1 -1
  249. package/lib/duet/{p-68967bb9.entry.js → p-174f2859.entry.js} +1 -1
  250. package/lib/duet/{p-d206ba69.entry.js → p-18b36a30.entry.js} +1 -1
  251. package/lib/duet/{p-ee9d7b51.system.entry.js → p-196afde9.system.entry.js} +1 -1
  252. package/lib/duet/{p-82461381.system.entry.js → p-1e67f010.system.entry.js} +1 -1
  253. package/lib/duet/{p-993f5974.entry.js → p-1fbb9af9.entry.js} +1 -1
  254. package/lib/duet/{p-bdbe3e35.system.entry.js → p-1fec3835.system.entry.js} +1 -1
  255. package/lib/duet/{p-e0e5597f.entry.js → p-207544a2.entry.js} +1 -1
  256. package/lib/duet/{p-69ba8b52.entry.js → p-23548d24.entry.js} +1 -1
  257. package/lib/duet/{p-4a130ebf.system.entry.js → p-25109b90.system.entry.js} +1 -1
  258. package/lib/duet/{p-be3bf41a.system.entry.js → p-28a033de.system.entry.js} +1 -1
  259. package/lib/duet/{p-84031069.entry.js → p-2abdfdf5.entry.js} +1 -1
  260. package/lib/duet/{p-722a4867.entry.js → p-2c917cc6.entry.js} +1 -1
  261. package/lib/duet/{p-010986d1.system.entry.js → p-2e037205.system.entry.js} +1 -1
  262. package/lib/duet/{p-1a8494b0.system.entry.js → p-2f98c466.system.entry.js} +1 -1
  263. package/lib/duet/{p-1b46db77.entry.js → p-330db26d.entry.js} +1 -1
  264. package/lib/duet/{p-24edf4ed.entry.js → p-33666f2e.entry.js} +1 -1
  265. package/lib/duet/{p-98e033d1.entry.js → p-37b3c823.entry.js} +1 -1
  266. package/lib/duet/{p-b2d010fa.entry.js → p-39a3beb3.entry.js} +1 -1
  267. package/lib/duet/{p-d26b9e1f.system.entry.js → p-3bda5078.system.entry.js} +1 -1
  268. package/lib/duet/{p-7130f6d6.system.entry.js → p-3bfdf5dc.system.entry.js} +1 -1
  269. package/lib/duet/p-3f23694f.entry.js +4 -0
  270. package/lib/duet/{p-fb6a8b36.entry.js → p-3fb7b966.entry.js} +1 -1
  271. package/lib/duet/{p-2d366120.system.entry.js → p-4218b915.system.entry.js} +1 -1
  272. package/lib/duet/{p-ab9b7324.system.entry.js → p-42b9b16c.system.entry.js} +1 -1
  273. package/lib/duet/{p-dc4697ce.system.entry.js → p-4347cce6.system.entry.js} +1 -1
  274. package/lib/duet/{p-441595f6.entry.js → p-44ac28ab.entry.js} +1 -1
  275. package/lib/duet/{p-b7be1375.entry.js → p-4adb4139.entry.js} +1 -1
  276. package/lib/duet/{p-bc7e75a7.entry.js → p-50a679f4.entry.js} +1 -1
  277. package/lib/duet/{p-f81647e9.system.entry.js → p-50dbbb82.system.entry.js} +1 -1
  278. package/lib/duet/p-5339aeea.entry.js +4 -0
  279. package/lib/duet/{p-1e0df043.system.entry.js → p-54cf9288.system.entry.js} +1 -1
  280. package/lib/duet/{p-103ab767.system.entry.js → p-55e1e8e8.system.entry.js} +1 -1
  281. package/lib/duet/{p-42959a52.entry.js → p-55f3f985.entry.js} +1 -1
  282. package/lib/duet/{p-ac6f456f.system.entry.js → p-563dfb63.system.entry.js} +1 -1
  283. package/lib/duet/{p-066f078b.entry.js → p-576cd780.entry.js} +1 -1
  284. package/lib/duet/{p-8ae84c52.entry.js → p-5908bf36.entry.js} +1 -1
  285. package/lib/duet/{p-db09c828.system.entry.js → p-5b528cd1.system.entry.js} +1 -1
  286. package/lib/duet/{p-4175e48c.system.entry.js → p-5d023790.system.entry.js} +1 -1
  287. package/lib/duet/{p-60be4608.system.entry.js → p-5f877026.system.entry.js} +1 -1
  288. package/lib/duet/{p-45a16be3.system.js → p-610b364b.system.js} +1 -1
  289. package/lib/duet/{p-77e1b69b.entry.js → p-61b870ac.entry.js} +1 -1
  290. package/lib/duet/p-6216e282.entry.js +4 -0
  291. package/lib/duet/{p-4fe09b26.system.entry.js → p-639fd377.system.entry.js} +1 -1
  292. package/lib/duet/p-65007ed4.system.entry.js +4 -0
  293. package/lib/duet/{p-edd0d41d.system.entry.js → p-65b45177.system.entry.js} +1 -1
  294. package/lib/duet/{p-c45c621f.js → p-662da762.js} +1 -1
  295. package/lib/duet/{p-6f9e49da.system.entry.js → p-673fdacb.system.entry.js} +1 -1
  296. package/lib/duet/{p-8f504a32.system.entry.js → p-67d8175e.system.entry.js} +2 -2
  297. package/lib/duet/p-6f806923.system.js +4 -0
  298. package/lib/duet/{p-eadbc1cf.entry.js → p-70dd63d2.entry.js} +1 -1
  299. package/lib/duet/{p-314d5b44.entry.js → p-71bd1c3c.entry.js} +1 -1
  300. package/lib/duet/{p-5cbc1b17.entry.js → p-73c27f4f.entry.js} +1 -1
  301. package/lib/duet/{p-ab63306b.entry.js → p-753f2b28.entry.js} +1 -1
  302. package/lib/duet/{p-8ec9245a.entry.js → p-757b1ab3.entry.js} +1 -1
  303. package/lib/duet/{p-fee4d237.system.entry.js → p-75eb9381.system.entry.js} +1 -1
  304. package/lib/duet/{p-645a4cd3.system.entry.js → p-762c0edb.system.entry.js} +1 -1
  305. package/lib/duet/{p-a075ba4d.entry.js → p-780dd22d.entry.js} +1 -1
  306. package/lib/duet/{p-0360829b.entry.js → p-79f01df6.entry.js} +1 -1
  307. package/lib/duet/{p-6bad895a.system.entry.js → p-7ac648a3.system.entry.js} +1 -1
  308. package/lib/duet/p-7aff0f7c.entry.js +4 -0
  309. package/lib/duet/{p-18aaa40c.entry.js → p-7bdbb023.entry.js} +1 -1
  310. package/lib/duet/{p-f08a7552.system.entry.js → p-7d9cffe7.system.entry.js} +1 -1
  311. package/lib/duet/{p-a020bf81.system.entry.js → p-7dcdefb0.system.entry.js} +1 -1
  312. package/lib/duet/{p-954c7df4.system.entry.js → p-7fb66081.system.entry.js} +1 -1
  313. package/lib/duet/{p-594ffed9.entry.js → p-844e7c4c.entry.js} +1 -1
  314. package/lib/duet/{p-38df728c.system.entry.js → p-8a264125.system.entry.js} +1 -1
  315. package/lib/duet/{p-4dc81aa3.system.entry.js → p-8b1b9953.system.entry.js} +1 -1
  316. package/lib/duet/{p-1d11b3b6.entry.js → p-8be10d34.entry.js} +1 -1
  317. package/lib/duet/p-8cfac25d.entry.js +4 -0
  318. package/lib/duet/{p-63150ee3.system.entry.js → p-930f8fe7.system.entry.js} +1 -1
  319. package/lib/duet/{p-7768931c.system.entry.js → p-932be5dd.system.entry.js} +1 -1
  320. package/lib/duet/{p-261014df.system.entry.js → p-94147b17.system.entry.js} +1 -1
  321. package/lib/duet/{p-ce50e4c0.system.entry.js → p-9514ee57.system.entry.js} +1 -1
  322. package/lib/duet/{p-67eee05e.system.entry.js → p-965f292c.system.entry.js} +1 -1
  323. package/lib/duet/{p-c9a6ad4d.entry.js → p-9b62ef83.entry.js} +1 -1
  324. package/lib/duet/p-9f29048f.entry.js +4 -0
  325. package/lib/duet/{p-9f05508d.entry.js → p-a22130db.entry.js} +1 -1
  326. package/lib/duet/{p-252baa0d.entry.js → p-a34e7225.entry.js} +1 -1
  327. package/lib/duet/p-a70815fa.system.entry.js +4 -0
  328. package/lib/duet/{p-e4231291.system.entry.js → p-a75b2646.system.entry.js} +1 -1
  329. package/lib/duet/{p-2c139545.entry.js → p-aab21f91.entry.js} +1 -1
  330. package/lib/duet/{p-78777bcf.entry.js → p-abbd8ae3.entry.js} +1 -1
  331. package/lib/duet/{p-e836814b.entry.js → p-acfdeb70.entry.js} +1 -1
  332. package/lib/duet/{p-f866c944.entry.js → p-ae30e4ce.entry.js} +1 -1
  333. package/lib/duet/p-afea9845.entry.js +4 -0
  334. package/lib/duet/{p-620c416c.entry.js → p-b012ba6c.entry.js} +1 -1
  335. package/lib/duet/{p-e0aa8284.system.entry.js → p-b0dfe576.system.entry.js} +1 -1
  336. package/lib/duet/p-b0fa4550.system.js +4 -0
  337. package/lib/duet/p-b0fd435f.system.entry.js +4 -0
  338. package/lib/duet/{p-c34e419e.system.entry.js → p-b2996b8c.system.entry.js} +1 -1
  339. package/lib/duet/{p-5d6e1173.entry.js → p-b2a54e37.entry.js} +1 -1
  340. package/lib/duet/{p-dba6c1ee.entry.js → p-b2b02430.entry.js} +1 -1
  341. package/lib/duet/{p-1db3121f.system.entry.js → p-b710add2.system.entry.js} +1 -1
  342. package/lib/duet/{p-426ba263.entry.js → p-b89fe252.entry.js} +1 -1
  343. package/lib/duet/{p-c6b5368b.entry.js → p-b8c89970.entry.js} +1 -1
  344. package/lib/duet/{p-ecf9b56e.system.entry.js → p-b9cb8ccb.system.entry.js} +1 -1
  345. package/lib/duet/{p-d053b6be.system.entry.js → p-b9ea34d3.system.entry.js} +1 -1
  346. package/lib/duet/{p-2c34a804.entry.js → p-bac92652.entry.js} +1 -1
  347. package/lib/duet/{p-600f3cf8.system.entry.js → p-bb35b92e.system.entry.js} +1 -1
  348. package/lib/duet/{p-f7e4069c.entry.js → p-bf2fd03b.entry.js} +1 -1
  349. package/lib/duet/{p-60d0817e.system.entry.js → p-c0483523.system.entry.js} +1 -1
  350. package/lib/duet/{p-c73db725.system.entry.js → p-c481631f.system.entry.js} +1 -1
  351. package/lib/duet/{p-53229ab4.system.entry.js → p-c7fdc7dc.system.entry.js} +1 -1
  352. package/lib/duet/{p-04c3f872.system.entry.js → p-c8c9fc58.system.entry.js} +1 -1
  353. package/lib/duet/{p-f781276f.system.entry.js → p-ca0f9f08.system.entry.js} +1 -1
  354. package/lib/duet/{p-f587e799.entry.js → p-ca21be58.entry.js} +1 -1
  355. package/lib/duet/p-cca98ade.entry.js +4 -0
  356. package/lib/duet/{p-0b2ff6ce.system.entry.js → p-ce879ecd.system.entry.js} +1 -1
  357. package/lib/duet/p-ce88ecc6.entry.js +4 -0
  358. package/lib/duet/{p-4b745f4d.entry.js → p-cea2cb32.entry.js} +1 -1
  359. package/lib/duet/{p-e50ab4d3.system.entry.js → p-ceb5b489.system.entry.js} +1 -1
  360. package/lib/duet/{p-3865240e.system.entry.js → p-cf1e1237.system.entry.js} +1 -1
  361. package/lib/duet/{p-9eb39bd3.system.entry.js → p-d038c90c.system.entry.js} +1 -1
  362. package/lib/duet/{p-ac09ef10.entry.js → p-d3141c64.entry.js} +1 -1
  363. package/lib/duet/{p-582b7fa7.system.entry.js → p-d350968c.system.entry.js} +2 -2
  364. package/lib/duet/{p-cd13fb8f.system.entry.js → p-d54396be.system.entry.js} +1 -1
  365. package/lib/duet/{p-86251661.system.entry.js → p-d57d7d49.system.entry.js} +1 -1
  366. package/lib/duet/{p-d189500a.entry.js → p-d585ac25.entry.js} +1 -1
  367. package/lib/duet/{p-18322745.system.entry.js → p-d832433b.system.entry.js} +1 -1
  368. package/lib/duet/{p-b931d3fa.system.entry.js → p-d852ae7e.system.entry.js} +1 -1
  369. package/lib/duet/{p-f1faaa0b.system.entry.js → p-d92ad0d1.system.entry.js} +1 -1
  370. package/lib/duet/{p-a09af712.system.entry.js → p-dd5b17d0.system.entry.js} +1 -1
  371. package/lib/duet/{p-9b8c4a19.entry.js → p-dd7d3b2b.entry.js} +1 -1
  372. package/lib/duet/{p-702810e3.system.entry.js → p-ddc7c96e.system.entry.js} +1 -1
  373. package/lib/duet/{p-4a2adee6.entry.js → p-de41a03b.entry.js} +1 -1
  374. package/lib/duet/{p-95ca3440.system.entry.js → p-e2a0e33f.system.entry.js} +1 -1
  375. package/lib/duet/{p-64c8cce6.entry.js → p-e36f923b.entry.js} +1 -1
  376. package/lib/duet/{p-3515cd72.system.entry.js → p-e49e8a54.system.entry.js} +1 -1
  377. package/lib/duet/{p-2cc17967.system.entry.js → p-e4efc7ea.system.entry.js} +1 -1
  378. package/lib/duet/p-e91cced0.entry.js +4 -0
  379. package/lib/duet/{p-ce0ffc6e.system.entry.js → p-e9928179.system.entry.js} +1 -1
  380. package/lib/duet/{p-42f92e6f.entry.js → p-eac79871.entry.js} +1 -1
  381. package/lib/duet/{p-cf6c967a.entry.js → p-eb790693.entry.js} +1 -1
  382. package/lib/duet/{p-b627091f.system.entry.js → p-ebd1b7ae.system.entry.js} +1 -1
  383. package/lib/duet/{p-4d3ef5ea.system.entry.js → p-ee815760.system.entry.js} +1 -1
  384. package/lib/duet/{p-0142d94d.entry.js → p-f1f7ee14.entry.js} +1 -1
  385. package/lib/duet/{p-d94c8c20.entry.js → p-f5fee877.entry.js} +1 -1
  386. package/lib/duet/{p-cbbe6410.entry.js → p-f6803f4c.entry.js} +1 -1
  387. package/lib/duet/{p-5eaf9a5e.entry.js → p-f715214a.entry.js} +1 -1
  388. package/lib/duet/{p-a2541d8a.entry.js → p-f7f16a52.entry.js} +1 -1
  389. package/lib/duet/{p-6020800c.system.entry.js → p-f9b3965d.system.entry.js} +1 -1
  390. package/lib/duet/{p-b2af386a.system.entry.js → p-fdb9f8df.system.entry.js} +1 -1
  391. package/lib/esm/duet-action-button.entry.js +1 -1
  392. package/lib/esm/duet-alert.entry.js +1 -1
  393. package/lib/esm/duet-badge.entry.js +1 -1
  394. package/lib/esm/duet-banner.entry.js +1 -1
  395. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  396. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  397. package/lib/esm/duet-button_2.entry.js +1 -1
  398. package/lib/esm/duet-callout.entry.js +1 -1
  399. package/lib/esm/duet-caption_4.entry.js +1 -1
  400. package/lib/esm/duet-card.entry.js +1 -1
  401. package/lib/esm/duet-checkbox.entry.js +1 -1
  402. package/lib/esm/duet-checkmark.entry.js +1 -1
  403. package/lib/esm/duet-chip.entry.js +1 -1
  404. package/lib/esm/duet-choice_2.entry.js +2 -2
  405. package/lib/esm/duet-collapsible.entry.js +1 -1
  406. package/lib/esm/duet-combobox.entry.js +1 -1
  407. package/lib/esm/duet-contact-card.entry.js +1 -1
  408. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  409. package/lib/esm/duet-date-picker.entry.js +2 -2
  410. package/lib/esm/duet-divider_2.entry.js +1 -1
  411. package/lib/esm/duet-editable-table_3.entry.js +1 -1
  412. package/lib/esm/duet-empty-state.entry.js +1 -1
  413. package/lib/esm/duet-fieldset.entry.js +1 -1
  414. package/lib/esm/duet-file-chooser.entry.js +1 -1
  415. package/lib/esm/duet-footer.entry.js +1 -1
  416. package/lib/esm/duet-grid_2.entry.js +1 -1
  417. package/lib/esm/duet-header_2.entry.js +1 -1
  418. package/lib/esm/duet-hero.entry.js +1 -1
  419. package/lib/esm/duet-icon.entry.js +1 -1
  420. package/lib/esm/duet-input_2.entry.js +7 -3
  421. package/lib/esm/duet-layout.entry.js +1 -1
  422. package/lib/esm/duet-list_2.entry.js +1 -1
  423. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  424. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  425. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  426. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  427. package/lib/esm/duet-menu-bar.entry.js +1 -1
  428. package/lib/esm/duet-modal.entry.js +18 -5
  429. package/lib/esm/duet-multiselect.entry.js +4 -2
  430. package/lib/esm/duet-nav.entry.js +1 -1
  431. package/lib/esm/duet-notification_2.entry.js +1 -1
  432. package/lib/esm/duet-number-input.entry.js +1 -1
  433. package/lib/esm/duet-page-heading.entry.js +1 -1
  434. package/lib/esm/duet-pagination_2.entry.js +1 -1
  435. package/lib/esm/duet-popup-menu-item.entry.js +2 -2
  436. package/lib/esm/duet-popup-menu.entry.js +1 -1
  437. package/lib/esm/duet-progress.entry.js +1 -1
  438. package/lib/esm/duet-promo-card.entry.js +1 -1
  439. package/lib/esm/duet-radio_2.entry.js +1 -1
  440. package/lib/esm/duet-range-slider.entry.js +4 -2
  441. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  442. package/lib/esm/duet-section-layout.entry.js +1 -1
  443. package/lib/esm/duet-select.entry.js +4 -2
  444. package/lib/esm/duet-shaped-image.entry.js +1 -1
  445. package/lib/esm/duet-show-more.entry.js +1 -1
  446. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  447. package/lib/esm/duet-slideout-link.entry.js +1 -1
  448. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  449. package/lib/esm/duet-slideout-panel.entry.js +2 -2
  450. package/lib/esm/duet-slideout.entry.js +77 -66
  451. package/lib/esm/duet-step_2.entry.js +1 -1
  452. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  453. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  454. package/lib/esm/duet-submenu-bar-link.entry.js +1 -1
  455. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  456. package/lib/esm/duet-textarea.entry.js +4 -2
  457. package/lib/esm/duet-toggle.entry.js +4 -2
  458. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  459. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  460. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  461. package/lib/esm/duet-toolbar.entry.js +1 -1
  462. package/lib/esm/duet-tooltip-button_2.entry.js +2 -2
  463. package/lib/esm/duet-tooltip.entry.js +11 -2
  464. package/lib/esm/duet-tray.entry.js +1 -1
  465. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  466. package/lib/esm/duet-upload-item.entry.js +1 -1
  467. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  468. package/lib/esm/duet.js +3 -3
  469. package/lib/esm/{focus-utils-8f59f0fc.js → focus-utils-2a29f64e.js} +1 -1
  470. package/lib/esm/{index-6a5abb95.js → index-909a963e.js} +1 -1
  471. package/lib/esm/loader.js +3 -3
  472. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  473. package/lib/esm-es5/duet-alert.entry.js +1 -1
  474. package/lib/esm-es5/duet-badge.entry.js +1 -1
  475. package/lib/esm-es5/duet-banner.entry.js +1 -1
  476. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  477. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  478. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  479. package/lib/esm-es5/duet-callout.entry.js +1 -1
  480. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  481. package/lib/esm-es5/duet-card.entry.js +1 -1
  482. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  483. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  484. package/lib/esm-es5/duet-chip.entry.js +1 -1
  485. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  486. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  487. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  488. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  489. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  490. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  491. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  492. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  493. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  494. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  495. package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
  496. package/lib/esm-es5/duet-footer.entry.js +1 -1
  497. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  498. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  499. package/lib/esm-es5/duet-hero.entry.js +1 -1
  500. package/lib/esm-es5/duet-icon.entry.js +1 -1
  501. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  502. package/lib/esm-es5/duet-layout.entry.js +1 -1
  503. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  504. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  505. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  506. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  507. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  508. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  509. package/lib/esm-es5/duet-modal.entry.js +2 -2
  510. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  511. package/lib/esm-es5/duet-nav.entry.js +1 -1
  512. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  513. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  514. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  515. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  516. package/lib/esm-es5/duet-popup-menu-item.entry.js +2 -2
  517. package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
  518. package/lib/esm-es5/duet-progress.entry.js +1 -1
  519. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  520. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  521. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  522. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  523. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  524. package/lib/esm-es5/duet-select.entry.js +1 -1
  525. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  526. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  527. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  528. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  529. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  530. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  531. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  532. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  533. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  534. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  535. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  536. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  537. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  538. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  539. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  540. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  541. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  542. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  543. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  544. package/lib/esm-es5/duet-tooltip.entry.js +2 -2
  545. package/lib/esm-es5/duet-tray.entry.js +1 -1
  546. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  547. package/lib/esm-es5/duet-upload-item.entry.js +1 -1
  548. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  549. package/lib/esm-es5/duet.js +1 -1
  550. package/lib/esm-es5/focus-utils-2a29f64e.js +4 -0
  551. package/lib/esm-es5/{index-6a5abb95.js → index-909a963e.js} +1 -1
  552. package/lib/esm-es5/loader.js +1 -1
  553. package/lib/types/common/focusable-component.d.ts +4 -0
  554. package/lib/types/common/index.d.ts +2 -0
  555. package/lib/types/common/opener-component.d.ts +5 -0
  556. package/lib/types/common-types.d.ts +2 -0
  557. package/lib/types/components/duet-input/duet-input.d.ts +9 -1
  558. package/lib/types/components/duet-label/duet-label.d.ts +5 -1
  559. package/lib/types/components/duet-modal/duet-modal.d.ts +7 -0
  560. package/lib/types/components/duet-multiselect/duet-multiselect.d.ts +9 -1
  561. package/lib/types/components/duet-range-slider/duet-range-slider.d.ts +9 -1
  562. package/lib/types/components/duet-select/duet-select.d.ts +9 -1
  563. package/lib/types/components/duet-slideout/duet-slideout.d.ts +23 -17
  564. package/lib/types/components/duet-textarea/duet-textarea.d.ts +9 -1
  565. package/lib/types/components/duet-toggle/duet-toggle.d.ts +9 -1
  566. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +6 -0
  567. package/lib/types/components.d.ts +124 -4
  568. package/package.json +5 -5
  569. package/lib/duet/p-00f75643.system.entry.js +0 -4
  570. package/lib/duet/p-0660a9a6.entry.js +0 -4
  571. package/lib/duet/p-088ac559.entry.js +0 -4
  572. package/lib/duet/p-164be464.entry.js +0 -4
  573. package/lib/duet/p-180c61a0.entry.js +0 -4
  574. package/lib/duet/p-210adc0e.system.entry.js +0 -4
  575. package/lib/duet/p-23914c18.entry.js +0 -4
  576. package/lib/duet/p-2858bbdf.entry.js +0 -4
  577. package/lib/duet/p-41203a2d.entry.js +0 -4
  578. package/lib/duet/p-474f53fe.entry.js +0 -4
  579. package/lib/duet/p-4e9b4950.entry.js +0 -4
  580. package/lib/duet/p-53e33daf.js +0 -4
  581. package/lib/duet/p-64e16fb9.system.js +0 -4
  582. package/lib/duet/p-711c2a2b.system.js +0 -4
  583. package/lib/duet/p-7ad157c2.entry.js +0 -4
  584. package/lib/duet/p-d125d287.system.entry.js +0 -4
  585. package/lib/duet/p-d1a42e5b.system.entry.js +0 -4
  586. package/lib/esm-es5/focus-utils-8f59f0fc.js +0 -4
@@ -1,10 +1,11 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { d as disableBodyScroll, e as enableBodyScroll } from './bodyScrollLock.es6-8dc7cca7.js';
6
6
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
7
- import { F as FocusGuard } from './focus-utils-8f59f0fc.js';
7
+ import { h as hasSlot } from './slot-query-022710bb.js';
8
+ import { f as focusElement, F as FocusGuard } from './focus-utils-2a29f64e.js';
8
9
  import { f as isEscapeKey } from './keyboard-utils-eba88365.js';
9
10
  import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './language-utils-00ca4c55.js';
10
11
  import { T as Teleport } from './teleport-d66d62e4.js';
@@ -12,7 +13,7 @@ import { g as getColorByName } from './token-utils-ece867a8.js';
12
13
  import './string-utils-ca039233.js';
13
14
  import './tokens.module-7a2f9c49.js';
14
15
 
15
- const duetSlideoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;height:100%}::slotted(*){position:relative;width:100%;visibility:hidden;opacity:0}:host([open]) ::slotted(*){visibility:visible;opacity:1}:host(:not([open])) ::slotted(duet-slideout-panel){display:none}.duet-slideout{display:flex;align-items:center;height:100%}.duet-slideout .desktop-bg{display:none}@media (min-width: 62em){.duet-slideout .desktop-bg{position:fixed;top:0;left:0;z-index:400;display:block;width:100%;height:100%;visibility:hidden;background:rgba(0, 41, 77, 0.6);opacity:0;transition:600ms ease}.duet-slideout .desktop-bg:not(.hidden){visibility:visible;opacity:1;transition:600ms ease}}@media (min-width: 62em){.duet-slideout.duet-theme-turva .desktop-bg{background:rgba(23, 28, 58, 0.6)}}.duet-slideout .dialog{position:fixed;top:0;bottom:0;left:0;z-index:400;width:100%;height:100%;padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset}@media (min-width: 62em){.duet-slideout .dialog{right:0;left:auto;width:500px;padding-bottom:0;transition:right 300ms ease;transition-delay:0s}}.duet-slideout .dialog .top{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;padding:4px}.duet-slideout .dialog .top button{cursor:pointer}.duet-slideout .dialog .top button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-slideout .dialog .top duet-icon{padding:16px}.duet-slideout .dialog .items{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:0 1.5rem}.duet-slideout .dialog.hidden{pointer-events:none;visibility:hidden}@media (min-width: 62em){.duet-slideout .dialog.hidden{right:-500px;transition:300ms ease}}.duet-slideout.duet-theme-turva .dialog{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}.duet-slideout.duet-theme-turva button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-slideout.duet-theme-turva button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-slideout.duet-theme-turva button.active{color:rgb(198, 12, 48)}.duet-slideout.duet-theme-turva button.active::after{background:rgb(198, 12, 48)}.duet-slideout.duet-theme-turva .dialog .top button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}slot{color:rgb(0, 41, 77)}.duet-theme-turva slot{color:rgb(23, 28, 58)}";
16
+ const duetSlideoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;height:100%}::slotted(*){position:relative;width:100%;visibility:hidden;opacity:0}:host([open]) ::slotted(*){visibility:visible;opacity:1}:host(:not([open])) ::slotted(duet-slideout-panel){display:none}.duet-slideout{display:flex;align-items:center;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.5;color:rgb(0, 41, 77)}.duet-slideout.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-slideout .desktop-bg{display:none}@media (min-width: 62em){.duet-slideout .desktop-bg{position:fixed;top:0;left:0;z-index:400;display:block;width:100%;height:100%;visibility:hidden;background:rgba(0, 41, 77, 0.6);opacity:0;transition:600ms ease}.duet-slideout .desktop-bg:not(.hidden){visibility:visible;opacity:1;transition:600ms ease}}@media (min-width: 62em){.duet-slideout.duet-theme-turva .desktop-bg{background:rgba(23, 28, 58, 0.6)}}.duet-slideout .dialog{position:fixed;top:0;bottom:0;left:0;z-index:400;width:100%;height:100%;padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset}@media (min-width: 62em){.duet-slideout .dialog{right:0;left:auto;width:500px;padding-bottom:0;transition:right 300ms ease;transition-delay:0s}}.duet-slideout .dialog .top-container.has-sticky-header-slot{position:sticky;top:0;z-index:200}.duet-slideout .dialog .top-container.has-sticky-header-slot .top{background:rgb(243, 249, 252)}.duet-slideout .dialog .top-container.has-sticky-header-slot .sticky-header{display:block}.duet-slideout .dialog .top{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;padding:4px}.duet-slideout .dialog .top button{cursor:pointer}.duet-slideout .dialog .top button:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-slideout .dialog .top duet-icon{padding:16px}.duet-slideout .dialog .sticky-header{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}.duet-slideout .dialog .items{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:0 1.5rem}.duet-slideout .dialog.hidden{pointer-events:none;visibility:hidden}@media (min-width: 62em){.duet-slideout .dialog.hidden{right:-500px;transition:300ms ease}}.duet-slideout.duet-theme-turva .dialog{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}.duet-slideout.duet-theme-turva button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-slideout.duet-theme-turva button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-slideout.duet-theme-turva button.active{color:rgb(198, 12, 48)}.duet-slideout.duet-theme-turva button.active::after{background:rgb(198, 12, 48)}.duet-slideout.duet-theme-turva .has-sticky-header-slot .top{background:rgb(245, 245, 247)}.duet-slideout.duet-theme-turva .has-sticky-header-slot .sticky-header{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}.duet-slideout.duet-theme-turva .dialog .top button:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}slot{color:rgb(0, 41, 77)}.duet-theme-turva slot{color:rgb(23, 28, 58)}";
16
17
 
17
18
  const DuetSlideout = class {
18
19
  constructor(hostRef) {
@@ -29,6 +30,7 @@ const DuetSlideout = class {
29
30
  sv: "Stäng den här menyn för att hitta objekt på toppnivå",
30
31
  };
31
32
  this.isSafariBrowser = /^((?!chrome|android).)*safari/i.test(navigator === null || navigator === void 0 ? void 0 : navigator.userAgent);
33
+ this.hasStickyHeaderSlot = false;
32
34
  this.handleBodyScrolling = () => {
33
35
  if (this.displaying && this.open) {
34
36
  disableBodyScroll(this.dialog, { reserveScrollBarGap: true });
@@ -37,6 +39,23 @@ const DuetSlideout = class {
37
39
  enableBodyScroll(this.dialog);
38
40
  }
39
41
  };
42
+ this.setOpenButton = (element) => {
43
+ if (!element) {
44
+ return;
45
+ }
46
+ try {
47
+ const button = element;
48
+ button.accessiblePopup = "true";
49
+ button.accessibleExpanded = false;
50
+ this.openButton = button;
51
+ }
52
+ catch (_e) { }
53
+ };
54
+ this.openButtonEventListener = (e) => {
55
+ e.stopPropagation();
56
+ e.preventDefault();
57
+ this.onClick(e);
58
+ };
40
59
  this.getOpenPanel = () => {
41
60
  return this.element.querySelector("duet-slideout-panel[open]");
42
61
  };
@@ -66,8 +85,7 @@ const DuetSlideout = class {
66
85
  }
67
86
  else {
68
87
  setTimeout(() => {
69
- var _a;
70
- (_a = this.openButton) === null || _a === void 0 ? void 0 : _a.setFocus();
88
+ focusElement(this.openButton);
71
89
  this.handleBodyScrolling();
72
90
  this.teleport.resume();
73
91
  }, 200);
@@ -90,79 +108,37 @@ const DuetSlideout = class {
90
108
  this.opener = undefined;
91
109
  this.backgroundColor = "gray-lightest";
92
110
  }
93
- /**
94
- * Toggles the slideout.
95
- */
96
- async toggle() {
97
- const event = new CustomEvent("toggle");
98
- this.toggleMenu(event);
99
- setTimeout(() => {
100
- this.closeButton.focus();
101
- }, 200);
102
- }
103
- /**
104
- * Shows the slideout. Additionally saves the element (DuetButton or DuetMenuBarButton) that triggered
105
- * the slideout so that focus can be moved back to this specific element when
106
- * the slideout dialog is closed.
107
- */
108
- async show() {
109
- if (this.open) {
110
- return;
111
- }
112
- const button = document.activeElement;
113
- if (button) {
114
- button.accessiblePopup = "true";
115
- this.openButton = button;
116
- }
117
- this.toggleMenu(new CustomEvent("toggle"));
118
- }
119
- /**
120
- * Hides the slideout dialog and puts focus back to the original element
121
- * that triggered the slideout (if we’re still in the same view).
122
- */
123
- async hide() {
124
- if (!this.open) {
125
- return;
126
- }
127
- this.toggleMenu(new CustomEvent("toggle"));
128
- }
129
111
  /**
130
112
  * Component lifecycle events.
131
113
  */
132
114
  componentWillLoad() {
133
115
  inheritGlobalTheme(this);
134
- const button = this.opener && document.getElementById(this.opener);
135
- if (button) {
136
- button.accessiblePopup = "true";
137
- button.accessibleExpanded = false;
138
- button.addEventListener("click", e => {
139
- e.stopPropagation();
140
- e.preventDefault();
141
- this.openButton = button;
142
- this.onClick(e);
143
- });
144
- }
116
+ this.hasStickyHeaderSlot = hasSlot(this.element, "sticky-header");
145
117
  this.teleport = new Teleport(this.element);
146
118
  }
147
- async componentDidLoad() {
148
- this.intersectionObserver = new IntersectionObserver(entries => {
149
- if (entries[0].isIntersecting) {
150
- this.displaying = true;
151
- }
152
- else {
153
- this.displaying = false;
154
- }
155
- this.handleBodyScrolling();
156
- });
157
- this.intersectionObserver.observe(this.dialog);
158
- }
159
119
  connectedCallback() {
160
120
  connectLanguageChangeObserver(this);
121
+ if (this.opener) {
122
+ this.setOpenButton(document.getElementById(this.opener));
123
+ this.openButton.addEventListener("click", this.openButtonEventListener);
124
+ }
161
125
  this.mutationObserver = new MutationObserver(() => {
162
126
  this.openPanel = !!this.getOpenPanel();
163
127
  });
164
128
  this.mutationObserver.observe(this.element, { childList: true, attributeFilter: ["open"], subtree: true });
165
129
  }
130
+ componentDidRender() {
131
+ // intersection observer is here to observe when the dialog is actually visible and when its not
132
+ if (this.intersectionObserver) {
133
+ this.intersectionObserver.disconnect();
134
+ }
135
+ this.intersectionObserver = new IntersectionObserver(entries => {
136
+ this.displaying = entries[0].isIntersecting;
137
+ this.handleBodyScrolling();
138
+ });
139
+ // this.dialog can't be observed before rendering because its not available yet
140
+ this.intersectionObserver.observe(this.dialog);
141
+ }
166
142
  disconnectedCallback() {
167
143
  disconnectLanguageChangeObserver(this);
168
144
  enableBodyScroll(this.dialog);
@@ -172,6 +148,9 @@ const DuetSlideout = class {
172
148
  if (this.mutationObserver) {
173
149
  this.mutationObserver.disconnect();
174
150
  }
151
+ if (this.openButton) {
152
+ this.openButton.removeEventListener("click", this.openButtonEventListener);
153
+ }
175
154
  }
176
155
  /**
177
156
  * Component event handling.
@@ -191,6 +170,38 @@ const DuetSlideout = class {
191
170
  var _a;
192
171
  (_a = this.openButton) === null || _a === void 0 ? void 0 : _a.focus(options);
193
172
  }
173
+ /**
174
+ * Toggles the slideout.
175
+ */
176
+ async toggle() {
177
+ const event = new CustomEvent("toggle");
178
+ this.toggleMenu(event);
179
+ setTimeout(() => {
180
+ this.closeButton.focus();
181
+ }, 200);
182
+ }
183
+ /**
184
+ * Shows the slideout. Additionally saves the element (DuetButton or DuetMenuBarButton) that triggered
185
+ * the slideout so that focus can be moved back to this specific element when
186
+ * the slideout dialog is closed.
187
+ */
188
+ async show() {
189
+ if (this.open) {
190
+ return;
191
+ }
192
+ this.setOpenButton(document.activeElement);
193
+ this.toggleMenu(new CustomEvent("toggle"));
194
+ }
195
+ /**
196
+ * Hides the slideout dialog and puts focus back to the original element
197
+ * that triggered the slideout (if we’re still in the same view).
198
+ */
199
+ async hide() {
200
+ if (!this.open) {
201
+ return;
202
+ }
203
+ this.toggleMenu(new CustomEvent("toggle"));
204
+ }
194
205
  /**
195
206
  * render() function
196
207
  * Always the last one in the class.
@@ -207,10 +218,10 @@ const DuetSlideout = class {
207
218
  }, onClick: this.bgOnClick }), h("div", { ref: element => (this.dialog = element), tabindex: "-1", role: "dialog", id: "dialog", "aria-labelledby": "button", "aria-modal": this.isSafariBrowser ? false : true, "aria-flowto": "slot-container", class: {
208
219
  dialog: true,
209
220
  hidden: !this.open,
210
- }, style: styles }, h(FocusGuard, { moveFocusTo: this.closeButton }), h("div", { class: "top" }, h("button", { ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
221
+ }, style: styles }, h(FocusGuard, { moveFocusTo: this.closeButton }), h("div", { class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, h("div", { class: "top" }, h("button", { ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
211
222
  "slideout-close": true,
212
223
  active: this.open,
213
- }, onClick: this.onClick, inert: this.openPanel }, h("duet-icon", { name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), h("div", { id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
224
+ }, onClick: this.onClick, inert: this.openPanel }, h("duet-icon", { name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), h("div", { class: "sticky-header" }, h("slot", { name: "sticky-header" }))), h("div", { id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
214
225
  items: true,
215
226
  } }, h("slot", null)), h(FocusGuard, { moveFocusTo: this.closeButton })))));
216
227
  }
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-6a5abb95.js';
4
+ import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { c as createID } from './create-id-149a1b6d.js';
7
7
  import { i as isKeyboardClick, s as subscribeTabbingChange, u as unsubscribeTabbingChange } from './keyboard-utils-eba88365.js';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-eba88365.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { a as media_query_large } from './tokens-04106a43.js';
6
6
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
7
7
  import { f as isEscapeKey } from './keyboard-utils-eba88365.js';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { a as media_query_large } from './tokens-04106a43.js';
6
6
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
7
7
  import { f as isEscapeKey } from './keyboard-utils-eba88365.js';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { a as media_query_large } from './tokens-04106a43.js';
6
6
  import { e as enableBodyScroll, d as disableBodyScroll } from './bodyScrollLock.es6-8dc7cca7.js';
7
7
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { c as createID } from './create-id-149a1b6d.js';
7
7
  import { c as cleanValue } from './input-utils-85681162.js';
@@ -106,6 +106,8 @@ const DuetTextarea = class {
106
106
  this.identifier = undefined;
107
107
  this.required = false;
108
108
  this.label = "label";
109
+ this.labelColor = undefined;
110
+ this.labelWeight = undefined;
109
111
  this.labelHidden = false;
110
112
  this.name = undefined;
111
113
  this.placeholder = undefined;
@@ -165,7 +167,7 @@ const DuetTextarea = class {
165
167
  "duet-label-hidden": this.labelHidden,
166
168
  "duet-input-top-caption-shown": this.isCaptionVisible,
167
169
  "has-error": !!this.error,
168
- } }, h("duet-label", { theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", id: this.labelId, for: identifier }, this.label), this.tooltip && (h("duet-tooltip", { direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), this.caption && (h("duet-caption", { id: this.topCaptionId, size: "medium", theme: this.theme === "turva" ? "turva" : "default" }, this.caption)), h("div", { class: "duet-textarea-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (h("duet-caption", { id: this.topCaptionPlaceholderId, class: "duet-textarea-placeholder", size: "small" }, this.placeholder)), h("textarea", { onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.getDescribedBy(), "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, placeholder: this.placeholder, spellcheck: "false", required: this.required, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })), h("duet-grid", { alignment: "stretch" }, h("duet-grid-item", { margin: "none", fill: true }, h("div", { class: "duet-textarea-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", null, this.error))), h("duet-grid-item", { margin: "none", class: "duet-character-count-caption" }, this.counter && (h(CharacterCount, { theme: this.theme, value: this.value, maxlength: this.maxlength, label: this.counterLabel })))), this.counter && (h("duet-visually-hidden", { class: "duet-visually-hidden", id: this.characterCountId, ref: el => {
170
+ } }, h("duet-label", { theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, margin: this.isCaptionVisible ? "small" : "auto", color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: identifier }, this.label), this.tooltip && (h("duet-tooltip", { direction: this.tooltipDirection, accessibleInputLabel: this.label, theme: this.theme === "turva" ? "turva" : "default" }, this.tooltip)), this.caption && (h("duet-caption", { id: this.topCaptionId, size: "medium", theme: this.theme === "turva" ? "turva" : "default" }, this.caption)), h("div", { class: "duet-textarea-wrapper" }, this.placeholder && this.echoPlaceholder && this.value && (h("duet-caption", { id: this.topCaptionPlaceholderId, class: "duet-textarea-placeholder", size: "small" }, this.placeholder)), h("textarea", { onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": this.accessibleLabelledBy ? `${this.labelId} ${this.accessibleLabelledBy}` : this.labelId, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.getDescribedBy(), "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, placeholder: this.placeholder, spellcheck: "false", required: this.required, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })), h("duet-grid", { alignment: "stretch" }, h("duet-grid-item", { margin: "none", fill: true }, h("div", { class: "duet-textarea-help", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", null, this.error))), h("duet-grid-item", { margin: "none", class: "duet-character-count-caption" }, this.counter && (h(CharacterCount, { theme: this.theme, value: this.value, maxlength: this.maxlength, label: this.counterLabel })))), this.counter && (h("duet-visually-hidden", { class: "duet-visually-hidden", id: this.characterCountId, ref: el => {
169
171
  this.hiddenCounterLabel = el;
170
172
  } })))));
171
173
  }
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { c as createID } from './create-id-149a1b6d.js';
7
7
  import { s as subscribeTabbingChange, u as unsubscribeTabbingChange } from './keyboard-utils-eba88365.js';
@@ -34,6 +34,8 @@ const DuetToggle = class {
34
34
  this.accessibleLabelledBy = undefined;
35
35
  this.accessibleDescription = undefined;
36
36
  this.label = "label";
37
+ this.labelColor = undefined;
38
+ this.labelWeight = undefined;
37
39
  this.labelPosition = "top";
38
40
  this.required = false;
39
41
  this.disabled = false;
@@ -83,7 +85,7 @@ const DuetToggle = class {
83
85
  "duet-theme-turva": this.theme === "turva",
84
86
  "duet-side-label": this.labelPosition !== "top",
85
87
  "duet-reverse-label": this.labelPosition === "right",
86
- } }, h("duet-label", { theme: this.theme, for: identifier, margin: this.labelPosition === "top" ? "auto" : "none" }, this.label), h("label", { class: "duet-switch", htmlFor: identifier }, h("input", { type: "checkbox", value: this.value, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, id: identifier, role: this.role, name: this.name, checked: this.checked, required: this.required, disabled: this.disabled, ref: input => (this.nativeInput = input) }), h("div", { class: "duet-slider" })))));
88
+ } }, h("duet-label", { theme: this.theme, color: this.labelColor, weight: this.labelWeight, for: identifier, margin: this.labelPosition === "top" ? "auto" : "none" }, this.label), h("label", { class: "duet-switch", htmlFor: identifier }, h("input", { type: "checkbox", value: this.value, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, id: identifier, role: this.role, name: this.name, checked: this.checked, required: this.required, disabled: this.disabled, ref: input => (this.nativeInput = input) }), h("div", { class: "duet-slider" })))));
87
89
  }
88
90
  get element() { return getElement(this); }
89
91
  static get watchers() { return {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-eba88365.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-eba88365.js';
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
 
7
7
  const duetToolbarLinkCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;height:100%}.duet-toolbar-link{position:relative;display:flex;gap:8px;align-items:center;justify-content:center;height:100%;padding:0 16px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(0, 77, 128);text-align:center;text-decoration:none;white-space:nowrap}.duet-toolbar-link:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva .duet-toolbar-link:focus,.duet-toolbar-link:focus.duet-theme-turva{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-toolbar-link.negative{color:rgb(255, 255, 255)}.duet-toolbar-link.negative duet-icon{color:rgb(205, 229, 241)}.duet-toolbar-link.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-toolbar-link.duet-theme-turva.negative{color:rgb(255, 255, 255)}.duet-toolbar-link.duet-theme-turva.negative duet-icon{color:rgb(244, 207, 214)}.duet-toolbar-link:hover{color:rgb(0, 41, 77);background:rgb(243, 249, 252)}.duet-toolbar-link:hover.negative{color:rgb(255, 255, 255);background:rgba(0, 41, 77, 0.2)}.duet-toolbar-link:hover.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(245, 245, 247)}.duet-toolbar-link:hover.duet-theme-turva.negative{color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-link.active{color:rgb(0, 41, 77)}.duet-toolbar-link.active.negative{font-weight:600;color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-link.active.negative::after{display:none}.duet-toolbar-link.active::after{position:absolute;top:auto;bottom:1px;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transition:300ms ease;transform:translateY(1px)}.duet-toolbar-link.active::after.duet-theme-turva{background:rgb(198, 12, 48)}.duet-toolbar-link.active.duet-theme-turva{color:rgb(23, 28, 58)}.duet-toolbar-link.active.duet-theme-turva::after{background:rgb(198, 12, 48)}.duet-toolbar-link.active.duet-theme-turva.negative{color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}";
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
 
7
7
  const duetToolbarCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%}.duet-toolbar{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;background:rgb(255, 255, 255)}.duet-toolbar .container{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1384px;height:36px;margin:0 28px;border-bottom:1px solid rgb(225, 227, 230)}.duet-toolbar .list{display:flex;align-items:center;justify-content:space-between;height:100%;list-style-type:none}.duet-toolbar ::slotted(*){display:flex;align-items:center;justify-content:center;height:100%}.duet-toolbar.negative{background:rgb(0, 119, 179)}.duet-toolbar.negative .container{border-bottom:0}.duet-toolbar.duet-theme-turva{background:rgb(255, 255, 255)}.duet-toolbar.duet-theme-turva .container{border-bottom:1px solid rgb(228, 228, 230)}.duet-toolbar.duet-theme-turva.negative{background:rgb(198, 12, 48)}.duet-toolbar.duet-theme-turva.negative .container{border-bottom:0}";
@@ -1,10 +1,10 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement, c as createEvent } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { s as subscribeTabbingChange, u as unsubscribeTabbingChange } from './keyboard-utils-eba88365.js';
7
- import { F as FocusGuard } from './focus-utils-8f59f0fc.js';
7
+ import { F as FocusGuard } from './focus-utils-2a29f64e.js';
8
8
  import { T as Teleport } from './teleport-d66d62e4.js';
9
9
 
10
10
  const duetTooltipButtonCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-tooltip-button{z-index:100;display:inline-block;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 !important;margin-right:-12px;line-height:normal !important;color:rgb(0, 119, 179);white-space:nowrap;cursor:pointer;background:transparent !important;border-radius:4px}.duet-tooltip-button.duet-theme-turva{color:rgb(198, 12, 48)}.duet-tooltip-button:hover{color:rgb(0, 77, 128)}.duet-tooltip-button:hover.duet-theme-turva{color:rgb(148, 9, 37)}.duet-tooltip-button:focus{background:transparent !important;outline:0}:host(.user-is-tabbing) .duet-tooltip-button:focus{background:transparent !important;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3 !important}:host(.user-is-tabbing) .duet-tooltip-button.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a !important}.duet-tooltip-button svg{width:20px;height:20px;pointer-events:none}.duet-tooltip-button-has-label{margin-right:0}.duet-tooltip-label{position:relative;z-index:100;display:inline-block;max-width:calc(100% - 30px);margin-left:12px !important;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;line-height:1.25;text-align:left;white-space:normal;vertical-align:top}.duet-theme-turva .duet-tooltip-label{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}";
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
  import { m as media_query_medium, a as media_query_large } from './tokens-04106a43.js';
6
6
  import { c as computePosition, f as flip, s as shift, a as arrow } from './floating-ui.dom.esm-efad5c89.js';
7
7
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
@@ -23,6 +23,11 @@ const DuetTooltip = class {
23
23
  window.matchMedia(media_query_large.replace(/'/g, "")),
24
24
  ];
25
25
  this.tooltipId = createID("DuetTooltip");
26
+ this.aboutString = {
27
+ fi: "aiheesta",
28
+ en: "about",
29
+ sv: "om",
30
+ };
26
31
  /**
27
32
  * Local methods
28
33
  */
@@ -81,6 +86,7 @@ const DuetTooltip = class {
81
86
  sv: "Visa mer tilläggsuppgifter",
82
87
  };
83
88
  this.accessibleLabel = getLocaleString(this.accessibleLabelDefault, this.language);
89
+ this.accessibleAboutLabel = undefined;
84
90
  this.accessibleInputLabel = undefined;
85
91
  this.accessibleCloseLabelDefault = {
86
92
  fi: "Sulje lisätiedot",
@@ -203,7 +209,10 @@ const DuetTooltip = class {
203
209
  top: this.arrowY ? `${this.arrowY}px` : undefined,
204
210
  left: this.arrowX ? `${this.arrowX}px` : undefined,
205
211
  };
206
- return (h(Host, { style: tooltipStyles }, h("duet-tooltip-button", { ref: element => (this.buttonEl = element), active: this.active, tooltipId: this.tooltipId, label: this.label, accessibleLabel: this.accessibleInputLabel ? `${this.accessibleInputLabel}, ${this.accessibleLabel}` : this.accessibleLabel, onClick: this.toggleOpen, theme: this.theme }), h("div", { style: popupContainerStyles }, h("duet-tooltip-popup", { ref: element => (this.popupElement = element), active: this.active, tooltipId: this.tooltipId, arrowStyles: arrowStyles, style: positionStyles, placement: this.placement, accessibleCloseLabel: this.accessibleCloseLabel, theme: this.theme }, h("slot", null)))));
212
+ return (h(Host, { style: tooltipStyles }, h("duet-tooltip-button", { ref: element => (this.buttonEl = element), active: this.active, tooltipId: this.tooltipId, label: this.label, accessibleLabel: (this.accessibleInputLabel && `${this.accessibleInputLabel}, ${this.accessibleLabel}`) ||
213
+ (this.accessibleAboutLabel &&
214
+ `${this.accessibleLabel} ${this.aboutString[this.language]} ${this.accessibleAboutLabel}`) ||
215
+ this.accessibleLabel, onClick: this.toggleOpen, theme: this.theme }), h("div", { style: popupContainerStyles }, h("duet-tooltip-popup", { ref: element => (this.popupElement = element), active: this.active, tooltipId: this.tooltipId, arrowStyles: arrowStyles, style: positionStyles, placement: this.placement, accessibleCloseLabel: this.accessibleCloseLabel, theme: this.theme }, h("slot", null)))));
207
216
  }
208
217
  get element() { return getElement(this); }
209
218
  static get watchers() { return {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, F as Fragment, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, F as Fragment, g as getElement } from './index-909a963e.js';
5
5
  import { s as sizeHeader } from './tokens.module-7a2f9c49.js';
6
6
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
7
7
  import { c as createID } from './create-id-149a1b6d.js';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
 
6
6
  const DuetUploadAriaStatus = class {
7
7
  constructor(hostRef) {
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, g as getElement } from './index-909a963e.js';
5
5
  import { i as inheritGlobalTheme } from './themeable-component-724c0f7e.js';
6
6
  import { g as getLocaleString } from './language-utils-00ca4c55.js';
7
7
  import { a as getI18nError } from './errorcodes.utils-e681347c.js';
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host, g as getElement } from './index-6a5abb95.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-909a963e.js';
5
5
 
6
6
  const duetVisuallyHiddenCss = ":host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;border:0 !important}";
7
7