@duetds/components 9.19.0 → 9.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (776) hide show
  1. package/hydrate/index.js +237 -135
  2. package/lib/cjs/a11y-utils-13737afd.js +46 -0
  3. package/lib/cjs/{app-globals-a6c4e8f5.js → app-globals-dbb64a81.js} +1 -1
  4. package/lib/cjs/{common-strings-92c2f034.js → common-strings-ed188f52.js} +5 -4
  5. package/lib/cjs/duet-action-button.cjs.entry.js +5 -5
  6. package/lib/cjs/duet-alert.cjs.entry.js +15 -12
  7. package/lib/cjs/duet-badge.cjs.entry.js +5 -5
  8. package/lib/cjs/duet-banner.cjs.entry.js +6 -6
  9. package/lib/cjs/duet-breadcrumb.cjs.entry.js +2 -2
  10. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +5 -5
  11. package/lib/cjs/duet-button_2.cjs.entry.js +7 -7
  12. package/lib/cjs/duet-callout.cjs.entry.js +3 -3
  13. package/lib/cjs/duet-caption_4.cjs.entry.js +12 -12
  14. package/lib/cjs/duet-card.cjs.entry.js +5 -5
  15. package/lib/cjs/duet-checkbox.cjs.entry.js +3 -3
  16. package/lib/cjs/duet-checkmark.cjs.entry.js +2 -2
  17. package/lib/cjs/duet-chip.cjs.entry.js +4 -4
  18. package/lib/cjs/duet-choice_2.cjs.entry.js +9 -8
  19. package/lib/cjs/duet-collapsible.cjs.entry.js +15 -10
  20. package/lib/cjs/duet-combobox.cjs.entry.js +20 -15
  21. package/lib/cjs/duet-contact-card.cjs.entry.js +3 -3
  22. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-date-picker.cjs.entry.js +6 -6
  24. package/lib/cjs/duet-divider_2.cjs.entry.js +4 -4
  25. package/lib/cjs/duet-editable-table_3.cjs.entry.js +11 -8
  26. package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
  27. package/lib/cjs/duet-fieldset.cjs.entry.js +3 -3
  28. package/lib/cjs/duet-file-chooser.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-footer.cjs.entry.js +5 -5
  30. package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
  31. package/lib/cjs/duet-header_2.cjs.entry.js +8 -8
  32. package/lib/cjs/duet-hero.cjs.entry.js +18 -17
  33. package/lib/cjs/duet-icon.cjs.entry.js +4 -4
  34. package/lib/cjs/duet-indicator.cjs.entry.js +3 -3
  35. package/lib/cjs/duet-input_2.cjs.entry.js +32 -8
  36. package/lib/cjs/duet-layout.cjs.entry.js +2 -2
  37. package/lib/cjs/duet-list_2.cjs.entry.js +3 -3
  38. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +2 -2
  39. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +2 -2
  40. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +2 -2
  41. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +6 -6
  42. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +2 -2
  43. package/lib/cjs/duet-menu-bar.cjs.entry.js +3 -3
  44. package/lib/cjs/duet-modal.cjs.entry.js +8 -8
  45. package/lib/cjs/duet-multiselect.cjs.entry.js +5 -5
  46. package/lib/cjs/duet-nav.cjs.entry.js +2 -2
  47. package/lib/cjs/duet-notification_2.cjs.entry.js +4 -4
  48. package/lib/cjs/duet-number-input.cjs.entry.js +16 -12
  49. package/lib/cjs/duet-overlay.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-page-heading.cjs.entry.js +2 -2
  51. package/lib/cjs/duet-pagination_2.cjs.entry.js +5 -5
  52. package/lib/cjs/duet-panel.cjs.entry.js +5 -6
  53. package/lib/cjs/duet-phone-input.cjs.entry.js +7 -7
  54. package/lib/cjs/duet-popup-menu_2.cjs.entry.js +14 -16
  55. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-promo-card.cjs.entry.js +6 -6
  57. package/lib/cjs/duet-radio_2.cjs.entry.js +4 -4
  58. package/lib/cjs/duet-range-slider.cjs.entry.js +4 -4
  59. package/lib/cjs/duet-scrollable_3.cjs.entry.js +31 -12
  60. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  61. package/lib/cjs/duet-select.cjs.entry.js +5 -8
  62. package/lib/cjs/duet-shaped-image.cjs.entry.js +2 -2
  63. package/lib/cjs/duet-share-chart-item.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-share-chart.cjs.entry.js +6 -6
  65. package/lib/cjs/duet-show-more.cjs.entry.js +3 -3
  66. package/lib/cjs/duet-slideout-lang.cjs.entry.js +3 -3
  67. package/lib/cjs/duet-slideout-link.cjs.entry.js +6 -6
  68. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +2 -2
  69. package/lib/cjs/duet-slideout-panel.cjs.entry.js +7 -7
  70. package/lib/cjs/duet-slideout.cjs.entry.js +15 -15
  71. package/lib/cjs/duet-status-icon.cjs.entry.js +2 -2
  72. package/lib/cjs/duet-step_2.cjs.entry.js +4 -4
  73. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +2 -2
  74. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +3 -3
  75. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +6 -6
  76. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
  77. package/lib/cjs/duet-submenu-bar.cjs.entry.js +3 -3
  78. package/lib/cjs/duet-textarea.cjs.entry.js +48 -29
  79. package/lib/cjs/duet-toggle.cjs.entry.js +3 -3
  80. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +2 -2
  81. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +3 -3
  82. package/lib/cjs/duet-toolbar-item.cjs.entry.js +6 -6
  83. package/lib/cjs/duet-toolbar-link.cjs.entry.js +3 -3
  84. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  85. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +3 -3
  86. package/lib/cjs/duet-tooltip.cjs.entry.js +4 -4
  87. package/lib/cjs/duet-tray.cjs.entry.js +4 -4
  88. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  89. package/lib/cjs/duet-upload-item.cjs.entry.js +4 -4
  90. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  91. package/lib/cjs/duet.cjs.js +3 -3
  92. package/lib/cjs/{errorcodes.utils-7e221216.js → errorcodes.utils-081cbf12.js} +1 -1
  93. package/lib/cjs/{focus-utils-6d8d093e.js → focus-utils-30936141.js} +1 -1
  94. package/lib/cjs/{index-1044eab0.js → index-3e2cb13d.js} +1 -1
  95. package/lib/cjs/{language-utils-b3314f13.js → language-utils-577f9daf.js} +1 -1
  96. package/lib/cjs/loader.cjs.js +3 -3
  97. package/lib/cjs/{slot-utils-0ce4686e.js → slot-utils-1e7a8d85.js} +1 -1
  98. package/lib/cjs/{themeable-component-3f7d616d.js → themeable-component-32848c09.js} +1 -1
  99. package/lib/cjs/{token-utils-955dd258.js → token-utils-3cc1c517.js} +1 -1
  100. package/lib/cjs/{tokens-bdaa8818.js → tokens-62c31e5d.js} +3 -3
  101. package/lib/cjs/{tokens.module-2358195b.js → tokens.module-db9df617.js} +3 -3
  102. package/lib/collection/common-strings.js +5 -4
  103. package/lib/collection/components/duet-alert/duet-alert.css +15 -6
  104. package/lib/collection/components/duet-alert/duet-alert.js +9 -6
  105. package/lib/collection/components/duet-badge/duet-badge.css +1 -1
  106. package/lib/collection/components/duet-banner/duet-banner.css +2 -1
  107. package/lib/collection/components/duet-button/duet-button.css +11 -7
  108. package/lib/collection/components/duet-checkbox/duet-checkbox.css +1 -1
  109. package/lib/collection/components/duet-chip/duet-chip.css +1 -1
  110. package/lib/collection/components/duet-choice/duet-choice.css +66 -4
  111. package/lib/collection/components/duet-choice/duet-choice.js +13 -6
  112. package/lib/collection/components/duet-choice-group/duet-choice-group.js +1 -1
  113. package/lib/collection/components/duet-collapsible/duet-collapsible.css +1 -1
  114. package/lib/collection/components/duet-collapsible/duet-collapsible.js +12 -7
  115. package/lib/collection/components/duet-combobox/duet-combobox.js +17 -11
  116. package/lib/collection/components/duet-date-picker/duet-date-picker.css +1 -1
  117. package/lib/collection/components/duet-hero/duet-hero.js +13 -12
  118. package/lib/collection/components/duet-input/duet-input.css +1 -1
  119. package/lib/collection/components/duet-input/duet-input.js +78 -5
  120. package/lib/collection/components/duet-link/duet-link.css +27 -13
  121. package/lib/collection/components/duet-link/duet-link.js +3 -3
  122. package/lib/collection/components/duet-list-item/duet-list-item.css +6 -6
  123. package/lib/collection/components/duet-logo/duet-logo.css +1 -1
  124. package/lib/collection/components/duet-multiselect/duet-multiselect.css +1 -1
  125. package/lib/collection/components/duet-number-input/duet-number-input.css +1 -1
  126. package/lib/collection/components/duet-number-input/duet-number-input.js +19 -15
  127. package/lib/collection/components/duet-panel/duet-panel.css +3 -2
  128. package/lib/collection/components/duet-panel/duet-panel.js +2 -3
  129. package/lib/collection/components/duet-phone-input/duet-phone-input.css +1 -1
  130. package/lib/collection/components/duet-phone-input/duet-phone-input.js +3 -3
  131. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +20 -23
  132. package/lib/collection/components/duet-promo-card/duet-promo-card.css +1 -1
  133. package/lib/collection/components/duet-radio/duet-radio.css +2 -2
  134. package/lib/collection/components/duet-range-slider/duet-range-slider.css +1 -1
  135. package/lib/collection/components/duet-scrollable/duet-scrollable.js +87 -6
  136. package/lib/collection/components/duet-select/duet-select.css +1 -1
  137. package/lib/collection/components/duet-select/duet-select.js +1 -4
  138. package/lib/collection/components/duet-slideout/duet-slideout.js +12 -12
  139. package/lib/collection/components/duet-table/duet-table.js +3 -3
  140. package/lib/collection/components/duet-textarea/duet-textarea.css +4 -1
  141. package/lib/collection/components/duet-textarea/duet-textarea.js +75 -29
  142. package/lib/collection/components/duet-toggle/duet-toggle.css +1 -1
  143. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.css +6 -0
  144. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.css +18 -0
  145. package/lib/collection/utils/a11y-utils.js +20 -0
  146. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  147. package/lib/dist-custom-elements/duet-alert.js +1 -1
  148. package/lib/dist-custom-elements/duet-badge.js +1 -1
  149. package/lib/dist-custom-elements/duet-banner.js +5 -5
  150. package/lib/dist-custom-elements/duet-breadcrumb.js +3 -3
  151. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  152. package/lib/dist-custom-elements/duet-button.js +1 -1
  153. package/lib/dist-custom-elements/duet-callout.js +2 -2
  154. package/lib/dist-custom-elements/duet-caption.js +1 -1
  155. package/lib/dist-custom-elements/duet-card.js +4 -4
  156. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  157. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  158. package/lib/dist-custom-elements/duet-chip.js +1 -1
  159. package/lib/dist-custom-elements/duet-choice-group.js +9 -9
  160. package/lib/dist-custom-elements/duet-choice.js +9 -8
  161. package/lib/dist-custom-elements/duet-collapsible.js +17 -12
  162. package/lib/dist-custom-elements/duet-combobox.js +32 -26
  163. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  164. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  165. package/lib/dist-custom-elements/duet-date-picker.js +14 -14
  166. package/lib/dist-custom-elements/duet-divider.js +1 -1
  167. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  168. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  169. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  170. package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
  171. package/lib/dist-custom-elements/duet-footer.js +8 -8
  172. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  173. package/lib/dist-custom-elements/duet-grid.js +1 -1
  174. package/lib/dist-custom-elements/duet-header.js +11 -11
  175. package/lib/dist-custom-elements/duet-heading.js +1 -1
  176. package/lib/dist-custom-elements/duet-hero.js +23 -22
  177. package/lib/dist-custom-elements/duet-icon.js +1 -1
  178. package/lib/dist-custom-elements/duet-indicator.js +1 -1
  179. package/lib/dist-custom-elements/duet-input.js +1 -1
  180. package/lib/dist-custom-elements/duet-label.js +1 -1
  181. package/lib/dist-custom-elements/duet-layout.js +1 -1
  182. package/lib/dist-custom-elements/duet-link.js +1 -1
  183. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  184. package/lib/dist-custom-elements/duet-list.js +1 -1
  185. package/lib/dist-custom-elements/duet-logo.js +1 -1
  186. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  187. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  188. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  189. package/lib/dist-custom-elements/duet-menu-bar-item.js +4 -4
  190. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  191. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  192. package/lib/dist-custom-elements/duet-modal.js +10 -10
  193. package/lib/dist-custom-elements/duet-multiselect.js +10 -10
  194. package/lib/dist-custom-elements/duet-nav.js +1 -1
  195. package/lib/dist-custom-elements/duet-notification-drawer.js +6 -6
  196. package/lib/dist-custom-elements/duet-notification.js +3 -3
  197. package/lib/dist-custom-elements/duet-number-input.js +23 -19
  198. package/lib/dist-custom-elements/duet-overlay.js +1 -1
  199. package/lib/dist-custom-elements/duet-page-heading.js +3 -3
  200. package/lib/dist-custom-elements/duet-pagination.js +14 -14
  201. package/lib/dist-custom-elements/duet-panel.js +4 -5
  202. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  203. package/lib/dist-custom-elements/duet-phone-input.js +20 -20
  204. package/lib/dist-custom-elements/duet-popup-menu-item.js +1 -1
  205. package/lib/dist-custom-elements/duet-popup-menu.js +1 -1
  206. package/lib/dist-custom-elements/duet-progress.js +1 -1
  207. package/lib/dist-custom-elements/duet-promo-card.js +5 -5
  208. package/lib/dist-custom-elements/duet-radio-group.js +8 -8
  209. package/lib/dist-custom-elements/duet-radio.js +2 -2
  210. package/lib/dist-custom-elements/duet-range-slider.js +4 -4
  211. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  212. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  213. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  214. package/lib/dist-custom-elements/duet-select.js +1 -1
  215. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  216. package/lib/dist-custom-elements/duet-share-chart-item.js +1 -1
  217. package/lib/dist-custom-elements/duet-share-chart.js +3 -3
  218. package/lib/dist-custom-elements/duet-show-more.js +1 -1
  219. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  220. package/lib/dist-custom-elements/duet-slideout-link.js +4 -4
  221. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  222. package/lib/dist-custom-elements/duet-slideout-panel.js +5 -5
  223. package/lib/dist-custom-elements/duet-slideout.js +12 -12
  224. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  225. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  226. package/lib/dist-custom-elements/duet-status-icon.js +1 -1
  227. package/lib/dist-custom-elements/duet-step.js +4 -4
  228. package/lib/dist-custom-elements/duet-stepper.js +3 -3
  229. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  230. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +3 -3
  231. package/lib/dist-custom-elements/duet-submenu-bar-item.js +4 -4
  232. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  233. package/lib/dist-custom-elements/duet-submenu-bar.js +4 -4
  234. package/lib/dist-custom-elements/duet-tab-group.js +8 -8
  235. package/lib/dist-custom-elements/duet-tab.js +2 -2
  236. package/lib/dist-custom-elements/duet-table.js +1 -1
  237. package/lib/dist-custom-elements/duet-textarea.js +59 -36
  238. package/lib/dist-custom-elements/duet-toggle.js +3 -3
  239. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  240. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +3 -3
  241. package/lib/dist-custom-elements/duet-toolbar-item.js +6 -6
  242. package/lib/dist-custom-elements/duet-toolbar-link.js +3 -3
  243. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  244. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  245. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  246. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  247. package/lib/dist-custom-elements/duet-tray.js +4 -4
  248. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  249. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  250. package/lib/dist-custom-elements/duet-upload.js +20 -20
  251. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  252. package/lib/dist-custom-elements/index.js +1 -1
  253. package/lib/dist-custom-elements/{p-6b642a0f.js → p-04819623.js} +2 -2
  254. package/lib/dist-custom-elements/{p-822a3658.js → p-05128e11.js} +18 -15
  255. package/lib/dist-custom-elements/{p-e3318f50.js → p-06deb63a.js} +3 -3
  256. package/lib/dist-custom-elements/{p-36daddcc.js → p-0af6662f.js} +10 -13
  257. package/lib/dist-custom-elements/p-0d607aa5.js +43 -0
  258. package/lib/dist-custom-elements/{p-ed52e0d3.js → p-0dca88bc.js} +2 -2
  259. package/lib/dist-custom-elements/{p-0b65a85b.js → p-13d994c2.js} +40 -13
  260. package/lib/dist-custom-elements/{p-f407268e.js → p-1a349415.js} +5 -5
  261. package/lib/dist-custom-elements/{p-caaa84e9.js → p-20af19f0.js} +2 -2
  262. package/lib/dist-custom-elements/{p-b7a93f1c.js → p-2fc2a0b6.js} +5 -4
  263. package/lib/dist-custom-elements/{p-67617261.js → p-32b35eb2.js} +4 -4
  264. package/lib/dist-custom-elements/{p-a5acdbd1.js → p-3b89d7ab.js} +8 -5
  265. package/lib/dist-custom-elements/{p-27b0790d.js → p-46206871.js} +1 -1
  266. package/lib/dist-custom-elements/{p-738df69f.js → p-509dca55.js} +1 -1
  267. package/lib/dist-custom-elements/{p-71176ae5.js → p-515dedd9.js} +2 -2
  268. package/lib/dist-custom-elements/{p-59668efb.js → p-575b998e.js} +2 -2
  269. package/lib/dist-custom-elements/{p-1f32b9fd.js → p-5957bf62.js} +3 -3
  270. package/lib/dist-custom-elements/{p-370b0653.js → p-5a5372db.js} +1 -1
  271. package/lib/dist-custom-elements/{p-6ca748e5.js → p-659b46dc.js} +2 -2
  272. package/lib/dist-custom-elements/{p-bebe4e35.js → p-6d3db687.js} +1 -1
  273. package/lib/dist-custom-elements/{p-b3c2ecbc.js → p-721934fb.js} +2 -2
  274. package/lib/dist-custom-elements/{p-c972a96e.js → p-7ac368f3.js} +3 -3
  275. package/lib/dist-custom-elements/{p-de31461b.js → p-7f5a8d4f.js} +10 -10
  276. package/lib/dist-custom-elements/p-7fae118b.js +318 -0
  277. package/lib/dist-custom-elements/{p-586d4e77.js → p-856877ce.js} +1 -1
  278. package/lib/dist-custom-elements/{p-c224f527.js → p-856c21c2.js} +1 -1
  279. package/lib/dist-custom-elements/{p-c936343b.js → p-87838af5.js} +3 -3
  280. package/lib/dist-custom-elements/{p-388d3f27.js → p-92614803.js} +2 -2
  281. package/lib/dist-custom-elements/{p-e14bb6cb.js → p-94bcb496.js} +2 -2
  282. package/lib/dist-custom-elements/{p-0c92061d.js → p-9c152299.js} +2 -2
  283. package/lib/dist-custom-elements/{p-58dd40d8.js → p-9cc4be6b.js} +1 -1
  284. package/lib/dist-custom-elements/{p-0ba28ed9.js → p-9ff3d312.js} +4 -4
  285. package/lib/dist-custom-elements/{p-6e61da36.js → p-a2165a78.js} +2 -2
  286. package/lib/dist-custom-elements/p-a9d05a66.js +58 -0
  287. package/lib/dist-custom-elements/{p-a10e2105.js → p-af66a878.js} +2 -2
  288. package/lib/dist-custom-elements/{p-6bde0f88.js → p-b1dab6b7.js} +1 -1
  289. package/lib/dist-custom-elements/{p-4e7c6547.js → p-b5757906.js} +3 -3
  290. package/lib/dist-custom-elements/{p-d62457b3.js → p-b9dfe8fb.js} +2 -2
  291. package/lib/dist-custom-elements/{p-6611bb3c.js → p-c00e6485.js} +34 -12
  292. package/lib/dist-custom-elements/{p-da422056.js → p-c9b0406e.js} +2 -2
  293. package/lib/dist-custom-elements/{p-318f7157.js → p-cd6aad6d.js} +9 -9
  294. package/lib/dist-custom-elements/{p-9ee646c7.js → p-d2461d13.js} +1 -1
  295. package/lib/dist-custom-elements/{p-4d81562b.js → p-e8f9e11c.js} +6 -6
  296. package/lib/dist-custom-elements/{p-73cfbf89.js → p-f6889d60.js} +3 -3
  297. package/lib/dist-custom-elements/{p-bc5d9435.js → p-fc39349f.js} +21 -24
  298. package/lib/dist-custom-elements/{p-6cc7b04f.js → p-ffd3c3bf.js} +1 -1
  299. package/lib/duet/duet.esm.js +1 -1
  300. package/lib/duet/duet.js +1 -1
  301. package/lib/duet/{p-801de8a1.js → p-0117fffd.js} +1 -1
  302. package/lib/duet/p-0196e419.system.entry.js +4 -0
  303. package/lib/duet/{p-fe1ac373.entry.js → p-01bfa80a.entry.js} +1 -1
  304. package/lib/duet/{p-20da5e5e.entry.js → p-01c4784d.entry.js} +1 -1
  305. package/lib/duet/{p-62065bae.entry.js → p-021aad93.entry.js} +1 -1
  306. package/lib/duet/{p-568074aa.system.entry.js → p-02b0b46e.system.entry.js} +1 -1
  307. package/lib/duet/{p-f1cd0117.entry.js → p-08a6fe81.entry.js} +1 -1
  308. package/lib/duet/p-08bafedd.entry.js +4 -0
  309. package/lib/duet/{p-5173ee52.system.entry.js → p-0a04f223.system.entry.js} +1 -1
  310. package/lib/duet/{p-d9a48ce2.system.entry.js → p-0a55a31e.system.entry.js} +1 -1
  311. package/lib/duet/{p-42fc2f19.entry.js → p-0a5bad04.entry.js} +1 -1
  312. package/lib/duet/{p-0353b07b.entry.js → p-0b393b45.entry.js} +1 -1
  313. package/lib/duet/{p-5b3f7cac.system.entry.js → p-0b4d95a3.system.entry.js} +1 -1
  314. package/lib/duet/{p-4f10a6a2.entry.js → p-0d93d5d6.entry.js} +1 -1
  315. package/lib/duet/{p-975a3215.system.entry.js → p-0dd9cb8f.system.entry.js} +1 -1
  316. package/lib/duet/{p-f051365a.system.entry.js → p-0ea89bc3.system.entry.js} +1 -1
  317. package/lib/duet/{p-f67270bc.entry.js → p-108a8449.entry.js} +1 -1
  318. package/lib/duet/{p-14ac8312.entry.js → p-11484af4.entry.js} +1 -1
  319. package/lib/duet/{p-cbe272ff.system.entry.js → p-1188bd88.system.entry.js} +1 -1
  320. package/lib/duet/p-1255ca3c.entry.js +4 -0
  321. package/lib/duet/{p-96c0a423.system.entry.js → p-147036df.system.entry.js} +2 -2
  322. package/lib/duet/p-1640e9ef.system.entry.js +4 -0
  323. package/lib/duet/p-171fef9f.entry.js +4 -0
  324. package/lib/duet/{p-22b9e7b9.system.js → p-17b4723d.system.js} +1 -1
  325. package/lib/duet/{p-6b3b79fe.system.entry.js → p-1c7c636b.system.entry.js} +1 -1
  326. package/lib/duet/{p-343ed54b.system.entry.js → p-1ca77377.system.entry.js} +1 -1
  327. package/lib/duet/{p-da0d4e53.system.entry.js → p-1e748fe7.system.entry.js} +1 -1
  328. package/lib/duet/{p-a8e575f2.entry.js → p-1fc499eb.entry.js} +1 -1
  329. package/lib/duet/{p-22a0d711.entry.js → p-2072e2e3.entry.js} +1 -1
  330. package/lib/duet/p-218f197d.entry.js +4 -0
  331. package/lib/duet/{p-654d2c52.entry.js → p-295d819b.entry.js} +1 -1
  332. package/lib/duet/{p-3c009b49.entry.js → p-29620cb8.entry.js} +1 -1
  333. package/lib/duet/{p-e6f0be75.entry.js → p-2bbce6ff.entry.js} +1 -1
  334. package/lib/duet/{p-5e747ef8.system.entry.js → p-2d09e690.system.entry.js} +1 -1
  335. package/lib/duet/p-2dad2417.system.entry.js +4 -0
  336. package/lib/duet/{p-b8789b13.system.entry.js → p-2ed33090.system.entry.js} +1 -1
  337. package/lib/duet/{p-c311a973.entry.js → p-2f4670b2.entry.js} +1 -1
  338. package/lib/duet/p-2f938e05.js +4 -0
  339. package/lib/duet/{p-d838a9ab.system.entry.js → p-32672a70.system.entry.js} +1 -1
  340. package/lib/duet/{p-ef3c6cfe.system.entry.js → p-32c11792.system.entry.js} +1 -1
  341. package/lib/duet/{p-04608f57.system.entry.js → p-34679792.system.entry.js} +1 -1
  342. package/lib/duet/p-3639064f.entry.js +4 -0
  343. package/lib/duet/{p-30528008.system.entry.js → p-364bf8a5.system.entry.js} +1 -1
  344. package/lib/duet/p-3682e272.entry.js +4 -0
  345. package/lib/duet/{p-3164c809.system.entry.js → p-3707f843.system.entry.js} +1 -1
  346. package/lib/duet/{p-e4695812.entry.js → p-37558e94.entry.js} +1 -1
  347. package/lib/duet/p-37a2bf8f.system.entry.js +4 -0
  348. package/lib/duet/p-38209530.system.entry.js +4 -0
  349. package/lib/duet/{p-d0799d89.entry.js → p-3aa1dda7.entry.js} +1 -1
  350. package/lib/duet/{p-f0a6103e.js → p-3aa7b734.js} +1 -1
  351. package/lib/duet/p-3ae93bdc.entry.js +4 -0
  352. package/lib/duet/{p-0834979e.entry.js → p-3e04b125.entry.js} +1 -1
  353. package/lib/duet/{p-31dc3df9.entry.js → p-3f51641e.entry.js} +1 -1
  354. package/lib/duet/p-430e0441.entry.js +4 -0
  355. package/lib/duet/p-442b1388.system.entry.js +4 -0
  356. package/lib/duet/p-453db857.system.js +4 -0
  357. package/lib/duet/{p-f8a583d7.system.entry.js → p-47ae2ce5.system.entry.js} +1 -1
  358. package/lib/duet/{p-94421fff.entry.js → p-488d5317.entry.js} +1 -1
  359. package/lib/duet/p-4b688090.js +4 -0
  360. package/lib/duet/{p-8e150d9e.entry.js → p-4c3e8006.entry.js} +1 -1
  361. package/lib/duet/p-4cfffc05.system.js +4 -0
  362. package/lib/duet/{p-370d2601.system.entry.js → p-4d3b8094.system.entry.js} +1 -1
  363. package/lib/duet/p-4d584eba.entry.js +4 -0
  364. package/lib/duet/{p-fa878282.entry.js → p-5075f682.entry.js} +1 -1
  365. package/lib/duet/{p-cd94ea4d.entry.js → p-528f9e22.entry.js} +1 -1
  366. package/lib/duet/{p-0dda51a5.system.entry.js → p-5298d270.system.entry.js} +1 -1
  367. package/lib/duet/{p-9fe69b29.js → p-56def387.js} +1 -1
  368. package/lib/duet/p-57e55fe5.system.entry.js +4 -0
  369. package/lib/duet/{p-2a2a7f85.js → p-59cee476.js} +1 -1
  370. package/lib/duet/{p-d51bbbc5.entry.js → p-5b094a81.entry.js} +1 -1
  371. package/lib/duet/{p-52ea64b7.entry.js → p-5b7b0c49.entry.js} +1 -1
  372. package/lib/duet/{p-5bdebddc.system.entry.js → p-5d078192.system.entry.js} +1 -1
  373. package/lib/duet/p-620790ec.entry.js +4 -0
  374. package/lib/duet/{p-3b2e4c1d.js → p-6251429e.js} +1 -1
  375. package/lib/duet/{p-8f38dd1f.entry.js → p-62d45619.entry.js} +1 -1
  376. package/lib/duet/{p-087cfec4.system.entry.js → p-646fb027.system.entry.js} +1 -1
  377. package/lib/duet/p-64714348.system.entry.js +4 -0
  378. package/lib/duet/{p-454d2e52.entry.js → p-67150100.entry.js} +1 -1
  379. package/lib/duet/{p-1f5071fd.system.js → p-6746f86c.system.js} +1 -1
  380. package/lib/duet/{p-0932bf00.system.entry.js → p-68b94462.system.entry.js} +1 -1
  381. package/lib/duet/{p-3fbd1e41.entry.js → p-693c2594.entry.js} +1 -1
  382. package/lib/duet/{p-e42f6025.system.entry.js → p-69a0ce45.system.entry.js} +1 -1
  383. package/lib/duet/{p-0eff2032.system.entry.js → p-6f677d93.system.entry.js} +1 -1
  384. package/lib/duet/{p-5f1353eb.system.entry.js → p-6fe0a923.system.entry.js} +1 -1
  385. package/lib/duet/{p-1a8ef4df.system.entry.js → p-7013d95e.system.entry.js} +1 -1
  386. package/lib/duet/{p-e4819f63.entry.js → p-71be2ee6.entry.js} +1 -1
  387. package/lib/duet/{p-083738b6.system.js → p-7231eb9d.system.js} +1 -1
  388. package/lib/duet/{p-614797cd.system.entry.js → p-742e23f2.system.entry.js} +1 -1
  389. package/lib/duet/p-743372d1.system.entry.js +4 -0
  390. package/lib/duet/{p-6ec70ae7.system.entry.js → p-74a10d90.system.entry.js} +1 -1
  391. package/lib/duet/{p-4af8fdc9.entry.js → p-765ce7e2.entry.js} +1 -1
  392. package/lib/duet/{p-67acb8a1.entry.js → p-76f86b9a.entry.js} +1 -1
  393. package/lib/duet/{p-1122796e.entry.js → p-77b52060.entry.js} +1 -1
  394. package/lib/duet/{p-074c91c7.entry.js → p-7948f709.entry.js} +1 -1
  395. package/lib/duet/p-7ac368f3.js +4 -0
  396. package/lib/duet/{p-31492c23.system.entry.js → p-7d56359b.system.entry.js} +1 -1
  397. package/lib/duet/p-81dc0c8c.system.js +4 -0
  398. package/lib/duet/{p-87633fff.system.js → p-83cfc05d.system.js} +1 -1
  399. package/lib/duet/{p-7a9b2555.system.entry.js → p-850c54b0.system.entry.js} +1 -1
  400. package/lib/duet/p-88c60955.entry.js +4 -0
  401. package/lib/duet/p-8a10a26e.entry.js +4 -0
  402. package/lib/duet/{p-9718c106.js → p-8b34b6a1.js} +1 -1
  403. package/lib/duet/{p-544af526.entry.js → p-8cb64ea1.entry.js} +1 -1
  404. package/lib/duet/{p-1853a8d1.system.entry.js → p-8ccbbbc7.system.entry.js} +1 -1
  405. package/lib/duet/{p-a081ba40.system.entry.js → p-8d28efb9.system.entry.js} +1 -1
  406. package/lib/duet/{p-f8ca9352.entry.js → p-8e21ea72.entry.js} +1 -1
  407. package/lib/duet/{p-9f79df76.system.entry.js → p-8e6085d1.system.entry.js} +1 -1
  408. package/lib/duet/{p-ab5a725f.system.entry.js → p-8f7fcfb5.system.entry.js} +1 -1
  409. package/lib/duet/p-8fe2a9bf.entry.js +4 -0
  410. package/lib/duet/p-8fe65a80.system.entry.js +4 -0
  411. package/lib/duet/{p-3f85b6e1.system.entry.js → p-90157004.system.entry.js} +1 -1
  412. package/lib/duet/p-90fcd0a4.system.entry.js +4 -0
  413. package/lib/duet/{p-522ea2bc.system.entry.js → p-9220dbb1.system.entry.js} +1 -1
  414. package/lib/duet/{p-912d1e35.entry.js → p-9277533c.entry.js} +1 -1
  415. package/lib/duet/{p-b259aa2e.entry.js → p-94341565.entry.js} +1 -1
  416. package/lib/duet/{p-f744061c.system.entry.js → p-9453fcb3.system.entry.js} +1 -1
  417. package/lib/duet/{p-10190357.entry.js → p-97d956fb.entry.js} +1 -1
  418. package/lib/duet/{p-a723ed36.entry.js → p-9bfd9d0e.entry.js} +1 -1
  419. package/lib/duet/p-9f3b0efe.entry.js +4 -0
  420. package/lib/duet/{p-396f0210.system.entry.js → p-9f6855fa.system.entry.js} +1 -1
  421. package/lib/duet/{p-9309d30f.system.entry.js → p-a2173e10.system.entry.js} +2 -2
  422. package/lib/duet/p-a44268b2.system.entry.js +4 -0
  423. package/lib/duet/{p-8fe4c3f3.entry.js → p-a579ae4d.entry.js} +1 -1
  424. package/lib/duet/{p-9d6c1403.system.js → p-a71f0bcb.system.js} +1 -1
  425. package/lib/duet/{p-f428124a.entry.js → p-a744d677.entry.js} +1 -1
  426. package/lib/duet/{p-de665458.entry.js → p-a9d0200d.entry.js} +1 -1
  427. package/lib/duet/p-ab79bc5b.system.entry.js +4 -0
  428. package/lib/duet/{p-a44bb8ed.system.entry.js → p-ae03cb6d.system.entry.js} +1 -1
  429. package/lib/duet/{p-ae0f818b.entry.js → p-ae220bba.entry.js} +1 -1
  430. package/lib/duet/p-af9c927e.system.entry.js +4 -0
  431. package/lib/duet/p-b0af0dbc.js +4 -0
  432. package/lib/duet/{p-d647ee04.system.entry.js → p-b0b59b81.system.entry.js} +1 -1
  433. package/lib/duet/p-b1e60f97.system.js +4 -0
  434. package/lib/duet/p-b52a7760.entry.js +4 -0
  435. package/lib/duet/p-b9aec534.js +4 -0
  436. package/lib/duet/{p-0db56130.system.js → p-bb332c66.system.js} +1 -1
  437. package/lib/duet/{p-47853cbb.entry.js → p-bb8ae835.entry.js} +1 -1
  438. package/lib/duet/{p-d40c555f.system.entry.js → p-bd56c1a2.system.entry.js} +1 -1
  439. package/lib/duet/p-c2040676.entry.js +4 -0
  440. package/lib/duet/p-c33b42c3.entry.js +4 -0
  441. package/lib/duet/p-c38c24d6.entry.js +4 -0
  442. package/lib/duet/{p-6a74bdc7.entry.js → p-c3c20651.entry.js} +1 -1
  443. package/lib/duet/{p-33c2b5bc.system.entry.js → p-c3dc699e.system.entry.js} +1 -1
  444. package/lib/duet/p-c4b5fabf.system.entry.js +4 -0
  445. package/lib/duet/p-c5415db0.system.entry.js +4 -0
  446. package/lib/duet/{p-696e260a.system.entry.js → p-c6e2ee1a.system.entry.js} +1 -1
  447. package/lib/duet/{p-8f63f345.entry.js → p-c754edc5.entry.js} +1 -1
  448. package/lib/duet/{p-e59c5a32.system.js → p-c801dc04.system.js} +1 -1
  449. package/lib/duet/{p-e7ee0ec6.entry.js → p-c842f2d4.entry.js} +1 -1
  450. package/lib/duet/{p-dbe544da.system.entry.js → p-c908691b.system.entry.js} +1 -1
  451. package/lib/duet/{p-3ebd766d.entry.js → p-c9d80470.entry.js} +1 -1
  452. package/lib/duet/{p-df475aba.entry.js → p-cb31529a.entry.js} +1 -1
  453. package/lib/duet/p-cb9b90ca.system.entry.js +4 -0
  454. package/lib/duet/{p-9b7e8ab5.system.entry.js → p-cd2b9ea5.system.entry.js} +1 -1
  455. package/lib/duet/{p-78fd95ce.system.entry.js → p-cda010aa.system.entry.js} +1 -1
  456. package/lib/duet/{p-dc52f8b3.entry.js → p-ce1092fb.entry.js} +1 -1
  457. package/lib/duet/{p-567e98c3.system.entry.js → p-ceb72dbf.system.entry.js} +1 -1
  458. package/lib/duet/p-cec33ac2.entry.js +4 -0
  459. package/lib/duet/{p-db94518e.entry.js → p-ceef0aa6.entry.js} +1 -1
  460. package/lib/duet/p-cf597b70.js +4 -0
  461. package/lib/duet/{p-73c92818.system.entry.js → p-cf7c7b31.system.entry.js} +2 -2
  462. package/lib/duet/{p-ebb705ea.entry.js → p-d049d71c.entry.js} +1 -1
  463. package/lib/duet/{p-c45a6eb5.entry.js → p-d1b57119.entry.js} +1 -1
  464. package/lib/duet/{p-74a07533.system.entry.js → p-d2bbf06d.system.entry.js} +1 -1
  465. package/lib/duet/{p-27e23edc.system.entry.js → p-d402bc88.system.entry.js} +1 -1
  466. package/lib/duet/p-d8c928d7.system.entry.js +4 -0
  467. package/lib/duet/p-da78c7c2.system.entry.js +4 -0
  468. package/lib/duet/{p-ff1d5ca4.system.entry.js → p-db051207.system.entry.js} +1 -1
  469. package/lib/duet/{p-c6b3efe7.system.entry.js → p-dbd06bd8.system.entry.js} +1 -1
  470. package/lib/duet/p-dcfc4c0f.system.entry.js +4 -0
  471. package/lib/duet/{p-ba9b82ac.entry.js → p-deb9517b.entry.js} +1 -1
  472. package/lib/duet/{p-7a2bb47e.system.entry.js → p-df506bc2.system.entry.js} +1 -1
  473. package/lib/duet/{p-5a366583.entry.js → p-e06917a1.entry.js} +1 -1
  474. package/lib/duet/p-e124a98d.system.entry.js +4 -0
  475. package/lib/duet/{p-0738c052.system.entry.js → p-e32bf9f7.system.entry.js} +1 -1
  476. package/lib/duet/{p-d5fca58a.entry.js → p-e57b46d9.entry.js} +1 -1
  477. package/lib/duet/{p-b2121bec.entry.js → p-e5e9d602.entry.js} +1 -1
  478. package/lib/duet/p-e68bc090.system.entry.js +4 -0
  479. package/lib/duet/p-e6ea7449.entry.js +4 -0
  480. package/lib/duet/p-ed178fc9.system.entry.js +4 -0
  481. package/lib/duet/{p-5d338cf8.entry.js → p-ed7e4450.entry.js} +1 -1
  482. package/lib/duet/{p-858e5593.entry.js → p-edb2b160.entry.js} +1 -1
  483. package/lib/duet/{p-3a134c72.entry.js → p-ef15807a.entry.js} +1 -1
  484. package/lib/duet/{p-f8a8bf99.system.entry.js → p-f0ae8c0f.system.entry.js} +2 -2
  485. package/lib/duet/p-f3098989.entry.js +4 -0
  486. package/lib/duet/p-f37dae2f.system.entry.js +4 -0
  487. package/lib/duet/{p-8e1def15.system.js → p-f392387c.system.js} +1 -1
  488. package/lib/duet/{p-fc8f1bed.system.entry.js → p-f3f34fe0.system.entry.js} +1 -1
  489. package/lib/duet/p-f4939b4a.system.entry.js +4 -0
  490. package/lib/duet/{p-b786f573.entry.js → p-f49c6050.entry.js} +1 -1
  491. package/lib/duet/{p-43bbba35.system.js → p-f6e20b20.system.js} +1 -1
  492. package/lib/duet/p-f8bfbd2d.entry.js +4 -0
  493. package/lib/duet/p-f8c7cc95.entry.js +4 -0
  494. package/lib/duet/{p-94f50cf0.system.entry.js → p-fa06e91a.system.entry.js} +1 -1
  495. package/lib/duet/{p-ff5f3e09.system.entry.js → p-fe0a02b8.system.entry.js} +1 -1
  496. package/lib/duet/{p-3c312b08.entry.js → p-fe5a2b41.entry.js} +1 -1
  497. package/lib/duet/{p-457b0314.entry.js → p-fedc902d.entry.js} +1 -1
  498. package/lib/esm/a11y-utils-04e1285d.js +43 -0
  499. package/lib/esm/{app-globals-143619f5.js → app-globals-1de03b2e.js} +1 -1
  500. package/lib/esm/{common-strings-1274857d.js → common-strings-5f78fe4e.js} +5 -4
  501. package/lib/esm/duet-action-button.entry.js +5 -5
  502. package/lib/esm/duet-alert.entry.js +15 -12
  503. package/lib/esm/duet-badge.entry.js +5 -5
  504. package/lib/esm/duet-banner.entry.js +6 -6
  505. package/lib/esm/duet-breadcrumb.entry.js +2 -2
  506. package/lib/esm/duet-breadcrumbs.entry.js +5 -5
  507. package/lib/esm/duet-button_2.entry.js +7 -7
  508. package/lib/esm/duet-callout.entry.js +3 -3
  509. package/lib/esm/duet-caption_4.entry.js +12 -12
  510. package/lib/esm/duet-card.entry.js +5 -5
  511. package/lib/esm/duet-checkbox.entry.js +3 -3
  512. package/lib/esm/duet-checkmark.entry.js +2 -2
  513. package/lib/esm/duet-chip.entry.js +4 -4
  514. package/lib/esm/duet-choice_2.entry.js +9 -8
  515. package/lib/esm/duet-collapsible.entry.js +15 -10
  516. package/lib/esm/duet-combobox.entry.js +20 -15
  517. package/lib/esm/duet-contact-card.entry.js +3 -3
  518. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  519. package/lib/esm/duet-date-picker.entry.js +6 -6
  520. package/lib/esm/duet-divider_2.entry.js +4 -4
  521. package/lib/esm/duet-editable-table_3.entry.js +11 -8
  522. package/lib/esm/duet-empty-state.entry.js +2 -2
  523. package/lib/esm/duet-fieldset.entry.js +3 -3
  524. package/lib/esm/duet-file-chooser.entry.js +2 -2
  525. package/lib/esm/duet-footer.entry.js +5 -5
  526. package/lib/esm/duet-grid_2.entry.js +2 -2
  527. package/lib/esm/duet-header_2.entry.js +8 -8
  528. package/lib/esm/duet-hero.entry.js +18 -17
  529. package/lib/esm/duet-icon.entry.js +4 -4
  530. package/lib/esm/duet-indicator.entry.js +3 -3
  531. package/lib/esm/duet-input_2.entry.js +32 -8
  532. package/lib/esm/duet-layout.entry.js +2 -2
  533. package/lib/esm/duet-list_2.entry.js +3 -3
  534. package/lib/esm/duet-menu-bar-button.entry.js +2 -2
  535. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +2 -2
  536. package/lib/esm/duet-menu-bar-dropdown.entry.js +2 -2
  537. package/lib/esm/duet-menu-bar-item.entry.js +6 -6
  538. package/lib/esm/duet-menu-bar-link.entry.js +2 -2
  539. package/lib/esm/duet-menu-bar.entry.js +3 -3
  540. package/lib/esm/duet-modal.entry.js +8 -8
  541. package/lib/esm/duet-multiselect.entry.js +5 -5
  542. package/lib/esm/duet-nav.entry.js +2 -2
  543. package/lib/esm/duet-notification_2.entry.js +4 -4
  544. package/lib/esm/duet-number-input.entry.js +16 -12
  545. package/lib/esm/duet-overlay.entry.js +2 -2
  546. package/lib/esm/duet-page-heading.entry.js +2 -2
  547. package/lib/esm/duet-pagination_2.entry.js +5 -5
  548. package/lib/esm/duet-panel.entry.js +5 -6
  549. package/lib/esm/duet-phone-input.entry.js +7 -7
  550. package/lib/esm/duet-popup-menu_2.entry.js +14 -16
  551. package/lib/esm/duet-progress.entry.js +3 -3
  552. package/lib/esm/duet-promo-card.entry.js +6 -6
  553. package/lib/esm/duet-radio_2.entry.js +4 -4
  554. package/lib/esm/duet-range-slider.entry.js +4 -4
  555. package/lib/esm/duet-scrollable_3.entry.js +31 -12
  556. package/lib/esm/duet-section-layout.entry.js +1 -1
  557. package/lib/esm/duet-select.entry.js +5 -8
  558. package/lib/esm/duet-shaped-image.entry.js +2 -2
  559. package/lib/esm/duet-share-chart-item.entry.js +1 -1
  560. package/lib/esm/duet-share-chart.entry.js +6 -6
  561. package/lib/esm/duet-show-more.entry.js +3 -3
  562. package/lib/esm/duet-slideout-lang.entry.js +3 -3
  563. package/lib/esm/duet-slideout-link.entry.js +6 -6
  564. package/lib/esm/duet-slideout-panel-dropdown.entry.js +2 -2
  565. package/lib/esm/duet-slideout-panel.entry.js +7 -7
  566. package/lib/esm/duet-slideout.entry.js +15 -15
  567. package/lib/esm/duet-status-icon.entry.js +2 -2
  568. package/lib/esm/duet-step_2.entry.js +4 -4
  569. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +2 -2
  570. package/lib/esm/duet-submenu-bar-dropdown.entry.js +3 -3
  571. package/lib/esm/duet-submenu-bar-item.entry.js +6 -6
  572. package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
  573. package/lib/esm/duet-submenu-bar.entry.js +3 -3
  574. package/lib/esm/duet-textarea.entry.js +48 -29
  575. package/lib/esm/duet-toggle.entry.js +3 -3
  576. package/lib/esm/duet-toolbar-dropdown-link.entry.js +2 -2
  577. package/lib/esm/duet-toolbar-dropdown.entry.js +3 -3
  578. package/lib/esm/duet-toolbar-item.entry.js +6 -6
  579. package/lib/esm/duet-toolbar-link.entry.js +3 -3
  580. package/lib/esm/duet-toolbar.entry.js +2 -2
  581. package/lib/esm/duet-tooltip-button_2.entry.js +3 -3
  582. package/lib/esm/duet-tooltip.entry.js +4 -4
  583. package/lib/esm/duet-tray.entry.js +4 -4
  584. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  585. package/lib/esm/duet-upload-item.entry.js +4 -4
  586. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  587. package/lib/esm/duet.js +4 -4
  588. package/lib/esm/{errorcodes.utils-1e9af184.js → errorcodes.utils-e3c3fbe7.js} +1 -1
  589. package/lib/esm/{focus-utils-d80e0fff.js → focus-utils-8dcbe898.js} +1 -1
  590. package/lib/esm/{index-8edff080.js → index-e0645409.js} +1 -1
  591. package/lib/esm/{language-utils-da0a98a7.js → language-utils-5c6108e9.js} +1 -1
  592. package/lib/esm/loader.js +4 -4
  593. package/lib/esm/{slot-utils-86873bd2.js → slot-utils-0bb6f129.js} +1 -1
  594. package/lib/esm/{themeable-component-19d01405.js → themeable-component-f1c77a5d.js} +1 -1
  595. package/lib/esm/{token-utils-d02c20ff.js → token-utils-0d5e28a7.js} +1 -1
  596. package/lib/esm/{tokens-1fd83076.js → tokens-1702323a.js} +3 -3
  597. package/lib/esm/{tokens.module-7b07911f.js → tokens.module-7ae22e26.js} +3 -3
  598. package/lib/esm-es5/a11y-utils-04e1285d.js +4 -0
  599. package/lib/esm-es5/{app-globals-143619f5.js → app-globals-1de03b2e.js} +1 -1
  600. package/lib/esm-es5/{common-strings-1274857d.js → common-strings-5f78fe4e.js} +1 -1
  601. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  602. package/lib/esm-es5/duet-alert.entry.js +2 -2
  603. package/lib/esm-es5/duet-badge.entry.js +1 -1
  604. package/lib/esm-es5/duet-banner.entry.js +1 -1
  605. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  606. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  607. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  608. package/lib/esm-es5/duet-callout.entry.js +1 -1
  609. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  610. package/lib/esm-es5/duet-card.entry.js +1 -1
  611. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  612. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  613. package/lib/esm-es5/duet-chip.entry.js +1 -1
  614. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  615. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  616. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  617. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  618. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  619. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  620. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  621. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  622. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  623. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  624. package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
  625. package/lib/esm-es5/duet-footer.entry.js +1 -1
  626. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  627. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  628. package/lib/esm-es5/duet-hero.entry.js +1 -1
  629. package/lib/esm-es5/duet-icon.entry.js +1 -1
  630. package/lib/esm-es5/duet-indicator.entry.js +1 -1
  631. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  632. package/lib/esm-es5/duet-layout.entry.js +1 -1
  633. package/lib/esm-es5/duet-list_2.entry.js +2 -2
  634. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  635. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  636. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  637. package/lib/esm-es5/duet-menu-bar-item.entry.js +1 -1
  638. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  639. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  640. package/lib/esm-es5/duet-modal.entry.js +1 -1
  641. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  642. package/lib/esm-es5/duet-nav.entry.js +1 -1
  643. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  644. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  645. package/lib/esm-es5/duet-overlay.entry.js +1 -1
  646. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  647. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  648. package/lib/esm-es5/duet-panel.entry.js +1 -1
  649. package/lib/esm-es5/duet-phone-input.entry.js +1 -1
  650. package/lib/esm-es5/duet-popup-menu_2.entry.js +2 -2
  651. package/lib/esm-es5/duet-progress.entry.js +1 -1
  652. package/lib/esm-es5/duet-promo-card.entry.js +2 -2
  653. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  654. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  655. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  656. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  657. package/lib/esm-es5/duet-select.entry.js +2 -2
  658. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  659. package/lib/esm-es5/duet-share-chart-item.entry.js +1 -1
  660. package/lib/esm-es5/duet-share-chart.entry.js +1 -1
  661. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  662. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  663. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  664. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  665. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  666. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  667. package/lib/esm-es5/duet-status-icon.entry.js +1 -1
  668. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  669. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  670. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  671. package/lib/esm-es5/duet-submenu-bar-item.entry.js +1 -1
  672. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  673. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  674. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  675. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  676. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  677. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  678. package/lib/esm-es5/duet-toolbar-item.entry.js +1 -1
  679. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  680. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  681. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  682. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  683. package/lib/esm-es5/duet-tray.entry.js +1 -1
  684. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  685. package/lib/esm-es5/duet-upload-item.entry.js +2 -2
  686. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  687. package/lib/esm-es5/duet.js +1 -1
  688. package/lib/esm-es5/{errorcodes.utils-1e9af184.js → errorcodes.utils-e3c3fbe7.js} +1 -1
  689. package/lib/esm-es5/{focus-utils-d80e0fff.js → focus-utils-8dcbe898.js} +1 -1
  690. package/lib/esm-es5/{index-8edff080.js → index-e0645409.js} +1 -1
  691. package/lib/esm-es5/{language-utils-da0a98a7.js → language-utils-5c6108e9.js} +1 -1
  692. package/lib/esm-es5/loader.js +1 -1
  693. package/lib/esm-es5/{slot-utils-86873bd2.js → slot-utils-0bb6f129.js} +1 -1
  694. package/lib/esm-es5/{themeable-component-19d01405.js → themeable-component-f1c77a5d.js} +1 -1
  695. package/lib/esm-es5/{token-utils-d02c20ff.js → token-utils-0d5e28a7.js} +1 -1
  696. package/lib/esm-es5/tokens-1702323a.js +4 -0
  697. package/lib/esm-es5/tokens.module-7ae22e26.js +4 -0
  698. package/lib/types/components/duet-choice/duet-choice.d.ts +3 -3
  699. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +1 -0
  700. package/lib/types/components/duet-combobox/duet-combobox.d.ts +1 -0
  701. package/lib/types/components/duet-input/duet-input.d.ts +12 -1
  702. package/lib/types/components/duet-number-input/duet-number-input.d.ts +8 -6
  703. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +4 -4
  704. package/lib/types/components/duet-scrollable/duet-scrollable.d.ts +13 -0
  705. package/lib/types/components/duet-select/duet-select.d.ts +0 -1
  706. package/lib/types/components/duet-slideout/duet-slideout.d.ts +4 -4
  707. package/lib/types/components/duet-textarea/duet-textarea.d.ts +17 -7
  708. package/lib/types/components.d.ts +58 -27
  709. package/lib/types/utils/a11y-utils.d.ts +11 -0
  710. package/package.json +5 -5
  711. package/lib/cjs/a11y-utils-27715462.js +0 -25
  712. package/lib/dist-custom-elements/p-6b2617d7.js +0 -58
  713. package/lib/dist-custom-elements/p-e89676de.js +0 -318
  714. package/lib/dist-custom-elements/p-f8d1e874.js +0 -23
  715. package/lib/duet/p-00fdc8a5.entry.js +0 -4
  716. package/lib/duet/p-0407196d.system.entry.js +0 -4
  717. package/lib/duet/p-06317021.system.entry.js +0 -4
  718. package/lib/duet/p-0fb9f963.system.entry.js +0 -4
  719. package/lib/duet/p-0fd2949d.entry.js +0 -4
  720. package/lib/duet/p-117a0379.system.entry.js +0 -4
  721. package/lib/duet/p-1aabfaed.entry.js +0 -4
  722. package/lib/duet/p-23a14a5a.system.entry.js +0 -4
  723. package/lib/duet/p-24954951.js +0 -4
  724. package/lib/duet/p-2e209e01.system.entry.js +0 -4
  725. package/lib/duet/p-342c967e.system.entry.js +0 -4
  726. package/lib/duet/p-36678b00.entry.js +0 -4
  727. package/lib/duet/p-36f85144.entry.js +0 -4
  728. package/lib/duet/p-3815b0dd.system.entry.js +0 -4
  729. package/lib/duet/p-38fb1743.entry.js +0 -4
  730. package/lib/duet/p-3c8067bd.entry.js +0 -4
  731. package/lib/duet/p-403c3143.system.entry.js +0 -4
  732. package/lib/duet/p-44a37072.entry.js +0 -4
  733. package/lib/duet/p-451c3aab.system.entry.js +0 -4
  734. package/lib/duet/p-47387024.system.entry.js +0 -4
  735. package/lib/duet/p-4d6d92ad.system.entry.js +0 -4
  736. package/lib/duet/p-5162f6cd.entry.js +0 -4
  737. package/lib/duet/p-52a20f17.entry.js +0 -4
  738. package/lib/duet/p-542e6df7.system.entry.js +0 -4
  739. package/lib/duet/p-55bbe82e.system.entry.js +0 -4
  740. package/lib/duet/p-5a8d14bf.system.entry.js +0 -4
  741. package/lib/duet/p-5fc75c92.entry.js +0 -4
  742. package/lib/duet/p-64766118.js +0 -4
  743. package/lib/duet/p-6daf8a1b.js +0 -4
  744. package/lib/duet/p-799ca114.entry.js +0 -4
  745. package/lib/duet/p-8693fac0.system.entry.js +0 -4
  746. package/lib/duet/p-9148808e.entry.js +0 -4
  747. package/lib/duet/p-9461adf1.system.entry.js +0 -4
  748. package/lib/duet/p-987df55c.system.entry.js +0 -4
  749. package/lib/duet/p-9d8ac94e.entry.js +0 -4
  750. package/lib/duet/p-9d9457bf.js +0 -4
  751. package/lib/duet/p-9e34f749.system.entry.js +0 -4
  752. package/lib/duet/p-a4a80b80.system.entry.js +0 -4
  753. package/lib/duet/p-ac04269e.entry.js +0 -4
  754. package/lib/duet/p-ae0fd651.entry.js +0 -4
  755. package/lib/duet/p-b111d93d.system.entry.js +0 -4
  756. package/lib/duet/p-b70a5218.system.entry.js +0 -4
  757. package/lib/duet/p-b81ac5ae.system.js +0 -4
  758. package/lib/duet/p-b8688298.entry.js +0 -4
  759. package/lib/duet/p-bb6c5d9b.entry.js +0 -4
  760. package/lib/duet/p-c88bd45b.system.js +0 -4
  761. package/lib/duet/p-c972a96e.js +0 -4
  762. package/lib/duet/p-cc300171.system.entry.js +0 -4
  763. package/lib/duet/p-d0dbbd18.entry.js +0 -4
  764. package/lib/duet/p-d20c3b70.entry.js +0 -4
  765. package/lib/duet/p-d21f9230.system.js +0 -4
  766. package/lib/duet/p-db0ba7b6.system.js +0 -4
  767. package/lib/duet/p-e919fa07.entry.js +0 -4
  768. package/lib/duet/p-ebfbee15.system.entry.js +0 -4
  769. package/lib/duet/p-f856fc6d.system.entry.js +0 -4
  770. package/lib/duet/p-f9051bab.js +0 -4
  771. package/lib/duet/p-fc9aafe5.entry.js +0 -4
  772. package/lib/duet/p-fd34a664.entry.js +0 -4
  773. package/lib/esm/a11y-utils-35c2f182.js +0 -23
  774. package/lib/esm-es5/a11y-utils-35c2f182.js +0 -4
  775. package/lib/esm-es5/tokens-1fd83076.js +0 -4
  776. package/lib/esm-es5/tokens.module-7b07911f.js +0 -4
@@ -1,15 +1,15 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { e as enableBodyScroll, d as disableBodyScroll } from './body-scroll-46854769.js';
7
- import { F as FocusGuard } from './focus-utils-d80e0fff.js';
8
- import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './language-utils-da0a98a7.js';
9
- import { h as hasSlot } from './slot-utils-86873bd2.js';
10
- import { g as getColorByName } from './token-utils-d02c20ff.js';
7
+ import { F as FocusGuard } from './focus-utils-8dcbe898.js';
8
+ import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './language-utils-5c6108e9.js';
9
+ import { h as hasSlot } from './slot-utils-0bb6f129.js';
10
+ import { g as getColorByName } from './token-utils-0d5e28a7.js';
11
11
  import './string-utils-192eb3c8.js';
12
- import './tokens.module-7b07911f.js';
12
+ import './tokens.module-7ae22e26.js';
13
13
 
14
14
  const duetSlideoutPanelCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;height:100%}:host slot:not([name=label])::slotted(*){position:relative;top:0.5rem;opacity:0;transition:top 0.3s ease-in, opacity 0.3s ease-in}:host([open]) slot:not([name=label])::slotted(*){top:0;opacity:1}.duet-slideout-panel{position:relative;height:100%}.duet-slideout-panel .link{position:relative;display:flex;gap:16px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:8px 0;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.5rem;font-weight:800;line-height:1.25;color:rgb(8, 42, 77);text-align:left;text-decoration:none;cursor:pointer}.duet-slideout-panel .link:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-slideout-panel .link:focus,.duet-slideout-panel .link:focus.duet-theme-turva,.duet-theme-turva2 .duet-slideout-panel .link:focus,.duet-slideout-panel .link:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-slideout-panel .link .duet-slideout-icon{position:relative;display:inline-flex;font-size:0;line-height:normal;vertical-align:baseline}@media (min-width: 62em){.duet-slideout-panel .link .duet-slideout-icon{margin-right:8px}}.duet-slideout-panel .link .label{display:flex;gap:0.5rem;align-items:center;justify-content:space-between;width:100%}.duet-slideout-panel .link .label-text.small{font-size:1rem;font-weight:600}.duet-slideout-panel .link .label-text.medium{font-size:1rem;font-weight:600}.duet-slideout-panel .link .label-text.large{font-size:1.25rem;font-weight:800}.duet-slideout-panel .link.active .label-text{position:relative}.duet-slideout-panel .link.active .label-text.small::after{height:1px;transform:translateY(1px)}.duet-slideout-panel .link.active .label-text::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:2px;content:\"\";background:rgb(0, 119, 179);transform:translateY(2px)}.duet-slideout-panel .dialog{position:fixed;top:0;right:0;z-index:600;visibility:visible;width:min(450px, 100%);height:100%;overflow-y:auto}.duet-slideout-panel .dialog.hidden{visibility:hidden}.duet-slideout-panel .dialog.hidden .top .back,.duet-slideout-panel .dialog.hidden .top span{opacity:0}.duet-slideout-panel .top-container.has-sticky-header-slot{position:sticky;top:0;z-index:200}.duet-slideout-panel .top-container.has-sticky-header-slot .top{background:rgb(240, 247, 250)}.duet-slideout-panel .top-container.has-sticky-header-slot .sticky-header{display:block;padding:0 16px}.duet-slideout-panel .top{display:flex;align-items:center;justify-content:space-between;padding:4px}.duet-slideout-panel .top .back{opacity:1;transition:top 0.3s ease-in, opacity 0.3s ease-in}.duet-slideout-panel .top .back:focus,.duet-slideout-panel .top .close:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-slideout-panel .top .back:focus,.duet-slideout-panel .top .back:focus.duet-theme-turva,.duet-theme-turva2 .duet-slideout-panel .top .back:focus,.duet-slideout-panel .top .back:focus.duet-theme-turva2,.duet-theme-turva .duet-slideout-panel .top .close:focus,.duet-slideout-panel .top .close:focus.duet-theme-turva,.duet-theme-turva2 .duet-slideout-panel .top .close:focus,.duet-slideout-panel .top .close:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-slideout-panel .top duet-icon{padding:16px}.duet-slideout-panel .top span{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:1.1rem;font-weight:700;line-height:1.5;color:rgb(8, 42, 77);opacity:1;transition:top 0.3s ease-in, opacity 0.3s ease-in}.duet-slideout-panel .sticky-header{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(240, 247, 250);border-bottom:1px solid rgb(212, 223, 229)}.duet-slideout-panel .items{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:12px 20px;overflow-y:auto;color:rgb(8, 42, 77)}@media (min-width: 36em){.duet-slideout-panel .items{padding:16px 28px}}.duet-slideout-panel duet-indicator{top:4px}.duet-slideout-panel.duet-theme-turva .link{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-panel.duet-theme-turva .link.active .label-text::after{background:rgb(198, 12, 48)}.duet-slideout-panel.duet-theme-turva .has-sticky-header-slot .top{background:rgb(245, 247, 250)}.duet-slideout-panel.duet-theme-turva .has-sticky-header-slot .sticky-header{background:rgb(245, 247, 250);border-bottom:1px solid rgb(222, 224, 228)}.duet-slideout-panel.duet-theme-turva .top span{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)}slot:not([name=label]){--active-height:1px;--active-translate-y:translateY(1px);font-size:1rem;font-weight:600;color:rgb(8, 42, 77)}.duet-theme-turva slot:not([name=label]){color:rgb(23, 28, 58)}:host(.duet-theme-turva2) .duet-slideout-panel.duet-theme-turva .link{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-slideout-panel.duet-theme-turva .link.active .label-text::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-slideout-panel.duet-theme-turva .has-sticky-header-slot .top{background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-slideout-panel.duet-theme-turva .has-sticky-header-slot .sticky-header{background:rgb(253, 247, 242);border-bottom-color:rgb(251, 225, 209)}:host(.duet-theme-turva2) .duet-slideout-panel.duet-theme-turva .top span{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) slot:not([name=label]){color:rgb(23, 42, 59)}";
15
15
  const DuetSlideoutPanelStyle0 = duetSlideoutPanelCss;
@@ -1,17 +1,18 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { e as enableBodyScroll, d as disableBodyScroll } from './body-scroll-46854769.js';
7
- import { f as focusElement, F as FocusGuard } from './focus-utils-d80e0fff.js';
7
+ import { s as setOpenerExpanded } from './a11y-utils-04e1285d.js';
8
+ import { f as focusElement, F as FocusGuard } from './focus-utils-8dcbe898.js';
8
9
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
9
- import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './language-utils-da0a98a7.js';
10
- import { h as hasSlot } from './slot-utils-86873bd2.js';
10
+ import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './language-utils-5c6108e9.js';
11
+ import { h as hasSlot } from './slot-utils-0bb6f129.js';
11
12
  import { T as Teleport } from './teleport-aa27d5f9.js';
12
- import { g as getColorByName } from './token-utils-d02c20ff.js';
13
+ import { g as getColorByName } from './token-utils-0d5e28a7.js';
13
14
  import './string-utils-192eb3c8.js';
14
- import './tokens.module-7b07911f.js';
15
+ import './tokens.module-7ae22e26.js';
15
16
 
16
17
  const duetSlideoutCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;position:absolute;height:100%}::slotted(*){position:relative;visibility:hidden;width:100%;opacity:0;transition:opacity 300ms ease;transition-delay:300ms}:host([open]:not([open=false])) ::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(8, 42, 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)}@media (min-width: 62em){.duet-slideout.duet-theme-turva .desktop-bg{background:rgb(23, 28, 58)}}.duet-slideout .dialog{position:fixed;top:0;right:0;bottom:0;left:auto;z-index:600;width:min(450px, 100%);padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset;transition:bottom 300ms ease;transition-delay:0s}.duet-slideout .dialog:not(.modal){box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}.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(255, 255, 255)}.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;opacity:1;transition:opacity 300ms ease}.duet-slideout .dialog .top button{cursor:pointer}.duet-slideout .dialog .top button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-slideout .dialog .top button:focus,.duet-slideout .dialog .top button:focus.duet-theme-turva,.duet-theme-turva2 .duet-slideout .dialog .top button:focus,.duet-slideout .dialog .top button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-slideout .dialog .top duet-icon{padding:16px}.duet-slideout .dialog .sticky-header{display:none;width:100%;padding:0 20px 20px;margin-bottom:20px;background:rgb(255, 255, 255);border-bottom:1px solid rgb(212, 223, 229)}@media (min-width: 36em){.duet-slideout .dialog .sticky-header{padding:0 28px 28px}}.duet-slideout .dialog .items{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:12px 20px;opacity:1;transition:padding 600ms ease, opacity 300ms ease;transition-delay:300ms}@media (min-width: 36em){.duet-slideout .dialog .items{padding:16px 28px}}.duet-slideout .dialog.hidden{bottom:100vh;visibility:hidden;pointer-events:none;transition:300ms ease}.duet-slideout .dialog.hidden .items{padding-top:28px;opacity:0}.duet-slideout .dialog.hidden .top{opacity:0}.duet-slideout.duet-theme-turva .dialog{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}.duet-slideout.duet-theme-turva .dialog:not(.modal){box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}.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.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 .sticky-header{border-bottom:1px solid rgb(222, 224, 228)}slot{color:rgb(8, 42, 77)}.duet-theme-turva slot{color:rgb(23, 28, 58)}:host(.duet-theme-turva2) .duet-slideout.duet-theme-turva{color:rgb(23, 42, 59)}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-slideout.duet-theme-turva .desktop-bg{background:rgb(23, 42, 59)}}:host(.duet-theme-turva2) .duet-slideout.duet-theme-turva button{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-slideout.duet-theme-turva button.active{color:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-slideout.duet-theme-turva button.active::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-slideout.duet-theme-turva .has-sticky-header-slot .sticky-header{border-bottom-color:rgb(212, 221, 226)}:host(.duet-theme-turva2) slot{color:rgb(23, 42, 59)}";
17
18
  const DuetSlideoutStyle0 = duetSlideoutCss;
@@ -44,8 +45,7 @@ const DuetSlideout = class {
44
45
  }
45
46
  try {
46
47
  const button = element;
47
- button.accessiblePopup = "true";
48
- button.accessibleExpanded = false;
48
+ setOpenerExpanded(button, false);
49
49
  this.openButton = button;
50
50
  if (addClickListener && !this.disconnectController.signal.aborted) {
51
51
  this.eventListenerController = new AbortController();
@@ -164,7 +164,7 @@ const DuetSlideout = class {
164
164
  }
165
165
  if (this.open && !oldValue) {
166
166
  if (this.openButton) {
167
- this.openButton.accessibleExpanded = true;
167
+ setOpenerExpanded(this.openButton, true);
168
168
  }
169
169
  const openPanel = this.getOpenPanel();
170
170
  this.teleport.makeSiblingsInert();
@@ -182,7 +182,7 @@ const DuetSlideout = class {
182
182
  }
183
183
  else if (!this.open && oldValue) {
184
184
  if (this.openButton) {
185
- this.openButton.accessibleExpanded = false;
185
+ setOpenerExpanded(this.openButton, false);
186
186
  }
187
187
  setTimeout(() => {
188
188
  focusElement(this.openButton);
@@ -262,17 +262,17 @@ const DuetSlideout = class {
262
262
  };
263
263
  const topLevelOpenMenuBarTranslation = getLocaleString(this.topLevelOpenMenuBarLangObject);
264
264
  const exitTranslation = getLocaleString(this.exitLangObject);
265
- return (h(Host, { key: '092ff7252a26d276ee0925def1cb985c4963f9f9' }, h("div", { key: '4798e60685324dc1d96b79ed05d847531821734e', class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, this.modal && h("duet-overlay", { key: '6af2c640de7f635373f2f795e4adeebc4432fc87', visible: this.open, zIndex: "600" }), h("div", { key: '6613f55b6e61baa05833e225741427abc9c810bb', 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: {
265
+ return (h(Host, { key: 'b6d5fbef33d10b2f6425a6e78f0a2de036e3f512' }, h("div", { key: '3428a6a963aa1ec4e80ce92d0e219147bcbb8089', class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, this.modal && h("duet-overlay", { key: 'e7c11ca4c68d822139264b42d42510f6af415dfb', visible: this.open, zIndex: "600" }), h("div", { key: 'c7c1e081b83239d39798ead2aa9ece13da5034dc', 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: {
266
266
  dialog: true,
267
267
  hidden: !this.open,
268
268
  modal: this.modal,
269
- }, style: styles }, h(FocusGuard, { key: '2bcc71858b33eb7031d874753e5b56ae08d27232', moveFocusTo: this.closeButton }), h("div", { key: 'e93b3e3e696fed7a15af0b629cdc75d4e6c6a42e', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, h("div", { key: '3264075d1c8a40dd86f3fd0e54f6c0c3fd14042a', class: "top" }, h("button", { key: 'a3f4bdaa53dc0db03844bb7eb22ebf24bf13ca97', ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
269
+ }, style: styles }, h(FocusGuard, { key: '6c3bba7ea6a524a33602790a253c4599ee9ffe82', moveFocusTo: this.closeButton }), h("div", { key: 'e9a35def109c643bffbb6d7f7eee307a6471aa19', class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, h("div", { key: 'e215b3ee0f16a373fac057cacbf54270167746d6', class: "top" }, h("button", { key: '5e507c3a17569d380d1661c3b99fc226aa605666', ref: element => (this.closeButton = element), "aria-haspopup": "dialog", "aria-controls": "dialog", "aria-expanded": this.open ? "true" : "false", "aria-label": `${exitTranslation}`, type: "button", class: {
270
270
  "slideout-close": true,
271
271
  active: this.open,
272
272
  "duet-theme-turva": this.theme === "turva",
273
- }, onClick: this.onClick, inert: this.openPanel }, h("duet-icon", { key: '20b4c13d074068a108d641d35774379c8a0e09c0', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), h("div", { key: 'e1b6159ff375a7e954c2a08c7b83012bd0584efd', class: "sticky-header" }, h("slot", { key: '8da80f3f654ad32fc3dbd60f973cfc67a3f05395', name: "sticky-header" }))), h("div", { key: '9b937ee229143cbed731694b1fdaee6f3d901569', id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
273
+ }, onClick: this.onClick, inert: this.openPanel }, h("duet-icon", { key: '608049a68f332f656bf3bcb29e290d4f19914a88', name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), h("div", { key: '4ab80b5539930e5ff9fb3aa64a1089617470b767', class: "sticky-header" }, h("slot", { key: '09f2868153936e9a0a094d5a2b96c3573e9d664f', name: "sticky-header" }))), h("div", { key: '9876bf2bf543d5352f95d3c15075f88abe1950d4', id: "slot-container", role: this.accessibleRole, "aria-label": this.openPanel ? topLevelOpenMenuBarTranslation : null, class: {
274
274
  items: true,
275
- } }, h("slot", { key: '1c039519309719e4a4b71d13355c719af6755a77' })), h(FocusGuard, { key: 'bd10152d30a0ae84320b6dda7cf18833abf1f1dc', moveFocusTo: this.closeButton })))));
275
+ } }, h("slot", { key: '19aeb5952ae545f8c48a9f4b028f5112a7174959' })), h(FocusGuard, { key: 'f20a711142adf31a1822e1db1b10b9c464dc24ea', moveFocusTo: this.closeButton })))));
276
276
  }
277
277
  get element() { return getElement(this); }
278
278
  static get watchers() { return {
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { r as registerInstance, h, H as Host } from './index-8edff080.js';
5
- import { t as tokens } from './tokens-1fd83076.js';
4
+ import { r as registerInstance, h, H as Host } from './index-e0645409.js';
5
+ import { t as tokens } from './tokens-1702323a.js';
6
6
 
7
7
  const DuetStatusIcon = class {
8
8
  constructor(hostRef) {
@@ -1,12 +1,12 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, c as createEvent, h, g as getElement, H as Host } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.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-daf80d44.js';
8
- import { d as DuetStringsListStepOfTotal } from './common-strings-1274857d.js';
9
- import { a as getLanguage, g as getLocaleString } from './language-utils-da0a98a7.js';
8
+ import { d as DuetStringsListStepOfTotal } from './common-strings-5f78fe4e.js';
9
+ import { a as getLanguage, g as getLocaleString } from './language-utils-5c6108e9.js';
10
10
  import './string-utils-192eb3c8.js';
11
11
 
12
12
  var actionEdit2={"title":"action-edit-2","tags":"action edit 2 pen pencil","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M.748 24a.755.755 0 0 1-.531-.22.754.754 0 0 1-.196-.716l1.77-6.905a.84.84 0 0 1 .045-.121.73.73 0 0 1 .151-.223L16.513 1.289A4.355 4.355 0 0 1 19.611 0c1.178 0 2.277.454 3.106 1.279l.029.029a4.367 4.367 0 0 1 1.251 3.121 4.356 4.356 0 0 1-1.32 3.087L8.183 22.01a.735.735 0 0 1-.231.154.784.784 0 0 1-.111.042L.933 23.978A.773.773 0 0 1 .748 24zm1.041-1.791 4.41-1.131-3.281-3.275zm5.868-1.795 13.02-13.02-4.074-4.074L3.58 16.344zM21.736 6.332a2.893 2.893 0 0 0-.059-3.972l-.02-.02a2.872 2.872 0 0 0-2.037-.84v-.375l-.001.375a2.873 2.873 0 0 0-1.954.762z\"/></svg>"};
@@ -1,8 +1,8 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
7
7
 
8
8
  const duetSubmenuBarDropdownLinkCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;height:100%}.duet-submenu-bar-dropdown-link{display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:flex-start;height:100%;padding:8px 20px 8px 60px;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.25;color:rgb(8, 42, 77);text-align:left;text-decoration:none}.duet-submenu-bar-dropdown-link:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-submenu-bar-dropdown-link:focus,.duet-submenu-bar-dropdown-link:focus.duet-theme-turva,.duet-theme-turva2 .duet-submenu-bar-dropdown-link:focus,.duet-submenu-bar-dropdown-link:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-submenu-bar-dropdown-link .label-container{display:flex;flex:1;gap:12px;align-items:center;justify-content:flex-start}@media (min-width: 62em){.duet-submenu-bar-dropdown-link{padding:0.5rem 8px;font-size:1rem;line-height:1.5}}.duet-submenu-bar-dropdown-link.active .label{position:relative}.duet-submenu-bar-dropdown-link.active .label::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:1px}.duet-submenu-bar-dropdown-link.active .active-check{display:none}.duet-submenu-bar-dropdown-link.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-submenu-bar-dropdown-link.duet-theme-turva.active .label::after{background:rgb(198, 12, 48)}@media (min-width: 62em){.duet-submenu-bar-dropdown-link.active{background:rgb(240, 247, 250)}.duet-submenu-bar-dropdown-link.active .label::after{display:none}.duet-submenu-bar-dropdown-link.active .active-check{display:block}.duet-submenu-bar-dropdown-link.active.duet-theme-turva{background:rgb(245, 247, 250)}.duet-submenu-bar-dropdown-link:hover{background:rgb(228, 241, 247)}.duet-submenu-bar-dropdown-link:hover.duet-theme-turva{background:rgb(222, 224, 228)}}.duet-submenu-bar-dropdown-link.highlight{color:rgb(0, 119, 179)}.duet-submenu-bar-dropdown-link.highlight.duet-theme-turva{color:rgb(126, 2, 35)}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown-link.duet-theme-turva{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown-link.duet-theme-turva.active .label::after{background:rgb(230, 23, 64)}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-submenu-bar-dropdown-link.duet-theme-turva.active{background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown-link.duet-theme-turva:hover{background:rgb(251, 225, 209)}}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown-link.duet-theme-turva.highlight{color:rgb(230, 23, 64)}";
@@ -1,9 +1,9 @@
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-8edff080.js';
5
- import { a as media_query_large } from './tokens-1fd83076.js';
6
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { a as media_query_large } from './tokens-1702323a.js';
6
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
7
7
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
8
8
 
9
9
  const duetSubmenuBarDropdownCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;height:100%}@media (min-width: 62em){:host{width:auto}}.duet-submenu-bar-dropdown{position:relative;height:100%}.duet-submenu-bar-dropdown button{position:relative;display:flex;flex-direction:row;gap:16px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:12px 1.5rem;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;color:rgb(8, 42, 77);text-align:center;text-decoration:none;cursor:pointer}.duet-submenu-bar-dropdown button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-submenu-bar-dropdown button:focus,.duet-submenu-bar-dropdown button:focus.duet-theme-turva,.duet-theme-turva2 .duet-submenu-bar-dropdown button:focus,.duet-submenu-bar-dropdown button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}@media (min-width: 62em){.duet-submenu-bar-dropdown button{flex-direction:column;gap:5px;align-items:center;justify-content:center;width:auto;font-size:0.875rem;color:rgb(0, 75, 129)}}.duet-submenu-bar-dropdown button .label{display:flex;gap:5px;align-items:center;justify-content:center}@media (min-width: 62em){.duet-submenu-bar-dropdown button.open{background:rgb(228, 241, 247)}}.duet-submenu-bar-dropdown button.open .caret{transform:rotate(180deg)}.duet-submenu-bar-dropdown button.active .label-text{position:relative}.duet-submenu-bar-dropdown button.active .label-text::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:1px}@media (min-width: 62em){.duet-submenu-bar-dropdown button.active .label-text::after{display:none}}@media (min-width: 62em){.duet-submenu-bar-dropdown button .caret{position:absolute;right:12px}.duet-submenu-bar-dropdown button:hover{color:rgb(8, 42, 77);background:rgb(228, 241, 247)}.duet-submenu-bar-dropdown button:hover.active{color:rgb(8, 42, 77)}.duet-theme-turva .duet-submenu-bar-dropdown button:hover.active{color:rgb(23, 28, 58)}.duet-submenu-bar-dropdown button.active{color:rgb(0, 119, 179)}.duet-theme-turva .duet-submenu-bar-dropdown button.active{color:rgb(198, 12, 48)}.duet-submenu-bar-dropdown button.active::after,.duet-submenu-bar-dropdown button.open::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:translateY(1px);transition:300ms ease}.duet-theme-turva .duet-submenu-bar-dropdown button.active::after,.duet-theme-turva .duet-submenu-bar-dropdown button.open::after{background:rgb(198, 12, 48)}}.duet-submenu-bar-dropdown .submenu-bar-dropdown-icon{width:20px;height:20px}@media (min-width: 62em){.duet-submenu-bar-dropdown .submenu-bar-dropdown-icon{width:16px;height:16px}}.duet-submenu-bar-dropdown .items{display:flex;visibility:visible;flex-direction:column;align-items:center;justify-content:center;max-height:1000px;padding:4px 0 16px;overflow-y:auto;color:rgb(8, 42, 77);scrollbar-width:none;transition:max-height 0.3s ease-in, padding 0.3s ease-in;-ms-overflow-style:none}.duet-submenu-bar-dropdown .items::-webkit-scrollbar{display:none}@media (min-width: 62em){.duet-submenu-bar-dropdown .items{position:absolute;top:93%;z-index:600;min-width:320px;padding:8px;background:rgb(255, 255, 255);border-radius:8px;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.07), 0 4px 10px 0 rgba(0, 41, 77, 0.15);transition:none}}.duet-submenu-bar-dropdown .items.hidden{visibility:hidden;max-height:0;padding:0;overflow:hidden;transition:max-height 0.3s ease-in, padding 0.3s ease-in}.duet-submenu-bar-dropdown.duet-theme-turva button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button:hover{background:rgb(222, 224, 228)}}.duet-submenu-bar-dropdown.duet-theme-turva button.active .label-text::after,.duet-submenu-bar-dropdown.duet-theme-turva button.open .label-text::after{background:rgb(198, 12, 48)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button.active,.duet-submenu-bar-dropdown.duet-theme-turva button.open{color:rgb(126, 2, 35)}}.duet-submenu-bar-dropdown.duet-theme-turva button.active::after,.duet-submenu-bar-dropdown.duet-theme-turva button.open::after{background:rgb(126, 2, 35)}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva button.open{background:rgb(222, 224, 228)}}@media (min-width: 62em){.duet-submenu-bar-dropdown.duet-theme-turva .items{background:rgb(255, 255, 255)}}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button{color:rgb(23, 42, 59)}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button:hover{background:rgb(251, 225, 209)}}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.active .label-text::after,:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.open .label-text::after{background:rgb(230, 23, 64)}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.active,:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.open{color:rgb(140, 0, 30)}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.active::after,:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.open::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva button.open{background:rgb(251, 225, 209)}}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-submenu-bar-dropdown.duet-theme-turva .items{background:rgb(255, 255, 255)}}";
@@ -1,14 +1,14 @@
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-8edff080.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
5
  import { a as actionNewWindowSmall } from './action-new-window-small-1945be91.js';
6
- import { a as DuetStringsExternalDefaults } from './common-strings-1274857d.js';
7
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
8
- import { g as getAccessibleLinkLabel } from './a11y-utils-35c2f182.js';
6
+ import { a as DuetStringsExternalDefaults } from './common-strings-5f78fe4e.js';
7
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
8
+ import { g as getAccessibleLinkLabel } from './a11y-utils-04e1285d.js';
9
9
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
10
- import { g as getLocaleString, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver } from './language-utils-da0a98a7.js';
11
- import './slot-utils-86873bd2.js';
10
+ import { g as getLocaleString, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver } from './language-utils-5c6108e9.js';
11
+ import './slot-utils-0bb6f129.js';
12
12
  import './string-utils-192eb3c8.js';
13
13
 
14
14
  const duetSubmenuBarItemCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;height:100%}@media (min-width: 62em){:host{width:auto}}.duet-submenu-bar-item{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:auto;height:100%;padding:12px 1.5rem;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:600;line-height:1.25;color:rgb(0, 75, 129);text-align:center;white-space:nowrap;text-decoration:none;cursor:pointer}.duet-submenu-bar-item:focus{outline:2px solid;outline-offset:-4px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-submenu-bar-item:focus,.duet-submenu-bar-item:focus.duet-theme-turva,.duet-theme-turva2 .duet-submenu-bar-item:focus,.duet-submenu-bar-item:focus.duet-theme-turva2{outline:2px solid;outline-offset:-4px;outline-color:rgba(53, 79, 101, 0.8)}.duet-submenu-bar-item .label{display:flex;gap:5px;align-items:center;justify-content:center}.duet-submenu-bar-item .leading-icon,.duet-submenu-bar-item .trailing-icon{width:20px;height:20px}@media (min-width: 62em){.duet-submenu-bar-item .leading-icon,.duet-submenu-bar-item .trailing-icon{width:16px;height:16px}}.duet-submenu-bar-item .trailing-icon.trailing-icon-arrow{width:7px;height:7px}.duet-submenu-bar-item .external-icon{width:10px;height:10px}.duet-submenu-bar-item .trailing-icon{position:absolute;right:12px}.duet-submenu-bar-item[aria-expanded=true]{background:rgb(228, 241, 247)}.duet-submenu-bar-item[aria-expanded=true] .trailing-icon.rotate{transform:rotate(180deg)}.duet-submenu-bar-item.active{color:rgb(0, 119, 179)}.duet-submenu-bar-item.active.duet-theme-turva{color:rgb(126, 2, 35)}.duet-submenu-bar-item.active::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:translateY(1px);transition:300ms ease}.duet-submenu-bar-item.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-submenu-bar-item.duet-theme-turva.active .label::after{background:rgb(126, 2, 35)}.duet-submenu-bar-item.duet-theme-turva.active::after{background:rgb(126, 2, 35)}.duet-submenu-bar-item:hover{color:rgb(8, 42, 77);background:rgb(228, 241, 247)}.duet-submenu-bar-item:hover.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(222, 224, 228)}.duet-submenu-bar-item:hover.duet-theme-turva.active{color:rgb(126, 2, 35)}:host(.duet-theme-turva2) .duet-submenu-bar-item.duet-theme-turva{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-submenu-bar-item.active.duet-theme-turva{color:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-submenu-bar-item.duet-theme-turva.active .label::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-submenu-bar-item.duet-theme-turva.active::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-submenu-bar-item.duet-theme-turva:hover{color:rgb(23, 42, 59);background:rgb(251, 225, 209)}:host(.duet-theme-turva2) .duet-submenu-bar-item.duet-theme-turva:hover.active{color:rgb(230, 23, 64)}";
@@ -1,8 +1,8 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
7
7
 
8
8
  const duetSubmenuBarLinkCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;height:100%}@media (min-width: 62em){:host{width:auto}}.duet-submenu-bar-link{display:flex;flex-direction:row;gap:16px;align-items:center;justify-content:flex-start;height:100%;padding:12px 1.5rem;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;color:rgb(8, 42, 77);text-align:center;text-decoration:none}.duet-submenu-bar-link:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-submenu-bar-link:focus,.duet-submenu-bar-link:focus.duet-theme-turva,.duet-theme-turva2 .duet-submenu-bar-link:focus,.duet-submenu-bar-link:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-submenu-bar-link .submenu-bar-link-icon{width:20px;height:20px}@media (min-width: 62em){.duet-submenu-bar-link .submenu-bar-link-icon{width:16px;height:16px}}@media (min-width: 62em){.duet-submenu-bar-link{flex-direction:column;gap:5px;align-items:center;justify-content:center;font-size:0.875rem;color:rgb(0, 75, 129)}}@media (min-width: 62em){.duet-submenu-bar-link.active{color:rgb(0, 119, 179)}.duet-submenu-bar-link.active.duet-theme-turva{color:rgb(126, 2, 35)}}.duet-submenu-bar-link.active .label{position:relative}.duet-submenu-bar-link.active .label::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:1px}@media (min-width: 62em){.duet-submenu-bar-link.active .label::after{display:none}.duet-submenu-bar-link.active::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:translateY(1px);transition:300ms ease}}.duet-submenu-bar-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-submenu-bar-link.duet-theme-turva.active .label::after{background:rgb(126, 2, 35)}.duet-submenu-bar-link.duet-theme-turva.active::after{background:rgb(126, 2, 35)}@media (min-width: 62em){.duet-submenu-bar-link:hover{color:rgb(8, 42, 77);background:rgb(228, 241, 247)}.duet-submenu-bar-link:hover.duet-theme-turva{color:rgb(23, 28, 58);background:rgb(222, 224, 228)}.duet-submenu-bar-link:hover.duet-theme-turva.active{color:rgb(126, 2, 35)}}:host(.duet-theme-turva2) .duet-submenu-bar-link.duet-theme-turva{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-submenu-bar-link.duet-theme-turva.active .label::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-submenu-bar-link.duet-theme-turva.active::after{background:rgb(230, 23, 64)}@media (min-width: 62em){:host(.duet-theme-turva2) .duet-submenu-bar-link.duet-theme-turva.active{color:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-submenu-bar-link.duet-theme-turva:hover{color:rgb(23, 42, 59);background:rgb(251, 225, 209)}:host(.duet-theme-turva2) .duet-submenu-bar-link.duet-theme-turva:hover.active{color:rgb(230, 23, 64)}}";
@@ -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 } from './index-8edff080.js';
5
- import { a as media_query_large } from './tokens-1fd83076.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { a as media_query_large } from './tokens-1702323a.js';
6
6
  import { e as enableBodyScroll, d as disableBodyScroll } from './bodyScrollLock.es6-ecbf187e.js';
7
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
7
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
8
8
 
9
9
  const duetSubmenuBarCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;pointer-events:none}:host *{pointer-events:auto}:host(:not([open])) ::slotted(duet-submenu-bar-dropdown){display:none}@media (min-width: 62em){:host(:not([open])) ::slotted(duet-submenu-bar-dropdown){display:inherit}}.duet-submenu-bar{position:relative;top:0;z-index:1;background:rgb(240, 247, 250);transition:top 0.4s}.duet-submenu-bar.hidden{top:-200px}@media (min-width: 62em){.duet-submenu-bar{border-bottom:1px solid rgb(198, 225, 238)}}.duet-submenu-bar button{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 0;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(8, 42, 77)}.duet-submenu-bar button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-submenu-bar button:focus,.duet-submenu-bar button:focus.duet-theme-turva,.duet-theme-turva2 .duet-submenu-bar button:focus,.duet-submenu-bar button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-submenu-bar button.active .caret{transform:rotate(180deg)}.duet-submenu-bar button .label{position:relative;display:flex;gap:8px;align-items:center;justify-content:center}@media (min-width: 62em){.duet-submenu-bar button{display:none}}.duet-submenu-bar .menu-container{position:absolute;z-index:399;width:100%}.duet-submenu-bar .menu-container.hidden{visibility:hidden;max-height:0;overflow:hidden}@media (min-width: 62em){.duet-submenu-bar .menu-container,.duet-submenu-bar .menu-container.hidden{position:static;z-index:auto;visibility:visible;max-height:unset;overflow:visible}}.duet-submenu-bar .items{visibility:visible;width:100%;height:70vh;overflow-y:scroll;background:rgb(240, 247, 250);border-bottom:1px solid rgb(181, 198, 208)}.duet-submenu-bar .items ::slotted(*){position:relative}.duet-submenu-bar .items.hidden{visibility:hidden;max-height:0;overflow:hidden;border-bottom:0 solid rgb(181, 198, 208)}.duet-submenu-bar .items .list-padding{padding-bottom:188px}@media (min-width: 62em){.duet-submenu-bar .items .list{display:flex;align-items:center;justify-content:space-between;height:100%}.duet-submenu-bar .items,.duet-submenu-bar .items.hidden{position:static;z-index:auto;display:flex;visibility:visible;flex-direction:row;align-items:center;justify-content:center;height:auto;max-height:unset;overflow:visible;border:0}.duet-submenu-bar .items .list-padding{display:none;padding-bottom:0}}.duet-submenu-bar.duet-theme-turva{background:rgb(245, 247, 250);border-bottom:1px solid rgb(222, 224, 228)}.duet-submenu-bar.duet-theme-turva .items{background:rgb(245, 247, 250)}.duet-submenu-bar.duet-theme-turva .mobile-background{background:rgb(23, 28, 58)}.duet-submenu-bar.duet-theme-turva .shadow-container .top-shadow{box-shadow:0 2px 6px 0 rgba(23, 28, 58, 0.07)}@media (min-width: 62em){.duet-submenu-bar.duet-theme-turva .shadow-container .top-shadow{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1)}}:host(.duet-theme-turva2) .duet-submenu-bar.duet-theme-turva{background:rgb(253, 247, 242);border-bottom-color:rgb(251, 225, 209)}:host(.duet-theme-turva2) .duet-submenu-bar.duet-theme-turva .items{background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-submenu-bar.duet-theme-turva .mobile-background{background:rgb(23, 42, 59)}";
10
10
  const DuetSubmenuBarStyle0 = duetSubmenuBarCss;
@@ -1,25 +1,24 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { c as createID } from './create-id-149a1b6d.js';
7
7
  import { c as cleanValue } from './input-utils-85681162.js';
8
- import { f as formatNumber, g as getLocaleString, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver } from './language-utils-da0a98a7.js';
9
- import { c as checkNamedSlotElement } from './slot-utils-86873bd2.js';
8
+ import { d as debounce } from './js-utils-9b9e0039.js';
9
+ import { a as getLanguage, f as formatNumber } from './language-utils-5c6108e9.js';
10
+ import { c as checkNamedSlotElement } from './slot-utils-0bb6f129.js';
10
11
  import './string-utils-192eb3c8.js';
11
12
 
12
- const duetTextareaCss = "*.sc-duet-textarea,*.sc-duet-textarea::after,*.sc-duet-textarea::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.sc-duet-textarea-h{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-right:16px !important;margin-bottom:12px !important;display:block;width:100%;max-width:100%;text-align:left}.sc-duet-textarea-h:last-child,.sc-duet-textarea-h:last-of-type{margin-right:0 !important}[alignment=form-distribute]>.sc-duet-textarea-h:last-of-type{margin-right:16px !important}@media (min-width: 36em){.sc-duet-textarea-h{width:calc(50% - 16px - 3px)}.duet-expand.sc-duet-textarea-h{width:100% !important}}.duet-m-0.sc-duet-textarea-h{margin:0 !important}duet-tooltip.sc-duet-textarea,.sc-duet-textarea-s>duet-tooltip{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-textarea,.sc-duet-textarea-s>duet-tooltip{position:relative;top:4px;right:auto}}.duet-textarea-container.sc-duet-textarea{position:relative;width:100%;height:100%}.duet-textarea-container.sc-duet-textarea .duet-input-top-caption.sc-duet-textarea{display:none}.duet-textarea-container.duet-input-top-caption-shown.sc-duet-textarea .duet-input-top-caption.sc-duet-textarea{display:flex !important}.duet-textarea-wrapper.sc-duet-textarea{position:relative}.duet-textarea-placeholder.sc-duet-textarea{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgb(255, 255, 255)}.duet-textarea.sc-duet-textarea{padding:15px !important;position:relative;z-index:100;display:block;width:100%;min-width:8rem;min-height:160px;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;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(8, 42, 77);resize:vertical;background:rgb(255, 255, 255);border:1px solid rgb(127, 150, 165);border-radius:4px;transition:150ms ease}.duet-textarea.sc-duet-textarea:focus{outline:2px solid;outline-offset:0;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus,.duet-textarea.sc-duet-textarea:focus.duet-theme-turva,.duet-theme-turva2.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus,.duet-textarea.sc-duet-textarea:focus.duet-theme-turva2{outline:2px solid;outline-offset:0;outline-color:rgba(53, 79, 101, 0.8)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea{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);border-color:rgb(143, 147, 158)}.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea{border-color:rgb(214, 28, 82) !important}.duet-theme-turva.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea{border-color:rgb(214, 28, 82) !important}.duet-textarea.sc-duet-textarea::-webkit-input-placeholder{color:rgb(98, 121, 138);opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea::-webkit-input-placeholder{color:rgb(143, 147, 158)}.duet-textarea.sc-duet-textarea:focus::-webkit-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-webkit-input-placeholder{color:rgb(199, 202, 207)}.duet-textarea.sc-duet-textarea::-moz-placeholder{color:rgb(98, 121, 138);opacity:1 !important}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea::-moz-placeholder{color:rgb(143, 147, 158)}.duet-textarea.sc-duet-textarea:focus::-moz-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-moz-placeholder{color:rgb(199, 202, 207)}.duet-textarea.sc-duet-textarea:-ms-input-placeholder{color:rgb(98, 121, 138)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:-ms-input-placeholder{color:rgb(143, 147, 158)}.duet-textarea.sc-duet-textarea:focus:-ms-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus:-ms-input-placeholder{color:rgb(199, 202, 207)}.duet-textarea[disabled].sc-duet-textarea{color:rgb(98, 121, 138) !important;cursor:not-allowed !important;background:rgb(245, 248, 250) !important;border-color:rgb(245, 248, 250) !important}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea{color:rgb(143, 147, 158) !important;background:rgb(245, 247, 250) !important;border-color:rgb(245, 247, 250) !important}.duet-textarea[disabled].sc-duet-textarea::-webkit-input-placeholder{color:rgb(8, 42, 77);opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-webkit-input-placeholder{color:rgb(23, 28, 58)}.duet-textarea[disabled].sc-duet-textarea::-moz-placeholder{color:rgb(8, 42, 77);opacity:1 !important}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-moz-placeholder{color:rgb(23, 28, 58)}.duet-textarea[disabled].sc-duet-textarea:-ms-input-placeholder{color:rgb(8, 42, 77)}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea:-ms-input-placeholder{color:rgb(23, 28, 58)}.duet-textarea.sc-duet-textarea:hover:not(:disabled){outline:2px solid;outline-color:rgb(98, 121, 138);outline-offset:-1px}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:hover:not(:disabled),.duet-textarea.sc-duet-textarea:hover:not(:disabled).duet-theme-turva,.duet-theme-turva2.sc-duet-textarea .duet-textarea.sc-duet-textarea:hover:not(:disabled),.duet-textarea.sc-duet-textarea:hover:not(:disabled).duet-theme-turva2{outline-color:rgb(120, 145, 164)}.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea:hover:not(:disabled){outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-textarea.sc-duet-textarea:focus{border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus{border-color:rgb(23, 28, 58)}.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus{outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-textarea.sc-duet-textarea:not(:focus):not(:hover):invalid{outline:none}.duet-textarea-help.sc-duet-textarea{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;line-height:1.25}.duet-textarea-help.sc-duet-textarea span.sc-duet-textarea{display:block;margin-top:8px}.duet-theme-turva.sc-duet-textarea .duet-textarea-help.sc-duet-textarea{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(143, 147, 158)}.has-error.sc-duet-textarea .duet-textarea-help.sc-duet-textarea{color:rgb(214, 28, 82)}.duet-theme-turva.has-error.sc-duet-textarea .duet-textarea-help.sc-duet-textarea{color:rgb(214, 28, 82)}.duet-label-hidden.sc-duet-textarea duet-label.sc-duet-textarea{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0)}.duet-character-count.sc-duet-textarea{display:block;margin:8px 0 0 auto}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea{color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus{border-color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea{background:rgb(245, 246, 247) !important;border-color:rgb(245, 246, 247) !important}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:-webkit-input-placeholder{color:rgb(120, 145, 164)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-webkit-input-placeholder{color:rgb(178, 194, 205)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-moz-placeholder{color:rgb(178, 194, 205)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus:-ms-input-placeholder{color:rgb(178, 194, 205)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-webkit-input-placeholder{color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-moz-placeholder{color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea:-ms-input-placeholder{color:rgb(23, 42, 59)}";
13
+ const duetTextareaCss = "*.sc-duet-textarea,*.sc-duet-textarea::after,*.sc-duet-textarea::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.sc-duet-textarea-h{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-right:16px !important;margin-bottom:12px !important;display:block;width:100%;max-width:100%;text-align:left}.sc-duet-textarea-h:last-child,.sc-duet-textarea-h:last-of-type{margin-right:0 !important}[alignment=form-distribute]>.sc-duet-textarea-h:last-of-type:not(:last-child){margin-right:16px !important}@media (min-width: 36em){.sc-duet-textarea-h{width:calc(50% - 16px - 3px)}.duet-expand.sc-duet-textarea-h{width:100% !important}}.duet-m-0.sc-duet-textarea-h{margin:0 !important}duet-tooltip.sc-duet-textarea,.sc-duet-textarea-s>duet-tooltip{position:absolute;top:12px;right:0}@media (min-width: 48em){duet-tooltip.sc-duet-textarea,.sc-duet-textarea-s>duet-tooltip{position:relative;top:4px;right:auto}}.duet-textarea-container.sc-duet-textarea{position:relative;width:100%;height:100%}.duet-textarea-container.sc-duet-textarea .duet-input-top-caption.sc-duet-textarea{display:none}.duet-textarea-container.duet-input-top-caption-shown.sc-duet-textarea .duet-input-top-caption.sc-duet-textarea{display:flex !important}.duet-textarea-wrapper.sc-duet-textarea{position:relative}.duet-textarea-placeholder.sc-duet-textarea{position:absolute;top:-9px;left:9px;z-index:200;display:block;width:auto;max-width:60%;padding:0 0.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgb(255, 255, 255)}.duet-textarea.sc-duet-textarea{padding:15px !important;position:relative;z-index:100;display:block;width:100%;min-width:8rem;min-height:160px;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;font-variant-numeric:tabular-nums;line-height:1.25;color:rgb(8, 42, 77);resize:vertical;background:rgb(255, 255, 255);border:1px solid rgb(127, 150, 165);border-radius:4px;transition:150ms ease}.duet-textarea.sc-duet-textarea:focus{outline:2px solid;outline-offset:0;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus,.duet-textarea.sc-duet-textarea:focus.duet-theme-turva,.duet-theme-turva2.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus,.duet-textarea.sc-duet-textarea:focus.duet-theme-turva2{outline:2px solid;outline-offset:0;outline-color:rgba(53, 79, 101, 0.8)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea{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);border-color:rgb(143, 147, 158)}.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea{border-color:rgb(214, 28, 82) !important}.duet-theme-turva.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea{border-color:rgb(214, 28, 82) !important}.duet-textarea[rows].sc-duet-textarea{min-height:auto}.duet-textarea.sc-duet-textarea::-webkit-input-placeholder{color:rgb(98, 121, 138);opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea::-webkit-input-placeholder{color:rgb(143, 147, 158)}.duet-textarea.sc-duet-textarea:focus::-webkit-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-webkit-input-placeholder{color:rgb(199, 202, 207)}.duet-textarea.sc-duet-textarea::-moz-placeholder{color:rgb(98, 121, 138);opacity:1 !important}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea::-moz-placeholder{color:rgb(143, 147, 158)}.duet-textarea.sc-duet-textarea:focus::-moz-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-moz-placeholder{color:rgb(199, 202, 207)}.duet-textarea.sc-duet-textarea:-ms-input-placeholder{color:rgb(98, 121, 138)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:-ms-input-placeholder{color:rgb(143, 147, 158)}.duet-textarea.sc-duet-textarea:focus:-ms-input-placeholder{color:rgb(181, 198, 208)}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus:-ms-input-placeholder{color:rgb(199, 202, 207)}.duet-textarea[disabled].sc-duet-textarea{color:rgb(98, 121, 138) !important;cursor:not-allowed !important;background:rgb(245, 248, 250) !important;border-color:rgb(245, 248, 250) !important}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea{color:rgb(143, 147, 158) !important;background:rgb(245, 247, 250) !important;border-color:rgb(245, 247, 250) !important}.duet-textarea[disabled].sc-duet-textarea::-webkit-input-placeholder{color:rgb(8, 42, 77);opacity:1 !important;transition:color 300ms ease}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-webkit-input-placeholder{color:rgb(23, 28, 58)}.duet-textarea[disabled].sc-duet-textarea::-moz-placeholder{color:rgb(8, 42, 77);opacity:1 !important}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-moz-placeholder{color:rgb(23, 28, 58)}.duet-textarea[disabled].sc-duet-textarea:-ms-input-placeholder{color:rgb(8, 42, 77)}.duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea:-ms-input-placeholder{color:rgb(23, 28, 58)}.duet-textarea.sc-duet-textarea:hover:not(:disabled){outline:2px solid;outline-color:rgb(98, 121, 138);outline-offset:-1px}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:hover:not(:disabled),.duet-textarea.sc-duet-textarea:hover:not(:disabled).duet-theme-turva,.duet-theme-turva2.sc-duet-textarea .duet-textarea.sc-duet-textarea:hover:not(:disabled),.duet-textarea.sc-duet-textarea:hover:not(:disabled).duet-theme-turva2{outline-color:rgb(120, 145, 164)}.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea:hover:not(:disabled){outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-textarea.sc-duet-textarea:focus{border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus{border-color:rgb(23, 28, 58)}.has-error.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus{outline:1px solid;outline-color:rgb(214, 28, 82);outline-offset:-1px}.duet-textarea.sc-duet-textarea:not(:focus):not(:hover):invalid{outline:none}.duet-textarea-help.sc-duet-textarea{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;line-height:1.25}.duet-textarea-help.sc-duet-textarea span.sc-duet-textarea{display:block;margin-top:8px}.duet-theme-turva.sc-duet-textarea .duet-textarea-help.sc-duet-textarea{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(143, 147, 158)}.has-error.sc-duet-textarea .duet-textarea-help.sc-duet-textarea{color:rgb(214, 28, 82)}.duet-theme-turva.has-error.sc-duet-textarea .duet-textarea-help.sc-duet-textarea{color:rgb(214, 28, 82)}.duet-label-hidden.sc-duet-textarea duet-label.sc-duet-textarea{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0)}.duet-character-count.sc-duet-textarea{display:block;margin:8px 0 0 auto}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea{color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus{border-color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea{background:rgb(245, 246, 247) !important;border-color:rgb(245, 246, 247) !important}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:-webkit-input-placeholder{color:rgb(120, 145, 164)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-webkit-input-placeholder{color:rgb(178, 194, 205)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus::-moz-placeholder{color:rgb(178, 194, 205)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea.sc-duet-textarea:focus:-ms-input-placeholder{color:rgb(178, 194, 205)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-webkit-input-placeholder{color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea::-moz-placeholder{color:rgb(23, 42, 59)}.duet-theme-turva2.sc-duet-textarea-h .duet-theme-turva.sc-duet-textarea .duet-textarea[disabled].sc-duet-textarea:-ms-input-placeholder{color:rgb(23, 42, 59)}";
13
14
  const DuetTextareaStyle0 = duetTextareaCss;
14
15
 
15
- const CharacterCount = ({ value, maxlength, label, theme }) => {
16
+ const CharacterCount = ({ value, maxlength, theme }) => {
16
17
  if (maxlength == null) {
17
18
  return;
18
19
  }
19
20
  const length = value.length;
20
- const remainder = Math.max(maxlength - length, 0); // ensure we never have negative numbers
21
- const isApproachingLimit = remainder / maxlength <= 0.1; // <= 10% chars remaining
22
- return (h("div", { class: "duet-character-count" }, h("duet-caption", { margin: "none", theme: theme, size: "small" }, h("duet-visually-hidden", { "aria-live": "polite", "aria-atomic": "true", class: "duet-textarea-counter-remaining" }, isApproachingLimit && `${remainder} ${label}`), h("span", { "aria-hidden": "true" }, length, "/", maxlength))));
21
+ return (h("div", { class: "duet-character-count" }, h("duet-caption", { margin: "none", theme: theme, size: "small" }, h("span", { "aria-hidden": "true" }, length, "/", maxlength))));
23
22
  };
24
23
  const DuetTextarea = class {
25
24
  constructor(hostRef) {
@@ -37,11 +36,13 @@ const DuetTextarea = class {
37
36
  this.labelId = createID("DuetLabel");
38
37
  this.errorId = createID("DuetError");
39
38
  this.characterCountId = createID("DuetCharacterCount");
39
+ this.visuallyHiddenCounterDebounceMS = 1000;
40
40
  this.disallowPatternRegex = null;
41
- this.counterLabelDefaults = {
42
- fi: "merkkiä jäljellä",
43
- en: "characters remaining",
44
- sv: "tecken kvar",
41
+ this.charactersRemainingLabel = {
42
+ // The comma in Finnish is to prevent use of partitive case for remaining
43
+ fi: "{remaining}, merkkiä jäljellä {max}{postfix}.",
44
+ en: "{remaining} characters remaining out of {max}.",
45
+ sv: "{remaining} tecken kvar av {max}.",
45
46
  };
46
47
  /**
47
48
  * Component event handling.
@@ -74,15 +75,23 @@ const DuetTextarea = class {
74
75
  });
75
76
  };
76
77
  this.handleFocus = (ev) => {
77
- if (this.counter) {
78
- this.hiddenCounterLabel.textContent = `${formatNumber(Math.max(this.maxlength - this.value.length, 0))}/${formatNumber(this.maxlength)} ${this.counterLabel}`;
79
- }
80
78
  this.duetFocus.emit({
81
79
  originalEvent: ev,
82
80
  value: this.value,
83
81
  component: "duet-textarea",
84
82
  });
85
83
  };
84
+ /**
85
+ * When the character limit has been reached and key is pressed, switch the
86
+ * visually hidden label temprorily to empty so it is re-read.
87
+ */
88
+ this.handleKeyDown = () => {
89
+ var _a;
90
+ if (((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) === this.maxlength) {
91
+ this.visuallyHiddenCounterText = "";
92
+ setTimeout(() => this.updateVisuallyHiddenCounterText(), 10);
93
+ }
94
+ };
86
95
  this.getDescribedBy = () => {
87
96
  const describedBy = [];
88
97
  if (this.isCaptionVisible && this.topCaptionId) {
@@ -94,11 +103,13 @@ const DuetTextarea = class {
94
103
  if (this.error) {
95
104
  describedBy.push(this.errorId);
96
105
  }
97
- if (this.counter) {
106
+ if (this.counter && this.maxlength) {
98
107
  describedBy.push(this.characterCountId);
99
108
  }
100
109
  return describedBy.length > 0 ? describedBy.join(" ") : null;
101
110
  };
111
+ this.language = getLanguage();
112
+ this.visuallyHiddenCounterText = undefined;
102
113
  this.margin = "auto";
103
114
  this.accessibleActiveDescendant = undefined;
104
115
  this.accessibleAutocomplete = undefined;
@@ -122,6 +133,7 @@ const DuetTextarea = class {
122
133
  this.placeholder = undefined;
123
134
  this.caption = undefined;
124
135
  this.echoPlaceholder = false;
136
+ this.rows = undefined;
125
137
  this.maxlength = undefined;
126
138
  this.minlength = undefined;
127
139
  this.error = "";
@@ -131,7 +143,7 @@ const DuetTextarea = class {
131
143
  this.value = "";
132
144
  this.disallowPattern = null;
133
145
  this.counter = false;
134
- this.counterLabel = getLocaleString(this.counterLabelDefaults);
146
+ this.counterLabel = "";
135
147
  }
136
148
  /**
137
149
  * This is a proxy for the enclosed native textarea's validity
@@ -139,6 +151,11 @@ const DuetTextarea = class {
139
151
  get validity() {
140
152
  return this.nativeInput.validity;
141
153
  }
154
+ valueChange(newValue, oldValue) {
155
+ if (newValue !== oldValue) {
156
+ debounce(() => this.updateVisuallyHiddenCounterText(), this.visuallyHiddenCounterDebounceMS)();
157
+ }
158
+ }
142
159
  disallowedPatternChange() {
143
160
  this.disallowPatternRegex = this.disallowPattern ? new RegExp(this.disallowPattern, "gu") : null;
144
161
  }
@@ -149,19 +166,22 @@ const DuetTextarea = class {
149
166
  inheritGlobalTheme(this);
150
167
  this.disallowedPatternChange();
151
168
  this.isCaptionVisible = !!this.caption;
169
+ this.updateVisuallyHiddenCounterText();
152
170
  checkNamedSlotElement(this.element, "tooltip", "duet-tooltip", 1, true);
153
171
  if (this.counter && this.maxlength == null) {
154
172
  console.warn("[DUET WARNING]: counter will only take effect if maxlength is set");
155
173
  }
156
174
  }
157
- connectedCallback() {
158
- connectLanguageChangeObserver(this, {
159
- prop: "counterLabel",
160
- defaults: "counterLabelDefaults",
161
- });
162
- }
163
- disconnectedCallback() {
164
- disconnectLanguageChangeObserver(this);
175
+ updateVisuallyHiddenCounterText() {
176
+ var _a;
177
+ const remaining = formatNumber(Math.max(this.maxlength - (((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) || 0), 0));
178
+ // postfix is used only in Finnish
179
+ // with "a" for full hundreds or numbers ending with 2, 3, 6, or 8; with "ä" otherwise
180
+ const postfix = this.maxlength % 100 === 0 || [2, 3, 6, 8].includes(this.maxlength % 10) ? ":sta" : ":stä";
181
+ this.visuallyHiddenCounterText = this.charactersRemainingLabel[this.language]
182
+ .replace("{remaining}", remaining)
183
+ .replace("{max}", formatNumber(this.maxlength))
184
+ .replace("{postfix}", postfix);
165
185
  }
166
186
  /**
167
187
  * Sets focus on the specified `duet-textarea`. Use this method instead of the global
@@ -186,12 +206,11 @@ const DuetTextarea = class {
186
206
  "duet-label-hidden": this.labelHidden,
187
207
  "duet-input-top-caption-shown": this.isCaptionVisible,
188
208
  "has-error": !!this.error,
189
- } }, 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)), h("slot", { name: "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 duet-textarea-error", 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 => {
190
- this.hiddenCounterLabel = el;
191
- } })))));
209
+ } }, 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)), h("slot", { name: "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, onKeyDown: this.handleKeyDown, 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, rows: this.rows, 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 duet-textarea-error", 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 }))), this.counter && this.maxlength && (h("duet-visually-hidden", { id: this.characterCountId, class: "visually-hidden-counter" }, this.visuallyHiddenCounterText)))));
192
210
  }
193
211
  get element() { return getElement(this); }
194
212
  static get watchers() { return {
213
+ "value": ["valueChange"],
195
214
  "disallowPattern": ["disallowedPatternChange"]
196
215
  }; }
197
216
  };
@@ -1,12 +1,12 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { c as createID } from './create-id-149a1b6d.js';
7
7
  import { s as subscribeTabbingChange, u as unsubscribeTabbingChange } from './keyboard-utils-daf80d44.js';
8
8
 
9
- const duetToggleCss = "*.sc-duet-toggle,*.sc-duet-toggle::after,*.sc-duet-toggle::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.sc-duet-toggle-h{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-right:8px !important;margin-bottom:12px !important;-webkit-user-select:none;user-select:none;display:inline-flex;width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-toggle-h:last-child,.sc-duet-toggle-h:last-of-type{margin-right:0 !important}[alignment=form-distribute]>.sc-duet-toggle-h:last-of-type{margin-right:8px !important}.duet-m-0.sc-duet-toggle-h{margin:0 !important}duet-label.sc-duet-toggle{display:block !important;width:100% !important}.duet-side-label.sc-duet-toggle{display:flex;gap:12px;align-items:center}.duet-side-label.sc-duet-toggle duet-label.sc-duet-toggle{width:auto !important}.duet-reverse-label.sc-duet-toggle{flex-direction:row-reverse}.duet-switch.sc-duet-toggle{position:relative;display:block;width:48px;height:28px}.duet-switch.sc-duet-toggle input.sc-duet-toggle{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;border:0 !important;clip:rect(1px, 1px, 1px, 1px) !important}.duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle{background-color:rgb(0, 119, 179);box-shadow:none}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle{background-color:rgb(198, 12, 48)}.duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle::before{background-color:rgb(255, 255, 255);box-shadow:-1px 0 2px #004467;transform:translateX(20px)}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle::before{background-color:rgb(255, 255, 255);box-shadow:-1px 0 2px #660619}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled+.duet-slider.sc-duet-toggle{cursor:default}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled+.duet-slider.sc-duet-toggle::before{box-shadow:none}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled+.duet-slider.sc-duet-toggle::before{box-shadow:none}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle{background:#bfcbd2}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle::before{background:rgb(255, 255, 255);box-shadow:none}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle{background:#c7c9cf}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle::before{background:rgb(255, 255, 255)}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:checked+.duet-slider.sc-duet-toggle{background:#80bbd9}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:checked+.duet-slider.sc-duet-toggle{background:#e38698}.user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.sc-duet-toggle{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.sc-duet-toggle,.user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.duet-theme-turva.sc-duet-toggle,.duet-theme-turva2 .user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.sc-duet-toggle,.user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.duet-theme-turva2.sc-duet-toggle{outline-color:rgba(53, 79, 101, 0.8)}.duet-slider.sc-duet-toggle{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;background-color:rgb(127, 150, 165);border-radius:24px;transition:background-color 300ms ease}.duet-slider.sc-duet-toggle::before{position:absolute;bottom:2px;left:2px;width:24px;height:24px;content:\"\";background-color:rgb(255, 255, 255);border-radius:50%;box-shadow:1px 0 2px 0 #5d6266;transition:300ms ease}.duet-theme-turva.sc-duet-toggle .duet-slider.sc-duet-toggle{background-color:rgb(143, 147, 158)}.duet-theme-turva.sc-duet-toggle .duet-slider.sc-duet-toggle::before{background-color:rgb(255, 255, 255);box-shadow:1px 0 2px 0 #00334d}.duet-theme-turva2.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle{background-color:rgb(230, 23, 64)}.duet-theme-turva2.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle::before{box-shadow:-1px 0 2px #890e26;transform:translateX(20px)}.duet-theme-turva2.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:checked+.duet-slider.sc-duet-toggle{background:#f38ba0}";
9
+ const duetToggleCss = "*.sc-duet-toggle,*.sc-duet-toggle::after,*.sc-duet-toggle::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}.sc-duet-toggle-h{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;margin-right:8px !important;margin-bottom:12px !important;-webkit-user-select:none;user-select:none;display:inline-flex;width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-toggle-h:last-child,.sc-duet-toggle-h:last-of-type{margin-right:0 !important}[alignment=form-distribute]>.sc-duet-toggle-h:last-of-type:not(:last-child){margin-right:8px !important}.duet-m-0.sc-duet-toggle-h{margin:0 !important}duet-label.sc-duet-toggle{display:block !important;width:100% !important}.duet-side-label.sc-duet-toggle{display:flex;gap:12px;align-items:center}.duet-side-label.sc-duet-toggle duet-label.sc-duet-toggle{width:auto !important}.duet-reverse-label.sc-duet-toggle{flex-direction:row-reverse}.duet-switch.sc-duet-toggle{position:relative;display:block;width:48px;height:28px}.duet-switch.sc-duet-toggle input.sc-duet-toggle{position:absolute !important;top:0;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;border:0 !important;clip:rect(1px, 1px, 1px, 1px) !important}.duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle{background-color:rgb(0, 119, 179);box-shadow:none}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle{background-color:rgb(198, 12, 48)}.duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle::before{background-color:rgb(255, 255, 255);box-shadow:-1px 0 2px #004467;transform:translateX(20px)}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle::before{background-color:rgb(255, 255, 255);box-shadow:-1px 0 2px #660619}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled+.duet-slider.sc-duet-toggle{cursor:default}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled+.duet-slider.sc-duet-toggle::before{box-shadow:none}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled+.duet-slider.sc-duet-toggle::before{box-shadow:none}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle{background:#bfcbd2}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle::before{background:rgb(255, 255, 255);box-shadow:none}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle{background:#c7c9cf}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:not(:checked)+.duet-slider.sc-duet-toggle::before{background:rgb(255, 255, 255)}.duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:checked+.duet-slider.sc-duet-toggle{background:#80bbd9}.duet-theme-turva.sc-duet-toggle .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:checked+.duet-slider.sc-duet-toggle{background:#e38698}.user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.sc-duet-toggle{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.sc-duet-toggle,.user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.duet-theme-turva.sc-duet-toggle,.duet-theme-turva2 .user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.sc-duet-toggle,.user-is-tabbing.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:focus+.duet-slider.duet-theme-turva2.sc-duet-toggle{outline-color:rgba(53, 79, 101, 0.8)}.duet-slider.sc-duet-toggle{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;background-color:rgb(127, 150, 165);border-radius:24px;transition:background-color 300ms ease}.duet-slider.sc-duet-toggle::before{position:absolute;bottom:2px;left:2px;width:24px;height:24px;content:\"\";background-color:rgb(255, 255, 255);border-radius:50%;box-shadow:1px 0 2px 0 #5d6266;transition:300ms ease}.duet-theme-turva.sc-duet-toggle .duet-slider.sc-duet-toggle{background-color:rgb(143, 147, 158)}.duet-theme-turva.sc-duet-toggle .duet-slider.sc-duet-toggle::before{background-color:rgb(255, 255, 255);box-shadow:1px 0 2px 0 #00334d}.duet-theme-turva2.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle{background-color:rgb(230, 23, 64)}.duet-theme-turva2.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:checked+.duet-slider.sc-duet-toggle::before{box-shadow:-1px 0 2px #890e26;transform:translateX(20px)}.duet-theme-turva2.sc-duet-toggle-h .duet-switch.sc-duet-toggle input.sc-duet-toggle:disabled:checked+.duet-slider.sc-duet-toggle{background:#f38ba0}";
10
10
  const DuetToggleStyle0 = duetToggleCss;
11
11
 
12
12
  const DuetToggle = class {
@@ -1,8 +1,8 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
7
7
 
8
8
  const duetToolbarDropdownLinkCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;width:100%;height:100%}.duet-toolbar-dropdown-link{display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:flex-start;height:100%;padding:0.5rem 8px;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(8, 42, 77);text-align:center;text-decoration:none}.duet-toolbar-dropdown-link:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-toolbar-dropdown-link:focus,.duet-toolbar-dropdown-link:focus.duet-theme-turva,.duet-theme-turva2 .duet-toolbar-dropdown-link:focus,.duet-toolbar-dropdown-link:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-toolbar-dropdown-link .label{flex:1;text-align:left}.duet-toolbar-dropdown-link.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-toolbar-dropdown-link.active{background:rgb(240, 247, 250)}.duet-toolbar-dropdown-link.active.duet-theme-turva{background:rgb(245, 247, 250)}.duet-toolbar-dropdown-link:hover{background:rgb(228, 241, 247)}.duet-toolbar-dropdown-link:hover.duet-theme-turva{background:rgb(222, 224, 228)}:host(.duet-theme-turva2) .duet-toolbar-dropdown-link.duet-theme-turva{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-toolbar-dropdown-link.duet-theme-turva.active{background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-toolbar-dropdown-link.duet-theme-turva:hover{background:rgb(251, 225, 209)}";
@@ -1,11 +1,11 @@
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-8edff080.js';
5
- import { i as inheritGlobalTheme } from './themeable-component-19d01405.js';
4
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-e0645409.js';
5
+ import { i as inheritGlobalTheme } from './themeable-component-f1c77a5d.js';
6
6
  import { f as isEscapeKey } from './keyboard-utils-daf80d44.js';
7
7
 
8
- const duetToolbarDropdownCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;height:100%}.duet-toolbar-dropdown{position:relative;height:100%}.duet-toolbar-dropdown button{position:relative;display:flex;gap:8px;align-items:center;justify-content:center;height:100%;padding:0 16px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(0, 75, 129);text-align:center;text-decoration:none;cursor:pointer}.duet-toolbar-dropdown button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-toolbar-dropdown button:focus,.duet-toolbar-dropdown button:focus.duet-theme-turva,.duet-theme-turva2 .duet-toolbar-dropdown button:focus,.duet-toolbar-dropdown button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-toolbar-dropdown button .label{display:flex;gap:0.5rem;align-items:center;justify-content:center}.duet-toolbar-dropdown button:hover{color:rgb(8, 42, 77);background:rgb(240, 247, 250)}.duet-toolbar-dropdown button.open .caret{transform:rotate(180deg)}.duet-toolbar-dropdown button.active,.duet-toolbar-dropdown button.open{color:rgb(8, 42, 77)}.duet-toolbar-dropdown button.active::after,.duet-toolbar-dropdown button.open::after{position:absolute;top:auto;bottom:1px;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:translateY(1px);transition:300ms ease}.duet-toolbar-dropdown .items{position:absolute;top:93%;right:0%;left:auto;z-index:600;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:175px;padding:8px;color:rgb(8, 42, 77);background:rgb(255, 255, 255);border-radius:8px;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.07), 0 4px 10px 0 rgba(0, 41, 77, 0.15)}.duet-toolbar-dropdown .items.hidden{display:none}.duet-toolbar-dropdown.right .items{right:auto;left:0%}.duet-toolbar-dropdown.duet-theme-turva button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-toolbar-dropdown.duet-theme-turva button:hover{color:rgb(23, 28, 58);background:rgb(245, 247, 250)}.duet-toolbar-dropdown.duet-theme-turva button.active,.duet-toolbar-dropdown.duet-theme-turva button.open{color:rgb(23, 28, 58)}.duet-toolbar-dropdown.duet-theme-turva button.active::after,.duet-toolbar-dropdown.duet-theme-turva button.open::after{background:rgb(198, 12, 48)}.duet-toolbar-dropdown.duet-theme-turva .items{background:rgb(255, 255, 255)}.duet-toolbar-dropdown.negative button{color:rgb(255, 255, 255)}.duet-toolbar-dropdown.negative button:hover{color:rgb(255, 255, 255);background:rgba(8, 42, 77, 0.2)}.duet-toolbar-dropdown.negative button.active{font-weight:600;color:rgb(255, 255, 255);background:rgba(8, 42, 77, 0.2)}.duet-toolbar-dropdown.negative button.open{color:rgb(255, 255, 255);background:rgba(8, 42, 77, 0.2)}.duet-toolbar-dropdown.negative button duet-icon{color:rgb(198, 225, 238)}.duet-toolbar-dropdown.duet-theme-turva.negative button{color:rgb(255, 255, 255)}.duet-toolbar-dropdown.duet-theme-turva.negative button:hover{color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-dropdown.duet-theme-turva.negative button.active{font-weight:600;color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-dropdown.duet-theme-turva.negative button.open{color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-dropdown.duet-theme-turva.negative button duet-icon{color:rgb(255, 185, 190)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button:hover{color:rgb(23, 42, 59);background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.active::after,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.open::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.active,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.open{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button:hover,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button.active,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button.open{background:rgba(23, 42, 59, 0.2)}";
8
+ const duetToolbarDropdownCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0}:host{box-sizing:border-box;padding:0;margin:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:transparent;border:0;height:100%}.duet-toolbar-dropdown{position:relative;height:100%}.duet-toolbar-dropdown button{position:relative;display:flex;gap:8px;align-items:center;justify-content:center;height:100%;padding:0 16px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;font-weight:400;line-height:1.25;color:rgb(0, 75, 129);text-align:center;text-decoration:none;cursor:pointer}.duet-toolbar-dropdown button:focus{outline:2px solid;outline-offset:2px;outline-color:rgba(0, 119, 179, 0.8)}.duet-theme-turva .duet-toolbar-dropdown button:focus,.duet-toolbar-dropdown button:focus.duet-theme-turva,.duet-theme-turva2 .duet-toolbar-dropdown button:focus,.duet-toolbar-dropdown button:focus.duet-theme-turva2{outline:2px solid;outline-offset:2px;outline-color:rgba(53, 79, 101, 0.8)}.duet-toolbar-dropdown button .label{display:flex;gap:0.5rem;align-items:center;justify-content:center}.duet-toolbar-dropdown button:hover{color:rgb(8, 42, 77);background:rgb(240, 247, 250)}.duet-toolbar-dropdown button.open .caret{transform:rotate(180deg)}.duet-toolbar-dropdown button.active,.duet-toolbar-dropdown button.open{color:rgb(8, 42, 77)}.duet-toolbar-dropdown button.active::after,.duet-toolbar-dropdown button.open::after{position:absolute;top:auto;bottom:1px;left:0;display:block;width:100%;height:1px;content:\"\";background:rgb(0, 119, 179);transform:translateY(1px);transition:300ms ease}.duet-toolbar-dropdown .items{position:absolute;top:93%;right:0%;left:auto;z-index:600;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:175px;padding:8px;color:rgb(8, 42, 77);background:rgb(255, 255, 255);border-radius:8px;box-shadow:0 0 0 1px rgba(0, 0, 0, 0.07), 0 4px 10px 0 rgba(0, 41, 77, 0.15)}.duet-toolbar-dropdown .items.hidden{display:none}.duet-toolbar-dropdown.right .items{right:auto;left:0%}.duet-toolbar-dropdown.duet-theme-turva button{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}.duet-toolbar-dropdown.duet-theme-turva button:hover{color:rgb(23, 28, 58);background:rgb(245, 247, 250)}.duet-toolbar-dropdown.duet-theme-turva button.active,.duet-toolbar-dropdown.duet-theme-turva button.open{color:rgb(23, 28, 58)}.duet-toolbar-dropdown.duet-theme-turva button.active::after,.duet-toolbar-dropdown.duet-theme-turva button.open::after{background:rgb(198, 12, 48)}.duet-toolbar-dropdown.duet-theme-turva .items{background:rgb(255, 255, 255)}.duet-toolbar-dropdown.negative button{color:rgb(255, 255, 255)}.duet-toolbar-dropdown.negative button:hover{color:rgb(255, 255, 255);background:rgba(8, 42, 77, 0.2)}.duet-toolbar-dropdown.negative button.active{font-weight:600;color:rgb(255, 255, 255);background:rgba(8, 42, 77, 0.2)}.duet-toolbar-dropdown.negative button.open{color:rgb(255, 255, 255);background:rgba(8, 42, 77, 0.2)}.duet-toolbar-dropdown.negative button duet-icon{color:rgb(198, 225, 238)}.duet-toolbar-dropdown.duet-theme-turva.negative button{color:rgb(255, 255, 255)}.duet-toolbar-dropdown.duet-theme-turva.negative button:hover{color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-dropdown.duet-theme-turva.negative button.active{font-weight:600;color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-dropdown.duet-theme-turva.negative button.open{color:rgb(255, 255, 255);background:rgba(23, 28, 58, 0.2)}.duet-toolbar-dropdown.duet-theme-turva.negative button duet-icon{color:rgb(255, 185, 190)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button:hover{color:rgb(23, 42, 59);background:rgb(253, 247, 242)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.active::after,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.open::after{background:rgb(230, 23, 64)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.active,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva button.open{color:rgb(23, 42, 59)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button:hover,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button.active,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button.open{background:rgba(23, 42, 59, 0.2)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button{color:rgb(255, 255, 255)}:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button:hover,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button.active,:host(.duet-theme-turva2) .duet-toolbar-dropdown.duet-theme-turva.negative button.open{color:rgb(255, 255, 255)}";
9
9
  const DuetToolbarDropdownStyle0 = duetToolbarDropdownCss;
10
10
 
11
11
  const DuetToolbarDropdown = class {