@duetds/components 5.1.8 → 5.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (410) hide show
  1. package/hydrate/index.js +364 -118
  2. package/lib/cjs/{dom-66424ef2.js → dom-96576bce.js} +1 -1
  3. package/lib/cjs/duet-action-button.cjs.entry.js +16 -8
  4. package/lib/cjs/duet-alert.cjs.entry.js +2 -2
  5. package/lib/cjs/duet-badge.cjs.entry.js +2 -2
  6. package/lib/cjs/duet-breadcrumb.cjs.entry.js +2 -2
  7. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +3 -3
  8. package/lib/cjs/duet-button_2.cjs.entry.js +17 -2
  9. package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
  10. package/lib/cjs/duet-card.cjs.entry.js +2 -2
  11. package/lib/cjs/duet-checkbox.cjs.entry.js +15 -3
  12. package/lib/cjs/duet-choice_2.cjs.entry.js +16 -4
  13. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  14. package/lib/cjs/duet-combobox.cjs.entry.js +2 -2
  15. package/lib/cjs/duet-cookie-consent.cjs.entry.js +2 -2
  16. package/lib/cjs/duet-date-picker.cjs.entry.js +3 -4
  17. package/lib/cjs/duet-divider_2.cjs.entry.js +2 -2
  18. package/lib/cjs/duet-editable-table_3.cjs.entry.js +6 -6
  19. package/lib/cjs/duet-empty-state.cjs.entry.js +2 -2
  20. package/lib/cjs/duet-fieldset.cjs.entry.js +2 -2
  21. package/lib/cjs/duet-footer.cjs.entry.js +2 -2
  22. package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
  23. package/lib/cjs/duet-header_2.cjs.entry.js +3 -3
  24. package/lib/cjs/duet-hero.cjs.entry.js +2 -2
  25. package/lib/cjs/duet-icon.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-input_2.cjs.entry.js +18 -4
  27. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-list_2.cjs.entry.js +2 -2
  29. package/lib/cjs/duet-modal.cjs.entry.js +12 -4
  30. package/lib/cjs/duet-notification_2.cjs.entry.js +2 -2
  31. package/lib/cjs/duet-number-input.cjs.entry.js +106 -49
  32. package/lib/cjs/duet-pagination_2.cjs.entry.js +19 -3
  33. package/lib/cjs/duet-progress.cjs.entry.js +15 -3
  34. package/lib/cjs/duet-radio_2.cjs.entry.js +15 -3
  35. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  36. package/lib/cjs/duet-scrollable_3.cjs.entry.js +2 -2
  37. package/lib/cjs/duet-select.cjs.entry.js +2 -2
  38. package/lib/cjs/duet-step_2.cjs.entry.js +2 -2
  39. package/lib/cjs/duet-textarea.cjs.entry.js +17 -3
  40. package/lib/cjs/duet-toggle.cjs.entry.js +15 -3
  41. package/lib/cjs/duet-tooltip.cjs.entry.js +2 -2
  42. package/lib/cjs/duet-tray.cjs.entry.js +2 -2
  43. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  44. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  45. package/lib/cjs/duet.cjs.js +4 -4
  46. package/lib/cjs/{focus-utils-c63a36c6.js → focus-utils-7b09fa4b.js} +1 -1
  47. package/lib/cjs/{index-cfea8a15.js → index-3024eb44.js} +11 -9
  48. package/lib/cjs/loader.cjs.js +3 -3
  49. package/lib/cjs/{shadow-css-1ff2f74f.js → shadow-css-38b9e725.js} +2 -3
  50. package/lib/cjs/{themeable-component-940d3b50.js → themeable-component-fdeaef9f.js} +0 -0
  51. package/lib/collection/collection-manifest.json +1 -1
  52. package/lib/collection/{utils/form-components.js → common/a11y-component.js} +0 -0
  53. package/lib/collection/common/form-components.js +4 -0
  54. package/lib/collection/common/index.js +4 -0
  55. package/lib/collection/{utils → common}/themeable-component.js +0 -0
  56. package/lib/collection/components/duet-action-button/duet-action-button.js +57 -13
  57. package/lib/collection/components/duet-alert/duet-alert.js +1 -1
  58. package/lib/collection/components/duet-badge/duet-badge.js +1 -1
  59. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +1 -1
  60. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.css +1 -1
  61. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +1 -1
  62. package/lib/collection/components/duet-button/duet-button.js +70 -1
  63. package/lib/collection/components/duet-caption/duet-caption.js +1 -1
  64. package/lib/collection/components/duet-card/duet-card.js +1 -1
  65. package/lib/collection/components/duet-checkbox/duet-checkbox.js +68 -2
  66. package/lib/collection/components/duet-choice/duet-choice.js +68 -2
  67. package/lib/collection/components/duet-choice-group/duet-choice-group.js +1 -1
  68. package/lib/collection/components/duet-collapsible/duet-collapsible.js +1 -1
  69. package/lib/collection/components/duet-combobox/duet-combobox.js +1 -1
  70. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +1 -1
  71. package/lib/collection/components/duet-date-picker/duet-date-picker.js +1 -1
  72. package/lib/collection/components/duet-date-picker/utils.js +0 -1
  73. package/lib/collection/components/duet-divider/duet-divider.js +1 -1
  74. package/lib/collection/components/duet-editable-table/duet-editable-table.js +3 -2
  75. package/lib/collection/components/duet-empty-state/duet-empty-state.js +1 -1
  76. package/lib/collection/components/duet-fieldset/duet-fieldset.js +1 -1
  77. package/lib/collection/components/duet-footer/duet-footer.js +1 -1
  78. package/lib/collection/components/duet-grid-item/duet-grid-item.js +1 -1
  79. package/lib/collection/components/duet-header/duet-header.css +1 -1
  80. package/lib/collection/components/duet-header/duet-header.js +1 -1
  81. package/lib/collection/components/duet-heading/duet-heading.css +3 -0
  82. package/lib/collection/components/duet-heading/duet-heading.js +1 -1
  83. package/lib/collection/components/duet-hero/duet-hero.js +1 -1
  84. package/lib/collection/components/duet-icon/duet-icon.js +1 -1
  85. package/lib/collection/components/duet-input/duet-input.js +72 -4
  86. package/lib/collection/components/duet-label/duet-label.js +1 -1
  87. package/lib/collection/components/duet-link/duet-link.js +1 -1
  88. package/lib/collection/components/duet-list/duet-list.js +1 -1
  89. package/lib/collection/components/duet-logo/duet-logo.js +1 -1
  90. package/lib/collection/components/duet-modal/duet-modal.js +80 -2
  91. package/lib/collection/components/duet-notification/duet-notification.js +1 -1
  92. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +1 -1
  93. package/lib/collection/components/duet-number-input/duet-number-input.js +90 -29
  94. package/lib/collection/components/duet-pagination/duet-pagination.js +90 -2
  95. package/lib/collection/components/duet-paragraph/duet-paragraph.js +1 -1
  96. package/lib/collection/components/duet-progress/duet-progress.js +68 -2
  97. package/lib/collection/components/duet-radio/duet-radio.js +68 -2
  98. package/lib/collection/components/duet-radio-group/duet-radio-group.js +1 -1
  99. package/lib/collection/components/duet-range-slider/duet-range-slider.js +1 -1
  100. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +1 -1
  101. package/lib/collection/components/duet-scrollable/duet-scrollable.js +1 -1
  102. package/lib/collection/components/duet-select/duet-select.js +1 -1
  103. package/lib/collection/components/duet-spinner/duet-spinner.js +1 -1
  104. package/lib/collection/components/duet-step/duet-step.js +1 -1
  105. package/lib/collection/components/duet-stepper/duet-stepper.js +1 -1
  106. package/lib/collection/components/duet-tab-group/duet-tab-group.js +1 -1
  107. package/lib/collection/components/duet-table/duet-table.css +30 -18
  108. package/lib/collection/components/duet-table/duet-table.js +1 -1
  109. package/lib/collection/components/duet-textarea/duet-textarea.js +70 -2
  110. package/lib/collection/components/duet-toggle/duet-toggle.js +68 -2
  111. package/lib/collection/components/duet-tooltip/duet-tooltip.js +1 -1
  112. package/lib/collection/components/duet-tray/duet-tray.js +1 -1
  113. package/lib/collection/components/duet-upload/duet-upload.css +9 -1
  114. package/lib/collection/components/duet-upload/duet-upload.js +1 -1
  115. package/lib/collection/components/duet-upload/upload-editable-item-inprogres.js +0 -1
  116. package/lib/collection/utils/math.utils.js +76 -0
  117. package/lib/custom-elements-bundle/index.js +295 -105
  118. package/lib/duet/duet.esm.js +1 -1
  119. package/lib/duet/duet.js +1 -1
  120. package/lib/duet/{p-c7306ab6.system.entry.js → p-036b2f99.system.entry.js} +1 -1
  121. package/lib/duet/p-0522338d.system.entry.js +4 -0
  122. package/lib/duet/{p-897598ba.entry.js → p-053c3751.entry.js} +1 -1
  123. package/lib/duet/p-094b206c.entry.js +4 -0
  124. package/lib/duet/{p-3c47c2b3.system.entry.js → p-095b52f8.system.entry.js} +2 -2
  125. package/lib/duet/p-0f343566.system.entry.js +4 -0
  126. package/lib/duet/p-0fffc5fe.entry.js +4 -0
  127. package/lib/duet/{p-c15f6b6d.system.entry.js → p-1167bc0a.system.entry.js} +1 -1
  128. package/lib/duet/p-13db05ed.entry.js +4 -0
  129. package/lib/duet/p-15edabe0.entry.js +4 -0
  130. package/lib/duet/{p-0a8c1862.entry.js → p-16a1bfe4.entry.js} +1 -1
  131. package/lib/duet/{p-c6a3383d.entry.js → p-273b6543.entry.js} +1 -1
  132. package/lib/duet/p-27d9b918.entry.js +4 -0
  133. package/lib/duet/{p-f14203b8.system.entry.js → p-2cc240f9.system.entry.js} +1 -1
  134. package/lib/duet/p-2ee81c0d.system.entry.js +4 -0
  135. package/lib/duet/{p-439946a9.system.entry.js → p-31a56879.system.entry.js} +1 -1
  136. package/lib/duet/{p-6b03322b.system.js → p-33b3aba4.system.js} +0 -0
  137. package/lib/duet/p-35f011bf.system.js +5 -0
  138. package/lib/duet/{p-fa59ebf4.js → p-3b31184e.js} +0 -0
  139. package/lib/duet/{p-1483f29a.entry.js → p-4061e958.entry.js} +1 -1
  140. package/lib/duet/p-40ebab42.entry.js +4 -0
  141. package/lib/duet/p-465777cf.system.entry.js +4 -0
  142. package/lib/duet/{p-eee5e878.entry.js → p-484993a3.entry.js} +1 -1
  143. package/lib/duet/p-49fc4668.entry.js +4 -0
  144. package/lib/duet/{p-5a400c18.system.entry.js → p-4e2d8044.system.entry.js} +1 -1
  145. package/lib/duet/{p-abf8eaf7.js → p-4ebf1618.js} +0 -0
  146. package/lib/duet/{p-8115766f.entry.js → p-4ff48b81.entry.js} +1 -1
  147. package/lib/duet/{p-b36ca591.system.entry.js → p-50f27bbf.system.entry.js} +1 -1
  148. package/lib/duet/{p-bcb459ab.entry.js → p-5183d420.entry.js} +1 -1
  149. package/lib/duet/p-536bde7b.entry.js +4 -0
  150. package/lib/duet/p-53b8ff1e.system.entry.js +4 -0
  151. package/lib/duet/{p-f47c3d89.system.entry.js → p-55a7c445.system.entry.js} +2 -2
  152. package/lib/duet/{p-6cb203fe.system.entry.js → p-56d12aca.system.entry.js} +1 -1
  153. package/lib/duet/{p-173f45ea.entry.js → p-60ef49b0.entry.js} +1 -1
  154. package/lib/duet/{p-a123aed1.entry.js → p-6518b98d.entry.js} +1 -1
  155. package/lib/duet/{p-a7fa5d3c.system.entry.js → p-69180d4f.system.entry.js} +1 -1
  156. package/lib/duet/{p-64004291.system.entry.js → p-6e02a236.system.entry.js} +1 -1
  157. package/lib/duet/{p-1541ea7f.system.entry.js → p-6ed460f4.system.entry.js} +1 -1
  158. package/lib/duet/{p-ec16c35f.system.entry.js → p-720c6e22.system.entry.js} +1 -1
  159. package/lib/duet/{p-f6bcc3d6.system.entry.js → p-74e56aba.system.entry.js} +1 -1
  160. package/lib/duet/p-750330d5.entry.js +4 -0
  161. package/lib/duet/{p-f83da548.system.entry.js → p-76263b65.system.entry.js} +2 -2
  162. package/lib/duet/{p-f5fe7f71.entry.js → p-76c11fd4.entry.js} +1 -1
  163. package/lib/duet/p-798355c8.system.js +4 -0
  164. package/lib/duet/{p-e212c603.system.entry.js → p-7bf7db59.system.entry.js} +2 -2
  165. package/lib/duet/{p-dc93e47e.system.entry.js → p-7e951645.system.entry.js} +2 -2
  166. package/lib/duet/p-7ed17661.entry.js +4 -0
  167. package/lib/duet/{p-07507eaf.entry.js → p-7ef5c9a5.entry.js} +1 -1
  168. package/lib/duet/{p-11eae10d.system.entry.js → p-7f984c27.system.entry.js} +1 -1
  169. package/lib/duet/{p-c7193f83.system.entry.js → p-85be7c9f.system.entry.js} +1 -1
  170. package/lib/duet/p-867497c7.system.entry.js +4 -0
  171. package/lib/duet/{p-93728074.entry.js → p-869a8af0.entry.js} +1 -1
  172. package/lib/duet/{p-60cc813f.entry.js → p-8714d15d.entry.js} +1 -1
  173. package/lib/duet/p-876175fe.entry.js +4 -0
  174. package/lib/duet/{p-19baba2c.system.entry.js → p-88113f53.system.entry.js} +2 -2
  175. package/lib/duet/{p-fd191588.system.entry.js → p-8828fc2e.system.entry.js} +1 -1
  176. package/lib/duet/p-88996447.entry.js +4 -0
  177. package/lib/duet/p-8de3ea21.system.entry.js +4 -0
  178. package/lib/duet/p-8e9cbd88.entry.js +4 -0
  179. package/lib/duet/{p-87cddc77.entry.js → p-91a3e8db.entry.js} +1 -1
  180. package/lib/duet/{p-d893adf0.system.entry.js → p-927f850c.system.entry.js} +1 -1
  181. package/lib/duet/p-97b88959.system.entry.js +4 -0
  182. package/lib/duet/{p-4250a32c.system.entry.js → p-97bbef5f.system.entry.js} +2 -2
  183. package/lib/duet/{p-03c07265.entry.js → p-97d54e2d.entry.js} +1 -1
  184. package/lib/duet/{p-eaf8c9b9.system.entry.js → p-98cf83b0.system.entry.js} +1 -1
  185. package/lib/duet/{p-0e6b7e4b.entry.js → p-9954eddc.entry.js} +1 -1
  186. package/lib/duet/p-9d86935b.entry.js +4 -0
  187. package/lib/duet/p-a18f86a0.entry.js +4 -0
  188. package/lib/duet/{p-4578a009.system.entry.js → p-a36592fe.system.entry.js} +1 -1
  189. package/lib/duet/{p-99802812.system.js → p-a418cba4.system.js} +1 -1
  190. package/lib/duet/{p-a5c6944a.entry.js → p-ac368fcb.entry.js} +1 -1
  191. package/lib/duet/p-af4aafea.entry.js +4 -0
  192. package/lib/duet/p-b2a01d36.entry.js +4 -0
  193. package/lib/duet/{p-c42c606f.system.entry.js → p-b2e25ecf.system.entry.js} +1 -1
  194. package/lib/duet/{p-542af014.system.js → p-b668b67c.system.js} +0 -0
  195. package/lib/duet/p-b708426c.entry.js +4 -0
  196. package/lib/duet/p-b7a90031.entry.js +4 -0
  197. package/lib/duet/{p-3a1e3e0e.system.entry.js → p-bf052bc0.system.entry.js} +1 -1
  198. package/lib/duet/p-c21bd47a.js +5 -0
  199. package/lib/duet/{p-a2540f4c.entry.js → p-c576c929.entry.js} +1 -1
  200. package/lib/duet/{p-34cf4621.entry.js → p-c6e70db9.entry.js} +1 -1
  201. package/lib/duet/{p-66581277.system.entry.js → p-cabfb664.system.entry.js} +1 -1
  202. package/lib/duet/{p-15605c5b.system.entry.js → p-cd5ed901.system.entry.js} +1 -1
  203. package/lib/duet/{p-27d238c5.js → p-d4c234ed.js} +1 -1
  204. package/lib/duet/{p-dec7be82.system.entry.js → p-d65262fb.system.entry.js} +1 -1
  205. package/lib/duet/{p-29618e0a.system.entry.js → p-d698f01c.system.entry.js} +1 -1
  206. package/lib/duet/p-d7d0f3b7.entry.js +4 -0
  207. package/lib/duet/{p-34798fb8.entry.js → p-dc1f4e8a.entry.js} +1 -1
  208. package/lib/duet/{p-f97ad46b.system.entry.js → p-df6ebe8d.system.entry.js} +1 -1
  209. package/lib/duet/p-dfa712ca.js +4 -0
  210. package/lib/duet/{p-fb7c4c21.system.entry.js → p-eba2b43d.system.entry.js} +1 -1
  211. package/lib/duet/{p-0a6fe749.system.entry.js → p-ec55c00f.system.entry.js} +1 -1
  212. package/lib/duet/{p-4f13c3a9.entry.js → p-f3a98f22.entry.js} +1 -1
  213. package/lib/duet/{p-29757074.entry.js → p-f9501a56.entry.js} +1 -1
  214. package/lib/duet/p-ff46ec81.system.js +16 -0
  215. package/lib/esm/{dom-3c479050.js → dom-3dbcb0d8.js} +1 -1
  216. package/lib/esm/duet-action-button.entry.js +16 -8
  217. package/lib/esm/duet-alert.entry.js +2 -2
  218. package/lib/esm/duet-badge.entry.js +2 -2
  219. package/lib/esm/duet-breadcrumb.entry.js +2 -2
  220. package/lib/esm/duet-breadcrumbs.entry.js +3 -3
  221. package/lib/esm/duet-button_2.entry.js +17 -2
  222. package/lib/esm/duet-caption_4.entry.js +3 -3
  223. package/lib/esm/duet-card.entry.js +2 -2
  224. package/lib/esm/duet-checkbox.entry.js +15 -3
  225. package/lib/esm/duet-choice_2.entry.js +16 -4
  226. package/lib/esm/duet-collapsible.entry.js +2 -2
  227. package/lib/esm/duet-combobox.entry.js +2 -2
  228. package/lib/esm/duet-cookie-consent.entry.js +2 -2
  229. package/lib/esm/duet-date-picker.entry.js +3 -4
  230. package/lib/esm/duet-divider_2.entry.js +2 -2
  231. package/lib/esm/duet-editable-table_3.entry.js +6 -6
  232. package/lib/esm/duet-empty-state.entry.js +2 -2
  233. package/lib/esm/duet-fieldset.entry.js +2 -2
  234. package/lib/esm/duet-footer.entry.js +2 -2
  235. package/lib/esm/duet-grid_2.entry.js +2 -2
  236. package/lib/esm/duet-header_2.entry.js +3 -3
  237. package/lib/esm/duet-hero.entry.js +2 -2
  238. package/lib/esm/duet-icon.entry.js +2 -2
  239. package/lib/esm/duet-input_2.entry.js +18 -4
  240. package/lib/esm/duet-layout.entry.js +1 -1
  241. package/lib/esm/duet-list_2.entry.js +2 -2
  242. package/lib/esm/duet-modal.entry.js +12 -4
  243. package/lib/esm/duet-notification_2.entry.js +2 -2
  244. package/lib/esm/duet-number-input.entry.js +106 -49
  245. package/lib/esm/duet-pagination_2.entry.js +19 -3
  246. package/lib/esm/duet-progress.entry.js +15 -3
  247. package/lib/esm/duet-radio_2.entry.js +15 -3
  248. package/lib/esm/duet-range-slider.entry.js +2 -2
  249. package/lib/esm/duet-scrollable_3.entry.js +2 -2
  250. package/lib/esm/duet-select.entry.js +2 -2
  251. package/lib/esm/duet-step_2.entry.js +2 -2
  252. package/lib/esm/duet-textarea.entry.js +17 -3
  253. package/lib/esm/duet-toggle.entry.js +15 -3
  254. package/lib/esm/duet-tooltip.entry.js +2 -2
  255. package/lib/esm/duet-tray.entry.js +2 -2
  256. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  257. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  258. package/lib/esm/duet.js +4 -4
  259. package/lib/esm/{focus-utils-b62b9ffc.js → focus-utils-a1fd6cac.js} +1 -1
  260. package/lib/esm/{index-f5582df1.js → index-179c634c.js} +11 -9
  261. package/lib/esm/loader.js +3 -3
  262. package/lib/esm/polyfills/css-shim.js +1 -1
  263. package/lib/esm/{shadow-css-fbe49d20.js → shadow-css-501eda9a.js} +2 -3
  264. package/lib/esm/{themeable-component-e8fc98bf.js → themeable-component-cb76be7c.js} +0 -0
  265. package/lib/esm-es5/{dom-3c479050.js → dom-3dbcb0d8.js} +0 -0
  266. package/lib/esm-es5/duet-action-button.entry.js +2 -2
  267. package/lib/esm-es5/duet-alert.entry.js +1 -1
  268. package/lib/esm-es5/duet-badge.entry.js +1 -1
  269. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  270. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  271. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  272. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  273. package/lib/esm-es5/duet-card.entry.js +1 -1
  274. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  275. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  276. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  277. package/lib/esm-es5/duet-combobox.entry.js +1 -1
  278. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  279. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  280. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  281. package/lib/esm-es5/duet-editable-table_3.entry.js +2 -2
  282. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  283. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  284. package/lib/esm-es5/duet-footer.entry.js +1 -1
  285. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  286. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  287. package/lib/esm-es5/duet-hero.entry.js +1 -1
  288. package/lib/esm-es5/duet-icon.entry.js +1 -1
  289. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  290. package/lib/esm-es5/duet-layout.entry.js +1 -1
  291. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  292. package/lib/esm-es5/duet-modal.entry.js +2 -2
  293. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  294. package/lib/esm-es5/duet-number-input.entry.js +2 -2
  295. package/lib/esm-es5/duet-pagination_2.entry.js +2 -2
  296. package/lib/esm-es5/duet-progress.entry.js +1 -1
  297. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  298. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  299. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  300. package/lib/esm-es5/duet-select.entry.js +1 -1
  301. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  302. package/lib/esm-es5/duet-textarea.entry.js +2 -2
  303. package/lib/esm-es5/duet-toggle.entry.js +2 -2
  304. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  305. package/lib/esm-es5/duet-tray.entry.js +1 -1
  306. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  307. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  308. package/lib/esm-es5/duet.js +1 -1
  309. package/lib/esm-es5/{focus-utils-b62b9ffc.js → focus-utils-a1fd6cac.js} +1 -1
  310. package/lib/esm-es5/index-179c634c.js +5 -0
  311. package/lib/esm-es5/loader.js +1 -1
  312. package/lib/esm-es5/shadow-css-501eda9a.js +15 -0
  313. package/lib/esm-es5/{themeable-component-e8fc98bf.js → themeable-component-cb76be7c.js} +0 -0
  314. package/lib/types/common/a11y-component.d.ts +13 -0
  315. package/lib/types/{utils → common}/form-components.d.ts +0 -1
  316. package/lib/types/common/index.d.ts +3 -0
  317. package/lib/types/{utils → common}/themeable-component.d.ts +0 -0
  318. package/lib/types/components/duet-action-button/duet-action-button.d.ts +15 -7
  319. package/lib/types/components/duet-alert/duet-alert.d.ts +1 -1
  320. package/lib/types/components/duet-badge/duet-badge.d.ts +1 -1
  321. package/lib/types/components/duet-breadcrumbs/duet-breadcrumb.d.ts +1 -1
  322. package/lib/types/components/duet-breadcrumbs/duet-breadcrumbs.d.ts +1 -1
  323. package/lib/types/components/duet-button/duet-button.d.ts +14 -3
  324. package/lib/types/components/duet-caption/duet-caption.d.ts +1 -1
  325. package/lib/types/components/duet-card/duet-card.d.ts +1 -1
  326. package/lib/types/components/duet-checkbox/duet-checkbox.d.ts +14 -3
  327. package/lib/types/components/duet-choice/duet-choice.d.ts +14 -3
  328. package/lib/types/components/duet-choice-group/duet-choice-group.d.ts +1 -1
  329. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +1 -1
  330. package/lib/types/components/duet-combobox/duet-combobox.d.ts +1 -1
  331. package/lib/types/components/duet-cookie-consent/duet-cookie-consent.d.ts +1 -1
  332. package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +2 -2
  333. package/lib/types/components/duet-divider/duet-divider.d.ts +1 -1
  334. package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +1 -1
  335. package/lib/types/components/duet-empty-state/duet-empty-state.d.ts +1 -1
  336. package/lib/types/components/duet-fieldset/duet-fieldset.d.ts +1 -1
  337. package/lib/types/components/duet-footer/duet-footer.d.ts +1 -1
  338. package/lib/types/components/duet-grid-item/duet-grid-item.d.ts +1 -1
  339. package/lib/types/components/duet-header/duet-header.d.ts +1 -1
  340. package/lib/types/components/duet-heading/duet-heading.d.ts +1 -1
  341. package/lib/types/components/duet-hero/duet-hero.d.ts +1 -1
  342. package/lib/types/components/duet-icon/duet-icon.d.ts +1 -1
  343. package/lib/types/components/duet-input/duet-input.d.ts +15 -4
  344. package/lib/types/components/duet-label/duet-label.d.ts +1 -1
  345. package/lib/types/components/duet-link/duet-link.d.ts +1 -1
  346. package/lib/types/components/duet-list/duet-list.d.ts +1 -1
  347. package/lib/types/components/duet-logo/duet-logo.d.ts +1 -1
  348. package/lib/types/components/duet-modal/duet-modal.d.ts +18 -2
  349. package/lib/types/components/duet-notification/duet-notification.d.ts +1 -1
  350. package/lib/types/components/duet-notification-drawer/duet-notification-drawer.d.ts +1 -1
  351. package/lib/types/components/duet-number-input/duet-number-input.d.ts +14 -4
  352. package/lib/types/components/duet-pagination/duet-pagination.d.ts +18 -2
  353. package/lib/types/components/duet-paragraph/duet-paragraph.d.ts +1 -1
  354. package/lib/types/components/duet-progress/duet-progress.d.ts +14 -2
  355. package/lib/types/components/duet-radio/duet-radio.d.ts +14 -3
  356. package/lib/types/components/duet-radio-group/duet-radio-group.d.ts +1 -1
  357. package/lib/types/components/duet-range-slider/duet-range-slider.d.ts +2 -2
  358. package/lib/types/components/duet-range-stepper/duet-range-stepper.d.ts +1 -1
  359. package/lib/types/components/duet-scrollable/duet-scrollable.d.ts +1 -1
  360. package/lib/types/components/duet-select/duet-select.d.ts +2 -2
  361. package/lib/types/components/duet-spinner/duet-spinner.d.ts +1 -1
  362. package/lib/types/components/duet-step/duet-step.d.ts +1 -1
  363. package/lib/types/components/duet-stepper/duet-stepper.d.ts +1 -1
  364. package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +1 -1
  365. package/lib/types/components/duet-table/duet-table.d.ts +1 -1
  366. package/lib/types/components/duet-textarea/duet-textarea.d.ts +14 -3
  367. package/lib/types/components/duet-toggle/duet-toggle.d.ts +14 -3
  368. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +1 -1
  369. package/lib/types/components/duet-tray/duet-tray.d.ts +1 -1
  370. package/lib/types/components/duet-upload/duet-upload.d.ts +2 -2
  371. package/lib/types/components.d.ts +520 -112
  372. package/lib/types/utils/math.utils.d.ts +11 -0
  373. package/package.json +8 -9
  374. package/lib/collection/components/duet-number-input/number-input-utils.js +0 -26
  375. package/lib/duet/p-01842017.entry.js +0 -4
  376. package/lib/duet/p-0965cfe4.entry.js +0 -4
  377. package/lib/duet/p-0c69febe.js +0 -4
  378. package/lib/duet/p-10916256.entry.js +0 -4
  379. package/lib/duet/p-23dba576.system.entry.js +0 -4
  380. package/lib/duet/p-28604a8c.entry.js +0 -4
  381. package/lib/duet/p-32c13bc9.entry.js +0 -4
  382. package/lib/duet/p-3aee83a1.entry.js +0 -4
  383. package/lib/duet/p-4d1eb579.entry.js +0 -4
  384. package/lib/duet/p-4d5c234a.entry.js +0 -4
  385. package/lib/duet/p-5801a726.system.entry.js +0 -4
  386. package/lib/duet/p-582d2285.entry.js +0 -4
  387. package/lib/duet/p-645027b3.entry.js +0 -4
  388. package/lib/duet/p-6d27eb2f.js +0 -4
  389. package/lib/duet/p-70ee0987.entry.js +0 -4
  390. package/lib/duet/p-76a4bb32.entry.js +0 -4
  391. package/lib/duet/p-7af04f14.entry.js +0 -4
  392. package/lib/duet/p-7bea9dea.system.js +0 -4
  393. package/lib/duet/p-7c01c28f.entry.js +0 -4
  394. package/lib/duet/p-81666e2f.entry.js +0 -4
  395. package/lib/duet/p-864d37c9.entry.js +0 -4
  396. package/lib/duet/p-92a25fb5.system.js +0 -16
  397. package/lib/duet/p-961bf024.entry.js +0 -4
  398. package/lib/duet/p-97fd533f.entry.js +0 -4
  399. package/lib/duet/p-a1d17cd4.system.entry.js +0 -4
  400. package/lib/duet/p-aa3544c4.entry.js +0 -4
  401. package/lib/duet/p-b51ab460.system.entry.js +0 -4
  402. package/lib/duet/p-b91c31a7.system.entry.js +0 -4
  403. package/lib/duet/p-c1326be0.system.entry.js +0 -4
  404. package/lib/duet/p-d5f96b6f.system.entry.js +0 -4
  405. package/lib/duet/p-d7b5c4bc.entry.js +0 -4
  406. package/lib/duet/p-dab62275.system.js +0 -4
  407. package/lib/duet/p-f1d98881.system.entry.js +0 -4
  408. package/lib/esm-es5/index-f5582df1.js +0 -4
  409. package/lib/esm-es5/shadow-css-fbe49d20.js +0 -15
  410. package/lib/types/components/duet-number-input/number-input-utils.d.ts +0 -4
@@ -2,11 +2,11 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Prop, State } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common";
5
6
  import { createID } from "../../utils/create-id";
6
7
  import { debounce } from "../../utils/js-utils";
7
8
  import { isKeyboardClick } from "../../utils/keyboard-utils";
8
9
  import { getLocaleString } from "../../utils/language-utils";
9
- import { inheritGlobalTheme } from "../../utils/themeable-component";
10
10
  import { getColorByName, shadeRGBColor } from "../../utils/token-utils";
11
11
  /**
12
12
  * Slot: default slot inside an invisible element, this can be used to enhance accessibility
@@ -65,15 +65,23 @@ export class DuetActionButton {
65
65
  /**
66
66
  * Described By id
67
67
  */
68
- this.ariaDescribedBy = undefined;
68
+ this.accessibleDescribedBy = undefined;
69
+ /**
70
+ * Details of the component
71
+ */
72
+ this.accessibleDetails = undefined;
73
+ /**
74
+ * String of id's that indicate alternative labels elements
75
+ */
76
+ this.accessibleLabelledBy = undefined;
69
77
  /**
70
78
  * Aria description the button
71
79
  */
72
- this.ariaDescription = undefined;
80
+ this.accessibleDescription = undefined;
73
81
  /**
74
82
  * Default pagination labels
75
83
  */
76
- this.ariaLabelsDefaults = {
84
+ this.accessibleLabelsDefaults = {
77
85
  en: {
78
86
  label: "Click to activate action",
79
87
  },
@@ -87,11 +95,11 @@ export class DuetActionButton {
87
95
  /**
88
96
  * Default pagination labels
89
97
  */
90
- this.ariaLabels = getLocaleString(this.ariaLabelsDefaults);
98
+ this.accessibleLabels = getLocaleString(this.accessibleLabelsDefaults);
91
99
  /**
92
100
  * Used to indicate which dom element with ID this element controls
93
101
  */
94
- this.ariaControls = "";
102
+ this.accessibleControls = "";
95
103
  this.listId = createID("duet-action-button");
96
104
  /**
97
105
  * Private methods.
@@ -161,7 +169,7 @@ export class DuetActionButton {
161
169
  "duet-action-button": true,
162
170
  "duet-action-button--disabled": this.disabled,
163
171
  [`duet-action-button--${this.theme}`]: this.theme !== "",
164
- }, type: "button", onClick: e => this.onMouseHandler(e), "aria-label": this.ariaLabels.label, "aria-description": this.ariaDescription, "aria-describedby": this.ariaDescribedBy, "aria-controls": this.ariaControls },
172
+ }, type: "button", onClick: e => this.onMouseHandler(e), "aria-label": this.accessibleLabels.label, "aria-labelledby": this.accessibleLabelledBy, "aria-description": this.accessibleDescription, "aria-describedby": this.accessibleDescribedBy, "aria-details": this.accessibleDetails, "aria-controls": this.accessibleControls },
165
173
  h("duet-icon", { part: "icon", name: this.iconName, color: this.iconColor, margin: "none", size: this.iconSize }),
166
174
  h("duet-visually-hidden", null,
167
175
  h("slot", null)))));
@@ -378,7 +386,7 @@ export class DuetActionButton {
378
386
  "reflect": false,
379
387
  "defaultValue": "\"\""
380
388
  },
381
- "ariaDescribedBy": {
389
+ "accessibleDescribedBy": {
382
390
  "type": "string",
383
391
  "mutable": false,
384
392
  "complexType": {
@@ -396,7 +404,43 @@ export class DuetActionButton {
396
404
  "reflect": false,
397
405
  "defaultValue": "undefined"
398
406
  },
399
- "ariaDescription": {
407
+ "accessibleDetails": {
408
+ "type": "string",
409
+ "mutable": false,
410
+ "complexType": {
411
+ "original": "string",
412
+ "resolved": "string",
413
+ "references": {}
414
+ },
415
+ "required": false,
416
+ "optional": false,
417
+ "docs": {
418
+ "tags": [],
419
+ "text": "Details of the component"
420
+ },
421
+ "attribute": "accessible-details",
422
+ "reflect": false,
423
+ "defaultValue": "undefined"
424
+ },
425
+ "accessibleLabelledBy": {
426
+ "type": "string",
427
+ "mutable": false,
428
+ "complexType": {
429
+ "original": "string",
430
+ "resolved": "string",
431
+ "references": {}
432
+ },
433
+ "required": false,
434
+ "optional": false,
435
+ "docs": {
436
+ "tags": [],
437
+ "text": "String of id's that indicate alternative labels elements"
438
+ },
439
+ "attribute": "accessible-labelled-by",
440
+ "reflect": false,
441
+ "defaultValue": "undefined"
442
+ },
443
+ "accessibleDescription": {
400
444
  "type": "string",
401
445
  "mutable": false,
402
446
  "complexType": {
@@ -414,7 +458,7 @@ export class DuetActionButton {
414
458
  "reflect": false,
415
459
  "defaultValue": "undefined"
416
460
  },
417
- "ariaLabelsDefaults": {
461
+ "accessibleLabelsDefaults": {
418
462
  "type": "unknown",
419
463
  "mutable": false,
420
464
  "complexType": {
@@ -435,7 +479,7 @@ export class DuetActionButton {
435
479
  },
436
480
  "defaultValue": "{\n en: {\n label: \"Click to activate action\",\n },\n fi: {\n label: \"Klikkaa toiminnon aktivointiin\",\n },\n sv: {\n label: \"Klicka f\u00F6r att aktivera \u00E5tg\u00E4rd\",\n },\n }"
437
481
  },
438
- "ariaLabels": {
482
+ "accessibleLabels": {
439
483
  "type": "unknown",
440
484
  "mutable": false,
441
485
  "complexType": {
@@ -453,9 +497,9 @@ export class DuetActionButton {
453
497
  "tags": [],
454
498
  "text": "Default pagination labels"
455
499
  },
456
- "defaultValue": "getLocaleString(\n this.ariaLabelsDefaults\n )"
500
+ "defaultValue": "getLocaleString(\n this.accessibleLabelsDefaults\n )"
457
501
  },
458
- "ariaControls": {
502
+ "accessibleControls": {
459
503
  "type": "string",
460
504
  "mutable": false,
461
505
  "complexType": {
@@ -2,8 +2,8 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Event, h, Host, Prop, State } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { getLocaleString } from "../../utils/language-utils";
6
- import { inheritGlobalTheme } from "../../utils/themeable-component";
7
7
  export class DuetAlert {
8
8
  constructor() {
9
9
  /**
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, h, Host, Prop } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetBadge {
7
7
  constructor() {
8
8
  /**
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, h, Host, Prop } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetBreadcrumb {
7
7
  constructor() {
8
8
  /**
@@ -49,7 +49,7 @@
49
49
  }
50
50
  .duet-breadcrumbs.duet-theme-turva ol {
51
51
  color: #171c3a;
52
- background: #fcf3f4;
52
+ background: #f5f5f7;
53
53
  }
54
54
  .duet-breadcrumbs .duet-breadrumbs-arrow {
55
55
  display: inherit;
@@ -3,8 +3,8 @@
3
3
  */
4
4
  import arrowRightSmallIcon from "@duetds/icons/lib/assets/action-arrow-right-small";
5
5
  import { Build, Component, Element, Fragment, h, Host, Prop, State } from "@stencil/core";
6
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
7
  import { getLocaleString } from "../../utils/language-utils";
7
- import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  export class DuetBreadcrumbs {
9
9
  constructor() {
10
10
  this.observers = [];
@@ -2,9 +2,9 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Method, Prop, Watch } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common";
5
6
  import { DuetStringsExternalDefaults } from "../../common-strings";
6
7
  import { getLanguage, getLocaleString } from "../../utils/language-utils";
7
- import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  import { getColorByName } from "../../utils/token-utils";
9
9
  export class DuetButton {
10
10
  constructor() {
@@ -12,6 +12,18 @@ export class DuetButton {
12
12
  * Use this property to add an aria-haspopup attribute to a button, if you are using it as a menu button.
13
13
  */
14
14
  this.accessiblePopup = "false";
15
+ /**
16
+ * Details of the component
17
+ */
18
+ this.accessibleDetails = undefined;
19
+ /**
20
+ * String of id's that indicate alternative labels elements
21
+ */
22
+ this.accessibleLabelledBy = undefined;
23
+ /**
24
+ * Aria description the button
25
+ */
26
+ this.accessibleDescription = undefined;
15
27
  /**
16
28
  * Loading state of the button
17
29
  */
@@ -223,6 +235,9 @@ export class DuetButton {
223
235
  "aria-activedescendant": this.accessibleActiveDescendant,
224
236
  "aria-owns": this.accessibleOwns,
225
237
  "aria-describedby": this.accessibleDescribedBy,
238
+ "aria-labelledby": this.accessibleLabelledBy,
239
+ "aria-details": this.accessibleDetails,
240
+ "aria-description": this.accessibleDescription,
226
241
  };
227
242
  return (h(Host, { onClick: this.handleClick, class: {
228
243
  "duet-m-0": this.margin === "none",
@@ -357,6 +372,60 @@ export class DuetButton {
357
372
  "attribute": "accessible-described-by",
358
373
  "reflect": false
359
374
  },
375
+ "accessibleDetails": {
376
+ "type": "string",
377
+ "mutable": false,
378
+ "complexType": {
379
+ "original": "string",
380
+ "resolved": "string",
381
+ "references": {}
382
+ },
383
+ "required": false,
384
+ "optional": false,
385
+ "docs": {
386
+ "tags": [],
387
+ "text": "Details of the component"
388
+ },
389
+ "attribute": "accessible-details",
390
+ "reflect": false,
391
+ "defaultValue": "undefined"
392
+ },
393
+ "accessibleLabelledBy": {
394
+ "type": "string",
395
+ "mutable": false,
396
+ "complexType": {
397
+ "original": "string",
398
+ "resolved": "string",
399
+ "references": {}
400
+ },
401
+ "required": false,
402
+ "optional": false,
403
+ "docs": {
404
+ "tags": [],
405
+ "text": "String of id's that indicate alternative labels elements"
406
+ },
407
+ "attribute": "accessible-labelled-by",
408
+ "reflect": false,
409
+ "defaultValue": "undefined"
410
+ },
411
+ "accessibleDescription": {
412
+ "type": "string",
413
+ "mutable": false,
414
+ "complexType": {
415
+ "original": "string",
416
+ "resolved": "string",
417
+ "references": {}
418
+ },
419
+ "required": false,
420
+ "optional": false,
421
+ "docs": {
422
+ "tags": [],
423
+ "text": "Aria description the button"
424
+ },
425
+ "attribute": "accessible-description",
426
+ "reflect": false,
427
+ "defaultValue": "undefined"
428
+ },
360
429
  "accessibleExpanded": {
361
430
  "type": "boolean",
362
431
  "mutable": false,
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, h, Host, Prop } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetCaption {
7
7
  constructor() {
8
8
  /**
@@ -3,10 +3,10 @@
3
3
  */
4
4
  import arrowUpIcon from "@duetds/icons/lib/assets/action-arrow-up";
5
5
  import { Component, Element, Event, Fragment, h, Host, Method, Prop } from "@stencil/core";
6
+ import { inheritGlobalTheme } from "../../common";
6
7
  import { createID } from "../../utils/create-id";
7
8
  import { isKeyboardClick } from "../../utils/keyboard-utils";
8
9
  import { sanitizeString } from "../../utils/string-utils";
9
- import { inheritGlobalTheme } from "../../utils/themeable-component";
10
10
  import { getColorByName } from "../../utils/token-utils";
11
11
  /**
12
12
  * @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
@@ -2,8 +2,8 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Method, Prop } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common";
5
6
  import { createID } from "../../utils/create-id";
6
- import { inheritGlobalTheme } from "../../utils/themeable-component";
7
7
  export class DuetCheckbox {
8
8
  constructor() {
9
9
  /**
@@ -14,6 +14,18 @@ export class DuetCheckbox {
14
14
  * Controls the margin of the component.
15
15
  */
16
16
  this.margin = "auto";
17
+ /**
18
+ * Aria Details of the component
19
+ */
20
+ this.accessibleDetails = undefined;
21
+ /**
22
+ * String of id's that indicate alternative labels elements
23
+ */
24
+ this.accessibleLabelledBy = undefined;
25
+ /**
26
+ * Aria description the button
27
+ */
28
+ this.accessibleDescription = undefined;
17
29
  /**
18
30
  * Set whether the input is required or not. Please note that this is required for
19
31
  * accessible inputs when the user is required to fill them. When using this property
@@ -99,7 +111,7 @@ export class DuetCheckbox {
99
111
  "duet-label-hidden": this.labelHidden,
100
112
  "duet-theme-turva": this.theme === "turva",
101
113
  } },
102
- h("input", { ref: input => (this.nativeInput = input), type: "checkbox", onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, value: this.value, class: { "duet-checkbox": true, disabled: this.disabled }, checked: this.checked, disabled: this.disabled, tabindex: this.accessibleIndex, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, required: this.required, role: this.role, name: this.name, id: identifier }),
114
+ h("input", { ref: input => (this.nativeInput = input), type: "checkbox", onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, value: this.value, class: { "duet-checkbox": true, disabled: this.disabled }, checked: this.checked, disabled: this.disabled, tabindex: this.accessibleIndex, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, required: this.required, role: this.role, name: this.name, id: identifier }),
103
115
  h("label", { class: "duet-label", htmlFor: identifier },
104
116
  h("span", null, this.label)))));
105
117
  }
@@ -220,6 +232,60 @@ export class DuetCheckbox {
220
232
  "attribute": "accessible-described-by",
221
233
  "reflect": false
222
234
  },
235
+ "accessibleDetails": {
236
+ "type": "string",
237
+ "mutable": false,
238
+ "complexType": {
239
+ "original": "string",
240
+ "resolved": "string",
241
+ "references": {}
242
+ },
243
+ "required": false,
244
+ "optional": false,
245
+ "docs": {
246
+ "tags": [],
247
+ "text": "Aria Details of the component"
248
+ },
249
+ "attribute": "accessible-details",
250
+ "reflect": false,
251
+ "defaultValue": "undefined"
252
+ },
253
+ "accessibleLabelledBy": {
254
+ "type": "string",
255
+ "mutable": false,
256
+ "complexType": {
257
+ "original": "string",
258
+ "resolved": "string",
259
+ "references": {}
260
+ },
261
+ "required": false,
262
+ "optional": false,
263
+ "docs": {
264
+ "tags": [],
265
+ "text": "String of id's that indicate alternative labels elements"
266
+ },
267
+ "attribute": "accessible-labelled-by",
268
+ "reflect": false,
269
+ "defaultValue": "undefined"
270
+ },
271
+ "accessibleDescription": {
272
+ "type": "string",
273
+ "mutable": false,
274
+ "complexType": {
275
+ "original": "string",
276
+ "resolved": "string",
277
+ "references": {}
278
+ },
279
+ "required": false,
280
+ "optional": false,
281
+ "docs": {
282
+ "tags": [],
283
+ "text": "Aria description the button"
284
+ },
285
+ "attribute": "accessible-description",
286
+ "reflect": false,
287
+ "defaultValue": "undefined"
288
+ },
223
289
  "required": {
224
290
  "type": "boolean",
225
291
  "mutable": false,
@@ -3,12 +3,12 @@
3
3
  */
4
4
  import infoIcon from "@duetds/icons/lib/assets/messaging-info";
5
5
  import { Component, Element, Event, h, Host, Listen, Method, Prop, State } from "@stencil/core";
6
+ import { inheritGlobalTheme } from "../../common";
6
7
  import { DuetStringsExternalDefaults } from "../../common-strings";
7
8
  import { createID } from "../../utils/create-id";
8
9
  import { FocusGuard } from "../../utils/focus-utils";
9
10
  import { isEscapeKey, isKeyboardClick, isQuestionKey } from "../../utils/keyboard-utils";
10
11
  import { getLanguage, getLocaleString } from "../../utils/language-utils";
11
- import { inheritGlobalTheme } from "../../utils/themeable-component";
12
12
  /**
13
13
  * @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
14
14
  * @slot info - Info content. Anything inserted into this slot is displayed in a collapsible info box.
@@ -48,6 +48,18 @@ export class DuetChoice {
48
48
  * @default {fi: "Avautuu uuteen ikkunaan",sv: "Öppnas i nytt fönster",en: "Opens in a new window"}
49
49
  */
50
50
  this.accessibleLabelInfoButton = getLocaleString(this.accessibleLabelInfoButtonDefaults);
51
+ /**
52
+ * Aria Details of the component
53
+ */
54
+ this.accessibleDetails = undefined;
55
+ /**
56
+ * String of id's that indicate alternative labels elements
57
+ */
58
+ this.accessibleLabelledBy = undefined;
59
+ /**
60
+ * Aria description the button
61
+ */
62
+ this.accessibleDescription = undefined;
51
63
  /**
52
64
  * Additional caption to show inside the label of the choice button.
53
65
  */
@@ -287,7 +299,7 @@ export class DuetChoice {
287
299
  collapsible: this.collapsible,
288
300
  "duet-p-0": this.padding === "none",
289
301
  } },
290
- h("input", { class: "duet-choice-input", type: this.type, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, disabled: this.disabled || this.groupDisabled, required: this.required, id: identifier, name: this.name, value: this.value, checked: this.checked, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.getAriaDescribedby(), onKeyDown: this.handleKeyDown, ref: input => (this.nativeInput = input) }),
302
+ h("input", { class: "duet-choice-input", type: this.type, onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, disabled: this.disabled || this.groupDisabled, required: this.required, id: identifier, name: this.name, value: this.value, checked: this.checked, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, "aria-owns": this.accessibleOwns, "aria-describedby": this.getAriaDescribedby(), onKeyDown: this.handleKeyDown, ref: input => (this.nativeInput = input) }),
291
303
  h("label", { htmlFor: identifier, class: { "duet-choice-label": true, "no-hover": this.isHovering }, onClick: this.onClick },
292
304
  this.icon && (h("div", { class: "duet-choice-card-icon" },
293
305
  h("duet-icon", { margin: "none", size: "small", name: this.icon, color: "currentColor" }))),
@@ -484,6 +496,60 @@ export class DuetChoice {
484
496
  "attribute": "accessible-described-by",
485
497
  "reflect": false
486
498
  },
499
+ "accessibleDetails": {
500
+ "type": "string",
501
+ "mutable": false,
502
+ "complexType": {
503
+ "original": "string",
504
+ "resolved": "string",
505
+ "references": {}
506
+ },
507
+ "required": false,
508
+ "optional": false,
509
+ "docs": {
510
+ "tags": [],
511
+ "text": "Aria Details of the component"
512
+ },
513
+ "attribute": "accessible-details",
514
+ "reflect": false,
515
+ "defaultValue": "undefined"
516
+ },
517
+ "accessibleLabelledBy": {
518
+ "type": "string",
519
+ "mutable": false,
520
+ "complexType": {
521
+ "original": "string",
522
+ "resolved": "string",
523
+ "references": {}
524
+ },
525
+ "required": false,
526
+ "optional": false,
527
+ "docs": {
528
+ "tags": [],
529
+ "text": "String of id's that indicate alternative labels elements"
530
+ },
531
+ "attribute": "accessible-labelled-by",
532
+ "reflect": false,
533
+ "defaultValue": "undefined"
534
+ },
535
+ "accessibleDescription": {
536
+ "type": "string",
537
+ "mutable": false,
538
+ "complexType": {
539
+ "original": "string",
540
+ "resolved": "string",
541
+ "references": {}
542
+ },
543
+ "required": false,
544
+ "optional": false,
545
+ "docs": {
546
+ "tags": [],
547
+ "text": "Aria description the button"
548
+ },
549
+ "attribute": "accessible-description",
550
+ "reflect": false,
551
+ "defaultValue": "undefined"
552
+ },
487
553
  "caption": {
488
554
  "type": "string",
489
555
  "mutable": false,
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, h, Host, Prop, Watch } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  import { findCheckedOption, watchForOptions } from "../../utils/watch-options";
7
7
  export class DuetChoiceGroup {
8
8
  constructor() {
@@ -4,10 +4,10 @@
4
4
  import icon from "@duetds/icons/lib/assets/action-arrow-down-small";
5
5
  import * as tokens from "@duetds/tokens/lib/tokens.json";
6
6
  import { Component, Element, Event, h, Host, Method, Prop } from "@stencil/core";
7
+ import { inheritGlobalTheme } from "../../common/themeable-component";
7
8
  import { createID } from "../../utils/create-id";
8
9
  import { isKeyboardClick } from "../../utils/keyboard-utils";
9
10
  import { sanitizeString } from "../../utils/string-utils";
10
- import { inheritGlobalTheme } from "../../utils/themeable-component";
11
11
  /**
12
12
  * @part duet-collapsible-heading-content - piercing selector for styling the heading content
13
13
  * @part duet-collapsible-content - piercing selector for styling the content
@@ -2,11 +2,11 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Build, Component, Element, Event, h, Host, Listen, Method, Prop, State, Watch, } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { debounce } from "../../utils/js-utils";
6
7
  import { isArrowDownKey, isArrowUpKey, isEnterKey, isEscapeKey, isTabKey } from "../../utils/keyboard-utils";
7
8
  import { getLanguage, getLocaleString } from "../../utils/language-utils";
8
9
  import { parsePossibleJSON } from "../../utils/string-utils";
9
- import { inheritGlobalTheme } from "../../utils/themeable-component";
10
10
  import { DuetComboBoxSelect } from "./duet-combobox-select";
11
11
  export class DuetCombobox {
12
12
  constructor() {
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Prop } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetCookieConsent {
7
7
  constructor() {
8
8
  /**
@@ -2,10 +2,10 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Listen, Method, Prop, State, Watch } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { createID } from "../../utils/create-id";
6
7
  import { FocusGuard } from "../../utils/focus-utils";
7
8
  import { getLanguage, getLocaleString } from "../../utils/language-utils";
8
- import { inheritGlobalTheme } from "../../utils/themeable-component";
9
9
  import i18n from "./date-i18n";
10
10
  import { DatePickerInput } from "./date-picker-input";
11
11
  import { DatePickerMonth } from "./date-picker-month";
@@ -8,7 +8,6 @@
8
8
  * @param to
9
9
  */
10
10
  export function range(from, to) {
11
- console.log({ from, to });
12
11
  var result = [];
13
12
  for (var i = from; i <= to; i++) {
14
13
  result.push(i);
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, h, Prop } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetDivider {
7
7
  constructor() {
8
8
  /**
@@ -2,10 +2,10 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Prop } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { fieldSorter } from "../../utils/js-utils";
6
7
  import { isKeyboardClick } from "../../utils/keyboard-utils";
7
8
  import { getLocaleString } from "../../utils/language-utils";
8
- import { inheritGlobalTheme } from "../../utils/themeable-component";
9
9
  import { TableData } from "./duet-editable-table-tabledata";
10
10
  export class DuetEditableTable {
11
11
  constructor() {
@@ -195,6 +195,7 @@ export class DuetEditableTable {
195
195
  render() {
196
196
  return (h(Host, { class: {
197
197
  [`duet-editable-table-${this.variation}`]: true,
198
+ "duet-editable-table": true,
198
199
  [`duet-editable-table-${this.theme}`]: true,
199
200
  // sticky only valid when in regular table layout
200
201
  "duet-editable-table-scrollable": this.breakpoint === "none-scrollable",
@@ -203,7 +204,7 @@ export class DuetEditableTable {
203
204
  "duet-m-0": this.margin === "none",
204
205
  "duet-theme-turva": this.theme === "turva",
205
206
  } },
206
- h("duet-table", { sticky: this.sticky, stickyDistance: this.stickyDistance, margin: this.margin, theme: this.theme, variation: this.variation, breakpoint: this.breakpoint },
207
+ h("duet-table", { class: "duet-editable-table-table", sticky: this.sticky, stickyDistance: this.stickyDistance, margin: this.margin, theme: this.theme, variation: this.variation, breakpoint: this.breakpoint },
207
208
  h("table", { role: this.accessibleRole },
208
209
  h("caption", null,
209
210
  h("slot", { name: "tcaption" })),
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, h, Host, Prop } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetEmptyState {
7
7
  constructor() {
8
8
  /**
@@ -2,8 +2,8 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, h, Host, Prop, State } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { createID } from "../../utils/create-id";
6
- import { inheritGlobalTheme } from "../../utils/themeable-component";
7
7
  /**
8
8
  * @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
9
9
  * @slot tooltip - Use to place a tooltip alongside the fieldset label.