@duetds/components 7.1.0 → 7.1.1

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 (866) hide show
  1. package/hydrate/index.d.ts +6 -6
  2. package/hydrate/index.js +279 -186
  3. package/lib/cjs/duet-action-button.cjs.entry.js +9 -9
  4. package/lib/cjs/duet-alert.cjs.entry.js +6 -6
  5. package/lib/cjs/duet-badge.cjs.entry.js +3 -3
  6. package/lib/cjs/duet-banner.cjs.entry.js +4 -4
  7. package/lib/cjs/duet-breadcrumb.cjs.entry.js +5 -5
  8. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +4 -4
  9. package/lib/cjs/duet-button_2.cjs.entry.js +7 -7
  10. package/lib/cjs/duet-callout.cjs.entry.js +3 -3
  11. package/lib/cjs/duet-caption_4.cjs.entry.js +26 -9
  12. package/lib/cjs/duet-card.cjs.entry.js +7 -7
  13. package/lib/cjs/duet-checkbox.cjs.entry.js +4 -4
  14. package/lib/cjs/duet-checkmark.cjs.entry.js +2 -2
  15. package/lib/cjs/duet-chip.cjs.entry.js +4 -4
  16. package/lib/cjs/duet-choice_2.cjs.entry.js +11 -11
  17. package/lib/cjs/duet-collapsible.cjs.entry.js +7 -7
  18. package/lib/cjs/duet-combobox.cjs.entry.js +6 -6
  19. package/lib/cjs/duet-contact-card.cjs.entry.js +5 -5
  20. package/lib/cjs/duet-cookie-consent.cjs.entry.js +3 -3
  21. package/lib/cjs/duet-date-picker.cjs.entry.js +7 -7
  22. package/lib/cjs/duet-divider_2.cjs.entry.js +3 -3
  23. package/lib/cjs/duet-editable-table_3.cjs.entry.js +10 -10
  24. package/lib/cjs/duet-empty-state.cjs.entry.js +3 -3
  25. package/lib/cjs/duet-fieldset.cjs.entry.js +5 -5
  26. package/lib/cjs/duet-footer.cjs.entry.js +6 -6
  27. package/lib/cjs/duet-grid_2.cjs.entry.js +3 -3
  28. package/lib/cjs/duet-header_2.cjs.entry.js +9 -9
  29. package/lib/cjs/duet-hero.cjs.entry.js +6 -6
  30. package/lib/cjs/duet-icon.cjs.entry.js +4 -4
  31. package/lib/cjs/duet-input_2.cjs.entry.js +8 -8
  32. package/lib/cjs/duet-layout.cjs.entry.js +2 -2
  33. package/lib/cjs/duet-list_2.cjs.entry.js +3 -3
  34. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +3 -3
  35. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +4 -4
  36. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +4 -4
  37. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +3 -3
  38. package/lib/cjs/duet-menu-bar.cjs.entry.js +3 -3
  39. package/lib/cjs/duet-modal.cjs.entry.js +10 -10
  40. package/lib/cjs/duet-multiselect.cjs.entry.js +7 -7
  41. package/lib/cjs/duet-nav.cjs.entry.js +2 -2
  42. package/lib/cjs/duet-notification_2.cjs.entry.js +5 -5
  43. package/lib/cjs/duet-number-input.cjs.entry.js +7 -7
  44. package/lib/cjs/duet-page-heading.cjs.entry.js +3 -3
  45. package/lib/cjs/duet-pagination_2.cjs.entry.js +9 -9
  46. package/lib/cjs/duet-popup-menu-item.cjs.entry.js +3 -3
  47. package/lib/cjs/duet-popup-menu.cjs.entry.js +5 -5
  48. package/lib/cjs/duet-progress.cjs.entry.js +6 -6
  49. package/lib/cjs/duet-promo-card.cjs.entry.js +4 -4
  50. package/lib/cjs/duet-radio_2.cjs.entry.js +5 -5
  51. package/lib/cjs/duet-range-slider.cjs.entry.js +5 -5
  52. package/lib/cjs/duet-scrollable_3.cjs.entry.js +7 -7
  53. package/lib/cjs/duet-section-layout.cjs.entry.js +2 -2
  54. package/lib/cjs/duet-select.cjs.entry.js +5 -5
  55. package/lib/cjs/duet-shaped-image.cjs.entry.js +2 -2
  56. package/lib/cjs/duet-show-more.cjs.entry.js +7 -7
  57. package/lib/cjs/duet-slideout-lang.cjs.entry.js +5 -5
  58. package/lib/cjs/duet-slideout-link.cjs.entry.js +3 -3
  59. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +3 -3
  60. package/lib/cjs/duet-slideout-panel.cjs.entry.js +7 -7
  61. package/lib/cjs/duet-slideout.cjs.entry.js +9 -9
  62. package/lib/cjs/duet-step_2.cjs.entry.js +5 -5
  63. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +4 -4
  64. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +4 -4
  65. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +4 -4
  66. package/lib/cjs/duet-submenu-bar.cjs.entry.js +4 -4
  67. package/lib/cjs/duet-textarea.cjs.entry.js +5 -5
  68. package/lib/cjs/duet-toggle.cjs.entry.js +4 -4
  69. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +4 -4
  70. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +4 -4
  71. package/lib/cjs/duet-toolbar-link.cjs.entry.js +3 -3
  72. package/lib/cjs/duet-toolbar.cjs.entry.js +2 -2
  73. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +5 -5
  74. package/lib/cjs/duet-tooltip.cjs.entry.js +8 -8
  75. package/lib/cjs/duet-tray.cjs.entry.js +6 -6
  76. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +2 -2
  77. package/lib/cjs/duet-upload-item.cjs.entry.js +6 -6
  78. package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -2
  79. package/lib/cjs/duet.cjs.js +4 -11
  80. package/lib/cjs/{errorcodes.utils-c85ef728.js → errorcodes.utils-8e928de5.js} +2 -2
  81. package/lib/cjs/{focus-utils-09463cf4.js → focus-utils-135b1e70.js} +1 -1
  82. package/lib/cjs/{index-e43540c9.js → index-8d4b3790.js} +505 -183
  83. package/lib/cjs/{language-utils-6f1ce5d7.js → language-utils-dc19e8b6.js} +1 -1
  84. package/lib/cjs/loader.cjs.js +3 -12
  85. package/lib/collection/collection-manifest.json +98 -98
  86. package/lib/collection/components/duet-action-button/duet-action-button.js +18 -9
  87. package/lib/collection/components/duet-alert/duet-alert.e2e.js +53 -0
  88. package/lib/collection/components/duet-alert/duet-alert.js +23 -12
  89. package/lib/collection/components/duet-badge/duet-badge.e2e.js +28 -0
  90. package/lib/collection/components/duet-badge/duet-badge.js +6 -3
  91. package/lib/collection/components/duet-banner/duet-banner.e2e.js +23 -0
  92. package/lib/collection/components/duet-banner/duet-banner.js +16 -8
  93. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +4 -2
  94. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.e2e.js +18 -0
  95. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +2 -1
  96. package/lib/collection/components/duet-button/duet-button.e2e.js +210 -0
  97. package/lib/collection/components/duet-button/duet-button.js +29 -15
  98. package/lib/collection/components/duet-callout/duet-callout.e2e.js +21 -0
  99. package/lib/collection/components/duet-callout/duet-callout.js +4 -2
  100. package/lib/collection/components/duet-caption/duet-caption.e2e.js +26 -0
  101. package/lib/collection/components/duet-caption/duet-caption.js +6 -3
  102. package/lib/collection/components/duet-card/duet-card.e2e.js +91 -0
  103. package/lib/collection/components/duet-card/duet-card.js +24 -12
  104. package/lib/collection/components/duet-checkbox/duet-checkbox.e2e.js +112 -0
  105. package/lib/collection/components/duet-checkbox/duet-checkbox.js +14 -7
  106. package/lib/collection/components/duet-chip/duet-chip.e2e.js +46 -0
  107. package/lib/collection/components/duet-chip/duet-chip.js +16 -8
  108. package/lib/collection/components/duet-choice/duet-checkmark.js +4 -2
  109. package/lib/collection/components/duet-choice/duet-choice.e2e.js +181 -0
  110. package/lib/collection/components/duet-choice/duet-choice.js +27 -14
  111. package/lib/collection/components/duet-choice-group/duet-choice-group.e2e.js +88 -0
  112. package/lib/collection/components/duet-choice-group/duet-choice-group.js +10 -5
  113. package/lib/collection/components/duet-collapsible/duet-collapsible.e2e.js +125 -0
  114. package/lib/collection/components/duet-collapsible/duet-collapsible.js +16 -8
  115. package/lib/collection/components/duet-combobox/duet-combobox.e2e.js +110 -0
  116. package/lib/collection/components/duet-combobox/duet-combobox.js +14 -7
  117. package/lib/collection/components/duet-contact-card/duet-contact-card.js +6 -3
  118. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.e2e.js +31 -0
  119. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +4 -2
  120. package/lib/collection/components/duet-date-picker/date-utils.spec.js +330 -0
  121. package/lib/collection/components/duet-date-picker/duet-date-picker.e2e.js +694 -0
  122. package/lib/collection/components/duet-date-picker/duet-date-picker.js +28 -14
  123. package/lib/collection/components/duet-divider/duet-divider.e2e.js +32 -0
  124. package/lib/collection/components/duet-divider/duet-divider.js +6 -3
  125. package/lib/collection/components/duet-editable-table/duet-editable-table.e2e.js +29 -0
  126. package/lib/collection/components/duet-editable-table/duet-editable-table.js +20 -10
  127. package/lib/collection/components/duet-empty-state/duet-empty-state.e2e.js +16 -0
  128. package/lib/collection/components/duet-empty-state/duet-empty-state.js +6 -3
  129. package/lib/collection/components/duet-fieldset/duet-fieldset.e2e.js +13 -0
  130. package/lib/collection/components/duet-fieldset/duet-fieldset.js +6 -3
  131. package/lib/collection/components/duet-footer/duet-footer.e2e.js +186 -0
  132. package/lib/collection/components/duet-footer/duet-footer.js +23 -12
  133. package/lib/collection/components/duet-grid/duet-grid.e2e.js +42 -0
  134. package/lib/collection/components/duet-grid/duet-grid.js +10 -5
  135. package/lib/collection/components/duet-grid-item/duet-grid-item.js +8 -4
  136. package/lib/collection/components/duet-header/duet-header.e2e.js +468 -0
  137. package/lib/collection/components/duet-header/duet-header.js +50 -26
  138. package/lib/collection/components/duet-heading/duet-heading.e2e.js +27 -0
  139. package/lib/collection/components/duet-heading/duet-heading.js +12 -6
  140. package/lib/collection/components/duet-hero/duet-hero.e2e.js +172 -0
  141. package/lib/collection/components/duet-hero/duet-hero.js +26 -13
  142. package/lib/collection/components/duet-icon/duet-icon.e2e.js +32 -0
  143. package/lib/collection/components/duet-icon/duet-icon.js +14 -7
  144. package/lib/collection/components/duet-icon/icon-utils.spec.js +84 -0
  145. package/lib/collection/components/duet-input/duet-input.e2e.js +201 -0
  146. package/lib/collection/components/duet-input/duet-input.js +32 -16
  147. package/lib/collection/components/duet-label/duet-label.e2e.js +32 -0
  148. package/lib/collection/components/duet-label/duet-label.js +6 -3
  149. package/lib/collection/components/duet-layout/duet-layout.e2e.js +32 -0
  150. package/lib/collection/components/duet-layout/duet-layout.js +6 -3
  151. package/lib/collection/components/duet-link/duet-link.css +4 -1
  152. package/lib/collection/components/duet-link/duet-link.e2e.js +53 -0
  153. package/lib/collection/components/duet-link/duet-link.js +90 -11
  154. package/lib/collection/components/duet-list/duet-list.e2e.js +105 -0
  155. package/lib/collection/components/duet-list/duet-list.js +14 -7
  156. package/lib/collection/components/duet-list-item/duet-list-item.js +2 -1
  157. package/lib/collection/components/duet-logo/duet-logo.e2e.js +42 -0
  158. package/lib/collection/components/duet-logo/duet-logo.js +14 -7
  159. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +4 -2
  160. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +6 -3
  161. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +6 -3
  162. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +2 -1
  163. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +2 -1
  164. package/lib/collection/components/duet-modal/duet-modal.e2e.js +125 -0
  165. package/lib/collection/components/duet-modal/duet-modal.js +24 -12
  166. package/lib/collection/components/duet-multiselect/duet-multiselect.e2e.js +96 -0
  167. package/lib/collection/components/duet-multiselect/duet-multiselect.js +20 -10
  168. package/lib/collection/components/duet-nav/duet-nav.js +2 -1
  169. package/lib/collection/components/duet-notification/duet-notification.e2e.js +12 -0
  170. package/lib/collection/components/duet-notification/duet-notification.js +11 -6
  171. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.e2e.js +177 -0
  172. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +18 -9
  173. package/lib/collection/components/duet-number-input/duet-number-input-negative.e2e.js +32 -0
  174. package/lib/collection/components/duet-number-input/duet-number-input.e2e.js +242 -0
  175. package/lib/collection/components/duet-number-input/duet-number-input.js +30 -15
  176. package/lib/collection/components/duet-page-heading/duet-page-heading.js +4 -2
  177. package/lib/collection/components/duet-pagination/duet-pagination.e2e.js +101 -0
  178. package/lib/collection/components/duet-pagination/duet-pagination.js +12 -6
  179. package/lib/collection/components/duet-paragraph/duet-paragraph.e2e.js +27 -0
  180. package/lib/collection/components/duet-paragraph/duet-paragraph.js +12 -6
  181. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +14 -7
  182. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +16 -8
  183. package/lib/collection/components/duet-progress/duet-progress.e2e.js +12 -0
  184. package/lib/collection/components/duet-progress/duet-progress.js +4 -2
  185. package/lib/collection/components/duet-promo-card/duet-promo-card.e2e.js +23 -0
  186. package/lib/collection/components/duet-promo-card/duet-promo-card.js +10 -5
  187. package/lib/collection/components/duet-radio/duet-radio.e2e.js +135 -0
  188. package/lib/collection/components/duet-radio/duet-radio.js +16 -8
  189. package/lib/collection/components/duet-radio-group/duet-radio-group.e2e.js +57 -0
  190. package/lib/collection/components/duet-radio-group/duet-radio-group.js +8 -4
  191. package/lib/collection/components/duet-range-slider/duet-range-slider.e2e.js +57 -0
  192. package/lib/collection/components/duet-range-slider/duet-range-slider.js +14 -7
  193. package/lib/collection/components/duet-range-stepper/duet-range-stepper.e2e.js +51 -0
  194. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +8 -4
  195. package/lib/collection/components/duet-range-stepper/duet-range-stepper.spec.js +23 -0
  196. package/lib/collection/components/duet-scrollable/duet-scrollable.e2e.js +12 -0
  197. package/lib/collection/components/duet-scrollable/duet-scrollable.js +2 -1
  198. package/lib/collection/components/duet-section-layout/duet-section-layout.e2e.js +22 -0
  199. package/lib/collection/components/duet-section-layout/duet-section-layout.js +2 -1
  200. package/lib/collection/components/duet-select/duet-select.e2e.js +211 -0
  201. package/lib/collection/components/duet-select/duet-select.js +20 -10
  202. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +4 -2
  203. package/lib/collection/components/duet-show-more/duet-show-more.js +16 -8
  204. package/lib/collection/components/duet-slideout/duet-slideout.js +12 -6
  205. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +2 -1
  206. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +2 -1
  207. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +8 -4
  208. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +6 -3
  209. package/lib/collection/components/duet-spacer/duet-spacer.e2e.js +27 -0
  210. package/lib/collection/components/duet-spacer/duet-spacer.js +6 -3
  211. package/lib/collection/components/duet-spinner/duet-spinner.e2e.js +30 -0
  212. package/lib/collection/components/duet-spinner/duet-spinner.js +6 -3
  213. package/lib/collection/components/duet-step/duet-step.e2e.js +92 -0
  214. package/lib/collection/components/duet-step/duet-step.js +12 -6
  215. package/lib/collection/components/duet-stepper/duet-stepper.e2e.js +85 -0
  216. package/lib/collection/components/duet-stepper/duet-stepper.js +6 -3
  217. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +6 -3
  218. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +6 -3
  219. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +2 -1
  220. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +2 -1
  221. package/lib/collection/components/duet-tab/duet-tab.e2e.js +16 -0
  222. package/lib/collection/components/duet-tab/duet-tab.js +2 -1
  223. package/lib/collection/components/duet-tab-group/duet-tab-group.e2e.js +108 -0
  224. package/lib/collection/components/duet-tab-group/duet-tab-group.js +24 -12
  225. package/lib/collection/components/duet-table/duet-table.e2e.js +95 -0
  226. package/lib/collection/components/duet-table/duet-table.js +10 -5
  227. package/lib/collection/components/duet-textarea/duet-textarea.e2e.js +199 -0
  228. package/lib/collection/components/duet-textarea/duet-textarea.js +18 -9
  229. package/lib/collection/components/duet-toggle/duet-toggle.e2e.js +73 -0
  230. package/lib/collection/components/duet-toggle/duet-toggle.js +10 -5
  231. package/lib/collection/components/duet-toolbar/duet-toolbar.js +2 -1
  232. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +6 -3
  233. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +2 -1
  234. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +2 -1
  235. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +6 -3
  236. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +14 -7
  237. package/lib/collection/components/duet-tooltip/duet-tooltip.e2e.js +99 -0
  238. package/lib/collection/components/duet-tooltip/duet-tooltip.js +12 -6
  239. package/lib/collection/components/duet-tray/duet-tray.e2e.js +103 -0
  240. package/lib/collection/components/duet-tray/duet-tray.js +8 -4
  241. package/lib/collection/components/duet-upload/duet-upload.e2e.js +49 -0
  242. package/lib/collection/components/duet-upload/duet-upload.js +69 -35
  243. package/lib/collection/components/duet-upload/upload-validators.spec.js +41 -0
  244. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +2 -1
  245. package/lib/collection/components/duet-upload-item/duet-upload-item.js +18 -9
  246. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.e2e.js +12 -0
  247. package/lib/collection/utils/create-id.spec.js +12 -0
  248. package/lib/collection/utils/js-utils.spec.js +22 -0
  249. package/lib/collection/utils/language-utils.spec.js +159 -0
  250. package/lib/collection/utils/math.utils.spec.js +140 -0
  251. package/lib/collection/utils/string-utils.spec.js +39 -0
  252. package/lib/collection/utils/template-utils.spec.js +39 -0
  253. package/lib/collection/utils/token-utils.spec.js +178 -0
  254. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  255. package/lib/dist-custom-elements/duet-alert.js +1 -1
  256. package/lib/dist-custom-elements/duet-badge.js +1 -1
  257. package/lib/dist-custom-elements/duet-banner.js +8 -8
  258. package/lib/dist-custom-elements/duet-breadcrumb.js +6 -6
  259. package/lib/dist-custom-elements/duet-breadcrumbs.js +4 -4
  260. package/lib/dist-custom-elements/duet-button.js +1 -1
  261. package/lib/dist-custom-elements/duet-callout.js +6 -6
  262. package/lib/dist-custom-elements/duet-caption.js +1 -1
  263. package/lib/dist-custom-elements/duet-card.js +10 -10
  264. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  265. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  266. package/lib/dist-custom-elements/duet-chip.js +8 -6
  267. package/lib/dist-custom-elements/duet-choice-group.js +18 -12
  268. package/lib/dist-custom-elements/duet-choice.js +14 -14
  269. package/lib/dist-custom-elements/duet-collapsible.js +9 -9
  270. package/lib/dist-custom-elements/duet-combobox.js +15 -10
  271. package/lib/dist-custom-elements/duet-contact-card.js +12 -12
  272. package/lib/dist-custom-elements/duet-cookie-consent.js +9 -9
  273. package/lib/dist-custom-elements/duet-date-picker.js +25 -20
  274. package/lib/dist-custom-elements/duet-divider.js +1 -1
  275. package/lib/dist-custom-elements/duet-editable-table.js +14 -14
  276. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  277. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  278. package/lib/dist-custom-elements/duet-footer.js +13 -10
  279. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  280. package/lib/dist-custom-elements/duet-grid.js +1 -1
  281. package/lib/dist-custom-elements/duet-header.js +25 -18
  282. package/lib/dist-custom-elements/duet-heading.js +1 -1
  283. package/lib/dist-custom-elements/duet-hero.js +19 -15
  284. package/lib/dist-custom-elements/duet-icon.js +1 -1
  285. package/lib/dist-custom-elements/duet-input.js +1 -1
  286. package/lib/dist-custom-elements/duet-label.js +1 -1
  287. package/lib/dist-custom-elements/duet-layout.js +3 -3
  288. package/lib/dist-custom-elements/duet-link.js +1 -1
  289. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  290. package/lib/dist-custom-elements/duet-list.js +1 -1
  291. package/lib/dist-custom-elements/duet-logo.js +1 -1
  292. package/lib/dist-custom-elements/duet-menu-bar-button.js +5 -5
  293. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +6 -6
  294. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +6 -6
  295. package/lib/dist-custom-elements/duet-menu-bar-link.js +5 -5
  296. package/lib/dist-custom-elements/duet-menu-bar.js +5 -5
  297. package/lib/dist-custom-elements/duet-modal.js +20 -17
  298. package/lib/dist-custom-elements/duet-multiselect.js +20 -18
  299. package/lib/dist-custom-elements/duet-nav.js +3 -3
  300. package/lib/dist-custom-elements/duet-notification-drawer.js +8 -8
  301. package/lib/dist-custom-elements/duet-notification.js +6 -6
  302. package/lib/dist-custom-elements/duet-number-input.js +17 -17
  303. package/lib/dist-custom-elements/duet-page-heading.js +5 -5
  304. package/lib/dist-custom-elements/duet-pagination.js +24 -21
  305. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  306. package/lib/dist-custom-elements/duet-popup-menu-item.js +5 -5
  307. package/lib/dist-custom-elements/duet-popup-menu.js +6 -6
  308. package/lib/dist-custom-elements/duet-progress.js +1 -1
  309. package/lib/dist-custom-elements/duet-promo-card.js +7 -7
  310. package/lib/dist-custom-elements/duet-radio-group.js +18 -12
  311. package/lib/dist-custom-elements/duet-radio.js +4 -4
  312. package/lib/dist-custom-elements/duet-range-slider.js +7 -7
  313. package/lib/dist-custom-elements/duet-range-stepper.js +13 -10
  314. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  315. package/lib/dist-custom-elements/duet-section-layout.js +3 -3
  316. package/lib/dist-custom-elements/duet-select.js +1 -1
  317. package/lib/dist-custom-elements/duet-shaped-image.js +3 -3
  318. package/lib/dist-custom-elements/duet-show-more.js +11 -11
  319. package/lib/dist-custom-elements/duet-slideout-lang.js +6 -6
  320. package/lib/dist-custom-elements/duet-slideout-link.js +5 -5
  321. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +5 -5
  322. package/lib/dist-custom-elements/duet-slideout-panel.js +8 -8
  323. package/lib/dist-custom-elements/duet-slideout.js +10 -10
  324. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  325. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  326. package/lib/dist-custom-elements/duet-step.js +9 -9
  327. package/lib/dist-custom-elements/duet-stepper.js +9 -6
  328. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +6 -6
  329. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +6 -6
  330. package/lib/dist-custom-elements/duet-submenu-bar-link.js +6 -6
  331. package/lib/dist-custom-elements/duet-submenu-bar.js +8 -6
  332. package/lib/dist-custom-elements/duet-tab-group.js +19 -19
  333. package/lib/dist-custom-elements/duet-tab.js +4 -4
  334. package/lib/dist-custom-elements/duet-table.js +1 -1
  335. package/lib/dist-custom-elements/duet-textarea.js +17 -15
  336. package/lib/dist-custom-elements/duet-toggle.js +8 -6
  337. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +6 -6
  338. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +6 -6
  339. package/lib/dist-custom-elements/duet-toolbar-link.js +5 -5
  340. package/lib/dist-custom-elements/duet-toolbar.js +3 -3
  341. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  342. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  343. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  344. package/lib/dist-custom-elements/duet-tray.js +8 -8
  345. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  346. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  347. package/lib/dist-custom-elements/duet-upload.js +27 -25
  348. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  349. package/lib/dist-custom-elements/index.d.ts +6 -0
  350. package/lib/dist-custom-elements/index.js +1 -1
  351. package/lib/dist-custom-elements/{p-7c6ee265.js → p-092ff822.js} +15 -13
  352. package/lib/dist-custom-elements/{p-d6e49c93.js → p-0c7dab94.js} +7 -7
  353. package/lib/dist-custom-elements/{p-e90b70ac.js → p-227dc421.js} +3 -3
  354. package/lib/dist-custom-elements/{p-53148470.js → p-2764b248.js} +5 -5
  355. package/lib/dist-custom-elements/{p-d8859df9.js → p-3c3e91d0.js} +4 -4
  356. package/lib/dist-custom-elements/{p-1a8cb0ad.js → p-461756c5.js} +8 -6
  357. package/lib/dist-custom-elements/{p-03baceb5.js → p-4883df66.js} +1 -1
  358. package/lib/dist-custom-elements/{p-fc3ae836.js → p-51a58715.js} +7 -3
  359. package/lib/dist-custom-elements/{p-decdd69c.js → p-5f06c4ee.js} +5 -5
  360. package/lib/dist-custom-elements/{p-89dec98e.js → p-5fd9c816.js} +7 -7
  361. package/lib/dist-custom-elements/{p-ec4d603d.js → p-62c7d9d4.js} +1 -1
  362. package/lib/dist-custom-elements/{p-53fba128.js → p-6e063bb0.js} +4 -4
  363. package/lib/dist-custom-elements/{p-6a66573f.js → p-720c72c5.js} +15 -10
  364. package/lib/dist-custom-elements/{p-1d90b10e.js → p-7579d4ae.js} +507 -166
  365. package/lib/dist-custom-elements/{p-fcc738df.js → p-7da4aa07.js} +3 -3
  366. package/lib/dist-custom-elements/{p-479fa83d.js → p-8160c830.js} +11 -11
  367. package/lib/dist-custom-elements/{p-21dd956e.js → p-84946626.js} +31 -10
  368. package/lib/dist-custom-elements/{p-f7337164.js → p-8800fa36.js} +4 -4
  369. package/lib/dist-custom-elements/{p-954d4096.js → p-8afda636.js} +20 -17
  370. package/lib/dist-custom-elements/{p-c2533c03.js → p-8f0848ab.js} +3 -3
  371. package/lib/dist-custom-elements/{p-77c93063.js → p-9468d6ea.js} +4 -4
  372. package/lib/dist-custom-elements/{p-cedaa97e.js → p-96f45950.js} +2 -2
  373. package/lib/dist-custom-elements/{p-99ec82e5.js → p-a0669ee9.js} +6 -6
  374. package/lib/dist-custom-elements/{p-72c9e944.js → p-aa2863af.js} +4 -4
  375. package/lib/dist-custom-elements/{p-67b279fa.js → p-bc972b0a.js} +5 -5
  376. package/lib/dist-custom-elements/{p-061830ef.js → p-c5032d3a.js} +1 -1
  377. package/lib/dist-custom-elements/{p-87cf7266.js → p-cfca65c8.js} +10 -8
  378. package/lib/dist-custom-elements/{p-6816fd1b.js → p-d27dc964.js} +10 -10
  379. package/lib/dist-custom-elements/{p-e611a3df.js → p-db1ac527.js} +9 -5
  380. package/lib/dist-custom-elements/{p-6958bba3.js → p-dbe427e1.js} +15 -15
  381. package/lib/dist-custom-elements/{p-03e72a70.js → p-e19d1e27.js} +1 -1
  382. package/lib/dist-custom-elements/{p-4d9d4c43.js → p-eb55b736.js} +9 -4
  383. package/lib/dist-custom-elements/{p-dd33aa4e.js → p-eea6945b.js} +5 -5
  384. package/lib/dist-custom-elements/{p-a5b5343b.js → p-f06ebf0f.js} +16 -13
  385. package/lib/dist-custom-elements/{p-ad704699.js → p-f2263866.js} +10 -8
  386. package/lib/dist-custom-elements/{p-85087518.js → p-f6ae66d9.js} +5 -5
  387. package/lib/dist-custom-elements/{p-12a46182.js → p-fa9cb266.js} +12 -4
  388. package/lib/dist-custom-elements/{p-d8c53f43.js → p-fc5aceac.js} +2 -2
  389. package/lib/duet/duet.esm.js +1 -1
  390. package/lib/duet/duet.js +2 -6
  391. package/lib/duet/{p-529dc6fe.entry.js → p-015c6c0f.entry.js} +1 -1
  392. package/lib/duet/p-053b71e6.system.js +1 -1
  393. package/lib/duet/{p-b6c212f5.system.entry.js → p-05432941.system.entry.js} +1 -1
  394. package/lib/duet/p-07ae2d9c.system.js +5 -0
  395. package/lib/duet/{p-0bb83776.system.entry.js → p-07bf4b25.system.entry.js} +2 -2
  396. package/lib/duet/{p-84ebe175.entry.js → p-09694f22.entry.js} +1 -1
  397. package/lib/duet/p-0c4bbd65.system.js +1 -1
  398. package/lib/duet/{p-3a9779ee.entry.js → p-168f9b1c.entry.js} +1 -1
  399. package/lib/duet/p-1a91e22a.system.js +4 -0
  400. package/lib/duet/{p-d79fa6a4.system.entry.js → p-1b56e37f.system.entry.js} +2 -2
  401. package/lib/duet/{p-70c7a137.system.entry.js → p-1fb54404.system.entry.js} +1 -1
  402. package/lib/duet/p-2043a083.entry.js +4 -0
  403. package/lib/duet/{p-8ac518e1.system.entry.js → p-2118ce4b.system.entry.js} +1 -1
  404. package/lib/duet/p-21f3a17a.system.js +1 -1
  405. package/lib/duet/{p-cfe09501.system.entry.js → p-22a9a885.system.entry.js} +1 -1
  406. package/lib/duet/{p-014edbda.system.entry.js → p-22c45d9c.system.entry.js} +2 -2
  407. package/lib/duet/p-232940fa.system.js +4 -0
  408. package/lib/duet/{p-da7cc3d1.entry.js → p-2622c405.entry.js} +1 -1
  409. package/lib/duet/{p-fc26d56a.entry.js → p-26415995.entry.js} +1 -1
  410. package/lib/duet/{p-792cbd42.system.entry.js → p-26e1dca0.system.entry.js} +2 -2
  411. package/lib/duet/p-28f8fa55.system.entry.js +4 -0
  412. package/lib/duet/{p-e58f4a37.entry.js → p-299e8254.entry.js} +1 -1
  413. package/lib/duet/{p-ebf4a629.entry.js → p-2abe65e5.entry.js} +1 -1
  414. package/lib/duet/{p-3b85f649.system.entry.js → p-31382b41.system.entry.js} +1 -1
  415. package/lib/duet/p-31a0d4f6.system.entry.js +4 -0
  416. package/lib/duet/{p-e52631b1.entry.js → p-3469e15c.entry.js} +1 -1
  417. package/lib/duet/{p-b6cf05c0.system.entry.js → p-35762693.system.entry.js} +1 -1
  418. package/lib/duet/p-38eb6aa3.system.entry.js +4 -0
  419. package/lib/duet/{p-3878572f.entry.js → p-3a0fde44.entry.js} +1 -1
  420. package/lib/duet/{p-34aa54e1.entry.js → p-3e27b126.entry.js} +1 -1
  421. package/lib/duet/{p-b6e50064.entry.js → p-3f78ed00.entry.js} +1 -1
  422. package/lib/duet/{p-9f975819.system.entry.js → p-3f96e6be.system.entry.js} +2 -2
  423. package/lib/duet/{p-8156e5a5.system.entry.js → p-3fbc446a.system.entry.js} +1 -1
  424. package/lib/duet/{p-b52f8ce1.entry.js → p-403df195.entry.js} +1 -1
  425. package/lib/duet/{p-4b71c8e9.entry.js → p-406ec3c8.entry.js} +1 -1
  426. package/lib/duet/{p-4903f5c4.system.entry.js → p-442872df.system.entry.js} +1 -1
  427. package/lib/duet/p-449c2232.system.entry.js +4 -0
  428. package/lib/duet/{p-64710156.entry.js → p-4655fafc.entry.js} +1 -1
  429. package/lib/duet/{p-e91385fb.js → p-4669b0af.js} +1 -1
  430. package/lib/duet/{p-39c72a24.system.entry.js → p-4801f8f8.system.entry.js} +2 -2
  431. package/lib/duet/{p-03baceb5.js → p-4883df66.js} +1 -1
  432. package/lib/duet/{p-dde971f6.system.entry.js → p-4abb665b.system.entry.js} +2 -2
  433. package/lib/duet/{p-a64cf9f8.system.entry.js → p-4ce91f2d.system.entry.js} +1 -1
  434. package/lib/duet/{p-2e54c1f8.system.entry.js → p-4e958a51.system.entry.js} +2 -2
  435. package/lib/duet/{p-f5e12c14.system.entry.js → p-5167068e.system.entry.js} +1 -1
  436. package/lib/duet/{p-edbc2774.entry.js → p-52e15824.entry.js} +1 -1
  437. package/lib/duet/{p-c8536d3f.entry.js → p-53da8993.entry.js} +1 -1
  438. package/lib/duet/{p-ad70248d.entry.js → p-556983df.entry.js} +1 -1
  439. package/lib/duet/{p-a620d583.system.entry.js → p-56b259c4.system.entry.js} +1 -1
  440. package/lib/duet/{p-7966dc5b.system.entry.js → p-57b02e39.system.entry.js} +2 -2
  441. package/lib/duet/{p-bc7c47f4.system.entry.js → p-5aa42e6e.system.entry.js} +2 -2
  442. package/lib/duet/p-5b014c86.system.js +4 -0
  443. package/lib/duet/{p-5ac682b3.system.entry.js → p-5c08947a.system.entry.js} +1 -1
  444. package/lib/duet/{p-f30d3b09.system.entry.js → p-5e25fed6.system.entry.js} +1 -1
  445. package/lib/duet/{p-88c01d1c.entry.js → p-6043a34d.entry.js} +1 -1
  446. package/lib/duet/{p-baef301c.system.entry.js → p-618fae79.system.entry.js} +2 -2
  447. package/lib/duet/{p-ca112a3f.system.entry.js → p-61989371.system.entry.js} +2 -2
  448. package/lib/duet/p-6278bb45.system.entry.js +4 -0
  449. package/lib/duet/{p-096d7724.entry.js → p-62e31f4f.entry.js} +1 -1
  450. package/lib/duet/{p-2bec5be2.entry.js → p-64599d16.entry.js} +1 -1
  451. package/lib/duet/{p-c655b7d1.system.entry.js → p-64c58523.system.entry.js} +1 -1
  452. package/lib/duet/p-6665a293.entry.js +4 -0
  453. package/lib/duet/p-668716b8.system.js +4 -0
  454. package/lib/duet/{p-3c2f1fd0.entry.js → p-678e5dee.entry.js} +1 -1
  455. package/lib/duet/{p-ea4f5d13.system.entry.js → p-6878509c.system.entry.js} +1 -1
  456. package/lib/duet/{p-651d430e.system.entry.js → p-68c41c1e.system.entry.js} +2 -2
  457. package/lib/duet/{p-2d7d1ff7.entry.js → p-68e69fb0.entry.js} +1 -1
  458. package/lib/duet/p-69180c8a.entry.js +4 -0
  459. package/lib/duet/{p-0414004a.entry.js → p-69ed2463.entry.js} +1 -1
  460. package/lib/duet/{p-cc48a8a0.system.entry.js → p-6a11cde0.system.entry.js} +2 -2
  461. package/lib/duet/p-6ac42c0b.system.entry.js +4 -0
  462. package/lib/duet/{p-86b83b73.system.entry.js → p-6cd9e728.system.entry.js} +2 -2
  463. package/lib/duet/{p-9601bad5.entry.js → p-6ff847d2.entry.js} +1 -1
  464. package/lib/duet/{p-ee0ca0fd.entry.js → p-70046a69.entry.js} +1 -1
  465. package/lib/duet/{p-469892f4.system.entry.js → p-7041ce72.system.entry.js} +1 -1
  466. package/lib/duet/{p-3092d696.system.entry.js → p-7047ac99.system.entry.js} +2 -2
  467. package/lib/duet/p-719b38fe.system.js +4 -0
  468. package/lib/duet/{p-0f2664ed.entry.js → p-73e91b76.entry.js} +1 -1
  469. package/lib/duet/p-75daef16.system.js +4 -0
  470. package/lib/duet/p-7671b7b7.system.js +4 -0
  471. package/lib/duet/{p-5f46f02e.system.entry.js → p-76837ecf.system.entry.js} +1 -1
  472. package/lib/duet/{p-33b3aba4.system.js → p-77b6e4ba.system.js} +1 -1
  473. package/lib/duet/p-7862b921.entry.js +4 -0
  474. package/lib/duet/{p-bb5d22df.entry.js → p-79b111a8.entry.js} +1 -1
  475. package/lib/duet/{p-5ab4d5d4.entry.js → p-79f248ef.entry.js} +1 -1
  476. package/lib/duet/{p-c135039c.entry.js → p-7b2e5d7f.entry.js} +1 -1
  477. package/lib/duet/p-7c29d36a.system.js +4 -0
  478. package/lib/duet/{p-c52e0917.entry.js → p-7cc4dfa7.entry.js} +1 -1
  479. package/lib/duet/{p-f5c2ccce.entry.js → p-7d836058.entry.js} +1 -1
  480. package/lib/duet/p-7ff3e582.entry.js +4 -0
  481. package/lib/duet/{p-90f97748.entry.js → p-81107718.entry.js} +1 -1
  482. package/lib/duet/{p-22acfa83.entry.js → p-846ff870.entry.js} +1 -1
  483. package/lib/duet/{p-e62f72a3.entry.js → p-8517c898.entry.js} +1 -1
  484. package/lib/duet/{p-7a7da6cf.system.entry.js → p-867ac9cc.system.entry.js} +2 -2
  485. package/lib/duet/{p-0b38374b.system.entry.js → p-8683ae46.system.entry.js} +1 -1
  486. package/lib/duet/p-87dd7bf3.system.js +4 -0
  487. package/lib/duet/p-8972381a.system.js +4 -0
  488. package/lib/duet/{p-6d71214f.entry.js → p-89f3b845.entry.js} +1 -1
  489. package/lib/duet/{p-00743d6c.system.entry.js → p-8b3ca5ab.system.entry.js} +1 -1
  490. package/lib/duet/{p-fb7d7222.entry.js → p-8b5fcd98.entry.js} +1 -1
  491. package/lib/duet/p-8d0d6e06.system.js +4 -0
  492. package/lib/duet/p-8e1da663.system.js +4 -0
  493. package/lib/duet/p-8f477bd6.system.js +1 -1
  494. package/lib/duet/{p-db2865b5.entry.js → p-90c5eed1.entry.js} +1 -1
  495. package/lib/duet/{p-673a726a.entry.js → p-91aef612.entry.js} +1 -1
  496. package/lib/duet/{p-9f65b014.system.entry.js → p-92978891.system.entry.js} +1 -1
  497. package/lib/duet/{p-729f35d8.system.entry.js → p-930e7709.system.entry.js} +2 -2
  498. package/lib/duet/{p-00a893c1.js → p-9323e964.js} +1 -1
  499. package/lib/duet/{p-5fb428c8.system.entry.js → p-93877e30.system.entry.js} +2 -2
  500. package/lib/duet/{p-97076e02.entry.js → p-93c389a8.entry.js} +1 -1
  501. package/lib/duet/{p-f7793f52.entry.js → p-94f4e0bf.entry.js} +1 -1
  502. package/lib/duet/{p-1e3f0d63.system.entry.js → p-9c7d954f.system.entry.js} +1 -1
  503. package/lib/duet/p-9d033a04.system.js +1 -1
  504. package/lib/duet/{p-9c5860a3.entry.js → p-9f04f069.entry.js} +1 -1
  505. package/lib/duet/{p-92c7c0ba.entry.js → p-a1b259b5.entry.js} +1 -1
  506. package/lib/duet/{p-1e88edec.entry.js → p-a31ec36c.entry.js} +1 -1
  507. package/lib/duet/{p-e2daed97.entry.js → p-a3a93783.entry.js} +1 -1
  508. package/lib/duet/{p-b42b2676.entry.js → p-a42e4e99.entry.js} +1 -1
  509. package/lib/duet/{p-15a77012.system.entry.js → p-a5d3e6fb.system.entry.js} +1 -1
  510. package/lib/duet/{p-f702fd53.entry.js → p-a65edc8c.entry.js} +1 -1
  511. package/lib/duet/{p-1853e4e5.system.entry.js → p-a7c0ac21.system.entry.js} +2 -2
  512. package/lib/duet/{p-5f2fc4bd.entry.js → p-aa326c4e.entry.js} +1 -1
  513. package/lib/duet/{p-b41ed3c4.entry.js → p-ab981ff7.entry.js} +1 -1
  514. package/lib/duet/{p-2e54c214.entry.js → p-ac711c85.entry.js} +1 -1
  515. package/lib/duet/{p-31d63beb.system.entry.js → p-acb44157.system.entry.js} +1 -1
  516. package/lib/duet/{p-bdb50607.system.entry.js → p-ae8732d6.system.entry.js} +2 -2
  517. package/lib/duet/{p-ab2d8091.entry.js → p-aeccbda2.entry.js} +1 -1
  518. package/lib/duet/p-b1db3006.js +1 -1
  519. package/lib/duet/{p-0c203d28.entry.js → p-b223f9f3.entry.js} +1 -1
  520. package/lib/duet/{p-c8836a67.system.entry.js → p-b440e72b.system.entry.js} +1 -1
  521. package/lib/duet/{p-9d317471.entry.js → p-b4d48cd1.entry.js} +1 -1
  522. package/lib/duet/{p-30d1b2b5.entry.js → p-b66ecbb2.entry.js} +1 -1
  523. package/lib/duet/{p-0ea3453c.system.entry.js → p-b8c3530f.system.entry.js} +1 -1
  524. package/lib/duet/{p-d86480ea.system.entry.js → p-b9122050.system.entry.js} +1 -1
  525. package/lib/duet/{p-250745c0.system.entry.js → p-b932a1dc.system.entry.js} +2 -2
  526. package/lib/duet/p-b99c00fa.system.js +4 -0
  527. package/lib/duet/{p-fc6d2bf4.entry.js → p-bd988e8e.entry.js} +1 -1
  528. package/lib/duet/{p-20767b15.system.entry.js → p-c05d40ff.system.entry.js} +1 -1
  529. package/lib/duet/{p-7be35e53.system.entry.js → p-c2884d84.system.entry.js} +2 -2
  530. package/lib/duet/p-c30a5f7c.system.js +4 -0
  531. package/lib/duet/{p-e96bed1e.system.entry.js → p-c4162949.system.entry.js} +1 -1
  532. package/lib/duet/{p-6b2c127a.entry.js → p-c67fb8ae.entry.js} +1 -1
  533. package/lib/duet/{p-457ae87b.system.entry.js → p-c7719838.system.entry.js} +1 -1
  534. package/lib/duet/{p-42c64bb8.system.entry.js → p-c7d985bf.system.entry.js} +2 -2
  535. package/lib/duet/{p-73c9436a.entry.js → p-c94181d2.entry.js} +1 -1
  536. package/lib/duet/p-c97109b5.system.js +4 -0
  537. package/lib/duet/{p-f9f1c707.system.entry.js → p-cb01acfa.system.entry.js} +2 -2
  538. package/lib/duet/{p-aa634481.entry.js → p-cbe9191a.entry.js} +1 -1
  539. package/lib/duet/{p-51328149.entry.js → p-cbf7f63b.entry.js} +1 -1
  540. package/lib/duet/{p-9bdf6ce2.entry.js → p-cefb4bab.entry.js} +1 -1
  541. package/lib/duet/{p-a322b729.entry.js → p-d0dd55f5.entry.js} +1 -1
  542. package/lib/duet/{p-79266582.system.entry.js → p-d1edbad6.system.entry.js} +1 -1
  543. package/lib/duet/{p-0dfe14d3.entry.js → p-d3384a8b.entry.js} +1 -1
  544. package/lib/duet/{p-2556c6f0.system.entry.js → p-d366b0ac.system.entry.js} +2 -2
  545. package/lib/duet/{p-b3a1ea89.system.entry.js → p-d3e74991.system.entry.js} +2 -2
  546. package/lib/duet/{p-b529eb0c.system.entry.js → p-d5ac9c19.system.entry.js} +2 -2
  547. package/lib/duet/{p-24bc0b8c.entry.js → p-d60fc476.entry.js} +1 -1
  548. package/lib/duet/{p-0762d0ce.system.entry.js → p-d97155db.system.entry.js} +2 -2
  549. package/lib/duet/{p-73242991.entry.js → p-da858b14.entry.js} +1 -1
  550. package/lib/duet/p-daea7760.entry.js +4 -0
  551. package/lib/duet/{p-85605193.system.entry.js → p-e0321b18.system.entry.js} +2 -2
  552. package/lib/duet/{p-fb238069.entry.js → p-e1178f0e.entry.js} +1 -1
  553. package/lib/duet/{p-a276bfbd.entry.js → p-e2d5f327.entry.js} +1 -1
  554. package/lib/duet/{p-a922b309.system.entry.js → p-e4a8487e.system.entry.js} +2 -2
  555. package/lib/duet/{p-7ee29cc1.system.entry.js → p-e5fbc547.system.entry.js} +2 -2
  556. package/lib/duet/{p-54c07ffa.system.entry.js → p-e82882cb.system.entry.js} +1 -1
  557. package/lib/duet/p-e8f76d19.system.entry.js +4 -0
  558. package/lib/duet/{p-9b992ce9.entry.js → p-ea2375d5.entry.js} +1 -1
  559. package/lib/duet/{p-703c3662.system.entry.js → p-ebf8ad5c.system.entry.js} +2 -2
  560. package/lib/duet/{p-37ee4ceb.system.entry.js → p-ec2b5cc2.system.entry.js} +2 -2
  561. package/lib/duet/p-ecf1f6cd.system.js +4 -0
  562. package/lib/duet/p-ed5a5071.system.js +4 -0
  563. package/lib/duet/{p-285b2d7b.system.entry.js → p-f158a882.system.entry.js} +1 -1
  564. package/lib/duet/{p-84390ead.entry.js → p-f6476f51.entry.js} +1 -1
  565. package/lib/duet/{p-a095c36f.system.entry.js → p-f67da334.system.entry.js} +2 -2
  566. package/lib/duet/{p-acfae908.system.entry.js → p-f69e737e.system.entry.js} +2 -2
  567. package/lib/duet/{p-e4fd145a.entry.js → p-f89001e8.entry.js} +1 -1
  568. package/lib/duet/{p-3768dda7.system.entry.js → p-faefd02d.system.entry.js} +2 -2
  569. package/lib/duet/{p-29a6d3b3.entry.js → p-fd0d794b.entry.js} +1 -1
  570. package/lib/duet/{p-3344fca3.entry.js → p-fdcc3016.entry.js} +1 -1
  571. package/lib/duet/p-ff9db811.js +5 -0
  572. package/lib/esm/duet-action-button.entry.js +9 -9
  573. package/lib/esm/duet-alert.entry.js +6 -6
  574. package/lib/esm/duet-badge.entry.js +3 -3
  575. package/lib/esm/duet-banner.entry.js +4 -4
  576. package/lib/esm/duet-breadcrumb.entry.js +5 -5
  577. package/lib/esm/duet-breadcrumbs.entry.js +4 -4
  578. package/lib/esm/duet-button_2.entry.js +7 -7
  579. package/lib/esm/duet-callout.entry.js +3 -3
  580. package/lib/esm/duet-caption_4.entry.js +26 -9
  581. package/lib/esm/duet-card.entry.js +7 -7
  582. package/lib/esm/duet-checkbox.entry.js +4 -4
  583. package/lib/esm/duet-checkmark.entry.js +2 -2
  584. package/lib/esm/duet-chip.entry.js +4 -4
  585. package/lib/esm/duet-choice_2.entry.js +11 -11
  586. package/lib/esm/duet-collapsible.entry.js +7 -7
  587. package/lib/esm/duet-combobox.entry.js +6 -6
  588. package/lib/esm/duet-contact-card.entry.js +5 -5
  589. package/lib/esm/duet-cookie-consent.entry.js +3 -3
  590. package/lib/esm/duet-date-picker.entry.js +7 -7
  591. package/lib/esm/duet-divider_2.entry.js +3 -3
  592. package/lib/esm/duet-editable-table_3.entry.js +10 -10
  593. package/lib/esm/duet-empty-state.entry.js +3 -3
  594. package/lib/esm/duet-fieldset.entry.js +5 -5
  595. package/lib/esm/duet-footer.entry.js +6 -6
  596. package/lib/esm/duet-grid_2.entry.js +3 -3
  597. package/lib/esm/duet-header_2.entry.js +9 -9
  598. package/lib/esm/duet-hero.entry.js +6 -6
  599. package/lib/esm/duet-icon.entry.js +4 -4
  600. package/lib/esm/duet-input_2.entry.js +8 -8
  601. package/lib/esm/duet-layout.entry.js +2 -2
  602. package/lib/esm/duet-list_2.entry.js +3 -3
  603. package/lib/esm/duet-menu-bar-button.entry.js +3 -3
  604. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +4 -4
  605. package/lib/esm/duet-menu-bar-dropdown.entry.js +4 -4
  606. package/lib/esm/duet-menu-bar-link.entry.js +3 -3
  607. package/lib/esm/duet-menu-bar.entry.js +3 -3
  608. package/lib/esm/duet-modal.entry.js +10 -10
  609. package/lib/esm/duet-multiselect.entry.js +7 -7
  610. package/lib/esm/duet-nav.entry.js +2 -2
  611. package/lib/esm/duet-notification_2.entry.js +5 -5
  612. package/lib/esm/duet-number-input.entry.js +7 -7
  613. package/lib/esm/duet-page-heading.entry.js +3 -3
  614. package/lib/esm/duet-pagination_2.entry.js +9 -9
  615. package/lib/esm/duet-popup-menu-item.entry.js +3 -3
  616. package/lib/esm/duet-popup-menu.entry.js +5 -5
  617. package/lib/esm/duet-progress.entry.js +6 -6
  618. package/lib/esm/duet-promo-card.entry.js +4 -4
  619. package/lib/esm/duet-radio_2.entry.js +5 -5
  620. package/lib/esm/duet-range-slider.entry.js +5 -5
  621. package/lib/esm/duet-scrollable_3.entry.js +7 -7
  622. package/lib/esm/duet-section-layout.entry.js +2 -2
  623. package/lib/esm/duet-select.entry.js +5 -5
  624. package/lib/esm/duet-shaped-image.entry.js +2 -2
  625. package/lib/esm/duet-show-more.entry.js +7 -7
  626. package/lib/esm/duet-slideout-lang.entry.js +5 -5
  627. package/lib/esm/duet-slideout-link.entry.js +3 -3
  628. package/lib/esm/duet-slideout-panel-dropdown.entry.js +3 -3
  629. package/lib/esm/duet-slideout-panel.entry.js +7 -7
  630. package/lib/esm/duet-slideout.entry.js +9 -9
  631. package/lib/esm/duet-step_2.entry.js +5 -5
  632. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +4 -4
  633. package/lib/esm/duet-submenu-bar-dropdown.entry.js +4 -4
  634. package/lib/esm/duet-submenu-bar-link.entry.js +4 -4
  635. package/lib/esm/duet-submenu-bar.entry.js +4 -4
  636. package/lib/esm/duet-textarea.entry.js +5 -5
  637. package/lib/esm/duet-toggle.entry.js +4 -4
  638. package/lib/esm/duet-toolbar-dropdown-link.entry.js +4 -4
  639. package/lib/esm/duet-toolbar-dropdown.entry.js +4 -4
  640. package/lib/esm/duet-toolbar-link.entry.js +3 -3
  641. package/lib/esm/duet-toolbar.entry.js +2 -2
  642. package/lib/esm/duet-tooltip-button_2.entry.js +5 -5
  643. package/lib/esm/duet-tooltip.entry.js +8 -8
  644. package/lib/esm/duet-tray.entry.js +6 -6
  645. package/lib/esm/duet-upload-aria-status.entry.js +2 -2
  646. package/lib/esm/duet-upload-item.entry.js +6 -6
  647. package/lib/esm/duet-visually-hidden.entry.js +2 -2
  648. package/lib/esm/duet.js +5 -12
  649. package/lib/esm/{errorcodes.utils-47fc5d49.js → errorcodes.utils-424b1197.js} +2 -2
  650. package/lib/esm/{focus-utils-8fc4feb5.js → focus-utils-d927e096.js} +1 -1
  651. package/lib/esm/{index-b1b085ac.js → index-bb518df4.js} +505 -183
  652. package/lib/esm/{language-utils-9d850f6c.js → language-utils-9ff76444.js} +1 -1
  653. package/lib/esm/loader.js +4 -13
  654. package/lib/esm-es5/app-globals-de2a5510.js +1 -1
  655. package/lib/esm-es5/{bodyScrollLock.es6-61b5e9a4.js → bodyScrollLock.es6-8dc7cca7.js} +1 -1
  656. package/lib/esm-es5/{create-id-981107da.js → create-id-2b0cd46d.js} +1 -1
  657. package/lib/esm-es5/duet-action-button.entry.js +2 -2
  658. package/lib/esm-es5/duet-alert.entry.js +2 -2
  659. package/lib/esm-es5/duet-badge.entry.js +1 -1
  660. package/lib/esm-es5/duet-banner.entry.js +1 -1
  661. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  662. package/lib/esm-es5/duet-breadcrumbs.entry.js +2 -2
  663. package/lib/esm-es5/duet-button_2.entry.js +2 -2
  664. package/lib/esm-es5/duet-callout.entry.js +1 -1
  665. package/lib/esm-es5/duet-caption_4.entry.js +2 -2
  666. package/lib/esm-es5/duet-card.entry.js +1 -1
  667. package/lib/esm-es5/duet-checkbox.entry.js +2 -2
  668. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  669. package/lib/esm-es5/duet-chip.entry.js +2 -2
  670. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  671. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  672. package/lib/esm-es5/duet-combobox.entry.js +2 -2
  673. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  674. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  675. package/lib/esm-es5/duet-date-picker.entry.js +2 -2
  676. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  677. package/lib/esm-es5/duet-editable-table_3.entry.js +2 -2
  678. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  679. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  680. package/lib/esm-es5/duet-footer.entry.js +2 -2
  681. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  682. package/lib/esm-es5/duet-header_2.entry.js +2 -2
  683. package/lib/esm-es5/duet-hero.entry.js +2 -2
  684. package/lib/esm-es5/duet-icon.entry.js +2 -2
  685. package/lib/esm-es5/duet-input_2.entry.js +2 -2
  686. package/lib/esm-es5/duet-layout.entry.js +1 -1
  687. package/lib/esm-es5/duet-list_2.entry.js +2 -2
  688. package/lib/esm-es5/duet-menu-bar-button.entry.js +2 -2
  689. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  690. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +2 -2
  691. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  692. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  693. package/lib/esm-es5/duet-modal.entry.js +2 -2
  694. package/lib/esm-es5/duet-multiselect.entry.js +2 -2
  695. package/lib/esm-es5/duet-nav.entry.js +1 -1
  696. package/lib/esm-es5/duet-notification_2.entry.js +2 -2
  697. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  698. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  699. package/lib/esm-es5/duet-pagination_2.entry.js +2 -2
  700. package/lib/esm-es5/duet-popup-menu-item.entry.js +2 -2
  701. package/lib/esm-es5/duet-popup-menu.entry.js +2 -2
  702. package/lib/esm-es5/duet-progress.entry.js +1 -1
  703. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  704. package/lib/esm-es5/duet-radio_2.entry.js +2 -2
  705. package/lib/esm-es5/duet-range-slider.entry.js +2 -2
  706. package/lib/esm-es5/duet-scrollable_3.entry.js +2 -2
  707. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  708. package/lib/esm-es5/duet-select.entry.js +2 -2
  709. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  710. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  711. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  712. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  713. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +2 -2
  714. package/lib/esm-es5/duet-slideout-panel.entry.js +2 -2
  715. package/lib/esm-es5/duet-slideout.entry.js +2 -2
  716. package/lib/esm-es5/duet-step_2.entry.js +2 -2
  717. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  718. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  719. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  720. package/lib/esm-es5/duet-submenu-bar.entry.js +2 -2
  721. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  722. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  723. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  724. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +2 -2
  725. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  726. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  727. package/lib/esm-es5/duet-tooltip-button_2.entry.js +2 -2
  728. package/lib/esm-es5/duet-tooltip.entry.js +2 -2
  729. package/lib/esm-es5/duet-tray.entry.js +1 -1
  730. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  731. package/lib/esm-es5/duet-upload-item.entry.js +2 -2
  732. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  733. package/lib/esm-es5/duet.js +1 -1
  734. package/lib/esm-es5/errorcodes.utils-424b1197.js +4 -0
  735. package/lib/esm-es5/{floating-ui.dom.esm-6025c98f.js → floating-ui.dom.esm-efad5c89.js} +2 -2
  736. package/lib/esm-es5/focus-utils-d927e096.js +4 -0
  737. package/lib/esm-es5/index-bb518df4.js +5 -0
  738. package/lib/esm-es5/input-utils-a0225b92.js +4 -0
  739. package/lib/esm-es5/keyboard-utils-5746e126.js +4 -0
  740. package/lib/esm-es5/{language-utils-9d850f6c.js → language-utils-9ff76444.js} +1 -1
  741. package/lib/esm-es5/loader.js +1 -1
  742. package/lib/esm-es5/string-utils-59ad4cb2.js +4 -0
  743. package/lib/esm-es5/teleport-15747328.js +4 -0
  744. package/lib/esm-es5/token-utils-46c8fe31.js +4 -0
  745. package/lib/esm-es5/watch-options-f189118b.js +4 -0
  746. package/lib/loader/index.d.ts +2 -2
  747. package/lib/types/common-types.d.ts +1 -0
  748. package/lib/types/components/duet-alert/duet-alert.d.ts +1 -1
  749. package/lib/types/components/duet-button/duet-button.d.ts +1 -1
  750. package/lib/types/components/duet-choice/duet-choice.d.ts +1 -1
  751. package/lib/types/components/duet-footer/duet-footer.d.ts +1 -1
  752. package/lib/types/components/duet-header/duet-header.d.ts +2 -2
  753. package/lib/types/components/duet-link/duet-link.d.ts +20 -3
  754. package/lib/types/components/duet-notification/duet-notification.d.ts +1 -1
  755. package/lib/types/components/duet-upload/duet-upload.d.ts +1 -1
  756. package/lib/types/components.d.ts +494 -22
  757. package/lib/types/stencil-public-runtime.d.ts +41 -5
  758. package/package.json +6 -6
  759. package/lib/duet/p-1c8634b1.entry.js +0 -4
  760. package/lib/duet/p-1e709927.system.entry.js +0 -4
  761. package/lib/duet/p-34ea0849.system.js +0 -4
  762. package/lib/duet/p-3538b0af.entry.js +0 -4
  763. package/lib/duet/p-43660fa9.system.js +0 -4
  764. package/lib/duet/p-4c04b1c6.entry.js +0 -4
  765. package/lib/duet/p-51721695.system.js +0 -4
  766. package/lib/duet/p-5c8e5f29.system.js +0 -4
  767. package/lib/duet/p-5f6bd5db.system.js +0 -4
  768. package/lib/duet/p-60b4b7c1.system.js +0 -4
  769. package/lib/duet/p-6aa821df.system.js +0 -4
  770. package/lib/duet/p-6d09651a.entry.js +0 -4
  771. package/lib/duet/p-6d620156.system.entry.js +0 -4
  772. package/lib/duet/p-733bb740.js +0 -5
  773. package/lib/duet/p-737167be.system.js +0 -4
  774. package/lib/duet/p-8304e300.system.entry.js +0 -4
  775. package/lib/duet/p-962a83ef.entry.js +0 -4
  776. package/lib/duet/p-9f97eb07.system.js +0 -5
  777. package/lib/duet/p-a659351d.system.js +0 -4
  778. package/lib/duet/p-a6f6f073.system.entry.js +0 -4
  779. package/lib/duet/p-a7915b7d.entry.js +0 -4
  780. package/lib/duet/p-acb9ba1b.system.entry.js +0 -4
  781. package/lib/duet/p-b6d51921.system.js +0 -4
  782. package/lib/duet/p-b760c72b.system.js +0 -4
  783. package/lib/duet/p-c466bad9.system.js +0 -4
  784. package/lib/duet/p-d863e150.system.js +0 -4
  785. package/lib/duet/p-e30d6bee.system.entry.js +0 -4
  786. package/lib/duet/p-e566ff11.system.js +0 -4
  787. package/lib/duet/p-eb55ccd2.system.js +0 -4
  788. package/lib/duet/p-fa5bcc42.system.js +0 -4
  789. package/lib/duet/p-fc1fee5c.system.js +0 -4
  790. package/lib/duet/p-ff9ef21e.system.entry.js +0 -4
  791. package/lib/esm/polyfills/css-shim.js +0 -1
  792. package/lib/esm-es5/errorcodes.utils-47fc5d49.js +0 -4
  793. package/lib/esm-es5/focus-utils-8fc4feb5.js +0 -4
  794. package/lib/esm-es5/index-b1b085ac.js +0 -5
  795. package/lib/esm-es5/input-utils-de45e099.js +0 -4
  796. package/lib/esm-es5/keyboard-utils-d237bd5a.js +0 -4
  797. package/lib/esm-es5/string-utils-5954f458.js +0 -4
  798. package/lib/esm-es5/teleport-467626fe.js +0 -4
  799. package/lib/esm-es5/token-utils-2d3af0db.js +0 -4
  800. package/lib/esm-es5/watch-options-dd55bce8.js +0 -4
  801. /package/lib/cjs/{bodyScrollLock.es6-6ef1142a.js → bodyScrollLock.es6-83f334d1.js} +0 -0
  802. /package/lib/cjs/{common-strings-de17f887.js → common-strings-17770d7a.js} +0 -0
  803. /package/lib/cjs/{create-id-c3b984b1.js → create-id-167cd350.js} +0 -0
  804. /package/lib/cjs/{floating-ui.dom.esm-d537b048.js → floating-ui.dom.esm-a7d59d53.js} +0 -0
  805. /package/lib/cjs/{input-utils-b5e8f524.js → input-utils-b4615782.js} +0 -0
  806. /package/lib/cjs/{is-internet-explorer-91361c56.js → is-internet-explorer-76c3b538.js} +0 -0
  807. /package/lib/cjs/{js-utils-134e0318.js → js-utils-b20cfc79.js} +0 -0
  808. /package/lib/cjs/{keyboard-utils-bb32119b.js → keyboard-utils-02441bc5.js} +0 -0
  809. /package/lib/cjs/{nudge-82021e4f.js → nudge-ee03ce2e.js} +0 -0
  810. /package/lib/cjs/{slot-query-1624497e.js → slot-query-b7555763.js} +0 -0
  811. /package/lib/cjs/{string-utils-5cadd058.js → string-utils-51a2f59f.js} +0 -0
  812. /package/lib/cjs/{teleport-3166d264.js → teleport-af825e04.js} +0 -0
  813. /package/lib/cjs/{themeable-component-fdeaef9f.js → themeable-component-0be6d1f4.js} +0 -0
  814. /package/lib/cjs/{token-utils-71db4785.js → token-utils-dbfeff2e.js} +0 -0
  815. /package/lib/cjs/{watch-options-d88afac0.js → watch-options-1773d69f.js} +0 -0
  816. /package/lib/dist-custom-elements/{p-8adb9463.js → p-00c8a755.js} +0 -0
  817. /package/lib/dist-custom-elements/{p-3ae39071.js → p-040f8831.js} +0 -0
  818. /package/lib/dist-custom-elements/{p-bd779757.js → p-141e14d0.js} +0 -0
  819. /package/lib/dist-custom-elements/{p-5a9d75e1.js → p-1a395a8d.js} +0 -0
  820. /package/lib/dist-custom-elements/{p-9c1b089a.js → p-24853ebf.js} +0 -0
  821. /package/lib/dist-custom-elements/{p-704245ef.js → p-268171f7.js} +0 -0
  822. /package/lib/dist-custom-elements/{p-0b3f675e.js → p-3d8d557b.js} +0 -0
  823. /package/lib/dist-custom-elements/{p-c1325e35.js → p-45f71a69.js} +0 -0
  824. /package/lib/dist-custom-elements/{p-d8549efe.js → p-56ac3289.js} +0 -0
  825. /package/lib/dist-custom-elements/{p-56118313.js → p-77f2dbee.js} +0 -0
  826. /package/lib/dist-custom-elements/{p-12721178.js → p-a1371eee.js} +0 -0
  827. /package/lib/dist-custom-elements/{p-4ebf1618.js → p-d48735b6.js} +0 -0
  828. /package/lib/dist-custom-elements/{p-76f00bd5.js → p-dade978b.js} +0 -0
  829. /package/lib/dist-custom-elements/{p-9d915d45.js → p-f8c76b25.js} +0 -0
  830. /package/lib/duet/{p-8adb9463.js → p-00c8a755.js} +0 -0
  831. /package/lib/duet/{p-3ae39071.js → p-040f8831.js} +0 -0
  832. /package/lib/duet/{p-2bb34e3d.js → p-0b31864f.js} +0 -0
  833. /package/lib/duet/{p-bd779757.js → p-141e14d0.js} +0 -0
  834. /package/lib/duet/{p-5a9d75e1.js → p-1a395a8d.js} +0 -0
  835. /package/lib/duet/{p-9c1b089a.js → p-24853ebf.js} +0 -0
  836. /package/lib/duet/{p-704245ef.js → p-268171f7.js} +0 -0
  837. /package/lib/duet/{p-c7ae95bd.system.js → p-36b36a8e.system.js} +0 -0
  838. /package/lib/duet/{p-0b3f675e.js → p-3d8d557b.js} +0 -0
  839. /package/lib/duet/{p-c1325e35.js → p-45f71a69.js} +0 -0
  840. /package/lib/duet/{p-56118313.js → p-77f2dbee.js} +0 -0
  841. /package/lib/duet/{p-12721178.js → p-a1371eee.js} +0 -0
  842. /package/lib/duet/{p-f077c646.js → p-cc1909de.js} +0 -0
  843. /package/lib/duet/{p-4ebf1618.js → p-d48735b6.js} +0 -0
  844. /package/lib/duet/{p-76f00bd5.js → p-dade978b.js} +0 -0
  845. /package/lib/duet/{p-9d915d45.js → p-f8c76b25.js} +0 -0
  846. /package/lib/esm/{bodyScrollLock.es6-61b5e9a4.js → bodyScrollLock.es6-8dc7cca7.js} +0 -0
  847. /package/lib/esm/{common-strings-97e04e4b.js → common-strings-71f2aabd.js} +0 -0
  848. /package/lib/esm/{create-id-981107da.js → create-id-2b0cd46d.js} +0 -0
  849. /package/lib/esm/{floating-ui.dom.esm-6025c98f.js → floating-ui.dom.esm-efad5c89.js} +0 -0
  850. /package/lib/esm/{input-utils-de45e099.js → input-utils-a0225b92.js} +0 -0
  851. /package/lib/esm/{is-internet-explorer-62b3bdbd.js → is-internet-explorer-032d4dae.js} +0 -0
  852. /package/lib/esm/{js-utils-fa98b8cd.js → js-utils-a35dcc8c.js} +0 -0
  853. /package/lib/esm/{keyboard-utils-d237bd5a.js → keyboard-utils-5746e126.js} +0 -0
  854. /package/lib/esm/{nudge-a828c525.js → nudge-560904c3.js} +0 -0
  855. /package/lib/esm/{slot-query-8c7dce21.js → slot-query-7877f18f.js} +0 -0
  856. /package/lib/esm/{string-utils-5954f458.js → string-utils-59ad4cb2.js} +0 -0
  857. /package/lib/esm/{teleport-467626fe.js → teleport-15747328.js} +0 -0
  858. /package/lib/esm/{themeable-component-cb76be7c.js → themeable-component-fdce4fd7.js} +0 -0
  859. /package/lib/esm/{token-utils-2d3af0db.js → token-utils-46c8fe31.js} +0 -0
  860. /package/lib/esm/{watch-options-dd55bce8.js → watch-options-f189118b.js} +0 -0
  861. /package/lib/esm-es5/{common-strings-97e04e4b.js → common-strings-71f2aabd.js} +0 -0
  862. /package/lib/esm-es5/{is-internet-explorer-62b3bdbd.js → is-internet-explorer-032d4dae.js} +0 -0
  863. /package/lib/esm-es5/{js-utils-fa98b8cd.js → js-utils-a35dcc8c.js} +0 -0
  864. /package/lib/esm-es5/{nudge-a828c525.js → nudge-560904c3.js} +0 -0
  865. /package/lib/esm-es5/{slot-query-8c7dce21.js → slot-query-7877f18f.js} +0 -0
  866. /package/lib/esm-es5/{themeable-component-cb76be7c.js → themeable-component-fdce4fd7.js} +0 -0
@@ -0,0 +1,159 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { getCurrentLanguage, getLanguage, getLocale, getLocaleString, isOfTypeLanguage } from "./language-utils";
5
+ import { convertHtmlQuotes } from "./string-utils";
6
+ describe("language-utils", () => {
7
+ describe("isOfTypeLanguage", () => {
8
+ it("return true is language if part of default languages", () => {
9
+ expect(isOfTypeLanguage("fi")).toBe(true);
10
+ expect(isOfTypeLanguage("en")).toBe(true);
11
+ expect(isOfTypeLanguage("sv")).toBe(true);
12
+ });
13
+ it("return false is language if not part of default languages", () => {
14
+ expect(isOfTypeLanguage("su")).toBe(false);
15
+ expect(isOfTypeLanguage("uk")).toBe(false);
16
+ expect(isOfTypeLanguage("dk")).toBe(false);
17
+ });
18
+ });
19
+ describe("getLocaleString", () => {
20
+ it("return the correct string", () => {
21
+ const object = {
22
+ fi: "finnish",
23
+ sv: "swedish",
24
+ en: "english",
25
+ };
26
+ expect(getLocaleString(object)).toBe(object["fi"]);
27
+ });
28
+ it("return the correct string for wrong overrides", () => {
29
+ const object = {
30
+ fi: "finnish",
31
+ sv: "swedish",
32
+ en: "english",
33
+ dk: "denmark",
34
+ };
35
+ expect(getLocaleString(object, "dk")).toBe(object["fi"]);
36
+ });
37
+ it("works with urlencoded strings (passed from a html element)", () => {
38
+ const reference = {
39
+ fi: { error: "Tiedostot, joissa on virheitä", success: "Tiedostot" },
40
+ sv: { error: "Filer med fel", success: "Filer" },
41
+ en: { error: "Files with errors", success: "Files" },
42
+ };
43
+ const object = '{"fi":{"error":"Tiedostot, joissa on virheitä","success":"Tiedostot"},"sv":{"error":"Filer med fel","success":"Filer"},"en":{"error":"Files with errors","success":"Files"}}';
44
+ const objectWithQuotes = "{"fi":{"error":"Tiedostot, joissa on virheitä","success":"Tiedostot"},"sv":{"error":"Filer med fel","success":"Filer"},"en":{"error":"Files with errors","success":"Files"}}";
45
+ const objectWithApos = "{'fi':{'error':'Tiedostot, joissa on virheitä','success':'Tiedostot'},'sv':{'error':'Filer med fel','success':'Filer'},'en':{'error':'Files with errors','success':'Files'}}";
46
+ const parsedObject = JSON.parse(convertHtmlQuotes(object));
47
+ const parseObjectWithQuotes = JSON.parse(convertHtmlQuotes(objectWithQuotes));
48
+ const parseObjectWithApos = JSON.parse(convertHtmlQuotes(objectWithApos));
49
+ expect(JSON.stringify(parsedObject)).toEqual(JSON.stringify(parseObjectWithQuotes));
50
+ expect(getLocaleString(parsedObject, "fi")).toEqual(reference["fi"]);
51
+ expect(getLocaleString(parseObjectWithQuotes)).toEqual(reference["fi"]);
52
+ expect(getLocaleString(parseObjectWithApos)).toEqual(reference["fi"]);
53
+ });
54
+ });
55
+ describe("getLocale", () => {
56
+ it("return the correct locale for se", () => {
57
+ const object = {
58
+ locale: "sv-SE",
59
+ money: "€",
60
+ };
61
+ expect(getLocale("sv")).toMatchObject(object);
62
+ });
63
+ it("return the correct locale for en", () => {
64
+ const object = {
65
+ locale: "en-GB",
66
+ money: "£",
67
+ };
68
+ expect(getLocale("en")).toMatchObject(object);
69
+ });
70
+ it("return the correct locale for us", () => {
71
+ const object = {
72
+ locale: "en-US",
73
+ money: "$",
74
+ };
75
+ expect(getLocale("us")).toMatchObject(object);
76
+ });
77
+ it("return the correct locale for fi", () => {
78
+ const object = {
79
+ locale: "fi-FI",
80
+ money: "€",
81
+ };
82
+ expect(getLocale("fi")).toMatchObject(object);
83
+ });
84
+ it("throws error for unknown languages", () => {
85
+ expect(() => {
86
+ //@ts-ignore
87
+ getLocale("no");
88
+ }).toThrow();
89
+ });
90
+ });
91
+ describe("getLanguage", () => {
92
+ it("returns a valid language even when given a unsuitable string", () => {
93
+ expect(getLanguage("shouldFail")).toBe("fi");
94
+ expect(getLanguage("us")).toBe("fi");
95
+ expect(getLanguage("sv")).toBe("sv");
96
+ expect(getLanguage("en")).toBe("en");
97
+ expect(getLanguage("fi")).toBe("fi");
98
+ expect(getLanguage()).toBe("fi");
99
+ });
100
+ it("should return correct language when html Lang is NOT present", () => {
101
+ delete document.documentElement.lang;
102
+ expect(getCurrentLanguage()).toBe("fi");
103
+ expect(getLanguage()).toBe("fi");
104
+ });
105
+ it("should return correct language when html Lang is present and set to fi", () => {
106
+ Object.defineProperty(document.documentElement, "lang", { value: "fi", configurable: true });
107
+ expect(getCurrentLanguage()).toBe("fi");
108
+ expect(getLanguage()).toBe("fi");
109
+ });
110
+ it("should return correct language when html Lang is present and set to sv", () => {
111
+ Object.defineProperty(document.documentElement, "lang", { value: "sv", configurable: true });
112
+ expect(getCurrentLanguage()).toBe("sv");
113
+ expect(getLanguage()).toBe("sv");
114
+ });
115
+ it("should return correct language when html Lang is present and set to en", () => {
116
+ Object.defineProperty(document.documentElement, "lang", { value: "en", configurable: true });
117
+ expect(getCurrentLanguage()).toBe("en");
118
+ expect(getLanguage()).toBe("en");
119
+ });
120
+ it("should return correct language when html Lang is present and set to dk", () => {
121
+ Object.defineProperty(document.documentElement, "lang", { value: "dk", configurable: true });
122
+ expect(getCurrentLanguage()).toBe("dk");
123
+ expect(getLanguage()).toBe("fi");
124
+ });
125
+ });
126
+ describe("avoid introducing breaking changes where label as String mutates to Object", () => {
127
+ /**
128
+ * We want to make sure that no regressions or breaking changes are introduced when converting props such as
129
+ @Prop() accessibleLabel: string = "Sulje viesti"
130
+
131
+ to
132
+
133
+ @Prop() accessibleLabel: string = getLocaleString({
134
+ fi: "default finnish",
135
+ sv: "default swedish",
136
+ en: "default english",
137
+ })
138
+ */
139
+ const somePresetObject = {
140
+ fi: "preset finnish",
141
+ sv: "preset swedish",
142
+ en: "preset english",
143
+ };
144
+ const mockStringAsProperty = (variable) => {
145
+ return variable ? variable : getLocaleString(somePresetObject);
146
+ };
147
+ it("should not fail when label is a string", () => {
148
+ const testString = "some thing that is a string";
149
+ const resultString = mockStringAsProperty(testString);
150
+ const resultStringUndef = mockStringAsProperty(undefined);
151
+ const resultStringEmpty = mockStringAsProperty();
152
+ const resultStringNull = mockStringAsProperty(null);
153
+ expect(resultString).toBe(testString);
154
+ expect(resultStringEmpty).toBe(somePresetObject.fi);
155
+ expect(resultStringNull).toBe(somePresetObject.fi);
156
+ expect(resultStringUndef).toBe(somePresetObject.fi);
157
+ });
158
+ });
159
+ });
@@ -0,0 +1,140 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { clamp, roundTo, SafeParseFloat } from "./math.utils";
5
+ describe("math utils", () => {
6
+ describe("roundTo", () => {
7
+ it("should round to whole numbers", () => {
8
+ expect(roundTo(123, 5)).toBe(125);
9
+ expect(roundTo(111, 5)).toBe(110);
10
+ });
11
+ it("should round to negative whole numbers", () => {
12
+ expect(roundTo(-123, 5)).toBe(-125);
13
+ expect(roundTo(-111, 5)).toBe(-110);
14
+ });
15
+ it("should round to decimal numbers", () => {
16
+ expect(roundTo(1.3, 0.5)).toBe(1.5);
17
+ expect(roundTo(1.2, 0.5)).toBe(1);
18
+ expect(roundTo(1.2, 1.5)).toBe(1.5);
19
+ });
20
+ it("should round to negative decimal numbers", () => {
21
+ expect(roundTo(-1.3, 0.5)).toBe(-1.5);
22
+ expect(roundTo(-1.2, 0.5)).toBe(-1);
23
+ expect(roundTo(-1.2, 1.5)).toBe(-1.5);
24
+ });
25
+ });
26
+ describe("clamp", () => {
27
+ it("should return value if in range", () => {
28
+ expect(clamp(5, 0, 10)).toBe(5);
29
+ });
30
+ it("should return min if value < min", () => {
31
+ expect(clamp(-5, 0, 10)).toBe(0);
32
+ });
33
+ it("should return max if value > max", () => {
34
+ expect(clamp(15, 0, 10)).toBe(10);
35
+ });
36
+ it("should return max if value > max for negative min", () => {
37
+ expect(clamp(15, -10, 10)).toBe(10);
38
+ });
39
+ it("should return min if value < min for negative min", () => {
40
+ expect(clamp(-15, -10, 10)).toBe(-10);
41
+ });
42
+ });
43
+ describe("SafeParseFloat with locale", () => {
44
+ it("should parse numbers in Swedish locale", () => {
45
+ expect(SafeParseFloat("12345,67", "sv-SE")).toBe(12345.67);
46
+ expect(SafeParseFloat("12 345,67", "sv-SE")).toBe(12345.67);
47
+ expect(SafeParseFloat("12 345,67€", "sv-SE")).toBe(12345.67);
48
+ });
49
+ it("should parse numbers in Finnish locale", () => {
50
+ expect(SafeParseFloat("12345,67", "fi-FI")).toBe(12345.67);
51
+ expect(SafeParseFloat("12 345,67", "fi-FI")).toBe(12345.67);
52
+ expect(SafeParseFloat("12 345,67€", "fi-FI")).toBe(12345.67);
53
+ });
54
+ it("should parse numbers in English locale", () => {
55
+ expect(SafeParseFloat("12345.67", "en-GB")).toBe(12345.67);
56
+ expect(SafeParseFloat("12,345.67", "en-GB")).toBe(12345.67);
57
+ expect(SafeParseFloat("12,345.67€", "en-GB")).toBe(12345.67);
58
+ });
59
+ it("should throw if something not a number is supplied", () => {
60
+ // @ts-ignore
61
+ expect(() => SafeParseFloat("definitely not a 10100 number ", "it-IT")).toThrow(Error);
62
+ });
63
+ it("should support negqative values", () => {
64
+ // @ts-ignore
65
+ expect(SafeParseFloat("-12 345,67€", "fi-FI")).toBe(-12345.67);
66
+ expect(SafeParseFloat("-12 345,67€", "sv-SE")).toBe(-12345.67);
67
+ expect(SafeParseFloat("-1€", "fi-FI")).toBe(-1);
68
+ expect(SafeParseFloat("-1", "fi-FI")).toBe(-1);
69
+ expect(SafeParseFloat("-1 €", "fi-FI")).toBe(-1);
70
+ expect(SafeParseFloat("-1 ", "fi-FI")).toBe(-1);
71
+ expect(SafeParseFloat("-10 ", "fi-FI")).toBe(-10);
72
+ expect(SafeParseFloat("- 10 ", "fi-FI")).toBe(-10);
73
+ });
74
+ });
75
+ });
76
+ describe("math-utils negative numbers", () => {
77
+ describe("roundTo", () => {
78
+ it("should round to negative decimal numbers", () => {
79
+ expect(roundTo(-1.3, 0.5)).toBe(-1.5);
80
+ expect(roundTo(-1.2, 0.5)).toBe(-1);
81
+ expect(roundTo(-1.2, 1.5)).toBe(-1.5);
82
+ });
83
+ });
84
+ describe("clamp", () => {
85
+ it("should return value if in range", () => {
86
+ expect(clamp(5, 0, 10)).toBe(5);
87
+ });
88
+ it("should return min if value < min", () => {
89
+ expect(clamp(-5, 0, 10)).toBe(0);
90
+ });
91
+ it("should return max if value > max", () => {
92
+ expect(clamp(15, 0, 10)).toBe(10);
93
+ });
94
+ it("should return max if value > max for negative min", () => {
95
+ expect(clamp(15, -10, 10)).toBe(10);
96
+ });
97
+ it("should return min if value < min for negative min", () => {
98
+ expect(clamp(-15, -10, 10)).toBe(-10);
99
+ });
100
+ });
101
+ describe("SafeParseFloat", () => {
102
+ it("should parse numbers in Swedish locale", () => {
103
+ expect(SafeParseFloat("-2", "sv-SE")).toBe(-2);
104
+ expect(SafeParseFloat("-2 €", "sv-SE")).toBe(-2);
105
+ expect(SafeParseFloat("-2€", "sv-SE")).toBe(-2);
106
+ expect(SafeParseFloat("- 2 €", "sv-SE")).toBe(-2);
107
+ });
108
+ it("should parse numbers in Finnish locale", () => {
109
+ expect(SafeParseFloat("-2", "fi-FI")).toBe(-2);
110
+ expect(SafeParseFloat("-2 €", "fi-FI")).toBe(-2);
111
+ expect(SafeParseFloat("-2€", "fi-FI")).toBe(-2);
112
+ expect(SafeParseFloat("- 2 €", "fi-FI")).toBe(-2);
113
+ });
114
+ it("should parse numbers in English locale", () => {
115
+ expect(SafeParseFloat("-2", "en-GB")).toBe(-2);
116
+ expect(SafeParseFloat("-2 €", "en-GB")).toBe(-2);
117
+ expect(SafeParseFloat("-2€", "en-GB")).toBe(-2);
118
+ expect(SafeParseFloat("- 2 €", "en-GB")).toBe(-2);
119
+ });
120
+ it("should not throw if unknown locale supplied", () => {
121
+ // @ts-ignore
122
+ expect(() => SafeParseFloat("12.345,67", "enokian")).not.toThrow(TypeError);
123
+ });
124
+ it("should support negative values", () => {
125
+ // @ts-ignore
126
+ expect(SafeParseFloat("-12 345,67€", "fi-FI")).toBe(-12345.67);
127
+ expect(SafeParseFloat("-12 345,67€", "sv-SE")).toBe(-12345.67);
128
+ expect(SafeParseFloat("-12 345.67€", "en-GB")).toBe(-12345.67);
129
+ expect(SafeParseFloat("-12 345,67€", "fi-FI")).toBe(-12345.67);
130
+ expect(SafeParseFloat("-12 345,67€", "sv-SE")).toBe(-12345.67);
131
+ expect(SafeParseFloat("-12,345.67€", "en-GB")).toBe(-12345.67);
132
+ expect(SafeParseFloat("-1€", "fi-FI")).toBe(-1);
133
+ expect(SafeParseFloat("-1", "fi-FI")).toBe(-1);
134
+ expect(SafeParseFloat("-1 €", "fi-FI")).toBe(-1);
135
+ expect(SafeParseFloat("-1 ", "fi-FI")).toBe(-1);
136
+ expect(SafeParseFloat("-10 ", "fi-FI")).toBe(-10);
137
+ expect(SafeParseFloat("- 10 ", "fi-FI")).toBe(-10);
138
+ });
139
+ });
140
+ });
@@ -0,0 +1,39 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { parsePossibleJSON } from "./string-utils";
5
+ describe("string-utils", () => {
6
+ describe("parsePossibleString", () => {
7
+ it("returns exact same object, if object is passed", () => {
8
+ const object = { hello: "world" };
9
+ expect(parsePossibleJSON(object)).toBe(object);
10
+ });
11
+ it("returns exact same array, if array is passed", () => {
12
+ const array = [{ hello: "world" }];
13
+ expect(parsePossibleJSON(array)).toBe(array);
14
+ });
15
+ it("parses string arguments as JSON", () => {
16
+ const object = { hello: "world" };
17
+ const stringifiedObject = JSON.stringify(object);
18
+ expect(parsePossibleJSON(stringifiedObject)).toEqual(object);
19
+ });
20
+ it("gracefully handles malformed/invalid JSON", () => {
21
+ // spy on console.warn so we can assert it was called, and avoid mess in test output
22
+ const spy = jest.spyOn(global.console, "warn").mockImplementation(() => jest.fn());
23
+ // intentionally invalid JSON - unquoted property name
24
+ const stringifiedObject = '{ hello: "world" }';
25
+ expect(parsePossibleJSON(stringifiedObject)).toBe(undefined);
26
+ expect(console.warn).toHaveBeenCalled();
27
+ spy.mockRestore();
28
+ });
29
+ it("returns undefined for other types of data", () => {
30
+ expect(parsePossibleJSON(null)).toBe(undefined);
31
+ expect(parsePossibleJSON(undefined)).toBe(undefined);
32
+ expect(parsePossibleJSON(function () {
33
+ /*intentionally empty*/
34
+ })).toBe(undefined);
35
+ expect(parsePossibleJSON(true)).toBe(undefined);
36
+ expect(parsePossibleJSON(12345)).toBe(undefined);
37
+ });
38
+ });
39
+ });
@@ -0,0 +1,39 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { generateTemplateFn } from "./template-utils";
5
+ describe("Template functions", () => {
6
+ it("works with dom nodes", () => {
7
+ document.body.innerHTML = '<div id="testing"><div>${name} <span>${someOther}</span></div> </div>';
8
+ const variables = {
9
+ name: "duet",
10
+ someOther: "other",
11
+ };
12
+ const testingDom = document.getElementById("testing");
13
+ const objectString = "<div>${name} <span>${someOther}</span></div>";
14
+ const domString = testingDom.firstElementChild.outerHTML;
15
+ const templateFn = generateTemplateFn(domString);
16
+ const templateOrig = generateTemplateFn(objectString);
17
+ const renderedTemplate = templateFn(variables);
18
+ const renderedTemplateOrig = templateOrig(variables);
19
+ expect(renderedTemplate).toBe(`<div>${variables.name} <span>${variables.someOther}</span></div>`);
20
+ expect(renderedTemplate).toBe(renderedTemplateOrig);
21
+ });
22
+ it("returns same string as string literals", () => {
23
+ const variables = {
24
+ name: "duet",
25
+ someOther: "other",
26
+ };
27
+ const objectString = "<div>${name} <span>${someOther}</span></div>";
28
+ const templateFn = generateTemplateFn(objectString);
29
+ expect(templateFn(variables)).toBe(`<div>${variables.name} <span>${variables.someOther}</span></div>`);
30
+ });
31
+ it("returns object with undefined string if none are given", () => {
32
+ const variables = {
33
+ name: "duet",
34
+ };
35
+ const objectString = "<div>${name} <span>${someOther}</span></div>";
36
+ const templateFn = generateTemplateFn(objectString);
37
+ expect(templateFn(variables)).toBe("<div>duet <span>undefined</span></div>");
38
+ });
39
+ });
@@ -0,0 +1,178 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import * as tokens from "@duetds/tokens";
5
+ import { convertToColorName, getColorByName, getFontSizeByName, getFontWeightByName, isCamelCase, isDashCase, rgbaColorFromRgb, shadeRGBColor, } from "./token-utils";
6
+ describe("token-utils", () => {
7
+ describe("isCamelCase", () => {
8
+ it("checks for camelCase", () => {
9
+ expect(isCamelCase("primaryDark")).toEqual(true);
10
+ expect(isCamelCase("colorPrimaryDark")).toEqual(true);
11
+ expect(isCamelCase("primary-dark")).toEqual(false);
12
+ expect(isCamelCase("color-primary-dark")).toEqual(false);
13
+ expect(isCamelCase("colorPrimary-Dark")).toEqual(false);
14
+ expect(isCamelCase("-colorPrimary")).toEqual(false);
15
+ expect(isCamelCase("color_Primary")).toEqual(false);
16
+ expect(isCamelCase("color Primary")).toEqual(false);
17
+ });
18
+ });
19
+ describe("isDashCase", () => {
20
+ it("checks for dash case", () => {
21
+ expect(isDashCase("primary-dark")).toEqual(true);
22
+ expect(isDashCase("color-primary-dark")).toEqual(true);
23
+ expect(isDashCase("colorPrimary-Dark")).toEqual(true);
24
+ expect(isDashCase("primaryDark")).toEqual(false);
25
+ expect(isDashCase("colorPrimaryDark")).toEqual(false);
26
+ expect(isDashCase("-colorPrimary")).toEqual(false);
27
+ expect(isDashCase("color_Primary")).toEqual(false);
28
+ expect(isDashCase("color Primary")).toEqual(false);
29
+ });
30
+ });
31
+ describe("convertToColorName", () => {
32
+ it("converts primaryDark to a consistent format", () => {
33
+ expect(convertToColorName("primaryDark")).toEqual("colorPrimaryDark");
34
+ });
35
+ it("converts primary-dark to a consistent format", () => {
36
+ expect(convertToColorName("primary-dark")).toEqual("colorPrimaryDark");
37
+ });
38
+ it("converts color-primary-dark to a consistent format", () => {
39
+ expect(convertToColorName("color-primary-dark")).toEqual("colorPrimaryDark");
40
+ });
41
+ it("converts colorPrimaryDark to a consistent format", () => {
42
+ expect(convertToColorName("colorPrimaryDark")).toEqual("colorPrimaryDark");
43
+ });
44
+ });
45
+ describe("convertToColorName with theme", () => {
46
+ it("converts primaryDark to a consistent format", () => {
47
+ expect(convertToColorName("primaryDark", "turva")).toEqual("colorPrimaryDarkTurva");
48
+ });
49
+ it("converts primary-dark to a consistent format", () => {
50
+ expect(convertToColorName("primary-dark", "turva")).toEqual("colorPrimaryDarkTurva");
51
+ });
52
+ it("converts color-primary-dark to a consistent format", () => {
53
+ expect(convertToColorName("color-primary-dark", "turva")).toEqual("colorPrimaryDarkTurva");
54
+ });
55
+ it("converts colorPrimaryDark to a consistent format", () => {
56
+ expect(convertToColorName("colorPrimaryDark", "turva")).toEqual("colorPrimaryDarkTurva");
57
+ });
58
+ });
59
+ describe("getColorByName", () => {
60
+ it("returns undefined if no name supplied", () => {
61
+ expect(getColorByName("")).toBe(undefined);
62
+ // @ts-ignore - ensure behaves correctly outside of TS environments
63
+ expect(getColorByName()).toBe(undefined);
64
+ });
65
+ it("returns undefined for non-existent color name", () => {
66
+ expect(getColorByName("a-color-i-just-made-up")).toBe(undefined);
67
+ });
68
+ it("gets primaryDark token by name", () => {
69
+ expect(getColorByName("primaryDark")).toEqual(tokens.colorPrimaryDark);
70
+ });
71
+ it("gets primary-dark token by name", () => {
72
+ expect(getColorByName("primary-dark")).toEqual(tokens.colorPrimaryDark);
73
+ });
74
+ it("gets color-primary-dark token by name", () => {
75
+ expect(getColorByName("color-primary-dark")).toEqual(tokens.colorPrimaryDark);
76
+ });
77
+ it("gets colorPrimaryDark token by name", () => {
78
+ expect(getColorByName("colorPrimaryDark")).toEqual(tokens.colorPrimaryDark);
79
+ });
80
+ it("gets undefined token by name with theme", () => {
81
+ expect(getColorByName("", "turva")).toBe(undefined);
82
+ expect(getColorByName(undefined, undefined)).toBe(undefined);
83
+ expect(getColorByName(null, undefined)).toBe(undefined);
84
+ });
85
+ it("gets colorPrimaryDark token by name with theme", () => {
86
+ expect(getColorByName("colorPrimaryDark", "turva")).toEqual(tokens.colorPrimaryDarkTurva);
87
+ });
88
+ it("gets primaryDark token by name with theme", () => {
89
+ expect(getColorByName("primaryDark", "turva")).toEqual(tokens.colorPrimaryDarkTurva);
90
+ });
91
+ it("gets color-primary-dark token by name with theme", () => {
92
+ expect(getColorByName("color-primary-dark", "turva")).toEqual(tokens.colorPrimaryDarkTurva);
93
+ });
94
+ it("gets primary-dark token by name with theme", () => {
95
+ expect(getColorByName("primary-dark", "turva")).toEqual(tokens.colorPrimaryDarkTurva);
96
+ });
97
+ it("gets the color token by name with empty theme", () => {
98
+ expect(getColorByName("primaryDark", "")).toEqual(tokens.colorPrimaryDark);
99
+ expect(getColorByName("primary-dark", "")).toEqual(tokens.colorPrimaryDark);
100
+ expect(getColorByName("color-primary-dark", "")).toEqual(tokens.colorPrimaryDark);
101
+ expect(getColorByName("colorPrimaryDark", "")).toEqual(tokens.colorPrimaryDark);
102
+ });
103
+ });
104
+ describe("getColorByName with additional colors", () => {
105
+ it("gets the color names for complex colors", () => {
106
+ expect(getColorByName("color-category-vehicle", "")).toEqual(tokens.colorCategoryVehicle);
107
+ expect(getColorByName("color-category-finance", "")).toEqual(tokens.colorCategoryFinance);
108
+ expect(getColorByName("color-category-pet", "")).toEqual(tokens.colorCategoryPet);
109
+ expect(getColorByName("color-category-travel", "")).toEqual(tokens.colorCategoryTravel);
110
+ });
111
+ it("gets the color names for complex colors with empty theme", () => {
112
+ expect(getColorByName("color-category-vehicle")).toEqual(tokens.colorCategoryVehicle);
113
+ expect(getColorByName("color-category-finance")).toEqual(tokens.colorCategoryFinance);
114
+ expect(getColorByName("color-category-pet")).toEqual(tokens.colorCategoryPet);
115
+ expect(getColorByName("color-category-travel")).toEqual(tokens.colorCategoryTravel);
116
+ });
117
+ it("gets the color names for complex colors with turva theme", () => {
118
+ expect(getColorByName("color-category-vehicle", "turva")).toEqual(tokens.colorCategoryVehicleTurva);
119
+ expect(getColorByName("color-category-travel", "turva")).toEqual(tokens.colorCategoryTravelTurva);
120
+ });
121
+ it("gets the color names for complex colors from default if they dont exist in theme", () => {
122
+ expect(getColorByName("color-category-finance", "turva")).toEqual(tokens.colorCategoryFinance);
123
+ expect(getColorByName("color-category-pet", "turva")).toEqual(tokens.colorCategoryPet);
124
+ });
125
+ });
126
+ describe("getFontSizeByName", () => {
127
+ it("returns undefined if no name supplied", () => {
128
+ expect(getFontSizeByName("")).toBe(undefined);
129
+ // @ts-ignore - ensure behaves correctly outside of TS environments
130
+ expect(getFontSizeByName()).toBe(undefined);
131
+ });
132
+ it("returns undefined for non-existent", () => {
133
+ expect(getFontSizeByName("wrong")).toBe(undefined);
134
+ });
135
+ test.each(["xLarge", "x-large", "font-size-x-large", "fontSizeXLarge"])("gets fontSizeXLarge token by name", name => {
136
+ expect(getFontSizeByName(name)).toEqual(tokens.fontSizeXLarge);
137
+ });
138
+ });
139
+ describe("getFontWeightByName", () => {
140
+ it("returns undefined if no name supplied", () => {
141
+ expect(getFontWeightByName("")).toBe(undefined);
142
+ // @ts-ignore - ensure behaves correctly outside of TS environments
143
+ expect(getFontWeightByName()).toBe(undefined);
144
+ });
145
+ it("returns undefined for non-existent", () => {
146
+ expect(getFontWeightByName("wrong")).toBe(undefined);
147
+ });
148
+ test.each(["extraBold", "extra-bold", "font-weight-extra-bold", "fontWeightExtraBold"])("gets fontWeightExtraBold token by name", name => {
149
+ expect(getFontWeightByName(name)).toEqual(tokens.fontWeightExtraBold);
150
+ });
151
+ });
152
+ describe("rgbaColorFromRgb", () => {
153
+ test.each([
154
+ ["rgb(255, 255, 255)", "rgba(255,255,255,0)", 0],
155
+ ["rgb(255, 255, 255)", "rgba(255,255,255,0.1)", 0.1],
156
+ ["rgb(1, 1, 1)", "rgba(1,1,1,1)", 1],
157
+ [null, undefined, 1],
158
+ [undefined, undefined, 1],
159
+ ["", undefined, 1],
160
+ ["rgb(1, 1, 1)", undefined, undefined],
161
+ ["rgb(1, 1, 1)", undefined, null],
162
+ ])("shades rgb color correctly", (color, expected, opacity) => {
163
+ expect(rgbaColorFromRgb(color, opacity)).toEqual(expected);
164
+ });
165
+ });
166
+ describe("shadeRGBColor", () => {
167
+ test.each([
168
+ ["rgb(255, 255, 255)", "rgb(230,230,230)", -0.1],
169
+ ["rgb(255, 255, 255)", "rgb(255,255,255)", 0.1],
170
+ ["rgb(1, 1, 1)", "rgb(0,0,0)", -0.6],
171
+ ["rgb(224, 42, 13)", "rgb(202,38,12)", -0.1],
172
+ ["rgb(999, 999, 999)", "rgb(255,255,255)", 1],
173
+ ["rgb(-999, -999, -999)", "rgb(0,0,0)", -1],
174
+ ])("shades rgb color correctly", (rgb, shadedRgb, amount) => {
175
+ expect(shadeRGBColor(rgb, amount)).toEqual(shadedRgb);
176
+ });
177
+ });
178
+ });
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { D as DuetActionButton$1, d as defineCustomElement$1 } from './p-479fa83d.js';
4
+ import { D as DuetActionButton$1, d as defineCustomElement$1 } from './p-8160c830.js';
5
5
 
6
6
  const DuetActionButton = DuetActionButton$1;
7
7
  const defineCustomElement = defineCustomElement$1;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { D as DuetAlert$1, d as defineCustomElement$1 } from './p-6816fd1b.js';
4
+ import { D as DuetAlert$1, d as defineCustomElement$1 } from './p-d27dc964.js';
5
5
 
6
6
  const DuetAlert = DuetAlert$1;
7
7
  const defineCustomElement = defineCustomElement$1;
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { D as DuetBadge$1, d as defineCustomElement$1 } from './p-53fba128.js';
4
+ import { D as DuetBadge$1, d as defineCustomElement$1 } from './p-6e063bb0.js';
5
5
 
6
6
  const DuetBadge = DuetBadge$1;
7
7
  const defineCustomElement = defineCustomElement$1;
@@ -1,17 +1,17 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, h, d as Host } from './p-1d90b10e.js';
5
- import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
- import { n as nudge } from './p-3ae39071.js';
7
- import { g as getColorByName } from './p-03e72a70.js';
8
- import { d as defineCustomElement$4 } from './p-99ec82e5.js';
9
- import { d as defineCustomElement$3 } from './p-e611a3df.js';
10
- import { d as defineCustomElement$2 } from './p-decdd69c.js';
4
+ import { p as proxyCustomElement, H, h, d as Host } from './p-7579d4ae.js';
5
+ import { i as inheritGlobalTheme } from './p-d48735b6.js';
6
+ import { n as nudge } from './p-040f8831.js';
7
+ import { g as getColorByName } from './p-e19d1e27.js';
8
+ import { d as defineCustomElement$4 } from './p-a0669ee9.js';
9
+ import { d as defineCustomElement$3 } from './p-db1ac527.js';
10
+ import { d as defineCustomElement$2 } from './p-5f06c4ee.js';
11
11
 
12
12
  const duetBannerCss = "*,*::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:block;width:auto}:host:last-child,:host:last-of-type{margin-right:0 !important}:host(.duet-m-0){margin:0 !important}.duet-banner{display:grid;width:100%;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-style:normal;text-align:left;border-radius:24px}.duet-banner.duet-p-0{padding:0 !important}.duet-banner.duet-m-0{margin:0 !important}.duet-banner .visual{position:relative;overflow:hidden;border-top-left-radius:24px;border-top-right-radius:24px}.duet-banner .visual .image-container{position:relative;width:400px;height:400px;overflow:hidden;border-radius:20%;transform:rotate(7deg)}.duet-banner .visual .image{position:relative;top:20px;width:100%;height:100%;transform:rotate(-7deg);object-fit:cover}.duet-banner .visual .icon{position:absolute}.duet-banner .content{display:flex;flex-direction:column;gap:8px;padding:0 20px 36px}.duet-banner .action{display:flex;flex-direction:column;flex-grow:1;align-items:flex-start;justify-content:flex-end;padding-top:16px}.duet-banner.small{grid-template-rows:335px 1fr;max-width:335px}.duet-banner.small .visual{border-top-left-radius:24px;border-top-right-radius:24px}.duet-banner.small .visual .image-container{top:-130px;left:-40px}.duet-banner.small .visual .icon{bottom:30px;left:15px}.duet-banner.large{grid-template-rows:none;grid-template-columns:50% 50%;min-width:900px;max-width:1112px;height:320px;max-height:none}.duet-banner.large .visual{border-top-left-radius:24px;border-bottom-left-radius:24px}.duet-banner.large .visual .image-container{top:-30px;left:-30px}.duet-banner.large .visual .image{top:-15px;left:30px}.duet-banner.large .visual .icon{top:40px;bottom:auto;left:335px}.duet-banner.large .content{align-items:flex-start;justify-content:center;padding:0 72px 0 0}.duet-banner.large .action{flex-grow:0}.duet-banner.auto{grid-template-rows:335px 1fr;max-width:335px}.duet-banner.auto .visual{border-top-left-radius:24px;border-top-right-radius:24px}.duet-banner.auto .visual .image-container{top:-130px;left:-40px}.duet-banner.auto .visual .icon{bottom:30px;left:15px}@media (min-width: 62em){.duet-banner.auto{grid-template-rows:none;grid-template-columns:50% 50%;min-width:900px;max-width:1112px;height:320px;max-height:none}.duet-banner.auto .visual{border-top-left-radius:24px;border-bottom-left-radius:24px}.duet-banner.auto .visual .image-container{top:-30px;left:-30px}.duet-banner.auto .visual .image{top:-15px;left:30px}.duet-banner.auto .visual .icon{top:40px;bottom:auto;left:335px}.duet-banner.auto .content{align-items:flex-start;justify-content:center;padding:0 72px 0 0}.duet-banner.auto .action{flex-grow:0}}.duet-banner.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}.duet-banner.duet-theme-turva .visual .image-container{width:526px;height:456px;transform:none;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");-webkit-mask-repeat:no-repeat;mask-image:url(\"data:image/svg+xml,%3Csvg%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20160%20140%22%3E%3Cpath%20d%3D%22M87.8%20139.6a57.3%2057.3%200%2000-18.4-3.3c-8-.5-16.3-2.5-24.6-6-16.7-7-29-18.7-37.1-35.3a73.5%2073.5%200%2001-5-52.4c1.7-4%203-6.7%204-7.8a33%2033%200%20004-7.8C33.4%203.5%2063.2-4.3%20100%203.2c30.5%204%2049.7%2019.9%2057.6%2047.4l1.6%2024c4.4%2036-11.5%2056-47.5%2060.3-4%202.4-12%203.9-24%204.7%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E\");mask-repeat:no-repeat}.duet-banner.duet-theme-turva .visual .image{transform:none}.duet-banner.duet-theme-turva.small .visual .image-container{top:-164px;left:-147px}.duet-banner.duet-theme-turva.small .visual .image{top:0;left:0}.duet-banner.duet-theme-turva.small .visual .icon{bottom:15px}.duet-banner.duet-theme-turva.large .visual .image-container{top:-54.923px;left:-147px}.duet-banner.duet-theme-turva.large .visual .image{top:0;left:0}.duet-banner.duet-theme-turva.large .visual .icon{bottom:auto;left:295px}.duet-banner.duet-theme-turva.auto .visual .image-container{top:-164px;left:-147px}.duet-banner.duet-theme-turva.auto .visual .image{top:0;left:0}.duet-banner.duet-theme-turva.auto .visual .icon{bottom:15px}@media (min-width: 62em){.duet-banner.duet-theme-turva.auto .visual .image-container{top:-54.923px;left:-147px}.duet-banner.duet-theme-turva.auto .visual .image{top:0;left:0}.duet-banner.duet-theme-turva.auto .visual .icon{bottom:auto;left:295px}}";
13
13
 
14
- const DuetBanner$1 = /*@__PURE__*/ proxyCustomElement(class extends H {
14
+ const DuetBanner$1 = /*@__PURE__*/ proxyCustomElement(class DuetBanner extends H {
15
15
  constructor() {
16
16
  super();
17
17
  this.__registerHost();
@@ -1,17 +1,17 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
- import { p as proxyCustomElement, H, h, d as Host } from './p-1d90b10e.js';
5
- import { i as inheritGlobalTheme } from './p-4ebf1618.js';
6
- import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './p-03baceb5.js';
7
- import { n as nudge } from './p-3ae39071.js';
8
- import { d as defineCustomElement$2 } from './p-e611a3df.js';
4
+ import { p as proxyCustomElement, H, h, d as Host } from './p-7579d4ae.js';
5
+ import { i as inheritGlobalTheme } from './p-d48735b6.js';
6
+ import { a as getLanguage, c as connectLanguageChangeObserver, d as disconnectLanguageChangeObserver, g as getLocaleString } from './p-4883df66.js';
7
+ import { n as nudge } from './p-040f8831.js';
8
+ import { d as defineCustomElement$2 } from './p-db1ac527.js';
9
9
 
10
10
  var actionArrowRightSmall={"title":"action-arrow-right-small","tags":"action arrow right small caret","svg":"<svg fill=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\"><path d=\"M19.5 12a2.3 2.3 0 0 1-.78 1.729L7.568 23.54a1.847 1.847 0 0 1-2.439-2.773l9.752-8.579a.25.25 0 0 0 0-.376L5.129 3.233A1.847 1.847 0 0 1 7.568.46l11.148 9.808A2.31 2.31 0 0 1 19.5 12z\"/></svg>"};
11
11
 
12
12
  const duetBreadcrumbCss = "*,*::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;display:list-item;width:auto}.container{display:flex;gap:8px;align-items:center}.hide{display:none}.duet-breadrumbs-arrow{display:block;align-items:center;justify-content:center;width:0.375rem;height:0.375rem}.duet-breadcrumb{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;height:100%;font-size:0.875rem;font-weight:inherit;line-height:1.25;color:inherit;text-decoration:none}.duet-breadcrumb:focus{outline:0}:host(.user-is-tabbing) .duet-breadcrumb:focus{box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing) .duet-breadcrumb.duet-theme-turva:focus{box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}";
13
13
 
14
- const DuetBreadcrumb$1 = /*@__PURE__*/ proxyCustomElement(class extends H {
14
+ const DuetBreadcrumb$1 = /*@__PURE__*/ proxyCustomElement(class DuetBreadcrumb extends H {
15
15
  constructor() {
16
16
  super();
17
17
  this.__registerHost();