@duetds/components 10.4.0 → 10.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/hydrate/index.js +405 -275
  2. package/hydrate/index.mjs +405 -275
  3. package/lib/cjs/{a11y-utils-BXDHn_nL.js → a11y-utils-DaAO4N9d.js} +1 -1
  4. package/lib/cjs/{app-globals-Bs3-XKhd.js → app-globals-CHNvdfQj.js} +1 -1
  5. package/lib/cjs/duet-action-button.cjs.entry.js +3 -3
  6. package/lib/cjs/duet-alert.cjs.entry.js +4 -4
  7. package/lib/cjs/duet-badge.cjs.entry.js +29 -6
  8. package/lib/cjs/duet-banner.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-breadcrumb.cjs.entry.js +6 -6
  10. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +5 -5
  11. package/lib/cjs/duet-button_2.cjs.entry.js +5 -5
  12. package/lib/cjs/duet-callout.cjs.entry.js +5 -5
  13. package/lib/cjs/duet-caption_4.cjs.entry.js +11 -11
  14. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  15. package/lib/cjs/duet-checkbox.cjs.entry.js +3 -3
  16. package/lib/cjs/duet-checkmark.cjs.entry.js +4 -4
  17. package/lib/cjs/duet-chip.cjs.entry.js +5 -8
  18. package/lib/cjs/duet-choice_2.cjs.entry.js +19 -21
  19. package/lib/cjs/duet-collapsible.cjs.entry.js +3 -3
  20. package/lib/cjs/duet-combobox.cjs.entry.js +4 -5
  21. package/lib/cjs/duet-contact-card.cjs.entry.js +5 -5
  22. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-date-picker.cjs.entry.js +10 -9
  24. package/lib/cjs/duet-divider_2.cjs.entry.js +4 -4
  25. package/lib/cjs/duet-editable-table_3.cjs.entry.js +10 -10
  26. package/lib/cjs/duet-empty-state.cjs.entry.js +4 -4
  27. package/lib/cjs/duet-fieldset.cjs.entry.js +6 -6
  28. package/lib/cjs/duet-file-chooser.cjs.entry.js +3 -3
  29. package/lib/cjs/duet-footer.cjs.entry.js +8 -8
  30. package/lib/cjs/duet-grid_2.cjs.entry.js +7 -7
  31. package/lib/cjs/duet-header_2.cjs.entry.js +4 -4
  32. package/lib/cjs/duet-hero.cjs.entry.js +9 -9
  33. package/lib/cjs/duet-icon.cjs.entry.js +5 -5
  34. package/lib/cjs/duet-indicator.cjs.entry.js +5 -5
  35. package/lib/cjs/duet-input_2.cjs.entry.js +75 -18
  36. package/lib/cjs/duet-layout.cjs.entry.js +7 -7
  37. package/lib/cjs/duet-list_2.cjs.entry.js +5 -5
  38. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +4 -4
  39. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +4 -4
  40. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +6 -6
  41. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +7 -7
  42. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +4 -4
  43. package/lib/cjs/duet-menu-bar.cjs.entry.js +6 -6
  44. package/lib/cjs/duet-modal.cjs.entry.js +12 -12
  45. package/lib/cjs/duet-multiselect.cjs.entry.js +10 -10
  46. package/lib/cjs/duet-nav.cjs.entry.js +3 -3
  47. package/lib/cjs/duet-notification_2.cjs.entry.js +9 -9
  48. package/lib/cjs/duet-number-input.cjs.entry.js +13 -11
  49. package/lib/cjs/duet-overlay.cjs.entry.js +3 -3
  50. package/lib/cjs/duet-page-heading.cjs.entry.js +20 -5
  51. package/lib/cjs/duet-pagination_2.cjs.entry.js +17 -18
  52. package/lib/cjs/duet-panel.cjs.entry.js +4 -4
  53. package/lib/cjs/duet-phone-input.cjs.entry.js +17 -5
  54. package/lib/cjs/duet-popup-menu_2.cjs.entry.js +8 -8
  55. package/lib/cjs/duet-progress.cjs.entry.js +3 -3
  56. package/lib/cjs/duet-promo-card.cjs.entry.js +5 -5
  57. package/lib/cjs/duet-radio_2.cjs.entry.js +7 -10
  58. package/lib/cjs/duet-range-slider.cjs.entry.js +6 -6
  59. package/lib/cjs/duet-scrollable_3.cjs.entry.js +15 -15
  60. package/lib/cjs/duet-section-layout.cjs.entry.js +4 -4
  61. package/lib/cjs/duet-select.cjs.entry.js +9 -9
  62. package/lib/cjs/duet-shaped-image.cjs.entry.js +4 -4
  63. package/lib/cjs/duet-share-chart-item.cjs.entry.js +2 -2
  64. package/lib/cjs/duet-share-chart.cjs.entry.js +6 -6
  65. package/lib/cjs/duet-show-more.cjs.entry.js +5 -5
  66. package/lib/cjs/duet-slideout-lang.cjs.entry.js +4 -4
  67. package/lib/cjs/duet-slideout-link.cjs.entry.js +7 -7
  68. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +6 -6
  69. package/lib/cjs/duet-slideout-panel.cjs.entry.js +11 -11
  70. package/lib/cjs/duet-slideout.cjs.entry.js +10 -10
  71. package/lib/cjs/duet-status-icon.cjs.entry.js +3 -3
  72. package/lib/cjs/duet-step_2.cjs.entry.js +6 -6
  73. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +4 -4
  74. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +6 -6
  75. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +6 -6
  76. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +3 -3
  77. package/lib/cjs/duet-submenu-bar.cjs.entry.js +7 -7
  78. package/lib/cjs/duet-textarea.cjs.entry.js +8 -8
  79. package/lib/cjs/duet-toggle.cjs.entry.js +8 -8
  80. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +4 -4
  81. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +6 -6
  82. package/lib/cjs/duet-toolbar-item.cjs.entry.js +8 -8
  83. package/lib/cjs/duet-toolbar-link.cjs.entry.js +4 -4
  84. package/lib/cjs/duet-toolbar.cjs.entry.js +4 -4
  85. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +13 -11
  86. package/lib/cjs/duet-tooltip.cjs.entry.js +24 -7
  87. package/lib/cjs/duet-tray.cjs.entry.js +5 -5
  88. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +2 -2
  89. package/lib/cjs/duet-upload-item.cjs.entry.js +6 -6
  90. package/lib/cjs/duet-visually-hidden.cjs.entry.js +2 -2
  91. package/lib/cjs/duet.cjs.js +3 -3
  92. package/lib/cjs/{errorcodes.utils-W6UQ3hgy.js → errorcodes.utils-Dkf_MfrJ.js} +1 -1
  93. package/lib/cjs/{focus-utils-KTKpjKRi.js → focus-utils-BuGg0Oha.js} +1 -1
  94. package/lib/cjs/{index-C7Yvi8y8.js → index-ZxE6MB5V.js} +1 -1
  95. package/lib/cjs/{label-DZ63Z3SI.js → label-CpPOBfjS.js} +1 -1
  96. package/lib/cjs/{language-utils-BsevPDrN.js → language-utils-C7Z0KYg-.js} +1 -1
  97. package/lib/cjs/loader.cjs.js +3 -3
  98. package/lib/cjs/{slot-utils-DIDW777s.js → slot-utils-BXdHT3A1.js} +1 -1
  99. package/lib/cjs/{themeable-component-hQ83w5_A.js → themeable-component-CIDaln0Z.js} +1 -1
  100. package/lib/collection/components/duet-badge/duet-badge.css +66 -5
  101. package/lib/collection/components/duet-badge/duet-badge.js +49 -2
  102. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +4 -4
  103. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +2 -2
  104. package/lib/collection/components/duet-button/duet-button.css +5 -0
  105. package/lib/collection/components/duet-callout/duet-callout.js +2 -2
  106. package/lib/collection/components/duet-chip/duet-chip.js +2 -5
  107. package/lib/collection/components/duet-choice/duet-checkmark.js +2 -2
  108. package/lib/collection/components/duet-choice/duet-choice.js +9 -9
  109. package/lib/collection/components/duet-choice-group/duet-choice-group.js +6 -8
  110. package/lib/collection/components/duet-combobox/duet-combobox.js +0 -1
  111. package/lib/collection/components/duet-contact-card/duet-contact-card.js +2 -2
  112. package/lib/collection/components/duet-date-picker/duet-date-picker.js +5 -2
  113. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  114. package/lib/collection/components/duet-editable-table/duet-editable-table.js +2 -2
  115. package/lib/collection/components/duet-empty-state/duet-empty-state.js +2 -2
  116. package/lib/collection/components/duet-fieldset/duet-fieldset.js +3 -3
  117. package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +1 -1
  118. package/lib/collection/components/duet-footer/duet-footer.js +4 -4
  119. package/lib/collection/components/duet-grid/duet-grid.js +2 -2
  120. package/lib/collection/components/duet-grid-item/duet-grid-item.css +5 -0
  121. package/lib/collection/components/duet-grid-item/duet-grid-item.js +2 -2
  122. package/lib/collection/components/duet-heading/duet-heading.js +2 -2
  123. package/lib/collection/components/duet-hero/duet-hero.js +5 -5
  124. package/lib/collection/components/duet-icon/duet-icon.js +3 -3
  125. package/lib/collection/components/duet-indicator/duet-indicator.js +2 -2
  126. package/lib/collection/components/duet-input/duet-input.css +38 -3
  127. package/lib/collection/components/duet-input/duet-input.js +148 -15
  128. package/lib/collection/components/duet-layout/duet-layout.js +5 -5
  129. package/lib/collection/components/duet-link/duet-link.js +2 -2
  130. package/lib/collection/components/duet-list/duet-list.js +1 -1
  131. package/lib/collection/components/duet-list-item/duet-list-item.js +2 -2
  132. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  133. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +3 -3
  134. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +2 -2
  135. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +4 -4
  136. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +2 -2
  137. package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +2 -2
  138. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +2 -2
  139. package/lib/collection/components/duet-modal/duet-modal.js +7 -7
  140. package/lib/collection/components/duet-multiselect/duet-multiselect.js +5 -5
  141. package/lib/collection/components/duet-nav/duet-nav.js +1 -1
  142. package/lib/collection/components/duet-notification/duet-notification.js +2 -2
  143. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +3 -3
  144. package/lib/collection/components/duet-number-input/duet-number-input.js +10 -9
  145. package/lib/collection/components/duet-overlay/duet-overlay.js +1 -1
  146. package/lib/collection/components/duet-page-heading/duet-page-heading.css +20 -1
  147. package/lib/collection/components/duet-page-heading/duet-page-heading.js +58 -2
  148. package/lib/collection/components/duet-pagination/duet-pagination.js +12 -13
  149. package/lib/collection/components/duet-panel/duet-panel.js +2 -2
  150. package/lib/collection/components/duet-paragraph/duet-paragraph.js +2 -2
  151. package/lib/collection/components/duet-phone-input/duet-phone-input.js +13 -1
  152. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +2 -2
  153. package/lib/collection/components/duet-promo-card/duet-promo-card.js +2 -2
  154. package/lib/collection/components/duet-radio/duet-radio.js +3 -6
  155. package/lib/collection/components/duet-radio-group/duet-radio-group.js +1 -1
  156. package/lib/collection/components/duet-range-slider/duet-range-slider.js +2 -2
  157. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +2 -2
  158. package/lib/collection/components/duet-scrollable/duet-scrollable.js +5 -5
  159. package/lib/collection/components/duet-section-layout/duet-section-layout.js +3 -3
  160. package/lib/collection/components/duet-select/duet-select.js +5 -5
  161. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +2 -2
  162. package/lib/collection/components/duet-share-chart/duet-share-chart.js +2 -2
  163. package/lib/collection/components/duet-share-chart-item/duet-share-chart-item.js +1 -1
  164. package/lib/collection/components/duet-show-more/duet-show-more.js +2 -2
  165. package/lib/collection/components/duet-slideout/duet-slideout.js +4 -4
  166. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +1 -1
  167. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +2 -2
  168. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +6 -6
  169. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +4 -4
  170. package/lib/collection/components/duet-spacer/duet-spacer.js +1 -1
  171. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  172. package/lib/collection/components/duet-status-icon/duet-status-icon.js +2 -2
  173. package/lib/collection/components/duet-step/duet-step.js +2 -2
  174. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  175. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +5 -5
  176. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +4 -4
  177. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +2 -2
  178. package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +1 -1
  179. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +1 -1
  180. package/lib/collection/components/duet-tab/duet-tab.js +2 -2
  181. package/lib/collection/components/duet-tab-group/duet-tab-group.js +4 -4
  182. package/lib/collection/components/duet-table/duet-table.js +2 -2
  183. package/lib/collection/components/duet-textarea/duet-textarea.js +3 -3
  184. package/lib/collection/components/duet-toggle/duet-toggle.js +3 -3
  185. package/lib/collection/components/duet-toolbar/duet-toolbar.js +2 -2
  186. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +4 -4
  187. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +2 -2
  188. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +3 -3
  189. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +2 -2
  190. package/lib/collection/components/duet-tooltip/duet-tooltip-button.css +18 -4
  191. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +25 -3
  192. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.css +1 -1
  193. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +3 -3
  194. package/lib/collection/components/duet-tooltip/duet-tooltip.js +47 -4
  195. package/lib/collection/components/duet-tray/duet-tray.js +2 -2
  196. package/lib/collection/components/duet-upload/duet-upload.js +2 -2
  197. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +1 -1
  198. package/lib/collection/components/duet-upload-item/duet-upload-item.js +2 -2
  199. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
  200. package/lib/collection/utils/math.utils.js +1 -0
  201. package/lib/duet/duet.esm.js +1 -1
  202. package/lib/duet/{p-14d4a45a.entry.js → p-02d8e844.entry.js} +1 -1
  203. package/lib/duet/p-06297bd8.entry.js +4 -0
  204. package/lib/duet/p-0c04f9f5.entry.js +4 -0
  205. package/lib/duet/p-110c7572.entry.js +4 -0
  206. package/lib/duet/{p-eab349f2.entry.js → p-18a8ea12.entry.js} +1 -1
  207. package/lib/duet/{p-1ee400e7.entry.js → p-19863cdf.entry.js} +1 -1
  208. package/lib/duet/p-1bca9931.entry.js +4 -0
  209. package/lib/duet/{p-a690a165.entry.js → p-1da7703d.entry.js} +1 -1
  210. package/lib/duet/{p-84420fbf.entry.js → p-20a8ef81.entry.js} +1 -1
  211. package/lib/duet/{p-526fa31c.entry.js → p-268b3066.entry.js} +1 -1
  212. package/lib/duet/{p-61b6962a.entry.js → p-2dd7d75e.entry.js} +1 -1
  213. package/lib/duet/{p-1666aeaf.entry.js → p-2f8a47e2.entry.js} +1 -1
  214. package/lib/duet/{p-c1d4542d.entry.js → p-30108edc.entry.js} +1 -1
  215. package/lib/duet/{p-b3ec9b98.entry.js → p-317a1fc0.entry.js} +1 -1
  216. package/lib/duet/{p-2e413951.entry.js → p-317e81f3.entry.js} +1 -1
  217. package/lib/duet/{p-81332db1.entry.js → p-3277233e.entry.js} +1 -1
  218. package/lib/duet/{p-6988c81c.entry.js → p-3690576a.entry.js} +1 -1
  219. package/lib/duet/{p-adecab91.entry.js → p-38973524.entry.js} +1 -1
  220. package/lib/duet/{p-2d43de54.entry.js → p-3b2fba0f.entry.js} +1 -1
  221. package/lib/duet/{p-01f3e30c.entry.js → p-3f35fce3.entry.js} +1 -1
  222. package/lib/duet/p-3f3c6e64.entry.js +4 -0
  223. package/lib/duet/{p-494755d0.entry.js → p-3f7afd87.entry.js} +1 -1
  224. package/lib/duet/p-407f7f03.entry.js +4 -0
  225. package/lib/duet/{p-d181c624.entry.js → p-40fa7371.entry.js} +1 -1
  226. package/lib/duet/p-42ec7305.entry.js +4 -0
  227. package/lib/duet/p-43e076b5.entry.js +4 -0
  228. package/lib/duet/p-443af533.entry.js +4 -0
  229. package/lib/duet/{p-a4a1b8e3.entry.js → p-461d4089.entry.js} +1 -1
  230. package/lib/duet/{p-7e640c8e.entry.js → p-4af6a8ed.entry.js} +1 -1
  231. package/lib/duet/{p-4d39941c.entry.js → p-4b7f1244.entry.js} +1 -1
  232. package/lib/duet/{p-a63327c3.entry.js → p-516397ba.entry.js} +1 -1
  233. package/lib/duet/{p-cd4f52a9.entry.js → p-5284c707.entry.js} +1 -1
  234. package/lib/duet/{p-d2c91ed0.entry.js → p-52beb436.entry.js} +1 -1
  235. package/lib/duet/p-5c9f443c.entry.js +4 -0
  236. package/lib/duet/{p-dc87f3f4.entry.js → p-5f5f72d4.entry.js} +1 -1
  237. package/lib/duet/{p--fmK3qPb.js → p-5lFzA17H.js} +1 -1
  238. package/lib/duet/{p-376f9d06.entry.js → p-61ec0e1c.entry.js} +1 -1
  239. package/lib/duet/{p-eebf150c.entry.js → p-6b469225.entry.js} +1 -1
  240. package/lib/duet/p-6ef683d5.entry.js +4 -0
  241. package/lib/duet/{p-d2c04a7e.entry.js → p-70612314.entry.js} +1 -1
  242. package/lib/duet/{p-5ffc4081.entry.js → p-70961edb.entry.js} +1 -1
  243. package/lib/duet/p-7294c37d.entry.js +4 -0
  244. package/lib/duet/p-72b504ef.entry.js +4 -0
  245. package/lib/duet/{p-5dde8fbb.entry.js → p-734249e0.entry.js} +1 -1
  246. package/lib/duet/{p-bcced6eb.entry.js → p-7353ee4c.entry.js} +1 -1
  247. package/lib/duet/p-74aac967.entry.js +4 -0
  248. package/lib/duet/{p-870dc953.entry.js → p-7c08fd87.entry.js} +1 -1
  249. package/lib/duet/{p-e8bd6dab.entry.js → p-7eea47d5.entry.js} +1 -1
  250. package/lib/duet/{p-3bd45b5b.entry.js → p-7fd39204.entry.js} +1 -1
  251. package/lib/duet/{p-816caa58.entry.js → p-8012c7bc.entry.js} +1 -1
  252. package/lib/duet/{p-46300680.entry.js → p-829db926.entry.js} +1 -1
  253. package/lib/duet/p-83238bf3.entry.js +4 -0
  254. package/lib/duet/{p-b64b3e2f.entry.js → p-833802f9.entry.js} +1 -1
  255. package/lib/duet/p-86ffd3cb.entry.js +4 -0
  256. package/lib/duet/{p-0eb0e582.entry.js → p-871620d3.entry.js} +1 -1
  257. package/lib/duet/{p-afd7d87a.entry.js → p-8ace1eb4.entry.js} +1 -1
  258. package/lib/duet/{p-3648404d.entry.js → p-8b0dfbd7.entry.js} +1 -1
  259. package/lib/duet/{p-1dcbbd67.entry.js → p-93ff8fe4.entry.js} +1 -1
  260. package/lib/duet/{p-428db44b.entry.js → p-9ae7aaef.entry.js} +1 -1
  261. package/lib/duet/{p-73ed0008.entry.js → p-9c9811ba.entry.js} +1 -1
  262. package/lib/duet/{p-1bdef0e0.entry.js → p-9e1a59d1.entry.js} +1 -1
  263. package/lib/duet/{p-Cwhi6_oZ.js → p-B2cboDWM.js} +1 -1
  264. package/lib/duet/{p-Chf7ZRmW.js → p-B8-N_qjs.js} +1 -1
  265. package/lib/duet/{p-D2EBd3cT.js → p-BzYmwX5_.js} +1 -1
  266. package/lib/duet/{p-2HU78SJ-.js → p-C5Yfx2kd.js} +1 -1
  267. package/lib/duet/{p-DWIjWGAD.js → p-CFqvB5PA.js} +1 -1
  268. package/lib/duet/{p-CtBx3Trd.js → p-Cg4m_WHe.js} +1 -1
  269. package/lib/duet/{p-BW3SZS4F.js → p-R3pTP2Oy.js} +1 -1
  270. package/lib/duet/{p-9d8027aa.entry.js → p-a068c086.entry.js} +1 -1
  271. package/lib/duet/p-a483117e.entry.js +4 -0
  272. package/lib/duet/{p-0395eb34.entry.js → p-a5177d32.entry.js} +1 -1
  273. package/lib/duet/{p-fbce84d5.entry.js → p-a8876b3d.entry.js} +1 -1
  274. package/lib/duet/{p-3361387d.entry.js → p-a9104184.entry.js} +1 -1
  275. package/lib/duet/{p-184d53a7.entry.js → p-b1326cbb.entry.js} +1 -1
  276. package/lib/duet/{p-fea479fd.entry.js → p-b747f6e9.entry.js} +1 -1
  277. package/lib/duet/{p-7a5066b8.entry.js → p-bdbf0fae.entry.js} +1 -1
  278. package/lib/duet/{p-3c26d300.entry.js → p-c1afac0d.entry.js} +1 -1
  279. package/lib/duet/p-c2026c6b.entry.js +4 -0
  280. package/lib/duet/{p-1ed82a27.entry.js → p-c216e746.entry.js} +1 -1
  281. package/lib/duet/{p-0453edd0.entry.js → p-c54be349.entry.js} +1 -1
  282. package/lib/duet/{p-13b7f4e0.entry.js → p-cb6c4158.entry.js} +1 -1
  283. package/lib/duet/{p-4c5a8ed3.entry.js → p-cbcee3e2.entry.js} +1 -1
  284. package/lib/duet/{p-12e4e9b6.entry.js → p-d3b5c997.entry.js} +1 -1
  285. package/lib/duet/{p-7a668cee.entry.js → p-d3baa815.entry.js} +1 -1
  286. package/lib/duet/{p-1705b6cf.entry.js → p-d5f90dbc.entry.js} +1 -1
  287. package/lib/duet/{p-07c4b435.entry.js → p-d6f0afa5.entry.js} +1 -1
  288. package/lib/duet/{p-dfd55180.entry.js → p-d779fe42.entry.js} +1 -1
  289. package/lib/duet/{p-f210e405.entry.js → p-dedf6a32.entry.js} +1 -1
  290. package/lib/duet/{p-d0a54e6d.entry.js → p-e08dce92.entry.js} +1 -1
  291. package/lib/duet/{p-c71f6942.entry.js → p-e7f2359a.entry.js} +1 -1
  292. package/lib/duet/p-efa4eecc.entry.js +4 -0
  293. package/lib/duet/p-f040706c.entry.js +4 -0
  294. package/lib/duet/{p-7eaa1fb5.entry.js → p-fa13ffe9.entry.js} +1 -1
  295. package/lib/duet/{p-87bb797c.entry.js → p-fe829b53.entry.js} +1 -1
  296. package/lib/duet/p-s8EL6NG5.js +4 -0
  297. package/lib/esm/{a11y-utils-sgAajRY0.js → a11y-utils-ChN5Nhxh.js} +1 -1
  298. package/lib/esm/{app-globals-NNQmI_gc.js → app-globals-4kCk2rkO.js} +1 -1
  299. package/lib/esm/duet-action-button.entry.js +3 -3
  300. package/lib/esm/duet-alert.entry.js +4 -4
  301. package/lib/esm/duet-badge.entry.js +29 -6
  302. package/lib/esm/duet-banner.entry.js +3 -3
  303. package/lib/esm/duet-breadcrumb.entry.js +6 -6
  304. package/lib/esm/duet-breadcrumbs.entry.js +5 -5
  305. package/lib/esm/duet-button_2.entry.js +5 -5
  306. package/lib/esm/duet-callout.entry.js +5 -5
  307. package/lib/esm/duet-caption_4.entry.js +11 -11
  308. package/lib/esm/duet-card.entry.js +3 -3
  309. package/lib/esm/duet-checkbox.entry.js +3 -3
  310. package/lib/esm/duet-checkmark.entry.js +4 -4
  311. package/lib/esm/duet-chip.entry.js +5 -8
  312. package/lib/esm/duet-choice_2.entry.js +19 -21
  313. package/lib/esm/duet-collapsible.entry.js +3 -3
  314. package/lib/esm/duet-combobox.entry.js +4 -5
  315. package/lib/esm/duet-contact-card.entry.js +5 -5
  316. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  317. package/lib/esm/duet-date-picker.entry.js +10 -9
  318. package/lib/esm/duet-divider_2.entry.js +4 -4
  319. package/lib/esm/duet-editable-table_3.entry.js +10 -10
  320. package/lib/esm/duet-empty-state.entry.js +4 -4
  321. package/lib/esm/duet-fieldset.entry.js +6 -6
  322. package/lib/esm/duet-file-chooser.entry.js +3 -3
  323. package/lib/esm/duet-footer.entry.js +8 -8
  324. package/lib/esm/duet-grid_2.entry.js +7 -7
  325. package/lib/esm/duet-header_2.entry.js +4 -4
  326. package/lib/esm/duet-hero.entry.js +9 -9
  327. package/lib/esm/duet-icon.entry.js +5 -5
  328. package/lib/esm/duet-indicator.entry.js +5 -5
  329. package/lib/esm/duet-input_2.entry.js +75 -18
  330. package/lib/esm/duet-layout.entry.js +7 -7
  331. package/lib/esm/duet-list_2.entry.js +5 -5
  332. package/lib/esm/duet-menu-bar-button.entry.js +4 -4
  333. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +4 -4
  334. package/lib/esm/duet-menu-bar-dropdown.entry.js +6 -6
  335. package/lib/esm/duet-menu-bar-item.entry.js +7 -7
  336. package/lib/esm/duet-menu-bar-link.entry.js +4 -4
  337. package/lib/esm/duet-menu-bar.entry.js +6 -6
  338. package/lib/esm/duet-modal.entry.js +12 -12
  339. package/lib/esm/duet-multiselect.entry.js +10 -10
  340. package/lib/esm/duet-nav.entry.js +3 -3
  341. package/lib/esm/duet-notification_2.entry.js +9 -9
  342. package/lib/esm/duet-number-input.entry.js +13 -11
  343. package/lib/esm/duet-overlay.entry.js +3 -3
  344. package/lib/esm/duet-page-heading.entry.js +20 -5
  345. package/lib/esm/duet-pagination_2.entry.js +17 -18
  346. package/lib/esm/duet-panel.entry.js +4 -4
  347. package/lib/esm/duet-phone-input.entry.js +17 -5
  348. package/lib/esm/duet-popup-menu_2.entry.js +8 -8
  349. package/lib/esm/duet-progress.entry.js +3 -3
  350. package/lib/esm/duet-promo-card.entry.js +5 -5
  351. package/lib/esm/duet-radio_2.entry.js +7 -10
  352. package/lib/esm/duet-range-slider.entry.js +6 -6
  353. package/lib/esm/duet-scrollable_3.entry.js +15 -15
  354. package/lib/esm/duet-section-layout.entry.js +4 -4
  355. package/lib/esm/duet-select.entry.js +9 -9
  356. package/lib/esm/duet-shaped-image.entry.js +4 -4
  357. package/lib/esm/duet-share-chart-item.entry.js +2 -2
  358. package/lib/esm/duet-share-chart.entry.js +6 -6
  359. package/lib/esm/duet-show-more.entry.js +5 -5
  360. package/lib/esm/duet-slideout-lang.entry.js +4 -4
  361. package/lib/esm/duet-slideout-link.entry.js +7 -7
  362. package/lib/esm/duet-slideout-panel-dropdown.entry.js +6 -6
  363. package/lib/esm/duet-slideout-panel.entry.js +11 -11
  364. package/lib/esm/duet-slideout.entry.js +10 -10
  365. package/lib/esm/duet-status-icon.entry.js +3 -3
  366. package/lib/esm/duet-step_2.entry.js +6 -6
  367. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +4 -4
  368. package/lib/esm/duet-submenu-bar-dropdown.entry.js +6 -6
  369. package/lib/esm/duet-submenu-bar-item.entry.js +6 -6
  370. package/lib/esm/duet-submenu-bar-link.entry.js +3 -3
  371. package/lib/esm/duet-submenu-bar.entry.js +7 -7
  372. package/lib/esm/duet-textarea.entry.js +8 -8
  373. package/lib/esm/duet-toggle.entry.js +8 -8
  374. package/lib/esm/duet-toolbar-dropdown-link.entry.js +4 -4
  375. package/lib/esm/duet-toolbar-dropdown.entry.js +6 -6
  376. package/lib/esm/duet-toolbar-item.entry.js +8 -8
  377. package/lib/esm/duet-toolbar-link.entry.js +4 -4
  378. package/lib/esm/duet-toolbar.entry.js +4 -4
  379. package/lib/esm/duet-tooltip-button_2.entry.js +13 -11
  380. package/lib/esm/duet-tooltip.entry.js +25 -8
  381. package/lib/esm/duet-tray.entry.js +5 -5
  382. package/lib/esm/duet-upload-aria-status.entry.js +2 -2
  383. package/lib/esm/duet-upload-item.entry.js +6 -6
  384. package/lib/esm/duet-visually-hidden.entry.js +2 -2
  385. package/lib/esm/duet.js +4 -4
  386. package/lib/esm/{errorcodes.utils-CqW0-HM8.js → errorcodes.utils-DuFCu_27.js} +1 -1
  387. package/lib/esm/{focus-utils-Dokkd7xz.js → focus-utils-CFswdkeD.js} +1 -1
  388. package/lib/esm/{index-Cwhi6_oZ.js → index-B2cboDWM.js} +1 -1
  389. package/lib/esm/{label-CyQlly6Z.js → label-CJxIWUOT.js} +1 -1
  390. package/lib/esm/{language-utils-LZh-sc2s.js → language-utils-C4M4ASkT.js} +1 -1
  391. package/lib/esm/loader.js +4 -4
  392. package/lib/esm/{slot-utils-CEZnAp61.js → slot-utils--sNK1DNn.js} +1 -1
  393. package/lib/esm/{themeable-component-D_FVcjsD.js → themeable-component-BBi3552X.js} +1 -1
  394. package/lib/types/components/duet-badge/duet-badge.d.ts +14 -0
  395. package/lib/types/components/duet-chip/duet-chip.d.ts +1 -1
  396. package/lib/types/components/duet-input/duet-input.d.ts +31 -3
  397. package/lib/types/components/duet-number-input/duet-number-input.d.ts +2 -1
  398. package/lib/types/components/duet-page-heading/duet-page-heading.d.ts +10 -0
  399. package/lib/types/components/duet-phone-input/duet-phone-input.d.ts +2 -0
  400. package/lib/types/components/duet-radio/duet-radio.d.ts +0 -1
  401. package/lib/types/components/duet-tooltip/duet-tooltip-button.d.ts +1 -0
  402. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +6 -0
  403. package/lib/types/components.d.ts +79 -8
  404. package/lib/types/utils/math.utils.d.ts +1 -0
  405. package/package.json +5 -5
  406. package/lib/duet/p-07aa40df.entry.js +0 -4
  407. package/lib/duet/p-104ddbf2.entry.js +0 -4
  408. package/lib/duet/p-2168e431.entry.js +0 -4
  409. package/lib/duet/p-4420973e.entry.js +0 -4
  410. package/lib/duet/p-455e8ebe.entry.js +0 -4
  411. package/lib/duet/p-4f7b0699.entry.js +0 -4
  412. package/lib/duet/p-58496fb1.entry.js +0 -4
  413. package/lib/duet/p-58a70b3d.entry.js +0 -4
  414. package/lib/duet/p-592a6542.entry.js +0 -4
  415. package/lib/duet/p-5c8c691b.entry.js +0 -4
  416. package/lib/duet/p-7a2ca711.entry.js +0 -4
  417. package/lib/duet/p-DCDM41Ef.js +0 -4
  418. package/lib/duet/p-a4db8c29.entry.js +0 -4
  419. package/lib/duet/p-a7bb038a.entry.js +0 -4
  420. package/lib/duet/p-af9c8169.entry.js +0 -4
  421. package/lib/duet/p-c7851c15.entry.js +0 -4
  422. package/lib/duet/p-cbd1069e.entry.js +0 -4
  423. package/lib/duet/p-d3dac8af.entry.js +0 -4
  424. package/lib/duet/p-e9ed96cf.entry.js +0 -4
  425. package/lib/duet/p-f600e215.entry.js +0 -4
  426. package/lib/duet/p-f652a9c7.entry.js +0 -4
@@ -48,11 +48,11 @@ export class DuetMenuBarDropdownLink {
48
48
  * Always the last one in the class.
49
49
  */
50
50
  render() {
51
- return (h(Host, { key: '4f66b37f78e3221d96cc0189a2a8592e6b6f8fc6' }, h("a", { key: 'd6ad6af753be198a1601d09e82478a0e1d9ee172', class: {
51
+ return (h(Host, { key: '44c02bb0c92ca03579e70dc6f79178099f38de61' }, h("a", { key: '26b45ac19043800a070894afec67517d051b6ccc', class: {
52
52
  "duet-menu-bar-dropdown-link": true,
53
53
  [`duet-menu-bar-dropdown-link--slot-${this.getVariant()}`]: true,
54
54
  "duet-theme-turva": this.theme === "turva",
55
- }, href: this.href, role: "menuitem", onKeyUp: e => this.handleEscape(e), "aria-label": this.accessibleLabel }, this.icon && (h("duet-icon", { key: '4834a4159934c0525ed9e7b7d6ac28132ba2cf03', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), h("slot", { key: 'e3f4ac467c7e84ec2c9f0d8ac7f36800a299540f' }))));
55
+ }, href: this.href, role: "menuitem", onKeyUp: e => this.handleEscape(e), "aria-label": this.accessibleLabel }, this.icon && (h("duet-icon", { key: '4d481450931bbf089d2f6d5ee7076aca7c3978f1', theme: this.theme, name: this.icon, size: "x-small", margin: "none", color: "currentColor" })), h("slot", { key: 'b47043814429787c833949bac92bae95b2001419' }))));
56
56
  }
57
57
  static get is() { return "duet-menu-bar-dropdown-link"; }
58
58
  static get encapsulation() { return "shadow"; }
@@ -71,11 +71,11 @@ export class DuetMenuBarItem {
71
71
  */
72
72
  render() {
73
73
  const TagName = this.url ? "a" : "button";
74
- return (h(Host, { key: 'c8f1492389226bb51cdfb54ab5262d21292a19cb', role: "listitem" }, h(TagName, { key: '251da0ca6cb28157cb26ba5f90c770123cebc5c1', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
74
+ return (h(Host, { key: '9feca792c6d12ed05344d17db4a5076ad037994e', role: "listitem" }, h(TagName, { key: '5ab6813f5290c5f323713e6015a46330089d555a', target: !this.url ? null : this.external ? "_blank" : "_self", ref: element => (this.itemElement = element), class: {
75
75
  "duet-menu-bar-item": true,
76
76
  "duet-theme-turva": this.theme === "turva",
77
77
  active: this.active,
78
- }, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (h("duet-icon", { key: 'bc34c4cc34cd814ec124013da71d619f32986bd7', class: "leading-icon", size: "auto", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" })), h("slot", { key: 'a913f29ab5fd5e0f3a9aeb2115bae74b83c51a7e' }), (this.trailingIcon || this.external) && (h("duet-icon", { key: 'efb44346bf1cc026263a16f0982981b6420ad298', class: {
78
+ }, href: this.url, role: `${TagName === "a" ? "link" : "button"}`, "aria-current": this.active ? "true" : "false", "aria-label": (this.url && getAccessibleLinkLabel(this)) || this.accessibleLabel, "aria-expanded": this.accessibleExpanded != null ? this.accessibleExpanded.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined, rel: this.external ? "noopener" : undefined }, this.leadingIcon && (h("duet-icon", { key: '7b6541e7b7cab53fedf815feebc683b9f122e323', class: "leading-icon", size: "auto", name: this.leadingIcon, margin: "none", theme: this.theme, color: "currentColor" })), h("slot", { key: 'ab89cf87285d10e52798cd123c404acb69d6bf91' }), (this.trailingIcon || this.external) && (h("duet-icon", { key: '6bc587bed959b634caf6b25db7f3374ed538151c', class: {
79
79
  "trailing-icon": !!this.trailingIcon,
80
80
  "trailing-icon-arrow": this.trailingIcon === "action-arrow-down-small",
81
81
  "external-icon": !!this.external,
@@ -33,11 +33,11 @@ export class DuetMenuBarLink {
33
33
  * Always the last one in the class.
34
34
  */
35
35
  render() {
36
- return (h(Host, { key: '997031f3159b6da185e25915d7241ba645b2b9d0', role: "listitem" }, h("a", { key: '8ef71373a7c481ca8dc93506eb8957c470489c2b', class: {
36
+ return (h(Host, { key: '044fd632f4ea61ecd3bbbb77e3c2d0eda50f16a4', role: "listitem" }, h("a", { key: 'b910e6d15c696910ab231b49facb9cd3250d66c4', class: {
37
37
  "duet-menu-bar-link": true,
38
38
  "duet-theme-turva": this.theme === "turva",
39
39
  active: this.active,
40
- }, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (h("duet-icon", { key: 'f0439bbfecdf854d05fa818663e7e7e93fffa404', class: "menu-bar-link-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), h("slot", { key: '426c1a3de2829a37aba8d4f30169d71425d81301' }))));
40
+ }, href: this.href, "aria-current": this.active ? "true" : "false", "aria-label": this.accessibleLabel }, this.icon && (h("duet-icon", { key: '46ede326e61111856df4318b018a4128b7743658', class: "menu-bar-link-icon", theme: this.theme, size: "auto", name: this.icon, margin: "none", color: "currentColor" })), h("slot", { key: '774a0d744c12e5d43783123c2d07d450a0ad0472' }))));
41
41
  }
42
42
  static get is() { return "duet-menu-bar-link"; }
43
43
  static get encapsulation() { return "shadow"; }
@@ -338,14 +338,14 @@ export class DuetModal {
338
338
  var _a, _b;
339
339
  const iconColor = postfixTheme("primary", this.theme);
340
340
  const closeColor = postfixTheme("secondary", this.theme);
341
- const closingButton = (h("div", { key: 'fd461f380d0e2fbb5a70ef8f26e48f115b56f89b', class: "duet-modal-close" }, h("duet-button", { key: '9fb5ccf76de515731d82db147700750f6fa60bef', ref: button => (this.buttonEl = button), variation: "plain", accessibleLabel: this.accessibleCloseLabel, color: closeColor, iconSize: "large", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: ev => this.closeModal(ev), fixed: true })));
342
- return (h("div", { key: '8c4fc72b13a5323157f7c310116df9130e47cd31', ref: modal => (this.modalEl = modal), "aria-label": (_a = this.accessibleLabel) !== null && _a !== void 0 ? _a : this.heading, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, role: this.variation === "loader" ? "alert" : "dialog", "aria-modal": this.isSafariBrowser ? false : true, tabindex: "-1", class: {
341
+ const closingButton = (h("div", { key: 'b61aef40272ef152a04b32009608462e6edbef70', class: "duet-modal-close" }, h("duet-button", { key: '33eaf633dc95c400fc36c3d3c492ab09d4669eb5', ref: button => (this.buttonEl = button), variation: "plain", accessibleLabel: this.accessibleCloseLabel, color: closeColor, iconSize: "large", icon: "navigation-close", iconOnly: true, margin: "none", theme: this.theme, onClick: ev => this.closeModal(ev), fixed: true })));
342
+ return (h("div", { key: '90cf02b79031ce0131f2dec7e4d92557de03678f', ref: modal => (this.modalEl = modal), "aria-label": (_a = this.accessibleLabel) !== null && _a !== void 0 ? _a : this.heading, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, role: this.variation === "loader" ? "alert" : "dialog", "aria-modal": this.isSafariBrowser ? false : true, tabindex: "-1", class: {
343
343
  "duet-modal-container": true,
344
344
  "duet-theme-turva": this.theme === "turva",
345
345
  "duet-modal-active": this.open,
346
346
  "duet-modal-slide-up": this.variation === "slide-up",
347
347
  "duet-modal-has-sticky-header": this.hasStickyHeader,
348
- } }, h("duet-overlay", { key: 'ebf2ff8efe9f08e8dd44f1d75375a54791b48554', "z-index": "-1", visible: this.open, variation: this.variation === "loader" ? "white" : "default" }), h("div", { key: '095f2c04849d438c73a2277c80d8b2ec63c6fdbc', ref: modalInner => (this.modalInnerEl = modalInner), class: {
348
+ } }, h("duet-overlay", { key: '8a3e89ba3597519bb8db927cf22e104ae4673de6', "z-index": "-1", visible: this.open, variation: this.variation === "loader" ? "white" : "default" }), h("div", { key: 'b6bb8c2df5b032e0c0ac71938735caa11ad2533f', ref: modalInner => (this.modalInnerEl = modalInner), class: {
349
349
  "duet-modal-inner": true,
350
350
  [this.size]: true,
351
351
  "duet-modal-slide-up": this.variation === "slide-up",
@@ -356,22 +356,22 @@ export class DuetModal {
356
356
  this.closeModal(e);
357
357
  }
358
358
  }
359
- } }, h("div", { key: '68ca043011c51c1a99856ea8b06497662a60e405', ref: modalContentEl => (this.modalContentEl = modalContentEl), "aria-live": this.accessibleAnnounceChanges === "all" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "all" ? "true" : null, class: {
359
+ } }, h("div", { key: '155d1d6da0f2606cb31ef316f097852d7cdb7025', ref: modalContentEl => (this.modalContentEl = modalContentEl), "aria-live": this.accessibleAnnounceChanges === "all" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "all" ? "true" : null, class: {
360
360
  "duet-modal": true,
361
361
  "duet-modal-has-sticky-header": this.hasStickyHeader,
362
362
  [this.size]: true,
363
363
  [this.variation]: true,
364
- } }, this.gutterSize !== "none" && !this.hasStickyHeader && h("duet-spacer", { key: '7a037fda3dcd6a08a7d22cad0e6e28100a1cb574' }), this.hasStickyHeader ? (h("div", { class: "duet-modal-sticky-header" }, closingButton, h("slot", { name: "sticky-header" }))) : (closingButton), h("div", { key: '90380b2213043c4d9d0d69a2488219e15e6ad158', class: {
364
+ } }, this.gutterSize !== "none" && !this.hasStickyHeader && h("duet-spacer", { key: 'acb1064c87210fd405931e54f517a74fffd1f838' }), this.hasStickyHeader ? (h("div", { class: "duet-modal-sticky-header" }, closingButton, h("slot", { name: "sticky-header" }))) : (closingButton), h("div", { key: '602e0ef7ab4dcfb571b492b000d9287583462376', class: {
365
365
  "duet-modal-body": true,
366
366
  "duet-modal-gutter-none": this.gutterSize === "none",
367
367
  "duet-modal-gutter-small": this.gutterSize === "small",
368
368
  "duet-modal-gutter-medium": this.gutterSize === "medium",
369
369
  "duet-modal-gutter-large": this.gutterSize === "large",
370
- }, "aria-live": this.accessibleAnnounceChanges === "heading" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "heading" ? "true" : null }, h("div", { key: 'c2605486cc494359f133ec421a1f66925ec643b7', class: "duet-modal-header" }, h("span", { key: '5ed69dddc69fb34dcaa1a2ebb07682768ec83881', class: "duet-modal-inner-slot-top" }, h("slot", { key: '9e92ea62266e5e454f22d47d48709781127ecc35', name: "top" })), this.icon && h("duet-icon", { key: '366a9d0c83c8a9a38eea87be43053c21c67683b2', name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (h("duet-heading", { key: '3e5cffc154099a45a665f18d7f479fb42fbb1b2d', "visual-level": (_b = this.headingVisualLevel) !== null && _b !== void 0 ? _b : this.headingLevel, level: this.headingLevel, theme: this.theme }, this.heading))), this.variation === "loader" && (h("div", { key: '36eaa02389bb00b2afec0e1fc7672b250808d34f', class: "duet-modal-spinner" }, h("duet-spinner", { key: 'ee98841b09402fb9727a27813a4b49ea9a51cd18', size: "large", color: postfixTheme("primary", this.theme) }))), h("div", { key: 'cdd00ccee49853a90c6765e14478190297dab89f', "aria-live": this.variation === "loader"
370
+ }, "aria-live": this.accessibleAnnounceChanges === "heading" ? "polite" : null, "aria-atomic": this.accessibleAnnounceChanges === "heading" ? "true" : null }, h("div", { key: '17b2404b57b5a363c9e75a3c1d0c803805c9f124', class: "duet-modal-header" }, h("span", { key: 'aad3dc7341703d4b5e1820e5560086a09ea01d73', class: "duet-modal-inner-slot-top" }, h("slot", { key: 'f2704ee80a6a925a0ac2dba6f7ca5ffb66725d5c', name: "top" })), this.icon && h("duet-icon", { key: '127d2a74dcecbc31a452318d8b491b8b720ed69d', name: this.icon, size: "xx-large", color: this.color || iconColor }), this.heading && (h("duet-heading", { key: 'f7c9cd02320985bb5ede9e1bb87415349986e62c', "visual-level": (_b = this.headingVisualLevel) !== null && _b !== void 0 ? _b : this.headingLevel, level: this.headingLevel, theme: this.theme }, this.heading))), this.variation === "loader" && (h("div", { key: 'e6078337de87fc1f449347b1b8164a03b397efc9', class: "duet-modal-spinner" }, h("duet-spinner", { key: '08ded544a2c7cd799d0492beacd599df3b7be785', size: "large", color: postfixTheme("primary", this.theme) }))), h("div", { key: 'bf23f204e215b36e9a0ebf752e52d850d5b62e24', "aria-live": this.variation === "loader"
371
371
  ? "assertive"
372
372
  : this.accessibleAnnounceChanges === "body"
373
373
  ? "polite"
374
- : null, "aria-atomic": this.accessibleAnnounceChanges === "body" ? "true" : null, class: "duet-modal-inner-slot-default", ref: el => (this.slotContainerEl = el) }, h("slot", { key: 'eec9c0f2f52c6899a30f718b2a3851024513ac6c' })))))));
374
+ : null, "aria-atomic": this.accessibleAnnounceChanges === "body" ? "true" : null, class: "duet-modal-inner-slot-default", ref: el => (this.slotContainerEl = el) }, h("slot", { key: 'a9cae84bfc443ad938f202e5760a5dbae540bc84' })))))));
375
375
  }
376
376
  static get is() { return "duet-modal"; }
377
377
  static get encapsulation() { return "shadow"; }
@@ -273,23 +273,23 @@ export class DuetMultiselect {
273
273
  */
274
274
  render() {
275
275
  var _a;
276
- return (h(Host, { key: 'e7bafb6f7f67fe15832b45d8cdc41dcd7e92dae4', class: {
276
+ return (h(Host, { key: '2347a9fc6542af294322242041d6881e7d46705a', class: {
277
277
  "duet-m-0": this.margin === "none",
278
278
  "duet-expand": this.expand,
279
- } }, h("div", { key: 'cf9862f8b3e66d9795bd4b7b2f4eca3d9f859f3c', class: {
279
+ } }, h("div", { key: '956a141db6a505bace52938e5fe4806494f45159', class: {
280
280
  "duet-multiselect-container": true,
281
281
  "duet-label-hidden": this.labelHidden,
282
282
  "duet-theme-turva": this.theme === "turva",
283
283
  "duet-input-top-caption-shown": this.isCaptionVisible,
284
284
  "has-error": !!this.error,
285
- }, onKeyDown: (e) => this.onMultiselectKeyDown(e) }, h(DuetInternalLabel, { key: '31852687c9ee4e4f63c2f376baa9293f09b3a00f', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: this.identifier }, this.label), this.tooltip && (h("duet-tooltip", { key: 'ad2331d66bb9f05709613cabac0f07dc36065348', class: "duet-multiselect-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), h("slot", { key: '46122e6d06e90ad528508fd0c1c5c50cea8114a5', name: "tooltip" }), this.caption && (h("duet-caption", { key: '2d7206f213cde3a3352cc140422c1e70d88ee600', id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { key: '3f3a61d30ee5b12e8c553eb0a1b2ca80521b8bd1', class: "duet-multiselect-wrapper" }, h("button", { key: 'b390211b2df1aa3868851d08ddef63cf81e1fa1e', id: this.identifier, ref: el => (this.multiselectElement = el), class: { "duet-multiselect": true, "duet-multiselect-active": this.checkboxesVisible }, tabindex: "0", onClick: () => this.toggleCheckboxes(), onFocus: e => this.onFocus(e), onBlur: e => this.onBlur(e), role: "combobox", "aria-expanded": this.checkboxesVisible ? "true" : "false", "aria-haspopup": "listbox", "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-owns": `${this.identifier}-checkboxes`, onKeyDown: (e) => this.onMultiselectInputKeyDown(e), disabled: this.disabled }, h("span", { key: '6c9c680ebc96c84d95b1acc926f20591a4565b65', role: "textbox", "aria-readonly": "true", "aria-multiline": "false", "aria-autocomplete": "none", "aria-controls": `${this.identifier}-checkboxes`, "aria-label": this.placeholderLabel[this.language], class: "duet-multiselect-label" }, this.placeholder), this.value && this.value.length > 0 && (h("span", { key: '8ef490613a38e9fead0de56dee3144478b714127', class: "duet-multiselect-badge" }, this.value.length, h("duet-visually-hidden", { key: '6f83ac83ff72705964aef84d3e36fcb242956d2e' }, this.selectedLangObject[this.language], ",", " ", Array.isArray(this.value) ? this.value.map(item => item.label).join(", ") : ""))), h("svg", { key: 'd525c6e90ddbb4e6b9bc26db22a9acc1806f2c5c', class: { "duet-multiselect-icon": true, "duet-multiselect-icon--rotate": this.checkboxesVisible }, fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '7b9323ff55af45a96af4ee68d00fa5eb8a3cc04c', d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" }))), h("div", { key: '3ce28709f3fb9e2e0c43f2e584d642fe7b185566', id: `${this.identifier}-checkboxes`, role: "listbox", class: {
285
+ }, onKeyDown: (e) => this.onMultiselectKeyDown(e) }, h(DuetInternalLabel, { key: '2f23d51d3671879786ba1407b56ae3222f9a5bf5', theme: this.theme === "turva" ? "turva" : "default", class: { "duet-has-tooltip": !!this.tooltip }, color: this.labelColor, weight: this.labelWeight, id: this.labelId, for: this.identifier }, this.label), this.tooltip && (h("duet-tooltip", { key: '85a8c563721a63f0a34cce7cc459dd18d6280194', class: "duet-multiselect-tooltip", direction: this.tooltipDirection, accessibleInputLabel: this.label }, this.tooltip)), h("slot", { key: '56a2689eeda397d20a42b167ddb099b920107e26', name: "tooltip" }), this.caption && (h("duet-caption", { key: '0c8e2c9a01b16cd4dcfa46d4e9ad7a656d5a3c74', id: this.topCaptionId, size: "medium" }, this.caption)), h("div", { key: '4436df38933bbd41698bd155d710c0d2216d1f6d', class: "duet-multiselect-wrapper" }, h("button", { key: '99022f18da86f4373ff64c74a52dace5a2bd7d60', id: this.identifier, ref: el => (this.multiselectElement = el), class: { "duet-multiselect": true, "duet-multiselect-active": this.checkboxesVisible }, tabindex: "0", onClick: () => this.toggleCheckboxes(), onFocus: e => this.onFocus(e), onBlur: e => this.onBlur(e), role: "combobox", "aria-expanded": this.checkboxesVisible ? "true" : "false", "aria-haspopup": "listbox", "aria-labelledby": this.labelId, "aria-describedby": this.getDescribedBy(), "aria-owns": `${this.identifier}-checkboxes`, onKeyDown: (e) => this.onMultiselectInputKeyDown(e), disabled: this.disabled }, h("span", { key: 'e64ce99653325421f0618ad642a840e4b0cd3695', role: "textbox", "aria-readonly": "true", "aria-multiline": "false", "aria-autocomplete": "none", "aria-controls": `${this.identifier}-checkboxes`, "aria-label": this.placeholderLabel[this.language], class: "duet-multiselect-label" }, this.placeholder), this.value && this.value.length > 0 && (h("span", { key: 'ead81f383496a853979310009d9899727eca2585', class: "duet-multiselect-badge" }, this.value.length, h("duet-visually-hidden", { key: '34142a17a4b013c56292dff2eb224f6544afa95e' }, this.selectedLangObject[this.language], ",", " ", Array.isArray(this.value) ? this.value.map(item => item.label).join(", ") : ""))), h("svg", { key: '0608e4eb2995dcc8f02a1c92c35b5cbf545f7ad5', class: { "duet-multiselect-icon": true, "duet-multiselect-icon--rotate": this.checkboxesVisible }, fill: "currentColor", viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '0b9a5d56df9e428d036f77c886fce63855aeae12', d: "m12 18.999c-.4 0-.776-.156-1.059-.438l-10.721-10.72c-.142-.142-.22-.33-.22-.531 0-.2.078-.389.22-.53.142-.142.33-.22.53-.22s.389.078.53.22l10.72 10.719 10.72-10.719c.142-.142.33-.22.53-.22s.389.078.53.22c.142.142.22.33.22.53s-.078.389-.22.53l-10.72 10.72c-.282.283-.659.439-1.06.439z" }))), h("div", { key: 'ae5eb2b331307f54eeab1c6728f289dcda6b3f27', id: `${this.identifier}-checkboxes`, role: "listbox", class: {
286
286
  "duet-multiselect-checkboxes": true,
287
287
  "duet-multiselect-checkboxes-active": this.checkboxesVisible,
288
- }, "aria-activedescendant": this.activeDescendant, "aria-multiselectable": "true" }, ((_a = this.processedItems) === null || _a === void 0 ? void 0 : _a.length) && this.allControls && (h("div", { key: 'fc635dab9da4efdc971744990b2e67ecf8add18f', class: "duet-multiselect-all-control-buttons" }, h("button", { key: 'c6633f193f708b41108cac277c8d1156a9ee5808', class: "duet-multiselect-select-all", onClick: this.handleSelectAllClick, id: this.getOptionIdentifier(-2), onKeyDown: (e) => this.onCheckboxKeyDown(e, -2) }, this.selectAllLabel[this.language]), h("button", { key: '193d3314537bb45d45981a890fbe569201af3355', class: "duet-multiselect-clear-all", onClick: this.handleClearAllClick, id: this.getOptionIdentifier(-1), onKeyDown: (e) => this.onCheckboxKeyDown(e, -1) }, this.clearAllLabel[this.language]))), this.processedItems &&
288
+ }, "aria-activedescendant": this.activeDescendant, "aria-multiselectable": "true" }, ((_a = this.processedItems) === null || _a === void 0 ? void 0 : _a.length) && this.allControls && (h("div", { key: 'd5883b8ebe1c051efd79ddb1f79dc78e5fddeb47', class: "duet-multiselect-all-control-buttons" }, h("button", { key: '24482082ed2715da5f7c57cce55e2c68da043f07', class: "duet-multiselect-select-all", onClick: this.handleSelectAllClick, id: this.getOptionIdentifier(-2), onKeyDown: (e) => this.onCheckboxKeyDown(e, -2) }, this.selectAllLabel[this.language]), h("button", { key: '5c900fa9f95cf21ca22c498212ec6cbd72e23139', class: "duet-multiselect-clear-all", onClick: this.handleClearAllClick, id: this.getOptionIdentifier(-1), onKeyDown: (e) => this.onCheckboxKeyDown(e, -1) }, this.clearAllLabel[this.language]))), this.processedItems &&
289
289
  this.processedGroups.map(group => (h("fieldset", null, group.label && h("legend", null, group.label), group.items.map((item, key) => {
290
290
  var _a, _b;
291
291
  return (h("duet-checkbox", { identifier: this.getOptionIdentifier(key), role: "option", label: item.label, value: item.value, key: item.value, checked: (_a = this.value) === null || _a === void 0 ? void 0 : _a.includes(item), "accessible-selected": ((_b = this.value) === null || _b === void 0 ? void 0 : _b.includes(item)) ? "true" : undefined, disabled: !this.checkboxesVisible || item.disabled, onDuetChange: e => this.toggleCheckbox(e, item), onKeyDown: (e) => this.onCheckboxKeyDown(e, key), theme: this.theme }));
292
- })))))), h("span", { key: 'b30e788d0beee3756dc076b305352c9831a6f68c', class: "duet-multiselect-help duet-multiselect-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: '7e024019a7f6d8f010a48a83bb4b4770a98e32e4' }, this.error)))));
292
+ })))))), h("span", { key: '733dfa1e852f5b450de3e11e7d9bd9516c1c6284', class: "duet-multiselect-help duet-multiselect-error", id: this.errorId, "aria-atomic": "true", "aria-live": this.accessibleLiveError, "aria-relevant": "additions removals" }, this.error && h("span", { key: '4535a77dbbb418ceb1c63d423e390324f5d0f18d' }, this.error)))));
293
293
  }
294
294
  static get is() { return "duet-multiselect"; }
295
295
  static get encapsulation() { return "shadow"; }
@@ -31,7 +31,7 @@ export class DuetNav {
31
31
  * Always the last one in the class.
32
32
  */
33
33
  render() {
34
- return (h(Host, { key: '524bb027510763efb06f908c78bb6dbc1ff1e24d' }, h("div", { key: '7c86cae3a491c2c568ec09ab7a7dacc935d906be', class: { container: true, sticky: this.sticky } }, h("slot", { key: 'dae33a4dfc1ddd973d4639adc9b711a99bb0256c' }), h("slot", { key: 'ac0da76490e7c39bee65dc53ed368afdecb640a7', name: "mobile" }), h("slot", { key: '5081c449ebbba8d68dec069e18155f8fce9ad87e', name: "desktop" }))));
34
+ return (h(Host, { key: '7e22b4d7023564579ca7e937ea9b3e1c41383217' }, h("div", { key: 'cbd604f24c3d48b16771529aaf84590fbe2c349e', class: { container: true, sticky: this.sticky } }, h("slot", { key: '6d354508134cf4f829922e1d12b9163ed8796753' }), h("slot", { key: '2cde080603a8252ec4015dedd7166b3d3c59b945', name: "mobile" }), h("slot", { key: '9654b2dfc61dbbb9833a8b5df624bdb92adadc15', name: "desktop" }))));
35
35
  }
36
36
  static get is() { return "duet-nav"; }
37
37
  static get encapsulation() { return "shadow"; }
@@ -79,11 +79,11 @@ export class DuetNotification {
79
79
  return `${indicatorText}${slottedText}${slottedText.endsWith(".") ? "" : "."} ${this.date}`;
80
80
  }
81
81
  render() {
82
- return (h("div", { key: '8497858acf685b75adce100af83521ea62dad249', role: "listitem", class: {
82
+ return (h("div", { key: '0c265034a28ae5591df26cf2603ab3d045b45478', role: "listitem", class: {
83
83
  "duet-notification": true,
84
84
  "duet-notification-highlight": this.highlight,
85
85
  "duet-theme-turva": this.theme === "turva",
86
- } }, h("a", { key: 'd055bb5cebbf8d33eb35d193d1bb1fa106c5ec49', ref: element => (this.linkElement = element), href: this.url, target: this.external ? "_blank" : "_self", "aria-label": this.getAriaLabelText() }, h("div", { key: '37b18aada4bbdcc07fbae2fb2a379e4ce499d1a2', class: "duet-notification-container" }, h("div", { key: 'd82a6a30c51dcbe9fa55d184f9475ee52824c960', class: "duet-indicator-container" }, this.highlight && (h("duet-indicator", { key: 'ba8cf675f5f79738b621bb60be60e955648f72fb', variation: "new", "accessible-label": this.accessibleLabelUnread }))), h("div", { key: '7616f1c0b61f842cb19959f8a26d972740d4983c', class: "duet-notification-content" }, h("slot", { key: '3d15bf405f3f7e6bb7b699835882720db81c60ac' })), h("div", { key: '479850eacc300888b148101759908b962db1d24a', class: "duet-notification-date" }, this.date)))));
86
+ } }, h("a", { key: '8f26b04ba38b69dcb86b0ab8b6820ad63453c831', ref: element => (this.linkElement = element), href: this.url, target: this.external ? "_blank" : "_self", "aria-label": this.getAriaLabelText() }, h("div", { key: 'e573dfed62263051b2841cb36cfe1b3c00db8e50', class: "duet-notification-container" }, h("div", { key: '0e4d1b7fec55b7c69043f3beebefff071f2d1e04', class: "duet-indicator-container" }, this.highlight && (h("duet-indicator", { key: 'e9086498a4ef7534f5a68956dad0a811486b41b1', variation: "new", "accessible-label": this.accessibleLabelUnread }))), h("div", { key: 'd02944064c8c7842fb5556f2eadef2fc11aad3bd', class: "duet-notification-content" }, h("slot", { key: 'f4de0aed88ff1f2545d2d630c299fa7e73e62a67' })), h("div", { key: '8486cd8ac2797612ceae89c720b184c3e2f52805', class: "duet-notification-date" }, this.date)))));
87
87
  }
88
88
  static get is() { return "duet-notification"; }
89
89
  static get encapsulation() { return "shadow"; }
@@ -126,13 +126,13 @@ export class DuetNotificationDrawer {
126
126
  * Always the last one in the class.
127
127
  */
128
128
  render() {
129
- return (h("div", { key: '5a100874ee332b5f81a62d4d398273cfb1b039e6', class: {
129
+ return (h("div", { key: '8e97a8e6a2058296cc10026f42860f3bb895b2a3', class: {
130
130
  "duet-drawer": true,
131
131
  "duet-theme-turva": this.theme === "turva",
132
- }, onKeyDown: this.handleKeyDown }, h("button", { key: '5f4027d95ace3dbcf790932b8fcc55c197acfeec', ref: el => (this.drawerButtonEl = el), type: "button", class: {
132
+ }, onKeyDown: this.handleKeyDown }, h("button", { key: 'b13ac8ee8dab57c43589f2a07ce1c3093aa19b8c', ref: el => (this.drawerButtonEl = el), type: "button", class: {
133
133
  "duet-drawer-toggle": true,
134
134
  "duet-theme-turva": this.theme === "turva",
135
- }, id: "duet-drawer-toggle", "aria-controls": "duet-drawer-content", "aria-expanded": this.isOpen ? "true" : "false", onClick: this.toggleMenu }, this.icon && (h("div", { key: 'd23738346a3b9c9a977fac31c44686b300f8c3f8', class: "duet-drawer-icon" }, h("duet-icon", { key: '9ce663baf3e178117742894d71342eeb0f306b8a', margin: "none", size: "x-small", name: this.icon, color: "currentColor" }), this.badge && h("duet-indicator", { key: '135c19cacc21c20599e1250c19b2cb9af6ca1edb', variation: "change" }))), h("span", { key: 'cc45c180750b2237fc49015944f664ea23f1c50c', class: "duet-drawer-label" }, this.label), h("div", { key: 'c268d18597783a3fcd307bb07813526d97039ae4', class: "duet-drawer-caret" }, h("duet-icon", { key: '8d34addc1a9e1bbb1d4d9db02873e8ce1ceded11', margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" }))), h("div", { key: '1bd28344339dc98c5f9173997921badf217c64c0', id: "duet-drawer-content", class: {
135
+ }, id: "duet-drawer-toggle", "aria-controls": "duet-drawer-content", "aria-expanded": this.isOpen ? "true" : "false", onClick: this.toggleMenu }, this.icon && (h("div", { key: 'bd4969fcb3d1f150d6a90b6c51a30c6be85edc75', class: "duet-drawer-icon" }, h("duet-icon", { key: 'd5ff03e6dc3d7149488ec7c2de6377ee31ddbd16', margin: "none", size: "x-small", name: this.icon, color: "currentColor" }), this.badge && h("duet-indicator", { key: 'f79d92d82b2d2d60b4df0e272d0d394d61fd63db', variation: "change" }))), h("span", { key: '1199f0cd40d583e1c01df562f08bcf60b4698526', class: "duet-drawer-label" }, this.label), h("div", { key: '2e37bb3393dbae08571b683c09b674d7bc3e1e86', class: "duet-drawer-caret" }, h("duet-icon", { key: 'ec6d5078dfdfe96c112b9116518cfd0a61d03852', margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" }))), h("div", { key: 'c09a322633b12ba12e6cc18a9bec6a8a96590dc2', id: "duet-drawer-content", class: {
136
136
  "duet-drawer-content": true,
137
137
  "duet-drawer-right": this.direction === "right",
138
138
  "duet-drawer-left": this.direction === "left",
@@ -8,7 +8,7 @@ import { inheritGlobalTheme } from "../../common";
8
8
  import { createID } from "../../utils/create-id";
9
9
  import { isArrowDownKey, isArrowLeftKey, isArrowRightKey, isArrowUpKey, isBackspaceKey, subscribeTabbingChange, unsubscribeTabbingChange, } from "../../utils/keyboard-utils";
10
10
  import { connectLanguageChangeObserver, disconnectLanguageChangeObserver, getLanguage, getLocale, getLocaleString, } from "../../utils/language-utils";
11
- import { clamp, roundTo, SafeParseFloat } from "../../utils/math.utils";
11
+ import { clamp, isInteger, roundTo, SafeParseFloat } from "../../utils/math.utils";
12
12
  import { checkNamedSlotElement, proxyInputToSlot } from "../../utils/slot-utils";
13
13
  /**
14
14
  * @slot tooltip - Use to place a tooltip alongside the label.
@@ -142,7 +142,8 @@ export class DuetNumberInput {
142
142
  */
143
143
  this.tooltip = "";
144
144
  /**
145
- * Step amount.
145
+ * Step amount. Note that decimal values as step (e.g. 0.01) may produce unexpected results and thus are strongly
146
+ * discouraged (but for backwards compatibility still accepted).
146
147
  */
147
148
  this.step = 5000;
148
149
  /**
@@ -294,7 +295,7 @@ export class DuetNumberInput {
294
295
  // handle cases where value is not multiple of step
295
296
  // e.g. if someone enters 199, with a step of 100, add should go to 200
296
297
  // and if someone enters 101, add should also go to 200
297
- if (newValue % this.step !== 0) {
298
+ if (isInteger(this.step) && newValue % this.step !== 0) {
298
299
  const adjustment = newValue % this.step;
299
300
  newValue -= adjustment;
300
301
  }
@@ -317,7 +318,7 @@ export class DuetNumberInput {
317
318
  // handle cases where value is not multiple of step
318
319
  // if someone enters 199, with a step of 100, subtract should go to 100
319
320
  // and if someone enters 101, subtract should also go to 100
320
- if (newValue % this.step !== 0) {
321
+ if (isInteger(this.step) && newValue % this.step !== 0) {
321
322
  const adjustment = this.step - (newValue % this.step);
322
323
  newValue += adjustment;
323
324
  }
@@ -393,15 +394,15 @@ export class DuetNumberInput {
393
394
  const identifier = this.identifier || this.inputId;
394
395
  const maxlength = `${this.localizeValue(this.max)}${this.getUnitString()}`.length;
395
396
  const cleanedValue = !!this.value ? SafeParseFloat(this.value, this.locale) : null;
396
- return (h(Host, { key: '57eac991277459719dcade2b546edefadcb8871f', class: {
397
+ return (h(Host, { key: '81daee26177116322c1048713a28d09d8a36afe3', class: {
397
398
  "duet-theme-turva": this.theme === "turva",
398
399
  "duet-expand": this.expand,
399
400
  "duet-m-0": this.margin === "none",
400
- } }, h("div", { key: '4d7f3b727a098c85311caf342b8ec3346c355b03', class: "duet-number-container" }, h("duet-input", { key: 'd35dedfc296c7b6f7e02a8a44426a939ba57834f', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value}${this.getUnitString()}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, h("slot", { key: 'e5860f54edf1658f5ad57a74f02e287029c1c80a', name: "tooltip" }), h("div", { key: '627ac970632ff026d545f5510ee3444beddcd78f', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, h("button", { key: '7db5fc9647aa97d03e12889341f4842240ec168a', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, h("duet-visually-hidden", { key: '213bff89b72eab57e824a7ccbdd8cf93176379b0' }, this.accessibleSubtract
401
+ } }, h("div", { key: 'f7ff1854e40887b3b3aa14be2d350c23ec364c7a', class: "duet-number-container" }, h("duet-input", { key: 'a05dd4922337179d6fbc1b84cc0fbcd1c168f508', ref: input => (this.duetInputElement = input), onDuetChange: event => this.handleChange(event), onDuetFocus: this.handleFocus, onDuetBlur: event => this.handleBlur(event), onKeyDown: event => this.handleKeyDown(event), label: this.label, value: this.value ? `${this.value}${this.getUnitString()}` : "", error: this.error, "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": cleanedValue != null ? cleanedValue : "", maxlength: maxlength, name: this.name, component: "number", required: this.required, disabled: this.disabled, role: this.role, labelHidden: this.labelHidden, tooltip: this.tooltip, identifier: identifier, theme: this.theme, margin: "none", expand: true, numericKeyboard: true, autoComplete: "off", type: "text", accessibleActiveDescendant: this.accessibleActiveDescendant, accessibleLabelledBy: this.accessibleLabelledBy, accessibleDescription: this.accessibleDescription, accessibleDetails: this.accessibleDetails, accessibleControls: this.accessibleControls, accessibleOwns: this.accessibleOwns, accessibleDescribedBy: this.accessibleDescribedBy }, h("slot", { key: '45828645242ce4779aeae9368f0631de124e855b', name: "tooltip", slot: "tooltip" }), h("div", { key: '229d18fbba76520c64109a4300dec29378432aac', class: { "duet-number-buttons": true, "duet-no-label": this.labelHidden } }, h("button", { key: '49918d06cee7e8878266d3f3ed9295d9fbf31102', disabled: this.disabled, "aria-disabled": cleanedValue == null || cleanedValue === this.min ? "true" : "false", class: "duet-number-button duet-number-button-subtract", onClick: this.subtract, type: "button" }, h("duet-visually-hidden", { key: '894e200f0b7ee004486e07d5a7f4c59640066da3' }, this.accessibleSubtract
401
402
  .replace(/\{\s*step\s*\}/, `${this.step}`)
402
- .replace(/\{\s*unit\s*\}/, `${this.unit}`)), h("duet-icon", { key: '19a80d9db5a8709544dd93813a507dcf0f0f5530', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), h("button", { key: '63d32e8db7089552645fed533d4bb537b17ac397', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, h("duet-visually-hidden", { key: '9662d147e10aa5b1b71d5d64a299a6fc9b5d376d' }, this.accessibleAdd
403
+ .replace(/\{\s*unit\s*\}/, `${this.unit}`)), h("duet-icon", { key: 'eee91808ec61039f59fd9c7df8fba1c7f0c558cd', icon: subtractIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })), h("button", { key: 'f146b62278677f506fa9c047bcf759432e3bd6c9', disabled: this.disabled, "aria-disabled": cleanedValue === this.max ? "true" : "false", class: "duet-number-button duet-number-button-add", onClick: this.add, type: "button" }, h("duet-visually-hidden", { key: '8f0efec2146187d6b3781d635c8445ee3673f032' }, this.accessibleAdd
403
404
  .replace(/\{\s*step\s*\}/, `${this.step}`)
404
- .replace(/\{\s*unit\s*\}/, `${this.unit}`)), h("duet-icon", { key: 'f6bd61234faa0d4c46e87d095b777c0d2deb4daf', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (h("duet-visually-hidden", { key: '77c6dc2c84affba33a53c9875b4baaa77d633280', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
405
+ .replace(/\{\s*unit\s*\}/, `${this.unit}`)), h("duet-icon", { key: '12e8a56782a15e7788e7a087a46aff0535991517', icon: addIcon.svg, size: "small", margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary" })))), this.accessibleLiveEnabled && (h("duet-visually-hidden", { key: 'cd675e89f9f78297f98bf0ec110d0013ccf0354b', "aria-live": "polite", "aria-atomic": "true", "aria-relevant": "all" }, this.formatAnnouncement())))));
405
406
  }
406
407
  static get is() { return "duet-number-input"; }
407
408
  static get encapsulation() { return "shadow"; }
@@ -1082,7 +1083,7 @@ export class DuetNumberInput {
1082
1083
  "optional": false,
1083
1084
  "docs": {
1084
1085
  "tags": [],
1085
- "text": "Step amount."
1086
+ "text": "Step amount. Note that decimal values as step (e.g. 0.01) may produce unexpected results and thus are strongly\ndiscouraged (but for backwards compatibility still accepted)."
1086
1087
  },
1087
1088
  "getter": false,
1088
1089
  "setter": false,
@@ -59,7 +59,7 @@ export class DuetOverlay {
59
59
  * Always the last one in the class.
60
60
  */
61
61
  render() {
62
- return (h(Host, { key: '022e03bd6245ccf60d2b1f5b2067b68e97722f0f', "aria-hidden": "true" }, h("div", { key: 'b29aabf87beb396113a3bcda0cc6fbdecfabc797', style: { zIndex: this.zIndex }, class: {
62
+ return (h(Host, { key: 'd947da491d318a4bb83befcfc756e140c9531881', "aria-hidden": "true" }, h("div", { key: 'afaa04313e1d9cb640378e12084495ffb3d35409', style: { zIndex: this.zIndex }, class: {
63
63
  "duet-overlay": true,
64
64
  "duet-theme-turva": this.theme === "turva",
65
65
  "keep-stacking-context": this.keepStackingContext,
@@ -82,10 +82,16 @@
82
82
  max-width: 744px;
83
83
  padding: 48px 90px 16px 0;
84
84
  }
85
+ .duet-page-heading .heading.has-back-button {
86
+ padding-top: 72px;
87
+ }
85
88
  @media (min-width: 48em) {
86
89
  .duet-page-heading .heading {
87
90
  padding: 72px 150px 40px 0;
88
91
  }
92
+ .duet-page-heading .heading.has-back-button {
93
+ padding-top: 94px;
94
+ }
89
95
  }
90
96
  .duet-page-heading:not(.has-icon) .heading {
91
97
  padding-right: 0;
@@ -172,11 +178,14 @@
172
178
  width: 60px;
173
179
  height: 85px;
174
180
  height: 60px;
175
- background: rgba(0, 119, 179, 0.75);
181
+ background: rgba(0, 119, 179, 0.9);
176
182
  border-radius: 25%;
177
183
  mix-blend-mode: normal;
178
184
  transform: rotate(7deg);
179
185
  }
186
+ .duet-page-heading .background .brand-shaped-icon.secondary-background {
187
+ background: rgba(8, 42, 77, 0.85);
188
+ }
180
189
  @media (min-width: 48em) {
181
190
  .duet-page-heading .background .brand-shaped-icon {
182
191
  right: 36px;
@@ -209,6 +218,16 @@
209
218
  .duet-page-heading .progress-step.active {
210
219
  background-color: rgb(0, 119, 179);
211
220
  }
221
+ .duet-page-heading .button-container {
222
+ position: absolute;
223
+ top: 20px;
224
+ left: 0;
225
+ }
226
+ @media (min-width: 48em) {
227
+ .duet-page-heading .button-container {
228
+ top: 36px;
229
+ }
230
+ }
212
231
 
213
232
  .duet-page-heading.duet-theme-turva {
214
233
  font-family: "turva-sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
@@ -3,19 +3,30 @@
3
3
  */
4
4
  import { h } from "@stencil/core";
5
5
  import { inheritGlobalTheme } from "../../common/themeable-component";
6
+ import { checkNamedSlotElement, hasSlot } from "../../utils/slot-utils";
6
7
  /**
7
8
  * @slot heading - This is a slot for heading content.
9
+ * @slot button - This is a slot for button visually above the heading. Use only variation "plain" button.
8
10
  */
9
11
  export class DuetPageHeading {
10
12
  constructor() {
13
+ this.hasButtonSlot = false;
11
14
  /**
12
15
  * Theme of the hero area.
13
16
  */
14
17
  this.theme = "";
18
+ /**
19
+ * LähiTapiola theme includes a brand shape at the top by default. Set to "none" to omit it. Has no effect for Turva.
20
+ */
21
+ this.shape = "auto";
15
22
  /**
16
23
  * Icon.
17
24
  */
18
25
  this.icon = "";
26
+ /**
27
+ * With LähiTapiola theme the icon can have secondary background instead of default. This has no effect on Turva theme.
28
+ */
29
+ this.iconBackground = "default";
19
30
  /**
20
31
  * Layout.
21
32
  * Values narrow and fluid are deprecated.
@@ -27,6 +38,8 @@ export class DuetPageHeading {
27
38
  */
28
39
  componentWillLoad() {
29
40
  inheritGlobalTheme(this);
41
+ this.hasButtonSlot = hasSlot(this.element, "button");
42
+ checkNamedSlotElement(this.element, "button", "duet-button[variation=plain]");
30
43
  }
31
44
  progressIndicator() {
32
45
  return (h("div", { class: "progress-indicator" }, Array.from({ length: Math.ceil(this.progressTotalSteps) }, (_, i) => {
@@ -43,12 +56,15 @@ export class DuetPageHeading {
43
56
  */
44
57
  render() {
45
58
  const layout = this.layout === "narrow" ? "narrow" : this.layout === "fluid" ? "fluid" : "auto";
46
- return (h("div", { key: 'f353e792c29cf6a49513529f3a54740bf2894dcc', class: {
59
+ return (h("div", { key: 'ea4be735731e17f47330bab5ecb5e9d65795a539', class: {
47
60
  "duet-page-heading": true,
48
61
  "duet-theme-turva": this.theme === "turva",
49
62
  "has-icon": !!this.icon,
50
63
  [layout]: true,
51
- } }, h("div", { key: 'b8a5a752d4557b2ac2ac2bfc1c2e65861d4c0521', class: "background" }, this.theme === "turva" && h("div", { key: 'ff9cbab91c325792d84f24d227d67b5bd2f83401', class: "background-mask" }), this.theme !== "turva" && h("div", { key: 'c697b3df64c3300caccb801818e16e0f82be19b4', class: "brand-shape" }), this.theme !== "turva" && h("div", { key: '86bea79fd3c261f4042b7f55129cf5b3e2bbcc20', class: "brand-shape second-shape" }), this.icon && (h("div", { key: 'f95cb3034647398542c7eac251e3a8ee589fde3c', class: "brand-shaped-icon" }, h("duet-icon", { key: '5ea162f55f426e4fb23d062c42b452f9d02dd8db', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), h("div", { key: 'ca049bcfa7903693dcd81e7053f9c8436f5bc972', class: "heading" }, h("slot", { key: '1f11d60c4883d6a083ab58a3549230893373a4b0', name: "heading" }), this.progressCurrentStep !== undefined && this.progressTotalSteps > 0 && (h("div", { key: '3d192a48b6d2f852c76bb4cca92a6bd260c89b6d' }, h("duet-spacer", { key: 'ae3a5aa598bca7741ddeefb498ad03a00f01ffa1', size: "large" }), h("div", { key: '145b65c13423049136df5afff6d6f0b75fceeff2', role: "presentation" }, this.progressIndicator()))))));
64
+ } }, h("div", { key: 'e159d4b2942446b90f8e09a492f57a6fa974d51f', class: "background" }, this.theme === "turva" && h("div", { key: '4f268e0c0adead476a918f94a41e9c6bd6fbe40e', class: "background-mask" }), this.theme !== "turva" && this.shape !== "none" && h("div", { key: 'daf14331254bc8f0b5181e0a803f0057f169e629', class: "brand-shape" }), this.theme !== "turva" && this.shape !== "none" && h("div", { key: 'a663ecceca1b90420088f692cb8bda12d579537d', class: "brand-shape second-shape" }), this.icon && (h("div", { key: '9ea7885cc662e52f2df4d8a42557797280ba3ca3', class: {
65
+ "brand-shaped-icon": true,
66
+ "secondary-background": this.iconBackground === "secondary" && this.theme !== "turva",
67
+ } }, h("duet-icon", { key: '7edd9a52e8a515d9b946db7d3fdb95fa62ffa058', background: "none", name: this.icon, margin: "none", size: "auto", responsive: false })))), h("div", { key: '85a7494fc13886d24677ee09bf86ccca61ee31cd', class: { heading: true, "has-back-button": this.hasButtonSlot } }, h("slot", { key: '8c25416fc8f80c50830e36a2e2b1f47b609d0798', name: "heading" }), this.hasButtonSlot && (h("div", { key: '198528161f296ee1a0bfedbd1e567dde1b552783', class: "button-container" }, h("slot", { key: 'effe866326f9b75d678775a643d1e05f266b36fa', name: "button" }))), this.progressCurrentStep !== undefined && this.progressTotalSteps > 0 && (h("div", { key: 'ab91a8ea60a18ad94a053b4d0e1ac1259cd1fbb9' }, h("duet-spacer", { key: '6f8e47579eeb1a2b3450dab080fb93ec8ad9a2da', size: "large" }), h("div", { key: '0602fe82a2bbf284687559d342c8b6589070f196', role: "presentation" }, this.progressIndicator()))))));
52
68
  }
53
69
  static get is() { return "duet-page-heading"; }
54
70
  static get encapsulation() { return "shadow"; }
@@ -90,6 +106,26 @@ export class DuetPageHeading {
90
106
  "reflect": false,
91
107
  "defaultValue": "\"\""
92
108
  },
109
+ "shape": {
110
+ "type": "string",
111
+ "attribute": "shape",
112
+ "mutable": false,
113
+ "complexType": {
114
+ "original": "\"auto\" | \"none\"",
115
+ "resolved": "\"auto\" | \"none\"",
116
+ "references": {}
117
+ },
118
+ "required": false,
119
+ "optional": false,
120
+ "docs": {
121
+ "tags": [],
122
+ "text": "L\u00E4hiTapiola theme includes a brand shape at the top by default. Set to \"none\" to omit it. Has no effect for Turva."
123
+ },
124
+ "getter": false,
125
+ "setter": false,
126
+ "reflect": false,
127
+ "defaultValue": "\"auto\""
128
+ },
93
129
  "icon": {
94
130
  "type": "string",
95
131
  "attribute": "icon",
@@ -116,6 +152,26 @@ export class DuetPageHeading {
116
152
  "reflect": false,
117
153
  "defaultValue": "\"\""
118
154
  },
155
+ "iconBackground": {
156
+ "type": "string",
157
+ "attribute": "icon-background",
158
+ "mutable": false,
159
+ "complexType": {
160
+ "original": "\"default\" | \"secondary\"",
161
+ "resolved": "\"default\" | \"secondary\"",
162
+ "references": {}
163
+ },
164
+ "required": false,
165
+ "optional": false,
166
+ "docs": {
167
+ "tags": [],
168
+ "text": "With L\u00E4hiTapiola theme the icon can have secondary background instead of default. This has no effect on Turva theme."
169
+ },
170
+ "getter": false,
171
+ "setter": false,
172
+ "reflect": false,
173
+ "defaultValue": "\"default\""
174
+ },
119
175
  "layout": {
120
176
  "type": "string",
121
177
  "attribute": "layout",
@@ -242,14 +242,13 @@ export class DuetPagination {
242
242
  calculatePageTake() {
243
243
  this.totalPages = Math.ceil(this.total / this.take);
244
244
  }
245
- //set update current when mouse click on page number
245
+ // Update current when mouse click on arrow buttons
246
246
  async onMouseHandler(e, dir) {
247
247
  if (this.disabled) {
248
248
  return;
249
249
  }
250
250
  if (!this.processedPageLinks) {
251
251
  e.preventDefault();
252
- e.stopPropagation();
253
252
  this.current = this.current + dir;
254
253
  }
255
254
  this.emitPageEvent(e);
@@ -394,32 +393,32 @@ export class DuetPagination {
394
393
  * Always the last one in the class.
395
394
  */
396
395
  render() {
397
- return (h(Host, { key: '07c38979b231dbf5a56713a66a5b185d4c3e2822', onKeyDown: e => this.onKeyboardDown(e), class: { "duet-theme-turva": this.theme === "turva" } }, h("nav", { key: '128744d916789820fba42f8475d2d2ce86ba42c8', role: "navigation", "aria-labelledby": this.accessibleLabelledBy ? `${this.accessibleLabelledBy} ${this.listId}` : this.listId, "aria-describedby": this.accessibleDescribedBy ? `${this.accessibleDescribedBy} ${this.listId}` : this.listId, "aria-descriptions": this.accessibleDescription, "aria-details": this.accessibleDetails, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
396
+ return (h(Host, { key: '7aae3263adf71d77b03be07c9ad260a4f4754159', onKeyDown: e => this.onKeyboardDown(e), class: { "duet-theme-turva": this.theme === "turva" } }, h("nav", { key: 'ad020bd94ffb14b4b41fe139ab7e377deeeead12', role: "navigation", "aria-labelledby": this.accessibleLabelledBy ? `${this.accessibleLabelledBy} ${this.listId}` : this.listId, "aria-describedby": this.accessibleDescribedBy ? `${this.accessibleDescribedBy} ${this.listId}` : this.listId, "aria-descriptions": this.accessibleDescription, "aria-details": this.accessibleDetails, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
398
397
  "duet-pagination-nav": true,
399
398
  [`duet-pagination-variation-${this.variation}`]: true,
400
- } }, this.numbersStore !== "" && (h("div", { key: '2666aa8028eb8270455a0fa5cfe4db71cc5a2705', "aria-live": "assertive", "aria-relevant": "text", class: "duet-pagination-overlay", "aria-label": `${this.accessibleLabels.jump_to} ${this.numbersStore}`, part: "navigation-overlay" }, h("duet-badge", { key: '5006048f11b634ac53981dd1de48d24786763bce', theme: this.theme }, "jump to page : ", this.numbersStore))), h("ol", { key: '6359ab5b15062ff7533365dbf693745cd8c20363', id: this.listId, class: {
399
+ } }, this.numbersStore !== "" && (h("div", { key: '599cfcdc99c0f726f838efb59a5d18def811fec3', "aria-live": "assertive", "aria-relevant": "text", class: "duet-pagination-overlay", "aria-label": `${this.accessibleLabels.jump_to} ${this.numbersStore}`, part: "navigation-overlay" }, h("duet-badge", { key: '2376939fe48f1501856eabe413317653defbb0e0', theme: this.theme }, "jump to page : ", this.numbersStore))), h("ol", { key: '0763fd9a3261cded9a37c556ee63d55fea0beec5', id: this.listId, class: {
401
400
  "duet-pagination": true,
402
401
  "duet-pagination-is-dimmed": this.numbersStore !== "",
403
- }, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: '9ed757c34264a5d9b98faf0a497a188720a9496e', class: {
402
+ }, role: "menubar", "aria-label": this.accessibleLabels.pagination_label, "aria-description": this.accessibleLabels.description }, (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: 'b9779196cb93bee395de3583880280c988db2891', class: {
404
403
  "duet-pagination-page-button": true,
405
404
  "duet-pagination-button-first": true,
406
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'e5a376e51af5edecd2631bb8b3cf02610545692e', disabled: (this.internalSectionIndex === 0 && this.current <= 1) || this.disabled, "data-direction": "back", accessibleLabel: this.accessibleLabels.first_page, title: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), "icon-name": "action-move-to-first", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }))), h("li", { key: '168de5258be5f0f7008e100d4683fc02c3064581', class: {
405
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'fb1e5c5aa1262fa16b1723ec810757d830f62738', disabled: (this.internalSectionIndex === 0 && this.current <= 1) || this.disabled, "data-direction": "back", accessibleLabel: this.accessibleLabels.first_page, title: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), "icon-name": "action-move-to-first", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }))), h("li", { key: '90fbdfd8f5c54e45a73e354771a2f3661467b1bb', class: {
407
406
  "duet-pagination-page-button": true,
408
407
  "duet-pagination-button-first": true,
409
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'af5ba5fa8e2b376f0b27f523283447cf28147a7e', disabled: !!((this.internalSectionIndex === 0 && this.current <= 1) ||
408
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '93ebdbe18cdfca563aa5e6dc12a4a4fd6f68f639', disabled: !!((this.internalSectionIndex === 0 && this.current <= 1) ||
410
409
  (this.current <= 1 && this.processedPageLinks) ||
411
- this.disabled), "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "accessible-label": this.accessibleLabels.previous_page, title: this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current - 2] : undefined })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (h(Fragment, { key: '7bd37d481400c119a456c8b652eb3d692e5fd494' }, h("li", { key: '4992a1986eb573d5202077e46ad00b6421993d1e', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: '508172776a6640e80e3ab8194de2e337a884bff6', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-back", "center-text": "true", variation: "plain", color: this.theme !== "turva" ? "secondary" : "secondary-turva", margin: "none", accessibleLabel: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }, h("div", { key: '200db789756b44c9a2f5772d1dd47fb643941a8c', class: "duet-pagination-page-number" }, "1"))), h("li", { key: '671815628d37eb09a768187f86e5626bb83ff4e9', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: '10734ac5cb625203ea5bf3aa016b66eb8cc5107d', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-back", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.prev_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, -1), theme: this.theme }, h("div", { key: '7b995d636201ffbbb4e32c6867304d26cd9deb37', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026"))))), (this.shouldDisplayNavigation() && this.renderPageNumbers()) || this.renderSelect(), (this.internalSectionIndex + 1) * this.visibleItems < this.totalPages &&
412
- this.shouldDisplayNavigation() && (h(Fragment, { key: '7c4c1587b80070022309e8f809e1a5f1cda1c754' }, (this.internalSectionIndex + 1) * this.visibleItems !== this.totalPages - 1 && (h("li", { key: '7ed7e399d452f10d7950e4900ee99cb122f5f71c', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: '034dd1e1d88c51a2fd376dc412ad5c5d181bc24a', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.next_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, 1), theme: this.theme }, h("div", { key: '810bcd10da373edf7e7be89da5fcb36686a1e888', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026")))), h("li", { key: '5e03de6360345650ce6d286ecc553351620028d5', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: '3822ccc78f50fd0e6c0eb149a059fb6375c2dd9f', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), theme: this.theme, url: this.processedPageLinks
410
+ this.disabled), "data-direction": "back", onClick: e => this.onMouseHandler(e, -1), "accessible-label": this.accessibleLabels.previous_page, title: this.accessibleLabels.previous_page, "icon-name": "action-arrow-left-small", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current - 2] : undefined })), this.internalSectionIndex !== 0 && this.shouldDisplayNavigation() && (h(Fragment, { key: '8b2dbe89ac7c1684e82ee77a43f0f2ca8d9b89a8' }, h("li", { key: '4f3ebacb88d1f21b2f358d443328bd59eec10264', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: 'ab65423e15d3a7cbd4c4fddf42f976e3c0ba9ea2', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-back", "center-text": "true", variation: "plain", color: this.theme !== "turva" ? "secondary" : "secondary-turva", margin: "none", accessibleLabel: this.accessibleLabels.first_page, onClick: e => this.jumpToStart(e), theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[0] : undefined }, h("div", { key: '469b36535535c82356ae0aa5bb58dd1771d47dd2', class: "duet-pagination-page-number" }, "1"))), h("li", { key: '222dcd79d07ae767593df35766d0ebb1686e16ee', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: 'cf4ec1ba0cb36a0c2cd00b8a388f472a58a2e326', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-back", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.prev_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, -1), theme: this.theme }, h("div", { key: '4a9496ccdfdc6475a581a76b618897cd8e81c175', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026"))))), (this.shouldDisplayNavigation() && this.renderPageNumbers()) || this.renderSelect(), (this.internalSectionIndex + 1) * this.visibleItems < this.totalPages &&
411
+ this.shouldDisplayNavigation() && (h(Fragment, { key: '7168d8184d99f05d1ceb390687004810f43cf957' }, (this.internalSectionIndex + 1) * this.visibleItems !== this.totalPages - 1 && (h("li", { key: 'f2497085cb58ccb9c65db6f9699ff4b0d45e881d', class: "duet-pagination-item", role: "menuitem", part: "navigation-section" }, h("duet-button", { key: '9eb3a7eb684367f52a0bb31681402cf357b41493', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-dots-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.next_section.replace("{0}", `${this.visibleItems}`), onClick: e => this.sectionClickHandler(e, 1), theme: this.theme }, h("div", { key: '30e54f85dc44e0ab900c5ee84e1e581658fa625e', class: "duet-pagination-page-number", "aria-hidden": "true" }, "\u2026")))), h("li", { key: '86a7ea35747c42719c394062da51a74f147a8f0e', class: "duet-pagination-item", role: "menuitem", part: "navigation-jump" }, h("duet-button", { key: '136b42193fd165e8845aa55cbbfdc4c2234063ec', disabled: this.disabled, class: "duet-pagination-link duet-pagination-link-jump-forward", "center-text": "true", color: this.theme !== "turva" ? "secondary" : "secondary-turva", variation: "plain", margin: "none", accessibleLabel: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), theme: this.theme, url: this.processedPageLinks
413
412
  ? this.processedPageLinks[this.processedPageLinks.length - 1]
414
- : undefined }, h("div", { key: '0ad55ddc86b6b0edec485316998e67153924e760', class: "duet-pagination-page-number" }, this.totalPages))))), h("li", { key: 'fc2a275cd29e3c10162ada93effec7d8b85c4dfc', class: {
413
+ : undefined }, h("div", { key: '84e6618b71439ceea94b5be66dfc9ca935dee2df', class: "duet-pagination-page-number" }, this.totalPages))))), h("li", { key: '5cc6fc85a3cc763f9b5bb3f5bd7c2383e273f09d', class: {
415
414
  "duet-pagination-page-button": true,
416
415
  "duet-pagination-button-last": true,
417
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '3ff469847711467ad2604371688183007dca39de', disabled: !!((this.current === this.totalPages &&
416
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'd84bd849c47769f4863cb38218e8851e7ff88291', disabled: !!((this.current === this.totalPages &&
418
417
  this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1) ||
419
- (this.current === this.totalPages && this.processedPageLinks)) || this.disabled, class: "duet-date-dialog-next", "accessible-label": this.accessibleLabels.next_page, title: this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-move-to-next", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current] : undefined })), (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: '561178af1382559d15b047297d2ce3a1fb757587', class: {
418
+ (this.current === this.totalPages && this.processedPageLinks)) || this.disabled, class: "duet-date-dialog-next", "accessible-label": this.accessibleLabels.next_page, title: this.accessibleLabels.next_page, onClick: e => this.onMouseHandler(e, 1), "icon-name": "action-move-to-next", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.current] : undefined })), (this.variation === "compact" || this.matchesCompactBreakpoint) && (h("li", { key: '339d7f334ac903a87caa8699b31761b411a50c9d', class: {
420
419
  "duet-pagination-page-button": true,
421
420
  "duet-pagination-button-last": true,
422
- }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: 'e5a2489a00c27cceb92224b60fa17e301fb2607e', disabled: (this.current === this.totalPages &&
421
+ }, role: "menuitem", part: "navigation-arrow" }, h("duet-action-button", { key: '3179b9a09fec7d31c2830b91a6958dfa2cdad21f', disabled: (this.current === this.totalPages &&
423
422
  this.internalSectionIndex === Math.ceil(this.totalPages / this.visibleItems) - 1) ||
424
423
  this.disabled, accessibleLabel: this.accessibleLabels.last_page, title: this.accessibleLabels.last_page, onClick: e => this.jumpToEnd(e), "icon-name": "action-move-to-last", theme: this.theme, url: this.processedPageLinks ? this.processedPageLinks[this.totalPages - 1] : undefined })))))));
425
424
  }
@@ -30,14 +30,14 @@ export class DuetPanel {
30
30
  inheritGlobalTheme(this);
31
31
  }
32
32
  render() {
33
- return (h(Host, { key: '1de47ce04e9998565d49fc6786654bad4ab27b07', class: { "duet-m-0": this.margin === "none" } }, h("section", { key: 'fbd6b8aa69e37ad67a48b52c65097a1a18ca6c6b', "aria-label": this.accessibleLabel, "aria-labelledby": this.accessibleLabelledBy, "aria-describedby": this.accessibleDescribedBy, class: {
33
+ return (h(Host, { key: 'f245a3e1001c22a202f3568c3bb787d0733d6d06', class: { "duet-m-0": this.margin === "none" } }, h("section", { key: '8a2b28280d033811f77acd9160442b740f998394', "aria-label": this.accessibleLabel, "aria-labelledby": this.accessibleLabelledBy, "aria-describedby": this.accessibleDescribedBy, class: {
34
34
  "duet-panel": true,
35
35
  "duet-theme-turva": this.theme === "turva",
36
36
  [this.variation.split("-")[0]]: true,
37
37
  [this.variation.split("-")[1]]: true,
38
38
  [`padding-${this.padding}`]: true,
39
39
  border: this.border,
40
- } }, h("slot", { key: '8309057522fb581d231a752add39db842a9b655b' }))));
40
+ } }, h("slot", { key: '9d8fedee8a1747268476e62d802987401074f89f' }))));
41
41
  }
42
42
  static get is() { return "duet-panel"; }
43
43
  static get encapsulation() { return "shadow"; }
@@ -52,7 +52,7 @@ export class DuetParagraph {
52
52
  const color = getColorByName(this.color);
53
53
  // aria-describedby is to fix accessibility issue in Chrome where duet-paragraphs
54
54
  // are not announced when placed inside duet-modal
55
- return (h(Host, { key: '4cb0ecf0407180c626d975cfa824d88f54e551d6', "aria-describedby": this.id }, h("p", { key: '2177cf79dc10fdb930b6f4b84af7c49dead27ae3', id: this.id, class: {
55
+ return (h(Host, { key: 'c9571d612085644c30e1f218b12682df1c290b0c', "aria-describedby": this.id }, h("p", { key: 'bd24c521e2c48f5cc8bd221b94e21f6fe4cd6f8d', id: this.id, class: {
56
56
  "duet-paragraph": true,
57
57
  "duet-paragraph-small": this.size === "small",
58
58
  "duet-paragraph-semi-bold": this.weight === "semi-bold",
@@ -61,7 +61,7 @@ export class DuetParagraph {
61
61
  [this.variation]: true,
62
62
  "duet-theme-turva": this.theme === "turva",
63
63
  "duet-inherit-color": !this.color && this.inheritingParents.some(p => this.element.closest(p)),
64
- }, style: { color }, part: "duet-paragraph" }, h("slot", { key: '85e03942b92c85d0ed0dd2d33baefc5995188562' }))));
64
+ }, style: { color }, part: "duet-paragraph" }, h("slot", { key: '8b9f20872deb8cdc33aa95afdde6e492aa2d21d9' }))));
65
65
  }
66
66
  static get is() { return "duet-paragraph"; }
67
67
  static get encapsulation() { return "shadow"; }