@duetds/components 8.2.2 → 8.3.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 (640) hide show
  1. package/hydrate/index.js +137 -30
  2. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  3. package/lib/cjs/duet-alert.cjs.entry.js +2 -2
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-banner.cjs.entry.js +2 -2
  6. package/lib/cjs/duet-breadcrumb.cjs.entry.js +2 -2
  7. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +2 -2
  8. package/lib/cjs/duet-button_2.cjs.entry.js +2 -2
  9. package/lib/cjs/duet-callout.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-caption_4.cjs.entry.js +2 -2
  11. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  12. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-chip.cjs.entry.js +2 -2
  15. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  16. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  17. package/lib/cjs/duet-combobox.cjs.entry.js +2 -2
  18. package/lib/cjs/duet-contact-card.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  20. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  21. package/lib/cjs/duet-divider_2.cjs.entry.js +2 -2
  22. package/lib/cjs/duet-editable-table_3.cjs.entry.js +3 -3
  23. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-file-chooser.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-footer.cjs.entry.js +2 -2
  27. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-header_2.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-hero.cjs.entry.js +2 -2
  30. package/lib/cjs/duet-icon.cjs.entry.js +2 -2
  31. package/lib/cjs/duet-input_2.cjs.entry.js +3 -3
  32. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +2 -2
  36. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +2 -2
  37. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-menu-bar.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-modal.cjs.entry.js +3 -3
  40. package/lib/cjs/duet-multiselect.cjs.entry.js +2 -2
  41. package/lib/cjs/duet-nav.cjs.entry.js +3 -3
  42. package/lib/cjs/duet-notification_2.cjs.entry.js +2 -2
  43. package/lib/cjs/duet-number-input.cjs.entry.js +2 -2
  44. package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
  45. package/lib/cjs/duet-pagination_2.cjs.entry.js +3 -3
  46. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +1 -1
  47. package/lib/cjs/duet-popup-menu.cjs.entry.js +3 -3
  48. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  49. package/lib/cjs/duet-promo-card.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  51. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  52. package/lib/cjs/duet-scrollable_3.cjs.entry.js +89 -6
  53. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  54. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  55. package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
  56. package/lib/cjs/duet-show-more.cjs.entry.js +2 -2
  57. package/lib/cjs/duet-slideout-lang.cjs.entry.js +1 -1
  58. package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
  59. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +2 -2
  60. package/lib/cjs/duet-slideout-panel.cjs.entry.js +10 -7
  61. package/lib/cjs/duet-slideout.cjs.entry.js +14 -5
  62. package/lib/cjs/duet-step_2.cjs.entry.js +2 -2
  63. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +2 -2
  64. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +2 -2
  65. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +2 -2
  66. package/lib/cjs/duet-submenu-bar.cjs.entry.js +1 -1
  67. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  68. package/lib/cjs/duet-toggle.cjs.entry.js +2 -2
  69. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +2 -2
  70. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +3 -3
  71. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  73. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +3 -3
  74. package/lib/cjs/duet-tooltip.cjs.entry.js +15 -18
  75. package/lib/cjs/duet-tray.cjs.entry.js +2 -2
  76. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  77. package/lib/cjs/duet-upload-item.cjs.entry.js +1 -1
  78. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  79. package/lib/cjs/duet.cjs.js +2 -2
  80. package/lib/cjs/{focus-utils-cb2699e7.js → focus-utils-da780025.js} +1 -1
  81. package/lib/cjs/{index-c51398ac.js → index-34b8e765.js} +1 -1
  82. package/lib/cjs/{keyboard-utils-7248dd0a.js → keyboard-utils-66010749.js} +2 -0
  83. package/lib/cjs/loader.cjs.js +2 -2
  84. package/lib/cjs/{token-utils-c672402d.js → token-utils-7a618677.js} +22 -0
  85. package/lib/collection/components/duet-action-button/duet-action-button.js +2 -2
  86. package/lib/collection/components/duet-alert/duet-alert.js +1 -1
  87. package/lib/collection/components/duet-button/duet-button.js +5 -5
  88. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  89. package/lib/collection/components/duet-card/duet-card.js +3 -3
  90. package/lib/collection/components/duet-checkbox/duet-checkbox.js +3 -3
  91. package/lib/collection/components/duet-chip/duet-chip.js +5 -5
  92. package/lib/collection/components/duet-choice/duet-choice.js +3 -3
  93. package/lib/collection/components/duet-collapsible/duet-collapsible.js +3 -3
  94. package/lib/collection/components/duet-combobox/duet-combobox.js +3 -3
  95. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  96. package/lib/collection/components/duet-date-picker/duet-date-picker.js +4 -4
  97. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  98. package/lib/collection/components/duet-editable-table/duet-editable-table.js +5 -5
  99. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  100. package/lib/collection/components/duet-file-chooser/duet-file-chooser.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 +6 -6
  106. package/lib/collection/components/duet-input/duet-input.js +8 -8
  107. package/lib/collection/components/duet-label/duet-label.js +2 -2
  108. package/lib/collection/components/duet-layout/duet-layout.js +1 -1
  109. package/lib/collection/components/duet-list/duet-list.js +3 -3
  110. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  111. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +1 -1
  112. package/lib/collection/components/duet-modal/duet-modal.js +4 -4
  113. package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
  114. package/lib/collection/components/duet-nav/duet-nav.css +5 -0
  115. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  116. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +1 -1
  117. package/lib/collection/components/duet-number-input/duet-number-input.js +4 -4
  118. package/lib/collection/components/duet-pagination/duet-pagination.js +2 -2
  119. package/lib/collection/components/duet-paragraph/duet-paragraph.js +3 -3
  120. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +1 -1
  121. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  122. package/lib/collection/components/duet-radio/duet-radio.js +3 -3
  123. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  124. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
  125. package/lib/collection/components/duet-select/duet-select.js +5 -5
  126. package/lib/collection/components/duet-show-more/duet-show-more.js +1 -1
  127. package/lib/collection/components/duet-slideout/duet-slideout.css +1 -1
  128. package/lib/collection/components/duet-slideout/duet-slideout.js +10 -1
  129. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.css +27 -0
  130. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +9 -3
  131. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +1 -1
  132. package/lib/collection/components/duet-spacer/duet-spacer.js +2 -2
  133. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  134. package/lib/collection/components/duet-step/duet-step.js +2 -2
  135. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  136. package/lib/collection/components/duet-tab/duet-tab.css +10 -0
  137. package/lib/collection/components/duet-tab/duet-tab.js +155 -1
  138. package/lib/collection/components/duet-tab-group/duet-tab-group.js +17 -10
  139. package/lib/collection/components/duet-textarea/duet-textarea.js +4 -4
  140. package/lib/collection/components/duet-toggle/duet-toggle.js +1 -1
  141. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +1 -1
  142. package/lib/collection/components/duet-tooltip/duet-tooltip.e2e.js +5 -0
  143. package/lib/collection/components/duet-tooltip/duet-tooltip.js +16 -18
  144. package/lib/collection/components/duet-upload/duet-upload.js +14 -14
  145. package/lib/collection/components/duet-upload-item/duet-upload-item.js +1 -1
  146. package/lib/collection/utils/keyboard-utils.js +1 -0
  147. package/lib/collection/utils/token-utils.js +3 -0
  148. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  149. package/lib/dist-custom-elements/duet-alert.js +1 -1
  150. package/lib/dist-custom-elements/duet-badge.js +1 -1
  151. package/lib/dist-custom-elements/duet-banner.js +4 -4
  152. package/lib/dist-custom-elements/duet-breadcrumb.js +4 -4
  153. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  154. package/lib/dist-custom-elements/duet-button.js +1 -1
  155. package/lib/dist-custom-elements/duet-callout.js +2 -2
  156. package/lib/dist-custom-elements/duet-caption.js +1 -1
  157. package/lib/dist-custom-elements/duet-card.js +5 -5
  158. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  159. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  160. package/lib/dist-custom-elements/duet-chip.js +3 -3
  161. package/lib/dist-custom-elements/duet-choice-group.js +8 -8
  162. package/lib/dist-custom-elements/duet-choice.js +6 -6
  163. package/lib/dist-custom-elements/duet-collapsible.js +3 -3
  164. package/lib/dist-custom-elements/duet-combobox.js +3 -3
  165. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  166. package/lib/dist-custom-elements/duet-cookie-consent.js +7 -7
  167. package/lib/dist-custom-elements/duet-date-picker.js +12 -12
  168. package/lib/dist-custom-elements/duet-divider.js +1 -1
  169. package/lib/dist-custom-elements/duet-editable-table.js +8 -8
  170. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  171. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  172. package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
  173. package/lib/dist-custom-elements/duet-footer.js +5 -5
  174. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  175. package/lib/dist-custom-elements/duet-grid.js +1 -1
  176. package/lib/dist-custom-elements/duet-header.js +9 -9
  177. package/lib/dist-custom-elements/duet-heading.js +1 -1
  178. package/lib/dist-custom-elements/duet-hero.js +10 -10
  179. package/lib/dist-custom-elements/duet-icon.js +1 -1
  180. package/lib/dist-custom-elements/duet-input.js +1 -1
  181. package/lib/dist-custom-elements/duet-label.js +1 -1
  182. package/lib/dist-custom-elements/duet-layout.js +1 -1
  183. package/lib/dist-custom-elements/duet-link.js +1 -1
  184. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  185. package/lib/dist-custom-elements/duet-list.js +1 -1
  186. package/lib/dist-custom-elements/duet-logo.js +1 -1
  187. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  188. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +3 -3
  189. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +3 -3
  190. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  191. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  192. package/lib/dist-custom-elements/duet-modal.js +8 -8
  193. package/lib/dist-custom-elements/duet-multiselect.js +10 -10
  194. package/lib/dist-custom-elements/duet-nav.js +3 -3
  195. package/lib/dist-custom-elements/duet-notification-drawer.js +5 -5
  196. package/lib/dist-custom-elements/duet-notification.js +3 -3
  197. package/lib/dist-custom-elements/duet-number-input.js +12 -12
  198. package/lib/dist-custom-elements/duet-page-heading.js +2 -2
  199. package/lib/dist-custom-elements/duet-pagination.js +15 -15
  200. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  201. package/lib/dist-custom-elements/duet-popup-menu-item.js +2 -2
  202. package/lib/dist-custom-elements/duet-popup-menu.js +2 -2
  203. package/lib/dist-custom-elements/duet-progress.js +1 -1
  204. package/lib/dist-custom-elements/duet-promo-card.js +4 -4
  205. package/lib/dist-custom-elements/duet-radio-group.js +8 -8
  206. package/lib/dist-custom-elements/duet-radio.js +1 -1
  207. package/lib/dist-custom-elements/duet-range-slider.js +3 -3
  208. package/lib/dist-custom-elements/duet-range-stepper.js +5 -5
  209. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  210. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  211. package/lib/dist-custom-elements/duet-select.js +1 -1
  212. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  213. package/lib/dist-custom-elements/duet-show-more.js +6 -6
  214. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  215. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  216. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +3 -3
  217. package/lib/dist-custom-elements/duet-slideout-panel.js +10 -7
  218. package/lib/dist-custom-elements/duet-slideout.js +14 -5
  219. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  220. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  221. package/lib/dist-custom-elements/duet-step.js +5 -5
  222. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  223. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +3 -3
  224. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +3 -3
  225. package/lib/dist-custom-elements/duet-submenu-bar-link.js +3 -3
  226. package/lib/dist-custom-elements/duet-submenu-bar.js +2 -2
  227. package/lib/dist-custom-elements/duet-tab-group.js +20 -16
  228. package/lib/dist-custom-elements/duet-tab.js +89 -4
  229. package/lib/dist-custom-elements/duet-table.js +1 -1
  230. package/lib/dist-custom-elements/duet-textarea.js +10 -10
  231. package/lib/dist-custom-elements/duet-toggle.js +3 -3
  232. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +3 -3
  233. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +4 -4
  234. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  235. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  236. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  237. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  238. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  239. package/lib/dist-custom-elements/duet-tray.js +4 -4
  240. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  241. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  242. package/lib/dist-custom-elements/duet-upload.js +18 -18
  243. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  244. package/lib/dist-custom-elements/index.js +1 -1
  245. package/lib/dist-custom-elements/{p-d1db33b3.js → p-0233383b.js} +1 -1
  246. package/lib/dist-custom-elements/{p-178bd8b5.js → p-0d6e1f1b.js} +1 -1
  247. package/lib/dist-custom-elements/{p-0fcede3e.js → p-10c1d640.js} +2 -2
  248. package/lib/dist-custom-elements/{p-ea75dc3b.js → p-2718851e.js} +2 -2
  249. package/lib/dist-custom-elements/{p-d82ca991.js → p-2bc31f8b.js} +1 -1
  250. package/lib/dist-custom-elements/{p-32b58440.js → p-2c44fafc.js} +2 -2
  251. package/lib/dist-custom-elements/{p-ab998a0f.js → p-34fe2adb.js} +2 -2
  252. package/lib/dist-custom-elements/{p-a7f2d134.js → p-363d74c3.js} +4 -4
  253. package/lib/dist-custom-elements/{p-029fba28.js → p-3bcad21a.js} +2 -2
  254. package/lib/dist-custom-elements/{p-ded7900f.js → p-41c5df58.js} +2 -2
  255. package/lib/dist-custom-elements/{p-e9b96f04.js → p-42da65d1.js} +3 -3
  256. package/lib/dist-custom-elements/{p-8f253845.js → p-55634a0b.js} +2 -1
  257. package/lib/dist-custom-elements/{p-bbff917c.js → p-5b8774b6.js} +6 -6
  258. package/lib/dist-custom-elements/{p-78ce0ce1.js → p-5ccb7f41.js} +21 -23
  259. package/lib/dist-custom-elements/{p-046d07ed.js → p-5df55152.js} +1 -1
  260. package/lib/dist-custom-elements/{p-69f3125f.js → p-60dcae4f.js} +1 -1
  261. package/lib/dist-custom-elements/{p-6db359de.js → p-7183d0e7.js} +10 -10
  262. package/lib/dist-custom-elements/{p-c3d0fd5f.js → p-73904865.js} +2 -2
  263. package/lib/dist-custom-elements/{p-284885b1.js → p-7c44c302.js} +1 -1
  264. package/lib/dist-custom-elements/{p-09d8f6b5.js → p-8a5c7cdf.js} +5 -5
  265. package/lib/dist-custom-elements/{p-bdade4f6.js → p-8cd82767.js} +1 -1
  266. package/lib/dist-custom-elements/{p-5b940d4e.js → p-96a8a294.js} +5 -5
  267. package/lib/dist-custom-elements/{p-14821771.js → p-98ca74e0.js} +1 -1
  268. package/lib/dist-custom-elements/{p-6f02cea5.js → p-997c1c72.js} +2 -2
  269. package/lib/dist-custom-elements/{p-1f650bb2.js → p-a13cbd71.js} +1 -1
  270. package/lib/dist-custom-elements/{p-3c266b7f.js → p-a73804b7.js} +1 -1
  271. package/lib/dist-custom-elements/{p-f26cc3be.js → p-ac4ee6ea.js} +2 -2
  272. package/lib/dist-custom-elements/{p-c2ee0b56.js → p-afe568e9.js} +1 -1
  273. package/lib/dist-custom-elements/{p-48fe3f3e.js → p-b24c3dc4.js} +3 -3
  274. package/lib/dist-custom-elements/{p-4207df32.js → p-b443af91.js} +8 -8
  275. package/lib/dist-custom-elements/{p-d4a52c78.js → p-c7e3638d.js} +1 -1
  276. package/lib/dist-custom-elements/{p-ef9c200e.js → p-cbac9ed5.js} +22 -1
  277. package/lib/dist-custom-elements/{p-501109c4.js → p-cf2212cc.js} +11 -11
  278. package/lib/dist-custom-elements/{p-275c9f06.js → p-d27e5b0d.js} +2 -2
  279. package/lib/dist-custom-elements/{p-f37bade9.js → p-e3d866c6.js} +5 -5
  280. package/lib/dist-custom-elements/{p-dfbd66be.js → p-e445c96b.js} +2 -2
  281. package/lib/duet/duet.esm.js +1 -1
  282. package/lib/duet/duet.js +1 -1
  283. package/lib/duet/{p-5f54e38a.system.entry.js → p-004f5593.system.entry.js} +1 -1
  284. package/lib/duet/{p-1abfbe28.system.entry.js → p-0296a34a.system.entry.js} +1 -1
  285. package/lib/duet/{p-d6154923.entry.js → p-0322bace.entry.js} +1 -1
  286. package/lib/duet/p-05cfffb1.entry.js +4 -0
  287. package/lib/duet/{p-3ccb1ee3.system.entry.js → p-079710fa.system.entry.js} +1 -1
  288. package/lib/duet/p-09c54c8e.system.js +4 -0
  289. package/lib/duet/p-0abf8fe1.system.entry.js +4 -0
  290. package/lib/duet/{p-f54f5ef3.system.entry.js → p-0c2cf3a5.system.entry.js} +1 -1
  291. package/lib/duet/{p-723172a8.system.entry.js → p-0c416590.system.entry.js} +1 -1
  292. package/lib/duet/{p-9418d9ff.entry.js → p-0d0867ae.entry.js} +1 -1
  293. package/lib/duet/{p-3ca93619.system.entry.js → p-0f35fce0.system.entry.js} +1 -1
  294. package/lib/duet/{p-42e4ee86.system.entry.js → p-11be6924.system.entry.js} +1 -1
  295. package/lib/duet/{p-52091e26.entry.js → p-15c9c4cb.entry.js} +1 -1
  296. package/lib/duet/{p-f637700c.system.entry.js → p-193fcf1c.system.entry.js} +1 -1
  297. package/lib/duet/{p-6d186557.entry.js → p-1953edbe.entry.js} +1 -1
  298. package/lib/duet/{p-6edbe47c.system.entry.js → p-19fc4ff9.system.entry.js} +1 -1
  299. package/lib/duet/{p-d1d036d5.entry.js → p-1c7ca800.entry.js} +1 -1
  300. package/lib/duet/{p-cdc6b261.entry.js → p-1cb624dd.entry.js} +1 -1
  301. package/lib/duet/{p-3fab3c3d.entry.js → p-1d91fb5d.entry.js} +1 -1
  302. package/lib/duet/{p-42cfad67.system.entry.js → p-1f6ad797.system.entry.js} +1 -1
  303. package/lib/duet/p-2054dad2.entry.js +4 -0
  304. package/lib/duet/{p-2db24634.entry.js → p-213dab77.entry.js} +1 -1
  305. package/lib/duet/{p-03380a61.system.entry.js → p-240c3f03.system.entry.js} +1 -1
  306. package/lib/duet/{p-daf4b399.entry.js → p-25e0cbc3.entry.js} +1 -1
  307. package/lib/duet/{p-c641c3b4.system.entry.js → p-27485e15.system.entry.js} +1 -1
  308. package/lib/duet/{p-78a7f821.system.entry.js → p-2888bff8.system.entry.js} +1 -1
  309. package/lib/duet/{p-cc4683e0.system.entry.js → p-294b9ccf.system.entry.js} +1 -1
  310. package/lib/duet/{p-efa9e31e.entry.js → p-2de5d10d.entry.js} +1 -1
  311. package/lib/duet/{p-1c9a6018.system.entry.js → p-2e3254e1.system.entry.js} +1 -1
  312. package/lib/duet/{p-ad200bf7.system.entry.js → p-2eb5153f.system.entry.js} +1 -1
  313. package/lib/duet/{p-db48c8ed.system.entry.js → p-2f22f4cc.system.entry.js} +1 -1
  314. package/lib/duet/{p-00c58945.system.entry.js → p-310fd85a.system.entry.js} +1 -1
  315. package/lib/duet/{p-0dd40c9c.entry.js → p-32f3d9e9.entry.js} +1 -1
  316. package/lib/duet/{p-4d9e4286.system.entry.js → p-33771b10.system.entry.js} +1 -1
  317. package/lib/duet/{p-fd153ee7.system.entry.js → p-34b96e8d.system.entry.js} +1 -1
  318. package/lib/duet/{p-8b9c411d.entry.js → p-38bab76d.entry.js} +1 -1
  319. package/lib/duet/{p-e4bd0d7b.entry.js → p-39730ce5.entry.js} +1 -1
  320. package/lib/duet/{p-36c95931.system.entry.js → p-3ac0c888.system.entry.js} +1 -1
  321. package/lib/duet/{p-65316fb3.entry.js → p-3ddc5b9d.entry.js} +1 -1
  322. package/lib/duet/p-3f9bb231.entry.js +4 -0
  323. package/lib/duet/p-43ee1368.entry.js +4 -0
  324. package/lib/duet/{p-eddc7880.entry.js → p-447943eb.entry.js} +1 -1
  325. package/lib/duet/{p-de652eff.entry.js → p-45464aa5.entry.js} +1 -1
  326. package/lib/duet/{p-534e202a.system.entry.js → p-45e26ba0.system.entry.js} +1 -1
  327. package/lib/duet/p-48f4acef.entry.js +4 -0
  328. package/lib/duet/{p-2395f607.system.entry.js → p-4a4317af.system.entry.js} +1 -1
  329. package/lib/duet/{p-295179c8.system.entry.js → p-4ca1be7a.system.entry.js} +1 -1
  330. package/lib/duet/{p-7fd43c03.system.entry.js → p-505375e1.system.entry.js} +1 -1
  331. package/lib/duet/{p-2c02c786.entry.js → p-52a756fe.entry.js} +1 -1
  332. package/lib/duet/p-53e192de.system.entry.js +4 -0
  333. package/lib/duet/{p-4a397383.entry.js → p-560f26a5.entry.js} +1 -1
  334. package/lib/duet/{p-280b2ecc.system.entry.js → p-56be87c9.system.entry.js} +1 -1
  335. package/lib/duet/{p-87565d7d.system.entry.js → p-573ce757.system.entry.js} +1 -1
  336. package/lib/duet/{p-9a352bf1.entry.js → p-578de372.entry.js} +1 -1
  337. package/lib/duet/p-58a8254d.entry.js +4 -0
  338. package/lib/duet/{p-61d46f06.entry.js → p-5add7da0.entry.js} +1 -1
  339. package/lib/duet/{p-c3be7176.entry.js → p-5bf6660a.entry.js} +1 -1
  340. package/lib/duet/p-5c42b7f0.system.entry.js +4 -0
  341. package/lib/duet/{p-75ceea2b.entry.js → p-5d74e505.entry.js} +1 -1
  342. package/lib/duet/{p-d1deec62.system.js → p-5eb9efcf.system.js} +1 -1
  343. package/lib/duet/p-5f87ea3d.js +4 -0
  344. package/lib/duet/{p-e7b955f6.system.entry.js → p-604aab16.system.entry.js} +1 -1
  345. package/lib/duet/{p-b83e0014.system.entry.js → p-618cc2c7.system.entry.js} +1 -1
  346. package/lib/duet/{p-e2347276.entry.js → p-65dcf9ed.entry.js} +1 -1
  347. package/lib/duet/{p-076b9333.entry.js → p-6626a173.entry.js} +1 -1
  348. package/lib/duet/p-690d8509.system.entry.js +4 -0
  349. package/lib/duet/p-6a9f8b30.entry.js +4 -0
  350. package/lib/duet/{p-c0397a25.entry.js → p-6ab9f8ce.entry.js} +1 -1
  351. package/lib/duet/{p-a5e3febc.system.entry.js → p-700eb8d9.system.entry.js} +1 -1
  352. package/lib/duet/{p-c3832cba.system.entry.js → p-7083fb38.system.entry.js} +1 -1
  353. package/lib/duet/{p-e00f28fc.entry.js → p-71568bfa.entry.js} +1 -1
  354. package/lib/duet/{p-a75e499e.system.entry.js → p-73f87dff.system.entry.js} +1 -1
  355. package/lib/duet/{p-1420bc81.system.entry.js → p-7479da8d.system.entry.js} +1 -1
  356. package/lib/duet/{p-9ab87585.system.entry.js → p-74fef701.system.entry.js} +1 -1
  357. package/lib/duet/{p-eed152d0.system.js → p-753d1ca4.system.js} +1 -1
  358. package/lib/duet/{p-133bd9d0.system.entry.js → p-755f5cf0.system.entry.js} +1 -1
  359. package/lib/duet/{p-52737afc.system.js → p-769b7d3c.system.js} +1 -1
  360. package/lib/duet/{p-c90bc08e.entry.js → p-777fbef3.entry.js} +1 -1
  361. package/lib/duet/{p-f8ddd215.system.entry.js → p-77b95466.system.entry.js} +1 -1
  362. package/lib/duet/{p-127dcd36.system.entry.js → p-7cdcc3f9.system.entry.js} +1 -1
  363. package/lib/duet/{p-10a2a9c1.system.entry.js → p-7fd03652.system.entry.js} +1 -1
  364. package/lib/duet/{p-9699d4f1.system.entry.js → p-82bef678.system.entry.js} +1 -1
  365. package/lib/duet/{p-11481bd0.entry.js → p-82cd0795.entry.js} +1 -1
  366. package/lib/duet/{p-7ef64069.entry.js → p-859754bb.entry.js} +1 -1
  367. package/lib/duet/p-85b08ff2.system.entry.js +4 -0
  368. package/lib/duet/{p-88d19807.entry.js → p-85c6a112.entry.js} +1 -1
  369. package/lib/duet/{p-956c677f.entry.js → p-85e98030.entry.js} +1 -1
  370. package/lib/duet/{p-bd9e5b2b.system.entry.js → p-87112f7c.system.entry.js} +1 -1
  371. package/lib/duet/{p-89db0472.system.entry.js → p-8726889d.system.entry.js} +1 -1
  372. package/lib/duet/{p-7b6abc82.entry.js → p-8a2f8d7d.entry.js} +1 -1
  373. package/lib/duet/{p-b17fc03d.system.entry.js → p-8a90810c.system.entry.js} +1 -1
  374. package/lib/duet/{p-111e21bb.system.entry.js → p-8b25f04b.system.entry.js} +1 -1
  375. package/lib/duet/{p-0906d9df.system.entry.js → p-8c08f362.system.entry.js} +1 -1
  376. package/lib/duet/{p-5d8d866f.system.entry.js → p-90847ed0.system.entry.js} +1 -1
  377. package/lib/duet/{p-35811c5b.entry.js → p-91e776e5.entry.js} +1 -1
  378. package/lib/duet/{p-579d7632.entry.js → p-93037a0a.entry.js} +1 -1
  379. package/lib/duet/{p-371692de.system.entry.js → p-9686aa88.system.entry.js} +1 -1
  380. package/lib/duet/{p-88378c4b.system.entry.js → p-97cf5b01.system.entry.js} +1 -1
  381. package/lib/duet/{p-a70e6c6f.entry.js → p-98a822e3.entry.js} +1 -1
  382. package/lib/duet/{p-9090cf21.entry.js → p-9ba3d633.entry.js} +1 -1
  383. package/lib/duet/{p-b57852d2.entry.js → p-9bba389f.entry.js} +1 -1
  384. package/lib/duet/{p-aa38094c.entry.js → p-9bfaaf32.entry.js} +1 -1
  385. package/lib/duet/{p-932d0abe.entry.js → p-9d841e0f.entry.js} +1 -1
  386. package/lib/duet/{p-86285221.entry.js → p-9e8772d1.entry.js} +1 -1
  387. package/lib/duet/{p-f65559ab.entry.js → p-a01d2fdb.entry.js} +1 -1
  388. package/lib/duet/{p-f237623c.entry.js → p-a3351207.entry.js} +1 -1
  389. package/lib/duet/{p-4921ff47.entry.js → p-a3b8bb87.entry.js} +1 -1
  390. package/lib/duet/{p-6720adb2.entry.js → p-a5ebbe3e.entry.js} +1 -1
  391. package/lib/duet/{p-831c1f80.system.entry.js → p-a9a0f040.system.entry.js} +1 -1
  392. package/lib/duet/p-abdbce02.system.js +4 -0
  393. package/lib/duet/{p-d69aa4c2.system.entry.js → p-abe6350b.system.entry.js} +1 -1
  394. package/lib/duet/{p-1bbf5af6.entry.js → p-afa0c531.entry.js} +1 -1
  395. package/lib/duet/{p-9f931d57.js → p-b263e985.js} +1 -1
  396. package/lib/duet/{p-aab87987.system.entry.js → p-b2ccffd1.system.entry.js} +1 -1
  397. package/lib/duet/{p-7e1fe8b7.entry.js → p-b3e26504.entry.js} +1 -1
  398. package/lib/duet/{p-3a63ecd6.system.entry.js → p-b507f27d.system.entry.js} +1 -1
  399. package/lib/duet/{p-c8a02bae.entry.js → p-b9140794.entry.js} +1 -1
  400. package/lib/duet/{p-b84be662.entry.js → p-b9c1d172.entry.js} +1 -1
  401. package/lib/duet/{p-3e03e275.entry.js → p-ba89aaf0.entry.js} +1 -1
  402. package/lib/duet/{p-78a54e54.system.entry.js → p-ba92e7b1.system.entry.js} +1 -1
  403. package/lib/duet/{p-2d9cdfdb.entry.js → p-c03920c0.entry.js} +1 -1
  404. package/lib/duet/{p-b3ee2fd3.entry.js → p-c16515e0.entry.js} +1 -1
  405. package/lib/duet/{p-5f71c6eb.entry.js → p-c28792a8.entry.js} +1 -1
  406. package/lib/duet/{p-b230e70f.system.entry.js → p-c8466623.system.entry.js} +1 -1
  407. package/lib/duet/{p-a2fb2ad9.system.entry.js → p-c9221359.system.entry.js} +1 -1
  408. package/lib/duet/{p-7bb37b2e.entry.js → p-c9c43026.entry.js} +1 -1
  409. package/lib/duet/{p-59eeaac0.system.entry.js → p-ca5cd66a.system.entry.js} +1 -1
  410. package/lib/duet/p-ccb58dd2.entry.js +4 -0
  411. package/lib/duet/{p-03043dae.entry.js → p-cea6ffda.entry.js} +1 -1
  412. package/lib/duet/{p-cd1d3fe8.system.entry.js → p-cfdea256.system.entry.js} +1 -1
  413. package/lib/duet/p-cff7873f.entry.js +4 -0
  414. package/lib/duet/{p-1bdd4caa.system.entry.js → p-d36935fa.system.entry.js} +1 -1
  415. package/lib/duet/{p-a014d5d9.system.entry.js → p-d3aed7d8.system.entry.js} +1 -1
  416. package/lib/duet/{p-efe336c5.entry.js → p-d7175aea.entry.js} +1 -1
  417. package/lib/duet/{p-0667f70f.system.entry.js → p-d7f9ea61.system.entry.js} +1 -1
  418. package/lib/duet/{p-ebc2f8fc.system.entry.js → p-d8144268.system.entry.js} +1 -1
  419. package/lib/duet/{p-37be8296.entry.js → p-d84be985.entry.js} +1 -1
  420. package/lib/duet/{p-6fdbd448.system.entry.js → p-d864a0e3.system.entry.js} +1 -1
  421. package/lib/duet/{p-ba9103db.entry.js → p-da0e04fa.entry.js} +1 -1
  422. package/lib/duet/{p-ea4fda73.entry.js → p-dcaed1b0.entry.js} +1 -1
  423. package/lib/duet/{p-ecef885c.system.entry.js → p-e0db152c.system.entry.js} +1 -1
  424. package/lib/duet/p-e19067f1.js +4 -0
  425. package/lib/duet/p-e276fee0.js +4 -0
  426. package/lib/duet/{p-52c59c2c.system.entry.js → p-e27a4bf4.system.entry.js} +1 -1
  427. package/lib/duet/{p-0fd839a0.system.entry.js → p-e3c31f72.system.entry.js} +1 -1
  428. package/lib/duet/{p-74553378.system.entry.js → p-e72a7aa6.system.entry.js} +1 -1
  429. package/lib/duet/{p-7023e868.system.entry.js → p-e79d2de2.system.entry.js} +1 -1
  430. package/lib/duet/{p-00b69a62.system.entry.js → p-e7b6657c.system.entry.js} +1 -1
  431. package/lib/duet/{p-c1175891.entry.js → p-e7ffb722.entry.js} +1 -1
  432. package/lib/duet/{p-551ecb84.system.entry.js → p-ed8efd4d.system.entry.js} +1 -1
  433. package/lib/duet/{p-ce96df8c.entry.js → p-f1843c31.entry.js} +1 -1
  434. package/lib/duet/{p-37d69db5.system.entry.js → p-f43327c2.system.entry.js} +1 -1
  435. package/lib/duet/{p-7308b57e.entry.js → p-f61c00e3.entry.js} +1 -1
  436. package/lib/duet/{p-ccd19d96.entry.js → p-f7e13990.entry.js} +1 -1
  437. package/lib/duet/{p-c75daf42.entry.js → p-f801f2a7.entry.js} +1 -1
  438. package/lib/duet/{p-8dbbed25.entry.js → p-fa6061c9.entry.js} +1 -1
  439. package/lib/duet/{p-0d7d648a.system.entry.js → p-fbbfcc2d.system.entry.js} +1 -1
  440. package/lib/duet/{p-660bc31f.entry.js → p-fcb84038.entry.js} +1 -1
  441. package/lib/duet/{p-550162dd.entry.js → p-fdeb4f7d.entry.js} +1 -1
  442. package/lib/duet/{p-f2f0f553.system.entry.js → p-fe79a10c.system.entry.js} +1 -1
  443. package/lib/duet/{p-a1093ef2.entry.js → p-fea9215a.entry.js} +1 -1
  444. package/lib/duet/{p-cee353f7.entry.js → p-fefcaeb4.entry.js} +1 -1
  445. package/lib/duet/{p-04dc3f5f.system.entry.js → p-ffdb9d3f.system.entry.js} +1 -1
  446. package/lib/esm/duet-action-button.entry.js +3 -3
  447. package/lib/esm/duet-alert.entry.js +2 -2
  448. package/lib/esm/duet-badge.entry.js +1 -1
  449. package/lib/esm/duet-banner.entry.js +2 -2
  450. package/lib/esm/duet-breadcrumb.entry.js +2 -2
  451. package/lib/esm/duet-breadcrumbs.entry.js +2 -2
  452. package/lib/esm/duet-button_2.entry.js +2 -2
  453. package/lib/esm/duet-callout.entry.js +1 -1
  454. package/lib/esm/duet-caption_4.entry.js +2 -2
  455. package/lib/esm/duet-card.entry.js +3 -3
  456. package/lib/esm/duet-checkbox.entry.js +1 -1
  457. package/lib/esm/duet-checkmark.entry.js +1 -1
  458. package/lib/esm/duet-chip.entry.js +2 -2
  459. package/lib/esm/duet-choice_2.entry.js +3 -3
  460. package/lib/esm/duet-collapsible.entry.js +2 -2
  461. package/lib/esm/duet-combobox.entry.js +2 -2
  462. package/lib/esm/duet-contact-card.entry.js +1 -1
  463. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  464. package/lib/esm/duet-date-picker.entry.js +2 -2
  465. package/lib/esm/duet-divider_2.entry.js +2 -2
  466. package/lib/esm/duet-editable-table_3.entry.js +3 -3
  467. package/lib/esm/duet-empty-state.entry.js +1 -1
  468. package/lib/esm/duet-fieldset.entry.js +1 -1
  469. package/lib/esm/duet-file-chooser.entry.js +1 -1
  470. package/lib/esm/duet-footer.entry.js +2 -2
  471. package/lib/esm/duet-grid_2.entry.js +1 -1
  472. package/lib/esm/duet-header_2.entry.js +2 -2
  473. package/lib/esm/duet-hero.entry.js +2 -2
  474. package/lib/esm/duet-icon.entry.js +2 -2
  475. package/lib/esm/duet-input_2.entry.js +3 -3
  476. package/lib/esm/duet-layout.entry.js +1 -1
  477. package/lib/esm/duet-list_2.entry.js +1 -1
  478. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  479. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +2 -2
  480. package/lib/esm/duet-menu-bar-dropdown.entry.js +2 -2
  481. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  482. package/lib/esm/duet-menu-bar.entry.js +1 -1
  483. package/lib/esm/duet-modal.entry.js +3 -3
  484. package/lib/esm/duet-multiselect.entry.js +2 -2
  485. package/lib/esm/duet-nav.entry.js +3 -3
  486. package/lib/esm/duet-notification_2.entry.js +2 -2
  487. package/lib/esm/duet-number-input.entry.js +2 -2
  488. package/lib/esm/duet-page-heading.entry.js +1 -1
  489. package/lib/esm/duet-pagination_2.entry.js +3 -3
  490. package/lib/esm/duet-popup-menu-item.entry.js +1 -1
  491. package/lib/esm/duet-popup-menu.entry.js +3 -3
  492. package/lib/esm/duet-progress.entry.js +1 -1
  493. package/lib/esm/duet-promo-card.entry.js +2 -2
  494. package/lib/esm/duet-radio_2.entry.js +1 -1
  495. package/lib/esm/duet-range-slider.entry.js +2 -2
  496. package/lib/esm/duet-scrollable_3.entry.js +89 -6
  497. package/lib/esm/duet-section-layout.entry.js +1 -1
  498. package/lib/esm/duet-select.entry.js +1 -1
  499. package/lib/esm/duet-shaped-image.entry.js +1 -1
  500. package/lib/esm/duet-show-more.entry.js +2 -2
  501. package/lib/esm/duet-slideout-lang.entry.js +1 -1
  502. package/lib/esm/duet-slideout-link.entry.js +1 -1
  503. package/lib/esm/duet-slideout-panel-dropdown.entry.js +2 -2
  504. package/lib/esm/duet-slideout-panel.entry.js +10 -7
  505. package/lib/esm/duet-slideout.entry.js +14 -5
  506. package/lib/esm/duet-step_2.entry.js +2 -2
  507. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +2 -2
  508. package/lib/esm/duet-submenu-bar-dropdown.entry.js +2 -2
  509. package/lib/esm/duet-submenu-bar-link.entry.js +2 -2
  510. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  511. package/lib/esm/duet-textarea.entry.js +1 -1
  512. package/lib/esm/duet-toggle.entry.js +2 -2
  513. package/lib/esm/duet-toolbar-dropdown-link.entry.js +2 -2
  514. package/lib/esm/duet-toolbar-dropdown.entry.js +3 -3
  515. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  516. package/lib/esm/duet-toolbar.entry.js +1 -1
  517. package/lib/esm/duet-tooltip-button_2.entry.js +3 -3
  518. package/lib/esm/duet-tooltip.entry.js +15 -18
  519. package/lib/esm/duet-tray.entry.js +2 -2
  520. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  521. package/lib/esm/duet-upload-item.entry.js +1 -1
  522. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  523. package/lib/esm/duet.js +3 -3
  524. package/lib/esm/{focus-utils-6bb7f477.js → focus-utils-a9110b59.js} +1 -1
  525. package/lib/esm/{index-eeb87403.js → index-ad0e5e61.js} +1 -1
  526. package/lib/esm/{keyboard-utils-eba88365.js → keyboard-utils-c472d19d.js} +2 -1
  527. package/lib/esm/loader.js +3 -3
  528. package/lib/esm/{token-utils-d09165bc.js → token-utils-0c77cb3c.js} +23 -2
  529. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  530. package/lib/esm-es5/duet-alert.entry.js +1 -1
  531. package/lib/esm-es5/duet-badge.entry.js +1 -1
  532. package/lib/esm-es5/duet-banner.entry.js +1 -1
  533. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  534. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  535. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  536. package/lib/esm-es5/duet-callout.entry.js +1 -1
  537. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  538. package/lib/esm-es5/duet-card.entry.js +1 -1
  539. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  540. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  541. package/lib/esm-es5/duet-chip.entry.js +1 -1
  542. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  543. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  544. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  545. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  546. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  547. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  548. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  549. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  550. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  551. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  552. package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
  553. package/lib/esm-es5/duet-footer.entry.js +1 -1
  554. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  555. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  556. package/lib/esm-es5/duet-hero.entry.js +1 -1
  557. package/lib/esm-es5/duet-icon.entry.js +1 -1
  558. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  559. package/lib/esm-es5/duet-layout.entry.js +1 -1
  560. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  561. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  562. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  563. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +1 -1
  564. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  565. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  566. package/lib/esm-es5/duet-modal.entry.js +1 -1
  567. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  568. package/lib/esm-es5/duet-nav.entry.js +1 -1
  569. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  570. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  571. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  572. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  573. package/lib/esm-es5/duet-popup-menu-item.entry.js +1 -1
  574. package/lib/esm-es5/duet-popup-menu.entry.js +1 -1
  575. package/lib/esm-es5/duet-progress.entry.js +1 -1
  576. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  577. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  578. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  579. package/lib/esm-es5/duet-scrollable_3.entry.js +2 -2
  580. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  581. package/lib/esm-es5/duet-select.entry.js +1 -1
  582. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  583. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  584. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  585. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  586. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  587. package/lib/esm-es5/duet-slideout-panel.entry.js +2 -2
  588. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  589. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  590. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  591. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  592. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  593. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  594. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  595. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  596. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  597. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  598. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  599. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  600. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  601. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  602. package/lib/esm-es5/duet-tray.entry.js +1 -1
  603. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  604. package/lib/esm-es5/duet-upload-item.entry.js +1 -1
  605. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  606. package/lib/esm-es5/duet.js +1 -1
  607. package/lib/esm-es5/{focus-utils-6bb7f477.js → focus-utils-a9110b59.js} +1 -1
  608. package/lib/esm-es5/{index-eeb87403.js → index-ad0e5e61.js} +1 -1
  609. package/lib/esm-es5/{keyboard-utils-eba88365.js → keyboard-utils-c472d19d.js} +1 -1
  610. package/lib/esm-es5/loader.js +1 -1
  611. package/lib/esm-es5/token-utils-0c77cb3c.js +4 -0
  612. package/lib/types/components/duet-slideout/duet-slideout.d.ts +1 -0
  613. package/lib/types/components/duet-slideout-panel/duet-slideout-panel.d.ts +4 -0
  614. package/lib/types/components/duet-tab/duet-tab.d.ts +22 -2
  615. package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +2 -1
  616. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +1 -2
  617. package/lib/types/components.d.ts +22 -2
  618. package/lib/types/utils/keyboard-utils.d.ts +1 -0
  619. package/lib/types/utils/token-utils.d.ts +1 -0
  620. package/package.json +5 -5
  621. package/lib/duet/p-0b5a8f35.system.entry.js +0 -4
  622. package/lib/duet/p-0c61244e.entry.js +0 -4
  623. package/lib/duet/p-202208dc.entry.js +0 -4
  624. package/lib/duet/p-23354cf7.system.js +0 -4
  625. package/lib/duet/p-27bdda1e.js +0 -4
  626. package/lib/duet/p-2bb2b022.js +0 -4
  627. package/lib/duet/p-3ecd388c.system.entry.js +0 -4
  628. package/lib/duet/p-4dd4b992.entry.js +0 -4
  629. package/lib/duet/p-5795b0d9.system.js +0 -4
  630. package/lib/duet/p-74591e44.system.entry.js +0 -4
  631. package/lib/duet/p-94c3e67c.system.entry.js +0 -4
  632. package/lib/duet/p-9dff8650.js +0 -4
  633. package/lib/duet/p-bbd9ecae.entry.js +0 -4
  634. package/lib/duet/p-c3722531.system.entry.js +0 -4
  635. package/lib/duet/p-d840ef25.entry.js +0 -4
  636. package/lib/duet/p-e6949dbe.entry.js +0 -4
  637. package/lib/duet/p-f08d659e.entry.js +0 -4
  638. package/lib/duet/p-f64ba41c.entry.js +0 -4
  639. package/lib/duet/p-f7c03d05.entry.js +0 -4
  640. package/lib/esm-es5/token-utils-d09165bc.js +0 -4
package/hydrate/index.js CHANGED
@@ -7635,6 +7635,7 @@ const isArrowRightKey = (e) => e.key === "ArrowRight" || e.key === "Right";
7635
7635
  const isArrowDownKey = (e) => e.key === "ArrowDown" || e.key === "Down";
7636
7636
  const isArrowKey = (e) => isArrowDownKey(e) || isArrowRightKey(e) || isArrowUpKey(e) || isArrowLeftKey(e);
7637
7637
  const isEscapeKey = (e) => e.key === "Escape" || e.key === "Esc";
7638
+ const isShiftTabKey = (e) => e.shiftKey && e.key === "Tab";
7638
7639
  const isTabKey = (e) => e.key === "Tab";
7639
7640
  const isBackspaceKey = (e) => e.key === "Backspace";
7640
7641
  const isSpaceKey = (e) => e.key === " " || e.key === "Spacebar";
@@ -8250,6 +8251,27 @@ function convertToColorName(name = "", theme = "") {
8250
8251
  colorResolution = lowerCaseFirst(colorResolution);
8251
8252
  return colorResolution;
8252
8253
  }
8254
+ function getTokenByName(prefix, name) {
8255
+ if (!name) {
8256
+ return undefined;
8257
+ }
8258
+ let tokenResolution = name;
8259
+ const dash = isDashCase(name);
8260
+ if (dash) {
8261
+ tokenResolution = camelize(tokenResolution);
8262
+ }
8263
+ tokenResolution = addPrefix(prefix, tokenResolution);
8264
+ tokenResolution = lowerCaseFirst(tokenResolution);
8265
+ try {
8266
+ return tokens$2[tokenResolution];
8267
+ }
8268
+ catch (e) {
8269
+ return undefined;
8270
+ }
8271
+ }
8272
+ function getShadowByName(name) {
8273
+ return getTokenByName("shadow", name);
8274
+ }
8253
8275
  function rgbaColorFromRgb(color, opacity) {
8254
8276
  if (!color || (opacity !== 0 && !opacity)) {
8255
8277
  return undefined;
@@ -13776,7 +13798,7 @@ class DuetHero {
13776
13798
  href: this.processedBack.href,
13777
13799
  id: this.processedBack.id,
13778
13800
  analyticsId: this.processedBack.analyticsId,
13779
- }) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (hAsync("duet-icon", { class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), hAsync("div", { class: { "duet-hero-text": true }, part: "duet-hero-text" }, (this.preHeading || this.hasPreHeadingSlot) && (hAsync("duet-paragraph", { margin: "none", class: "duet-hero-pre", size: this.variation === "content" ? "small" : "medium" }, this.preHeading ? (this.preHeading) : (hAsync("span", null, hAsync("slot", { name: "pre-heading", onSlotchange: ev => slotElementCheck(ev, this, "span") }))))), hAsync("slot", { name: "badge" }), (this.heading || this.hasHeadingSlot) && (hAsync("duet-heading", { theme: this.theme, level: this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: headingColor, visualLevel: headingVisualLevel, margin: campaignOrSection ? "none" : "auto" }, this.heading ? (this.heading) : (hAsync("span", null, hAsync("slot", { name: "heading", onSlotchange: ev => slotElementCheck(ev, this, "span") }))))), campaignOrSection && this.hasSubHeadingSlot && (hAsync("duet-heading", { theme: this.theme, level: this.subHeadingLevel, class: { "duet-hero-subheading": true }, color: this.theme === "turva" ? "secondary-turva" : "secondary", visualLevel: "h2" }, hAsync("span", null, hAsync("slot", { name: "subheading", onSlotchange: ev => slotElementCheck(ev, this, "span") })))), this.description && (hAsync("duet-paragraph", { theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (hAsync("duet-list", { theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (hAsync("duet-list-item", null, hAsync("span", { slot: "label" }, item.label), hAsync("span", { slot: "value" }, item.value)))))), this.buttonLabel && (hAsync("duet-button", { url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), hAsync("span", { class: "duet-hero-slot-unnamed" }, hAsync("slot", null))), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (hAsync("div", { class: "duet-hero-links" }, this.processedActions.map(item => (hAsync("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, hAsync("div", { class: "duet-hero-action-icon" }, hAsync("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), hAsync("span", null, item.label), item.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (hAsync("div", { class: "duet-hero-action-arrow" }, hAsync("duet-icon", { icon: actionNewWindowSmall.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image &&
13801
+ }) }, this.processedBack.label))), (this.variation === "gray" || this.variation === "minimal") && this.categoryIcon && (hAsync("duet-icon", { class: { "duet-hero-icon": true, "duet-hero-icon-has-heading": this.preHeading !== "" }, size: "x-large", background: this.categoryIconColor, name: this.categoryIcon })), hAsync("div", { class: { "duet-hero-text": true }, part: "duet-hero-text" }, (this.preHeading || this.hasPreHeadingSlot) && (hAsync("duet-paragraph", { margin: "none", class: "duet-hero-pre", size: this.variation === "content" ? "small" : "medium" }, this.preHeading ? (this.preHeading) : (hAsync("span", null, hAsync("slot", { name: "pre-heading", onSlotchange: ev => slotElementCheck(ev, this, "span") }))))), hAsync("slot", { name: "badge" }), (this.heading || this.hasHeadingSlot) && (hAsync("duet-heading", { theme: this.theme, level: this.level, class: { "duet-hero-heading": true, "duet-hero-heading-has-pre": this.preHeading !== "" }, color: headingColor, visualLevel: headingVisualLevel, margin: campaignOrSection ? "none" : "auto" }, this.heading ? (this.heading) : (hAsync("span", null, hAsync("slot", { name: "heading", onSlotchange: ev => slotElementCheck(ev, this, "span") }))))), campaignOrSection && this.hasSubHeadingSlot && (hAsync("duet-heading", { theme: this.theme, level: this.subHeadingLevel, class: { "duet-hero-subheading": true }, color: this.theme === "turva" ? "secondary-turva" : "secondary", visualLevel: "h2" }, hAsync("span", null, hAsync("slot", { name: "subheading", onSlotchange: ev => slotElementCheck(ev, this, "span") })))), this.description && (hAsync("duet-paragraph", { theme: this.theme, color: textColor, variation: "intro" }, this.description)), (this.variation === "gray" || this.variation === "minimal") && this.processedListItems && (hAsync("duet-list", { theme: this.theme, "label-width": "30", breakpoint: "large", mobile: this.leftAlign ? undefined : "center" }, this.processedListItems.map(item => (hAsync("duet-list-item", null, hAsync("span", { slot: "label" }, item.label), hAsync("span", { slot: "value" }, item.value)))))), this.buttonLabel && (hAsync("duet-button", { url: this.buttonUrl, icon: this.icon, iconRight: this.iconRight, iconSize: this.iconSize, variation: buttonVariation, theme: this.theme, identifier: this.buttonId, onClick: event => this.handleClick(event, this.buttonData), fixed: true }, this.buttonLabel)), hAsync("div", { class: "duet-hero-slot-unnamed" }, hAsync("slot", null))), (this.variation === "gray" || this.variation === "minimal") && this.processedActions && (hAsync("div", { class: "duet-hero-links" }, this.processedActions.map(item => (hAsync("a", { class: "duet-hero-link", href: item.href, id: item.id, target: item.external ? "_blank" : "_self", onClick: event => this.handleClick(event, item) }, hAsync("div", { class: "duet-hero-action-icon" }, hAsync("duet-icon", { size: "small", margin: "none", name: item.icon, color: "currentColor", outline: outlineColor })), hAsync("span", null, item.label), item.external && hAsync("duet-visually-hidden", null, ", ", this.accessibleLabelExternal), item.external && (hAsync("div", { class: "duet-hero-action-arrow" }, hAsync("duet-icon", { icon: actionNewWindowSmall.svg, size: "xx-small", margin: "none", color: "currentColor" })))))))), this.image &&
13780
13802
  this.variation !== "image" &&
13781
13803
  !campaignOrSection &&
13782
13804
  this.variation !== "product" &&
@@ -15951,7 +15973,7 @@ class DuetMultiselect {
15951
15973
  }; }
15952
15974
  }
15953
15975
 
15954
- const duetNavCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-nav,*.sc-duet-nav::after,*.sc-duet-nav::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-nav-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%}/*!@slot[name=mobile]*/slot[name=mobile].sc-duet-nav{display:inherit}/*!@slot[name=desktop]*/slot[name=desktop].sc-duet-nav{display:none}@media (min-width: 62em){/*!@slot[name=mobile]*/slot[name=mobile].sc-duet-nav{display:none}/*!@slot[name=desktop]*/slot[name=desktop].sc-duet-nav{display:inherit}}";
15976
+ const duetNavCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-nav,*.sc-duet-nav::after,*.sc-duet-nav::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-nav-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;width:100%}/*!@.container*/.container.sc-duet-nav{position:relative;z-index:400}/*!@slot[name=mobile]*/slot[name=mobile].sc-duet-nav{display:inherit}/*!@slot[name=desktop]*/slot[name=desktop].sc-duet-nav{display:none}@media (min-width: 62em){/*!@slot[name=mobile]*/slot[name=mobile].sc-duet-nav{display:none}/*!@slot[name=desktop]*/slot[name=desktop].sc-duet-nav{display:inherit}}";
15955
15977
 
15956
15978
  /**
15957
15979
  * @slot default - Slot for keyboard accessible initially hidden links. Use duet-link with tab-to-link attribute.
@@ -15974,7 +15996,7 @@ class DuetNav {
15974
15996
  * Always the last one in the class.
15975
15997
  */
15976
15998
  render() {
15977
- return (hAsync(Host, null, hAsync("div", null, hAsync("slot", null), hAsync("slot", { name: "mobile" }), hAsync("slot", { name: "desktop" }))));
15999
+ return (hAsync(Host, null, hAsync("div", { class: "container" }, hAsync("slot", null), hAsync("slot", { name: "mobile" }), hAsync("slot", { name: "desktop" }))));
15978
16000
  }
15979
16001
  get element() { return getElement(this); }
15980
16002
  static get style() { return duetNavCss; }
@@ -19941,7 +19963,7 @@ class DuetShowMore {
19941
19963
  }; }
19942
19964
  }
19943
19965
 
19944
- const duetSlideoutCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-slideout,*.sc-duet-slideout::after,*.sc-duet-slideout::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-slideout-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;height:100%}/*!@::slotted(*)*/.sc-duet-slideout-s>*{position:relative;width:100%;visibility:hidden;opacity:0}/*!@:host([open]) ::slotted(*)*/.sc-duet-slideout-h[open] .sc-duet-slideout-s>*{visibility:visible;opacity:1}/*!@:host(:not([open])) ::slotted(duet-slideout-panel)*/.sc-duet-slideout-h:not([open]) .sc-duet-slideout-s>duet-slideout-panel{display:none}/*!@.duet-slideout*/.duet-slideout.sc-duet-slideout{display:flex;align-items:center;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.5;color:rgb(0, 41, 77)}/*!@.duet-slideout.duet-theme-turva*/.duet-slideout.duet-theme-turva.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout .desktop-bg*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout{display:none}@media (min-width: 62em){/*!@.duet-slideout .desktop-bg*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout{position:fixed;top:0;left:0;z-index:400;display:block;width:100%;height:100%;visibility:hidden;background:rgba(0, 41, 77, 0.6);opacity:0;transition:600ms ease}/*!@.duet-slideout .desktop-bg:not(.hidden)*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout:not(.hidden){visibility:visible;opacity:1;transition:600ms ease}}@media (min-width: 62em){/*!@.duet-slideout.duet-theme-turva .desktop-bg*/.duet-slideout.duet-theme-turva.sc-duet-slideout .desktop-bg.sc-duet-slideout{background:rgba(23, 28, 58, 0.6)}}/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{position:fixed;top:0;bottom:0;left:0;z-index:400;width:100%;height:100%;padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset}@media (min-width: 62em){/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{right:0;left:auto;width:500px;padding-bottom:0;transition:right 300ms ease;transition-delay:0s}}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout{position:sticky;top:0;z-index:200}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(243, 249, 252)}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{display:block}/*!@.duet-slideout .dialog .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;padding:4px}/*!@.duet-slideout .dialog .top button*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout{cursor:pointer}/*!@.duet-slideout .dialog .top button:focus*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout .dialog .top duet-icon*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout duet-icon.sc-duet-slideout{padding:16px}/*!@.duet-slideout .dialog .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .sticky-header.sc-duet-slideout{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-slideout .dialog .items*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .items.sc-duet-slideout{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:0 1.5rem}/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{pointer-events:none;visibility:hidden}@media (min-width: 62em){/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{right:-500px;transition:300ms ease}}/*!@.duet-slideout.duet-theme-turva .dialog*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}/*!@.duet-slideout.duet-theme-turva button*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout.duet-theme-turva button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout.duet-theme-turva button.active*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout{color:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva button.active::after*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout::after{background:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .top*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(245, 245, 247)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .sticky-header*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-slideout.duet-theme-turva .dialog .top button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@slot*/slot.sc-duet-slideout{color:rgb(0, 41, 77)}/*!@.duet-theme-turva slot*/.duet-theme-turva.sc-duet-slideout slot.sc-duet-slideout{color:rgb(23, 28, 58)}";
19966
+ const duetSlideoutCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-slideout,*.sc-duet-slideout::after,*.sc-duet-slideout::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-slideout-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:absolute;height:100%}/*!@::slotted(*)*/.sc-duet-slideout-s>*{position:relative;width:100%;visibility:hidden;opacity:0}/*!@:host([open]:not([open=false])) ::slotted(*)*/.sc-duet-slideout-h[open]:not([open=false]) .sc-duet-slideout-s>*{visibility:visible;opacity:1}/*!@:host(:not([open])) ::slotted(duet-slideout-panel)*/.sc-duet-slideout-h:not([open]) .sc-duet-slideout-s>duet-slideout-panel{display:none}/*!@.duet-slideout*/.duet-slideout.sc-duet-slideout{display:flex;align-items:center;height:100%;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:400;line-height:1.5;color:rgb(0, 41, 77)}/*!@.duet-slideout.duet-theme-turva*/.duet-slideout.duet-theme-turva.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout .desktop-bg*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout{display:none}@media (min-width: 62em){/*!@.duet-slideout .desktop-bg*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout{position:fixed;top:0;left:0;z-index:400;display:block;width:100%;height:100%;visibility:hidden;background:rgba(0, 41, 77, 0.6);opacity:0;transition:600ms ease}/*!@.duet-slideout .desktop-bg:not(.hidden)*/.duet-slideout.sc-duet-slideout .desktop-bg.sc-duet-slideout:not(.hidden){visibility:visible;opacity:1;transition:600ms ease}}@media (min-width: 62em){/*!@.duet-slideout.duet-theme-turva .desktop-bg*/.duet-slideout.duet-theme-turva.sc-duet-slideout .desktop-bg.sc-duet-slideout{background:rgba(23, 28, 58, 0.6)}}/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{position:fixed;top:0;bottom:0;left:0;z-index:400;width:100%;height:100%;padding-bottom:75px;overflow-y:auto;box-shadow:0 3px 6px 0 rgba(0, 41, 77, 0.1) inset}@media (min-width: 62em){/*!@.duet-slideout .dialog*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout{right:0;left:auto;width:500px;padding-bottom:0;transition:right 300ms ease;transition-delay:0s}}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout{position:sticky;top:0;z-index:200}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(243, 249, 252)}/*!@.duet-slideout .dialog .top-container.has-sticky-header-slot .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top-container.has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{display:block}/*!@.duet-slideout .dialog .top*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout{position:relative;z-index:1;display:flex;align-items:center;justify-content:flex-end;padding:4px}/*!@.duet-slideout .dialog .top button*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout{cursor:pointer}/*!@.duet-slideout .dialog .top button:focus*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout .dialog .top duet-icon*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout duet-icon.sc-duet-slideout{padding:16px}/*!@.duet-slideout .dialog .sticky-header*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .sticky-header.sc-duet-slideout{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-slideout .dialog .items*/.duet-slideout.sc-duet-slideout .dialog.sc-duet-slideout .items.sc-duet-slideout{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;padding:0 1.5rem}/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{pointer-events:none;visibility:hidden}@media (min-width: 62em){/*!@.duet-slideout .dialog.hidden*/.duet-slideout.sc-duet-slideout .dialog.hidden.sc-duet-slideout{right:-500px;transition:300ms ease}}/*!@.duet-slideout.duet-theme-turva .dialog*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout{box-shadow:0 3px 6px 0 rgba(23, 28, 58, 0.1) inset}/*!@.duet-slideout.duet-theme-turva button*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout.duet-theme-turva button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout.duet-theme-turva button.active*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout{color:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva button.active::after*/.duet-slideout.duet-theme-turva.sc-duet-slideout button.active.sc-duet-slideout::after{background:rgb(198, 12, 48)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .top*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .top.sc-duet-slideout{background:rgb(245, 245, 247)}/*!@.duet-slideout.duet-theme-turva .has-sticky-header-slot .sticky-header*/.duet-slideout.duet-theme-turva.sc-duet-slideout .has-sticky-header-slot.sc-duet-slideout .sticky-header.sc-duet-slideout{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-slideout.duet-theme-turva .dialog .top button:focus*/.duet-slideout.duet-theme-turva.sc-duet-slideout .dialog.sc-duet-slideout .top.sc-duet-slideout button.sc-duet-slideout:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@slot*/slot.sc-duet-slideout{color:rgb(0, 41, 77)}/*!@.duet-theme-turva slot*/.duet-theme-turva.sc-duet-slideout slot.sc-duet-slideout{color:rgb(23, 28, 58)}";
19945
19967
 
19946
19968
  /**
19947
19969
  * @slot sticky-header - Content will be fixed to the top of the modal when scrolling.
@@ -19974,6 +19996,13 @@ class DuetSlideout {
19974
19996
  }
19975
19997
  catch (_e) { }
19976
19998
  };
19999
+ this.setStickHeaderStyleMutations = (clean = false) => {
20000
+ const stickyHeaderTabGroups = this.element.querySelectorAll('[slot="sticky-header"] duet-tab-group');
20001
+ stickyHeaderTabGroups.forEach(tabGroup => {
20002
+ tabGroup.style.position = clean ? null : "relative";
20003
+ tabGroup.style.top = clean ? null : "1px";
20004
+ });
20005
+ };
19977
20006
  this.openButtonEventListener = (e) => {
19978
20007
  e.stopPropagation();
19979
20008
  e.preventDefault();
@@ -20030,6 +20059,7 @@ class DuetSlideout {
20030
20059
  if (this.openButton) {
20031
20060
  this.openButton.removeEventListener("click", this.openButtonEventListener);
20032
20061
  }
20062
+ this.setStickHeaderStyleMutations(true);
20033
20063
  }
20034
20064
  handleOpenChange(newValue, oldValue) {
20035
20065
  if (!!newValue === !!oldValue) {
@@ -20269,8 +20299,11 @@ class DuetSlideoutLink {
20269
20299
  }; }
20270
20300
  }
20271
20301
 
20272
- const duetSlideoutPanelCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-slideout-panel,*.sc-duet-slideout-panel::after,*.sc-duet-slideout-panel::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-slideout-panel-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;height:100%}/*!@:host slot:not([name=label])::slotted(*)*/.sc-duet-slideout-panel-h slot:not([name=label]).sc-duet-slideout-panel-s>*{position:relative;top:0.5rem;opacity:0;transition:top 0.3s ease-in, opacity 0.3s ease-in}/*!@:host([open]) slot:not([name=label])::slotted(*)*/.sc-duet-slideout-panel-h[open] slot:not([name=label]).sc-duet-slideout-panel-s>*{top:0;opacity:1}/*!@.duet-slideout-panel*/.duet-slideout-panel.sc-duet-slideout-panel{position:relative;height:100%}/*!@.duet-slideout-panel .link*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel{position:relative;display:flex;gap:20px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:8px 0;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.5rem;font-weight:800;line-height:1.25;color:rgb(0, 41, 77);text-align:left;text-decoration:none;cursor:pointer}/*!@.duet-slideout-panel .link .label*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label.sc-duet-slideout-panel{display:flex;gap:0.5rem;align-items:center;justify-content:space-between;width:100%}/*!@.duet-slideout-panel .link .label-text.small*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label-text.small.sc-duet-slideout-panel{font-size:1rem;font-weight:600}/*!@.duet-slideout-panel .link .label-text.medium*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label-text.medium.sc-duet-slideout-panel{font-size:1.25rem;font-weight:600}/*!@.duet-slideout-panel .link .label-text.large*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label-text.large.sc-duet-slideout-panel{font-size:1.5rem;font-weight:800}/*!@.duet-slideout-panel .link:focus*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout-panel .link.active .label-text*/.duet-slideout-panel.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.sc-duet-slideout-panel{position:relative}/*!@.duet-slideout-panel .link.active .label-text.small::after*/.duet-slideout-panel.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.small.sc-duet-slideout-panel::after{height:1px;transform:translateY(1px)}/*!@.duet-slideout-panel .link.active .label-text::after*/.duet-slideout-panel.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.sc-duet-slideout-panel::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:2px;content:\"\";background:rgb(0, 119, 179);transform:translateY(2px)}/*!@.duet-slideout-panel .dialog*/.duet-slideout-panel.sc-duet-slideout-panel .dialog.sc-duet-slideout-panel{position:fixed;top:0;left:0;z-index:600;width:100%;height:100%;overflow-y:auto;visibility:visible}/*!@.duet-slideout-panel .dialog.hidden*/.duet-slideout-panel.sc-duet-slideout-panel .dialog.hidden.sc-duet-slideout-panel{visibility:hidden}/*!@.duet-slideout-panel .dialog.hidden .top .back,\n.duet-slideout-panel .dialog.hidden .top span*/.duet-slideout-panel.sc-duet-slideout-panel .dialog.hidden.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel,.duet-slideout-panel.sc-duet-slideout-panel .dialog.hidden.sc-duet-slideout-panel .top.sc-duet-slideout-panel span.sc-duet-slideout-panel{opacity:0}/*!@.duet-slideout-panel .top*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel{display:flex;align-items:center;justify-content:space-between;padding:4px}/*!@.duet-slideout-panel .top .back*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel{opacity:1;transition:top 0.3s ease-in, opacity 0.3s ease-in}/*!@.duet-slideout-panel .top .back:focus,\n.duet-slideout-panel .top .close:focus*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel:focus,.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel .close.sc-duet-slideout-panel:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout-panel .top duet-icon*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel duet-icon.sc-duet-slideout-panel{padding:16px}/*!@.duet-slideout-panel .top span*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel span.sc-duet-slideout-panel{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;line-height:1.5;color:rgb(0, 41, 77);opacity:1;transition:top 0.3s ease-in, opacity 0.3s ease-in}/*!@.duet-slideout-panel .items*/.duet-slideout-panel.sc-duet-slideout-panel .items.sc-duet-slideout-panel{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:1rem 16px;overflow-y:auto;color:rgb(0, 41, 77)}/*!@.duet-slideout-panel.duet-theme-turva .link*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .link.sc-duet-slideout-panel{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout-panel.duet-theme-turva .link:focus*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .link.sc-duet-slideout-panel:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout-panel.duet-theme-turva .link.active .label-text::after*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.sc-duet-slideout-panel::after{background:rgb(198, 12, 48)}/*!@.duet-slideout-panel.duet-theme-turva .top .back:focus,\n.duet-slideout-panel.duet-theme-turva .top .close:focus*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel:focus,.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .top.sc-duet-slideout-panel .close.sc-duet-slideout-panel:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout-panel.duet-theme-turva .top span*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .top.sc-duet-slideout-panel span.sc-duet-slideout-panel{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@slot:not([name=label])*/slot.sc-duet-slideout-panel:not([name=label]){--active-height:1px;--active-translate-y:translateY(1px);font-size:1rem;font-weight:600;color:rgb(0, 41, 77)}/*!@.duet-theme-turva slot:not([name=label])*/.duet-theme-turva.sc-duet-slideout-panel slot.sc-duet-slideout-panel:not([name=label]){color:rgb(23, 28, 58)}";
20302
+ const duetSlideoutPanelCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-slideout-panel,*.sc-duet-slideout-panel::after,*.sc-duet-slideout-panel::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-slideout-panel-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;height:100%}/*!@:host slot:not([name=label])::slotted(*)*/.sc-duet-slideout-panel-h slot:not([name=label]).sc-duet-slideout-panel-s>*{position:relative;top:0.5rem;opacity:0;transition:top 0.3s ease-in, opacity 0.3s ease-in}/*!@:host([open]) slot:not([name=label])::slotted(*)*/.sc-duet-slideout-panel-h[open] slot:not([name=label]).sc-duet-slideout-panel-s>*{top:0;opacity:1}/*!@.duet-slideout-panel*/.duet-slideout-panel.sc-duet-slideout-panel{position:relative;height:100%}/*!@.duet-slideout-panel .link*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel{position:relative;display:flex;gap:20px;align-items:center;justify-content:flex-start;width:100%;height:100%;padding:8px 0;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1.5rem;font-weight:800;line-height:1.25;color:rgb(0, 41, 77);text-align:left;text-decoration:none;cursor:pointer}/*!@.duet-slideout-panel .link .label*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label.sc-duet-slideout-panel{display:flex;gap:0.5rem;align-items:center;justify-content:space-between;width:100%}/*!@.duet-slideout-panel .link .label-text.small*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label-text.small.sc-duet-slideout-panel{font-size:1rem;font-weight:600}/*!@.duet-slideout-panel .link .label-text.medium*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label-text.medium.sc-duet-slideout-panel{font-size:1.25rem;font-weight:600}/*!@.duet-slideout-panel .link .label-text.large*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel .label-text.large.sc-duet-slideout-panel{font-size:1.5rem;font-weight:800}/*!@.duet-slideout-panel .link:focus*/.duet-slideout-panel.sc-duet-slideout-panel .link.sc-duet-slideout-panel:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout-panel .link.active .label-text*/.duet-slideout-panel.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.sc-duet-slideout-panel{position:relative}/*!@.duet-slideout-panel .link.active .label-text.small::after*/.duet-slideout-panel.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.small.sc-duet-slideout-panel::after{height:1px;transform:translateY(1px)}/*!@.duet-slideout-panel .link.active .label-text::after*/.duet-slideout-panel.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.sc-duet-slideout-panel::after{position:absolute;top:auto;bottom:0;left:0;display:block;width:100%;height:2px;content:\"\";background:rgb(0, 119, 179);transform:translateY(2px)}/*!@.duet-slideout-panel .dialog*/.duet-slideout-panel.sc-duet-slideout-panel .dialog.sc-duet-slideout-panel{position:fixed;top:0;left:0;z-index:600;width:100%;height:100%;overflow-y:auto;visibility:visible}/*!@.duet-slideout-panel .dialog.hidden*/.duet-slideout-panel.sc-duet-slideout-panel .dialog.hidden.sc-duet-slideout-panel{visibility:hidden}/*!@.duet-slideout-panel .dialog.hidden .top .back,\n.duet-slideout-panel .dialog.hidden .top span*/.duet-slideout-panel.sc-duet-slideout-panel .dialog.hidden.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel,.duet-slideout-panel.sc-duet-slideout-panel .dialog.hidden.sc-duet-slideout-panel .top.sc-duet-slideout-panel span.sc-duet-slideout-panel{opacity:0}/*!@.duet-slideout-panel .top-container.has-sticky-header-slot*/.duet-slideout-panel.sc-duet-slideout-panel .top-container.has-sticky-header-slot.sc-duet-slideout-panel{position:sticky;top:0;z-index:200}/*!@.duet-slideout-panel .top-container.has-sticky-header-slot .top*/.duet-slideout-panel.sc-duet-slideout-panel .top-container.has-sticky-header-slot.sc-duet-slideout-panel .top.sc-duet-slideout-panel{background:rgb(243, 249, 252)}/*!@.duet-slideout-panel .top-container.has-sticky-header-slot .sticky-header*/.duet-slideout-panel.sc-duet-slideout-panel .top-container.has-sticky-header-slot.sc-duet-slideout-panel .sticky-header.sc-duet-slideout-panel{display:block;padding:0 16px}/*!@.duet-slideout-panel .top*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel{display:flex;align-items:center;justify-content:space-between;padding:4px}/*!@.duet-slideout-panel .top .back*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel{opacity:1;transition:top 0.3s ease-in, opacity 0.3s ease-in}/*!@.duet-slideout-panel .top .back:focus,\n.duet-slideout-panel .top .close:focus*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel:focus,.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel .close.sc-duet-slideout-panel:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}/*!@.duet-slideout-panel .top duet-icon*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel duet-icon.sc-duet-slideout-panel{padding:16px}/*!@.duet-slideout-panel .top span*/.duet-slideout-panel.sc-duet-slideout-panel .top.sc-duet-slideout-panel span.sc-duet-slideout-panel{font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:1rem;font-weight:600;line-height:1.5;color:rgb(0, 41, 77);opacity:1;transition:top 0.3s ease-in, opacity 0.3s ease-in}/*!@.duet-slideout-panel .sticky-header*/.duet-slideout-panel.sc-duet-slideout-panel .sticky-header.sc-duet-slideout-panel{display:none;width:100%;padding:0 1.5rem;margin-bottom:20px;background:rgb(243, 249, 252);border-bottom:1px solid rgb(225, 227, 230)}/*!@.duet-slideout-panel .items*/.duet-slideout-panel.sc-duet-slideout-panel .items.sc-duet-slideout-panel{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:1rem 16px;overflow-y:auto;color:rgb(0, 41, 77)}/*!@.duet-slideout-panel.duet-theme-turva .link*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .link.sc-duet-slideout-panel{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@.duet-slideout-panel.duet-theme-turva .link:focus*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .link.sc-duet-slideout-panel:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout-panel.duet-theme-turva .link.active .label-text::after*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .link.active.sc-duet-slideout-panel .label-text.sc-duet-slideout-panel::after{background:rgb(198, 12, 48)}/*!@.duet-slideout-panel.duet-theme-turva .has-sticky-header-slot .top*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .has-sticky-header-slot.sc-duet-slideout-panel .top.sc-duet-slideout-panel{background:rgb(245, 245, 247)}/*!@.duet-slideout-panel.duet-theme-turva .has-sticky-header-slot .sticky-header*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .has-sticky-header-slot.sc-duet-slideout-panel .sticky-header.sc-duet-slideout-panel{background:rgb(245, 245, 247);border-bottom:1px solid rgb(228, 228, 230)}/*!@.duet-slideout-panel.duet-theme-turva .top .back:focus,\n.duet-slideout-panel.duet-theme-turva .top .close:focus*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .top.sc-duet-slideout-panel .back.sc-duet-slideout-panel:focus,.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .top.sc-duet-slideout-panel .close.sc-duet-slideout-panel:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}/*!@.duet-slideout-panel.duet-theme-turva .top span*/.duet-slideout-panel.duet-theme-turva.sc-duet-slideout-panel .top.sc-duet-slideout-panel span.sc-duet-slideout-panel{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:rgb(23, 28, 58)}/*!@slot:not([name=label])*/slot.sc-duet-slideout-panel:not([name=label]){--active-height:1px;--active-translate-y:translateY(1px);font-size:1rem;font-weight:600;color:rgb(0, 41, 77)}/*!@.duet-theme-turva slot:not([name=label])*/.duet-theme-turva.sc-duet-slideout-panel slot.sc-duet-slideout-panel:not([name=label]){color:rgb(23, 28, 58)}";
20273
20303
 
20304
+ /**
20305
+ * @slot sticky-header - Content will be fixed to the top of the modal when scrolling.
20306
+ */
20274
20307
  class DuetSlideoutPanel {
20275
20308
  constructor(hostRef) {
20276
20309
  registerInstance(this, hostRef);
@@ -20284,6 +20317,7 @@ class DuetSlideoutPanel {
20284
20317
  fi: "Takaisin päävalikkoon",
20285
20318
  sv: "Tillbaka till huvudmenyn",
20286
20319
  };
20320
+ this.hasStickyHeaderSlot = false;
20287
20321
  this.updateLabel = () => {
20288
20322
  const labelSlotElement = this.element.querySelector("[slot='label']");
20289
20323
  this.label = labelSlotElement;
@@ -20335,6 +20369,7 @@ class DuetSlideoutPanel {
20335
20369
  componentWillLoad() {
20336
20370
  inheritGlobalTheme(this);
20337
20371
  this.updateLabel();
20372
+ this.hasStickyHeaderSlot = hasSlot(this.element, "sticky-header");
20338
20373
  }
20339
20374
  connectedCallback() {
20340
20375
  connectLanguageChangeObserver(this);
@@ -20379,12 +20414,12 @@ class DuetSlideoutPanel {
20379
20414
  } }, hAsync("button", { ref: element => (this.openButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
20380
20415
  link: true,
20381
20416
  active: this.active,
20382
- }, onClick: this.onToggleClick, inert: this.open }, this.icon && hAsync("duet-icon", { name: this.icon, size: "medium", margin: "none", color: "secondary" }), hAsync("div", { class: "label" }, hAsync("span", { class: { "label-text": true, [this.labelSize]: true } }, hAsync("slot", { name: "label" })), hAsync("duet-icon", { class: "caret", name: "action-arrow-right", margin: "none", size: "x-small", color: "secondary" }))), hAsync("div", { class: {
20417
+ }, onClick: this.onToggleClick, inert: this.open }, this.icon && hAsync("duet-icon", { name: this.icon, size: "medium", margin: "none", color: "secondary" }), hAsync("span", { class: "label" }, hAsync("span", { class: { "label-text": true, [this.labelSize]: true } }, hAsync("slot", { name: "label" })), hAsync("duet-icon", { class: "caret", name: "action-arrow-right", margin: "none", size: "x-small", color: "secondary" }))), hAsync("div", { class: {
20383
20418
  dialog: true,
20384
20419
  hidden: !this.open,
20385
- }, style: styles }, hAsync(FocusGuard, { moveFocusTo: this.closeButton }), hAsync("div", { class: "top" }, hAsync("button", { ref: element => (this.closeButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-label": `${backTranslation}`, type: "button", class: {
20420
+ }, style: styles }, hAsync(FocusGuard, { moveFocusTo: this.closeButton }), hAsync("div", { class: { "top-container": true, "has-sticky-header-slot": this.hasStickyHeaderSlot } }, hAsync("div", { class: "top" }, hAsync("button", { ref: element => (this.closeButton = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-label": `${backTranslation}`, type: "button", class: {
20386
20421
  back: true,
20387
- }, onClick: this.onToggleClick }, hAsync("duet-icon", { class: "caret", name: "action-arrow-left", margin: "none", size: "small", color: "secondary" })), hAsync("span", null, this.label.innerHTML), hAsync("button", { class: "close", type: "button", onClick: this.onCloseClick, "aria-label": `${exitTranslation}` }, hAsync("duet-icon", { name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
20422
+ }, onClick: this.onToggleClick }, hAsync("duet-icon", { class: "caret", name: "action-arrow-left", margin: "none", size: "small", color: "secondary" })), hAsync("span", null, this.label.innerHTML), hAsync("button", { class: "close", type: "button", onClick: this.onCloseClick, "aria-label": `${exitTranslation}` }, hAsync("duet-icon", { name: "navigation-close", size: "small", margin: "none", color: "secondary" }))), hAsync("div", { class: "sticky-header" }, hAsync("slot", { name: "sticky-header" }))), hAsync("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
20388
20423
  items: true,
20389
20424
  } }, hAsync("slot", null)), hAsync(FocusGuard, { moveFocusTo: this.closeButton })))));
20390
20425
  }
@@ -20456,7 +20491,7 @@ class DuetSlideoutPanelDropdown {
20456
20491
  active: this.open,
20457
20492
  } }, hAsync("button", { ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", id: "button", type: "button", class: {
20458
20493
  active: this.active,
20459
- }, onClick: this.onClick }, this.icon && hAsync("duet-icon", { name: this.icon, size: "medium", margin: "none", color: "secondary" }), hAsync("div", { class: "label" }, hAsync("slot", { name: "label" }), hAsync("duet-icon", { class: "caret", name: "action-arrow-down-small", margin: "none", size: "xx-small", color: "secondary" }))), hAsync("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
20494
+ }, onClick: this.onClick }, this.icon && hAsync("duet-icon", { name: this.icon, size: "medium", margin: "none", color: "secondary" }), hAsync("span", { class: "label" }, hAsync("slot", { name: "label" }), hAsync("duet-icon", { class: "caret", name: "action-arrow-down-small", margin: "none", size: "xx-small", color: "secondary" }))), hAsync("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
20460
20495
  items: true,
20461
20496
  hidden: !this.open,
20462
20497
  } }, hAsync("slot", null)))));
@@ -21205,11 +21240,47 @@ class DuetSubmenuBarLink {
21205
21240
  }; }
21206
21241
  }
21207
21242
 
21208
- const duetTabCss = ".sc-duet-tab-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%}.duet-tab.sc-duet-tab{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:none;width:100%}.duet-tab.selected.sc-duet-tab{display:block}";
21243
+ const duetTabCss = ".sc-duet-tab-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%}.duet-tab.sc-duet-tab{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:none;width:100%}.duet-tab.selected.sc-duet-tab{display:block}.duet-tab.has-content-id.sc-duet-tab,.duet-tab.has-content-id.selected.sc-duet-tab{display:none}.user-is-tabbing.sc-duet-tab-h .duet-tab.sc-duet-tab:focus{outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.user-is-tabbing.sc-duet-tab-h .duet-tab.duet-theme-turva.sc-duet-tab:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}";
21209
21244
 
21210
21245
  class DuetTab {
21211
21246
  constructor(hostRef) {
21212
21247
  registerInstance(this, hostRef);
21248
+ this.setupContentElement = () => {
21249
+ if (this.contentId) {
21250
+ this.tabpanelElement = document.getElementById(this.contentId);
21251
+ if (this.tabpanelElement) {
21252
+ this.tabpanelElement.setAttribute("role", "tabpanel");
21253
+ this.tabpanelElement.setAttribute("tabindex", "-1");
21254
+ this.tabpanelElement.removeEventListener("focus", this.tabpanelElementFocusListener);
21255
+ this.tabpanelElement.removeEventListener("blur", this.tabpanelElementBlurListener);
21256
+ this.tabpanelElement.addEventListener("focus", this.tabpanelElementFocusListener);
21257
+ this.tabpanelElement.addEventListener("blur", this.tabpanelElementBlurListener);
21258
+ if (this.accessibleDescription) {
21259
+ this.tabpanelElement.setAttribute("aria-description", this.accessibleDescription);
21260
+ }
21261
+ if (this.accessibleLabelledBy) {
21262
+ this.tabpanelElement.setAttribute("aria-labelledby", this.accessibleLabelledBy);
21263
+ }
21264
+ if (this.selected) {
21265
+ this.tabpanelElement.toggleAttribute("hidden", false);
21266
+ }
21267
+ else {
21268
+ this.tabpanelElement.toggleAttribute("hidden", true);
21269
+ }
21270
+ }
21271
+ }
21272
+ };
21273
+ this.tabpanelElementFocusListener = () => {
21274
+ if (this.element.classList.contains("user-is-tabbing")) {
21275
+ this.tabpanelElement.style.outline = "0";
21276
+ this.tabpanelElement.style.boxShadow = getShadowByName(this.theme === "turva" ? "focus-turva" : "focus");
21277
+ }
21278
+ };
21279
+ this.tabpanelElementBlurListener = () => {
21280
+ this.tabpanelElement.style.outline = null;
21281
+ this.tabpanelElement.style.boxShadow = null;
21282
+ };
21283
+ this.theme = "";
21213
21284
  this.label = undefined;
21214
21285
  this.caption = undefined;
21215
21286
  this.selected = undefined;
@@ -21219,15 +21290,44 @@ class DuetTab {
21219
21290
  ? getLocaleString(this.accessibleDescriptionDefault)
21220
21291
  : null;
21221
21292
  this.accessibleLabelledBy = undefined;
21293
+ this.contentId = undefined;
21294
+ }
21295
+ componentWillLoad() {
21296
+ inheritGlobalTheme(this);
21222
21297
  }
21223
21298
  /**
21224
21299
  * Component lifecycle events.
21225
21300
  */
21226
21301
  connectedCallback() {
21227
21302
  connectLanguageChangeObserver(this, { prop: "accessibleDescription", defaults: "accessibleDescriptionDefault" });
21303
+ subscribeTabbingChange(this);
21304
+ this.setupContentElement();
21228
21305
  }
21229
21306
  disconnectedCallback() {
21230
21307
  disconnectLanguageChangeObserver(this);
21308
+ unsubscribeTabbingChange(this);
21309
+ if (this.tabpanelElement) {
21310
+ this.tabpanelElement.removeAttribute("role");
21311
+ this.tabpanelElement.removeAttribute("tabindex");
21312
+ this.tabpanelElement.removeAttribute("aria-description");
21313
+ this.tabpanelElement.removeAttribute("aria-labelledby");
21314
+ this.tabpanelElement.removeAttribute("hidden");
21315
+ this.tabpanelElement.removeEventListener("focus", this.tabpanelElementFocusListener.bind(this));
21316
+ this.tabpanelElement.removeEventListener("blur", this.tabpanelElementBlurListener.bind(this));
21317
+ this.tabpanelElement = undefined;
21318
+ }
21319
+ }
21320
+ setupSelected(newValue, oldValue) {
21321
+ if (!!newValue === !!oldValue) {
21322
+ return;
21323
+ }
21324
+ this.setupContentElement();
21325
+ }
21326
+ /**
21327
+ * Sets focus on the tab panel.
21328
+ */
21329
+ async setFocus(options) {
21330
+ this.tabpanelElement.focus(options);
21231
21331
  }
21232
21332
  /**
21233
21333
  * render() function
@@ -21239,17 +21339,23 @@ class DuetTab {
21239
21339
  }
21240
21340
  }
21241
21341
  get element() { return getElement(this); }
21342
+ static get watchers() { return {
21343
+ "selected": ["setupSelected"]
21344
+ }; }
21242
21345
  static get style() { return duetTabCss; }
21243
21346
  static get cmpMeta() { return {
21244
21347
  "$flags$": 6,
21245
21348
  "$tagName$": "duet-tab",
21246
21349
  "$members$": {
21350
+ "theme": [1025],
21247
21351
  "label": [513],
21248
21352
  "caption": [513],
21249
21353
  "selected": [516],
21250
21354
  "accessibleDescriptionDefault": [1, "accessible-description-defaults"],
21251
21355
  "accessibleDescription": [1025, "accessible-description"],
21252
- "accessibleLabelledBy": [1, "accessible-labelled-by"]
21356
+ "accessibleLabelledBy": [1, "accessible-labelled-by"],
21357
+ "contentId": [1, "content-id"],
21358
+ "setFocus": [64]
21253
21359
  },
21254
21360
  "$listeners$": undefined,
21255
21361
  "$lazyBundleId$": "-",
@@ -21281,6 +21387,10 @@ class DuetTabGroup {
21281
21387
  else if (isArrowRightKey(ev) || isArrowDownKey(ev)) {
21282
21388
  button = ev.target.nextElementSibling;
21283
21389
  }
21390
+ if (isTabKey(ev) && !isShiftTabKey(ev)) {
21391
+ ev.preventDefault();
21392
+ this.element.querySelector("duet-tab[selected]").setFocus();
21393
+ }
21284
21394
  if (button) {
21285
21395
  ev.preventDefault();
21286
21396
  button.click();
@@ -21313,7 +21423,7 @@ class DuetTabGroup {
21313
21423
  };
21314
21424
  this.renderTab = () => {
21315
21425
  const renderedTabs = this.tabs.map((element, index) => {
21316
- return (hAsync("button", { role: "tab", id: this.getButtonId(index), "aria-selected": element.selected ? "true" : "false", "aria-description": this.getAccessibleDescription(index), tabindex: index === 0 ? "0" : "-1", part: `${this.identifier}-button ${element.selected ? `${this.identifier}-button--selected` : ""}`, type: "button", class: {
21426
+ return (hAsync("button", { role: "tab", id: this.getButtonId(index), "aria-selected": element.selected ? "true" : "false", "aria-description": this.getAccessibleDescription(index), tabindex: element.selected ? "0" : "-1", part: `${this.identifier}-button ${element.selected ? `${this.identifier}-button--selected` : ""}`, type: "button", class: {
21317
21427
  "duet-p-0": this.padding === "none",
21318
21428
  "duet-tab-button": true,
21319
21429
  "stackable-tab": this.variation === "checked" && this.tabs.length <= 3,
@@ -21471,7 +21581,7 @@ class DuetTabGroup {
21471
21581
  "duet-tab-group-collapses": this.collapses,
21472
21582
  }, ref: el => {
21473
21583
  this.tabsContainer = el;
21474
- } }, this.renderTab()), hAsync("div", { role: "tabpanel", tabindex: this.setTabIndex ? "0" : null, class: {
21584
+ } }, this.renderTab()), hAsync("div", { class: {
21475
21585
  "duet-tab-group-content": true,
21476
21586
  "duet-m-0": this.margin === "none",
21477
21587
  "checked-group-content": this.variation === "checked",
@@ -22039,7 +22149,7 @@ class DuetToolbarDropdown {
22039
22149
  } }, hAsync("button", { ref: element => (this.button = element), "aria-haspopup": "menu", "aria-controls": "menu", "aria-expanded": this.open ? "true" : "false", "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel, id: "button", type: "button", class: {
22040
22150
  active: this.active,
22041
22151
  open: this.open,
22042
- }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("div", { class: "label" }, hAsync("slot", { name: "label" }), hAsync("duet-icon", { class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
22152
+ }, onClick: this.onClick, onKeyUp: e => this.handleEscape(e) }, this.icon && (hAsync("duet-icon", { theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), hAsync("span", { class: "label" }, hAsync("slot", { name: "label" }), hAsync("duet-icon", { class: "caret", theme: this.theme, name: "action-arrow-down-small", margin: "none", size: "xxx-small", color: "currentColor" }))), hAsync("div", { tabindex: "-1", role: "menu", id: "menu", "aria-labelledby": "button", class: {
22043
22153
  items: true,
22044
22154
  hidden: !this.open,
22045
22155
  } }, hAsync("slot", null)))));
@@ -22192,13 +22302,21 @@ class DuetTooltip {
22192
22302
  */
22193
22303
  this.openTooltip = () => {
22194
22304
  this.active = true;
22195
- this.focusTarget = "tooltip";
22305
+ setTimeout(() => {
22306
+ this.contentEl.focus({ preventScroll: true });
22307
+ this.buttonActive = true;
22308
+ }, 200);
22196
22309
  };
22197
22310
  this.closeTooltip = (moveFocusToButton = false) => {
22198
22311
  this.active = false;
22199
22312
  if (moveFocusToButton) {
22200
- this.focusTarget = "trigger";
22313
+ setTimeout(() => {
22314
+ this.buttonEl.setFocus({ preventScroll: true });
22315
+ }, 200);
22201
22316
  }
22317
+ setTimeout(() => {
22318
+ this.buttonActive = false;
22319
+ }, 201);
22202
22320
  setTimeout(() => {
22203
22321
  this.updatePlacement();
22204
22322
  }, 200);
@@ -22237,6 +22355,7 @@ class DuetTooltip {
22237
22355
  this.tooltipX = undefined;
22238
22356
  this.arrowX = undefined;
22239
22357
  this.arrowY = undefined;
22358
+ this.buttonActive = undefined;
22240
22359
  this.theme = "";
22241
22360
  this.language = getLanguage();
22242
22361
  this.accessibleLabelDefault = {
@@ -22271,19 +22390,6 @@ class DuetTooltip {
22271
22390
  return;
22272
22391
  }
22273
22392
  }
22274
- componentDidUpdate() {
22275
- switch (this.focusTarget) {
22276
- case "tooltip":
22277
- // delay focus so button is correctly announced as "expanded"
22278
- setTimeout(() => this.contentEl.focus({ preventScroll: true }));
22279
- break;
22280
- case "trigger":
22281
- // delay focus so button is correctly announced as "collapsed"
22282
- setTimeout(() => this.buttonEl.setFocus({ preventScroll: true }));
22283
- break;
22284
- }
22285
- this.focusTarget = null;
22286
- }
22287
22393
  connectedCallback() {
22288
22394
  connectLanguageChangeObserver(this, [
22289
22395
  { prop: "accessibleLabel", defaults: "accessibleLabelDefault" },
@@ -22374,7 +22480,8 @@ class DuetTooltip {
22374
22480
  "tooltipY": [32],
22375
22481
  "tooltipX": [32],
22376
22482
  "arrowX": [32],
22377
- "arrowY": [32]
22483
+ "arrowY": [32],
22484
+ "buttonActive": [32]
22378
22485
  },
22379
22486
  "$listeners$": [[9, "scroll", "onScroll"], [9, "resize", "handleWindowResize"], [4, "click", "handleDocumentClick"], [4, "keydown", "handleKeyDown"], [4, "tooltipPopupClosed", "handlePopupClose"]],
22380
22487
  "$lazyBundleId$": "-",
@@ -5,13 +5,13 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const createId = require('./create-id-1f8c438f.js');
11
11
  const jsUtils = require('./js-utils-92e24ba1.js');
12
- const keyboardUtils = require('./keyboard-utils-7248dd0a.js');
12
+ const keyboardUtils = require('./keyboard-utils-66010749.js');
13
13
  const languageUtils = require('./language-utils-e8a527e5.js');
14
- const tokenUtils = require('./token-utils-c672402d.js');
14
+ const tokenUtils = require('./token-utils-7a618677.js');
15
15
  require('./string-utils-053749ff.js');
16
16
  require('./tokens.module-bc323a09.js');
17
17
 
@@ -5,10 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const createId = require('./create-id-1f8c438f.js');
11
- const keyboardUtils = require('./keyboard-utils-7248dd0a.js');
11
+ const keyboardUtils = require('./keyboard-utils-66010749.js');
12
12
  const languageUtils = require('./language-utils-e8a527e5.js');
13
13
  require('./string-utils-053749ff.js');
14
14
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
 
11
11
  const duetBadgeCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:4px !important;margin-bottom:2px !important;display:inline-block;width:auto;vertical-align:middle}:host:last-child,:host:last-of-type{margin-right:0 !important}:host(.duet-m-0){margin:0 !important}.duet-badge{display:inline-block;width:100%;padding:4.4444444444px 12px 5.4444444444px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.75rem;font-style:normal;font-weight:600;line-height:1.25;color:rgb(0, 41, 77);text-align:center;word-break:break-word;vertical-align:middle;background:#d9ebf4;border-radius:20rem}.duet-badge.duet-p-0{padding:0 !important}.duet-badge.duet-m-0{margin:0 !important}.duet-badge.duet-theme-turva{padding:5.4444444444px 12px 4.4444444444px;font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-weight:700;color:rgb(23, 28, 58);background:#e8e8eb}.duet-badge.warning{background:#fdecc9}.duet-badge.warning.duet-theme-turva{background:#fee8c3}.duet-badge.danger{background:#f8d3e0}.duet-badge.danger.duet-theme-turva{background:#f9d4cf}.duet-badge.success{background:#cce7de}.duet-badge.success.duet-theme-turva{background:#cee7dc}.duet-badge.subtle{color:rgb(101, 119, 135);background:none;outline:1px solid rgb(225, 227, 230);outline-offset:-1px}.duet-badge.subtle.duet-theme-turva{color:rgb(68, 68, 69);background:none;outline-color:rgb(228, 228, 230)}.duet-badge.background-strong.default{color:rgb(255, 255, 255);background:rgb(0, 119, 179)}.duet-badge.background-strong.default.duet-theme-turva{color:rgb(255, 255, 255);background:rgb(23, 28, 58)}.duet-badge.background-strong.warning{background:#f9c153}.duet-badge.background-strong.warning.duet-theme-turva{background:#fbb63f}.duet-badge.background-strong.danger{color:rgb(255, 255, 255);background:rgb(222, 35, 98)}.duet-badge.background-strong.danger.duet-theme-turva{color:rgb(255, 255, 255);background:rgb(224, 42, 13)}.duet-badge.background-strong.success{color:rgb(255, 255, 255);background:rgb(0, 135, 90)}.duet-badge.background-strong.success.duet-theme-turva{color:rgb(255, 255, 255);background:rgb(8, 135, 78)}.duet-badge.background-strong.subtle{border-color:rgb(207, 210, 212);outline-color:rgb(0, 41, 77)}.duet-badge.background-strong.subtle.duet-theme-turva{border-color:rgb(207, 207, 209);outline-color:rgb(23, 28, 58)}";
@@ -5,11 +5,11 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const slotUtils = require('./slot-utils-6c81bd09.js');
11
11
  const stringUtils = require('./string-utils-053749ff.js');
12
- const tokenUtils = require('./token-utils-c672402d.js');
12
+ const tokenUtils = require('./token-utils-7a618677.js');
13
13
  require('./tokens.module-bc323a09.js');
14
14
 
15
15
  const DuetPicture = ({ img, sources }) => {
@@ -5,9 +5,9 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
- const keyboardUtils = require('./keyboard-utils-7248dd0a.js');
10
+ const keyboardUtils = require('./keyboard-utils-66010749.js');
11
11
  const languageUtils = require('./language-utils-e8a527e5.js');
12
12
  require('./string-utils-053749ff.js');
13
13
 
@@ -5,10 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const languageUtils = require('./language-utils-e8a527e5.js');
11
- const tokenUtils = require('./token-utils-c672402d.js');
11
+ const tokenUtils = require('./token-utils-7a618677.js');
12
12
  require('./string-utils-053749ff.js');
13
13
  require('./tokens.module-bc323a09.js');
14
14
 
@@ -5,11 +5,11 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const commonStrings = require('./common-strings-22c70ef0.js');
11
11
  const languageUtils = require('./language-utils-e8a527e5.js');
12
- const tokenUtils = require('./token-utils-c672402d.js');
12
+ const tokenUtils = require('./token-utils-7a618677.js');
13
13
  require('./string-utils-053749ff.js');
14
14
  require('./tokens.module-bc323a09.js');
15
15
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const slotUtils = require('./slot-utils-6c81bd09.js');
11
11
 
@@ -5,10 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const stringUtils = require('./string-utils-053749ff.js');
11
- const tokenUtils = require('./token-utils-c672402d.js');
11
+ const tokenUtils = require('./token-utils-7a618677.js');
12
12
  const actionArrowRight = require('./action-arrow-right-24fe06be.js');
13
13
  const actionNewWindowSmall = require('./action-new-window-small-fa51dfb9.js');
14
14
  const commonStrings = require('./common-strings-22c70ef0.js');
@@ -5,12 +5,12 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const createId = require('./create-id-1f8c438f.js');
11
- const keyboardUtils = require('./keyboard-utils-7248dd0a.js');
11
+ const keyboardUtils = require('./keyboard-utils-66010749.js');
12
12
  const stringUtils = require('./string-utils-053749ff.js');
13
- const tokenUtils = require('./token-utils-c672402d.js');
13
+ const tokenUtils = require('./token-utils-7a618677.js');
14
14
  require('./tokens.module-bc323a09.js');
15
15
 
16
16
  const duetHeadingLevels = ["h1", "h2", "h3", "h4", "h5", "h6"];
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
  const createId = require('./create-id-1f8c438f.js');
11
11
 
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-c51398ac.js');
8
+ const index = require('./index-34b8e765.js');
9
9
  const themeableComponent = require('./themeable-component-83a2a0d4.js');
10
10
 
11
11
  const duetCheckmarkCss = ".duet-checkmark-container{position:relative;width:20px;height:20px;margin-left:auto;border:1px solid rgb(144, 149, 153);border-radius:4px;transition:border 300ms ease}.duet-checkmark-container.center{margin-right:auto}.duet-theme-turva .duet-checkmark-container{border-color:rgb(116, 116, 117)}.checked .duet-checkmark-container{background:rgb(0, 119, 179);border-color:rgb(0, 119, 179);transition:none}.duet-theme-turva .checked .duet-checkmark-container{background:rgb(23, 28, 58);border-color:rgb(23, 28, 58) !important}.duet-checkmark-container.duet-checkmark-radio{border-radius:50%}[disabled]+label .duet-checkmark-container{border-color:rgb(207, 210, 212) !important}.duet-theme-turva [disabled]+label .duet-checkmark-container{border-color:rgb(207, 207, 209) !important}.checked [disabled]+label .duet-checkmark-container{background:rgb(207, 210, 212) !important}.duet-theme-turva .checked [disabled]+label .duet-checkmark-container{background:rgb(207, 207, 209) !important}.duet-checkmark{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}}";