@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, Fragment, h, Host, Prop, State, Watch } 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 { isArrowDownKey, isArrowKey, isArrowLeftKey, isArrowRightKey, isArrowUpKey, isNumber, } from "../../utils/keyboard-utils";
8
9
  import { getLocaleString } from "../../utils/language-utils";
9
- import { inheritGlobalTheme } from "../../utils/themeable-component";
10
10
  import { shouldDisplayNavigation } from "./duet-pagination-utils";
11
11
  export class DuetPagination {
12
12
  constructor() {
@@ -34,6 +34,22 @@ export class DuetPagination {
34
34
  * Variation of the paginator (compact and default supported)
35
35
  */
36
36
  this.variation = "default";
37
+ /**
38
+ * Described By id
39
+ */
40
+ this.accessibleDescribedBy = undefined;
41
+ /**
42
+ * Details of the component
43
+ */
44
+ this.accessibleDetails = undefined;
45
+ /**
46
+ * String of id's that indicate alternative labels elements
47
+ */
48
+ this.accessibleLabelledBy = undefined;
49
+ /**
50
+ * Aria description the button
51
+ */
52
+ this.accessibleDescription = undefined;
37
53
  /**
38
54
  * Default pagination labels
39
55
  */
@@ -265,7 +281,7 @@ export class DuetPagination {
265
281
  */
266
282
  render() {
267
283
  return (h(Host, { onKeyDown: e => this.onKeyboardDown(e) },
268
- h("nav", { role: "navigation", "aria-labelledby": this.listId, "aria-describedby": this.listId, ref: el => (this.nativeNav = el), "aria-controls": this.ariaControls, class: {
284
+ h("nav", { 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: {
269
285
  "duet-pagination-nav": true,
270
286
  [`duet-pagination-variation-${this.variation}`]: true,
271
287
  } },
@@ -376,6 +392,78 @@ export class DuetPagination {
376
392
  "reflect": false,
377
393
  "defaultValue": "\"default\""
378
394
  },
395
+ "accessibleDescribedBy": {
396
+ "type": "string",
397
+ "mutable": false,
398
+ "complexType": {
399
+ "original": "string",
400
+ "resolved": "string",
401
+ "references": {}
402
+ },
403
+ "required": false,
404
+ "optional": false,
405
+ "docs": {
406
+ "tags": [],
407
+ "text": "Described By id"
408
+ },
409
+ "attribute": "accessible-described-by",
410
+ "reflect": false,
411
+ "defaultValue": "undefined"
412
+ },
413
+ "accessibleDetails": {
414
+ "type": "string",
415
+ "mutable": false,
416
+ "complexType": {
417
+ "original": "string",
418
+ "resolved": "string",
419
+ "references": {}
420
+ },
421
+ "required": false,
422
+ "optional": false,
423
+ "docs": {
424
+ "tags": [],
425
+ "text": "Details of the component"
426
+ },
427
+ "attribute": "accessible-details",
428
+ "reflect": false,
429
+ "defaultValue": "undefined"
430
+ },
431
+ "accessibleLabelledBy": {
432
+ "type": "string",
433
+ "mutable": false,
434
+ "complexType": {
435
+ "original": "string",
436
+ "resolved": "string",
437
+ "references": {}
438
+ },
439
+ "required": false,
440
+ "optional": false,
441
+ "docs": {
442
+ "tags": [],
443
+ "text": "String of id's that indicate alternative labels elements"
444
+ },
445
+ "attribute": "accessible-labelled-by",
446
+ "reflect": false,
447
+ "defaultValue": "undefined"
448
+ },
449
+ "accessibleDescription": {
450
+ "type": "string",
451
+ "mutable": false,
452
+ "complexType": {
453
+ "original": "string",
454
+ "resolved": "string",
455
+ "references": {}
456
+ },
457
+ "required": false,
458
+ "optional": false,
459
+ "docs": {
460
+ "tags": [],
461
+ "text": "Aria description the button"
462
+ },
463
+ "attribute": "accessible-description",
464
+ "reflect": false,
465
+ "defaultValue": "undefined"
466
+ },
379
467
  "accessibleLabelsDefaults": {
380
468
  "type": "unknown",
381
469
  "mutable": false,
@@ -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
  import { getColorByName } from "../../utils/token-utils";
7
7
  /**
8
8
  * @part duet-paragraph - piercing selector for styling the paragraph
@@ -2,9 +2,9 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, h, Host, Prop } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common";
5
6
  import { createID } from "../../utils/create-id";
6
7
  import { getLocaleString } from "../../utils/language-utils";
7
- import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  export class DuetProgress {
9
9
  constructor() {
10
10
  /**
@@ -12,6 +12,18 @@ export class DuetProgress {
12
12
  */
13
13
  this.progressId = createID("DuetProgress");
14
14
  this.progressLabelId = createID("DuetProgressLabel");
15
+ /**
16
+ * Aria 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
  * Defaults for accessibleLabel
17
29
  */
@@ -66,7 +78,7 @@ export class DuetProgress {
66
78
  this.accessibleLabelUpload[this.progress < 99 ? 1 : 0])))),
67
79
  this.caption && (h("div", { class: "duet-progress-caption" },
68
80
  h("span", null, this.caption))),
69
- h("progress", { id: this.progressLabelId, "aria-describedby": this.accessibleDescribedBy, role: "progressbar", value: this.progress, max: "100", "aria-valuemin": "0", "aria-valuemax": "100" },
81
+ h("progress", { id: this.progressLabelId, "aria-describedby": this.accessibleDescribedBy, "aria-labelledby": this.accessibleLabelledBy, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, role: "progressbar", value: this.progress, max: "100", "aria-valuemin": "0", "aria-valuemax": "100" },
70
82
  h("div", { class: "progress-bar" },
71
83
  h("span", { style: { width: `${this.progress}%;` } },
72
84
  "Progress: ",
@@ -98,6 +110,60 @@ export class DuetProgress {
98
110
  "attribute": "accessible-described-by",
99
111
  "reflect": false
100
112
  },
113
+ "accessibleDetails": {
114
+ "type": "string",
115
+ "mutable": false,
116
+ "complexType": {
117
+ "original": "string",
118
+ "resolved": "string",
119
+ "references": {}
120
+ },
121
+ "required": false,
122
+ "optional": false,
123
+ "docs": {
124
+ "tags": [],
125
+ "text": "Aria Details of the component"
126
+ },
127
+ "attribute": "accessible-details",
128
+ "reflect": false,
129
+ "defaultValue": "undefined"
130
+ },
131
+ "accessibleLabelledBy": {
132
+ "type": "string",
133
+ "mutable": false,
134
+ "complexType": {
135
+ "original": "string",
136
+ "resolved": "string",
137
+ "references": {}
138
+ },
139
+ "required": false,
140
+ "optional": false,
141
+ "docs": {
142
+ "tags": [],
143
+ "text": "String of id's that indicate alternative labels elements"
144
+ },
145
+ "attribute": "accessible-labelled-by",
146
+ "reflect": false,
147
+ "defaultValue": "undefined"
148
+ },
149
+ "accessibleDescription": {
150
+ "type": "string",
151
+ "mutable": false,
152
+ "complexType": {
153
+ "original": "string",
154
+ "resolved": "string",
155
+ "references": {}
156
+ },
157
+ "required": false,
158
+ "optional": false,
159
+ "docs": {
160
+ "tags": [],
161
+ "text": "Aria description the button"
162
+ },
163
+ "attribute": "accessible-description",
164
+ "reflect": false,
165
+ "defaultValue": "undefined"
166
+ },
101
167
  "accessibleLabel": {
102
168
  "type": "string",
103
169
  "mutable": false,
@@ -2,14 +2,26 @@
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 DuetRadio {
8
8
  constructor() {
9
9
  /**
10
10
  * Own Properties.
11
11
  */
12
12
  this.radioId = createID("DuetRadio");
13
+ /**
14
+ * Aria Details of the component
15
+ */
16
+ this.accessibleDetails = undefined;
17
+ /**
18
+ * String of id's that indicate alternative labels elements
19
+ */
20
+ this.accessibleLabelledBy = undefined;
21
+ /**
22
+ * Aria description the button
23
+ */
24
+ this.accessibleDescription = undefined;
13
25
  /**
14
26
  * Controls the margin of the component.
15
27
  */
@@ -100,7 +112,7 @@ export class DuetRadio {
100
112
  "duet-m-0": this.margin === "none",
101
113
  } },
102
114
  h("div", { class: { "duet-radio-container": true, "duet-theme-turva": this.theme === "turva" } },
103
- h("input", { type: "radio", onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, value: this.value, tabindex: this.accessibleIndex, class: { "duet-radio": true, disabled: this.disabled || this.groupDisabled }, checked: this.checked, disabled: this.disabled || this.groupDisabled, required: this.required, "aria-controls": this.accessibleControls, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": this.accessibleDescribedBy, role: this.role, name: this.name, id: identifier, ref: input => (this.nativeInput = input) }),
115
+ h("input", { type: "radio", onFocus: this.onFocus, onBlur: this.onBlur, onChange: this.onChange, value: this.value, tabindex: this.accessibleIndex, class: { "duet-radio": true, disabled: this.disabled || this.groupDisabled }, checked: this.checked, disabled: this.disabled || this.groupDisabled, required: this.required, "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, role: this.role, name: this.name, id: identifier, ref: input => (this.nativeInput = input) }),
104
116
  h("label", { class: "duet-label", htmlFor: identifier },
105
117
  h("span", null, this.label)))));
106
118
  }
@@ -130,6 +142,60 @@ export class DuetRadio {
130
142
  "attribute": "accessible-active-descendant",
131
143
  "reflect": false
132
144
  },
145
+ "accessibleDetails": {
146
+ "type": "string",
147
+ "mutable": false,
148
+ "complexType": {
149
+ "original": "string",
150
+ "resolved": "string",
151
+ "references": {}
152
+ },
153
+ "required": false,
154
+ "optional": false,
155
+ "docs": {
156
+ "tags": [],
157
+ "text": "Aria Details of the component"
158
+ },
159
+ "attribute": "accessible-details",
160
+ "reflect": false,
161
+ "defaultValue": "undefined"
162
+ },
163
+ "accessibleLabelledBy": {
164
+ "type": "string",
165
+ "mutable": false,
166
+ "complexType": {
167
+ "original": "string",
168
+ "resolved": "string",
169
+ "references": {}
170
+ },
171
+ "required": false,
172
+ "optional": false,
173
+ "docs": {
174
+ "tags": [],
175
+ "text": "String of id's that indicate alternative labels elements"
176
+ },
177
+ "attribute": "accessible-labelled-by",
178
+ "reflect": false,
179
+ "defaultValue": "undefined"
180
+ },
181
+ "accessibleDescription": {
182
+ "type": "string",
183
+ "mutable": false,
184
+ "complexType": {
185
+ "original": "string",
186
+ "resolved": "string",
187
+ "references": {}
188
+ },
189
+ "required": false,
190
+ "optional": false,
191
+ "docs": {
192
+ "tags": [],
193
+ "text": "Aria description the button"
194
+ },
195
+ "attribute": "accessible-description",
196
+ "reflect": false,
197
+ "defaultValue": "undefined"
198
+ },
133
199
  "accessibleIndex": {
134
200
  "type": "string",
135
201
  "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 DuetRadioGroup {
8
8
  constructor() {
@@ -3,9 +3,9 @@
3
3
  */
4
4
  import { colorGray, colorGrayTurva, colorPrimary, colorPrimaryTurva } from "@duetds/tokens";
5
5
  import { Component, Element, Event, h, Host, Method, Prop } from "@stencil/core";
6
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
7
  import { createID } from "../../utils/create-id";
7
8
  import isInternetExplorer from "../../utils/is-internet-explorer";
8
- import { inheritGlobalTheme } from "../../utils/themeable-component";
9
9
  const colors = {
10
10
  turva: {
11
11
  active: colorPrimaryTurva,
@@ -2,10 +2,10 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Prop, Watch } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { createID } from "../../utils/create-id";
6
7
  import { isArrowDownKey, isArrowKey, isArrowLeftKey, isArrowRightKey, isArrowUpKey, isMinusKey, isPlusKey, } from "../../utils/keyboard-utils";
7
8
  import { getLocaleString } from "../../utils/language-utils";
8
- import { inheritGlobalTheme } from "../../utils/themeable-component";
9
9
  export class DuetRangeStepper {
10
10
  constructor() {
11
11
  this.leftBn = createID("duetRangeStepper-left");
@@ -2,7 +2,7 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, h, Host, Prop, State, Watch } from "@stencil/core";
5
- import { inheritGlobalTheme } from "../../utils/themeable-component";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
6
  export class DuetScrollable {
7
7
  constructor() {
8
8
  /**
@@ -2,9 +2,9 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, 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 { parsePossibleJSON } from "../../utils/string-utils";
7
- import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  function isOptionGroup(item) {
9
9
  return "options" in item;
10
10
  }
@@ -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
  import { getColorByName } from "../../utils/token-utils";
7
7
  export class DuetSpinner {
8
8
  constructor() {
@@ -3,9 +3,9 @@
3
3
  */
4
4
  import editIcon from "@duetds/icons/lib/assets/action-edit-2";
5
5
  import { Build, Component, Element, Event, h, Method, Prop } from "@stencil/core";
6
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
7
  import { createID } from "../../utils/create-id";
7
8
  import { isKeyboardClick } from "../../utils/keyboard-utils";
8
- import { inheritGlobalTheme } from "../../utils/themeable-component";
9
9
  /**
10
10
  * @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.
11
11
  * @slot heading-content - Step heading content. Use this slot to show additional content next to step heading.
@@ -2,8 +2,8 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Host, Listen, Prop, Watch } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import groupBy from "../../utils/group-by";
6
- import { inheritGlobalTheme } from "../../utils/themeable-component";
7
7
  export class DuetStepper {
8
8
  constructor() {
9
9
  /**
@@ -2,10 +2,10 @@
2
2
  * Built with Duet Design System
3
3
  */
4
4
  import { Component, Element, Event, h, Method, Prop, State } from "@stencil/core";
5
+ import { inheritGlobalTheme } from "../../common/themeable-component";
5
6
  import { createID } from "../../utils/create-id";
6
7
  import { isArrowDownKey, isArrowLeftKey, isArrowRightKey, isArrowUpKey } from "../../utils/keyboard-utils";
7
8
  import { getLanguage, getLocaleString } from "../../utils/language-utils";
8
- import { inheritGlobalTheme } from "../../utils/themeable-component";
9
9
  /**
10
10
  * @part ${identifier}-button - piercing selector for styling tab buttons
11
11
  * @part ${identifier}-button--selected - piercing selector for styling selected tab button
@@ -71,15 +71,14 @@ duet-table .duet-table-action-row td:last-child {
71
71
  white-space: nowrap;
72
72
  }
73
73
 
74
- .duet-table-flattened tbody tr {
75
- display: grid;
76
- grid-template-columns: repeat(2, 1fr);
77
- grid-auto-rows: auto;
78
- gap: 10px;
79
- }
80
- .duet-table-flattened tbody tr.duet-table-action-row td:last-child::before {
81
- padding: 0;
82
- content: "";
74
+ .duet-table-flattened table,
75
+ .duet-table-flattened thead,
76
+ .duet-table-flattened tbody,
77
+ .duet-table-flattened tfoot,
78
+ .duet-table-flattened th,
79
+ .duet-table-flattened td,
80
+ .duet-table-flattened tr {
81
+ display: block;
83
82
  }
84
83
  .duet-table-flattened thead tr {
85
84
  position: absolute !important;
@@ -92,20 +91,11 @@ duet-table .duet-table-action-row td:last-child {
92
91
  border: 0 !important;
93
92
  }
94
93
  .duet-table-flattened td {
95
- grid-column: 1/2;
96
94
  line-height: 1.25;
97
95
  }
98
96
  .duet-table-flattened td:not(:last-child) {
99
97
  margin-bottom: 16px !important;
100
98
  }
101
- .duet-table-flattened td:first-child {
102
- grid-row: 1;
103
- grid-column: 1;
104
- }
105
- .duet-table-flattened td:last-child {
106
- grid-row: 1;
107
- grid-column: 2;
108
- }
109
99
  .duet-table-flattened tbody td,
110
100
  .duet-table-flattened tbody th,
111
101
  .duet-table-flattened tfoot td {
@@ -337,4 +327,26 @@ duet-table .duet-table-action-row td:last-child {
337
327
  .duet-table-actions thead th:last-child {
338
328
  width: 1px;
339
329
  white-space: nowrap;
330
+ }
331
+
332
+ .duet-editable-table-table.duet-table-flattened tr {
333
+ display: grid;
334
+ grid-template-columns: repeat(2, 1fr);
335
+ grid-auto-rows: auto;
336
+ gap: 10px;
337
+ }
338
+ .duet-editable-table-table.duet-table-flattened tr.duet-table-action-row td:last-child::before {
339
+ padding: 0;
340
+ content: "";
341
+ }
342
+ .duet-editable-table-table.duet-table-flattened td {
343
+ grid-column: 1/2;
344
+ }
345
+ .duet-editable-table-table.duet-table-flattened td:first-child {
346
+ grid-row: 1;
347
+ grid-column: 1;
348
+ }
349
+ .duet-editable-table-table.duet-table-flattened td:last-child {
350
+ grid-row: 1;
351
+ grid-column: 2;
340
352
  }
@@ -3,8 +3,8 @@
3
3
  */
4
4
  import { mediaQueryLarge, mediaQueryMedium, mediaQuerySmall, mediaQueryXLarge, mediaQueryXxLarge, mediaQueryXxxLarge, sizeHeader, sizeNavigation, } from "@duetds/tokens";
5
5
  import { Build, Component, Element, h, Host, Prop, State } from "@stencil/core";
6
+ import { inheritGlobalTheme } from "../../common/themeable-component";
6
7
  import { debounce } from "../../utils/js-utils";
7
- import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  // remove wrapping speech marks.
9
9
  // media query tokens are wrapped in speech marks,
10
10
  // which need to be removed before use with matchMedia.
@@ -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 { createID } from "../../utils/create-id";
6
7
  import { cleanValue } from "../../utils/input-utils";
7
- import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  const CharacterCount = ({ value, maxlength, label, theme }) => {
9
9
  if (maxlength == null) {
10
10
  return;
@@ -35,6 +35,18 @@ export class DuetTextarea {
35
35
  * Controls the margin of the component.
36
36
  */
37
37
  this.margin = "auto";
38
+ /**
39
+ * Aria Details of the component
40
+ */
41
+ this.accessibleDetails = undefined;
42
+ /**
43
+ * String of id's that indicate alternative labels elements
44
+ */
45
+ this.accessibleLabelledBy = undefined;
46
+ /**
47
+ * Aria description the button
48
+ */
49
+ this.accessibleDescription = undefined;
38
50
  /**
39
51
  * Theme of the textarea.
40
52
  */
@@ -185,7 +197,9 @@ export class DuetTextarea {
185
197
  this.caption && (h("duet-caption", { id: this.topCaptionId, size: "medium" }, this.caption)),
186
198
  h("div", { class: "duet-textarea-wrapper" },
187
199
  this.placeholder && this.echoPlaceholder && this.value && (h("duet-caption", { id: this.topCaptionPlaceholderId, class: "duet-textarea-placeholder", size: "small" }, this.placeholder)),
188
- h("textarea", { onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": `${this.labelId} ${this.errorId}`, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": `${this.isCaptionVisible ? this.topCaptionId : ""} ${this.accessibleDescribedBy}`, placeholder: this.placeholder, spellcheck: "false", required: this.required, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })),
200
+ h("textarea", { onInput: this.handleInput, onChange: this.handleChange, onBlur: this.handleBlur, onFocus: this.handleFocus, ref: input => (this.nativeInput = input), class: { "duet-textarea": true, disabled: this.disabled }, value: this.value, disabled: this.disabled, "aria-labelledby": this.accessibleLabelledBy
201
+ ? `${this.labelId} ${this.errorId} ${this.accessibleLabelledBy}`
202
+ : `${this.labelId} ${this.errorId} `, "aria-controls": this.accessibleControls, "aria-autocomplete": this.accessibleAutocomplete, "aria-activedescendant": this.accessibleActiveDescendant, "aria-owns": this.accessibleOwns, "aria-describedby": `${this.isCaptionVisible ? this.topCaptionId : ""} ${this.accessibleDescribedBy}`, "aria-details": this.accessibleDetails, "aria-description": this.accessibleDescription, placeholder: this.placeholder, spellcheck: "false", required: this.required, minlength: this.minlength, maxlength: this.maxlength, role: this.role, name: this.name, id: identifier })),
189
203
  h("duet-grid", { alignment: "stretch" },
190
204
  h("duet-grid-item", { margin: "none", fill: true },
191
205
  h("div", { class: "duet-textarea-help", id: this.errorId, "aria-live": "assertive", "aria-relevant": "additions removals" }, this.error && h("span", null, this.error))),
@@ -274,6 +288,60 @@ export class DuetTextarea {
274
288
  "attribute": "accessible-controls",
275
289
  "reflect": false
276
290
  },
291
+ "accessibleDetails": {
292
+ "type": "string",
293
+ "mutable": false,
294
+ "complexType": {
295
+ "original": "string",
296
+ "resolved": "string",
297
+ "references": {}
298
+ },
299
+ "required": false,
300
+ "optional": false,
301
+ "docs": {
302
+ "tags": [],
303
+ "text": "Aria Details of the component"
304
+ },
305
+ "attribute": "accessible-details",
306
+ "reflect": false,
307
+ "defaultValue": "undefined"
308
+ },
309
+ "accessibleLabelledBy": {
310
+ "type": "string",
311
+ "mutable": false,
312
+ "complexType": {
313
+ "original": "string",
314
+ "resolved": "string",
315
+ "references": {}
316
+ },
317
+ "required": false,
318
+ "optional": false,
319
+ "docs": {
320
+ "tags": [],
321
+ "text": "String of id's that indicate alternative labels elements"
322
+ },
323
+ "attribute": "accessible-labelled-by",
324
+ "reflect": false,
325
+ "defaultValue": "undefined"
326
+ },
327
+ "accessibleDescription": {
328
+ "type": "string",
329
+ "mutable": false,
330
+ "complexType": {
331
+ "original": "string",
332
+ "resolved": "string",
333
+ "references": {}
334
+ },
335
+ "required": false,
336
+ "optional": false,
337
+ "docs": {
338
+ "tags": [],
339
+ "text": "Aria description the button"
340
+ },
341
+ "attribute": "accessible-description",
342
+ "reflect": false,
343
+ "defaultValue": "undefined"
344
+ },
277
345
  "accessibleOwns": {
278
346
  "type": "string",
279
347
  "mutable": false,