@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
@@ -0,0 +1,489 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { Component, Element, Event, h, Host, Prop, State } from "@stencil/core";
5
+ import { createID } from "../../utils/create-id";
6
+ import { debounce } from "../../utils/js-utils";
7
+ import { isKeyboardClick } from "../../utils/keyboard-utils";
8
+ import { getLocaleString } from "../../utils/language-utils";
9
+ import { inheritGlobalTheme } from "../../utils/themeable-component";
10
+ import { getColorByName } from "../../utils/token-utils";
11
+ /**
12
+ * Slot: default slot inside an invisible element, this can be used to enhance accessibility
13
+ * Part: button this part enables style overrides for the button
14
+ * Part: icon this part enables style overrides for the icon
15
+ */
16
+ export class DuetActionButton {
17
+ constructor() {
18
+ this.numbersStore = "";
19
+ /**
20
+ * Theme of the pagination.
21
+ */
22
+ this.theme = "";
23
+ /**
24
+ * Name of the icon to display
25
+ */
26
+ this.iconName = "action-arrow-left-small";
27
+ /**
28
+ * Color of the icon to display
29
+ */
30
+ this.iconColor = "currentColor";
31
+ /**
32
+ * Size of the icon
33
+ */
34
+ this.iconSize = "xx-small";
35
+ /**
36
+ * Name of action being called
37
+ */
38
+ this.actionName = "default-action";
39
+ /**
40
+ * Name of id of action that was called being called
41
+ */
42
+ this.actionId = undefined;
43
+ /**
44
+ * Name of id of action that was called being called
45
+ */
46
+ this.actionMeta = undefined;
47
+ /**
48
+ * Disables the button
49
+ */
50
+ this.disabled = false;
51
+ /**
52
+ * Custom color to be used for the icon, as a design token entered in camelCase
53
+ * or kebab-case. Example: "color-primary". This property can also be set to
54
+ * "currentColor" which forces the icon to use the CSS text color of parent
55
+ * element instead. Useful when you want to control the color in stylesheet
56
+ * instead.
57
+ */
58
+ this.color = "";
59
+ /**
60
+ * Custom color to be used for a background, as a design token entered
61
+ * in camelCase or kebab-case. Using this option the icon will always be resized
62
+ * to $size-icon-medium on mobile viewports. Example: "color-primary".
63
+ */
64
+ this.background = "";
65
+ /**
66
+ * Described By id
67
+ */
68
+ this.ariaDescribedBy = undefined;
69
+ /**
70
+ * Aria description the button
71
+ */
72
+ this.ariaDescription = undefined;
73
+ /**
74
+ * Default pagination labels
75
+ */
76
+ this.ariaLabelsDefaults = {
77
+ en: {
78
+ label: "Click to activate action",
79
+ },
80
+ fi: {
81
+ label: "Klikkaa toiminnon aktivointiin",
82
+ },
83
+ sv: {
84
+ label: "Klicka för att aktivera åtgärd",
85
+ },
86
+ };
87
+ /**
88
+ * Default pagination labels
89
+ */
90
+ this.ariaLabels = getLocaleString(this.ariaLabelsDefaults);
91
+ /**
92
+ * Used to indicate which dom element with ID this element controls
93
+ */
94
+ this.ariaControls = "";
95
+ this.listId = createID("duet-action-button");
96
+ /**
97
+ * Private methods.
98
+ */
99
+ //helper to emit relevant page events
100
+ this.emitPageEvent = debounce(e => {
101
+ this.duetActionEvent.emit({
102
+ component: "duet-action-button",
103
+ originalEvent: e,
104
+ action: this.actionId,
105
+ name: this.actionName,
106
+ meta: this.actionMeta,
107
+ id: this.listId,
108
+ });
109
+ });
110
+ }
111
+ //handle a11y keyboard navigation events
112
+ async onKeyboardDown(e) {
113
+ if (isKeyboardClick(e)) {
114
+ this.emitPageEvent(e);
115
+ }
116
+ }
117
+ //set update current when mouse click on page number
118
+ async onMouseHandler(e) {
119
+ e.preventDefault();
120
+ this.duetActionEvent.emit({
121
+ component: "duet-action-button",
122
+ originalEvent: e,
123
+ action: this.actionName,
124
+ id: this.actionId,
125
+ meta: this.actionMeta,
126
+ });
127
+ }
128
+ /**
129
+ * Component lifecycle events.
130
+ */
131
+ componentWillLoad() {
132
+ inheritGlobalTheme(this);
133
+ }
134
+ /**
135
+ * render() function
136
+ * Always the last one in the class.
137
+ */
138
+ render() {
139
+ const color = this.color === "currentColor" ? "currentColor" : getColorByName(this.color, this.theme);
140
+ const styles = {
141
+ color,
142
+ background: getColorByName(this.background, this.theme),
143
+ "border-color": getColorByName(this.iconColor, this.theme),
144
+ "border-width": "1px",
145
+ "border-style": "solid",
146
+ };
147
+ return (h(Host, { onKeyDown: e => this.onKeyboardDown(e) },
148
+ h("button", { part: "button", style: styles, disabled: this.disabled, id: this.listId, class: {
149
+ "duet-action-button": true,
150
+ "duet-action-button--disabled": this.disabled,
151
+ [`duet-action-button--${this.theme}`]: this.theme !== "",
152
+ }, type: "button", onClick: e => this.onMouseHandler(e), "aria-label": this.ariaLabels.label, "aria-description": this.ariaDescription, "aria-describedby": this.ariaDescribedBy, "aria-controls": this.ariaControls },
153
+ h("duet-icon", { part: "icon", name: this.iconName, color: this.iconColor, margin: "none", size: this.iconSize }),
154
+ h("duet-visually-hidden", null,
155
+ h("slot", null)))));
156
+ }
157
+ static get is() { return "duet-action-button"; }
158
+ static get encapsulation() { return "shadow"; }
159
+ static get originalStyleUrls() { return {
160
+ "$": ["duet-action-button.scss"]
161
+ }; }
162
+ static get styleUrls() { return {
163
+ "$": ["duet-action-button.css"]
164
+ }; }
165
+ static get properties() { return {
166
+ "theme": {
167
+ "type": "string",
168
+ "mutable": true,
169
+ "complexType": {
170
+ "original": "DuetTheme",
171
+ "resolved": "\"\" | \"default\" | \"turva\"",
172
+ "references": {
173
+ "DuetTheme": {
174
+ "location": "import",
175
+ "path": "../../common-types"
176
+ }
177
+ }
178
+ },
179
+ "required": false,
180
+ "optional": false,
181
+ "docs": {
182
+ "tags": [],
183
+ "text": "Theme of the pagination."
184
+ },
185
+ "attribute": "theme",
186
+ "reflect": false,
187
+ "defaultValue": "\"\""
188
+ },
189
+ "iconName": {
190
+ "type": "string",
191
+ "mutable": false,
192
+ "complexType": {
193
+ "original": "string",
194
+ "resolved": "string",
195
+ "references": {}
196
+ },
197
+ "required": false,
198
+ "optional": false,
199
+ "docs": {
200
+ "tags": [],
201
+ "text": "Name of the icon to display"
202
+ },
203
+ "attribute": "icon-name",
204
+ "reflect": false,
205
+ "defaultValue": "\"action-arrow-left-small\""
206
+ },
207
+ "iconColor": {
208
+ "type": "string",
209
+ "mutable": false,
210
+ "complexType": {
211
+ "original": "string",
212
+ "resolved": "string",
213
+ "references": {}
214
+ },
215
+ "required": false,
216
+ "optional": false,
217
+ "docs": {
218
+ "tags": [],
219
+ "text": "Color of the icon to display"
220
+ },
221
+ "attribute": "icon-color",
222
+ "reflect": false,
223
+ "defaultValue": "\"currentColor\""
224
+ },
225
+ "iconSize": {
226
+ "type": "string",
227
+ "mutable": false,
228
+ "complexType": {
229
+ "original": "DuetActionButtonIconSize",
230
+ "resolved": "\"small\" | \"x-small\" | \"xx-small\"",
231
+ "references": {
232
+ "DuetActionButtonIconSize": {
233
+ "location": "local"
234
+ }
235
+ }
236
+ },
237
+ "required": false,
238
+ "optional": false,
239
+ "docs": {
240
+ "tags": [],
241
+ "text": "Size of the icon"
242
+ },
243
+ "attribute": "icon-size",
244
+ "reflect": false,
245
+ "defaultValue": "\"xx-small\""
246
+ },
247
+ "actionName": {
248
+ "type": "string",
249
+ "mutable": false,
250
+ "complexType": {
251
+ "original": "string",
252
+ "resolved": "string",
253
+ "references": {}
254
+ },
255
+ "required": false,
256
+ "optional": false,
257
+ "docs": {
258
+ "tags": [],
259
+ "text": "Name of action being called"
260
+ },
261
+ "attribute": "action-name",
262
+ "reflect": false,
263
+ "defaultValue": "\"default-action\""
264
+ },
265
+ "actionId": {
266
+ "type": "string",
267
+ "mutable": false,
268
+ "complexType": {
269
+ "original": "string",
270
+ "resolved": "string",
271
+ "references": {}
272
+ },
273
+ "required": false,
274
+ "optional": false,
275
+ "docs": {
276
+ "tags": [],
277
+ "text": "Name of id of action that was called being called"
278
+ },
279
+ "attribute": "action-id",
280
+ "reflect": false,
281
+ "defaultValue": "undefined"
282
+ },
283
+ "actionMeta": {
284
+ "type": "string",
285
+ "mutable": false,
286
+ "complexType": {
287
+ "original": "Record<any, any> | string",
288
+ "resolved": "string | { [x: string]: any; }",
289
+ "references": {
290
+ "Record": {
291
+ "location": "global"
292
+ }
293
+ }
294
+ },
295
+ "required": false,
296
+ "optional": false,
297
+ "docs": {
298
+ "tags": [],
299
+ "text": "Name of id of action that was called being called"
300
+ },
301
+ "attribute": "action-meta",
302
+ "reflect": false,
303
+ "defaultValue": "undefined"
304
+ },
305
+ "disabled": {
306
+ "type": "boolean",
307
+ "mutable": false,
308
+ "complexType": {
309
+ "original": "boolean",
310
+ "resolved": "boolean",
311
+ "references": {}
312
+ },
313
+ "required": false,
314
+ "optional": false,
315
+ "docs": {
316
+ "tags": [],
317
+ "text": "Disables the button"
318
+ },
319
+ "attribute": "disabled",
320
+ "reflect": false,
321
+ "defaultValue": "false"
322
+ },
323
+ "color": {
324
+ "type": "string",
325
+ "mutable": false,
326
+ "complexType": {
327
+ "original": "DuetColor",
328
+ "resolved": "string",
329
+ "references": {
330
+ "DuetColor": {
331
+ "location": "import",
332
+ "path": "../../common-types"
333
+ }
334
+ }
335
+ },
336
+ "required": false,
337
+ "optional": false,
338
+ "docs": {
339
+ "tags": [],
340
+ "text": "Custom color to be used for the icon, as a design token entered in camelCase\nor kebab-case. Example: \"color-primary\". This property can also be set to\n\"currentColor\" which forces the icon to use the CSS text color of parent\nelement instead. Useful when you want to control the color in stylesheet\ninstead."
341
+ },
342
+ "attribute": "color",
343
+ "reflect": true,
344
+ "defaultValue": "\"\""
345
+ },
346
+ "background": {
347
+ "type": "string",
348
+ "mutable": false,
349
+ "complexType": {
350
+ "original": "DuetColor",
351
+ "resolved": "string",
352
+ "references": {
353
+ "DuetColor": {
354
+ "location": "import",
355
+ "path": "../../common-types"
356
+ }
357
+ }
358
+ },
359
+ "required": false,
360
+ "optional": false,
361
+ "docs": {
362
+ "tags": [],
363
+ "text": "Custom color to be used for a background, as a design token entered\nin camelCase or kebab-case. Using this option the icon will always be resized\nto $size-icon-medium on mobile viewports. Example: \"color-primary\"."
364
+ },
365
+ "attribute": "background",
366
+ "reflect": false,
367
+ "defaultValue": "\"\""
368
+ },
369
+ "ariaDescribedBy": {
370
+ "type": "string",
371
+ "mutable": false,
372
+ "complexType": {
373
+ "original": "string",
374
+ "resolved": "string",
375
+ "references": {}
376
+ },
377
+ "required": false,
378
+ "optional": false,
379
+ "docs": {
380
+ "tags": [],
381
+ "text": "Described By id"
382
+ },
383
+ "attribute": "accessible-described-by",
384
+ "reflect": false,
385
+ "defaultValue": "undefined"
386
+ },
387
+ "ariaDescription": {
388
+ "type": "string",
389
+ "mutable": false,
390
+ "complexType": {
391
+ "original": "string",
392
+ "resolved": "string",
393
+ "references": {}
394
+ },
395
+ "required": false,
396
+ "optional": false,
397
+ "docs": {
398
+ "tags": [],
399
+ "text": "Aria description the button"
400
+ },
401
+ "attribute": "accessible-description",
402
+ "reflect": false,
403
+ "defaultValue": "undefined"
404
+ },
405
+ "ariaLabelsDefaults": {
406
+ "type": "unknown",
407
+ "mutable": false,
408
+ "complexType": {
409
+ "original": "DuetLangObject",
410
+ "resolved": "DuetLangObject",
411
+ "references": {
412
+ "DuetLangObject": {
413
+ "location": "import",
414
+ "path": "../../utils/language-utils"
415
+ }
416
+ }
417
+ },
418
+ "required": false,
419
+ "optional": false,
420
+ "docs": {
421
+ "tags": [],
422
+ "text": "Default pagination labels"
423
+ },
424
+ "defaultValue": "{\n en: {\n label: \"Click to activate action\",\n },\n fi: {\n label: \"Klikkaa toiminnon aktivointiin\",\n },\n sv: {\n label: \"Klicka f\u00F6r att aktivera \u00E5tg\u00E4rd\",\n },\n }"
425
+ },
426
+ "ariaLabels": {
427
+ "type": "unknown",
428
+ "mutable": false,
429
+ "complexType": {
430
+ "original": "Record<string, string>",
431
+ "resolved": "{ [x: string]: string; }",
432
+ "references": {
433
+ "Record": {
434
+ "location": "global"
435
+ }
436
+ }
437
+ },
438
+ "required": false,
439
+ "optional": false,
440
+ "docs": {
441
+ "tags": [],
442
+ "text": "Default pagination labels"
443
+ },
444
+ "defaultValue": "getLocaleString(\n this.ariaLabelsDefaults\n )"
445
+ },
446
+ "ariaControls": {
447
+ "type": "string",
448
+ "mutable": false,
449
+ "complexType": {
450
+ "original": "string",
451
+ "resolved": "string",
452
+ "references": {}
453
+ },
454
+ "required": false,
455
+ "optional": false,
456
+ "docs": {
457
+ "tags": [],
458
+ "text": "Used to indicate which dom element with ID this element controls"
459
+ },
460
+ "attribute": "accessible-controls",
461
+ "reflect": false,
462
+ "defaultValue": "\"\""
463
+ }
464
+ }; }
465
+ static get states() { return {
466
+ "numbersStore": {}
467
+ }; }
468
+ static get events() { return [{
469
+ "method": "duetActionEvent",
470
+ "name": "duetActionEvent",
471
+ "bubbles": true,
472
+ "cancelable": false,
473
+ "composed": true,
474
+ "docs": {
475
+ "tags": [],
476
+ "text": "Emitted a page selection has been made"
477
+ },
478
+ "complexType": {
479
+ "original": "DuetActionButtonEvent",
480
+ "resolved": "{ originalEvent?: Event; component: \"duet-action-button\"; action: string; name?: string; id?: string; index?: string; meta?: string | Record<any, any>; }",
481
+ "references": {
482
+ "DuetActionButtonEvent": {
483
+ "location": "local"
484
+ }
485
+ }
486
+ }
487
+ }]; }
488
+ static get elementRef() { return "element"; }
489
+ }
@@ -105,6 +105,9 @@
105
105
  .duet-button.duet-m-0 {
106
106
  margin: 0 !important;
107
107
  }
108
+ .duet-button.duet-button-text-center {
109
+ text-align: center !important;
110
+ }
108
111
  .duet-button.duet-button-is-small:not(.duet-button-icon-only) {
109
112
  padding: 9px 19px 10px !important;
110
113
  min-width: 5.3333333333rem;
@@ -8,6 +8,10 @@ import { inheritGlobalTheme } from "../../utils/themeable-component";
8
8
  import { getColorByName } from "../../utils/token-utils";
9
9
  export class DuetButton {
10
10
  constructor() {
11
+ /**
12
+ * Use this property to add an aria-haspopup attribute to a button, if you are using it as a menu button.
13
+ */
14
+ this.accessiblePopup = "false";
11
15
  /**
12
16
  * Loading state of the button
13
17
  */
@@ -34,6 +38,10 @@ export class DuetButton {
34
38
  * Controls the padding of the component.
35
39
  */
36
40
  this.padding = "auto";
41
+ /**
42
+ * Centers the text of a button
43
+ */
44
+ this.centerText = false;
37
45
  /**
38
46
  * Controls the text wrapping.
39
47
  */
@@ -201,6 +209,7 @@ export class DuetButton {
201
209
  "duet-button": true,
202
210
  "duet-button-is-small": this.size === "small",
203
211
  "duet-button-icon-only": this.iconOnly,
212
+ "duet-button-text-center": this.centerText,
204
213
  "duet-button-negative": this.negative || this.variation === "negative",
205
214
  [this.variation]: true,
206
215
  disabled: this.disabled,
@@ -232,7 +241,7 @@ export class DuetButton {
232
241
  commonChildren,
233
242
  this.external && h("duet-visually-hidden", null,
234
243
  ", ",
235
- this.accessibleLabelExternal))) : (h("button", Object.assign({}, commonProps, { type: this.getButtonType(), disabled: this.disabled, name: this.name, value: this.value, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined }), commonChildren)),
244
+ this.accessibleLabelExternal))) : (h("button", Object.assign({}, commonProps, { type: this.getButtonType(), disabled: this.disabled, name: this.name, value: this.value, "aria-pressed": this.accessiblePressed != null ? this.accessiblePressed.toString() : undefined, "aria-haspopup": this.accessiblePopup != null ? this.accessiblePopup.toString() : undefined }), commonChildren)),
236
245
  this.loading && h("duet-spinner", { color: "currentColor" }))));
237
246
  }
238
247
  static get is() { return "duet-button"; }
@@ -278,6 +287,24 @@ export class DuetButton {
278
287
  "attribute": "accessible-controls",
279
288
  "reflect": false
280
289
  },
290
+ "accessiblePopup": {
291
+ "type": "string",
292
+ "mutable": false,
293
+ "complexType": {
294
+ "original": "string",
295
+ "resolved": "string",
296
+ "references": {}
297
+ },
298
+ "required": false,
299
+ "optional": false,
300
+ "docs": {
301
+ "tags": [],
302
+ "text": "Use this property to add an aria-haspopup attribute to a button, if you are using it as a menu button."
303
+ },
304
+ "attribute": "accessible-popup",
305
+ "reflect": false,
306
+ "defaultValue": "\"false\""
307
+ },
281
308
  "accessibleActiveDescendant": {
282
309
  "type": "string",
283
310
  "mutable": false,
@@ -496,6 +523,28 @@ export class DuetButton {
496
523
  "reflect": false,
497
524
  "defaultValue": "\"auto\""
498
525
  },
526
+ "centerText": {
527
+ "type": "boolean",
528
+ "mutable": false,
529
+ "complexType": {
530
+ "original": "DuetButtonTextCentering",
531
+ "resolved": "boolean",
532
+ "references": {
533
+ "DuetButtonTextCentering": {
534
+ "location": "local"
535
+ }
536
+ }
537
+ },
538
+ "required": false,
539
+ "optional": false,
540
+ "docs": {
541
+ "tags": [],
542
+ "text": "Centers the text of a button"
543
+ },
544
+ "attribute": "center-text",
545
+ "reflect": false,
546
+ "defaultValue": "false"
547
+ },
499
548
  "wrapping": {
500
549
  "type": "string",
501
550
  "mutable": false,
@@ -10,7 +10,7 @@ import { inheritGlobalTheme } from "../../utils/themeable-component";
10
10
  import { getColorByName } from "../../utils/token-utils";
11
11
  /**
12
12
  * @slot unnamed default slot - The component’s primary content. All child nodes that do not have a slot attribute defined are inserted into this primary slot.
13
- * @slot below-header - Below header content.
13
+ * @slot below-heading - Below heading content.
14
14
  * @slot footer - Footer content.
15
15
  */
16
16
  export class DuetCard {
@@ -10,6 +10,7 @@ import { sanitizeString } from "../../utils/string-utils";
10
10
  import { inheritGlobalTheme } from "../../utils/themeable-component";
11
11
  /**
12
12
  * @part duet-collapsible-heading-content - piercing selector for styling the heading content
13
+ * @part duet-collapsible-content - piercing selector for styling the content
13
14
  */
14
15
  export class DuetCollapsible {
15
16
  constructor() {
@@ -132,7 +133,7 @@ export class DuetCollapsible {
132
133
  h("div", { class: "duet-collapsible-heading-icon" },
133
134
  h("duet-icon", { margin: "none", color: this.theme === "turva" ? "secondary-turva" : "secondary", size: this.getEquivalentIconSize(), icon: icon.svg })),
134
135
  h("div", { class: "duet-collapsible-heading-content", part: "duet-collapsible-heading-content" }, this.heading)),
135
- h("div", { id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" } },
136
+ h("div", { id: this.id, class: { "duet-collapsible-content": true, "duet-theme-turva": this.theme === "turva" }, part: "duet-collapsible-content" },
136
137
  h("slot", null))));
137
138
  }
138
139
  static get is() { return "duet-collapsible"; }
@@ -351,63 +351,8 @@
351
351
  .duet-date-dialog-buttons {
352
352
  white-space: nowrap;
353
353
  }
354
- .duet-date-dialog-buttons button {
355
- display: inline-flex;
356
- align-items: center;
357
- justify-content: center;
358
- width: 32px;
359
- height: 32px;
360
- min-height: auto !important;
361
- padding: 0 !important;
362
- margin: 0 0 0 8px !important;
363
- color: #00294d;
364
- cursor: pointer;
365
- background: #f5f8fa;
366
- border-radius: 50%;
367
- transition: background-color 300ms ease !important;
368
- }
369
- .duet-theme-turva .duet-date-dialog-buttons button {
370
- color: #171c3a;
371
- background: #f5f5f7;
372
- }
373
- .duet-date-dialog-buttons button duet-icon {
374
- display: block;
375
- }
376
- @media (max-width: 35.9375em) {
377
- .duet-date-dialog-buttons button {
378
- width: 40px;
379
- height: 40px;
380
- }
381
- }
382
- .duet-date-dialog-buttons button:not(:disabled):hover {
383
- background: #e9ecee !important;
384
- }
385
- .duet-theme-turva .duet-date-dialog-buttons button:not(:disabled):hover {
386
- background: #e9e9eb !important;
387
- }
388
- .duet-date-dialog-buttons button:focus {
389
- outline: 0;
390
- box-shadow: 0 0 0 2px #0077b3;
391
- }
392
- .duet-theme-turva .duet-date-dialog-buttons button:focus {
393
- box-shadow: 0 0 0 2px #171c3a;
394
- }
395
- .duet-date-dialog-buttons button:active:focus {
396
- background: #dddfe1;
397
- box-shadow: none;
398
- }
399
- .duet-theme-turva .duet-date-dialog-buttons button:active:focus {
400
- background: #ddddde;
401
- }
402
- .duet-date-dialog-buttons button:disabled {
403
- color: #909599;
404
- cursor: default;
405
- background: #f5f8fa;
406
- opacity: 0.75;
407
- }
408
- .duet-theme-turva .duet-date-dialog-buttons button:disabled {
409
- color: #747475;
410
- background: #f5f5f7;
354
+ .duet-date-dialog-buttons ::part(button) {
355
+ border: 0;
411
356
  }
412
357
 
413
358
  .duet-date-dialog-select {