@duetds/components 7.1.3 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (680) hide show
  1. package/hydrate/index.js +217 -92
  2. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  3. package/lib/cjs/duet-alert.cjs.entry.js +3 -3
  4. package/lib/cjs/duet-badge.cjs.entry.js +3 -3
  5. package/lib/cjs/duet-banner.cjs.entry.js +3 -3
  6. package/lib/cjs/duet-breadcrumb.cjs.entry.js +3 -3
  7. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-button_2.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-callout.cjs.entry.js +3 -3
  10. package/lib/cjs/duet-caption_4.cjs.entry.js +6 -6
  11. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  12. package/lib/cjs/duet-checkbox.cjs.entry.js +3 -3
  13. package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-chip.cjs.entry.js +3 -3
  15. package/lib/cjs/duet-choice_2.cjs.entry.js +38 -49
  16. package/lib/cjs/duet-collapsible.cjs.entry.js +3 -3
  17. package/lib/cjs/duet-combobox.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-contact-card.cjs.entry.js +3 -3
  19. package/lib/cjs/duet-cookie-consent.cjs.entry.js +3 -3
  20. package/lib/cjs/duet-date-picker.cjs.entry.js +4 -4
  21. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  22. package/lib/cjs/duet-editable-table_3.cjs.entry.js +4 -4
  23. package/lib/cjs/duet-empty-state.cjs.entry.js +3 -3
  24. package/lib/cjs/duet-fieldset.cjs.entry.js +3 -3
  25. package/lib/cjs/duet-footer.cjs.entry.js +3 -3
  26. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
  28. package/lib/cjs/duet-hero.cjs.entry.js +3 -3
  29. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  30. package/lib/cjs/duet-input_2.cjs.entry.js +4 -4
  31. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +3 -3
  34. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +3 -3
  35. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +3 -3
  36. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +3 -3
  37. package/lib/cjs/duet-menu-bar.cjs.entry.js +3 -3
  38. package/lib/cjs/duet-modal.cjs.entry.js +4 -4
  39. package/lib/cjs/duet-multiselect.cjs.entry.js +3 -3
  40. package/lib/cjs/duet-nav.cjs.entry.js +1 -1
  41. package/lib/cjs/duet-notification_2.cjs.entry.js +4 -4
  42. package/lib/cjs/duet-number-input.cjs.entry.js +3 -3
  43. package/lib/cjs/duet-page-heading.cjs.entry.js +3 -3
  44. package/lib/cjs/duet-pagination_2.cjs.entry.js +4 -4
  45. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +3 -3
  46. package/lib/cjs/duet-popup-menu.cjs.entry.js +1 -1
  47. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  48. package/lib/cjs/duet-promo-card.cjs.entry.js +3 -3
  49. package/lib/cjs/duet-radio_2.cjs.entry.js +3 -3
  50. package/lib/cjs/duet-range-slider.cjs.entry.js +3 -3
  51. package/lib/cjs/duet-scrollable_3.cjs.entry.js +5 -5
  52. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  53. package/lib/cjs/duet-select.cjs.entry.js +3 -3
  54. package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
  55. package/lib/cjs/duet-show-more.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-slideout-lang.cjs.entry.js +3 -3
  57. package/lib/cjs/duet-slideout-link.cjs.entry.js +3 -3
  58. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +3 -3
  59. package/lib/cjs/duet-slideout-panel.cjs.entry.js +4 -4
  60. package/lib/cjs/duet-slideout.cjs.entry.js +51 -19
  61. package/lib/cjs/duet-step_2.cjs.entry.js +4 -4
  62. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +3 -3
  63. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +3 -3
  64. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +3 -3
  65. package/lib/cjs/duet-submenu-bar.cjs.entry.js +3 -3
  66. package/lib/cjs/duet-textarea.cjs.entry.js +3 -3
  67. package/lib/cjs/duet-toggle.cjs.entry.js +3 -3
  68. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +3 -3
  69. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +3 -3
  70. package/lib/cjs/duet-toolbar-link.cjs.entry.js +3 -3
  71. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +5 -5
  73. package/lib/cjs/duet-tooltip.cjs.entry.js +3 -3
  74. package/lib/cjs/duet-tray.cjs.entry.js +3 -3
  75. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +3 -3
  76. package/lib/cjs/duet-upload-item.cjs.entry.js +3 -3
  77. package/lib/cjs/duet-visually-hidden.cjs.entry.js +3 -3
  78. package/lib/cjs/duet.cjs.js +2 -2
  79. package/lib/cjs/{focus-utils-cdefdf2d.js → focus-utils-cc0e6f8e.js} +1 -1
  80. package/lib/cjs/{index-c113e2bb.js → index-83a4e16a.js} +2 -9
  81. package/lib/cjs/loader.cjs.js +2 -2
  82. package/lib/cjs/{nudge-ee03ce2e.js → nudge-84818dad.js} +3 -6
  83. package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
  84. package/lib/collection/components/duet-alert/duet-alert.js +1 -1
  85. package/lib/collection/components/duet-button/duet-button.js +5 -5
  86. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  87. package/lib/collection/components/duet-card/duet-card.js +3 -3
  88. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  89. package/lib/collection/components/duet-chip/duet-chip.js +4 -4
  90. package/lib/collection/components/duet-choice/duet-choice.css +6 -0
  91. package/lib/collection/components/duet-choice/duet-choice.e2e.js +3 -0
  92. package/lib/collection/components/duet-choice/duet-choice.js +52 -4
  93. package/lib/collection/components/duet-choice-group/duet-choice-group.js +21 -42
  94. package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
  95. package/lib/collection/components/duet-combobox/duet-combobox.js +3 -3
  96. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  97. package/lib/collection/components/duet-date-picker/duet-date-picker.js +4 -4
  98. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  99. package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
  100. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  101. package/lib/collection/components/duet-footer/duet-footer.js +7 -7
  102. package/lib/collection/components/duet-grid/duet-grid.js +3 -3
  103. package/lib/collection/components/duet-header/duet-header.js +15 -15
  104. package/lib/collection/components/duet-heading/duet-heading.js +1 -1
  105. package/lib/collection/components/duet-hero/duet-hero.js +5 -5
  106. package/lib/collection/components/duet-icon/duet-icon.js +1 -1
  107. package/lib/collection/components/duet-input/duet-input.js +8 -8
  108. package/lib/collection/components/duet-label/duet-label.js +2 -2
  109. package/lib/collection/components/duet-layout/duet-layout.js +1 -1
  110. package/lib/collection/components/duet-list/duet-list.js +3 -3
  111. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  112. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +1 -1
  113. package/lib/collection/components/duet-modal/duet-modal.js +3 -3
  114. package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
  115. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +1 -1
  116. package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
  117. package/lib/collection/components/duet-pagination/duet-pagination.js +2 -2
  118. package/lib/collection/components/duet-paragraph/duet-paragraph.js +3 -3
  119. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +1 -1
  120. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  121. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  122. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  123. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
  124. package/lib/collection/components/duet-select/duet-select.js +5 -5
  125. package/lib/collection/components/duet-show-more/duet-show-more.js +1 -1
  126. package/lib/collection/components/duet-slideout/duet-slideout.js +103 -22
  127. package/lib/collection/components/duet-spacer/duet-spacer.js +2 -2
  128. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  129. package/lib/collection/components/duet-step/duet-step.js +2 -2
  130. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  131. package/lib/collection/components/duet-tab-group/duet-tab-group.js +5 -5
  132. package/lib/collection/components/duet-textarea/duet-textarea.js +4 -4
  133. package/lib/collection/components/duet-toggle/duet-toggle.js +1 -1
  134. package/lib/collection/components/duet-tooltip/duet-tooltip.js +1 -1
  135. package/lib/collection/components/duet-upload/duet-upload.js +14 -14
  136. package/lib/collection/components/duet-upload-item/duet-upload-item.js +1 -1
  137. package/lib/collection/utils/nudge.js +3 -10
  138. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  139. package/lib/dist-custom-elements/duet-alert.js +1 -1
  140. package/lib/dist-custom-elements/duet-badge.js +1 -1
  141. package/lib/dist-custom-elements/duet-banner.js +6 -6
  142. package/lib/dist-custom-elements/duet-breadcrumb.js +4 -4
  143. package/lib/dist-custom-elements/duet-breadcrumbs.js +1 -1
  144. package/lib/dist-custom-elements/duet-button.js +1 -1
  145. package/lib/dist-custom-elements/duet-callout.js +5 -5
  146. package/lib/dist-custom-elements/duet-caption.js +1 -1
  147. package/lib/dist-custom-elements/duet-card.js +5 -5
  148. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  149. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  150. package/lib/dist-custom-elements/duet-chip.js +4 -4
  151. package/lib/dist-custom-elements/duet-choice-group.js +31 -52
  152. package/lib/dist-custom-elements/duet-choice.js +19 -9
  153. package/lib/dist-custom-elements/duet-collapsible.js +4 -4
  154. package/lib/dist-custom-elements/duet-combobox.js +2 -2
  155. package/lib/dist-custom-elements/duet-contact-card.js +10 -10
  156. package/lib/dist-custom-elements/duet-cookie-consent.js +8 -8
  157. package/lib/dist-custom-elements/duet-date-picker.js +14 -14
  158. package/lib/dist-custom-elements/duet-divider.js +1 -1
  159. package/lib/dist-custom-elements/duet-editable-table.js +9 -9
  160. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  161. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  162. package/lib/dist-custom-elements/duet-footer.js +6 -6
  163. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  164. package/lib/dist-custom-elements/duet-grid.js +1 -1
  165. package/lib/dist-custom-elements/duet-header.js +10 -10
  166. package/lib/dist-custom-elements/duet-heading.js +1 -1
  167. package/lib/dist-custom-elements/duet-hero.js +11 -11
  168. package/lib/dist-custom-elements/duet-icon.js +1 -1
  169. package/lib/dist-custom-elements/duet-input.js +1 -1
  170. package/lib/dist-custom-elements/duet-label.js +1 -1
  171. package/lib/dist-custom-elements/duet-layout.js +1 -1
  172. package/lib/dist-custom-elements/duet-link.js +1 -1
  173. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  174. package/lib/dist-custom-elements/duet-list.js +1 -1
  175. package/lib/dist-custom-elements/duet-logo.js +1 -1
  176. package/lib/dist-custom-elements/duet-menu-bar-button.js +4 -4
  177. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +4 -4
  178. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +4 -4
  179. package/lib/dist-custom-elements/duet-menu-bar-link.js +4 -4
  180. package/lib/dist-custom-elements/duet-menu-bar.js +4 -4
  181. package/lib/dist-custom-elements/duet-modal.js +9 -9
  182. package/lib/dist-custom-elements/duet-multiselect.js +12 -12
  183. package/lib/dist-custom-elements/duet-nav.js +1 -1
  184. package/lib/dist-custom-elements/duet-notification-drawer.js +6 -6
  185. package/lib/dist-custom-elements/duet-notification.js +4 -4
  186. package/lib/dist-custom-elements/duet-number-input.js +13 -13
  187. package/lib/dist-custom-elements/duet-page-heading.js +4 -4
  188. package/lib/dist-custom-elements/duet-pagination.js +15 -15
  189. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  190. package/lib/dist-custom-elements/duet-popup-menu-item.js +4 -4
  191. package/lib/dist-custom-elements/duet-popup-menu.js +1 -1
  192. package/lib/dist-custom-elements/duet-progress.js +1 -1
  193. package/lib/dist-custom-elements/duet-promo-card.js +5 -5
  194. package/lib/dist-custom-elements/duet-radio-group.js +10 -10
  195. package/lib/dist-custom-elements/duet-radio.js +1 -1
  196. package/lib/dist-custom-elements/duet-range-slider.js +4 -4
  197. package/lib/dist-custom-elements/duet-range-stepper.js +6 -6
  198. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  199. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  200. package/lib/dist-custom-elements/duet-select.js +1 -1
  201. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  202. package/lib/dist-custom-elements/duet-show-more.js +7 -7
  203. package/lib/dist-custom-elements/duet-slideout-lang.js +4 -4
  204. package/lib/dist-custom-elements/duet-slideout-link.js +4 -4
  205. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +4 -4
  206. package/lib/dist-custom-elements/duet-slideout-panel.js +4 -4
  207. package/lib/dist-custom-elements/duet-slideout.js +54 -19
  208. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  209. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  210. package/lib/dist-custom-elements/duet-step.js +6 -6
  211. package/lib/dist-custom-elements/duet-stepper.js +4 -4
  212. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +4 -4
  213. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +4 -4
  214. package/lib/dist-custom-elements/duet-submenu-bar-link.js +4 -4
  215. package/lib/dist-custom-elements/duet-submenu-bar.js +4 -4
  216. package/lib/dist-custom-elements/duet-tab-group.js +15 -15
  217. package/lib/dist-custom-elements/duet-tab.js +3 -3
  218. package/lib/dist-custom-elements/duet-table.js +1 -1
  219. package/lib/dist-custom-elements/duet-textarea.js +12 -12
  220. package/lib/dist-custom-elements/duet-toggle.js +4 -4
  221. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +4 -4
  222. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +4 -4
  223. package/lib/dist-custom-elements/duet-toolbar-link.js +4 -4
  224. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  225. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  226. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  227. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  228. package/lib/dist-custom-elements/duet-tray.js +5 -5
  229. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  230. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  231. package/lib/dist-custom-elements/duet-upload.js +20 -20
  232. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  233. package/lib/dist-custom-elements/index.js +1 -1
  234. package/lib/dist-custom-elements/{p-2eb3a0a6.js → p-01270b45.js} +7 -7
  235. package/lib/dist-custom-elements/{p-85d03f96.js → p-0e282936.js} +7 -7
  236. package/lib/dist-custom-elements/{p-05d1dc5a.js → p-162263aa.js} +1 -1
  237. package/lib/dist-custom-elements/{p-266a745d.js → p-1c02d280.js} +12 -12
  238. package/lib/dist-custom-elements/{p-f2f1b5a7.js → p-22af2160.js} +1 -1
  239. package/lib/dist-custom-elements/{p-4a8b7174.js → p-24aae259.js} +3 -3
  240. package/lib/dist-custom-elements/{p-2adcd550.js → p-2f3372c0.js} +1 -1
  241. package/lib/dist-custom-elements/{p-4921b11d.js → p-32b30c68.js} +6 -6
  242. package/lib/{esm/nudge-560904c3.js → dist-custom-elements/p-432baa8a.js} +3 -6
  243. package/lib/dist-custom-elements/{p-73378f6e.js → p-46ff61f9.js} +3 -3
  244. package/lib/dist-custom-elements/{p-74379770.js → p-480a5be7.js} +3 -3
  245. package/lib/dist-custom-elements/{p-612c5258.js → p-55b3b241.js} +1 -1
  246. package/lib/dist-custom-elements/{p-851603d1.js → p-659bf49b.js} +2 -2
  247. package/lib/dist-custom-elements/{p-186cbc8e.js → p-6c16fe57.js} +1 -1
  248. package/lib/dist-custom-elements/{p-7d00dae6.js → p-6c770205.js} +4 -4
  249. package/lib/dist-custom-elements/{p-9e8ed1f4.js → p-71297fec.js} +3 -3
  250. package/lib/dist-custom-elements/{p-7a0d0ba1.js → p-74e94bc1.js} +1 -1
  251. package/lib/dist-custom-elements/{p-b3d7a5f1.js → p-78b427e2.js} +7 -7
  252. package/lib/dist-custom-elements/{p-e835e6e8.js → p-7b274ffe.js} +3 -3
  253. package/lib/dist-custom-elements/{p-399efbd2.js → p-84c65409.js} +4 -4
  254. package/lib/dist-custom-elements/{p-77ec763f.js → p-8ac1057e.js} +5 -5
  255. package/lib/dist-custom-elements/{p-7b2b8c0f.js → p-8d7e2f66.js} +5 -5
  256. package/lib/dist-custom-elements/{p-08fb93f2.js → p-925ad8ed.js} +3 -3
  257. package/lib/dist-custom-elements/{p-0e524bb9.js → p-9e520c3a.js} +5 -5
  258. package/lib/dist-custom-elements/{p-a3cc656c.js → p-a64a4c3b.js} +10 -10
  259. package/lib/dist-custom-elements/{p-e436057c.js → p-a79c1568.js} +3 -3
  260. package/lib/dist-custom-elements/{p-05927f57.js → p-abd29848.js} +3 -3
  261. package/lib/dist-custom-elements/{p-5219d0c0.js → p-ba7a34cd.js} +12 -12
  262. package/lib/dist-custom-elements/{p-da336880.js → p-bf9ea499.js} +1 -1
  263. package/lib/dist-custom-elements/{p-48e9e036.js → p-ce7a0836.js} +1 -1
  264. package/lib/dist-custom-elements/{p-cdfcec05.js → p-d019896a.js} +1 -1
  265. package/lib/dist-custom-elements/{p-51067c1c.js → p-d0cac9bf.js} +4 -4
  266. package/lib/dist-custom-elements/{p-1c5edaed.js → p-d363a6c4.js} +4 -4
  267. package/lib/dist-custom-elements/{p-4e6ddeed.js → p-dabae35a.js} +4 -4
  268. package/lib/dist-custom-elements/{p-896598da.js → p-ef176315.js} +1 -1
  269. package/lib/duet/duet.esm.js +1 -1
  270. package/lib/duet/duet.js +1 -1
  271. package/lib/duet/p-049a6e11.system.entry.js +4 -0
  272. package/lib/duet/{p-4da04479.system.entry.js → p-0521fafd.system.entry.js} +1 -1
  273. package/lib/duet/{p-326cfdbf.entry.js → p-052388fa.entry.js} +1 -1
  274. package/lib/duet/p-0717c4c7.entry.js +4 -0
  275. package/lib/duet/{p-712d71ac.system.entry.js → p-080eb720.system.entry.js} +1 -1
  276. package/lib/duet/p-0a29f14a.entry.js +4 -0
  277. package/lib/duet/{p-3714093b.system.entry.js → p-0c40e7e7.system.entry.js} +1 -1
  278. package/lib/duet/{p-5034e406.system.entry.js → p-11dba68c.system.entry.js} +1 -1
  279. package/lib/duet/p-155b532a.system.js +4 -0
  280. package/lib/duet/{p-800cf79d.system.entry.js → p-159c8e28.system.entry.js} +1 -1
  281. package/lib/duet/{p-e544c1cf.entry.js → p-1ab09b3e.entry.js} +1 -1
  282. package/lib/duet/{p-03e5d91b.system.entry.js → p-1b446001.system.entry.js} +1 -1
  283. package/lib/duet/p-1c05d649.system.js +5 -0
  284. package/lib/duet/{p-0f56cb07.system.entry.js → p-1fcdd1b4.system.entry.js} +1 -1
  285. package/lib/duet/{p-48ca6f43.system.entry.js → p-216daf71.system.entry.js} +1 -1
  286. package/lib/duet/{p-291093f3.system.entry.js → p-22879034.system.entry.js} +1 -1
  287. package/lib/duet/{p-2cb7d804.system.entry.js → p-2365860c.system.entry.js} +1 -1
  288. package/lib/duet/{p-bf7f3d46.entry.js → p-23d0d56b.entry.js} +1 -1
  289. package/lib/duet/{p-302b75ec.entry.js → p-23e577ac.entry.js} +1 -1
  290. package/lib/duet/{p-92d7de4d.entry.js → p-24f340af.entry.js} +1 -1
  291. package/lib/duet/p-25ce6276.entry.js +4 -0
  292. package/lib/duet/p-278295a6.entry.js +4 -0
  293. package/lib/duet/p-2b18fb02.entry.js +4 -0
  294. package/lib/duet/p-2c360aa2.entry.js +4 -0
  295. package/lib/duet/p-2f7f41b7.entry.js +4 -0
  296. package/lib/duet/p-307ad618.entry.js +4 -0
  297. package/lib/duet/p-32128bec.system.entry.js +4 -0
  298. package/lib/duet/p-33842a71.system.entry.js +4 -0
  299. package/lib/duet/p-3432e6d7.entry.js +4 -0
  300. package/lib/duet/{p-7a649b03.system.entry.js → p-3452a600.system.entry.js} +1 -1
  301. package/lib/duet/p-3636a303.entry.js +4 -0
  302. package/lib/duet/p-36625239.entry.js +4 -0
  303. package/lib/duet/p-36e2660a.system.entry.js +4 -0
  304. package/lib/duet/{p-ba297ed9.system.entry.js → p-373da7e9.system.entry.js} +1 -1
  305. package/lib/duet/{p-352235b9.system.entry.js → p-3823931d.system.entry.js} +1 -1
  306. package/lib/duet/p-3a8e9b7d.entry.js +4 -0
  307. package/lib/duet/p-3da3807f.entry.js +4 -0
  308. package/lib/duet/p-3e12c85b.entry.js +4 -0
  309. package/lib/duet/{p-c8dc47b7.system.entry.js → p-3ef4e70b.system.entry.js} +1 -1
  310. package/lib/duet/p-432baa8a.js +4 -0
  311. package/lib/duet/{p-d6cff7d0.entry.js → p-439a6589.entry.js} +1 -1
  312. package/lib/duet/{p-9e992b21.system.entry.js → p-43b5a747.system.entry.js} +1 -1
  313. package/lib/duet/p-46007ea5.system.entry.js +4 -0
  314. package/lib/duet/p-4a8c2fbd.entry.js +4 -0
  315. package/lib/duet/{p-25d9c496.system.entry.js → p-4b63bf44.system.entry.js} +1 -1
  316. package/lib/duet/p-4d457562.entry.js +4 -0
  317. package/lib/duet/p-4d469e8a.entry.js +4 -0
  318. package/lib/duet/{p-dd149ee6.system.entry.js → p-4dee86cc.system.entry.js} +1 -1
  319. package/lib/duet/p-4f387d8d.system.entry.js +4 -0
  320. package/lib/duet/{p-bc4c2a48.entry.js → p-55d8afce.entry.js} +1 -1
  321. package/lib/duet/p-55daf42a.entry.js +4 -0
  322. package/lib/duet/p-579599b1.entry.js +4 -0
  323. package/lib/duet/{p-38e3ee11.system.entry.js → p-597b4abf.system.entry.js} +1 -1
  324. package/lib/duet/{p-e6e8c381.system.entry.js → p-5988794d.system.entry.js} +1 -1
  325. package/lib/duet/p-5cf4e9fa.entry.js +4 -0
  326. package/lib/duet/p-5d2d1ee9.entry.js +4 -0
  327. package/lib/duet/p-6099439d.entry.js +4 -0
  328. package/lib/duet/p-60e24406.entry.js +4 -0
  329. package/lib/duet/p-64ae892b.entry.js +4 -0
  330. package/lib/duet/p-655c5ef8.system.entry.js +4 -0
  331. package/lib/duet/{p-47dd74d6.system.entry.js → p-657d12c6.system.entry.js} +1 -1
  332. package/lib/duet/p-68eefbc0.entry.js +4 -0
  333. package/lib/duet/p-6a28213a.entry.js +4 -0
  334. package/lib/duet/p-6c0a2ef4.entry.js +4 -0
  335. package/lib/duet/p-6c13d426.entry.js +4 -0
  336. package/lib/duet/{p-8666b6f2.entry.js → p-6c20accb.entry.js} +1 -1
  337. package/lib/duet/{p-0a54e093.system.entry.js → p-6d35c23c.system.entry.js} +1 -1
  338. package/lib/duet/p-70688378.entry.js +4 -0
  339. package/lib/duet/{p-271dc3df.system.entry.js → p-71a45359.system.entry.js} +1 -1
  340. package/lib/duet/p-73093b97.entry.js +4 -0
  341. package/lib/duet/p-74a48271.entry.js +4 -0
  342. package/lib/duet/{p-0dab0217.entry.js → p-75a7542b.entry.js} +1 -1
  343. package/lib/duet/p-76bdf878.system.entry.js +4 -0
  344. package/lib/duet/p-77c137be.entry.js +4 -0
  345. package/lib/duet/{p-538d0276.entry.js → p-77db8b7e.entry.js} +1 -1
  346. package/lib/duet/p-77de34a7.entry.js +4 -0
  347. package/lib/duet/{p-0173b1db.system.entry.js → p-78958e35.system.entry.js} +1 -1
  348. package/lib/duet/p-78dce48d.entry.js +4 -0
  349. package/lib/duet/{p-2690079d.system.entry.js → p-7bcb3908.system.entry.js} +1 -1
  350. package/lib/duet/p-7c19a049.entry.js +4 -0
  351. package/lib/duet/p-7d5115f0.system.entry.js +4 -0
  352. package/lib/duet/{p-0e0a1105.system.entry.js → p-7db54371.system.entry.js} +1 -1
  353. package/lib/duet/{p-4aaecd69.system.entry.js → p-7e2f1643.system.entry.js} +1 -1
  354. package/lib/duet/p-80734ccb.entry.js +4 -0
  355. package/lib/duet/{p-ef0966d6.system.entry.js → p-812b9a45.system.entry.js} +1 -1
  356. package/lib/duet/{p-df7e3964.system.entry.js → p-819906af.system.entry.js} +1 -1
  357. package/lib/duet/{p-1bd82ee4.system.entry.js → p-821002cc.system.entry.js} +1 -1
  358. package/lib/duet/p-8341e3d0.js +4 -0
  359. package/lib/duet/{p-bf286e4e.system.entry.js → p-84a8f374.system.entry.js} +1 -1
  360. package/lib/duet/p-8542bb1d.entry.js +4 -0
  361. package/lib/duet/{p-a95dc83f.system.entry.js → p-87d24f60.system.entry.js} +1 -1
  362. package/lib/duet/{p-c04f1ef9.entry.js → p-8a6d783c.entry.js} +1 -1
  363. package/lib/duet/{p-4eeb0034.system.entry.js → p-8ab86b55.system.entry.js} +1 -1
  364. package/lib/duet/p-8ac1659f.entry.js +4 -0
  365. package/lib/duet/{p-3fd63941.system.entry.js → p-8bb82291.system.entry.js} +1 -1
  366. package/lib/duet/{p-53397ad0.system.entry.js → p-8c2eb582.system.entry.js} +1 -1
  367. package/lib/duet/{p-2c7ab65b.system.entry.js → p-8c6bc7ce.system.entry.js} +1 -1
  368. package/lib/duet/{p-81670fdc.system.entry.js → p-8dbc6fec.system.entry.js} +1 -1
  369. package/lib/duet/{p-f2f333b9.system.entry.js → p-8df0d238.system.entry.js} +1 -1
  370. package/lib/duet/p-923302a6.entry.js +4 -0
  371. package/lib/duet/p-92f87d29.system.entry.js +4 -0
  372. package/lib/duet/p-94260821.entry.js +4 -0
  373. package/lib/duet/p-95e2628e.entry.js +4 -0
  374. package/lib/duet/{p-1c293f30.system.entry.js → p-973db87a.system.entry.js} +2 -2
  375. package/lib/duet/{p-66609411.system.entry.js → p-97db51fd.system.entry.js} +1 -1
  376. package/lib/duet/p-9dd2e8b7.entry.js +4 -0
  377. package/lib/duet/{p-ab79e49a.system.entry.js → p-9f11fac6.system.entry.js} +1 -1
  378. package/lib/duet/{p-e40973b9.system.entry.js → p-a077314f.system.entry.js} +1 -1
  379. package/lib/duet/{p-ccb3bf1b.system.entry.js → p-a36d79bb.system.entry.js} +1 -1
  380. package/lib/duet/{p-9f3b42d3.system.entry.js → p-a834b129.system.entry.js} +1 -1
  381. package/lib/duet/p-a83f7b5d.entry.js +4 -0
  382. package/lib/duet/{p-c2d6c479.system.entry.js → p-abe3d970.system.entry.js} +1 -1
  383. package/lib/duet/p-adf27b5b.entry.js +4 -0
  384. package/lib/duet/{p-72441f44.system.entry.js → p-aec26ab1.system.entry.js} +1 -1
  385. package/lib/duet/p-b0f26d1f.entry.js +4 -0
  386. package/lib/duet/{p-044464f3.system.entry.js → p-b5b09897.system.entry.js} +1 -1
  387. package/lib/duet/p-b8873438.entry.js +4 -0
  388. package/lib/duet/{p-a60fe92f.entry.js → p-ba876000.entry.js} +1 -1
  389. package/lib/duet/{p-e3cc006d.system.entry.js → p-bae4cd54.system.entry.js} +1 -1
  390. package/lib/duet/p-bc56ef14.entry.js +4 -0
  391. package/lib/duet/p-bc6b41df.entry.js +4 -0
  392. package/lib/duet/{p-9ceaa6b2.system.entry.js → p-bd190b40.system.entry.js} +1 -1
  393. package/lib/duet/p-bdaebb9e.entry.js +4 -0
  394. package/lib/duet/{p-a94020db.system.entry.js → p-bdfdecdf.system.entry.js} +1 -1
  395. package/lib/duet/{p-21a15388.system.entry.js → p-bec61f61.system.entry.js} +1 -1
  396. package/lib/duet/{p-c7f975fc.system.entry.js → p-bf3be553.system.entry.js} +2 -2
  397. package/lib/duet/p-c078dccf.entry.js +4 -0
  398. package/lib/duet/{p-cafbb204.system.entry.js → p-c346eab9.system.entry.js} +1 -1
  399. package/lib/duet/{p-0a978191.system.entry.js → p-c40681e4.system.entry.js} +1 -1
  400. package/lib/duet/p-c4421950.entry.js +4 -0
  401. package/lib/duet/p-c531901e.entry.js +4 -0
  402. package/lib/duet/p-c67f6e71.entry.js +4 -0
  403. package/lib/duet/p-c876c531.entry.js +4 -0
  404. package/lib/duet/p-c9624ff8.system.entry.js +4 -0
  405. package/lib/duet/{p-b7b793e8.system.entry.js → p-cc833893.system.entry.js} +2 -2
  406. package/lib/duet/{p-4560aa78.system.entry.js → p-cecf203f.system.entry.js} +1 -1
  407. package/lib/duet/p-cf1897db.entry.js +4 -0
  408. package/lib/duet/{p-932f2f90.system.entry.js → p-d166a0ec.system.entry.js} +1 -1
  409. package/lib/duet/p-d26dbeb9.entry.js +4 -0
  410. package/lib/duet/{p-4dbb28cd.system.entry.js → p-d3381766.system.entry.js} +1 -1
  411. package/lib/duet/{p-efa0e8d1.system.entry.js → p-d9e7da09.system.entry.js} +1 -1
  412. package/lib/duet/p-dad5df60.entry.js +4 -0
  413. package/lib/duet/p-dd8cdf29.entry.js +4 -0
  414. package/lib/duet/{p-7301b658.system.entry.js → p-decbebf5.system.entry.js} +1 -1
  415. package/lib/duet/p-dfe18019.entry.js +4 -0
  416. package/lib/duet/{p-a3c3240a.system.entry.js → p-e00b5c40.system.entry.js} +1 -1
  417. package/lib/duet/p-e3698acb.system.js +4 -0
  418. package/lib/duet/p-e413a6de.system.js +4 -0
  419. package/lib/duet/p-e566241e.system.entry.js +4 -0
  420. package/lib/duet/{p-b2e74c33.system.entry.js → p-e854cf9d.system.entry.js} +1 -1
  421. package/lib/duet/p-e9d559ff.entry.js +4 -0
  422. package/lib/duet/p-ec61f9ab.entry.js +4 -0
  423. package/lib/duet/{p-d84a3d86.system.entry.js → p-ed2b16ba.system.entry.js} +1 -1
  424. package/lib/duet/{p-e4188875.entry.js → p-f35b1e67.entry.js} +1 -1
  425. package/lib/duet/{p-71084e11.js → p-f832d9f4.js} +2 -2
  426. package/lib/duet/p-fa746683.entry.js +4 -0
  427. package/lib/duet/p-fcec1712.entry.js +4 -0
  428. package/lib/duet/{p-81b33aa2.system.entry.js → p-fdbe53c6.system.entry.js} +1 -1
  429. package/lib/duet/{p-29ee2456.system.entry.js → p-fe1d73a7.system.entry.js} +1 -1
  430. package/lib/esm/duet-action-button.entry.js +3 -3
  431. package/lib/esm/duet-alert.entry.js +3 -3
  432. package/lib/esm/duet-badge.entry.js +3 -3
  433. package/lib/esm/duet-banner.entry.js +3 -3
  434. package/lib/esm/duet-breadcrumb.entry.js +3 -3
  435. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  436. package/lib/esm/duet-button_2.entry.js +3 -3
  437. package/lib/esm/duet-callout.entry.js +3 -3
  438. package/lib/esm/duet-caption_4.entry.js +6 -6
  439. package/lib/esm/duet-card.entry.js +3 -3
  440. package/lib/esm/duet-checkbox.entry.js +3 -3
  441. package/lib/esm/duet-checkmark.entry.js +1 -1
  442. package/lib/esm/duet-chip.entry.js +3 -3
  443. package/lib/esm/duet-choice_2.entry.js +38 -49
  444. package/lib/esm/duet-collapsible.entry.js +3 -3
  445. package/lib/esm/duet-combobox.entry.js +1 -1
  446. package/lib/esm/duet-contact-card.entry.js +3 -3
  447. package/lib/esm/duet-cookie-consent.entry.js +3 -3
  448. package/lib/esm/duet-date-picker.entry.js +4 -4
  449. package/lib/esm/duet-divider_2.entry.js +1 -1
  450. package/lib/esm/duet-editable-table_3.entry.js +4 -4
  451. package/lib/esm/duet-empty-state.entry.js +3 -3
  452. package/lib/esm/duet-fieldset.entry.js +3 -3
  453. package/lib/esm/duet-footer.entry.js +3 -3
  454. package/lib/esm/duet-grid_2.entry.js +1 -1
  455. package/lib/esm/duet-header_2.entry.js +3 -3
  456. package/lib/esm/duet-hero.entry.js +3 -3
  457. package/lib/esm/duet-icon.entry.js +3 -3
  458. package/lib/esm/duet-input_2.entry.js +4 -4
  459. package/lib/esm/duet-layout.entry.js +1 -1
  460. package/lib/esm/duet-list_2.entry.js +1 -1
  461. package/lib/esm/duet-menu-bar-button.entry.js +3 -3
  462. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +3 -3
  463. package/lib/esm/duet-menu-bar-dropdown.entry.js +3 -3
  464. package/lib/esm/duet-menu-bar-link.entry.js +3 -3
  465. package/lib/esm/duet-menu-bar.entry.js +3 -3
  466. package/lib/esm/duet-modal.entry.js +4 -4
  467. package/lib/esm/duet-multiselect.entry.js +3 -3
  468. package/lib/esm/duet-nav.entry.js +1 -1
  469. package/lib/esm/duet-notification_2.entry.js +4 -4
  470. package/lib/esm/duet-number-input.entry.js +3 -3
  471. package/lib/esm/duet-page-heading.entry.js +3 -3
  472. package/lib/esm/duet-pagination_2.entry.js +4 -4
  473. package/lib/esm/duet-popup-menu-item.entry.js +3 -3
  474. package/lib/esm/duet-popup-menu.entry.js +1 -1
  475. package/lib/esm/duet-progress.entry.js +3 -3
  476. package/lib/esm/duet-promo-card.entry.js +3 -3
  477. package/lib/esm/duet-radio_2.entry.js +3 -3
  478. package/lib/esm/duet-range-slider.entry.js +3 -3
  479. package/lib/esm/duet-scrollable_3.entry.js +5 -5
  480. package/lib/esm/duet-section-layout.entry.js +1 -1
  481. package/lib/esm/duet-select.entry.js +3 -3
  482. package/lib/esm/duet-shaped-image.entry.js +1 -1
  483. package/lib/esm/duet-show-more.entry.js +3 -3
  484. package/lib/esm/duet-slideout-lang.entry.js +3 -3
  485. package/lib/esm/duet-slideout-link.entry.js +3 -3
  486. package/lib/esm/duet-slideout-panel-dropdown.entry.js +3 -3
  487. package/lib/esm/duet-slideout-panel.entry.js +4 -4
  488. package/lib/esm/duet-slideout.entry.js +51 -19
  489. package/lib/esm/duet-step_2.entry.js +4 -4
  490. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +3 -3
  491. package/lib/esm/duet-submenu-bar-dropdown.entry.js +3 -3
  492. package/lib/esm/duet-submenu-bar-link.entry.js +3 -3
  493. package/lib/esm/duet-submenu-bar.entry.js +3 -3
  494. package/lib/esm/duet-textarea.entry.js +3 -3
  495. package/lib/esm/duet-toggle.entry.js +3 -3
  496. package/lib/esm/duet-toolbar-dropdown-link.entry.js +3 -3
  497. package/lib/esm/duet-toolbar-dropdown.entry.js +3 -3
  498. package/lib/esm/duet-toolbar-link.entry.js +3 -3
  499. package/lib/esm/duet-toolbar.entry.js +1 -1
  500. package/lib/esm/duet-tooltip-button_2.entry.js +5 -5
  501. package/lib/esm/duet-tooltip.entry.js +3 -3
  502. package/lib/esm/duet-tray.entry.js +3 -3
  503. package/lib/esm/duet-upload-aria-status.entry.js +3 -3
  504. package/lib/esm/duet-upload-item.entry.js +3 -3
  505. package/lib/esm/duet-visually-hidden.entry.js +3 -3
  506. package/lib/esm/duet.js +3 -3
  507. package/lib/esm/{focus-utils-a2bc44e9.js → focus-utils-33e8d53f.js} +1 -1
  508. package/lib/esm/{index-755fb199.js → index-62aa2798.js} +2 -9
  509. package/lib/esm/loader.js +3 -3
  510. package/lib/{dist-custom-elements/p-040f8831.js → esm/nudge-350af17e.js} +3 -6
  511. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  512. package/lib/esm-es5/duet-alert.entry.js +1 -1
  513. package/lib/esm-es5/duet-badge.entry.js +1 -1
  514. package/lib/esm-es5/duet-banner.entry.js +1 -1
  515. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  516. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  517. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  518. package/lib/esm-es5/duet-callout.entry.js +1 -1
  519. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  520. package/lib/esm-es5/duet-card.entry.js +2 -2
  521. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  522. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  523. package/lib/esm-es5/duet-chip.entry.js +1 -1
  524. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  525. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  526. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  527. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  528. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  529. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  530. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  531. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  532. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  533. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  534. package/lib/esm-es5/duet-footer.entry.js +1 -1
  535. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  536. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  537. package/lib/esm-es5/duet-hero.entry.js +1 -1
  538. package/lib/esm-es5/duet-icon.entry.js +2 -2
  539. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  540. package/lib/esm-es5/duet-layout.entry.js +1 -1
  541. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  542. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  543. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  544. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  545. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  546. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  547. package/lib/esm-es5/duet-modal.entry.js +1 -1
  548. package/lib/esm-es5/duet-multiselect.entry.js +2 -2
  549. package/lib/esm-es5/duet-nav.entry.js +1 -1
  550. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  551. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  552. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  553. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  554. package/lib/esm-es5/duet-popup-menu-item.entry.js +1 -1
  555. package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
  556. package/lib/esm-es5/duet-progress.entry.js +1 -1
  557. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  558. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  559. package/lib/esm-es5/duet-range-slider.entry.js +2 -2
  560. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  561. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  562. package/lib/esm-es5/duet-select.entry.js +1 -1
  563. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  564. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  565. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  566. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  567. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  568. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  569. package/lib/esm-es5/duet-slideout.entry.js +2 -2
  570. package/lib/esm-es5/duet-step_2.entry.js +2 -2
  571. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  572. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  573. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  574. package/lib/esm-es5/duet-submenu-bar.entry.js +2 -2
  575. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  576. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  577. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  578. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  579. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  580. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  581. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  582. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  583. package/lib/esm-es5/duet-tray.entry.js +1 -1
  584. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  585. package/lib/esm-es5/duet-upload-item.entry.js +1 -1
  586. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  587. package/lib/esm-es5/duet.js +1 -1
  588. package/lib/esm-es5/{focus-utils-a2bc44e9.js → focus-utils-33e8d53f.js} +1 -1
  589. package/lib/esm-es5/index-62aa2798.js +5 -0
  590. package/lib/esm-es5/loader.js +1 -1
  591. package/lib/esm-es5/nudge-350af17e.js +4 -0
  592. package/lib/types/components/duet-choice/duet-choice.d.ts +9 -0
  593. package/lib/types/components/duet-choice-group/duet-choice-group.d.ts +4 -2
  594. package/lib/types/components/duet-slideout/duet-slideout.d.ts +16 -0
  595. package/lib/types/components.d.ts +26 -0
  596. package/lib/types/utils/nudge.d.ts +1 -1
  597. package/package.json +5 -5
  598. package/lib/duet/p-040f8831.js +0 -4
  599. package/lib/duet/p-08b472ed.system.js +0 -4
  600. package/lib/duet/p-12dbf60e.entry.js +0 -4
  601. package/lib/duet/p-1837a1d1.entry.js +0 -4
  602. package/lib/duet/p-1a73c53b.entry.js +0 -4
  603. package/lib/duet/p-212aa853.entry.js +0 -4
  604. package/lib/duet/p-21332da6.entry.js +0 -4
  605. package/lib/duet/p-229b9fb7.entry.js +0 -4
  606. package/lib/duet/p-236f39e6.entry.js +0 -4
  607. package/lib/duet/p-2431baa9.entry.js +0 -4
  608. package/lib/duet/p-268daeba.entry.js +0 -4
  609. package/lib/duet/p-276b3c6e.entry.js +0 -4
  610. package/lib/duet/p-28bf2707.entry.js +0 -4
  611. package/lib/duet/p-28c2ed7a.entry.js +0 -4
  612. package/lib/duet/p-2f74551a.entry.js +0 -4
  613. package/lib/duet/p-2ff57c5e.entry.js +0 -4
  614. package/lib/duet/p-31526713.entry.js +0 -4
  615. package/lib/duet/p-413bdf00.entry.js +0 -4
  616. package/lib/duet/p-4780158b.system.entry.js +0 -4
  617. package/lib/duet/p-4b1e9cd7.entry.js +0 -4
  618. package/lib/duet/p-4d2a6eaa.entry.js +0 -4
  619. package/lib/duet/p-54a3fc93.system.entry.js +0 -4
  620. package/lib/duet/p-55fc322c.entry.js +0 -4
  621. package/lib/duet/p-58b34b88.entry.js +0 -4
  622. package/lib/duet/p-59b05375.entry.js +0 -4
  623. package/lib/duet/p-67c6ed8d.entry.js +0 -4
  624. package/lib/duet/p-6e8d932c.system.entry.js +0 -4
  625. package/lib/duet/p-719ce9bb.entry.js +0 -4
  626. package/lib/duet/p-72dd3aaf.entry.js +0 -4
  627. package/lib/duet/p-744bbd20.system.js +0 -4
  628. package/lib/duet/p-784a7e09.entry.js +0 -4
  629. package/lib/duet/p-7dfb5873.entry.js +0 -4
  630. package/lib/duet/p-7f821bb9.entry.js +0 -4
  631. package/lib/duet/p-83b6f665.entry.js +0 -4
  632. package/lib/duet/p-843f140e.entry.js +0 -4
  633. package/lib/duet/p-89fb88a2.entry.js +0 -4
  634. package/lib/duet/p-8a63793d.entry.js +0 -4
  635. package/lib/duet/p-8e24e881.entry.js +0 -4
  636. package/lib/duet/p-9022d39d.entry.js +0 -4
  637. package/lib/duet/p-93f44760.entry.js +0 -4
  638. package/lib/duet/p-94994761.entry.js +0 -4
  639. package/lib/duet/p-96ab4ddb.entry.js +0 -4
  640. package/lib/duet/p-9b7cbcb6.system.entry.js +0 -4
  641. package/lib/duet/p-9e1700b8.entry.js +0 -4
  642. package/lib/duet/p-a22a0017.entry.js +0 -4
  643. package/lib/duet/p-a2c2160f.entry.js +0 -4
  644. package/lib/duet/p-a6db5cb4.js +0 -4
  645. package/lib/duet/p-ac4688c8.entry.js +0 -4
  646. package/lib/duet/p-ac782d97.entry.js +0 -4
  647. package/lib/duet/p-b3f79bd8.entry.js +0 -4
  648. package/lib/duet/p-b839e79a.entry.js +0 -4
  649. package/lib/duet/p-bbc1c8ea.entry.js +0 -4
  650. package/lib/duet/p-c2356a52.entry.js +0 -4
  651. package/lib/duet/p-c343cf83.system.entry.js +0 -4
  652. package/lib/duet/p-c3b9d5ec.entry.js +0 -4
  653. package/lib/duet/p-c4fbe10f.entry.js +0 -4
  654. package/lib/duet/p-c503f559.entry.js +0 -4
  655. package/lib/duet/p-c97109b5.system.js +0 -4
  656. package/lib/duet/p-cd6530bc.entry.js +0 -4
  657. package/lib/duet/p-cdc76da1.system.entry.js +0 -4
  658. package/lib/duet/p-cea1672a.entry.js +0 -4
  659. package/lib/duet/p-cf023bd7.entry.js +0 -4
  660. package/lib/duet/p-cf6f2ae5.entry.js +0 -4
  661. package/lib/duet/p-d077942e.entry.js +0 -4
  662. package/lib/duet/p-d09cb9c8.entry.js +0 -4
  663. package/lib/duet/p-d124fbb9.system.entry.js +0 -4
  664. package/lib/duet/p-d2106b43.entry.js +0 -4
  665. package/lib/duet/p-d6165161.entry.js +0 -4
  666. package/lib/duet/p-d82d004f.system.entry.js +0 -4
  667. package/lib/duet/p-d838b19b.entry.js +0 -4
  668. package/lib/duet/p-d87a94a0.entry.js +0 -4
  669. package/lib/duet/p-d8ef94e6.entry.js +0 -4
  670. package/lib/duet/p-db2aaa8d.system.entry.js +0 -4
  671. package/lib/duet/p-e5d9d99e.entry.js +0 -4
  672. package/lib/duet/p-e672079a.system.entry.js +0 -4
  673. package/lib/duet/p-ed063bbd.system.js +0 -5
  674. package/lib/duet/p-ed082ad1.system.entry.js +0 -4
  675. package/lib/duet/p-f58375e0.entry.js +0 -4
  676. package/lib/duet/p-f851e807.entry.js +0 -4
  677. package/lib/duet/p-fa861bef.entry.js +0 -4
  678. package/lib/duet/p-fed4d34a.system.entry.js +0 -4
  679. package/lib/esm-es5/index-755fb199.js +0 -5
  680. package/lib/esm-es5/nudge-560904c3.js +0 -4
package/hydrate/index.js CHANGED
@@ -6138,6 +6138,15 @@ const disconnectLanguageChangeObserver = (component) => {
6138
6138
  languageChangeTargets.delete(component);
6139
6139
  };
6140
6140
 
6141
+ /**
6142
+ * This function is a workaround for a bug in Chromium-based browsers, where building the accessibility tree fails
6143
+ * with nested shadow roots. See https://atlassian.lahitapiola.fi/jira/browse/DUET-780
6144
+ */
6145
+ function nudge(_component) {
6146
+ // eslint-disable-next-line
6147
+ setTimeout(() => { }, 10);
6148
+ }
6149
+
6141
6150
  const colorWarning = "rgb(247, 178, 40)";
6142
6151
  const colorGrayDarker = "rgb(101, 119, 135)";
6143
6152
  const colorGrayLighter = "rgb(245, 248, 250)";
@@ -6657,6 +6666,7 @@ class DuetActionButton {
6657
6666
  inheritGlobalTheme(this);
6658
6667
  }
6659
6668
  componentDidLoad() {
6669
+ nudge();
6660
6670
  }
6661
6671
  connectedCallback() {
6662
6672
  connectLanguageChangeObserver(this, { prop: "accessibleLabel", defaults: "accessibleLabelsDefaults" });
@@ -6802,6 +6812,7 @@ class DuetAlert {
6802
6812
  if (this.autoDismiss) {
6803
6813
  this.timeoutID = setTimeout(() => this.handleDismiss(), this.autoDismiss);
6804
6814
  }
6815
+ nudge();
6805
6816
  }
6806
6817
  connectedCallback() {
6807
6818
  connectLanguageChangeObserver(this, { prop: "accessibleLabel", defaults: "accessibleLabelDefaults" });
@@ -6906,6 +6917,7 @@ class DuetBadge {
6906
6917
  inheritGlobalTheme(this);
6907
6918
  }
6908
6919
  componentDidLoad() {
6920
+ nudge();
6909
6921
  }
6910
6922
  /**
6911
6923
  * render() function
@@ -6963,6 +6975,7 @@ class DuetBanner {
6963
6975
  this.hasActionSlot = !!this.element.querySelector('[slot="action"]');
6964
6976
  }
6965
6977
  componentDidLoad() {
6978
+ nudge();
6966
6979
  }
6967
6980
  /**
6968
6981
  * render() function
@@ -7028,6 +7041,7 @@ class DuetBreadcrumb {
7028
7041
  inheritGlobalTheme(this);
7029
7042
  }
7030
7043
  componentDidLoad() {
7044
+ nudge();
7031
7045
  }
7032
7046
  connectedCallback() {
7033
7047
  connectLanguageChangeObserver(this);
@@ -7203,6 +7217,7 @@ class DuetButton {
7203
7217
  }
7204
7218
  }
7205
7219
  componentDidLoad() {
7220
+ nudge();
7206
7221
  }
7207
7222
  connectedCallback() {
7208
7223
  this.proxyButton = document.createElement("button");
@@ -7388,6 +7403,7 @@ class DuetCallout {
7388
7403
  this.hasAuthorSlot = !!this.element.querySelector('[slot="author"]');
7389
7404
  }
7390
7405
  componentDidLoad() {
7406
+ nudge();
7391
7407
  }
7392
7408
  /**
7393
7409
  * render() function
@@ -7436,6 +7452,7 @@ class DuetCaption {
7436
7452
  inheritGlobalTheme(this);
7437
7453
  }
7438
7454
  componentDidLoad() {
7455
+ nudge();
7439
7456
  }
7440
7457
  /**
7441
7458
  * render() function
@@ -7525,6 +7542,7 @@ class DuetCard {
7525
7542
  this.hasFooter = !!this.element.querySelector("[slot='footer']");
7526
7543
  }
7527
7544
  componentDidLoad() {
7545
+ nudge();
7528
7546
  }
7529
7547
  renderHeading() {
7530
7548
  const safeHeadingLevel = sanitizeString$1(this.headingLevel);
@@ -7674,6 +7692,7 @@ class DuetCheckbox {
7674
7692
  }
7675
7693
  }
7676
7694
  componentDidLoad() {
7695
+ nudge();
7677
7696
  }
7678
7697
  /**
7679
7698
  * Sets focus on the specified `duet-checkbox`. Use this method instead of the global
@@ -7929,6 +7948,7 @@ class DuetChip {
7929
7948
  this.popupSetUp();
7930
7949
  }
7931
7950
  componentDidLoad() {
7951
+ nudge();
7932
7952
  }
7933
7953
  /**
7934
7954
  * Sets focus. Use this method instead of the global focus().
@@ -8002,7 +8022,7 @@ const FocusGuard = ({ moveFocusTo }) => {
8002
8022
  return hAsync("div", { class: "duet-focus-guard", "aria-hidden": "true", tabIndex: 0, onFocus: () => focusElement(moveFocusTo) });
8003
8023
  };
8004
8024
 
8005
- const duetChoiceCss = "*.sc-duet-choice,*.sc-duet-choice::after,*.sc-duet-choice::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-choice-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;display:inline-flex;flex-direction:column;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-choice-h:last-child,.sc-duet-choice-h:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){.sc-duet-choice-h{width:100%}}.duet-expand.sc-duet-choice-h{width:100% !important}.duet-m-0.sc-duet-choice-h{margin:0 !important}.duet-fixed.sc-duet-choice-h{width:auto !important}.vertical.sc-duet-choice-h{margin-right:0 !important}@media (min-width: 48em){.horizontal.sc-duet-choice-h{margin-bottom:0 !important}}@media (min-width: 48em){.horizontal-responsive.sc-duet-choice-h{margin-bottom:0 !important;margin-right:16px !important}.horizontal-responsive.sc-duet-choice-h:last-child,.horizontal-responsive.sc-duet-choice-h:last-of-type{margin-right:0 !important}}.sc-duet-choice-h:last-child:not(:only-child){margin-right:0 !important}.duet-choice-card.sc-duet-choice{position:relative;display:block;width:100%;min-width:8rem;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:rgb(0, 41, 77) !important;text-align:left;background:rgb(255, 255, 255);border-width:2px}.duet-choice-card.duet-p-0.sc-duet-choice{padding:0 !important}.duet-choice-card.duet-m-0.sc-duet-choice{margin:0 !important}.duet-theme-turva.sc-duet-choice .duet-choice-card.sc-duet-choice{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58) !important}.duet-choice-card-flextainer.sc-duet-choice{display:flex}.duet-choice-label.sc-duet-choice{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:flex;gap:1rem;align-items:center;justify-content:flex-start;width:100%;height:100%;min-height:3.875rem;padding:1rem;font-size:1rem;font-weight:600;text-decoration:none;word-break:break-word;cursor:pointer;border:2px solid rgb(225, 227, 230);border-radius:4px;transition:background-color 150ms ease}.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-icon.sc-duet-choice,.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-text.sc-duet-choice{align-self:flex-start;margin-top:0.25rem}.duet-choice-label.sc-duet-choice>div.sc-duet-choice:last-child{flex:1;align-self:flex-start;justify-self:flex-end;margin-top:0.25rem}.has-info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-top-right-radius:0;border-bottom-right-radius:0}.info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-bottom-right-radius:0;border-bottom-left-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-theme-turva.sc-duet-choice .info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-label.sc-duet-choice:active{opacity:0.75;transition:none !important}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice{color:rgb(0, 119, 179) !important;background:rgb(243, 249, 252);border-color:rgb(0, 119, 179) !important}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice{color:rgb(23, 28, 58) !important;background:rgb(245, 245, 247);border-color:rgb(23, 28, 58) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(198, 12, 48)}.checked.collapsible.sc-duet-choice>.duet-choice-label.sc-duet-choice,.collapsible-force-expanded.collapsible.sc-duet-choice>.duet-choice-label.sc-duet-choice{padding-bottom:calc(1rem + 2px);border-bottom:0 !important;border-bottom-right-radius:0;border-bottom-left-radius:0}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.duet-theme-turva .info .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}input.sc-duet-choice:focus{outline:0}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3)}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2)}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(101, 119, 135) !important;cursor:default !important;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(101, 119, 135) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:hover,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:active,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:focus{box-shadow:none !important;opacity:1 !important;transition:none !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(116, 116, 117) !important;background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(116, 116, 117) !important}.checked.sc-duet-choice>input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(225, 227, 230) !important;border-color:rgb(225, 227, 230) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(228, 228, 230) !important;border-color:rgb(228, 228, 230) !important}.duet-checkmark-container.sc-duet-choice{position:relative;width:20px;height:20px;margin-left:auto;border:1px solid rgb(144, 149, 153);border-radius:4px;transition:border 300ms ease}.duet-theme-turva.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(0, 119, 179);border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58) !important}.duet-checkmark-container.duet-checkmark-radio.sc-duet-choice{border-radius:50%}[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice [disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 207, 209) !important}.checked.sc-duet-choice>[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 207, 209) !important}.duet-checkmark.sc-duet-choice{position:absolute;top:10px;left:3px;width:5.3333333333px;height:11.8518518519px;border-top:2px solid rgb(255, 255, 255);border-right:2px solid rgb(255, 255, 255);opacity:1;transform:scaleX(-1) rotate(135deg) translateZ(0);transform-origin:left top;animation-name:duet-checkmark;animation-duration:600ms;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes duet-checkmark{0%{width:0;height:0;opacity:1}20%{width:5.3333333333px;height:0;opacity:1}40%,100%{width:5.3333333333px;height:11.8518518519px;opacity:1}}.duet-choice-card-icon.sc-duet-choice{position:relative}.duet-choice-card-icon.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-section-hidden.sc-duet-choice{display:none}.duet-choice-card-info.duet-choice-card-collapsed.sc-duet-choice,.duet-choice-card-collapsed.duet-choice-card-collapsible.sc-duet-choice{position:relative;width:auto;padding:0 !important;background:unset !important;border:0;border-radius:0}.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:20px !important;position:relative;width:100%;font-weight:400;color:rgb(0, 41, 77);border:2px solid rgb(225, 227, 230);border-top:0;border-radius:0 0 4px 4px}@media (min-width: 36em){.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:28px !important}}.duet-theme-turva.sc-duet-choice .duet-choice-card-info.sc-duet-choice,.duet-theme-turva.sc-duet-choice .duet-choice-card-collapsible.sc-duet-choice{color:rgb(23, 28, 58);border-color:rgb(23, 28, 58)}.checked.sc-duet-choice>.duet-choice-card-info.sc-duet-choice,.checked.sc-duet-choice>.duet-choice-card-collapsible.sc-duet-choice{display:block}.duet-choice-card-info-expanded.sc-duet-choice,.duet-choice-card-collapsible-expanded.sc-duet-choice{display:block}.duet-choice-card-collapsible.sc-duet-choice{background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-top:0}.duet-choice-card-collapsible.duet-theme-turva.sc-duet-choice{background:rgb(255, 255, 255);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible.checked.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-choice-card-collapsible.checked.duet-theme-turva.sc-duet-choice{border-color:rgb(23, 28, 58)}.duet-choice-card-collapsible-disabled.sc-duet-choice{background:rgb(245, 248, 250);border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.checked.sc-duet-choice{border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.checked.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-card-info.sc-duet-choice{font-size:0.875rem;line-height:1.5;background:rgb(245, 248, 250);transition:150ms ease-out}.duet-choice-card-info.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-choice-info-toggle.sc-duet-choice{display:flex;flex-shrink:0;align-items:flex-start;justify-content:center;width:57.6px;padding-top:1.25rem;cursor:pointer;background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-left:0 none;border-top-right-radius:4px;border-bottom-right-radius:4px;-webkit-appearance:none;appearance:none}.duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 248, 250);border-bottom-color:transparent;border-bottom-right-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 245, 247)}.duet-choice-info-toggle[disabled].sc-duet-choice{pointer-events:none;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}.duet-choice-info-toggle[disabled].sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(144, 149, 153) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(116, 116, 117) !important}.duet-choice-info-toggle.sc-duet-choice:focus{outline:none}.user-is-tabbing.sc-duet-choice-h .duet-choice-info-toggle.sc-duet-choice:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.user-is-tabbing.sc-duet-choice-h .duet-theme-turva.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.checked.sc-duet-choice+.duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(0, 119, 179) !important}.duet-choice-info-toggle.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(198, 12, 48)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(116, 116, 117)}.duet-choice-input.sc-duet-choice{position:absolute !important;width:100%;height:100%;opacity:0}";
8025
+ const duetChoiceCss = "*.sc-duet-choice,*.sc-duet-choice::after,*.sc-duet-choice::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-choice-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:16px !important;margin-bottom:12px !important;display:inline-flex;flex-direction:column;width:auto;max-width:100%;vertical-align:bottom;-webkit-tap-highlight-color:transparent}.sc-duet-choice-h:last-child,.sc-duet-choice-h:last-of-type{margin-right:0 !important}@media (max-width: 35.9375em){.sc-duet-choice-h{width:100%}}.duet-expand.sc-duet-choice-h{width:100% !important}.duet-m-0.sc-duet-choice-h{margin:0 !important}.duet-fixed.sc-duet-choice-h{width:auto !important}.vertical.sc-duet-choice-h{margin-right:0 !important}@media (min-width: 48em){.horizontal.sc-duet-choice-h{margin-bottom:0 !important}}@media (min-width: 48em){.horizontal-responsive.sc-duet-choice-h{margin-bottom:0 !important;margin-right:16px !important}.horizontal-responsive.sc-duet-choice-h:last-child,.horizontal-responsive.sc-duet-choice-h:last-of-type{margin-right:0 !important}}.sc-duet-choice-h:last-child:not(:only-child){margin-right:0 !important}.duet-choice-card.sc-duet-choice{position:relative;display:block;width:100%;min-width:8rem;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;-webkit-hyphens:auto;hyphens:auto;line-height:1.1;color:rgb(0, 41, 77) !important;text-align:left;background:rgb(255, 255, 255);border-width:2px}.duet-choice-card.duet-p-0.sc-duet-choice{padding:0 !important}.duet-choice-card.duet-m-0.sc-duet-choice{margin:0 !important}.duet-theme-turva.sc-duet-choice .duet-choice-card.sc-duet-choice{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58) !important}.duet-choice-card-flextainer.sc-duet-choice{display:flex}.duet-choice-label.sc-duet-choice{-webkit-user-select:none;user-select:none;position:relative;z-index:100;display:flex;gap:1rem;align-items:center;justify-content:flex-start;width:100%;height:100%;min-height:3.875rem;padding:1rem;font-size:1rem;font-weight:600;text-decoration:none;word-break:break-word;cursor:pointer;border:2px solid rgb(225, 227, 230);border-radius:4px;transition:background-color 150ms ease}.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-icon.sc-duet-choice,.duet-choice-label.has-before-text.sc-duet-choice .duet-choice-card-text.sc-duet-choice{align-self:flex-start;margin-top:0.25rem}.duet-choice-label.sc-duet-choice>div.sc-duet-choice:last-child{flex:1;align-self:flex-start;justify-self:flex-end;margin-top:0.25rem}.has-info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-top-right-radius:0;border-bottom-right-radius:0}.info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-bottom-right-radius:0;border-bottom-left-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-theme-turva.sc-duet-choice .info.sc-duet-choice .duet-choice-label.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-label.sc-duet-choice:active{opacity:0.75;transition:none !important}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice{color:rgb(0, 119, 179) !important;background:rgb(243, 249, 252);border-color:rgb(0, 119, 179) !important}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice{color:rgb(23, 28, 58) !important;background:rgb(245, 245, 247);border-color:rgb(23, 28, 58) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(198, 12, 48)}.checked.collapsible.sc-duet-choice>.duet-choice-label.sc-duet-choice,.collapsible-force-expanded.collapsible.sc-duet-choice>.duet-choice-label.sc-duet-choice{padding-bottom:calc(1rem + 2px);border-bottom:0 !important;border-bottom-right-radius:0;border-bottom-left-radius:0}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked) .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.duet-theme-turva .info .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}input.sc-duet-choice:focus{outline:0}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3)}.user-is-tabbing.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:checked:focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2)}.user-is-tabbing.duet-theme-turva.sc-duet-choice-h input.sc-duet-choice:not(:checked):focus+.duet-choice-label.sc-duet-choice{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(101, 119, 135) !important;cursor:default !important;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(101, 119, 135) !important}input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:hover,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:active,input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice:focus{box-shadow:none !important;opacity:1 !important;transition:none !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{color:rgb(116, 116, 117) !important;background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-theme-turva.sc-duet-choice input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice .duet-checkmark.sc-duet-choice{border-color:rgb(116, 116, 117) !important}.checked.sc-duet-choice>input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(225, 227, 230) !important;border-color:rgb(225, 227, 230) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>input[disabled].sc-duet-choice+.duet-choice-label.sc-duet-choice{background:rgb(228, 228, 230) !important;border-color:rgb(228, 228, 230) !important}.duet-checkmark-container.sc-duet-choice{position:relative;width:20px;height:20px;margin-left:auto;border:1px solid rgb(144, 149, 153);border-radius:4px;transition:border 300ms ease}.duet-theme-turva.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(116, 116, 117)}.checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(0, 119, 179);border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>.duet-choice-label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58) !important}.duet-checkmark-container.duet-checkmark-radio.sc-duet-choice{border-radius:50%}[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice [disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{border-color:rgb(207, 207, 209) !important}.checked.sc-duet-choice>[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 210, 212) !important}.duet-theme-turva.sc-duet-choice .checked.sc-duet-choice>[disabled].sc-duet-choice+label.sc-duet-choice .duet-checkmark-container.sc-duet-choice{background:rgb(207, 207, 209) !important}.duet-checkmark.sc-duet-choice{position:absolute;top:10px;left:3px;width:5.3333333333px;height:11.8518518519px;border-top:2px solid rgb(255, 255, 255);border-right:2px solid rgb(255, 255, 255);opacity:1;transform:scaleX(-1) rotate(135deg) translateZ(0);transform-origin:left top;animation-name:duet-checkmark;animation-duration:600ms;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes duet-checkmark{0%{width:0;height:0;opacity:1}20%{width:5.3333333333px;height:0;opacity:1}40%,100%{width:5.3333333333px;height:11.8518518519px;opacity:1}}.duet-choice-card-icon.sc-duet-choice{position:relative}.duet-choice-card-icon.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-section-hidden.sc-duet-choice{display:none}.duet-choice-card-info.duet-choice-card-collapsed.sc-duet-choice,.duet-choice-card-collapsed.duet-choice-card-collapsible.sc-duet-choice{position:relative;width:auto;padding:0 !important;background:unset !important;border:0;border-radius:0}.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:20px !important;position:relative;width:100%;font-weight:400;color:rgb(0, 41, 77);border:2px solid rgb(225, 227, 230);border-top:0;border-radius:0 0 4px 4px}@media (min-width: 36em){.duet-choice-card-info.sc-duet-choice,.duet-choice-card-collapsible.sc-duet-choice{padding:28px !important}}.duet-theme-turva.sc-duet-choice .duet-choice-card-info.sc-duet-choice,.duet-theme-turva.sc-duet-choice .duet-choice-card-collapsible.sc-duet-choice{color:rgb(23, 28, 58);border-color:rgb(23, 28, 58)}.checked.sc-duet-choice>.duet-choice-card-info.sc-duet-choice,.checked.sc-duet-choice>.duet-choice-card-collapsible.sc-duet-choice{display:block}.duet-choice-card-info-expanded.sc-duet-choice,.duet-choice-card-collapsible-expanded.sc-duet-choice{display:block}.duet-choice-card-collapsible.sc-duet-choice{background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-top:0}.duet-choice-card-collapsible.duet-theme-turva.sc-duet-choice{background:rgb(255, 255, 255);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible.checked.sc-duet-choice{border-color:rgb(0, 119, 179)}.duet-choice-card-collapsible.checked.duet-theme-turva.sc-duet-choice{border-color:rgb(23, 28, 58)}.duet-choice-card-collapsible-disabled.sc-duet-choice{background:rgb(245, 248, 250);border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.checked.sc-duet-choice{border-color:rgb(225, 227, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-choice-card-collapsible-disabled.duet-theme-turva.checked.sc-duet-choice{border-color:rgb(228, 228, 230)}.duet-choice-card-info.sc-duet-choice{font-size:0.875rem;line-height:1.5;background:rgb(245, 248, 250);transition:150ms ease-out}.duet-choice-card-info.duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247);border-color:rgb(228, 228, 230)}.duet-choice-card-info.sc-duet-choice .duet-choice-info-container.sc-duet-choice:focus{outline:none}.duet-choice-card-info.duet-choice-card-collapsed .duet-choice-info-container.sc-duet-choice-s>*,.duet-choice-card-info.duet-choice-card-collapsed .duet-choice-info-container .sc-duet-choice-s>*{display:none}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-collapsible.sc-duet-choice:not(.checked){border-color:rgb(116, 116, 117)}.duet-choice-info-toggle.sc-duet-choice{display:flex;flex-shrink:0;align-items:flex-start;justify-content:center;width:57.6px;padding-top:1.25rem;cursor:pointer;background:rgb(255, 255, 255);border:2px solid rgb(225, 227, 230);border-left:0 none;border-top-right-radius:4px;border-bottom-right-radius:4px;-webkit-appearance:none;appearance:none}.duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 248, 250);border-bottom-color:transparent;border-bottom-right-radius:0}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle[aria-expanded=true].sc-duet-choice{background:rgb(245, 245, 247)}.duet-choice-info-toggle[disabled].sc-duet-choice{pointer-events:none;background:rgb(245, 248, 250) !important;border-color:rgb(225, 227, 230) !important}.duet-choice-info-toggle[disabled].sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(144, 149, 153) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice{background:rgb(245, 245, 247) !important;border-color:rgb(228, 228, 230) !important}.duet-choice-info-toggle[disabled].duet-theme-turva.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(116, 116, 117) !important}.duet-choice-info-toggle.sc-duet-choice:focus{outline:none}.user-is-tabbing.sc-duet-choice-h .duet-choice-info-toggle.sc-duet-choice:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.user-is-tabbing.sc-duet-choice-h .duet-theme-turva.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.checked.sc-duet-choice+.duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(0, 119, 179) !important}.duet-choice-info-toggle.sc-duet-choice duet-icon.sc-duet-choice{display:block}.duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(0, 119, 179)}.duet-theme-turva.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice .duet-choice-info-icon.sc-duet-choice{color:rgb(198, 12, 48)}.sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(144, 149, 153)}.duet-theme-turva .sc-duet-choice-h:not(.no-hover):not(.disabled):hover>.duet-choice-card-flextainer.sc-duet-choice .duet-choice-label.sc-duet-choice .duet-choice-info-toggle.sc-duet-choice{border-left-color:rgb(116, 116, 117)}.duet-choice-input.sc-duet-choice{position:absolute !important;width:100%;height:100%;opacity:0}";
8006
8026
 
8007
8027
  /**
8008
8028
  * @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
@@ -8015,6 +8035,8 @@ const duetChoiceCss = "*.sc-duet-choice,*.sc-duet-choice::after,*.sc-duet-choice
8015
8035
  class DuetChoice {
8016
8036
  constructor(hostRef) {
8017
8037
  registerInstance(this, hostRef);
8038
+ this.duetChoiceReady = createEvent$2(this, "duetChoiceReady", 7);
8039
+ this.duetChoiceRemove = createEvent$2(this, "duetChoiceRemove", 7);
8018
8040
  this.duetChange = createEvent$2(this, "duetChange", 7);
8019
8041
  this.duetFocus = createEvent$2(this, "duetFocus", 7);
8020
8042
  this.duetBlur = createEvent$2(this, "duetBlur", 7);
@@ -8089,6 +8111,12 @@ class DuetChoice {
8089
8111
  };
8090
8112
  this.toggleInfo = () => {
8091
8113
  this.isInfoOpen = !this.isInfoOpen;
8114
+ if (this.isInfoOpen) {
8115
+ setTimeout(() => {
8116
+ var _a;
8117
+ (_a = this.infoContainer) === null || _a === void 0 ? void 0 : _a.focus();
8118
+ });
8119
+ }
8092
8120
  };
8093
8121
  this.isHovering = false;
8094
8122
  this.isInfoOpen = false;
@@ -8138,8 +8166,10 @@ class DuetChoice {
8138
8166
  this.hasAdditional = hasSlot(this.element, "additional");
8139
8167
  this.hasLabel = hasSlot(this.element, "label");
8140
8168
  this.hasBeforeText = hasSlot(this.element, "before-text");
8169
+ this.duetChoiceReady.emit();
8141
8170
  }
8142
8171
  componentDidLoad() {
8172
+ nudge();
8143
8173
  }
8144
8174
  connectedCallback() {
8145
8175
  connectLanguageChangeObserver(this, [
@@ -8149,6 +8179,7 @@ class DuetChoice {
8149
8179
  }
8150
8180
  disconnectedCallback() {
8151
8181
  disconnectLanguageChangeObserver(this);
8182
+ this.duetChoiceRemove.emit();
8152
8183
  }
8153
8184
  /**
8154
8185
  * Component event handling.
@@ -8266,7 +8297,7 @@ class DuetChoice {
8266
8297
  }, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, onClick: this.toggleInfo, disabled: this.getDisabled(), "aria-expanded": this.isInfoOpen ? "true" : "false", "aria-label": `${this.infoLabel} ${this.label}`, "aria-controls": this.expandId, "aria-flowto": this.expandId, tabindex: this.type === "radio" && !this.checked ? "-1" : "0", type: "button" }, hAsync("duet-visually-hidden", { "aria-hidden": !this.isBlurred ? "true" : "false" }, this.accessibleLabelInfoButton), hAsync("div", { class: "duet-choice-info-icon" }, hAsync("duet-icon", { icon: messagingInfo.svg, margin: "none", size: "small", color: "currentColor" }))))), this.collapsible || this.hasInfo ? (hAsync("div", { class: this.getClassNames(), id: this.expandId }, hAsync("span", { class: {
8267
8298
  "duet-choice-section-visible": this.collapsible ? this.getExpanded() : this.isInfoOpen,
8268
8299
  "duet-choice-section-hidden": this.collapsible ? !this.getExpanded() : !this.isInfoOpen,
8269
- } }, hAsync("span", { id: this.headerId }, hAsync("slot", { name: "header" })), this.hasInfo ? (hAsync("span", null, hAsync("span", { "aria-relevant": "all", "aria-atomic": "true", "aria-live": this.isInfoOpen ? "polite" : "off" }, hAsync("slot", { name: "info" })), hAsync("slot", null))) : (hAsync("span", null, hAsync("slot", null)))), this.isInfoOpen && hAsync(FocusGuard, { moveFocusTo: this.infoButtonEl }))) : null));
8300
+ } }, hAsync("span", { id: this.headerId }, hAsync("slot", { name: "header" })), this.hasInfo ? (hAsync("span", { ref: span => (this.infoContainer = span), tabindex: "0", class: "duet-choice-info-container" }, hAsync("span", { "aria-relevant": "all", "aria-atomic": "true", "aria-live": this.isInfoOpen ? "polite" : "off" }, hAsync("slot", { name: "info" })), hAsync("slot", null))) : (hAsync("span", null, hAsync("slot", null)))), this.isInfoOpen && hAsync(FocusGuard, { moveFocusTo: this.infoButtonEl }))) : null));
8270
8301
  }
8271
8302
  get element() { return getElement(this); }
8272
8303
  static get style() { return duetChoiceCss; }
@@ -8316,72 +8347,13 @@ class DuetChoice {
8316
8347
  }; }
8317
8348
  }
8318
8349
 
8319
- const watchFor = (containerEl, tagName, onChange, changeHandler, options = {
8320
- childList: true,
8321
- subtree: true,
8322
- }) => {
8323
- let mutation;
8324
- if (typeof MutationObserver !== "undefined") {
8325
- mutation = new MutationObserver(mutationList => {
8326
- onChange(changeHandler(mutationList, tagName));
8327
- });
8328
- mutation.observe(containerEl, options);
8329
- }
8330
- return mutation;
8331
- };
8332
- const watchForOptions = (containerEl, tagName, onChange) => {
8333
- return watchFor(containerEl, tagName, onChange, getSelectedOption);
8334
- };
8335
- const watchForElement = (containerEl, tagName, onChange) => {
8336
- return watchFor(containerEl, tagName, onChange, getElementItem, {
8337
- childList: true,
8338
- subtree: true,
8339
- });
8340
- };
8341
- const getElementItem = (mutationList) => {
8342
- let addedNode = false;
8343
- let removedNode = false;
8344
- mutationList.forEach(mut => {
8345
- if (mut.addedNodes.length) {
8346
- addedNode = true;
8347
- }
8348
- if (mut.removedNodes.length) {
8349
- removedNode = true;
8350
- }
8351
- });
8352
- return { addedNode, removedNode, mutationList };
8353
- };
8354
- const getSelectedOption = (mutationList, tagName) => {
8355
- let newOption;
8356
- mutationList.forEach(mut => {
8357
- // tslint:disable-next-line: prefer-for-of
8358
- for (let i = 0; i < mut.addedNodes.length; i++) {
8359
- newOption = findCheckedOption(mut.addedNodes[i], tagName) || newOption;
8360
- }
8361
- });
8362
- return newOption;
8363
- };
8364
- const findCheckedOption = (el, tagName) => {
8365
- if (el.nodeType !== 1) {
8366
- return undefined;
8367
- }
8368
- const options = el.tagName === tagName.toUpperCase() ? [el] : Array.from(el.querySelectorAll(tagName));
8369
- return options.find((o) => o.checked === true);
8370
- };
8371
-
8372
8350
  const duetChoiceGroupCss = "*.sc-duet-choice-group,*.sc-duet-choice-group::after,*.sc-duet-choice-group::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-choice-group-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}.horizontal.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group{display:block;margin-bottom:-12px}.horizontal.sc-duet-choice-group-h .duet-choice-group.duet-no-stacking.sc-duet-choice-group{display:flex}@media (min-width: 48em){.horizontal.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group{margin-bottom:0}}@media (max-width: 35.9375em){.horizontal.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group{display:flex}}.horizontal.duet-choice-group-breakpoint-x-small.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:flex}@media (max-width: 22.5em){.horizontal.duet-choice-group-breakpoint-x-small.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:block}}.horizontal.duet-choice-group-breakpoint-small.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:block}@media (min-width: 36em){.horizontal.duet-choice-group-breakpoint-small.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:flex}}.horizontal.duet-choice-group-breakpoint-medium.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:block}@media (min-width: 48em){.horizontal.duet-choice-group-breakpoint-medium.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:flex}}.horizontal.duet-choice-group-breakpoint-large.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:block}@media (min-width: 62em){.horizontal.duet-choice-group-breakpoint-large.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:flex}}.horizontal.duet-choice-group-breakpoint-x-large.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:block}@media (min-width: 64.0625em){.horizontal.duet-choice-group-breakpoint-x-large.sc-duet-choice-group-h .duet-choice-group.sc-duet-choice-group:not(.duet-no-stacking){display:flex}}.duet-choice-group.sc-duet-choice-group{position:relative;width:100%;margin-bottom:-12px}";
8373
8351
 
8374
- const duetChoiceSelector = ":scope duet-choice:not(:scope duet-choice duet-choice-group duet-choice):not(:scope duet-choice duet-fieldset duet-choice)";
8375
8352
  class DuetChoiceGroup {
8376
8353
  constructor(hostRef) {
8377
8354
  registerInstance(this, hostRef);
8378
8355
  this.choiceGroupName = "duet-choice-group";
8379
- this.getChoices = () => {
8380
- return Array.from(this.element.querySelectorAll(duetChoiceSelector));
8381
- };
8382
- this.isMyChoice = (choice) => {
8383
- return this.getChoices().includes(choice);
8384
- };
8356
+ this.choices = new Set();
8385
8357
  /**
8386
8358
  * Component event handling.
8387
8359
  */
@@ -8390,12 +8362,21 @@ class DuetChoiceGroup {
8390
8362
  return;
8391
8363
  }
8392
8364
  const selectedChoice = ev.target;
8393
- if (selectedChoice && this.isMyChoice(selectedChoice)) {
8365
+ if (selectedChoice && this.choices.has(selectedChoice)) {
8394
8366
  this.value = selectedChoice.value;
8395
8367
  }
8396
- // Prevent events from bubbling up the DOM tree in case
8397
- // this group is a sub-group of another choice group.
8398
- ev.cancelBubble = true;
8368
+ };
8369
+ this.onChoiceReady = (ev) => {
8370
+ const choice = ev.target;
8371
+ if (choice.closest("duet-choice-group") === this.element && !this.choices.has(choice)) {
8372
+ this.choices.add(choice);
8373
+ this.updateChoices();
8374
+ }
8375
+ };
8376
+ this.onChoiceRemove = (ev) => {
8377
+ const choice = ev.target;
8378
+ this.choices.delete(choice);
8379
+ this.updateChoices();
8399
8380
  };
8400
8381
  this.direction = "vertical";
8401
8382
  this.margin = "auto";
@@ -8429,21 +8410,17 @@ class DuetChoiceGroup {
8429
8410
  inheritGlobalTheme(this);
8430
8411
  }
8431
8412
  componentDidLoad() {
8413
+ nudge();
8432
8414
  }
8433
8415
  /**
8434
8416
  * Local methods
8435
8417
  */
8436
8418
  async updateChoices() {
8437
8419
  var _a;
8438
- /**
8439
- * Make sure we get all choices first so values are up to date prior
8440
- * to caching the choice group value
8441
- */
8442
- const choices = this.getChoices();
8443
- const value = (_a = this.value) !== null && _a !== void 0 ? _a : this.element.getAttribute("value");
8420
+ const value = (_a = this.value) !== null && _a !== void 0 ? _a : this.initialValue;
8444
8421
  let hasChecked = false;
8445
8422
  // Walk the DOM in reverse order, since the last selected one wins
8446
- for (const choice of choices) {
8423
+ for (const choice of this.choices) {
8447
8424
  choice.name = this.name;
8448
8425
  choice.groupDisabled = this.disabled;
8449
8426
  choice.groupDirection = this.direction;
@@ -8453,6 +8430,9 @@ class DuetChoiceGroup {
8453
8430
  // and we haven't found a checked yet
8454
8431
  hasChecked = true;
8455
8432
  choice.checked = true;
8433
+ if (typeof this.value === "undefined") {
8434
+ this.value = value;
8435
+ }
8456
8436
  }
8457
8437
  else {
8458
8438
  // This choice doesn't have the correct value or the choice group has been already checked
@@ -8469,7 +8449,7 @@ class DuetChoiceGroup {
8469
8449
  * Always the last one in the class.
8470
8450
  */
8471
8451
  render() {
8472
- return (hAsync(Host, { onDuetChange: this.onSelect, class: {
8452
+ return (hAsync(Host, { onDuetChange: this.onSelect, onDuetChoiceReady: this.onChoiceReady, onDuetChoiceRemove: this.onChoiceRemove, class: {
8473
8453
  horizontal: this.direction === "horizontal",
8474
8454
  "duet-choice-group-breakpoint-x-small": this.responsive && this.breakpoint === "x-small",
8475
8455
  "duet-choice-group-breakpoint-small": this.responsive && this.breakpoint === "small",
@@ -9077,6 +9057,7 @@ class DuetCollapsible {
9077
9057
  this.hasAfterHeading = hasSlot(this.element, "after-heading");
9078
9058
  }
9079
9059
  componentDidLoad() {
9060
+ nudge();
9080
9061
  }
9081
9062
  /**
9082
9063
  * Sets focus on the specified `duet-collapsible`. Use this method instead of the global
@@ -9558,6 +9539,7 @@ class DuetContactCard {
9558
9539
  inheritGlobalTheme(this);
9559
9540
  }
9560
9541
  componentDidLoad() {
9542
+ nudge();
9561
9543
  }
9562
9544
  connectedCallback() {
9563
9545
  connectLanguageChangeObserver(this);
@@ -9631,6 +9613,7 @@ class DuetCookieConsent {
9631
9613
  inheritGlobalTheme(this);
9632
9614
  }
9633
9615
  componentDidLoad() {
9616
+ nudge();
9634
9617
  }
9635
9618
  /**
9636
9619
  * render() function.
@@ -10216,6 +10199,7 @@ class DuetDatePicker {
10216
10199
  this.updateInternalValue();
10217
10200
  }
10218
10201
  componentDidLoad() {
10202
+ nudge();
10219
10203
  }
10220
10204
  componentDidUpdate() {
10221
10205
  // we want to run this code _after_ render
@@ -10555,6 +10539,7 @@ class DuetEditableTable {
10555
10539
  this.hasFootSlot = !!this.element.querySelector("[slot='tfoot']");
10556
10540
  }
10557
10541
  componentDidLoad() {
10542
+ nudge();
10558
10543
  }
10559
10544
  connectedCallback() {
10560
10545
  connectLanguageChangeObserver(this);
@@ -10697,6 +10682,7 @@ class DuetEmptyState {
10697
10682
  inheritGlobalTheme(this);
10698
10683
  }
10699
10684
  componentDidLoad() {
10685
+ nudge();
10700
10686
  }
10701
10687
  /**
10702
10688
  * render() function
@@ -10758,6 +10744,7 @@ class DuetFieldset {
10758
10744
  this.checkHasTooltip();
10759
10745
  }
10760
10746
  componentDidLoad() {
10747
+ nudge();
10761
10748
  }
10762
10749
  /**
10763
10750
  * render() function
@@ -10893,6 +10880,7 @@ class DuetFooter {
10893
10880
  ;
10894
10881
  }
10895
10882
  componentDidLoad() {
10883
+ nudge();
10896
10884
  }
10897
10885
  connectedCallback() {
10898
10886
  connectLanguageChangeObserver(this, {
@@ -10966,6 +10954,59 @@ class DuetFooter {
10966
10954
  }; }
10967
10955
  }
10968
10956
 
10957
+ const watchFor = (containerEl, tagName, onChange, changeHandler, options = {
10958
+ childList: true,
10959
+ subtree: true,
10960
+ }) => {
10961
+ let mutation;
10962
+ if (typeof MutationObserver !== "undefined") {
10963
+ mutation = new MutationObserver(mutationList => {
10964
+ onChange(changeHandler(mutationList, tagName));
10965
+ });
10966
+ mutation.observe(containerEl, options);
10967
+ }
10968
+ return mutation;
10969
+ };
10970
+ const watchForOptions = (containerEl, tagName, onChange) => {
10971
+ return watchFor(containerEl, tagName, onChange, getSelectedOption);
10972
+ };
10973
+ const watchForElement = (containerEl, tagName, onChange) => {
10974
+ return watchFor(containerEl, tagName, onChange, getElementItem, {
10975
+ childList: true,
10976
+ subtree: true,
10977
+ });
10978
+ };
10979
+ const getElementItem = (mutationList) => {
10980
+ let addedNode = false;
10981
+ let removedNode = false;
10982
+ mutationList.forEach(mut => {
10983
+ if (mut.addedNodes.length) {
10984
+ addedNode = true;
10985
+ }
10986
+ if (mut.removedNodes.length) {
10987
+ removedNode = true;
10988
+ }
10989
+ });
10990
+ return { addedNode, removedNode, mutationList };
10991
+ };
10992
+ const getSelectedOption = (mutationList, tagName) => {
10993
+ let newOption;
10994
+ mutationList.forEach(mut => {
10995
+ // tslint:disable-next-line: prefer-for-of
10996
+ for (let i = 0; i < mut.addedNodes.length; i++) {
10997
+ newOption = findCheckedOption(mut.addedNodes[i], tagName) || newOption;
10998
+ }
10999
+ });
11000
+ return newOption;
11001
+ };
11002
+ const findCheckedOption = (el, tagName) => {
11003
+ if (el.nodeType !== 1) {
11004
+ return undefined;
11005
+ }
11006
+ const options = el.tagName === tagName.toUpperCase() ? [el] : Array.from(el.querySelectorAll(tagName));
11007
+ return options.find((o) => o.checked === true);
11008
+ };
11009
+
10969
11010
  const duetGridCss = ".sc-duet-grid-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-grid-variation-flex.sc-duet-grid-h{display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;width:100%;max-width:100%;height:auto}.duet-grid-variation-flex.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-x-small.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}@media (max-width: 22.5em){.duet-grid-variation-flex.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-small.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-medium.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-large.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-grid-breakpoint-x-large.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}}.duet-grid-variation-flex.duet-grid-wrap.sc-duet-grid-h{flex-wrap:wrap !important}.duet-grid-variation-flex.duet-no-stacking.sc-duet-grid-h{flex-direction:row !important}.duet-grid-variation-flex.duet-no-stacking.duet-grid-row-reverse.sc-duet-grid-h{flex-direction:row-reverse !important}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-small.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-medium.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-direction-vertical.duet-grid-breakpoint-x-large.sc-duet-grid-h{flex-direction:column !important}}.duet-grid-variation-flex.duet-grid-align-top.duet-no-stacking.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-variation-flex.duet-grid-align-bottom.duet-no-stacking.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-variation-flex.duet-grid-align-center.duet-no-stacking.sc-duet-grid-h{align-items:center !important}.duet-grid-variation-flex.duet-grid-align-stretch.duet-no-stacking.sc-duet-grid-h{align-items:stretch !important}.duet-grid-variation-flex.duet-grid-align-baseline.duet-no-stacking.sc-duet-grid-h{align-items:baseline !important}.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:flex-start !important}.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:flex-end !important}.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:center !important}.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:stretch !important}.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-small.sc-duet-grid-h{align-items:baseline !important}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:center !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 36em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-small.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:center !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 48em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-medium.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 62em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-large.sc-duet-grid-h{align-items:baseline !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-top.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-start !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-bottom.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:flex-end !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-center.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:center !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-stretch.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:stretch !important}}@media (min-width: 64.0625em){.duet-grid-variation-flex.duet-grid-align-baseline.duet-grid-breakpoint-x-large.sc-duet-grid-h{align-items:baseline !important}}.duet-grid-variation-flex.duet-grid-distribution-left.sc-duet-grid-h{justify-content:flex-start !important}.duet-grid-variation-flex.duet-grid-distribution-right.sc-duet-grid-h{justify-content:flex-end !important}.duet-grid-variation-flex.duet-grid-distribution-center.sc-duet-grid-h{justify-content:center !important}.duet-grid-variation-flex.duet-grid-distribution-between.sc-duet-grid-h{justify-content:space-between !important}.duet-grid-variation-flex.duet-grid-distribution-around.sc-duet-grid-h{justify-content:space-around !important}.duet-grid-variation-flex.duet-grid-distribution-evenly.sc-duet-grid-h{justify-content:space-evenly !important}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-mobile-left.sc-duet-grid-h{align-items:flex-start !important;justify-content:flex-start !important;text-align:left !important}}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-mobile-center.sc-duet-grid-h{align-items:center !important;justify-content:center !important;text-align:center !important}.duet-grid-variation-flex.duet-grid-mobile-center.sc-duet-grid-h *.sc-duet-grid{text-align:center !important}}@media (max-width: 35.9375em){.duet-grid-variation-flex.duet-grid-mobile-right.sc-duet-grid-h{align-items:flex-end !important;justify-content:flex-end !important;text-align:right !important}.duet-grid-variation-flex.duet-grid-mobile-right.sc-duet-grid-h *.sc-duet-grid{text-align:right !important}}.duet-grid-variation-grid.sc-duet-grid-h{display:grid;grid-template-rows:repeat(1, 1fr);grid-template-columns:repeat(4, minmax(0, 1fr));gap:16px;align-items:flex-start;justify-content:center;margin:0 20px}@media (min-width: 36em){.duet-grid-variation-grid.sc-duet-grid-h{gap:24px;margin:0 40px}}@media (min-width: 48em){.duet-grid-variation-grid.sc-duet-grid-h{grid-template-columns:repeat(8, 55px);gap:24px 32px;margin:0 auto}}@media (min-width: 62em){.duet-grid-variation-grid.sc-duet-grid-h{grid-template-columns:repeat(12, minmax(0, 1fr));margin:0 64px}}@media (min-width: 76.25em){.duet-grid-variation-grid.sc-duet-grid-h{grid-template-columns:repeat(12, 55px);gap:40px;margin:0 auto}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-small.sc-duet-grid-s>*{grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-small.sc-duet-grid-s>*{grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-small.sc-duet-grid-s>*{grid-column:3/span 8}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-medium.sc-duet-grid-s>*{grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-medium.sc-duet-grid-s>*{grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-medium.sc-duet-grid-s>*{grid-column:2/span 10}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-large.sc-duet-grid-s>*{grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-large.sc-duet-grid-s>*{grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-large.sc-duet-grid-s>*{grid-column:1/span 12}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(2){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-right.sc-duet-grid-s>:nth-child(2){grid-column:9/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(2){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-sidebar-left.sc-duet-grid-s>:nth-child(2){grid-column:5/span 8}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 6}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(2){grid-column:5/span 4}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-two-columns.sc-duet-grid-s>:nth-child(2){grid-column:7/span 6}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(1){grid-column:1/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(2){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(2){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(2){grid-column:5/span 4}}.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(3){grid-column:1/span 4}@media (min-width: 48em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(3){grid-column:1/span 8}}@media (min-width: 62em){.sc-duet-grid-h.duet-grid-variation-grid.duet-grid-template-three-columns.sc-duet-grid-s>:nth-child(3){grid-column:9/span 4}}";
10970
11011
 
10971
11012
  function isGridItem(element) {
@@ -11685,6 +11726,7 @@ class DuetHeader {
11685
11726
  this.refresh();
11686
11727
  }
11687
11728
  componentDidLoad() {
11729
+ nudge();
11688
11730
  }
11689
11731
  connectedCallback() {
11690
11732
  for (let i = 0; i < this.mql.length; i++) {
@@ -12034,6 +12076,7 @@ class DuetHeading {
12034
12076
  inheritGlobalTheme(this);
12035
12077
  }
12036
12078
  componentDidLoad() {
12079
+ nudge();
12037
12080
  }
12038
12081
  /**
12039
12082
  * render() function
@@ -12147,6 +12190,7 @@ class DuetHero {
12147
12190
  this.refresh();
12148
12191
  }
12149
12192
  componentDidLoad() {
12193
+ nudge();
12150
12194
  }
12151
12195
  connectedCallback() {
12152
12196
  connectLanguageChangeObserver(this, {
@@ -12339,6 +12383,7 @@ class DuetIcon {
12339
12383
  this.loadIcon();
12340
12384
  }
12341
12385
  componentDidLoad() {
12386
+ nudge();
12342
12387
  }
12343
12388
  async loadIcon() {
12344
12389
  // static icon known at build-time, so we can set it synchronously
@@ -12698,6 +12743,7 @@ class DuetInput {
12698
12743
  this.isPasswordRevealed = false;
12699
12744
  });
12700
12745
  }
12746
+ nudge();
12701
12747
  }
12702
12748
  connectedCallback() {
12703
12749
  connectLanguageChangeObserver(this);
@@ -12878,6 +12924,7 @@ class DuetLabel {
12878
12924
  inheritGlobalTheme(this);
12879
12925
  }
12880
12926
  componentDidLoad() {
12927
+ nudge();
12881
12928
  }
12882
12929
  /**
12883
12930
  * render() function
@@ -13027,6 +13074,7 @@ class DuetLink {
13027
13074
  this.initMediaQuery();
13028
13075
  }
13029
13076
  componentDidLoad() {
13077
+ nudge();
13030
13078
  }
13031
13079
  connectedCallback() {
13032
13080
  connectLanguageChangeObserver(this, {
@@ -13548,6 +13596,7 @@ class DuetMenuBarButton {
13548
13596
  inheritGlobalTheme(this);
13549
13597
  }
13550
13598
  componentDidLoad() {
13599
+ nudge();
13551
13600
  }
13552
13601
  connectedCallback() {
13553
13602
  this.changeIconSize();
@@ -13666,6 +13715,7 @@ class DuetMenuBarDropdown {
13666
13715
  inheritGlobalTheme(this);
13667
13716
  }
13668
13717
  componentDidLoad() {
13718
+ nudge();
13669
13719
  }
13670
13720
  connectedCallback() {
13671
13721
  this.changeIconSize();
@@ -13763,6 +13813,7 @@ class DuetMenuBarDropdownLink {
13763
13813
  inheritGlobalTheme(this);
13764
13814
  }
13765
13815
  componentDidLoad() {
13816
+ nudge();
13766
13817
  }
13767
13818
  handleEscape(e) {
13768
13819
  if (isEscapeKey(e)) {
@@ -13831,6 +13882,7 @@ class DuetMenuBarLink {
13831
13882
  inheritGlobalTheme(this);
13832
13883
  }
13833
13884
  componentDidLoad() {
13885
+ nudge();
13834
13886
  }
13835
13887
  connectedCallback() {
13836
13888
  this.changeIconSize();
@@ -14087,6 +14139,7 @@ class DuetModal {
14087
14139
  this.open = true;
14088
14140
  this.modalEl.classList.add("duet-disable-transitions");
14089
14141
  }
14142
+ nudge();
14090
14143
  }
14091
14144
  connectedCallback() {
14092
14145
  connectLanguageChangeObserver(this, { prop: "accessibleCloseLabel", defaults: "accessibleCloseLabelDefaults" });
@@ -14369,6 +14422,7 @@ class DuetMultiselect {
14369
14422
  this.refresh();
14370
14423
  }
14371
14424
  componentDidLoad() {
14425
+ nudge();
14372
14426
  }
14373
14427
  connectedCallback() {
14374
14428
  connectLanguageChangeObserver(this);
@@ -14516,6 +14570,7 @@ class DuetNotification {
14516
14570
  inheritGlobalTheme(this);
14517
14571
  }
14518
14572
  componentDidLoad() {
14573
+ nudge();
14519
14574
  }
14520
14575
  connectedCallback() {
14521
14576
  connectLanguageChangeObserver(this, { prop: "accessibleLabelUnread", defaults: "accessibleLabelUnreadDefaults" });
@@ -14605,6 +14660,7 @@ class DuetNotificationDrawer {
14605
14660
  this.updateNotificationState();
14606
14661
  }
14607
14662
  componentDidLoad() {
14663
+ nudge();
14608
14664
  }
14609
14665
  connectedCallback() {
14610
14666
  this.observer = new MutationObserver(this.updateNotificationState);
@@ -15003,6 +15059,7 @@ class DuetNumberInput {
15003
15059
  }
15004
15060
  }
15005
15061
  componentDidLoad() {
15062
+ nudge();
15006
15063
  }
15007
15064
  connectedCallback() {
15008
15065
  connectLanguageChangeObserver(this, [
@@ -15124,6 +15181,7 @@ class DuetPageHeading {
15124
15181
  inheritGlobalTheme(this);
15125
15182
  }
15126
15183
  componentDidLoad() {
15184
+ nudge();
15127
15185
  }
15128
15186
  /**
15129
15187
  * render() function
@@ -15302,6 +15360,7 @@ class DuetPagination {
15302
15360
  }
15303
15361
  componentDidLoad() {
15304
15362
  this.firstRenderDone = true;
15363
+ nudge();
15305
15364
  }
15306
15365
  componentWillRender() {
15307
15366
  if (this.internalSectionIndex !== 0 && this.internalSectionIndex !== this.totalPages) {
@@ -15566,6 +15625,7 @@ class DuetParagraph {
15566
15625
  inheritGlobalTheme(this);
15567
15626
  }
15568
15627
  componentDidLoad() {
15628
+ nudge();
15569
15629
  }
15570
15630
  /**
15571
15631
  * render() function
@@ -17062,6 +17122,7 @@ class DuetPopupMenuItem {
17062
17122
  inheritGlobalTheme(this);
17063
17123
  }
17064
17124
  componentDidLoad() {
17125
+ nudge();
17065
17126
  }
17066
17127
  /**
17067
17128
  * Sets focus. Use this method instead of the global focus().
@@ -17142,6 +17203,7 @@ class DuetProgress {
17142
17203
  inheritGlobalTheme(this);
17143
17204
  }
17144
17205
  componentDidLoad() {
17206
+ nudge();
17145
17207
  }
17146
17208
  connectedCallback() {
17147
17209
  connectLanguageChangeObserver(this, { prop: "accessibleLabelUpload", defaults: "accessibleLabelUploadDefaults" });
@@ -17212,6 +17274,7 @@ class DuetPromoCard {
17212
17274
  this.hasActionSlot = !!this.element.querySelector('[slot="action"]');
17213
17275
  }
17214
17276
  componentDidLoad() {
17277
+ nudge();
17215
17278
  }
17216
17279
  /**
17217
17280
  * render() function
@@ -17453,6 +17516,7 @@ class DuetRadioGroup {
17453
17516
  inheritGlobalTheme(this);
17454
17517
  }
17455
17518
  componentDidLoad() {
17519
+ nudge();
17456
17520
  }
17457
17521
  /**
17458
17522
  * Local methods.
@@ -17604,6 +17668,7 @@ class DuetRangeSlider {
17604
17668
  inheritGlobalTheme(this);
17605
17669
  }
17606
17670
  componentDidLoad() {
17671
+ nudge();
17607
17672
  }
17608
17673
  /**
17609
17674
  * Sets focus on the specified `duet-range-slider`. Use this method instead of the global
@@ -17760,6 +17825,7 @@ class DuetRangeStepper {
17760
17825
  }
17761
17826
  componentDidLoad() {
17762
17827
  this.watchStepIndexStateHandler(this.stepIndex);
17828
+ nudge();
17763
17829
  }
17764
17830
  connectedCallback() {
17765
17831
  connectLanguageChangeObserver(this, { prop: "ariaLabels", defaults: "ariaLabelsDefaults" });
@@ -17914,6 +17980,7 @@ class DuetScrollable {
17914
17980
  }
17915
17981
  componentDidLoad() {
17916
17982
  this.resizeObserver.observe(this.tabListElement);
17983
+ nudge();
17917
17984
  }
17918
17985
  disconnectedCallback() {
17919
17986
  this.resizeObserver.disconnect();
@@ -18197,6 +18264,7 @@ class DuetSelect {
18197
18264
  this.refresh();
18198
18265
  }
18199
18266
  componentDidLoad() {
18267
+ nudge();
18200
18268
  }
18201
18269
  /**
18202
18270
  * Sets focus on the specified `duet-select`. Use this method instead of the global
@@ -18410,6 +18478,7 @@ class DuetShowMore {
18410
18478
  this.buttonAriaOpen = this.open;
18411
18479
  }
18412
18480
  componentDidLoad() {
18481
+ nudge();
18413
18482
  }
18414
18483
  connectedCallback() {
18415
18484
  connectLanguageChangeObserver(this, [
@@ -18481,16 +18550,18 @@ class DuetSlideout {
18481
18550
  }
18482
18551
  };
18483
18552
  this.toggleMenu = (e) => {
18484
- const toggle = !this.open;
18485
- this.open = toggle;
18486
- this.openButton.setAttribute("aria-expanded", this.open.toString());
18553
+ this.open = !this.open;
18554
+ if (this.openButton) {
18555
+ this.openButton.accessibleExpanded = this.open;
18556
+ }
18487
18557
  this.duetSlideoutEvent.emit({
18488
18558
  originalEvent: e,
18489
18559
  data: { element: this.element, open: this.open },
18490
18560
  component: "duet-slideout",
18491
18561
  });
18492
- if (toggle) {
18562
+ if (this.open) {
18493
18563
  const openPanel = this.element.querySelector("duet-slideout-panel[open]");
18564
+ this.teleport.go(true);
18494
18565
  if (openPanel) {
18495
18566
  openPanel.setFocus();
18496
18567
  this.handleBodyScrolling();
@@ -18504,8 +18575,10 @@ class DuetSlideout {
18504
18575
  }
18505
18576
  else {
18506
18577
  setTimeout(() => {
18507
- this.openButton.setFocus();
18578
+ var _a;
18579
+ (_a = this.openButton) === null || _a === void 0 ? void 0 : _a.setFocus();
18508
18580
  this.handleBodyScrolling();
18581
+ this.teleport.resume();
18509
18582
  }, 200);
18510
18583
  }
18511
18584
  };
@@ -18516,6 +18589,7 @@ class DuetSlideout {
18516
18589
  this.displaying = false;
18517
18590
  this.theme = "";
18518
18591
  this.open = false;
18592
+ this.opener = undefined;
18519
18593
  this.backgroundColor = "gray-lightest";
18520
18594
  }
18521
18595
  /**
@@ -18528,27 +18602,49 @@ class DuetSlideout {
18528
18602
  this.closeButton.focus();
18529
18603
  }, 200);
18530
18604
  }
18605
+ /**
18606
+ * Shows the slideout. Additionally saves the element (DuetButton or DuetMenuBarButton) that triggered
18607
+ * the slideout so that focus can be moved back to this specific element when
18608
+ * the slideout dialog is closed.
18609
+ */
18610
+ async show() {
18611
+ if (this.open) {
18612
+ return;
18613
+ }
18614
+ const button = document.activeElement;
18615
+ if (button) {
18616
+ button.accessiblePopup = "true";
18617
+ this.openButton = button;
18618
+ }
18619
+ this.toggleMenu(new CustomEvent("toggle"));
18620
+ }
18621
+ /**
18622
+ * Hides the slideout dialog and puts focus back to the original element
18623
+ * that triggered the slideout (if we’re still in the same view).
18624
+ */
18625
+ async hide() {
18626
+ if (!this.open) {
18627
+ return;
18628
+ }
18629
+ this.toggleMenu(new CustomEvent("toggle"));
18630
+ }
18531
18631
  /**
18532
18632
  * Component lifecycle events.
18533
18633
  */
18534
18634
  componentWillLoad() {
18535
18635
  inheritGlobalTheme(this);
18536
- {
18537
- const toggles = Array.from(this.element.children).filter(el => el.matches("[slot='toggle']"));
18538
- if (toggles.length > 0) {
18539
- this.openButton = toggles[0];
18540
- }
18541
- }
18542
- if (this.openButton) {
18543
- this.openButton.accessiblePopup = "true";
18544
- this.openButton.accessibleExpanded = false;
18545
- this.openButton.addEventListener("click", e => {
18636
+ const button = this.opener && document.getElementById(this.opener);
18637
+ if (button) {
18638
+ button.accessiblePopup = "true";
18639
+ button.accessibleExpanded = false;
18640
+ button.addEventListener("click", e => {
18546
18641
  e.stopPropagation();
18547
18642
  e.preventDefault();
18643
+ this.openButton = button;
18548
18644
  this.onClick(e);
18549
18645
  });
18550
- this.openButton = this.openButton;
18551
18646
  }
18647
+ this.teleport = new Teleport(this.element);
18552
18648
  }
18553
18649
  async componentDidLoad() {
18554
18650
  {
@@ -18578,7 +18674,8 @@ class DuetSlideout {
18578
18674
  * Sets focus. Use this method instead of the global focus().
18579
18675
  */
18580
18676
  async setFocus(options) {
18581
- this.openButton.focus(options);
18677
+ var _a;
18678
+ (_a = this.openButton) === null || _a === void 0 ? void 0 : _a.focus(options);
18582
18679
  }
18583
18680
  /**
18584
18681
  * render() function
@@ -18589,7 +18686,7 @@ class DuetSlideout {
18589
18686
  background: getColorByName(this.backgroundColor, this.theme),
18590
18687
  };
18591
18688
  const exitTranslation = getLocaleString(this.exitLangObject);
18592
- return (hAsync(Host, null, hAsync("div", { class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("slot", { name: "toggle" }), hAsync("div", { class: {
18689
+ return (hAsync(Host, null, hAsync("div", { class: { "duet-slideout": true, "duet-theme-turva": this.theme === "turva" } }, hAsync("div", { class: {
18593
18690
  "desktop-bg": true,
18594
18691
  hidden: !this.open,
18595
18692
  }, onClick: () => {
@@ -18612,10 +18709,13 @@ class DuetSlideout {
18612
18709
  "$members$": {
18613
18710
  "theme": [1025],
18614
18711
  "open": [1540],
18712
+ "opener": [1],
18615
18713
  "backgroundColor": [1537, "background-color"],
18616
18714
  "language": [32],
18617
18715
  "displaying": [32],
18618
18716
  "toggle": [64],
18717
+ "show": [64],
18718
+ "hide": [64],
18619
18719
  "setFocus": [64]
18620
18720
  },
18621
18721
  "$listeners$": [[8, "keyup", "handleKeyUp"]],
@@ -18647,6 +18747,7 @@ class DuetSlideoutLang {
18647
18747
  inheritGlobalTheme(this);
18648
18748
  }
18649
18749
  componentDidLoad() {
18750
+ nudge();
18650
18751
  }
18651
18752
  connectedCallback() {
18652
18753
  connectLanguageChangeObserver(this);
@@ -18699,6 +18800,7 @@ class DuetSlideoutLink {
18699
18800
  inheritGlobalTheme(this);
18700
18801
  }
18701
18802
  componentDidLoad() {
18803
+ nudge();
18702
18804
  }
18703
18805
  /**
18704
18806
  * render() function
@@ -18792,6 +18894,7 @@ class DuetSlideoutPanel {
18792
18894
  this.updateLabel();
18793
18895
  }
18794
18896
  componentDidLoad() {
18897
+ nudge();
18795
18898
  }
18796
18899
  connectedCallback() {
18797
18900
  connectLanguageChangeObserver(this);
@@ -18897,6 +19000,7 @@ class DuetSlideoutPanelDropdown {
18897
19000
  });
18898
19001
  }
18899
19002
  componentDidLoad() {
19003
+ nudge();
18900
19004
  }
18901
19005
  /**
18902
19006
  * Sets focus. Use this method instead of the global focus().
@@ -19075,6 +19179,7 @@ class DuetStep {
19075
19179
  inheritGlobalTheme(this);
19076
19180
  }
19077
19181
  componentDidLoad() {
19182
+ nudge();
19078
19183
  }
19079
19184
  /**
19080
19185
  * Programmatically shift focus to the step's heading.
@@ -19183,6 +19288,7 @@ class DuetStepper {
19183
19288
  inheritGlobalTheme(this);
19184
19289
  }
19185
19290
  componentDidLoad() {
19291
+ nudge();
19186
19292
  }
19187
19293
  async connectedCallback() {
19188
19294
  this.updateStepState();
@@ -19326,6 +19432,7 @@ class DuetSubmenuBar {
19326
19432
  }
19327
19433
  }
19328
19434
  componentDidLoad() {
19435
+ nudge();
19329
19436
  }
19330
19437
  connectedCallback() {
19331
19438
  this.nav = document.querySelector("duet-nav > [slot='mobile']");
@@ -19448,6 +19555,7 @@ class DuetSubmenuBarDropdown {
19448
19555
  inheritGlobalTheme(this);
19449
19556
  }
19450
19557
  componentDidLoad() {
19558
+ nudge();
19451
19559
  }
19452
19560
  connectedCallback() {
19453
19561
  this.checkIsDesktop();
@@ -19544,6 +19652,7 @@ class DuetSubmenuBarDropdownLink {
19544
19652
  inheritGlobalTheme(this);
19545
19653
  }
19546
19654
  componentDidLoad() {
19655
+ nudge();
19547
19656
  }
19548
19657
  handleEscape(e) {
19549
19658
  if (isEscapeKey(e)) {
@@ -19614,6 +19723,7 @@ class DuetSubmenuBarLink {
19614
19723
  inheritGlobalTheme(this);
19615
19724
  }
19616
19725
  componentDidLoad() {
19726
+ nudge();
19617
19727
  }
19618
19728
  connectedCallback() {
19619
19729
  this.changeIconSize();
@@ -19685,6 +19795,7 @@ class DuetTab {
19685
19795
  * Component lifecycle events.
19686
19796
  */
19687
19797
  componentDidLoad() {
19798
+ nudge();
19688
19799
  }
19689
19800
  connectedCallback() {
19690
19801
  connectLanguageChangeObserver(this, { prop: "accessibleDescription", defaults: "accessibleDescriptionDefault" });
@@ -19834,6 +19945,7 @@ class DuetTabGroup {
19834
19945
  }
19835
19946
  componentDidLoad() {
19836
19947
  this.scrollToActive();
19948
+ nudge();
19837
19949
  }
19838
19950
  /**
19839
19951
  * This method allows you to open any of the tabs by calling the method and
@@ -20225,6 +20337,7 @@ class DuetTextarea {
20225
20337
  }
20226
20338
  }
20227
20339
  componentDidLoad() {
20340
+ nudge();
20228
20341
  }
20229
20342
  /**
20230
20343
  * Sets focus on the specified `duet-textarea`. Use this method instead of the global
@@ -20355,6 +20468,7 @@ class DuetToggle {
20355
20468
  }
20356
20469
  }
20357
20470
  componentDidLoad() {
20471
+ nudge();
20358
20472
  }
20359
20473
  /**
20360
20474
  * Sets focus on the specified `duet-toggle`. Use this method instead of the global
@@ -20491,6 +20605,7 @@ class DuetToolbarDropdown {
20491
20605
  inheritGlobalTheme(this);
20492
20606
  }
20493
20607
  componentDidLoad() {
20608
+ nudge();
20494
20609
  }
20495
20610
  handleEscape(e) {
20496
20611
  if (isEscapeKey(e)) {
@@ -20563,6 +20678,7 @@ class DuetToolbarDropdownLink {
20563
20678
  inheritGlobalTheme(this);
20564
20679
  }
20565
20680
  componentDidLoad() {
20681
+ nudge();
20566
20682
  }
20567
20683
  handleEscape(e) {
20568
20684
  if (isEscapeKey(e)) {
@@ -20619,6 +20735,7 @@ class DuetToolbarLink {
20619
20735
  inheritGlobalTheme(this);
20620
20736
  }
20621
20737
  componentDidLoad() {
20738
+ nudge();
20622
20739
  }
20623
20740
  /**
20624
20741
  * render() function
@@ -20744,6 +20861,7 @@ class DuetTooltip {
20744
20861
  }
20745
20862
  this.intersectionObserver = new IntersectionObserver(this.updatePlacement, { root: document.body });
20746
20863
  this.intersectionObserver.observe(this.element);
20864
+ nudge();
20747
20865
  }
20748
20866
  componentDidUpdate() {
20749
20867
  switch (this.focusTarget) {
@@ -20891,6 +21009,7 @@ class DuetTooltipButton {
20891
21009
  inheritGlobalTheme(this);
20892
21010
  }
20893
21011
  componentDidLoad() {
21012
+ nudge();
20894
21013
  }
20895
21014
  async setFocus(options) {
20896
21015
  if (this.buttonElement) {
@@ -20963,6 +21082,7 @@ class DuetTooltipPopup {
20963
21082
  this.teleport = new Teleport(this.element);
20964
21083
  }
20965
21084
  componentDidLoad() {
21085
+ nudge();
20966
21086
  }
20967
21087
  async getArrowElement() {
20968
21088
  return this.arrowEl;
@@ -21059,6 +21179,7 @@ class DuetTray {
21059
21179
  this.hasAdditionalContent = !!this.element.querySelector("[slot='additional']");
21060
21180
  }
21061
21181
  componentDidLoad() {
21182
+ nudge();
21062
21183
  }
21063
21184
  connectedCallback() {
21064
21185
  connectLanguageChangeObserver(this, [
@@ -22123,6 +22244,7 @@ class DuetUpload {
22123
22244
  this.externalUploadButton = document.querySelector(`#${this.externalUploadButtonId}`);
22124
22245
  }
22125
22246
  componentDidLoad() {
22247
+ nudge();
22126
22248
  }
22127
22249
  componentWillRender() {
22128
22250
  // listen to the events from the component
@@ -22476,6 +22598,7 @@ class DuetUploadAriaStatus {
22476
22598
  * Component lifecycle events.
22477
22599
  */
22478
22600
  componentDidLoad() {
22601
+ nudge();
22479
22602
  }
22480
22603
  /**
22481
22604
  * render() function
@@ -22558,6 +22681,7 @@ class DuetUploadItem {
22558
22681
  inheritGlobalTheme(this);
22559
22682
  }
22560
22683
  componentDidLoad() {
22684
+ nudge();
22561
22685
  }
22562
22686
  /**
22563
22687
  * focusActionButton.
@@ -22625,6 +22749,7 @@ class DuetVisuallyHidden {
22625
22749
  registerInstance(this, hostRef);
22626
22750
  }
22627
22751
  componentDidLoad() {
22752
+ nudge();
22628
22753
  }
22629
22754
  /**
22630
22755
  * render() function