@duetds/components 9.2.4 → 9.2.6

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 (638) hide show
  1. package/hydrate/index.js +156 -94
  2. package/lib/cjs/{app-globals-452e6cb2.js → app-globals-78dc4702.js} +1 -1
  3. package/lib/cjs/duet-action-button.cjs.entry.js +4 -4
  4. package/lib/cjs/duet-alert.cjs.entry.js +3 -3
  5. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-banner.cjs.entry.js +4 -4
  7. package/lib/cjs/duet-breadcrumb.cjs.entry.js +2 -2
  8. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +4 -4
  9. package/lib/cjs/duet-button_2.cjs.entry.js +50 -40
  10. package/lib/cjs/duet-callout.cjs.entry.js +2 -2
  11. package/lib/cjs/duet-caption_4.cjs.entry.js +19 -10
  12. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  13. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-checkmark.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-chip_3.cjs.entry.js +28 -16
  16. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  17. package/lib/cjs/duet-collapsible.cjs.entry.js +6 -5
  18. package/lib/cjs/duet-combobox.cjs.entry.js +31 -18
  19. package/lib/cjs/duet-contact-card.cjs.entry.js +2 -2
  20. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-date-picker.cjs.entry.js +8 -8
  22. package/lib/cjs/duet-divider_2.cjs.entry.js +3 -3
  23. package/lib/cjs/duet-editable-table_3.cjs.entry.js +5 -5
  24. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-fieldset.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-file-chooser.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-footer.cjs.entry.js +3 -3
  28. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
  30. package/lib/cjs/duet-hero.cjs.entry.js +3 -3
  31. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  32. package/lib/cjs/duet-input_2.cjs.entry.js +5 -5
  33. package/lib/cjs/duet-layout.cjs.entry.js +2 -2
  34. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +2 -2
  39. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-menu-bar.cjs.entry.js +2 -2
  41. package/lib/cjs/duet-modal.cjs.entry.js +4 -4
  42. package/lib/cjs/duet-multiselect.cjs.entry.js +3 -3
  43. package/lib/cjs/duet-nav.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-notification_2.cjs.entry.js +3 -3
  45. package/lib/cjs/duet-number-input.cjs.entry.js +12 -6
  46. package/lib/cjs/duet-overlay.cjs.entry.js +1 -1
  47. package/lib/cjs/duet-page-heading.cjs.entry.js +1 -1
  48. package/lib/cjs/duet-pagination_2.cjs.entry.js +4 -4
  49. package/lib/cjs/duet-progress.cjs.entry.js +2 -2
  50. package/lib/cjs/duet-promo-card.cjs.entry.js +4 -4
  51. package/lib/cjs/duet-radio_2.cjs.entry.js +2 -2
  52. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  53. package/lib/cjs/duet-scrollable_3.cjs.entry.js +5 -5
  54. package/lib/cjs/duet-section-layout.cjs.entry.js +1 -1
  55. package/lib/cjs/duet-select.cjs.entry.js +2 -2
  56. package/lib/cjs/duet-shaped-image.cjs.entry.js +1 -1
  57. package/lib/cjs/duet-show-more.cjs.entry.js +2 -2
  58. package/lib/cjs/duet-slideout-lang.cjs.entry.js +2 -2
  59. package/lib/cjs/duet-slideout-link.cjs.entry.js +1 -1
  60. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +1 -1
  61. package/lib/cjs/duet-slideout-panel.cjs.entry.js +6 -6
  62. package/lib/cjs/duet-slideout.cjs.entry.js +27 -18
  63. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  64. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +1 -1
  65. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +1 -1
  66. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +2 -2
  67. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +1 -1
  68. package/lib/cjs/duet-submenu-bar.cjs.entry.js +1 -1
  69. package/lib/cjs/duet-textarea.cjs.entry.js +3 -3
  70. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  71. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +1 -1
  72. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +1 -1
  73. package/lib/cjs/duet-toolbar-item.cjs.entry.js +2 -2
  74. package/lib/cjs/duet-toolbar-link.cjs.entry.js +1 -1
  75. package/lib/cjs/duet-toolbar.cjs.entry.js +1 -1
  76. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +2 -2
  77. package/lib/cjs/duet-tooltip.cjs.entry.js +2 -2
  78. package/lib/cjs/duet-tray.cjs.entry.js +3 -3
  79. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  80. package/lib/cjs/duet-upload-item.cjs.entry.js +3 -3
  81. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  82. package/lib/cjs/duet.cjs.js +3 -3
  83. package/lib/cjs/{errorcodes.utils-fa1119ad.js → errorcodes.utils-e044ec9a.js} +1 -1
  84. package/lib/cjs/{focus-utils-deb8c93f.js → focus-utils-a25e1b26.js} +1 -1
  85. package/lib/cjs/{index-d9b6d20e.js → index-efe7ea48.js} +2 -2
  86. package/lib/cjs/{language-utils-dbe5d8aa.js → language-utils-041b3463.js} +1 -1
  87. package/lib/cjs/loader.cjs.js +3 -3
  88. package/lib/cjs/{slot-utils-39adb320.js → slot-utils-c1e99a43.js} +1 -1
  89. package/lib/cjs/{token-utils-453a4e75.js → token-utils-12717808.js} +1 -1
  90. package/lib/cjs/{tokens.module-fcba867f.js → tokens.module-46ddb47a.js} +1 -0
  91. package/lib/collection/components/duet-button/duet-button.js +65 -45
  92. package/lib/collection/components/duet-collapsible/duet-collapsible.css +6 -0
  93. package/lib/collection/components/duet-collapsible/duet-collapsible.js +23 -2
  94. package/lib/collection/components/duet-combobox/duet-combobox.js +31 -16
  95. package/lib/collection/components/duet-date-picker/date-picker-input.js +1 -1
  96. package/lib/collection/components/duet-date-picker/duet-date-picker.css +6 -0
  97. package/lib/collection/components/duet-date-picker/duet-date-picker.js +2 -2
  98. package/lib/collection/components/duet-link/duet-link.css +89 -24
  99. package/lib/collection/components/duet-link/duet-link.js +15 -6
  100. package/lib/collection/components/duet-notification/duet-notification.css +4 -0
  101. package/lib/collection/components/duet-number-input/duet-number-input.js +9 -3
  102. package/lib/collection/components/duet-popup-menu/duet-popup-menu.css +4 -0
  103. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +41 -10
  104. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  105. package/lib/collection/components/duet-slideout/duet-slideout.js +47 -12
  106. package/lib/dist-custom-elements/duet-action-button.js +1 -1
  107. package/lib/dist-custom-elements/duet-alert.js +1 -1
  108. package/lib/dist-custom-elements/duet-badge.js +1 -1
  109. package/lib/dist-custom-elements/duet-banner.js +4 -4
  110. package/lib/dist-custom-elements/duet-breadcrumb.js +3 -3
  111. package/lib/dist-custom-elements/duet-breadcrumbs.js +2 -2
  112. package/lib/dist-custom-elements/duet-button.js +1 -1
  113. package/lib/dist-custom-elements/duet-callout.js +2 -2
  114. package/lib/dist-custom-elements/duet-caption.js +1 -1
  115. package/lib/dist-custom-elements/duet-card.js +4 -4
  116. package/lib/dist-custom-elements/duet-checkbox.js +1 -1
  117. package/lib/dist-custom-elements/duet-checkmark.js +1 -1
  118. package/lib/dist-custom-elements/duet-chip.js +1 -1
  119. package/lib/dist-custom-elements/duet-choice-group.js +8 -8
  120. package/lib/dist-custom-elements/duet-choice.js +4 -4
  121. package/lib/dist-custom-elements/duet-collapsible.js +7 -5
  122. package/lib/dist-custom-elements/duet-combobox.js +44 -30
  123. package/lib/dist-custom-elements/duet-contact-card.js +8 -8
  124. package/lib/dist-custom-elements/duet-cookie-consent.js +6 -6
  125. package/lib/dist-custom-elements/duet-date-picker.js +17 -17
  126. package/lib/dist-custom-elements/duet-divider.js +1 -1
  127. package/lib/dist-custom-elements/duet-editable-table.js +7 -7
  128. package/lib/dist-custom-elements/duet-empty-state.js +1 -1
  129. package/lib/dist-custom-elements/duet-fieldset.js +1 -1
  130. package/lib/dist-custom-elements/duet-file-chooser.js +2 -2
  131. package/lib/dist-custom-elements/duet-footer.js +7 -7
  132. package/lib/dist-custom-elements/duet-grid-item.js +1 -1
  133. package/lib/dist-custom-elements/duet-grid.js +1 -1
  134. package/lib/dist-custom-elements/duet-header.js +8 -8
  135. package/lib/dist-custom-elements/duet-heading.js +1 -1
  136. package/lib/dist-custom-elements/duet-hero.js +9 -9
  137. package/lib/dist-custom-elements/duet-icon.js +1 -1
  138. package/lib/dist-custom-elements/duet-input.js +1 -1
  139. package/lib/dist-custom-elements/duet-label.js +1 -1
  140. package/lib/dist-custom-elements/duet-layout.js +1 -1
  141. package/lib/dist-custom-elements/duet-link.js +1 -1
  142. package/lib/dist-custom-elements/duet-list-item.js +1 -1
  143. package/lib/dist-custom-elements/duet-list.js +1 -1
  144. package/lib/dist-custom-elements/duet-logo.js +1 -1
  145. package/lib/dist-custom-elements/duet-menu-bar-button.js +2 -2
  146. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +2 -2
  147. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +2 -2
  148. package/lib/dist-custom-elements/duet-menu-bar-item.js +2 -2
  149. package/lib/dist-custom-elements/duet-menu-bar-link.js +2 -2
  150. package/lib/dist-custom-elements/duet-menu-bar.js +2 -2
  151. package/lib/dist-custom-elements/duet-modal.js +8 -8
  152. package/lib/dist-custom-elements/duet-multiselect.js +9 -9
  153. package/lib/dist-custom-elements/duet-nav.js +1 -1
  154. package/lib/dist-custom-elements/duet-notification-drawer.js +4 -4
  155. package/lib/dist-custom-elements/duet-notification.js +3 -3
  156. package/lib/dist-custom-elements/duet-number-input.js +20 -14
  157. package/lib/dist-custom-elements/duet-overlay.js +1 -1
  158. package/lib/dist-custom-elements/duet-page-heading.js +3 -3
  159. package/lib/dist-custom-elements/duet-pagination.js +14 -14
  160. package/lib/dist-custom-elements/duet-paragraph.js +1 -1
  161. package/lib/dist-custom-elements/duet-popup-menu-item.js +1 -1
  162. package/lib/dist-custom-elements/duet-popup-menu.js +1 -1
  163. package/lib/dist-custom-elements/duet-progress.js +1 -1
  164. package/lib/dist-custom-elements/duet-promo-card.js +4 -4
  165. package/lib/dist-custom-elements/duet-radio-group.js +8 -8
  166. package/lib/dist-custom-elements/duet-radio.js +1 -1
  167. package/lib/dist-custom-elements/duet-range-slider.js +3 -3
  168. package/lib/dist-custom-elements/duet-range-stepper.js +4 -4
  169. package/lib/dist-custom-elements/duet-scrollable.js +1 -1
  170. package/lib/dist-custom-elements/duet-section-layout.js +1 -1
  171. package/lib/dist-custom-elements/duet-select.js +1 -1
  172. package/lib/dist-custom-elements/duet-shaped-image.js +1 -1
  173. package/lib/dist-custom-elements/duet-show-more.js +1 -1
  174. package/lib/dist-custom-elements/duet-slideout-lang.js +2 -2
  175. package/lib/dist-custom-elements/duet-slideout-link.js +2 -2
  176. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +2 -2
  177. package/lib/dist-custom-elements/duet-slideout-panel.js +3 -3
  178. package/lib/dist-custom-elements/duet-slideout.js +27 -17
  179. package/lib/dist-custom-elements/duet-spacer.js +1 -1
  180. package/lib/dist-custom-elements/duet-spinner.js +1 -1
  181. package/lib/dist-custom-elements/duet-step.js +4 -4
  182. package/lib/dist-custom-elements/duet-stepper.js +2 -2
  183. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +2 -2
  184. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +2 -2
  185. package/lib/dist-custom-elements/duet-submenu-bar-item.js +2 -2
  186. package/lib/dist-custom-elements/duet-submenu-bar-link.js +2 -2
  187. package/lib/dist-custom-elements/duet-submenu-bar.js +3 -3
  188. package/lib/dist-custom-elements/duet-tab-group.js +13 -13
  189. package/lib/dist-custom-elements/duet-tab.js +2 -2
  190. package/lib/dist-custom-elements/duet-table.js +1 -1
  191. package/lib/dist-custom-elements/duet-textarea.js +10 -10
  192. package/lib/dist-custom-elements/duet-toggle.js +2 -2
  193. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +2 -2
  194. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +2 -2
  195. package/lib/dist-custom-elements/duet-toolbar-item.js +2 -2
  196. package/lib/dist-custom-elements/duet-toolbar-link.js +2 -2
  197. package/lib/dist-custom-elements/duet-toolbar.js +1 -1
  198. package/lib/dist-custom-elements/duet-tooltip-button.js +1 -1
  199. package/lib/dist-custom-elements/duet-tooltip-popup.js +1 -1
  200. package/lib/dist-custom-elements/duet-tooltip.js +1 -1
  201. package/lib/dist-custom-elements/duet-tray.js +4 -4
  202. package/lib/dist-custom-elements/duet-upload-aria-status.js +1 -1
  203. package/lib/dist-custom-elements/duet-upload-item.js +1 -1
  204. package/lib/dist-custom-elements/duet-upload.js +19 -19
  205. package/lib/dist-custom-elements/duet-visually-hidden.js +1 -1
  206. package/lib/dist-custom-elements/index.js +1 -1
  207. package/lib/dist-custom-elements/{p-3b812ded.js → p-02e8f591.js} +6 -6
  208. package/lib/dist-custom-elements/{p-c87df135.js → p-16c8b661.js} +1 -1
  209. package/lib/dist-custom-elements/{p-7ead8f48.js → p-247254f4.js} +1 -1
  210. package/lib/dist-custom-elements/{p-69c07319.js → p-3100da6e.js} +3 -3
  211. package/lib/dist-custom-elements/{p-18b56e3d.js → p-324773e2.js} +1 -1
  212. package/lib/dist-custom-elements/{p-e7733e82.js → p-326e709b.js} +8 -8
  213. package/lib/dist-custom-elements/{p-0875d52d.js → p-44576862.js} +2 -2
  214. package/lib/dist-custom-elements/{p-0e77715d.js → p-4c179c1e.js} +1 -1
  215. package/lib/dist-custom-elements/{p-7e2739b2.js → p-5096f482.js} +2 -2
  216. package/lib/dist-custom-elements/{p-c9787e5e.js → p-561b46f4.js} +3 -3
  217. package/lib/dist-custom-elements/{p-cd6d3c5d.js → p-583817e7.js} +1 -1
  218. package/lib/dist-custom-elements/{p-905ec46b.js → p-58f4ac3e.js} +52 -46
  219. package/lib/dist-custom-elements/{p-cd3e7d26.js → p-5b74ff74.js} +4 -4
  220. package/lib/dist-custom-elements/{p-1cd26b78.js → p-5d5b0bf3.js} +1 -1
  221. package/lib/dist-custom-elements/{p-6ecce492.js → p-60125797.js} +1 -1
  222. package/lib/dist-custom-elements/{p-8b3f67c1.js → p-64ab1e7f.js} +1 -1
  223. package/lib/dist-custom-elements/{p-d53e4d53.js → p-6fcd56d1.js} +2 -2
  224. package/lib/dist-custom-elements/{p-ed73a017.js → p-79508a54.js} +2 -2
  225. package/lib/dist-custom-elements/{p-54fcbd1e.js → p-839fb8d6.js} +25 -12
  226. package/lib/dist-custom-elements/{p-34992550.js → p-8636a95c.js} +2 -2
  227. package/lib/dist-custom-elements/{p-b2e2b6dc.js → p-8778bcdf.js} +4 -4
  228. package/lib/dist-custom-elements/{p-9fa78368.js → p-88ed3495.js} +1 -1
  229. package/lib/dist-custom-elements/{p-c7c1a1b2.js → p-a9d05a98.js} +1 -1
  230. package/lib/dist-custom-elements/{p-8da7bd75.js → p-ab0d3de7.js} +5 -5
  231. package/lib/dist-custom-elements/{p-91c13425.js → p-ab4a29e9.js} +2 -2
  232. package/lib/dist-custom-elements/{p-e9a7ac8f.js → p-b597eea5.js} +1 -1
  233. package/lib/dist-custom-elements/{p-9fe78f80.js → p-bfa56fd6.js} +5 -5
  234. package/lib/dist-custom-elements/{p-d2417cc3.js → p-c14e6ca4.js} +10 -10
  235. package/lib/dist-custom-elements/{p-ed15e4de.js → p-c92b6a37.js} +18 -9
  236. package/lib/dist-custom-elements/{p-01dc62e0.js → p-c9b46160.js} +2 -2
  237. package/lib/dist-custom-elements/{p-87457587.js → p-d44fe5d0.js} +10 -10
  238. package/lib/dist-custom-elements/{p-152ae732.js → p-d71e24a5.js} +2 -2
  239. package/lib/dist-custom-elements/{p-a847fd5c.js → p-d84ba8f5.js} +2 -2
  240. package/lib/dist-custom-elements/{p-18790b2b.js → p-d84f6aae.js} +2 -2
  241. package/lib/dist-custom-elements/{p-e74a12bb.js → p-da3148b6.js} +2 -2
  242. package/lib/dist-custom-elements/{p-9b7883f9.js → p-db58dd65.js} +1 -1
  243. package/lib/dist-custom-elements/{p-e1dea5ff.js → p-dbc0966a.js} +2 -2
  244. package/lib/dist-custom-elements/{p-6142f327.js → p-ddaf17a4.js} +2 -2
  245. package/lib/dist-custom-elements/{p-4adfb795.js → p-e1289f43.js} +1 -1
  246. package/lib/dist-custom-elements/{p-89343aa8.js → p-ec438ba9.js} +2 -2
  247. package/lib/dist-custom-elements/{p-dfac3130.js → p-f6926397.js} +5 -5
  248. package/lib/duet/duet.esm.js +1 -1
  249. package/lib/duet/duet.js +1 -1
  250. package/lib/duet/{p-6f2ad6b4.system.entry.js → p-008e68b4.system.entry.js} +1 -1
  251. package/lib/duet/{p-1c426c1d.entry.js → p-03b72e84.entry.js} +1 -1
  252. package/lib/duet/{p-8270417c.system.entry.js → p-08b2f3dd.system.entry.js} +1 -1
  253. package/lib/duet/p-08eb8156.entry.js +4 -0
  254. package/lib/duet/{p-fbbfa934.entry.js → p-092ce0f1.entry.js} +1 -1
  255. package/lib/duet/{p-60bf0c2e.entry.js → p-0991986c.entry.js} +1 -1
  256. package/lib/duet/p-0a42e97a.system.entry.js +4 -0
  257. package/lib/duet/{p-acb9e573.system.entry.js → p-0adec9cf.system.entry.js} +1 -1
  258. package/lib/duet/{p-210280af.entry.js → p-0b2b9fa2.entry.js} +1 -1
  259. package/lib/duet/{p-db2186c9.entry.js → p-0ebc6e34.entry.js} +1 -1
  260. package/lib/duet/p-1004af75.js +4 -0
  261. package/lib/duet/{p-3d9a63aa.js → p-10c530d1.js} +1 -1
  262. package/lib/duet/{p-87ed537a.entry.js → p-11fb9dc4.entry.js} +1 -1
  263. package/lib/duet/{p-45271738.entry.js → p-18d7d777.entry.js} +1 -1
  264. package/lib/duet/{p-8d76cbf3.system.entry.js → p-1b538c45.system.entry.js} +1 -1
  265. package/lib/duet/{p-7549ad4b.entry.js → p-1d1addfe.entry.js} +1 -1
  266. package/lib/duet/{p-9f714fa0.system.entry.js → p-1e3d71f9.system.entry.js} +1 -1
  267. package/lib/duet/{p-60b0947c.entry.js → p-1eb3f237.entry.js} +1 -1
  268. package/lib/duet/{p-c0bbcfcc.system.entry.js → p-1fa48eac.system.entry.js} +1 -1
  269. package/lib/duet/{p-a5849a0b.entry.js → p-200ce847.entry.js} +1 -1
  270. package/lib/duet/{p-1d4135ca.system.entry.js → p-20645770.system.entry.js} +1 -1
  271. package/lib/duet/{p-6e73f832.system.entry.js → p-207ea7e9.system.entry.js} +1 -1
  272. package/lib/duet/{p-e319cf5e.system.entry.js → p-23aa27b2.system.entry.js} +1 -1
  273. package/lib/duet/{p-986a7b1e.system.entry.js → p-266639f9.system.entry.js} +1 -1
  274. package/lib/duet/{p-391ef0db.entry.js → p-27480faf.entry.js} +1 -1
  275. package/lib/duet/{p-639fa1be.entry.js → p-29d9ff1e.entry.js} +1 -1
  276. package/lib/duet/{p-4f6ac285.system.entry.js → p-2aaf03e1.system.entry.js} +1 -1
  277. package/lib/duet/{p-05b48f49.entry.js → p-2c65fead.entry.js} +1 -1
  278. package/lib/duet/{p-11c1e43d.system.entry.js → p-2e78b185.system.entry.js} +1 -1
  279. package/lib/duet/{p-6db9af7a.system.entry.js → p-30598218.system.entry.js} +2 -2
  280. package/lib/duet/{p-11fcafeb.entry.js → p-377315e2.entry.js} +1 -1
  281. package/lib/duet/{p-3cf012fb.entry.js → p-3a8d65e6.entry.js} +1 -1
  282. package/lib/duet/{p-d1e2c9cf.system.entry.js → p-3ac94cc4.system.entry.js} +1 -1
  283. package/lib/duet/p-3f3bcada.entry.js +4 -0
  284. package/lib/duet/{p-544cdd2f.system.entry.js → p-421f851f.system.entry.js} +1 -1
  285. package/lib/duet/{p-9f1da60b.system.entry.js → p-42778d18.system.entry.js} +1 -1
  286. package/lib/duet/{p-7446f33f.entry.js → p-44156252.entry.js} +1 -1
  287. package/lib/duet/{p-75f73c8c.entry.js → p-45bb56a8.entry.js} +1 -1
  288. package/lib/duet/{p-a61c6e59.system.entry.js → p-476b2cf2.system.entry.js} +1 -1
  289. package/lib/duet/{p-3113b50e.system.entry.js → p-49ca595b.system.entry.js} +1 -1
  290. package/lib/duet/p-4b961592.entry.js +4 -0
  291. package/lib/duet/{p-6896514c.system.entry.js → p-4c2d2ce0.system.entry.js} +1 -1
  292. package/lib/duet/p-4d8ebbe4.entry.js +4 -0
  293. package/lib/duet/{p-974f67c1.system.entry.js → p-4ec14860.system.entry.js} +1 -1
  294. package/lib/duet/{p-bf0a3ef8.entry.js → p-4efe4a6c.entry.js} +1 -1
  295. package/lib/duet/{p-40bc0b7d.system.entry.js → p-50260da1.system.entry.js} +1 -1
  296. package/lib/duet/{p-0650bad8.entry.js → p-50ac9df8.entry.js} +1 -1
  297. package/lib/duet/{p-1373db77.js → p-520ac4b7.js} +1 -1
  298. package/lib/duet/{p-abba7304.entry.js → p-521d978e.entry.js} +1 -1
  299. package/lib/duet/{p-9cd03739.system.entry.js → p-5298f539.system.entry.js} +1 -1
  300. package/lib/duet/p-539938fb.js +4 -0
  301. package/lib/duet/{p-71e50550.system.entry.js → p-53dee3c7.system.entry.js} +1 -1
  302. package/lib/duet/{p-f41951bb.entry.js → p-572652e8.entry.js} +1 -1
  303. package/lib/duet/{p-d5dd6d15.system.entry.js → p-58c73080.system.entry.js} +1 -1
  304. package/lib/duet/{p-080a4eb6.system.entry.js → p-59f7aa7f.system.entry.js} +1 -1
  305. package/lib/duet/{p-cd4d12b0.entry.js → p-5ae47d2b.entry.js} +1 -1
  306. package/lib/duet/{p-2f1dcd53.system.entry.js → p-5c1467cf.system.entry.js} +1 -1
  307. package/lib/duet/{p-26008ae7.system.entry.js → p-5d3ba53d.system.entry.js} +1 -1
  308. package/lib/duet/{p-c0881fa6.system.entry.js → p-5d5f4146.system.entry.js} +1 -1
  309. package/lib/duet/{p-a5c7e697.system.js → p-5d89c45e.system.js} +1 -1
  310. package/lib/duet/p-60a0cb7f.system.js +4 -0
  311. package/lib/duet/p-615a6764.system.js +4 -0
  312. package/lib/duet/{p-b228a3c3.system.entry.js → p-6181c1f5.system.entry.js} +1 -1
  313. package/lib/duet/{p-eb20c18e.system.entry.js → p-626efe62.system.entry.js} +1 -1
  314. package/lib/duet/p-63c5fd6b.entry.js +4 -0
  315. package/lib/duet/p-63fd1f1b.entry.js +4 -0
  316. package/lib/duet/{p-69a80411.system.entry.js → p-64027802.system.entry.js} +1 -1
  317. package/lib/duet/{p-f383657a.entry.js → p-6428de74.entry.js} +1 -1
  318. package/lib/duet/{p-2b5456e2.system.entry.js → p-65de8d51.system.entry.js} +1 -1
  319. package/lib/duet/{p-3fc43d94.entry.js → p-6b3a8a12.entry.js} +1 -1
  320. package/lib/duet/{p-1e94efe3.entry.js → p-6bd8fb57.entry.js} +1 -1
  321. package/lib/duet/{p-c6d82f55.system.entry.js → p-6bfc098e.system.entry.js} +1 -1
  322. package/lib/duet/{p-c223e6b4.entry.js → p-6decccda.entry.js} +1 -1
  323. package/lib/duet/{p-a600718b.entry.js → p-6f21adbf.entry.js} +1 -1
  324. package/lib/duet/{p-6f3b0043.entry.js → p-6f66ba45.entry.js} +1 -1
  325. package/lib/duet/p-73c4bdf7.js +4 -0
  326. package/lib/duet/p-73e0f5cf.system.entry.js +4 -0
  327. package/lib/duet/{p-8727f234.entry.js → p-7478fc5e.entry.js} +1 -1
  328. package/lib/duet/{p-1174088c.system.entry.js → p-749267a3.system.entry.js} +1 -1
  329. package/lib/duet/{p-1458593e.entry.js → p-7956df66.entry.js} +1 -1
  330. package/lib/duet/{p-3afc91eb.system.entry.js → p-79ccf9ad.system.entry.js} +1 -1
  331. package/lib/duet/{p-caec0ae0.system.entry.js → p-79f305ba.system.entry.js} +1 -1
  332. package/lib/duet/{p-bb8a20ce.entry.js → p-7d0fcdcd.entry.js} +1 -1
  333. package/lib/duet/{p-d25a005e.system.entry.js → p-7ec5ee46.system.entry.js} +1 -1
  334. package/lib/duet/{p-c3b30540.entry.js → p-7f93593e.entry.js} +1 -1
  335. package/lib/duet/{p-80878906.system.entry.js → p-7fadfb31.system.entry.js} +1 -1
  336. package/lib/duet/{p-c328ff56.system.entry.js → p-818bb33d.system.entry.js} +1 -1
  337. package/lib/duet/{p-75bd16ec.system.entry.js → p-83dabfc5.system.entry.js} +1 -1
  338. package/lib/duet/p-849ffaec.system.entry.js +4 -0
  339. package/lib/duet/p-854808cd.entry.js +4 -0
  340. package/lib/duet/{p-c106a592.entry.js → p-86a3bc38.entry.js} +1 -1
  341. package/lib/duet/{p-5f75e4a2.entry.js → p-8a9fe70c.entry.js} +1 -1
  342. package/lib/duet/{p-81d6c23b.entry.js → p-8b5976ca.entry.js} +1 -1
  343. package/lib/duet/{p-83241e2a.system.entry.js → p-8d051bf2.system.entry.js} +1 -1
  344. package/lib/duet/{p-bd05c841.system.entry.js → p-8d6dcdb1.system.entry.js} +1 -1
  345. package/lib/duet/{p-7685d441.system.entry.js → p-8ef9cba1.system.entry.js} +1 -1
  346. package/lib/duet/{p-2bf89772.system.entry.js → p-914a0898.system.entry.js} +1 -1
  347. package/lib/duet/p-93ce45ce.system.entry.js +4 -0
  348. package/lib/duet/{p-744bd7cf.entry.js → p-9432f9ec.entry.js} +1 -1
  349. package/lib/duet/p-94c63013.system.js +4 -0
  350. package/lib/duet/{p-6012e82f.entry.js → p-96714a74.entry.js} +1 -1
  351. package/lib/duet/{p-98a29d5f.system.entry.js → p-9675e1d5.system.entry.js} +1 -1
  352. package/lib/duet/{p-73462771.system.entry.js → p-9aee8a81.system.entry.js} +1 -1
  353. package/lib/duet/{p-e8de57d3.system.entry.js → p-9b90f38e.system.entry.js} +1 -1
  354. package/lib/duet/{p-5810ba83.system.entry.js → p-a0b111e3.system.entry.js} +1 -1
  355. package/lib/duet/{p-0587ebcf.entry.js → p-a1c780b5.entry.js} +1 -1
  356. package/lib/duet/{p-a8b7091a.entry.js → p-a29e4976.entry.js} +1 -1
  357. package/lib/duet/{p-5395ddc8.entry.js → p-a4164a2d.entry.js} +1 -1
  358. package/lib/duet/{p-e77ac510.entry.js → p-a54ec315.entry.js} +1 -1
  359. package/lib/duet/p-a60f3669.system.entry.js +4 -0
  360. package/lib/duet/{p-431d59a3.system.entry.js → p-a7d46fef.system.entry.js} +1 -1
  361. package/lib/duet/{p-088fce9c.entry.js → p-a81baadd.entry.js} +1 -1
  362. package/lib/duet/{p-6e3906df.entry.js → p-a987ab9d.entry.js} +1 -1
  363. package/lib/duet/{p-39e9e000.system.entry.js → p-af35e151.system.entry.js} +1 -1
  364. package/lib/duet/{p-cf4e7590.entry.js → p-b038b80c.entry.js} +1 -1
  365. package/lib/duet/{p-1ae31ca3.system.entry.js → p-b37f9402.system.entry.js} +1 -1
  366. package/lib/duet/{p-8f15eb9c.system.entry.js → p-b3a2ecfc.system.entry.js} +1 -1
  367. package/lib/duet/p-b4e05d38.entry.js +4 -0
  368. package/lib/duet/p-b575bed5.entry.js +4 -0
  369. package/lib/duet/{p-8b0de573.system.entry.js → p-b75f0c5b.system.entry.js} +1 -1
  370. package/lib/duet/{p-48ca823e.system.entry.js → p-b7996eff.system.entry.js} +1 -1
  371. package/lib/duet/{p-4a44d6b5.system.entry.js → p-b7a606a0.system.entry.js} +1 -1
  372. package/lib/duet/{p-3a006e78.system.entry.js → p-b84965cf.system.entry.js} +1 -1
  373. package/lib/duet/{p-58088232.entry.js → p-b9f092f2.entry.js} +1 -1
  374. package/lib/duet/{p-67ee9418.entry.js → p-bae3eb9c.entry.js} +1 -1
  375. package/lib/duet/{p-d7f565bd.system.entry.js → p-be815d6f.system.entry.js} +1 -1
  376. package/lib/duet/{p-11868ab7.entry.js → p-bf804ab7.entry.js} +1 -1
  377. package/lib/duet/{p-dc2586c4.entry.js → p-c152f45c.entry.js} +1 -1
  378. package/lib/duet/{p-12563d2c.system.entry.js → p-c1b9e00b.system.entry.js} +1 -1
  379. package/lib/duet/{p-81da236f.entry.js → p-c2626d64.entry.js} +1 -1
  380. package/lib/duet/{p-a7b23ef5.system.entry.js → p-c41b616b.system.entry.js} +1 -1
  381. package/lib/duet/{p-899541f6.system.entry.js → p-c42ba43f.system.entry.js} +1 -1
  382. package/lib/duet/p-c54aec23.entry.js +4 -0
  383. package/lib/duet/{p-c4e7b543.system.entry.js → p-c9fbbebc.system.entry.js} +1 -1
  384. package/lib/duet/{p-6e2a6ba2.system.entry.js → p-cb0513ed.system.entry.js} +1 -1
  385. package/lib/duet/{p-d5e0b809.entry.js → p-cb26eeef.entry.js} +1 -1
  386. package/lib/duet/{p-20de631c.system.entry.js → p-cb39f212.system.entry.js} +1 -1
  387. package/lib/duet/{p-23fb1498.entry.js → p-cb840c6d.entry.js} +1 -1
  388. package/lib/duet/{p-6a95a2e3.system.js → p-cbbf6d6a.system.js} +1 -1
  389. package/lib/duet/{p-eb01ad49.system.entry.js → p-cbcfcf2f.system.entry.js} +1 -1
  390. package/lib/duet/{p-b3db918f.system.js → p-ce9ccf2d.system.js} +1 -1
  391. package/lib/duet/{p-0dc6b624.entry.js → p-cf99e1f3.entry.js} +1 -1
  392. package/lib/duet/{p-4089860d.entry.js → p-d183f34f.entry.js} +1 -1
  393. package/lib/duet/{p-9142977a.system.entry.js → p-d4756796.system.entry.js} +1 -1
  394. package/lib/duet/{p-968b499b.system.entry.js → p-d4de8d9f.system.entry.js} +1 -1
  395. package/lib/duet/{p-d5515fac.entry.js → p-d53821a2.entry.js} +1 -1
  396. package/lib/duet/{p-0b378a70.entry.js → p-d7c2f4d7.entry.js} +1 -1
  397. package/lib/duet/{p-b7bf4009.entry.js → p-d8097437.entry.js} +1 -1
  398. package/lib/duet/{p-74dfe55a.system.entry.js → p-db17c060.system.entry.js} +1 -1
  399. package/lib/duet/{p-5454ec0d.entry.js → p-dbcafad8.entry.js} +1 -1
  400. package/lib/duet/{p-c8dbbdb3.entry.js → p-dd3427ef.entry.js} +1 -1
  401. package/lib/duet/{p-cf909acf.entry.js → p-de0a78f9.entry.js} +1 -1
  402. package/lib/duet/{p-d7a3e71f.entry.js → p-e10e1117.entry.js} +1 -1
  403. package/lib/duet/{p-5477fad9.entry.js → p-e1e65613.entry.js} +1 -1
  404. package/lib/duet/{p-e84bace7.system.entry.js → p-e32ff504.system.entry.js} +1 -1
  405. package/lib/duet/{p-f3826346.entry.js → p-e3d448c5.entry.js} +1 -1
  406. package/lib/duet/{p-f0045080.entry.js → p-e3e5f427.entry.js} +1 -1
  407. package/lib/duet/{p-983cfc54.entry.js → p-e44f1b3a.entry.js} +1 -1
  408. package/lib/duet/{p-b7356342.system.entry.js → p-e53164d0.system.entry.js} +2 -2
  409. package/lib/duet/p-e7c62f85.js +4 -0
  410. package/lib/duet/{p-178bcd12.entry.js → p-e7e3b445.entry.js} +1 -1
  411. package/lib/duet/{p-ed4f4aad.system.entry.js → p-e87b84f3.system.entry.js} +1 -1
  412. package/lib/duet/{p-3015a884.system.js → p-e88c356e.system.js} +1 -1
  413. package/lib/duet/{p-5af61a5f.entry.js → p-ea386f3b.entry.js} +1 -1
  414. package/lib/duet/{p-bd983df7.system.entry.js → p-eb5844f6.system.entry.js} +1 -1
  415. package/lib/duet/{p-7b8ac676.system.entry.js → p-ef65048c.system.entry.js} +1 -1
  416. package/lib/duet/{p-94eab61e.system.js → p-ef731dfb.system.js} +1 -1
  417. package/lib/duet/{p-eb1a935b.js → p-f1e02e7b.js} +1 -1
  418. package/lib/duet/{p-4a043858.entry.js → p-f35b246d.entry.js} +1 -1
  419. package/lib/duet/p-f3e84569.js +5 -0
  420. package/lib/duet/{p-0d304014.system.entry.js → p-f4be3ed1.system.entry.js} +1 -1
  421. package/lib/duet/p-f4c1b623.system.js +5 -0
  422. package/lib/duet/p-f5546613.entry.js +4 -0
  423. package/lib/duet/{p-b16949ab.entry.js → p-f6e819df.entry.js} +1 -1
  424. package/lib/duet/{p-3bbea70e.system.entry.js → p-fcc9506a.system.entry.js} +1 -1
  425. package/lib/esm/{app-globals-69cf92e7.js → app-globals-60b4029b.js} +1 -1
  426. package/lib/esm/duet-action-button.entry.js +4 -4
  427. package/lib/esm/duet-alert.entry.js +3 -3
  428. package/lib/esm/duet-badge.entry.js +1 -1
  429. package/lib/esm/duet-banner.entry.js +4 -4
  430. package/lib/esm/duet-breadcrumb.entry.js +2 -2
  431. package/lib/esm/duet-breadcrumbs.entry.js +4 -4
  432. package/lib/esm/duet-button_2.entry.js +50 -40
  433. package/lib/esm/duet-callout.entry.js +2 -2
  434. package/lib/esm/duet-caption_4.entry.js +19 -10
  435. package/lib/esm/duet-card.entry.js +3 -3
  436. package/lib/esm/duet-checkbox.entry.js +1 -1
  437. package/lib/esm/duet-checkmark.entry.js +1 -1
  438. package/lib/esm/duet-chip_3.entry.js +28 -16
  439. package/lib/esm/duet-choice_2.entry.js +3 -3
  440. package/lib/esm/duet-collapsible.entry.js +6 -5
  441. package/lib/esm/duet-combobox.entry.js +31 -18
  442. package/lib/esm/duet-contact-card.entry.js +2 -2
  443. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  444. package/lib/esm/duet-date-picker.entry.js +8 -8
  445. package/lib/esm/duet-divider_2.entry.js +3 -3
  446. package/lib/esm/duet-editable-table_3.entry.js +5 -5
  447. package/lib/esm/duet-empty-state.entry.js +1 -1
  448. package/lib/esm/duet-fieldset.entry.js +2 -2
  449. package/lib/esm/duet-file-chooser.entry.js +1 -1
  450. package/lib/esm/duet-footer.entry.js +3 -3
  451. package/lib/esm/duet-grid_2.entry.js +1 -1
  452. package/lib/esm/duet-header_2.entry.js +3 -3
  453. package/lib/esm/duet-hero.entry.js +3 -3
  454. package/lib/esm/duet-icon.entry.js +3 -3
  455. package/lib/esm/duet-input_2.entry.js +5 -5
  456. package/lib/esm/duet-layout.entry.js +2 -2
  457. package/lib/esm/duet-list_2.entry.js +1 -1
  458. package/lib/esm/duet-menu-bar-button.entry.js +1 -1
  459. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +1 -1
  460. package/lib/esm/duet-menu-bar-dropdown.entry.js +1 -1
  461. package/lib/esm/duet-menu-bar-item.entry.js +2 -2
  462. package/lib/esm/duet-menu-bar-link.entry.js +1 -1
  463. package/lib/esm/duet-menu-bar.entry.js +2 -2
  464. package/lib/esm/duet-modal.entry.js +4 -4
  465. package/lib/esm/duet-multiselect.entry.js +3 -3
  466. package/lib/esm/duet-nav.entry.js +1 -1
  467. package/lib/esm/duet-notification_2.entry.js +3 -3
  468. package/lib/esm/duet-number-input.entry.js +12 -6
  469. package/lib/esm/duet-overlay.entry.js +1 -1
  470. package/lib/esm/duet-page-heading.entry.js +1 -1
  471. package/lib/esm/duet-pagination_2.entry.js +4 -4
  472. package/lib/esm/duet-progress.entry.js +2 -2
  473. package/lib/esm/duet-promo-card.entry.js +4 -4
  474. package/lib/esm/duet-radio_2.entry.js +2 -2
  475. package/lib/esm/duet-range-slider.entry.js +2 -2
  476. package/lib/esm/duet-scrollable_3.entry.js +5 -5
  477. package/lib/esm/duet-section-layout.entry.js +1 -1
  478. package/lib/esm/duet-select.entry.js +2 -2
  479. package/lib/esm/duet-shaped-image.entry.js +1 -1
  480. package/lib/esm/duet-show-more.entry.js +2 -2
  481. package/lib/esm/duet-slideout-lang.entry.js +2 -2
  482. package/lib/esm/duet-slideout-link.entry.js +1 -1
  483. package/lib/esm/duet-slideout-panel-dropdown.entry.js +1 -1
  484. package/lib/esm/duet-slideout-panel.entry.js +6 -6
  485. package/lib/esm/duet-slideout.entry.js +27 -18
  486. package/lib/esm/duet-step_2.entry.js +1 -1
  487. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +1 -1
  488. package/lib/esm/duet-submenu-bar-dropdown.entry.js +1 -1
  489. package/lib/esm/duet-submenu-bar-item.entry.js +2 -2
  490. package/lib/esm/duet-submenu-bar-link.entry.js +1 -1
  491. package/lib/esm/duet-submenu-bar.entry.js +1 -1
  492. package/lib/esm/duet-textarea.entry.js +3 -3
  493. package/lib/esm/duet-toggle.entry.js +1 -1
  494. package/lib/esm/duet-toolbar-dropdown-link.entry.js +1 -1
  495. package/lib/esm/duet-toolbar-dropdown.entry.js +1 -1
  496. package/lib/esm/duet-toolbar-item.entry.js +2 -2
  497. package/lib/esm/duet-toolbar-link.entry.js +1 -1
  498. package/lib/esm/duet-toolbar.entry.js +1 -1
  499. package/lib/esm/duet-tooltip-button_2.entry.js +2 -2
  500. package/lib/esm/duet-tooltip.entry.js +2 -2
  501. package/lib/esm/duet-tray.entry.js +3 -3
  502. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  503. package/lib/esm/duet-upload-item.entry.js +3 -3
  504. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  505. package/lib/esm/duet.js +4 -4
  506. package/lib/esm/{errorcodes.utils-6d8b4e99.js → errorcodes.utils-b639fe8c.js} +1 -1
  507. package/lib/esm/{focus-utils-32a6966b.js → focus-utils-fad21cfb.js} +1 -1
  508. package/lib/esm/{index-fd030e61.js → index-4160b620.js} +2 -2
  509. package/lib/esm/{language-utils-58773b88.js → language-utils-afb0d677.js} +1 -1
  510. package/lib/esm/loader.js +4 -4
  511. package/lib/esm/{slot-utils-b0edb3d8.js → slot-utils-fdd6c75c.js} +1 -1
  512. package/lib/esm/{token-utils-3c2fb643.js → token-utils-a32eb753.js} +1 -1
  513. package/lib/esm/{tokens.module-216c2ae9.js → tokens.module-a746651a.js} +1 -1
  514. package/lib/esm-es5/{app-globals-69cf92e7.js → app-globals-60b4029b.js} +1 -1
  515. package/lib/esm-es5/duet-action-button.entry.js +1 -1
  516. package/lib/esm-es5/duet-alert.entry.js +1 -1
  517. package/lib/esm-es5/duet-badge.entry.js +1 -1
  518. package/lib/esm-es5/duet-banner.entry.js +1 -1
  519. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  520. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  521. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  522. package/lib/esm-es5/duet-callout.entry.js +1 -1
  523. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  524. package/lib/esm-es5/duet-card.entry.js +1 -1
  525. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  526. package/lib/esm-es5/duet-checkmark.entry.js +1 -1
  527. package/lib/esm-es5/duet-chip_3.entry.js +1 -1
  528. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  529. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  530. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  531. package/lib/esm-es5/duet-contact-card.entry.js +1 -1
  532. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  533. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  534. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  535. package/lib/esm-es5/duet-editable-table_3.entry.js +1 -1
  536. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  537. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  538. package/lib/esm-es5/duet-file-chooser.entry.js +1 -1
  539. package/lib/esm-es5/duet-footer.entry.js +1 -1
  540. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  541. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  542. package/lib/esm-es5/duet-hero.entry.js +2 -2
  543. package/lib/esm-es5/duet-icon.entry.js +1 -1
  544. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  545. package/lib/esm-es5/duet-layout.entry.js +1 -1
  546. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  547. package/lib/esm-es5/duet-menu-bar-button.entry.js +1 -1
  548. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +1 -1
  549. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +2 -2
  550. package/lib/esm-es5/duet-menu-bar-item.entry.js +1 -1
  551. package/lib/esm-es5/duet-menu-bar-link.entry.js +1 -1
  552. package/lib/esm-es5/duet-menu-bar.entry.js +1 -1
  553. package/lib/esm-es5/duet-modal.entry.js +1 -1
  554. package/lib/esm-es5/duet-multiselect.entry.js +1 -1
  555. package/lib/esm-es5/duet-nav.entry.js +1 -1
  556. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  557. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  558. package/lib/esm-es5/duet-overlay.entry.js +1 -1
  559. package/lib/esm-es5/duet-page-heading.entry.js +1 -1
  560. package/lib/esm-es5/duet-pagination_2.entry.js +1 -1
  561. package/lib/esm-es5/duet-progress.entry.js +1 -1
  562. package/lib/esm-es5/duet-promo-card.entry.js +1 -1
  563. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  564. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  565. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  566. package/lib/esm-es5/duet-section-layout.entry.js +1 -1
  567. package/lib/esm-es5/duet-select.entry.js +1 -1
  568. package/lib/esm-es5/duet-shaped-image.entry.js +1 -1
  569. package/lib/esm-es5/duet-show-more.entry.js +1 -1
  570. package/lib/esm-es5/duet-slideout-lang.entry.js +1 -1
  571. package/lib/esm-es5/duet-slideout-link.entry.js +1 -1
  572. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +1 -1
  573. package/lib/esm-es5/duet-slideout-panel.entry.js +1 -1
  574. package/lib/esm-es5/duet-slideout.entry.js +1 -1
  575. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  576. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +1 -1
  577. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +1 -1
  578. package/lib/esm-es5/duet-submenu-bar-item.entry.js +2 -2
  579. package/lib/esm-es5/duet-submenu-bar-link.entry.js +1 -1
  580. package/lib/esm-es5/duet-submenu-bar.entry.js +1 -1
  581. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  582. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  583. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +1 -1
  584. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +1 -1
  585. package/lib/esm-es5/duet-toolbar-item.entry.js +2 -2
  586. package/lib/esm-es5/duet-toolbar-link.entry.js +1 -1
  587. package/lib/esm-es5/duet-toolbar.entry.js +1 -1
  588. package/lib/esm-es5/duet-tooltip-button_2.entry.js +1 -1
  589. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  590. package/lib/esm-es5/duet-tray.entry.js +1 -1
  591. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  592. package/lib/esm-es5/duet-upload-item.entry.js +1 -1
  593. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  594. package/lib/esm-es5/duet.js +1 -1
  595. package/lib/esm-es5/{errorcodes.utils-6d8b4e99.js → errorcodes.utils-b639fe8c.js} +1 -1
  596. package/lib/esm-es5/focus-utils-fad21cfb.js +4 -0
  597. package/lib/esm-es5/index-4160b620.js +5 -0
  598. package/lib/esm-es5/{language-utils-58773b88.js → language-utils-afb0d677.js} +1 -1
  599. package/lib/esm-es5/loader.js +1 -1
  600. package/lib/esm-es5/{slot-utils-b0edb3d8.js → slot-utils-fdd6c75c.js} +1 -1
  601. package/lib/esm-es5/{token-utils-3c2fb643.js → token-utils-a32eb753.js} +1 -1
  602. package/lib/esm-es5/{tokens.module-216c2ae9.js → tokens.module-a746651a.js} +1 -1
  603. package/lib/types/common-types.d.ts +1 -1
  604. package/lib/types/components/duet-button/duet-button.d.ts +6 -1
  605. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +4 -0
  606. package/lib/types/components/duet-combobox/duet-combobox.d.ts +1 -0
  607. package/lib/types/components/duet-link/duet-link.d.ts +1 -1
  608. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +5 -1
  609. package/lib/types/components/duet-slideout/duet-slideout.d.ts +5 -1
  610. package/lib/types/components.d.ts +32 -0
  611. package/package.json +4 -4
  612. package/lib/duet/p-019b2e71.entry.js +0 -4
  613. package/lib/duet/p-103ca5a4.system.entry.js +0 -4
  614. package/lib/duet/p-11c247e4.system.entry.js +0 -4
  615. package/lib/duet/p-1a0f2b4f.entry.js +0 -4
  616. package/lib/duet/p-29280b69.system.js +0 -4
  617. package/lib/duet/p-3e99f641.entry.js +0 -4
  618. package/lib/duet/p-4cb1e4cb.js +0 -5
  619. package/lib/duet/p-4cd53729.entry.js +0 -4
  620. package/lib/duet/p-50b6a535.entry.js +0 -4
  621. package/lib/duet/p-54029779.js +0 -4
  622. package/lib/duet/p-5901fd99.js +0 -4
  623. package/lib/duet/p-71a4f317.js +0 -4
  624. package/lib/duet/p-71a7b2a4.system.entry.js +0 -4
  625. package/lib/duet/p-71eaba09.system.entry.js +0 -4
  626. package/lib/duet/p-7592ae1c.entry.js +0 -4
  627. package/lib/duet/p-76268cc3.entry.js +0 -4
  628. package/lib/duet/p-77103998.entry.js +0 -4
  629. package/lib/duet/p-83466781.entry.js +0 -4
  630. package/lib/duet/p-8b3b5673.js +0 -4
  631. package/lib/duet/p-9c371796.entry.js +0 -4
  632. package/lib/duet/p-ae0a58ae.entry.js +0 -4
  633. package/lib/duet/p-b4485a1c.system.js +0 -4
  634. package/lib/duet/p-c87a4d77.system.js +0 -4
  635. package/lib/duet/p-cbde8507.system.js +0 -5
  636. package/lib/duet/p-d82677e9.system.entry.js +0 -4
  637. package/lib/esm-es5/focus-utils-32a6966b.js +0 -4
  638. package/lib/esm-es5/index-fd030e61.js +0 -5
@@ -54,6 +54,7 @@ export class DuetCombobox {
54
54
  this.listOpen = String(newValue).length >= this.minCharacters && ((_a = this.getFilteredItems()) === null || _a === void 0 ? void 0 : _a.length) > 0;
55
55
  };
56
56
  this.onKeyDown = (e) => {
57
+ var _a, _b, _c;
57
58
  //if selection is made, close the list and update internal and external values
58
59
  const listItems = this.returnFilteredOrNonFiltered();
59
60
  const listItemsSuggestions = listItems.filter(i => !this.selectedItems.has(i.id));
@@ -62,7 +63,10 @@ export class DuetCombobox {
62
63
  this.input.accessibleActiveDescendant = undefined;
63
64
  if (isEnterKey(e)) {
64
65
  e.preventDefault();
65
- if (this.listOpen && this.activeItem !== undefined && listItems[this.activeItem]) {
66
+ if (this.listOpen &&
67
+ this.activeItem !== undefined &&
68
+ listItems[this.activeItem] &&
69
+ !this.selectedItems.has(listItems[this.activeItem].id)) {
66
70
  if (this.multiple) {
67
71
  this.addSelectedItem(listItems[this.activeItem].id, true);
68
72
  }
@@ -96,6 +100,9 @@ export class DuetCombobox {
96
100
  nextActiveItem = this.activeItem - 1;
97
101
  }
98
102
  else if (isArrowDownKey(e)) {
103
+ if (((_c = (_b = (_a = this.input) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0) < this.minCharacters) {
104
+ return;
105
+ }
99
106
  e.preventDefault();
100
107
  nextActiveItem = this.listOpen ? this.activeItem + 1 : this.activeItem;
101
108
  this.listOpen = true;
@@ -146,7 +153,7 @@ export class DuetCombobox {
146
153
  this.items = undefined;
147
154
  this.formatter = (item) => item && item.name ? item.name : "";
148
155
  this.value = undefined;
149
- this.minCharacters = 1;
156
+ this.minCharacters = 0;
150
157
  this.openListOnClick = false;
151
158
  this.filterType = "startsWith";
152
159
  }
@@ -161,6 +168,15 @@ export class DuetCombobox {
161
168
  activeItemHandler(state) {
162
169
  this.input.accessibleActiveDescendant = this.listOpen && (state || state === 0) ? this.activeDescendantId : "";
163
170
  }
171
+ inputValueHandler() {
172
+ setTimeout(async () => {
173
+ const label = await this.getSelectedItemLabel();
174
+ if (this.input.value == "" && label) {
175
+ this.input.value = "";
176
+ this.value = undefined;
177
+ }
178
+ }, 200);
179
+ }
164
180
  handleDocumentClick(e) {
165
181
  //we want to remove all user text if they have NOT selected from the dropdown
166
182
  const path = e.composedPath();
@@ -300,7 +316,11 @@ export class DuetCombobox {
300
316
  * Helper function that checks inputs in the field, compares it with the item list and returns true when inputvalue matches selectedItem id
301
317
  */
302
318
  shouldListBeFiltered() {
303
- if (!this.multiple && this.selectedItems.size && this.input.value === this.inputValue) {
319
+ var _a;
320
+ if (!this.multiple &&
321
+ this.selectedItems.size &&
322
+ this.input.value === this.inputValue &&
323
+ ((_a = this.inputValue) === null || _a === void 0 ? void 0 : _a.length) < this.minCharacters) {
304
324
  const item = this.processedItems.find(item => this.selectedItems.has(item.id));
305
325
  return !(this.formatter(item).toLowerCase() === this.input.value.toLowerCase());
306
326
  }
@@ -363,17 +383,9 @@ export class DuetCombobox {
363
383
  * Updates the selected item based on the item id. Used only when multiple is false.
364
384
  */
365
385
  async updateSelectedItem(id, emitEvent) {
366
- if (this.selectedItems.has(id)) {
367
- this.selectedItems.delete(id);
368
- this.value = undefined;
369
- this.input.value = "";
370
- await this.input.setFocus();
371
- }
372
- else {
373
- this.selectedItems.clear();
374
- this.selectedItems.add(id);
375
- this.value = this.processedItems.find(item => item.id === id).value;
376
- }
386
+ this.selectedItems.clear();
387
+ this.selectedItems.add(id);
388
+ this.value = this.processedItems.find(item => item.id === id).value;
377
389
  if (emitEvent) {
378
390
  this.emitChangeEvent(this.value && id);
379
391
  }
@@ -460,7 +472,7 @@ export class DuetCombobox {
460
472
  }
461
473
  //function that scrolls to the li element with the class "active"
462
474
  scrollToActive() {
463
- const activeElement = document.getElementById(`${this.activeDescendantId}`); // this is undefined on 1st keydown, make it be valid to fix the issue
475
+ const activeElement = document.getElementById(`${this.activeDescendantId}`);
464
476
  if (activeElement) {
465
477
  activeElement.scrollIntoView({
466
478
  behavior: "smooth",
@@ -795,7 +807,7 @@ export class DuetCombobox {
795
807
  "setter": false,
796
808
  "attribute": "min-characters",
797
809
  "reflect": false,
798
- "defaultValue": "1"
810
+ "defaultValue": "0"
799
811
  },
800
812
  "openListOnClick": {
801
813
  "type": "boolean",
@@ -913,6 +925,9 @@ export class DuetCombobox {
913
925
  }, {
914
926
  "propName": "activeItem",
915
927
  "methodName": "activeItemHandler"
928
+ }, {
929
+ "propName": "inputValue",
930
+ "methodName": "inputValueHandler"
916
931
  }, {
917
932
  "propName": "items",
918
933
  "methodName": "processItems"
@@ -11,5 +11,5 @@ export const DatePickerInput = ({ onClick, placeholder, name, inputLabel, value,
11
11
  "duet-date-input": true,
12
12
  "duet-date-input-has-focus": hasFocus,
13
13
  };
14
- return (h("div", { class: classes }, h("duet-input", { label: inputLabel, value: formattedValue, placeholder: placeholder, id: identifier, disabled: disabled, theme: theme, error: error, role: role, required: required, tooltip: tooltip, tooltipDirection: tooltipDirection, margin: "none", labelHidden: labelHidden, accessibleAutocomplete: "none", onDuetInput: onInput, onDuetFocus: onFocus, onDuetBlur: onBlur, autoComplete: "off", disallowPattern: "[^0-9\\.\\-\\/]", expand: true, ref: inputRef, accessibleActiveDescendant: accessibleActiveDescendant, accessibleControls: accessibleControls, accessibleOwns: accessibleOwns, accessibleDescribedBy: accessibleDescribedBy, accessibleLiveError: accessibleLiveError, echoPlaceholder: echoPlaceholder, caption: caption, variation: "button" }, h("slot", { name: "tooltip" }), h("button", { class: { "duet-date-button": true, "duet-no-label": labelHidden }, onClick: onClick, disabled: disabled, ref: buttonRef, type: "button", slot: "button" }, h("duet-icon", { icon: formDateIcon.svg, margin: "none", size: "small", color: "currentColor" }), h("duet-visually-hidden", null, buttonLabel, valueAsDate && (h("span", null, ", ", selected, " ", formatterLong.format(valueAsDate)))))), h("input", { type: "hidden", name: name, value: value })));
14
+ return (h("div", { class: classes }, h("duet-input", { label: inputLabel, value: formattedValue, placeholder: placeholder, id: identifier, disabled: disabled, theme: theme, error: error, role: role, required: required, tooltip: tooltip, tooltipDirection: tooltipDirection, margin: "none", labelHidden: labelHidden, accessibleAutocomplete: "none", onDuetInput: onInput, onDuetFocus: onFocus, onDuetBlur: onBlur, autoComplete: "off", disallowPattern: "[^0-9\\.\\-\\/]", expand: true, ref: inputRef, accessibleActiveDescendant: accessibleActiveDescendant, accessibleControls: accessibleControls, accessibleOwns: accessibleOwns, accessibleDescribedBy: accessibleDescribedBy, accessibleLiveError: accessibleLiveError, echoPlaceholder: echoPlaceholder, caption: caption, variation: "button" }, h("slot", { name: "tooltip" }), h("button", { class: { "duet-date-button": true, "duet-no-label": labelHidden, "input-error": !!error }, onClick: onClick, disabled: disabled, ref: buttonRef, type: "button", slot: "button" }, h("duet-icon", { icon: formDateIcon.svg, margin: "none", size: "small", color: "currentColor" }), h("duet-visually-hidden", null, buttonLabel, valueAsDate && (h("span", null, ", ", selected, " ", formatterLong.format(valueAsDate)))))), h("input", { type: "hidden", name: name, value: value })));
15
15
  };
@@ -133,6 +133,12 @@
133
133
  box-shadow: 0 0 0 2px #171c3a !important;
134
134
  }
135
135
 
136
+ .input-error {
137
+ border-top-color: rgb(214, 28, 82);
138
+ border-right-color: rgb(214, 28, 82);
139
+ border-bottom-color: rgb(214, 28, 82);
140
+ }
141
+
136
142
  .duet-date-dialog {
137
143
  position: absolute;
138
144
  top: 100%;
@@ -31,12 +31,12 @@ export class DuetDatePicker {
31
31
  },
32
32
  rangeUnderflow: {
33
33
  en: "Date too early",
34
- fi: "Päivämäärä liian aikainen",
34
+ fi: "Liian aikainen päivämäärä",
35
35
  sv: "Datum för tidigt",
36
36
  },
37
37
  rangeOverflow: {
38
38
  en: "Date too late",
39
- fi: "Päivämäärä liian aikainen",
39
+ fi: "Liian myöhäinen päivämäärä",
40
40
  sv: "Datum för sent",
41
41
  },
42
42
  };
@@ -79,20 +79,20 @@ button {
79
79
  cursor: pointer;
80
80
  }
81
81
 
82
- .duet-link-is-external.duet-link:not(.block, .button),
83
- .duet-link-is-download.duet-link:not(.block, .button) {
82
+ .duet-link-is-external.duet-link:not(.block, .button, .card),
83
+ .duet-link-is-download.duet-link:not(.block, .button, .card) {
84
84
  text-decoration: none;
85
85
  }
86
- .duet-link-is-external.duet-link:not(.block, .button) .duet-link-content,
87
- .duet-link-is-download.duet-link:not(.block, .button) .duet-link-content {
86
+ .duet-link-is-external.duet-link:not(.block, .button, .card) .duet-link-content,
87
+ .duet-link-is-download.duet-link:not(.block, .button, .card) .duet-link-content {
88
88
  text-decoration: underline;
89
89
  }
90
- .duet-link-is-external.duet-link:not(.block, .button):hover > .duet-link-content,
91
- .duet-link-is-download.duet-link:not(.block, .button):hover > .duet-link-content {
90
+ .duet-link-is-external.duet-link:not(.block, .button, .card):hover > .duet-link-content,
91
+ .duet-link-is-download.duet-link:not(.block, .button, .card):hover > .duet-link-content {
92
92
  text-decoration: none;
93
93
  }
94
- .duet-link-is-external.duet-link:not(.block, .button) .duet-link-icon-tail,
95
- .duet-link-is-download.duet-link:not(.block, .button) .duet-link-icon-tail {
94
+ .duet-link-is-external.duet-link:not(.block, .button, .card) .duet-link-icon-tail,
95
+ .duet-link-is-download.duet-link:not(.block, .button, .card) .duet-link-icon-tail {
96
96
  text-decoration: none;
97
97
  white-space: nowrap;
98
98
  }
@@ -167,7 +167,8 @@ button {
167
167
  transform: translateX(4px);
168
168
  }
169
169
 
170
- .duet-link.button {
170
+ .duet-link.button,
171
+ .duet-link.card {
171
172
  display: flex;
172
173
  gap: 12px;
173
174
  align-items: center;
@@ -183,10 +184,12 @@ button {
183
184
  outline-offset: -2px;
184
185
  transition: all 300ms ease;
185
186
  }
186
- .duet-link.button > * {
187
+ .duet-link.button > *,
188
+ .duet-link.card > * {
187
189
  flex-shrink: 0;
188
190
  }
189
- .duet-link.button .duet-link-content {
191
+ .duet-link.button .duet-link-content,
192
+ .duet-link.card .duet-link-content {
190
193
  flex-grow: 1;
191
194
  flex-shrink: 1;
192
195
  font-size: 1rem;
@@ -194,57 +197,119 @@ button {
194
197
  color: rgb(8, 42, 77);
195
198
  text-align: left;
196
199
  }
197
- .duet-link.button .icon-wrap {
200
+ .duet-link.button .icon-wrap,
201
+ .duet-link.card .icon-wrap {
198
202
  display: flex;
199
203
  align-items: center;
200
204
  justify-content: center;
201
205
  }
202
- .duet-link.button.duet-link-has-icon-background {
206
+ .duet-link.button.duet-link-has-icon-background,
207
+ .duet-link.card.duet-link-has-icon-background {
203
208
  min-height: 60px;
204
209
  padding: 12px;
205
210
  padding-right: 20px;
206
211
  line-height: 1.5;
207
212
  }
208
- .duet-link.button.duet-link-has-icon-background .icon-wrap {
213
+ .duet-link.button.duet-link-has-icon-background .icon-wrap,
214
+ .duet-link.card.duet-link-has-icon-background .icon-wrap {
209
215
  width: 36px;
210
216
  height: 36px;
211
217
  border-radius: 8px;
212
218
  }
213
- .duet-link.button:hover {
219
+ .duet-link.button:hover,
220
+ .duet-link.card:hover {
214
221
  border-color: rgb(0, 119, 179);
215
222
  outline: 2px solid rgb(0, 119, 179);
216
223
  }
217
224
  @media (min-width: 48em) {
218
- .duet-link.button {
225
+ .duet-link.button,
226
+ .duet-link.card {
219
227
  min-height: 50px;
220
228
  }
221
- .duet-link.button.duet-link-has-icon-background {
229
+ .duet-link.button.duet-link-has-icon-background,
230
+ .duet-link.card.duet-link-has-icon-background {
222
231
  gap: 16px;
223
232
  min-height: 72px;
224
233
  border-radius: 16px;
225
234
  }
226
- .duet-link.button.duet-link-has-icon-background .icon-wrap {
235
+ .duet-link.button.duet-link-has-icon-background .icon-wrap,
236
+ .duet-link.card.duet-link-has-icon-background .icon-wrap {
227
237
  width: 48px;
228
238
  height: 48px;
229
239
  border-radius: 12px;
230
240
  }
231
- .duet-link.button.duet-link-has-icon-background .duet-link-content {
241
+ .duet-link.button.duet-link-has-icon-background .duet-link-content,
242
+ .duet-link.card.duet-link-has-icon-background .duet-link-content {
232
243
  font-size: 1.1rem;
233
244
  }
234
245
  }
235
- .duet-link.button.duet-theme-turva {
246
+ .duet-link.button.duet-theme-turva,
247
+ .duet-link.card.duet-theme-turva {
236
248
  border-color: rgb(199, 202, 207);
237
249
  }
238
- .duet-link.button.duet-theme-turva .duet-link-content {
250
+ .duet-link.button.duet-theme-turva .duet-link-content,
251
+ .duet-link.card.duet-theme-turva .duet-link-content {
239
252
  color: rgb(23, 28, 58);
240
253
  }
241
- .duet-link.button.duet-theme-turva:hover {
254
+ .duet-link.button.duet-theme-turva:hover,
255
+ .duet-link.card.duet-theme-turva:hover {
242
256
  border-color: rgb(198, 12, 48);
243
257
  outline-color: rgb(198, 12, 48);
244
258
  }
245
- .duet-link.button .block__chevron-icon {
259
+ .duet-link.button .block__chevron-icon,
260
+ .duet-link.card .block__chevron-icon {
246
261
  transition: 300ms ease;
247
262
  }
248
- .duet-link.button:not(.duet-link-is-external):hover .block__chevron-icon {
263
+ .duet-link.button:not(.duet-link-is-external):hover .block__chevron-icon,
264
+ .duet-link.card:not(.duet-link-is-external):hover .block__chevron-icon {
249
265
  transform: translateX(4px);
266
+ }
267
+
268
+ .duet-link.card {
269
+ border-color: rgb(228, 236, 239);
270
+ box-shadow: 0 2px 6px 0 rgba(0, 41, 77, 0.07), 0 -1px 0 0 rgba(0, 0, 0, 0.09), -1px 0 0 0 rgba(0, 0, 0, 0.07), 1px 0 0 0 rgba(0, 0, 0, 0.07), 0 1px 0 0 rgba(0, 0, 0, 0.07);
271
+ }
272
+ .duet-link.card.duet-theme-turva {
273
+ border-color: rgb(234, 235, 239);
274
+ box-shadow: 0 2px 6px 0 rgba(117, 117, 117, 0.13);
275
+ }
276
+ .duet-link.card:not(.duet-link-has-icon) {
277
+ gap: 12px;
278
+ padding: 16px;
279
+ }
280
+ .duet-link.card .chevron-wrap {
281
+ display: flex;
282
+ align-items: center;
283
+ height: 100%;
284
+ }
285
+ .duet-link.card.duet-link-has-icon {
286
+ gap: 12px;
287
+ align-items: flex-start;
288
+ padding: 16px;
289
+ }
290
+ .duet-link.card.duet-link-has-icon .icon-wrap {
291
+ width: 48px;
292
+ height: 48px;
293
+ border-radius: 12px;
294
+ }
295
+ .duet-link.card.duet-link-has-icon .chevron-wrap {
296
+ height: 48px;
297
+ }
298
+ @media (min-width: 48em) {
299
+ .duet-link.card:not(.duet-link-has-icon) {
300
+ gap: 20px;
301
+ padding: 24px;
302
+ }
303
+ .duet-link.card.duet-link-has-icon {
304
+ gap: 20px;
305
+ padding: 24px;
306
+ }
307
+ .duet-link.card.duet-link-has-icon .icon-wrap {
308
+ width: 62px;
309
+ height: 62px;
310
+ border-radius: 16px;
311
+ }
312
+ .duet-link.card.duet-link-has-icon .chevron-wrap {
313
+ height: 62px;
314
+ }
250
315
  }
@@ -79,6 +79,7 @@ export class DuetLink {
79
79
  this.mediaQuerySmall = window.matchMedia(breakpointToToken["xx-small"]);
80
80
  this.mediaQueryMedium = window.matchMedia(breakpointToToken["medium"]);
81
81
  this.isSmallScreen = this.mediaQuerySmall.matches;
82
+ this.isMediumScreen = this.mediaQueryMedium.matches;
82
83
  this.mediaQuerySmall.addEventListener("change", this.screenTestBound);
83
84
  this.mediaQueryMedium.addEventListener("change", this.screenTestBound);
84
85
  }
@@ -95,6 +96,7 @@ export class DuetLink {
95
96
  }
96
97
  screenTest(event) {
97
98
  this.isSmallScreen = event.matches;
99
+ this.isMediumScreen = event.matches;
98
100
  }
99
101
  resolveDownload() {
100
102
  if (this.download === "") {
@@ -110,11 +112,17 @@ export class DuetLink {
110
112
  renderBlockContent() {
111
113
  return (h(Fragment, null, this.icon && (h("span", { class: "block__icon" }, h("duet-icon", { size: this.iconResponsive ? (this.isSmallScreen ? "medium" : "large") : "x-small", name: this.icon, margin: "none", color: this.iconColor }))), h("span", { class: "block__content" }, this.renderDefaultContent()), h("span", { class: "block__chevron", part: "block-chevron" }, h("duet-icon", { class: "block__chevron-icon", icon: this.external ? newWindowIconLarge.svg : chevronIcon.svg, size: "x-small", margin: "none", color: "primary-dark" }))));
112
114
  }
113
- renderButtonContent() {
115
+ renderButtonCardContent() {
114
116
  const iconWrapStyle = {
115
117
  "background-color": getColorByName(this.iconBackground, this.theme),
116
118
  };
117
- return (h(Fragment, null, h("span", { class: "icon-wrap", style: iconWrapStyle }, h("duet-icon", { size: !this.iconBackground || this.isMediumScreen ? "small" : "medium", name: this.icon, margin: "none", color: this.iconColor })), h("span", { class: "duet-link-content", part: "duet-link-content" }, h("slot", null)), h("duet-icon", { class: "block__chevron-icon", icon: this.external ? newWindowIconLarge.svg : chevronIcon.svg, size: "x-small", margin: "none", color: "primary-dark" })));
119
+ const iconSize = () => {
120
+ if (this.variation === "button") {
121
+ return this.iconBackground && this.isMediumScreen ? "medium" : "small";
122
+ }
123
+ return this.isMediumScreen ? "large" : "medium";
124
+ };
125
+ return (h(Fragment, null, this.icon && (h("span", { class: "icon-wrap", style: iconWrapStyle }, h("duet-icon", { size: iconSize(), name: this.icon, margin: "none", color: this.iconColor }))), h("div", { class: "duet-link-content", part: "duet-link-content" }, h("slot", null)), h("span", { class: "chevron-wrap" }, h("duet-icon", { class: "block__chevron-icon", icon: this.external ? newWindowIconLarge.svg : chevronIcon.svg, size: "x-small", margin: "none", color: "primary-dark" }))));
118
126
  }
119
127
  renderContent() {
120
128
  switch (this.variation) {
@@ -123,7 +131,8 @@ export class DuetLink {
123
131
  case "block":
124
132
  return this.renderBlockContent();
125
133
  case "button":
126
- return this.renderButtonContent();
134
+ case "card":
135
+ return this.renderButtonCardContent();
127
136
  }
128
137
  }
129
138
  /**
@@ -133,10 +142,10 @@ export class DuetLink {
133
142
  render() {
134
143
  const Tag = !this.url ? "button" : "a";
135
144
  const isButton = Tag === "button";
136
- return (h(Host, { key: 'aad1a5cfaf3fb8d502c12de032a4fed3069f3927', class: {
145
+ return (h(Host, { key: '2025edd3774d559f0d6877498e0a806532fb310c', class: {
137
146
  [`duet-link-${this.variation}`]: true,
138
147
  "duet-m-0": this.margin === "none",
139
- } }, h(Tag, { key: 'c4dc2d9716f29769b6aa60d07788ab96b4946f15', href: this.url, class: {
148
+ } }, h(Tag, { key: 'ee013e25058fdfe22cf04784e06162181b9ff5a2', href: this.url, class: {
140
149
  "duet-link": true,
141
150
  "duet-link-is-external": this.external,
142
151
  "duet-link-is-download": !!this.download,
@@ -169,7 +178,7 @@ export class DuetLink {
169
178
  "mutable": false,
170
179
  "complexType": {
171
180
  "original": "DuetLinkVariation",
172
- "resolved": "\"block\" | \"button\" | \"default\"",
181
+ "resolved": "\"block\" | \"button\" | \"card\" | \"default\"",
173
182
  "references": {
174
183
  "DuetLinkVariation": {
175
184
  "location": "import",
@@ -32,6 +32,7 @@
32
32
  .duet-notification {
33
33
  display: block;
34
34
  padding: 16px;
35
+ padding-bottom: 0;
35
36
  cursor: pointer;
36
37
  }
37
38
  :host(:first-of-type) .duet-notification {
@@ -78,6 +79,7 @@
78
79
  .duet-notification-container {
79
80
  position: relative;
80
81
  display: flex;
82
+ padding-bottom: 16px;
81
83
  border-bottom: 1px solid rgb(212, 223, 229);
82
84
  }
83
85
 
@@ -131,6 +133,7 @@
131
133
  opacity: 1;
132
134
  }
133
135
  .duet-notification {
136
+ padding: 16px;
134
137
  border-bottom: 1px solid rgb(212, 223, 229);
135
138
  }
136
139
  .duet-notification:hover {
@@ -141,6 +144,7 @@
141
144
  background: rgb(240, 247, 250);
142
145
  }
143
146
  .duet-notification-container {
147
+ padding-bottom: 0;
144
148
  border-bottom-style: none;
145
149
  }
146
150
  }
@@ -31,7 +31,7 @@ export class DuetNumberInput {
31
31
  this.subtract(ev);
32
32
  }
33
33
  else if (isBackspaceKey(ev)) {
34
- this.clearValue();
34
+ this.clearValue(ev);
35
35
  }
36
36
  };
37
37
  this.handleChange = (ev) => {
@@ -53,6 +53,9 @@ export class DuetNumberInput {
53
53
  });
54
54
  }
55
55
  catch (e) {
56
+ if (input.value !== "-") {
57
+ this.clearValue(ev);
58
+ }
56
59
  this.duetInput.emit({
57
60
  component: "duet-number-input",
58
61
  originalEvent: ev,
@@ -266,9 +269,12 @@ export class DuetNumberInput {
266
269
  const currentValue = SafeParseFloat(this.value, this.locale);
267
270
  return this.value === undefined || this.value === null || isNaN(currentValue) ? null : currentValue;
268
271
  }
269
- clearValue() {
270
- this.value = null;
272
+ clearValue(ev) {
271
273
  this.duetInputElement.value = "";
274
+ if (this.value !== null) {
275
+ this.value = null;
276
+ this.emitNull(ev);
277
+ }
272
278
  }
273
279
  formatAnnouncement() {
274
280
  const current = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
@@ -50,6 +50,10 @@
50
50
  .duet-popup-menu-list.fixed {
51
51
  position: fixed;
52
52
  }
53
+ .duet-popup-menu-list.scroll-visible {
54
+ overflow-y: scroll;
55
+ scroll-margin: 20px;
56
+ }
53
57
  .duet-popup-menu-list.duet-theme-turva {
54
58
  color: rgb(23, 28, 58) !important;
55
59
  background: rgb(255, 255, 255);
@@ -1,6 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
+ import { spaceXSmall } from "@duetds/tokens";
4
5
  import { autoUpdate, computePosition, flip, offset, shift } from "@floating-ui/dom";
5
6
  import { Build, h, Host, } from "@stencil/core";
6
7
  import { inheritGlobalTheme } from "../../common";
@@ -58,6 +59,7 @@ export class DuetPopupMenu {
58
59
  this.mainAxisOffset = 0;
59
60
  this.crossAxisOffset = 0;
60
61
  this.controllerIcon = "action-arrow-down-small";
62
+ this.scrollLimit = undefined;
61
63
  }
62
64
  /**
63
65
  * Element, or id of an element, that controls the opening and closing of the popup menu. If id is given,
@@ -67,9 +69,10 @@ export class DuetPopupMenu {
67
69
  return this._controller;
68
70
  }
69
71
  set controller(value) {
70
- if (this.controller === value) {
72
+ if (this._controller === value) {
71
73
  return;
72
74
  }
75
+ this._controller = value;
73
76
  if (typeof value === "string") {
74
77
  this.setOpenButton(document.getElementById(value));
75
78
  if (this.openButton) {
@@ -129,7 +132,6 @@ export class DuetPopupMenu {
129
132
  if (this.open) {
130
133
  // When Esc is pressed the menu should be closed
131
134
  if (isEscapeKey(evt)) {
132
- this.focusOpenButton();
133
135
  this.hide();
134
136
  }
135
137
  }
@@ -237,7 +239,7 @@ export class DuetPopupMenu {
237
239
  }
238
240
  setTimeout(() => {
239
241
  if (this.accessibleRole === "menu") {
240
- this.focusOpenButton();
242
+ focusElement(this.openButton);
241
243
  }
242
244
  this.duetToggle.emit({ open: this.open, component: "duet-popup-menu" });
243
245
  if (this.accessibleRole !== "listbox") {
@@ -246,14 +248,18 @@ export class DuetPopupMenu {
246
248
  }, 200);
247
249
  }
248
250
  }
249
- focusOpenButton() {
250
- if (this.open) {
251
- focusElement(this.openButton);
252
- }
253
- }
254
251
  get itemElements() {
255
252
  return Array.from(this.element.querySelectorAll(":scope duet-popup-menu-item"));
256
253
  }
254
+ get popupMenuStyleHeight() {
255
+ if (this.itemElements.length > 0 && this.scrollLimit) {
256
+ const paddings = Number(spaceXSmall.replace("px", "")) * 2;
257
+ return `${this.itemElements[0].offsetHeight * this.scrollLimit + paddings}px`;
258
+ }
259
+ else {
260
+ return "auto";
261
+ }
262
+ }
257
263
  async getFocusedItemIndex() {
258
264
  const items = this.itemElements;
259
265
  for (let i = 0; i < items.length; i++) {
@@ -269,10 +275,16 @@ export class DuetPopupMenu {
269
275
  left: `${this.menuX}px`,
270
276
  position: this.position,
271
277
  overflowY: "auto",
278
+ height: this.popupMenuStyleHeight,
272
279
  };
273
- return (h(Host, { key: '1573445d7c27f2e19d2ce614aba54a6af305ff86' }, h("div", { key: '15d45b18fb7164b94698327e601076a3f51b1216', ref: element => {
280
+ return (h(Host, { key: '4754c8522cdd93a4e90398840cb321821636b489' }, h("div", { key: '45ceb31093aa93bf21e61daed2c77c4ba816556f', ref: element => {
274
281
  this.menuElement = element;
275
- }, style: styles, class: { open: this.open, "duet-popup-menu-list": true, "duet-theme-turva": this.theme === "turva" }, role: this.accessibleRole, "aria-label": this.accessibleLabel }, h("slot", { key: 'ea1ea99244036c122bb61dff60cb09c0b4393979' }))));
282
+ }, style: styles, class: {
283
+ open: this.open,
284
+ "duet-popup-menu-list": true,
285
+ "duet-theme-turva": this.theme === "turva",
286
+ "scroll-visible": this.scrollLimit < this.itemElements.length,
287
+ }, role: this.accessibleRole, "aria-label": this.accessibleLabel }, h("slot", { key: '88dde9607c352adc70eb6a27b5fab917585cef1e' }))));
276
288
  }
277
289
  static get is() { return "duet-popup-menu"; }
278
290
  static get encapsulation() { return "shadow"; }
@@ -590,6 +602,25 @@ export class DuetPopupMenu {
590
602
  "attribute": "controller-icon",
591
603
  "reflect": false,
592
604
  "defaultValue": "\"action-arrow-down-small\""
605
+ },
606
+ "scrollLimit": {
607
+ "type": "number",
608
+ "mutable": false,
609
+ "complexType": {
610
+ "original": "number",
611
+ "resolved": "number",
612
+ "references": {}
613
+ },
614
+ "required": false,
615
+ "optional": false,
616
+ "docs": {
617
+ "tags": [],
618
+ "text": "Limit the amount of visible items in Popup Menu before showing a scroll bar."
619
+ },
620
+ "getter": false,
621
+ "setter": false,
622
+ "attribute": "scroll-limit",
623
+ "reflect": false
593
624
  }
594
625
  };
595
626
  }
@@ -66,11 +66,11 @@ export class DuetPopupMenuItem {
66
66
  "duet-theme-turva": this.theme === "turva",
67
67
  "active-descendant": this.activeDescendant,
68
68
  };
69
- return (h(Host, { key: '02e7a087e9f8df28e015c45b2182ab19167c39a2', role: this.accessibleRole }, h(TagName, { key: 'aafbfd9c8bd9cab5f2b2ba259efc8c31964bad10', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "menuitem" || "option" ? -1 : 0, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage }, this.leadingIcon && (h("duet-icon", { key: '571151b958d0ef9af6f52cda7785555978c9d942', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), h("span", { key: '99b4a1e46f824fdc684531dfe55b7bc66e06370c', class: "duet-popup-menu-item-label" }, h("slot", { key: 'f76853aa6c7b441dcca9193dd8e73a117a49916f' })), (this.trailingIcon || this.active || (this.url && this.external)) && (h("duet-icon", { key: 'c0a0f628bec874ca8d2d1fe9f1a0992703cfd1c2', name: this.url && this.external
69
+ return (h(Host, { key: '02e7a087e9f8df28e015c45b2182ab19167c39a2', role: this.accessibleRole }, h(TagName, { key: 'ac6c8e523bb7dbd6ce78dfb8e5ba1a34c765f538', ref: element => (this.itemElement = element), tabIndex: this.accessibleRole === "listitem" ? 0 : -1, onFocus: this.onFocus, onBlur: this.onBlur, role: `${TagName === "a" ? "link" : "button"}`, "aria-label": this.accessibleLabel, class: classes, value: this.value, href: this.url, target: this.external ? "_blank" : undefined, rel: this.external ? "noopener" : undefined, lang: TagName === "button" ? undefined : this.targetLanguage, hreflang: TagName === "button" ? undefined : this.targetLanguage }, this.leadingIcon && (h("duet-icon", { key: '003f72c807601366ce44ba41c92d01cc3867a995', name: this.leadingIcon, size: "x-small", color: this.leadingIconColor ? this.leadingIconColor : "currentColor", class: "duet-popup-menu-item-leading", margin: "none" })), h("span", { key: '5936e48916d5c665070e490074e5310b52ad0cd9', class: "duet-popup-menu-item-label" }, h("slot", { key: '4f365167fa1ae20a9a26f91352791b8b94007088' })), (this.trailingIcon || this.active || (this.url && this.external)) && (h("duet-icon", { key: '52e54059ac3b56ad022ed42085029a58b7010806', name: this.url && this.external
70
70
  ? newWindowIcon.title
71
71
  : this.active
72
72
  ? "messaging-checked-small"
73
- : this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && h("span", { key: 'f4287b3ef8b66ce1512254aa8e6383907650283d', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
73
+ : this.trailingIcon, size: (this.url && this.external) || this.active ? "xx-small" : "x-small", color: "currentColor", class: "duet-popup-menu-item-trailing", margin: "none" })), this.trailingText && h("span", { key: '16fb5260a8d79c5b20bc7dcbb0d6fb078d41f0d5', class: "duet-popup-menu-item-trailing" }, this.trailingText))));
74
74
  }
75
75
  static get is() { return "duet-popup-menu-item"; }
76
76
  static get encapsulation() { return "shadow"; }