@duetds/components 4.35.4 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. package/hydrate/index.js +1708 -1055
  2. package/lib/cjs/duet-action-button.cjs.entry.js +163 -0
  3. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-breadcrumb.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-button_2.cjs.entry.js +14 -5
  8. package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-card.cjs.entry.js +4 -4
  10. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-choice_2.cjs.entry.js +3 -3
  12. package/lib/cjs/duet-collapsible.cjs.entry.js +4 -4
  13. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-date-picker.cjs.entry.js +4 -4
  15. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  16. package/lib/cjs/{duet-editable-table_4.cjs.entry.js → duet-editable-table_3.cjs.entry.js} +382 -346
  17. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-grid_2.cjs.entry.js +2 -2
  21. package/lib/cjs/duet-header_2.cjs.entry.js +4 -4
  22. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-icon.cjs.entry.js +3 -3
  24. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  26. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-modal.cjs.entry.js +3 -3
  28. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-number-input.cjs.entry.js +2 -2
  30. package/lib/cjs/duet-pagination_2.cjs.entry.js +458 -0
  31. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-range-slider.cjs.entry.js +2 -2
  34. package/lib/cjs/duet-scrollable_3.cjs.entry.js +3 -3
  35. package/lib/cjs/duet-select.cjs.entry.js +16 -4
  36. package/lib/cjs/duet-step_2.cjs.entry.js +2 -2
  37. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  40. package/lib/cjs/duet-tray.cjs.entry.js +2 -2
  41. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  42. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  43. package/lib/cjs/duet.cjs.js +2 -2
  44. package/lib/cjs/{focus-utils-eb8c5b20.js → focus-utils-7a11c463.js} +1 -1
  45. package/lib/cjs/{index-6ae8090f.js → index-da5d5aaf.js} +4 -1
  46. package/lib/cjs/js-utils-be1d29ae.js +39 -0
  47. package/lib/cjs/{keyboard-utils-b4e3d1d3.js → keyboard-utils-898cfe14.js} +8 -0
  48. package/lib/cjs/loader.cjs.js +2 -2
  49. package/lib/cjs/{token-utils-05bd23b4.js → token-utils-ac8432d1.js} +10 -7
  50. package/lib/cjs/{tokens-8596cece.js → tokens-72efc7fd.js} +0 -0
  51. package/lib/cjs/{tokens.module-6b2df1c2.js → tokens.module-6afcc9c1.js} +0 -0
  52. package/lib/collection/collection-manifest.json +22 -11
  53. package/lib/collection/components/duet-action-button/duet-action-button.css +87 -0
  54. package/lib/collection/components/duet-action-button/duet-action-button.js +489 -0
  55. package/lib/collection/components/duet-button/duet-button.css +3 -0
  56. package/lib/collection/components/duet-button/duet-button.js +50 -1
  57. package/lib/collection/components/duet-card/duet-card.js +1 -1
  58. package/lib/collection/components/duet-collapsible/duet-collapsible.js +2 -1
  59. package/lib/collection/components/duet-date-picker/duet-date-picker.css +2 -57
  60. package/lib/collection/components/duet-date-picker/duet-date-picker.js +2 -6
  61. package/lib/collection/components/duet-editable-table/duet-editable-table-tabledata.js +3 -2
  62. package/lib/collection/components/duet-editable-table/duet-editable-table.css +20 -1
  63. package/lib/collection/components/duet-editable-table/duet-editable-table.js +331 -205
  64. package/lib/collection/components/duet-pagination/duet-pagination-utils.js +9 -0
  65. package/lib/collection/components/duet-pagination/duet-pagination.css +61 -0
  66. package/lib/collection/components/duet-pagination/duet-pagination.js +541 -0
  67. package/lib/collection/components/duet-range-stepper/duet-range-stepper.css +49 -0
  68. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +340 -0
  69. package/lib/collection/components/duet-select/duet-select.css +26 -0
  70. package/lib/collection/components/duet-select/duet-select.js +39 -4
  71. package/lib/collection/components/duet-tab-group/duet-tab-group.js +5 -1
  72. package/lib/collection/components/duet-table/duet-table.css +42 -8
  73. package/lib/collection/components/duet-table/duet-table.js +11 -2
  74. package/lib/collection/components/duet-upload/duet-upload.css +25 -0
  75. package/lib/collection/components/duet-upload/duet-upload.js +270 -166
  76. package/lib/collection/components/duet-upload/upload-validators.js +1 -1
  77. package/lib/collection/utils/fixture-utils.js +3 -5
  78. package/lib/collection/utils/js-utils.js +36 -1
  79. package/lib/collection/utils/keyboard-utils.js +4 -0
  80. package/lib/collection/utils/test-utils.js +2 -1
  81. package/lib/collection/utils/token-utils.js +33 -6
  82. package/lib/custom-elements-bundle/index.d.ts +18 -12
  83. package/lib/custom-elements-bundle/index.js +1653 -1046
  84. package/lib/duet/duet.esm.js +1 -1
  85. package/lib/duet/duet.js +1 -1
  86. package/lib/duet/{p-503f1286.entry.js → p-00209700.entry.js} +1 -1
  87. package/lib/duet/{p-76fa8882.entry.js → p-01144f93.entry.js} +1 -1
  88. package/lib/duet/{p-ec2aea5f.system.entry.js → p-021bf3a2.system.entry.js} +1 -1
  89. package/lib/duet/{p-0169d57e.entry.js → p-04c6e557.entry.js} +1 -1
  90. package/lib/duet/{p-03a5fe42.system.entry.js → p-06fd151e.system.entry.js} +1 -1
  91. package/lib/duet/p-0988f548.entry.js +4 -0
  92. package/lib/duet/{p-d5a4b17f.system.entry.js → p-0e1130a0.system.entry.js} +1 -1
  93. package/lib/duet/{p-e4e99da0.entry.js → p-0fedc1c6.entry.js} +1 -1
  94. package/lib/duet/{p-2c85e001.system.entry.js → p-111b70c5.system.entry.js} +1 -1
  95. package/lib/duet/p-12825e2c.entry.js +4 -0
  96. package/lib/duet/p-166c09ce.system.entry.js +4 -0
  97. package/lib/duet/{p-8367a2d1.entry.js → p-1be45fc6.entry.js} +1 -1
  98. package/lib/duet/{p-253fd12a.system.entry.js → p-1da57e19.system.entry.js} +1 -1
  99. package/lib/duet/{p-b72ed5ef.system.entry.js → p-21c9efa8.system.entry.js} +1 -1
  100. package/lib/duet/{p-01679b51.entry.js → p-2245c56b.entry.js} +1 -1
  101. package/lib/duet/p-2273fc88.js +4 -0
  102. package/lib/duet/{p-5630828a.system.entry.js → p-232762b3.system.entry.js} +1 -1
  103. package/lib/duet/{p-3025a411.system.js → p-251dc733.system.js} +1 -1
  104. package/lib/duet/{p-ddb6344c.system.js → p-268c0abb.system.js} +0 -0
  105. package/lib/duet/{p-9077cd24.system.entry.js → p-2b6dac5c.system.entry.js} +1 -1
  106. package/lib/duet/{p-bba528b5.entry.js → p-35cdec32.entry.js} +1 -1
  107. package/lib/duet/{p-ee598605.entry.js → p-37bdfcc6.entry.js} +1 -1
  108. package/lib/duet/{p-c3d552d5.entry.js → p-3c7d81b0.entry.js} +1 -1
  109. package/lib/duet/{p-824d2360.system.entry.js → p-3f77090f.system.entry.js} +1 -1
  110. package/lib/duet/{p-7b451394.system.js → p-3fafe82f.system.js} +1 -1
  111. package/lib/duet/{p-2395f96e.system.entry.js → p-4b221aa3.system.entry.js} +1 -1
  112. package/lib/duet/{p-4ea864dd.system.entry.js → p-4b7b1d2a.system.entry.js} +1 -1
  113. package/lib/duet/p-4c282c1a.entry.js +4 -0
  114. package/lib/duet/p-51a7c020.entry.js +4 -0
  115. package/lib/duet/{p-e8ce8394.entry.js → p-5298f6fb.entry.js} +1 -1
  116. package/lib/duet/p-5746d88c.js +4 -0
  117. package/lib/duet/{p-dfd96467.entry.js → p-589c2f28.entry.js} +1 -1
  118. package/lib/duet/{p-f98fca13.system.entry.js → p-592315ca.system.entry.js} +1 -1
  119. package/lib/duet/{p-6cff80cb.system.entry.js → p-59a0ec33.system.entry.js} +1 -1
  120. package/lib/duet/p-5e1f64cb.entry.js +4 -0
  121. package/lib/duet/{p-73b5248d.entry.js → p-608645ed.entry.js} +1 -1
  122. package/lib/duet/{p-8ea92cc5.entry.js → p-683f1962.entry.js} +1 -1
  123. package/lib/duet/{p-55fff1fe.entry.js → p-6932c6d8.entry.js} +1 -1
  124. package/lib/duet/{p-731444f6.entry.js → p-6934cb1b.entry.js} +1 -1
  125. package/lib/duet/{p-caab828f.system.entry.js → p-6d209c01.system.entry.js} +1 -1
  126. package/lib/duet/{p-61198eee.system.entry.js → p-70e5c803.system.entry.js} +1 -1
  127. package/lib/duet/p-74780bca.system.js +4 -0
  128. package/lib/duet/p-74d267d3.system.entry.js +4 -0
  129. package/lib/duet/{p-2bfe8b50.system.entry.js → p-766daacb.system.entry.js} +1 -1
  130. package/lib/duet/p-77acbfe4.system.js +4 -0
  131. package/lib/duet/p-7953cff9.system.entry.js +4 -0
  132. package/lib/duet/{p-01f3fbd4.system.entry.js → p-7e939e57.system.entry.js} +1 -1
  133. package/lib/duet/{p-fa99eaa4.system.js → p-812b0905.system.js} +0 -0
  134. package/lib/duet/{p-c122428f.entry.js → p-814ed07c.entry.js} +1 -1
  135. package/lib/duet/{p-04304e51.entry.js → p-82a0e535.entry.js} +1 -1
  136. package/lib/duet/{p-4a60b131.system.entry.js → p-8338702d.system.entry.js} +1 -1
  137. package/lib/duet/{p-e682d701.system.entry.js → p-85b4b5c0.system.entry.js} +2 -2
  138. package/lib/duet/{p-e3229d0d.entry.js → p-86538787.entry.js} +1 -1
  139. package/lib/duet/p-898f30a5.js +4 -0
  140. package/lib/duet/{p-40a76f20.entry.js → p-8f01f647.entry.js} +1 -1
  141. package/lib/duet/{p-a39a0a45.entry.js → p-8f6def3f.entry.js} +1 -1
  142. package/lib/duet/{p-753098ec.entry.js → p-90464434.entry.js} +1 -1
  143. package/lib/duet/p-92639d0b.system.js +4 -0
  144. package/lib/duet/{p-873e4c51.system.entry.js → p-97f95c02.system.entry.js} +2 -2
  145. package/lib/duet/{p-ea30becb.system.entry.js → p-982deb44.system.entry.js} +1 -1
  146. package/lib/duet/{p-7fd62541.entry.js → p-9dc88c43.entry.js} +1 -1
  147. package/lib/duet/{p-412f58cf.entry.js → p-a37e57d8.entry.js} +1 -1
  148. package/lib/duet/{p-da1f6193.system.entry.js → p-a71510b8.system.entry.js} +1 -1
  149. package/lib/duet/p-a8eec12e.system.entry.js +4 -0
  150. package/lib/duet/{p-4d8cd455.system.entry.js → p-abcfbb23.system.entry.js} +1 -1
  151. package/lib/duet/{p-99262d61.entry.js → p-ac2b38e6.entry.js} +1 -1
  152. package/lib/duet/{p-24b4eefb.system.entry.js → p-ace2cd17.system.entry.js} +1 -1
  153. package/lib/duet/{p-94a2da86.system.entry.js → p-ad278903.system.entry.js} +1 -1
  154. package/lib/duet/{p-a0deb526.entry.js → p-aea907ad.entry.js} +1 -1
  155. package/lib/duet/{p-9690681b.system.entry.js → p-b432d318.system.entry.js} +1 -1
  156. package/lib/duet/{p-44fe8367.system.entry.js → p-b4e75f80.system.entry.js} +1 -1
  157. package/lib/duet/{p-c1b34a78.system.entry.js → p-b8c8105c.system.entry.js} +1 -1
  158. package/lib/duet/{p-efd978ee.entry.js → p-ba7480e9.entry.js} +1 -1
  159. package/lib/duet/p-bc7dba26.entry.js +4 -0
  160. package/lib/duet/{p-a926b44b.entry.js → p-bf06f635.entry.js} +1 -1
  161. package/lib/duet/p-c6ccf366.system.entry.js +4 -0
  162. package/lib/duet/{p-7cdb8bfa.entry.js → p-cd1a767f.entry.js} +1 -1
  163. package/lib/duet/p-d6d9b0c6.system.entry.js +4 -0
  164. package/lib/duet/{p-8143f3de.js → p-d7bc0102.js} +0 -0
  165. package/lib/duet/{p-fb98ac5a.entry.js → p-d9e329c0.entry.js} +1 -1
  166. package/lib/duet/p-dbb4a588.js +4 -0
  167. package/lib/duet/{p-f51f8554.entry.js → p-dc67d989.entry.js} +1 -1
  168. package/lib/duet/{p-a69667c7.entry.js → p-de9ff67c.entry.js} +1 -1
  169. package/lib/duet/{p-0f185a8a.system.entry.js → p-deb8ac4d.system.entry.js} +1 -1
  170. package/lib/duet/p-e2e0bc49.system.js +4 -0
  171. package/lib/duet/{p-6b24111b.system.entry.js → p-e624799f.system.entry.js} +1 -1
  172. package/lib/duet/{p-8973aa31.system.entry.js → p-e887d6db.system.entry.js} +1 -1
  173. package/lib/duet/p-e9c3053b.js +4 -0
  174. package/lib/duet/{p-a212f672.system.entry.js → p-ebed7c5e.system.entry.js} +1 -1
  175. package/lib/duet/{p-ad07f399.js → p-ed75c8b3.js} +0 -0
  176. package/lib/duet/{p-4a931c6c.system.entry.js → p-f020852e.system.entry.js} +1 -1
  177. package/lib/duet/p-f2abd301.entry.js +4 -0
  178. package/lib/duet/{p-fc35b926.system.entry.js → p-f54d1487.system.entry.js} +1 -1
  179. package/lib/duet/{p-17f85b90.entry.js → p-fc44a819.entry.js} +1 -1
  180. package/lib/duet/{p-bc6794bc.system.entry.js → p-fcdd24f8.system.entry.js} +1 -1
  181. package/lib/duet/{p-5e895b06.entry.js → p-fed35d92.entry.js} +1 -1
  182. package/lib/duet/{p-de5c3a36.entry.js → p-ff308f4c.entry.js} +1 -1
  183. package/lib/esm/duet-action-button.entry.js +159 -0
  184. package/lib/esm/duet-alert.entry.js +1 -1
  185. package/lib/esm/duet-badge.entry.js +1 -1
  186. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  187. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  188. package/lib/esm/duet-button_2.entry.js +14 -5
  189. package/lib/esm/duet-caption_4.entry.js +3 -3
  190. package/lib/esm/duet-card.entry.js +4 -4
  191. package/lib/esm/duet-checkbox.entry.js +1 -1
  192. package/lib/esm/duet-choice_2.entry.js +3 -3
  193. package/lib/esm/duet-collapsible.entry.js +4 -4
  194. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  195. package/lib/esm/duet-date-picker.entry.js +4 -4
  196. package/lib/esm/duet-divider_2.entry.js +1 -1
  197. package/lib/esm/{duet-editable-table_4.entry.js → duet-editable-table_3.entry.js} +384 -347
  198. package/lib/esm/duet-empty-state.entry.js +1 -1
  199. package/lib/esm/duet-fieldset.entry.js +1 -1
  200. package/lib/esm/duet-footer.entry.js +1 -1
  201. package/lib/esm/duet-grid_2.entry.js +2 -2
  202. package/lib/esm/duet-header_2.entry.js +4 -4
  203. package/lib/esm/duet-hero.entry.js +1 -1
  204. package/lib/esm/duet-icon.entry.js +3 -3
  205. package/lib/esm/duet-input_2.entry.js +1 -1
  206. package/lib/esm/duet-layout.entry.js +1 -1
  207. package/lib/esm/duet-list_2.entry.js +1 -1
  208. package/lib/esm/duet-modal.entry.js +3 -3
  209. package/lib/esm/duet-notification_2.entry.js +1 -1
  210. package/lib/esm/duet-number-input.entry.js +2 -2
  211. package/lib/esm/duet-pagination_2.entry.js +453 -0
  212. package/lib/esm/duet-progress.entry.js +1 -1
  213. package/lib/esm/duet-radio_2.entry.js +1 -1
  214. package/lib/esm/duet-range-slider.entry.js +2 -2
  215. package/lib/esm/duet-scrollable_3.entry.js +3 -3
  216. package/lib/esm/duet-select.entry.js +16 -4
  217. package/lib/esm/duet-step_2.entry.js +2 -2
  218. package/lib/esm/duet-textarea.entry.js +1 -1
  219. package/lib/esm/duet-toggle.entry.js +1 -1
  220. package/lib/esm/duet-tooltip.entry.js +1 -1
  221. package/lib/esm/duet-tray.entry.js +2 -2
  222. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  223. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  224. package/lib/esm/duet.js +2 -2
  225. package/lib/esm/{focus-utils-6db957a7.js → focus-utils-b0b3361f.js} +1 -1
  226. package/lib/esm/{index-828dfb4e.js → index-16f4da7f.js} +4 -1
  227. package/lib/esm/js-utils-52e0944c.js +36 -0
  228. package/lib/esm/{keyboard-utils-584cedd7.js → keyboard-utils-6eb55cd5.js} +5 -1
  229. package/lib/esm/loader.js +2 -2
  230. package/lib/esm/{token-utils-75f78ca4.js → token-utils-e9a0cb88.js} +10 -7
  231. package/lib/esm/{tokens-e110dc89.js → tokens-57d98824.js} +0 -0
  232. package/lib/esm/{tokens.module-49cbf963.js → tokens.module-a13e9683.js} +0 -0
  233. package/lib/esm-es5/duet-action-button.entry.js +4 -0
  234. package/lib/esm-es5/duet-alert.entry.js +1 -1
  235. package/lib/esm-es5/duet-badge.entry.js +1 -1
  236. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  237. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  238. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  239. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  240. package/lib/esm-es5/duet-card.entry.js +1 -1
  241. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  242. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  243. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  244. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  245. package/lib/esm-es5/duet-date-picker.entry.js +2 -2
  246. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  247. package/lib/esm-es5/duet-editable-table_3.entry.js +4 -0
  248. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  249. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  250. package/lib/esm-es5/duet-footer.entry.js +1 -1
  251. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  252. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  253. package/lib/esm-es5/duet-hero.entry.js +1 -1
  254. package/lib/esm-es5/duet-icon.entry.js +1 -1
  255. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  256. package/lib/esm-es5/duet-layout.entry.js +1 -1
  257. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  258. package/lib/esm-es5/duet-modal.entry.js +1 -1
  259. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  260. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  261. package/lib/esm-es5/duet-pagination_2.entry.js +4 -0
  262. package/lib/esm-es5/duet-progress.entry.js +1 -1
  263. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  264. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  265. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  266. package/lib/esm-es5/duet-select.entry.js +2 -2
  267. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  268. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  269. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  270. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  271. package/lib/esm-es5/duet-tray.entry.js +1 -1
  272. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  273. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  274. package/lib/esm-es5/duet.js +1 -1
  275. package/lib/esm-es5/focus-utils-b0b3361f.js +4 -0
  276. package/lib/esm-es5/{index-828dfb4e.js → index-16f4da7f.js} +1 -1
  277. package/lib/esm-es5/js-utils-52e0944c.js +4 -0
  278. package/lib/esm-es5/keyboard-utils-6eb55cd5.js +4 -0
  279. package/lib/esm-es5/loader.js +1 -1
  280. package/lib/esm-es5/token-utils-e9a0cb88.js +4 -0
  281. package/lib/esm-es5/{tokens-e110dc89.js → tokens-57d98824.js} +0 -0
  282. package/lib/esm-es5/{tokens.module-49cbf963.js → tokens.module-a13e9683.js} +0 -0
  283. package/lib/html.html-data.json +5266 -0
  284. package/lib/types/components/duet-action-button/duet-action-button.d.ts +112 -0
  285. package/lib/types/components/duet-button/duet-button.d.ts +9 -0
  286. package/lib/types/components/duet-card/duet-card.d.ts +1 -1
  287. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +1 -0
  288. package/lib/types/components/duet-editable-table/duet-editable-table-tabledata.d.ts +2 -2
  289. package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +106 -48
  290. package/lib/types/components/duet-pagination/duet-pagination-utils.d.ts +1 -0
  291. package/lib/types/components/duet-pagination/duet-pagination.d.ts +105 -0
  292. package/lib/types/components/duet-range-stepper/duet-range-stepper.d.ts +70 -0
  293. package/lib/types/components/duet-select/duet-select.d.ts +5 -0
  294. package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +4 -0
  295. package/lib/types/components/duet-table/duet-table.d.ts +16 -0
  296. package/lib/types/components/duet-upload/duet-upload.d.ts +68 -58
  297. package/lib/types/components.d.ts +402 -140
  298. package/lib/types/utils/js-utils.d.ts +2 -0
  299. package/lib/types/utils/keyboard-utils.d.ts +4 -0
  300. package/lib/types/utils/token-utils.d.ts +2 -0
  301. package/package.json +5 -6
  302. package/lib/cjs/duet-editable-table-button.cjs.entry.js +0 -96
  303. package/lib/collection/components/duet-editable-table/duet-editable-table-button.css +0 -32
  304. package/lib/collection/components/duet-editable-table/duet-editable-table-button.js +0 -225
  305. package/lib/collection/components/duet-editable-table/duet-editable-table-item.css +0 -36
  306. package/lib/collection/components/duet-editable-table/duet-editable-table-item.js +0 -225
  307. package/lib/duet/p-0427e1a5.entry.js +0 -4
  308. package/lib/duet/p-04f9f1bf.js +0 -4
  309. package/lib/duet/p-0f91d386.system.entry.js +0 -4
  310. package/lib/duet/p-227e5196.js +0 -4
  311. package/lib/duet/p-2545734a.entry.js +0 -4
  312. package/lib/duet/p-2b8316ee.system.entry.js +0 -4
  313. package/lib/duet/p-477c2e5c.entry.js +0 -4
  314. package/lib/duet/p-50b4fb2c.js +0 -4
  315. package/lib/duet/p-66bf27b9.system.entry.js +0 -4
  316. package/lib/duet/p-68ecdc4f.system.entry.js +0 -4
  317. package/lib/duet/p-853cd059.js +0 -4
  318. package/lib/duet/p-a16a58c1.system.js +0 -4
  319. package/lib/duet/p-b0c16ee5.entry.js +0 -4
  320. package/lib/duet/p-b3a2a1e8.entry.js +0 -4
  321. package/lib/duet/p-bb12b972.system.js +0 -4
  322. package/lib/duet/p-c63e49e2.system.entry.js +0 -4
  323. package/lib/duet/p-e6349dd2.entry.js +0 -4
  324. package/lib/duet/p-ef3fc3f3.system.js +0 -4
  325. package/lib/esm/duet-editable-table-button.entry.js +0 -92
  326. package/lib/esm-es5/duet-editable-table-button.entry.js +0 -4
  327. package/lib/esm-es5/duet-editable-table_4.entry.js +0 -4
  328. package/lib/esm-es5/focus-utils-6db957a7.js +0 -4
  329. package/lib/esm-es5/keyboard-utils-584cedd7.js +0 -4
  330. package/lib/esm-es5/token-utils-75f78ca4.js +0 -4
  331. package/lib/types/components/duet-editable-table/duet-editable-table-button.d.ts +0 -73
  332. package/lib/types/components/duet-editable-table/duet-editable-table-item.d.ts +0 -76
@@ -6,9 +6,10 @@
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
8
  import { DuetColor, DuetDirection, DuetGridBreakpoint, DuetHeadingLevel, DuetIconName, DuetLanguage, DuetLocale, DuetMargin, DuetPadding, DuetStatus, DuetTheme, DuetTooltipDirection, DuetVisualHeadingLevel } from "./common-types";
9
+ import { DuetActionButtonEvent, DuetActionButtonIconSize } from "./components/duet-action-button/duet-action-button";
9
10
  import { DuetLangObject } from "./utils/language-utils";
10
11
  import { DuetAlertEvent } from "./components/duet-alert/duet-alert";
11
- import { DuetButtonIconSize, DuetButtonSize, DuetButtonVariation, DuetButtonWrapping } from "./components/duet-button/duet-button";
12
+ import { DuetButtonIconSize, DuetButtonSize, DuetButtonTextCentering, DuetButtonVariation, DuetButtonWrapping } from "./components/duet-button/duet-button";
12
13
  import { DuetCaptionSize } from "./components/duet-caption/duet-caption";
13
14
  import { DuetCardPadding, DuetCardToggleEvent, DuetCardVariation } from "./components/duet-card/duet-card";
14
15
  import { DuetCheckboxEvent } from "./components/duet-checkbox/duet-checkbox";
@@ -17,10 +18,8 @@ import { DuetCollapsibleHeadingFontSize, DuetCollapsibleToggleEvent, DuetCollaps
17
18
  import { DuetCookieConsentEvent } from "./components/duet-cookie-consent/duet-cookie-consent";
18
19
  import { DuetDatePickerChangeEvent, DuetDatePickerDirection, DuetDatePickerFocusEvent } from "./components/duet-date-picker/duet-date-picker";
19
20
  import { DuetDividerMargin } from "./components/duet-divider/duet-divider";
20
- import { DuetEditableTableGroupNames, DuetEditableTableItems } from "./components/duet-editable-table/duet-editable-table";
21
- import { DuetEditableTableActions } from "./components/duet-editable-table/duet-editable-table-item";
22
- import { DuetEditableTableActionButtonItems, DuetEditableTableItemEvent } from "./components/duet-editable-table/duet-editable-table-button";
23
- import { DuetEditableTableActions as DuetEditableTableActions1, DuetEditableTableItemData, DuetEditableTableItemEvent as DuetEditableTableItemEvent1 } from "./components/duet-editable-table/duet-editable-table-item";
21
+ import { DuetTableBreakpoint, DuetTableStickyDistance, DuetTableVariant } from "./components/duet-table/duet-table";
22
+ import { DuetEditableTableActions, DuetEditableTableColumns, DuetEditableTableRows, DuetTableMenuEvent, DuetTableToggleEvent } from "./components/duet-editable-table/duet-editable-table";
24
23
  import { DuetEmptyStateSize } from "./components/duet-empty-state/duet-empty-state";
25
24
  import { DuetFooterAnalyticsEvent, DuetFooterChangeEvent, DuetFooterVariation } from "./components/duet-footer/duet-footer";
26
25
  import { DuetGridAlignment, DuetGridDistribution, DuetGridMobileAlignment } from "./components/duet-grid/duet-grid";
@@ -36,24 +35,88 @@ import { DuetLogoSize } from "./components/duet-logo/duet-logo";
36
35
  import { DuetModalCloseEvent, DuetModalSize } from "./components/duet-modal/duet-modal";
37
36
  import { DuetNotificationDrawerDirection } from "./components/duet-notification-drawer/duet-notification-drawer";
38
37
  import { DuetNumberInputEvent } from "./components/duet-number-input/duet-number-input";
38
+ import { DuetPaginationPageEvent, DuetPaginationVariation } from "./components/duet-pagination/duet-pagination";
39
39
  import { DuetParagraphSize, DuetParagraphVariation, DuetParagraphWeight } from "./components/duet-paragraph/duet-paragraph";
40
40
  import { DuetRadioEvent } from "./components/duet-radio/duet-radio";
41
41
  import { DuetRangeChangeEvent } from "./components/duet-range-slider/duet-range-slider";
42
- import { DuetSelectEvent, DuetSelectItems } from "./components/duet-select/duet-select";
42
+ import { DuetRangeStepperUpdateEvent } from "./components/duet-range-stepper/duet-range-stepper";
43
+ import { DuetSelectEvent, DuetSelectItems, DuetSelectVariation } from "./components/duet-select/duet-select";
43
44
  import { DuetSpacerBreakpoint, DuetSpacerSize } from "./components/duet-spacer/duet-spacer";
44
45
  import { DuetSpinnerSize } from "./components/duet-spinner/duet-spinner";
45
46
  import { DuetStepClickEvent, DuetStepState } from "./components/duet-step/duet-step";
46
47
  import { DuetStepChangeEvent } from "./components/duet-stepper/duet-stepper";
47
48
  import { DuetTabGroupEvent, DuetTabVariation } from "./components/duet-tab-group/duet-tab-group";
48
- import { DuetTableBreakpoint, DuetTableStickyDistance, DuetTableVariant } from "./components/duet-table/duet-table";
49
+ import { DuetTableBreakpoint as DuetTableBreakpoint1, DuetTableStickyDistance as DuetTableStickyDistance1, DuetTableVariant as DuetTableVariant1 } from "./components/duet-table/duet-table";
49
50
  import { DuetTextareaEvent } from "./components/duet-textarea/duet-textarea";
50
51
  import { DuetToggleChangeEvent } from "./components/duet-toggle/duet-toggle";
51
52
  import { DuetTooltipBreakpoint } from "./components/duet-tooltip/duet-tooltip";
53
+ import { DuetEditableTableActions as DuetEditableTableActions1 } from "./components/duet-editable-table/duet-editable-table";
52
54
  import { StatusMessage } from "./components/duet-upload-aria-status/duet-upload-aria-status";
53
- import { DuetEditableTableGroupNames as DuetEditableTableGroupNames1 } from "./components/duet-editable-table/duet-editable-table";
54
- import { DuetUploadEvent, StringMap } from "./components/duet-upload/duet-upload";
55
+ import { DuetUploadEvent, DuetUploadTableGroupName, StringMap } from "./components/duet-upload/duet-upload";
55
56
  import { StatusMessage as StatusMessage1 } from "./components/duet-upload-aria-status/duet-upload-aria-status";
56
57
  export namespace Components {
58
+ interface DuetActionButton {
59
+ /**
60
+ * Name of id of action that was called being called
61
+ */
62
+ "actionId": string;
63
+ /**
64
+ * Name of id of action that was called being called
65
+ */
66
+ "actionMeta": Record<any, any> | string;
67
+ /**
68
+ * Name of action being called
69
+ */
70
+ "actionName": string;
71
+ /**
72
+ * Used to indicate which dom element with ID this element controls
73
+ */
74
+ "ariaControls": string;
75
+ /**
76
+ * Described By id
77
+ */
78
+ "ariaDescribedBy": string;
79
+ /**
80
+ * Aria description the button
81
+ */
82
+ "ariaDescription": string;
83
+ /**
84
+ * Default pagination labels
85
+ */
86
+ "ariaLabels": Record<string, string>;
87
+ /**
88
+ * Default pagination labels
89
+ */
90
+ "ariaLabelsDefaults": DuetLangObject;
91
+ /**
92
+ * Custom color to be used for a background, as a design token entered in camelCase or kebab-case. Using this option the icon will always be resized to $size-icon-medium on mobile viewports. Example: "color-primary".
93
+ */
94
+ "background": DuetColor;
95
+ /**
96
+ * Custom color to be used for the icon, as a design token entered in camelCase or kebab-case. Example: "color-primary". This property can also be set to "currentColor" which forces the icon to use the CSS text color of parent element instead. Useful when you want to control the color in stylesheet instead.
97
+ */
98
+ "color": DuetColor;
99
+ /**
100
+ * Disables the button
101
+ */
102
+ "disabled": boolean;
103
+ /**
104
+ * Color of the icon to display
105
+ */
106
+ "iconColor": string;
107
+ /**
108
+ * Name of the icon to display
109
+ */
110
+ "iconName": string;
111
+ /**
112
+ * Size of the icon
113
+ */
114
+ "iconSize": DuetActionButtonIconSize;
115
+ /**
116
+ * Theme of the pagination.
117
+ */
118
+ "theme": DuetTheme;
119
+ }
57
120
  interface DuetAlert {
58
121
  /**
59
122
  * Adds accessible label for the dismissible alert close button.
@@ -171,10 +234,18 @@ export namespace Components {
171
234
  * Indicates the id of a component owned by the button.
172
235
  */
173
236
  "accessibleOwns": string;
237
+ /**
238
+ * Use this property to add an aria-haspopup attribute to a button, if you are using it as a menu button.
239
+ */
240
+ "accessiblePopup": string;
174
241
  /**
175
242
  * Tells screen reader the element is pressed.
176
243
  */
177
244
  "accessiblePressed": boolean;
245
+ /**
246
+ * Centers the text of a button
247
+ */
248
+ "centerText": DuetButtonTextCentering;
178
249
  /**
179
250
  * Custom color to be used for text, as a design token entered in camelCase or kebab-case. Example: "color-primary".
180
251
  */
@@ -769,93 +840,52 @@ export namespace Components {
769
840
  */
770
841
  "accessibleRole": string;
771
842
  /**
772
- * Array of internationalized defaults for the default action labels.
773
- */
774
- "actionLabelDefaults": DuetLangObject;
775
- /**
776
- * Array of actions that are mapped via the map variable to the various groups defined in group.
843
+ * Define actions for all items in a table An alternative to inline HTML table. required for Sortable tables
777
844
  * @default undefined
778
- * @example [{ variation: "default", icon: "action-edit-2", id: "edit", map: ["success"], label: { fi: " Label", en: " Label", sv: " Label", } }]
779
- */
780
- "actions": DuetEditableTableActions | string;
781
- /**
782
- * Key used to set vertical alignment of action buttons
783
- */
784
- "alignment": string;
785
- /**
786
- * Array of group names that you want the editable table to display (can be used to hide or show groups depending on conditions).
787
- * @default { id: "all", label: this.groupsLabelDefaults, actionLabel: this.actionLabelDefaults }.
788
- * @example [{ id: "success", label: {fi: "Onnistunut", en: "Success", sv: "Alt klart", }}].
789
845
  */
790
- "groups": DuetEditableTableGroupNames | string;
846
+ "actions": DuetEditableTableActions;
791
847
  /**
792
- * Array of internationalized defaults for the default groups labels.
848
+ * Duet-table: By default the table is responsive - it will be flattened at narrow viewport widths. This prop controls the breakpoint at which the table should be rendered as a _regular_ table. Set to "none" to disable the responsive functionality. Set to "none-scrollable" to disable responsive functionality _and_ allow horizontal scrolling - this is useful for comparison tables where it's important to maintain column and row layout.
793
849
  */
794
- "groupsLabelDefaults": DuetLangObject;
850
+ "breakpoint": DuetTableBreakpoint;
795
851
  /**
796
- * Shows or hides the table labels.
852
+ * Define columns for a table An alternative to inline HTML table. required for Sortable tables
853
+ * @default undefined
797
854
  */
798
- "hideGroups": boolean;
855
+ "columns": DuetEditableTableColumns;
799
856
  /**
800
- * Map of items that contain list of things.
857
+ * Optional id that get passed to the table and used to setup ::parts
801
858
  */
802
- "items": DuetEditableTableItems;
859
+ "groupId": string;
803
860
  /**
804
- * Theme of the table.
861
+ * Duet-table: margin of the component.
805
862
  */
806
- "theme": DuetTheme;
863
+ "margin": DuetMargin;
807
864
  /**
808
- * Method to force an update of a tabular data array. when called the method will rerender the entire tabular structure.
865
+ * Define rows for a table An alternative to inline HTML table. required for Sortable tables
866
+ * @default undefined
809
867
  */
810
- "updateTable": (passedItems?: DuetEditableTableItems) => Promise<void>;
811
- }
812
- interface DuetEditableTableButton {
868
+ "rows": DuetEditableTableRows;
813
869
  /**
814
- * action items passed from host component
870
+ * Controls whether the table is sortable by headers
815
871
  */
816
- "actions": DuetEditableTableActionButtonItems;
872
+ "sortable": boolean;
817
873
  /**
818
- * group associated with action
874
+ * Duet-table: Controls whether the table has a sticky header. Sticky headers are not compatible with breakpoint="none-scrollable".
819
875
  */
820
- "group": string;
876
+ "sticky": boolean;
821
877
  /**
822
- * key of the item in the map
878
+ * Duet-table: Adjust the distance from top of the viewport (in pixels) when the table header becomes sticky.
823
879
  */
824
- "keyName": string;
880
+ "stickyDistance": DuetTableStickyDistance;
825
881
  /**
826
- * Theme of the empty state component.
882
+ * Theme of the table.
827
883
  */
828
884
  "theme": DuetTheme;
829
885
  /**
830
- * uid that gets passed along when the action is emitted
886
+ * Duet-table: Style variation of the table.
831
887
  */
832
- "uid": string;
833
- }
834
- interface DuetEditableTableItem {
835
- /**
836
- * Actions that can be performed on the element
837
- */
838
- "actions": DuetEditableTableActions;
839
- /**
840
- * Key used to set vertical alignment of action buttons
841
- */
842
- "alignment": string;
843
- /**
844
- * Object of data itemsused to render the entire row
845
- */
846
- "data": DuetEditableTableItemData;
847
- /**
848
- * GroupId used to pierce the shadowdom - gets concatenated with "content & actions" and used as part="groupIDcontent/actions" to pierce the content/Action item
849
- */
850
- "groupId": string;
851
- /**
852
- * Key used to identify item, when running actions
853
- */
854
- "keyName": string;
855
- /**
856
- * Theme of the empty state component.
857
- */
858
- "theme": DuetTheme;
888
+ "variation": DuetTableVariant;
859
889
  }
860
890
  interface DuetEmptyState {
861
891
  /**
@@ -1848,6 +1878,48 @@ export namespace Components {
1848
1878
  */
1849
1879
  "value": string;
1850
1880
  }
1881
+ interface DuetPagination {
1882
+ /**
1883
+ * Default pagination labels
1884
+ */
1885
+ "accessibleLabels": Record<string, string>;
1886
+ /**
1887
+ * Default pagination labels
1888
+ */
1889
+ "accessibleLabelsDefaults": DuetLangObject;
1890
+ /**
1891
+ * Used to indicate which dom element with ID this element controls
1892
+ */
1893
+ "ariaControls": string;
1894
+ /**
1895
+ * The current page
1896
+ */
1897
+ "current": number;
1898
+ /**
1899
+ * Characters to use for the jump buttons.
1900
+ */
1901
+ "jumpString": string;
1902
+ /**
1903
+ * The size of the take, when paginating.
1904
+ */
1905
+ "take": number;
1906
+ /**
1907
+ * Theme of the pagination.
1908
+ */
1909
+ "theme": DuetTheme;
1910
+ /**
1911
+ * The total size of the paginating data
1912
+ */
1913
+ "total": number;
1914
+ /**
1915
+ * Variation of the paginator (compact and default supported)
1916
+ */
1917
+ "variation": DuetPaginationVariation;
1918
+ /**
1919
+ * Amount of visible page numbers to show
1920
+ */
1921
+ "visibleItems": number;
1922
+ }
1851
1923
  interface DuetParagraph {
1852
1924
  /**
1853
1925
  * Custom color to be used for text, as a design token entered in camelCase or kebab-case. Example: "color-primary".
@@ -2122,6 +2194,39 @@ export namespace Components {
2122
2194
  */
2123
2195
  "value": number;
2124
2196
  }
2197
+ interface DuetRangeStepper {
2198
+ /**
2199
+ * Used to indicate which dom element with ID this element controls
2200
+ */
2201
+ "ariaControls": string;
2202
+ /**
2203
+ * Default pagination labels
2204
+ */
2205
+ "ariaLabels": Record<string, string>;
2206
+ /**
2207
+ * Default range stepper labels
2208
+ */
2209
+ "ariaLabelsDefaults": DuetLangObject;
2210
+ /**
2211
+ * Start value
2212
+ * @default 1
2213
+ */
2214
+ "stepIndex": number;
2215
+ /**
2216
+ * How big is the step
2217
+ * @default 99
2218
+ */
2219
+ "stepSize": number;
2220
+ /**
2221
+ * Theme of the component.
2222
+ */
2223
+ "theme": DuetTheme;
2224
+ /**
2225
+ * Total of
2226
+ * @default undefined
2227
+ */
2228
+ "total": number;
2229
+ }
2125
2230
  interface DuetScrollable {
2126
2231
  /**
2127
2232
  * Optional identifier to add to buttons in the tab group
@@ -2229,6 +2334,10 @@ export namespace Components {
2229
2334
  * The selected value of the select
2230
2335
  */
2231
2336
  "value": string;
2337
+ /**
2338
+ * Variation of dropdown. -tiny is used for small numbers / tiny option ranges.
2339
+ */
2340
+ "variation": DuetSelectVariation;
2232
2341
  }
2233
2342
  interface DuetSpacer {
2234
2343
  /**
@@ -2712,7 +2821,7 @@ export namespace Components {
2712
2821
  /**
2713
2822
  * Default actions added to the internally used duet-editable-table
2714
2823
  */
2715
- "actions": DuetEditableTableActions | string;
2824
+ "actions": DuetEditableTableActions;
2716
2825
  /**
2717
2826
  * Key used to set vertical alignment of action buttons
2718
2827
  */
@@ -2786,7 +2895,7 @@ export namespace Components {
2786
2895
  * @required
2787
2896
  * @example [{ id: "success", label: {fi: "Onnistunut", en: "Success", sv: "Alt klart", }}]
2788
2897
  */
2789
- "groups": DuetEditableTableGroupNames | string;
2898
+ "groups": DuetUploadTableGroupName[];
2790
2899
  /**
2791
2900
  * If set the upload component will not display an upload button, you will have to create one yourself and call the exposed method startUpload
2792
2901
  */
@@ -2917,6 +3026,12 @@ export namespace Components {
2917
3026
  }
2918
3027
  }
2919
3028
  declare global {
3029
+ interface HTMLDuetActionButtonElement extends Components.DuetActionButton, HTMLStencilElement {
3030
+ }
3031
+ var HTMLDuetActionButtonElement: {
3032
+ prototype: HTMLDuetActionButtonElement;
3033
+ new (): HTMLDuetActionButtonElement;
3034
+ };
2920
3035
  interface HTMLDuetAlertElement extends Components.DuetAlert, HTMLStencilElement {
2921
3036
  }
2922
3037
  var HTMLDuetAlertElement: {
@@ -3007,18 +3122,6 @@ declare global {
3007
3122
  prototype: HTMLDuetEditableTableElement;
3008
3123
  new (): HTMLDuetEditableTableElement;
3009
3124
  };
3010
- interface HTMLDuetEditableTableButtonElement extends Components.DuetEditableTableButton, HTMLStencilElement {
3011
- }
3012
- var HTMLDuetEditableTableButtonElement: {
3013
- prototype: HTMLDuetEditableTableButtonElement;
3014
- new (): HTMLDuetEditableTableButtonElement;
3015
- };
3016
- interface HTMLDuetEditableTableItemElement extends Components.DuetEditableTableItem, HTMLStencilElement {
3017
- }
3018
- var HTMLDuetEditableTableItemElement: {
3019
- prototype: HTMLDuetEditableTableItemElement;
3020
- new (): HTMLDuetEditableTableItemElement;
3021
- };
3022
3125
  interface HTMLDuetEmptyStateElement extends Components.DuetEmptyState, HTMLStencilElement {
3023
3126
  }
3024
3127
  var HTMLDuetEmptyStateElement: {
@@ -3139,6 +3242,12 @@ declare global {
3139
3242
  prototype: HTMLDuetNumberInputElement;
3140
3243
  new (): HTMLDuetNumberInputElement;
3141
3244
  };
3245
+ interface HTMLDuetPaginationElement extends Components.DuetPagination, HTMLStencilElement {
3246
+ }
3247
+ var HTMLDuetPaginationElement: {
3248
+ prototype: HTMLDuetPaginationElement;
3249
+ new (): HTMLDuetPaginationElement;
3250
+ };
3142
3251
  interface HTMLDuetParagraphElement extends Components.DuetParagraph, HTMLStencilElement {
3143
3252
  }
3144
3253
  var HTMLDuetParagraphElement: {
@@ -3169,6 +3278,12 @@ declare global {
3169
3278
  prototype: HTMLDuetRangeSliderElement;
3170
3279
  new (): HTMLDuetRangeSliderElement;
3171
3280
  };
3281
+ interface HTMLDuetRangeStepperElement extends Components.DuetRangeStepper, HTMLStencilElement {
3282
+ }
3283
+ var HTMLDuetRangeStepperElement: {
3284
+ prototype: HTMLDuetRangeStepperElement;
3285
+ new (): HTMLDuetRangeStepperElement;
3286
+ };
3172
3287
  interface HTMLDuetScrollableElement extends Components.DuetScrollable, HTMLStencilElement {
3173
3288
  }
3174
3289
  var HTMLDuetScrollableElement: {
@@ -3266,6 +3381,7 @@ declare global {
3266
3381
  new (): HTMLDuetVisuallyHiddenElement;
3267
3382
  };
3268
3383
  interface HTMLElementTagNameMap {
3384
+ "duet-action-button": HTMLDuetActionButtonElement;
3269
3385
  "duet-alert": HTMLDuetAlertElement;
3270
3386
  "duet-badge": HTMLDuetBadgeElement;
3271
3387
  "duet-breadcrumb": HTMLDuetBreadcrumbElement;
@@ -3281,8 +3397,6 @@ declare global {
3281
3397
  "duet-date-picker": HTMLDuetDatePickerElement;
3282
3398
  "duet-divider": HTMLDuetDividerElement;
3283
3399
  "duet-editable-table": HTMLDuetEditableTableElement;
3284
- "duet-editable-table-button": HTMLDuetEditableTableButtonElement;
3285
- "duet-editable-table-item": HTMLDuetEditableTableItemElement;
3286
3400
  "duet-empty-state": HTMLDuetEmptyStateElement;
3287
3401
  "duet-fieldset": HTMLDuetFieldsetElement;
3288
3402
  "duet-footer": HTMLDuetFooterElement;
@@ -3303,11 +3417,13 @@ declare global {
3303
3417
  "duet-notification": HTMLDuetNotificationElement;
3304
3418
  "duet-notification-drawer": HTMLDuetNotificationDrawerElement;
3305
3419
  "duet-number-input": HTMLDuetNumberInputElement;
3420
+ "duet-pagination": HTMLDuetPaginationElement;
3306
3421
  "duet-paragraph": HTMLDuetParagraphElement;
3307
3422
  "duet-progress": HTMLDuetProgressElement;
3308
3423
  "duet-radio": HTMLDuetRadioElement;
3309
3424
  "duet-radio-group": HTMLDuetRadioGroupElement;
3310
3425
  "duet-range-slider": HTMLDuetRangeSliderElement;
3426
+ "duet-range-stepper": HTMLDuetRangeStepperElement;
3311
3427
  "duet-scrollable": HTMLDuetScrollableElement;
3312
3428
  "duet-select": HTMLDuetSelectElement;
3313
3429
  "duet-spacer": HTMLDuetSpacerElement;
@@ -3327,6 +3443,72 @@ declare global {
3327
3443
  }
3328
3444
  }
3329
3445
  declare namespace LocalJSX {
3446
+ interface DuetActionButton {
3447
+ /**
3448
+ * Name of id of action that was called being called
3449
+ */
3450
+ "actionId"?: string;
3451
+ /**
3452
+ * Name of id of action that was called being called
3453
+ */
3454
+ "actionMeta"?: Record<any, any> | string;
3455
+ /**
3456
+ * Name of action being called
3457
+ */
3458
+ "actionName"?: string;
3459
+ /**
3460
+ * Used to indicate which dom element with ID this element controls
3461
+ */
3462
+ "ariaControls"?: string;
3463
+ /**
3464
+ * Described By id
3465
+ */
3466
+ "ariaDescribedBy"?: string;
3467
+ /**
3468
+ * Aria description the button
3469
+ */
3470
+ "ariaDescription"?: string;
3471
+ /**
3472
+ * Default pagination labels
3473
+ */
3474
+ "ariaLabels"?: Record<string, string>;
3475
+ /**
3476
+ * Default pagination labels
3477
+ */
3478
+ "ariaLabelsDefaults"?: DuetLangObject;
3479
+ /**
3480
+ * Custom color to be used for a background, as a design token entered in camelCase or kebab-case. Using this option the icon will always be resized to $size-icon-medium on mobile viewports. Example: "color-primary".
3481
+ */
3482
+ "background"?: DuetColor;
3483
+ /**
3484
+ * Custom color to be used for the icon, as a design token entered in camelCase or kebab-case. Example: "color-primary". This property can also be set to "currentColor" which forces the icon to use the CSS text color of parent element instead. Useful when you want to control the color in stylesheet instead.
3485
+ */
3486
+ "color"?: DuetColor;
3487
+ /**
3488
+ * Disables the button
3489
+ */
3490
+ "disabled"?: boolean;
3491
+ /**
3492
+ * Color of the icon to display
3493
+ */
3494
+ "iconColor"?: string;
3495
+ /**
3496
+ * Name of the icon to display
3497
+ */
3498
+ "iconName"?: string;
3499
+ /**
3500
+ * Size of the icon
3501
+ */
3502
+ "iconSize"?: DuetActionButtonIconSize;
3503
+ /**
3504
+ * Emitted a page selection has been made
3505
+ */
3506
+ "onDuetActionEvent"?: (event: CustomEvent<DuetActionButtonEvent>) => void;
3507
+ /**
3508
+ * Theme of the pagination.
3509
+ */
3510
+ "theme"?: DuetTheme;
3511
+ }
3330
3512
  interface DuetAlert {
3331
3513
  /**
3332
3514
  * Adds accessible label for the dismissible alert close button.
@@ -3448,10 +3630,18 @@ declare namespace LocalJSX {
3448
3630
  * Indicates the id of a component owned by the button.
3449
3631
  */
3450
3632
  "accessibleOwns"?: string;
3633
+ /**
3634
+ * Use this property to add an aria-haspopup attribute to a button, if you are using it as a menu button.
3635
+ */
3636
+ "accessiblePopup"?: string;
3451
3637
  /**
3452
3638
  * Tells screen reader the element is pressed.
3453
3639
  */
3454
3640
  "accessiblePressed"?: boolean;
3641
+ /**
3642
+ * Centers the text of a button
3643
+ */
3644
+ "centerText"?: DuetButtonTextCentering;
3455
3645
  /**
3456
3646
  * Custom color to be used for text, as a design token entered in camelCase or kebab-case. Example: "color-primary".
3457
3647
  */
@@ -4067,77 +4257,60 @@ declare namespace LocalJSX {
4067
4257
  */
4068
4258
  "accessibleRole"?: string;
4069
4259
  /**
4070
- * Array of internationalized defaults for the default action labels.
4071
- */
4072
- "actionLabelDefaults"?: DuetLangObject;
4073
- /**
4074
- * Array of actions that are mapped via the map variable to the various groups defined in group.
4260
+ * Define actions for all items in a table An alternative to inline HTML table. required for Sortable tables
4075
4261
  * @default undefined
4076
- * @example [{ variation: "default", icon: "action-edit-2", id: "edit", map: ["success"], label: { fi: " Label", en: " Label", sv: " Label", } }]
4077
- */
4078
- "actions"?: DuetEditableTableActions | string;
4079
- /**
4080
- * Key used to set vertical alignment of action buttons
4081
- */
4082
- "alignment"?: string;
4083
- /**
4084
- * Array of group names that you want the editable table to display (can be used to hide or show groups depending on conditions).
4085
- * @default { id: "all", label: this.groupsLabelDefaults, actionLabel: this.actionLabelDefaults }.
4086
- * @example [{ id: "success", label: {fi: "Onnistunut", en: "Success", sv: "Alt klart", }}].
4087
4262
  */
4088
- "groups"?: DuetEditableTableGroupNames | string;
4263
+ "actions"?: DuetEditableTableActions;
4089
4264
  /**
4090
- * Array of internationalized defaults for the default groups labels.
4265
+ * Duet-table: By default the table is responsive - it will be flattened at narrow viewport widths. This prop controls the breakpoint at which the table should be rendered as a _regular_ table. Set to "none" to disable the responsive functionality. Set to "none-scrollable" to disable responsive functionality _and_ allow horizontal scrolling - this is useful for comparison tables where it's important to maintain column and row layout.
4091
4266
  */
4092
- "groupsLabelDefaults"?: DuetLangObject;
4267
+ "breakpoint"?: DuetTableBreakpoint;
4093
4268
  /**
4094
- * Shows or hides the table labels.
4269
+ * Define columns for a table An alternative to inline HTML table. required for Sortable tables
4270
+ * @default undefined
4095
4271
  */
4096
- "hideGroups"?: boolean;
4272
+ "columns"?: DuetEditableTableColumns;
4097
4273
  /**
4098
- * Map of items that contain list of things.
4274
+ * Optional id that get passed to the table and used to setup ::parts
4099
4275
  */
4100
- "items"?: DuetEditableTableItems;
4276
+ "groupId"?: string;
4101
4277
  /**
4102
- * Theme of the table.
4278
+ * Duet-table: margin of the component.
4103
4279
  */
4104
- "theme"?: DuetTheme;
4105
- }
4106
- interface DuetEditableTableButton {
4280
+ "margin"?: DuetMargin;
4107
4281
  /**
4108
- * Emitted when any action is clicked
4282
+ * Event emitted when table is sortable and a header item is clicked/enter is pressed
4109
4283
  */
4110
- "onDuetEditableItemAction"?: (event: CustomEvent<DuetEditableTableItemEvent>) => void;
4284
+ "onDuetMenuClick"?: (event: CustomEvent<DuetTableMenuEvent>) => void;
4111
4285
  /**
4112
- * Theme of the empty state component.
4286
+ * Event emitted when table is sortable and a header item is clicked/enter is pressed
4113
4287
  */
4114
- "theme"?: DuetTheme;
4115
- }
4116
- interface DuetEditableTableItem {
4288
+ "onDuetTableToggle"?: (event: CustomEvent<DuetTableToggleEvent>) => void;
4117
4289
  /**
4118
- * Actions that can be performed on the element
4290
+ * Define rows for a table An alternative to inline HTML table. required for Sortable tables
4291
+ * @default undefined
4119
4292
  */
4120
- "actions"?: DuetEditableTableActions;
4293
+ "rows"?: DuetEditableTableRows;
4121
4294
  /**
4122
- * Key used to set vertical alignment of action buttons
4295
+ * Controls whether the table is sortable by headers
4123
4296
  */
4124
- "alignment"?: string;
4297
+ "sortable"?: boolean;
4125
4298
  /**
4126
- * Object of data itemsused to render the entire row
4299
+ * Duet-table: Controls whether the table has a sticky header. Sticky headers are not compatible with breakpoint="none-scrollable".
4127
4300
  */
4128
- "data"?: DuetEditableTableItemData;
4301
+ "sticky"?: boolean;
4129
4302
  /**
4130
- * Key used to identify item, when running actions
4303
+ * Duet-table: Adjust the distance from top of the viewport (in pixels) when the table header becomes sticky.
4131
4304
  */
4132
- "keyName"?: string;
4305
+ "stickyDistance"?: DuetTableStickyDistance;
4133
4306
  /**
4134
- * Emitted when any action is clicked
4307
+ * Theme of the table.
4135
4308
  */
4136
- "onDuetEditableItemAction"?: (event: CustomEvent<DuetEditableTableItemEvent>) => void;
4309
+ "theme"?: DuetTheme;
4137
4310
  /**
4138
- * Theme of the empty state component.
4311
+ * Duet-table: Style variation of the table.
4139
4312
  */
4140
- "theme"?: DuetTheme;
4313
+ "variation"?: DuetTableVariant;
4141
4314
  }
4142
4315
  interface DuetEmptyState {
4143
4316
  /**
@@ -5193,6 +5366,52 @@ declare namespace LocalJSX {
5193
5366
  */
5194
5367
  "value"?: string;
5195
5368
  }
5369
+ interface DuetPagination {
5370
+ /**
5371
+ * Default pagination labels
5372
+ */
5373
+ "accessibleLabels"?: Record<string, string>;
5374
+ /**
5375
+ * Default pagination labels
5376
+ */
5377
+ "accessibleLabelsDefaults"?: DuetLangObject;
5378
+ /**
5379
+ * Used to indicate which dom element with ID this element controls
5380
+ */
5381
+ "ariaControls"?: string;
5382
+ /**
5383
+ * The current page
5384
+ */
5385
+ "current"?: number;
5386
+ /**
5387
+ * Characters to use for the jump buttons.
5388
+ */
5389
+ "jumpString"?: string;
5390
+ /**
5391
+ * Emitted a page selection has been made
5392
+ */
5393
+ "onDuetPageChange"?: (event: CustomEvent<DuetPaginationPageEvent>) => void;
5394
+ /**
5395
+ * The size of the take, when paginating.
5396
+ */
5397
+ "take"?: number;
5398
+ /**
5399
+ * Theme of the pagination.
5400
+ */
5401
+ "theme"?: DuetTheme;
5402
+ /**
5403
+ * The total size of the paginating data
5404
+ */
5405
+ "total"?: number;
5406
+ /**
5407
+ * Variation of the paginator (compact and default supported)
5408
+ */
5409
+ "variation"?: DuetPaginationVariation;
5410
+ /**
5411
+ * Amount of visible page numbers to show
5412
+ */
5413
+ "visibleItems"?: number;
5414
+ }
5196
5415
  interface DuetParagraph {
5197
5416
  /**
5198
5417
  * Custom color to be used for text, as a design token entered in camelCase or kebab-case. Example: "color-primary".
@@ -5476,6 +5695,43 @@ declare namespace LocalJSX {
5476
5695
  */
5477
5696
  "value"?: number;
5478
5697
  }
5698
+ interface DuetRangeStepper {
5699
+ /**
5700
+ * Used to indicate which dom element with ID this element controls
5701
+ */
5702
+ "ariaControls"?: string;
5703
+ /**
5704
+ * Default pagination labels
5705
+ */
5706
+ "ariaLabels"?: Record<string, string>;
5707
+ /**
5708
+ * Default range stepper labels
5709
+ */
5710
+ "ariaLabelsDefaults"?: DuetLangObject;
5711
+ /**
5712
+ * Event emitted when the step heading is clicked.
5713
+ */
5714
+ "onDuetRangeStepUpdate"?: (event: CustomEvent<DuetRangeStepperUpdateEvent>) => void;
5715
+ /**
5716
+ * Start value
5717
+ * @default 1
5718
+ */
5719
+ "stepIndex"?: number;
5720
+ /**
5721
+ * How big is the step
5722
+ * @default 99
5723
+ */
5724
+ "stepSize"?: number;
5725
+ /**
5726
+ * Theme of the component.
5727
+ */
5728
+ "theme"?: DuetTheme;
5729
+ /**
5730
+ * Total of
5731
+ * @default undefined
5732
+ */
5733
+ "total"?: number;
5734
+ }
5479
5735
  interface DuetScrollable {
5480
5736
  /**
5481
5737
  * Optional identifier to add to buttons in the tab group
@@ -5591,6 +5847,10 @@ declare namespace LocalJSX {
5591
5847
  * The selected value of the select
5592
5848
  */
5593
5849
  "value"?: string;
5850
+ /**
5851
+ * Variation of dropdown. -tiny is used for small numbers / tiny option ranges.
5852
+ */
5853
+ "variation"?: DuetSelectVariation;
5594
5854
  }
5595
5855
  interface DuetSpacer {
5596
5856
  /**
@@ -6084,7 +6344,7 @@ declare namespace LocalJSX {
6084
6344
  /**
6085
6345
  * Default actions added to the internally used duet-editable-table
6086
6346
  */
6087
- "actions"?: DuetEditableTableActions | string;
6347
+ "actions"?: DuetEditableTableActions;
6088
6348
  /**
6089
6349
  * Key used to set vertical alignment of action buttons
6090
6350
  */
@@ -6154,7 +6414,7 @@ declare namespace LocalJSX {
6154
6414
  * @required
6155
6415
  * @example [{ id: "success", label: {fi: "Onnistunut", en: "Success", sv: "Alt klart", }}]
6156
6416
  */
6157
- "groups"?: DuetEditableTableGroupNames | string;
6417
+ "groups"?: DuetUploadTableGroupName[];
6158
6418
  /**
6159
6419
  * If set the upload component will not display an upload button, you will have to create one yourself and call the exposed method startUpload
6160
6420
  */
@@ -6304,6 +6564,7 @@ declare namespace LocalJSX {
6304
6564
  interface DuetVisuallyHidden {
6305
6565
  }
6306
6566
  interface IntrinsicElements {
6567
+ "duet-action-button": DuetActionButton;
6307
6568
  "duet-alert": DuetAlert;
6308
6569
  "duet-badge": DuetBadge;
6309
6570
  "duet-breadcrumb": DuetBreadcrumb;
@@ -6319,8 +6580,6 @@ declare namespace LocalJSX {
6319
6580
  "duet-date-picker": DuetDatePicker;
6320
6581
  "duet-divider": DuetDivider;
6321
6582
  "duet-editable-table": DuetEditableTable;
6322
- "duet-editable-table-button": DuetEditableTableButton;
6323
- "duet-editable-table-item": DuetEditableTableItem;
6324
6583
  "duet-empty-state": DuetEmptyState;
6325
6584
  "duet-fieldset": DuetFieldset;
6326
6585
  "duet-footer": DuetFooter;
@@ -6341,11 +6600,13 @@ declare namespace LocalJSX {
6341
6600
  "duet-notification": DuetNotification;
6342
6601
  "duet-notification-drawer": DuetNotificationDrawer;
6343
6602
  "duet-number-input": DuetNumberInput;
6603
+ "duet-pagination": DuetPagination;
6344
6604
  "duet-paragraph": DuetParagraph;
6345
6605
  "duet-progress": DuetProgress;
6346
6606
  "duet-radio": DuetRadio;
6347
6607
  "duet-radio-group": DuetRadioGroup;
6348
6608
  "duet-range-slider": DuetRangeSlider;
6609
+ "duet-range-stepper": DuetRangeStepper;
6349
6610
  "duet-scrollable": DuetScrollable;
6350
6611
  "duet-select": DuetSelect;
6351
6612
  "duet-spacer": DuetSpacer;
@@ -6368,6 +6629,7 @@ export { LocalJSX as JSX };
6368
6629
  declare module "@stencil/core" {
6369
6630
  export namespace JSX {
6370
6631
  interface IntrinsicElements {
6632
+ "duet-action-button": LocalJSX.DuetActionButton & JSXBase.HTMLAttributes<HTMLDuetActionButtonElement>;
6371
6633
  "duet-alert": LocalJSX.DuetAlert & JSXBase.HTMLAttributes<HTMLDuetAlertElement>;
6372
6634
  "duet-badge": LocalJSX.DuetBadge & JSXBase.HTMLAttributes<HTMLDuetBadgeElement>;
6373
6635
  "duet-breadcrumb": LocalJSX.DuetBreadcrumb & JSXBase.HTMLAttributes<HTMLDuetBreadcrumbElement>;
@@ -6383,8 +6645,6 @@ declare module "@stencil/core" {
6383
6645
  "duet-date-picker": LocalJSX.DuetDatePicker & JSXBase.HTMLAttributes<HTMLDuetDatePickerElement>;
6384
6646
  "duet-divider": LocalJSX.DuetDivider & JSXBase.HTMLAttributes<HTMLDuetDividerElement>;
6385
6647
  "duet-editable-table": LocalJSX.DuetEditableTable & JSXBase.HTMLAttributes<HTMLDuetEditableTableElement>;
6386
- "duet-editable-table-button": LocalJSX.DuetEditableTableButton & JSXBase.HTMLAttributes<HTMLDuetEditableTableButtonElement>;
6387
- "duet-editable-table-item": LocalJSX.DuetEditableTableItem & JSXBase.HTMLAttributes<HTMLDuetEditableTableItemElement>;
6388
6648
  "duet-empty-state": LocalJSX.DuetEmptyState & JSXBase.HTMLAttributes<HTMLDuetEmptyStateElement>;
6389
6649
  "duet-fieldset": LocalJSX.DuetFieldset & JSXBase.HTMLAttributes<HTMLDuetFieldsetElement>;
6390
6650
  "duet-footer": LocalJSX.DuetFooter & JSXBase.HTMLAttributes<HTMLDuetFooterElement>;
@@ -6405,11 +6665,13 @@ declare module "@stencil/core" {
6405
6665
  "duet-notification": LocalJSX.DuetNotification & JSXBase.HTMLAttributes<HTMLDuetNotificationElement>;
6406
6666
  "duet-notification-drawer": LocalJSX.DuetNotificationDrawer & JSXBase.HTMLAttributes<HTMLDuetNotificationDrawerElement>;
6407
6667
  "duet-number-input": LocalJSX.DuetNumberInput & JSXBase.HTMLAttributes<HTMLDuetNumberInputElement>;
6668
+ "duet-pagination": LocalJSX.DuetPagination & JSXBase.HTMLAttributes<HTMLDuetPaginationElement>;
6408
6669
  "duet-paragraph": LocalJSX.DuetParagraph & JSXBase.HTMLAttributes<HTMLDuetParagraphElement>;
6409
6670
  "duet-progress": LocalJSX.DuetProgress & JSXBase.HTMLAttributes<HTMLDuetProgressElement>;
6410
6671
  "duet-radio": LocalJSX.DuetRadio & JSXBase.HTMLAttributes<HTMLDuetRadioElement>;
6411
6672
  "duet-radio-group": LocalJSX.DuetRadioGroup & JSXBase.HTMLAttributes<HTMLDuetRadioGroupElement>;
6412
6673
  "duet-range-slider": LocalJSX.DuetRangeSlider & JSXBase.HTMLAttributes<HTMLDuetRangeSliderElement>;
6674
+ "duet-range-stepper": LocalJSX.DuetRangeStepper & JSXBase.HTMLAttributes<HTMLDuetRangeStepperElement>;
6413
6675
  "duet-scrollable": LocalJSX.DuetScrollable & JSXBase.HTMLAttributes<HTMLDuetScrollableElement>;
6414
6676
  "duet-select": LocalJSX.DuetSelect & JSXBase.HTMLAttributes<HTMLDuetSelectElement>;
6415
6677
  "duet-spacer": LocalJSX.DuetSpacer & JSXBase.HTMLAttributes<HTMLDuetSpacerElement>;