@duetds/components 4.36.1 → 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 (305) hide show
  1. package/hydrate/index.js +1128 -977
  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 +8 -4
  8. package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
  9. package/lib/cjs/duet-card.cjs.entry.js +3 -3
  10. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
  12. package/lib/cjs/duet-collapsible.cjs.entry.js +2 -2
  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 -337
  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 +3 -3
  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 +2 -2
  28. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-pagination_2.cjs.entry.js +24 -14
  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 +1 -1
  35. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  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-dfd718e8.js → focus-utils-7a11c463.js} +1 -1
  45. package/lib/cjs/{index-4f342f1c.js → index-da5d5aaf.js} +1 -1
  46. package/lib/cjs/js-utils-be1d29ae.js +39 -0
  47. package/lib/cjs/loader.cjs.js +2 -2
  48. package/lib/cjs/{token-utils-f402e205.js → token-utils-ac8432d1.js} +1 -1
  49. package/lib/cjs/{tokens-8596cece.js → tokens-72efc7fd.js} +0 -0
  50. package/lib/cjs/{tokens.module-6b2df1c2.js → tokens.module-6afcc9c1.js} +0 -0
  51. package/lib/collection/collection-manifest.json +14 -11
  52. package/lib/collection/components/duet-action-button/duet-action-button.css +87 -0
  53. package/lib/collection/components/duet-action-button/duet-action-button.js +489 -0
  54. package/lib/collection/components/duet-button/duet-button.js +23 -1
  55. package/lib/collection/components/duet-date-picker/duet-date-picker.css +2 -57
  56. package/lib/collection/components/duet-date-picker/duet-date-picker.js +2 -6
  57. package/lib/collection/components/duet-editable-table/duet-editable-table-tabledata.js +3 -2
  58. package/lib/collection/components/duet-editable-table/duet-editable-table.css +20 -1
  59. package/lib/collection/components/duet-editable-table/duet-editable-table.js +331 -205
  60. package/lib/collection/components/duet-pagination/duet-pagination.css +3 -62
  61. package/lib/collection/components/duet-pagination/duet-pagination.js +49 -19
  62. package/lib/collection/components/duet-range-stepper/duet-range-stepper.css +4 -55
  63. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +2 -4
  64. package/lib/collection/components/duet-table/duet-table.css +42 -8
  65. package/lib/collection/components/duet-table/duet-table.js +11 -2
  66. package/lib/collection/components/duet-upload/duet-upload.css +25 -0
  67. package/lib/collection/components/duet-upload/duet-upload.js +270 -166
  68. package/lib/collection/components/duet-upload/upload-validators.js +1 -1
  69. package/lib/collection/utils/fixture-utils.js +3 -1
  70. package/lib/collection/utils/js-utils.js +36 -1
  71. package/lib/custom-elements-bundle/index.d.ts +6 -12
  72. package/lib/custom-elements-bundle/index.js +1142 -1001
  73. package/lib/duet/duet.esm.js +1 -1
  74. package/lib/duet/duet.js +1 -1
  75. package/lib/duet/{p-c18080ad.entry.js → p-00209700.entry.js} +1 -1
  76. package/lib/duet/{p-1a95aeb6.entry.js → p-01144f93.entry.js} +1 -1
  77. package/lib/duet/{p-c6df2ea8.system.entry.js → p-021bf3a2.system.entry.js} +1 -1
  78. package/lib/duet/{p-20cdb787.entry.js → p-04c6e557.entry.js} +1 -1
  79. package/lib/duet/{p-d945a4b0.system.entry.js → p-06fd151e.system.entry.js} +1 -1
  80. package/lib/duet/p-0988f548.entry.js +4 -0
  81. package/lib/duet/{p-05e2c680.system.entry.js → p-0e1130a0.system.entry.js} +1 -1
  82. package/lib/duet/{p-ebc56043.entry.js → p-0fedc1c6.entry.js} +1 -1
  83. package/lib/duet/{p-e8303364.system.entry.js → p-111b70c5.system.entry.js} +1 -1
  84. package/lib/duet/p-12825e2c.entry.js +4 -0
  85. package/lib/duet/p-166c09ce.system.entry.js +4 -0
  86. package/lib/duet/{p-24b9e806.entry.js → p-1be45fc6.entry.js} +1 -1
  87. package/lib/duet/{p-286d2ad2.system.entry.js → p-1da57e19.system.entry.js} +1 -1
  88. package/lib/duet/{p-7a32ceb3.system.entry.js → p-21c9efa8.system.entry.js} +1 -1
  89. package/lib/duet/p-2245c56b.entry.js +4 -0
  90. package/lib/duet/{p-e6a69eb8.js → p-2273fc88.js} +1 -1
  91. package/lib/duet/{p-79b9e7ef.system.entry.js → p-232762b3.system.entry.js} +1 -1
  92. package/lib/duet/{p-d21f19cc.system.js → p-251dc733.system.js} +1 -1
  93. package/lib/duet/{p-ddb6344c.system.js → p-268c0abb.system.js} +0 -0
  94. package/lib/duet/{p-ca0ee655.system.entry.js → p-2b6dac5c.system.entry.js} +1 -1
  95. package/lib/duet/{p-e8e35258.entry.js → p-35cdec32.entry.js} +1 -1
  96. package/lib/duet/{p-2361986e.entry.js → p-37bdfcc6.entry.js} +1 -1
  97. package/lib/duet/{p-740b5609.entry.js → p-3c7d81b0.entry.js} +1 -1
  98. package/lib/duet/{p-3900577d.system.entry.js → p-3f77090f.system.entry.js} +1 -1
  99. package/lib/duet/{p-ad3dad04.system.js → p-3fafe82f.system.js} +1 -1
  100. package/lib/duet/{p-164a7037.system.entry.js → p-4b221aa3.system.entry.js} +1 -1
  101. package/lib/duet/{p-210d739c.system.entry.js → p-4b7b1d2a.system.entry.js} +1 -1
  102. package/lib/duet/{p-3547d108.entry.js → p-4c282c1a.entry.js} +1 -1
  103. package/lib/duet/p-51a7c020.entry.js +4 -0
  104. package/lib/duet/{p-c8ec3b99.entry.js → p-5298f6fb.entry.js} +1 -1
  105. package/lib/duet/{p-cb445018.js → p-5746d88c.js} +1 -1
  106. package/lib/duet/{p-f6da56c8.entry.js → p-589c2f28.entry.js} +1 -1
  107. package/lib/duet/{p-d9716aec.system.entry.js → p-592315ca.system.entry.js} +1 -1
  108. package/lib/duet/{p-615bfc61.system.entry.js → p-59a0ec33.system.entry.js} +1 -1
  109. package/lib/duet/p-5e1f64cb.entry.js +4 -0
  110. package/lib/duet/{p-29255af8.entry.js → p-608645ed.entry.js} +1 -1
  111. package/lib/duet/{p-3d1b0105.entry.js → p-683f1962.entry.js} +1 -1
  112. package/lib/duet/{p-9ce0e625.entry.js → p-6932c6d8.entry.js} +1 -1
  113. package/lib/duet/{p-e35d8543.entry.js → p-6934cb1b.entry.js} +1 -1
  114. package/lib/duet/{p-211b4485.system.entry.js → p-6d209c01.system.entry.js} +1 -1
  115. package/lib/duet/{p-e47daca7.system.entry.js → p-70e5c803.system.entry.js} +1 -1
  116. package/lib/duet/p-74d267d3.system.entry.js +4 -0
  117. package/lib/duet/{p-c7fa7dcc.system.entry.js → p-766daacb.system.entry.js} +1 -1
  118. package/lib/duet/{p-4e2532c7.system.js → p-77acbfe4.system.js} +1 -1
  119. package/lib/duet/p-7953cff9.system.entry.js +4 -0
  120. package/lib/duet/{p-635dacce.system.entry.js → p-7e939e57.system.entry.js} +1 -1
  121. package/lib/duet/{p-fa99eaa4.system.js → p-812b0905.system.js} +0 -0
  122. package/lib/duet/{p-1db7a35b.entry.js → p-814ed07c.entry.js} +1 -1
  123. package/lib/duet/{p-5d9affcd.entry.js → p-82a0e535.entry.js} +1 -1
  124. package/lib/duet/{p-3bb702e3.system.entry.js → p-8338702d.system.entry.js} +2 -2
  125. package/lib/duet/{p-65c418f7.system.entry.js → p-85b4b5c0.system.entry.js} +1 -1
  126. package/lib/duet/{p-5376a9db.entry.js → p-86538787.entry.js} +1 -1
  127. package/lib/duet/{p-562ae946.entry.js → p-8f01f647.entry.js} +1 -1
  128. package/lib/duet/{p-85100e09.entry.js → p-8f6def3f.entry.js} +1 -1
  129. package/lib/duet/{p-03cf3ebf.entry.js → p-90464434.entry.js} +1 -1
  130. package/lib/duet/p-92639d0b.system.js +4 -0
  131. package/lib/duet/{p-12941aef.system.entry.js → p-97f95c02.system.entry.js} +1 -1
  132. package/lib/duet/{p-ffb5fb75.system.entry.js → p-982deb44.system.entry.js} +1 -1
  133. package/lib/duet/{p-fd2211ab.entry.js → p-9dc88c43.entry.js} +1 -1
  134. package/lib/duet/{p-fae71c1f.entry.js → p-a37e57d8.entry.js} +1 -1
  135. package/lib/duet/{p-c52f4de0.system.entry.js → p-a71510b8.system.entry.js} +1 -1
  136. package/lib/duet/p-a8eec12e.system.entry.js +4 -0
  137. package/lib/duet/{p-4fdbc6ff.system.entry.js → p-abcfbb23.system.entry.js} +1 -1
  138. package/lib/duet/{p-3c3536be.entry.js → p-ac2b38e6.entry.js} +1 -1
  139. package/lib/duet/{p-9df321b3.system.entry.js → p-ace2cd17.system.entry.js} +1 -1
  140. package/lib/duet/{p-946f34b4.system.entry.js → p-ad278903.system.entry.js} +1 -1
  141. package/lib/duet/{p-1c4721a1.entry.js → p-aea907ad.entry.js} +1 -1
  142. package/lib/duet/{p-e7dd8a15.system.entry.js → p-b432d318.system.entry.js} +1 -1
  143. package/lib/duet/{p-0366552b.system.entry.js → p-b4e75f80.system.entry.js} +1 -1
  144. package/lib/duet/{p-061835f3.system.entry.js → p-b8c8105c.system.entry.js} +1 -1
  145. package/lib/duet/{p-c2d32103.entry.js → p-ba7480e9.entry.js} +1 -1
  146. package/lib/duet/{p-83452e8f.entry.js → p-bc7dba26.entry.js} +1 -1
  147. package/lib/duet/{p-ff21f3c2.entry.js → p-bf06f635.entry.js} +1 -1
  148. package/lib/duet/{p-c514010b.system.entry.js → p-c6ccf366.system.entry.js} +1 -1
  149. package/lib/duet/{p-46ae601a.entry.js → p-cd1a767f.entry.js} +1 -1
  150. package/lib/duet/{p-89e42127.system.entry.js → p-d6d9b0c6.system.entry.js} +1 -1
  151. package/lib/duet/{p-8143f3de.js → p-d7bc0102.js} +0 -0
  152. package/lib/duet/{p-d24c6bc1.entry.js → p-d9e329c0.entry.js} +1 -1
  153. package/lib/duet/p-dbb4a588.js +4 -0
  154. package/lib/duet/{p-ae14591e.entry.js → p-dc67d989.entry.js} +1 -1
  155. package/lib/duet/{p-7f0e360d.entry.js → p-de9ff67c.entry.js} +1 -1
  156. package/lib/duet/{p-ded33218.system.entry.js → p-deb8ac4d.system.entry.js} +1 -1
  157. package/lib/duet/p-e2e0bc49.system.js +4 -0
  158. package/lib/duet/{p-8c53bc24.system.entry.js → p-e624799f.system.entry.js} +1 -1
  159. package/lib/duet/{p-eb892975.system.entry.js → p-e887d6db.system.entry.js} +1 -1
  160. package/lib/duet/{p-dcaecb5e.js → p-e9c3053b.js} +1 -1
  161. package/lib/duet/{p-493c6d2f.system.entry.js → p-ebed7c5e.system.entry.js} +1 -1
  162. package/lib/duet/{p-ad07f399.js → p-ed75c8b3.js} +0 -0
  163. package/lib/duet/{p-e5ce7aad.system.entry.js → p-f020852e.system.entry.js} +1 -1
  164. package/lib/duet/p-f2abd301.entry.js +4 -0
  165. package/lib/duet/{p-e7b53f4f.system.entry.js → p-f54d1487.system.entry.js} +1 -1
  166. package/lib/duet/{p-b6dd0933.entry.js → p-fc44a819.entry.js} +1 -1
  167. package/lib/duet/{p-22baf1f8.system.entry.js → p-fcdd24f8.system.entry.js} +1 -1
  168. package/lib/duet/{p-5b546064.entry.js → p-fed35d92.entry.js} +1 -1
  169. package/lib/duet/{p-ef275410.entry.js → p-ff308f4c.entry.js} +1 -1
  170. package/lib/esm/duet-action-button.entry.js +159 -0
  171. package/lib/esm/duet-alert.entry.js +1 -1
  172. package/lib/esm/duet-badge.entry.js +1 -1
  173. package/lib/esm/duet-breadcrumb.entry.js +1 -1
  174. package/lib/esm/duet-breadcrumbs.entry.js +1 -1
  175. package/lib/esm/duet-button_2.entry.js +8 -4
  176. package/lib/esm/duet-caption_4.entry.js +3 -3
  177. package/lib/esm/duet-card.entry.js +3 -3
  178. package/lib/esm/duet-checkbox.entry.js +1 -1
  179. package/lib/esm/duet-choice_2.entry.js +2 -2
  180. package/lib/esm/duet-collapsible.entry.js +2 -2
  181. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  182. package/lib/esm/duet-date-picker.entry.js +4 -4
  183. package/lib/esm/duet-divider_2.entry.js +1 -1
  184. package/lib/esm/{duet-editable-table_4.entry.js → duet-editable-table_3.entry.js} +384 -338
  185. package/lib/esm/duet-empty-state.entry.js +1 -1
  186. package/lib/esm/duet-fieldset.entry.js +1 -1
  187. package/lib/esm/duet-footer.entry.js +1 -1
  188. package/lib/esm/duet-grid_2.entry.js +2 -2
  189. package/lib/esm/duet-header_2.entry.js +3 -3
  190. package/lib/esm/duet-hero.entry.js +1 -1
  191. package/lib/esm/duet-icon.entry.js +3 -3
  192. package/lib/esm/duet-input_2.entry.js +1 -1
  193. package/lib/esm/duet-layout.entry.js +1 -1
  194. package/lib/esm/duet-list_2.entry.js +1 -1
  195. package/lib/esm/duet-modal.entry.js +2 -2
  196. package/lib/esm/duet-notification_2.entry.js +1 -1
  197. package/lib/esm/duet-number-input.entry.js +1 -1
  198. package/lib/esm/duet-pagination_2.entry.js +24 -14
  199. package/lib/esm/duet-progress.entry.js +1 -1
  200. package/lib/esm/duet-radio_2.entry.js +1 -1
  201. package/lib/esm/duet-range-slider.entry.js +2 -2
  202. package/lib/esm/duet-scrollable_3.entry.js +1 -1
  203. package/lib/esm/duet-select.entry.js +1 -1
  204. package/lib/esm/duet-step_2.entry.js +1 -1
  205. package/lib/esm/duet-textarea.entry.js +1 -1
  206. package/lib/esm/duet-toggle.entry.js +1 -1
  207. package/lib/esm/duet-tooltip.entry.js +1 -1
  208. package/lib/esm/duet-tray.entry.js +2 -2
  209. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  210. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  211. package/lib/esm/duet.js +2 -2
  212. package/lib/esm/{focus-utils-d4e80e1e.js → focus-utils-b0b3361f.js} +1 -1
  213. package/lib/esm/{index-4a5e7664.js → index-16f4da7f.js} +1 -1
  214. package/lib/esm/js-utils-52e0944c.js +36 -0
  215. package/lib/esm/loader.js +2 -2
  216. package/lib/esm/{token-utils-e9a69acf.js → token-utils-e9a0cb88.js} +1 -1
  217. package/lib/esm/{tokens-e110dc89.js → tokens-57d98824.js} +0 -0
  218. package/lib/esm/{tokens.module-49cbf963.js → tokens.module-a13e9683.js} +0 -0
  219. package/lib/esm-es5/duet-action-button.entry.js +4 -0
  220. package/lib/esm-es5/duet-alert.entry.js +1 -1
  221. package/lib/esm-es5/duet-badge.entry.js +1 -1
  222. package/lib/esm-es5/duet-breadcrumb.entry.js +1 -1
  223. package/lib/esm-es5/duet-breadcrumbs.entry.js +1 -1
  224. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  225. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  226. package/lib/esm-es5/duet-card.entry.js +1 -1
  227. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  228. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  229. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  230. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  231. package/lib/esm-es5/duet-date-picker.entry.js +2 -2
  232. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  233. package/lib/esm-es5/duet-editable-table_3.entry.js +4 -0
  234. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  235. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  236. package/lib/esm-es5/duet-footer.entry.js +1 -1
  237. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  238. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  239. package/lib/esm-es5/duet-hero.entry.js +1 -1
  240. package/lib/esm-es5/duet-icon.entry.js +1 -1
  241. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  242. package/lib/esm-es5/duet-layout.entry.js +1 -1
  243. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  244. package/lib/esm-es5/duet-modal.entry.js +1 -1
  245. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  246. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  247. package/lib/esm-es5/duet-pagination_2.entry.js +2 -2
  248. package/lib/esm-es5/duet-progress.entry.js +1 -1
  249. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  250. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  251. package/lib/esm-es5/duet-scrollable_3.entry.js +1 -1
  252. package/lib/esm-es5/duet-select.entry.js +1 -1
  253. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  254. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  255. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  256. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  257. package/lib/esm-es5/duet-tray.entry.js +1 -1
  258. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  259. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  260. package/lib/esm-es5/duet.js +1 -1
  261. package/lib/esm-es5/focus-utils-b0b3361f.js +4 -0
  262. package/lib/esm-es5/{index-4a5e7664.js → index-16f4da7f.js} +1 -1
  263. package/lib/esm-es5/js-utils-52e0944c.js +4 -0
  264. package/lib/esm-es5/loader.js +1 -1
  265. package/lib/esm-es5/{token-utils-e9a69acf.js → token-utils-e9a0cb88.js} +1 -1
  266. package/lib/esm-es5/{tokens-e110dc89.js → tokens-57d98824.js} +0 -0
  267. package/lib/esm-es5/{tokens.module-49cbf963.js → tokens.module-a13e9683.js} +0 -0
  268. package/lib/html.html-data.json +168 -68
  269. package/lib/types/components/duet-action-button/duet-action-button.d.ts +112 -0
  270. package/lib/types/components/duet-button/duet-button.d.ts +4 -0
  271. package/lib/types/components/duet-editable-table/duet-editable-table-tabledata.d.ts +2 -2
  272. package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +106 -48
  273. package/lib/types/components/duet-pagination/duet-pagination.d.ts +7 -2
  274. package/lib/types/components/duet-table/duet-table.d.ts +16 -0
  275. package/lib/types/components/duet-upload/duet-upload.d.ts +68 -58
  276. package/lib/types/components.d.ts +225 -149
  277. package/lib/types/utils/js-utils.d.ts +2 -0
  278. package/package.json +5 -6
  279. package/lib/cjs/duet-editable-table-button.cjs.entry.js +0 -96
  280. package/lib/cjs/js-utils-33a9dbe3.js +0 -16
  281. package/lib/collection/components/duet-editable-table/duet-editable-table-button.css +0 -32
  282. package/lib/collection/components/duet-editable-table/duet-editable-table-button.js +0 -225
  283. package/lib/collection/components/duet-editable-table/duet-editable-table-item.css +0 -36
  284. package/lib/collection/components/duet-editable-table/duet-editable-table-item.js +0 -225
  285. package/lib/duet/p-063fe96d.entry.js +0 -4
  286. package/lib/duet/p-2eeacf1a.entry.js +0 -4
  287. package/lib/duet/p-396f1bdc.entry.js +0 -4
  288. package/lib/duet/p-7b55f33e.entry.js +0 -4
  289. package/lib/duet/p-7e0e2209.system.entry.js +0 -4
  290. package/lib/duet/p-81867417.system.js +0 -4
  291. package/lib/duet/p-a3d7951c.system.entry.js +0 -4
  292. package/lib/duet/p-a619dff3.system.js +0 -4
  293. package/lib/duet/p-b25d3769.js +0 -4
  294. package/lib/duet/p-bf192d9f.entry.js +0 -4
  295. package/lib/duet/p-c76a68aa.system.entry.js +0 -4
  296. package/lib/duet/p-d12b3d21.system.entry.js +0 -4
  297. package/lib/duet/p-ef4962e8.entry.js +0 -4
  298. package/lib/esm/duet-editable-table-button.entry.js +0 -92
  299. package/lib/esm/js-utils-b69f17df.js +0 -14
  300. package/lib/esm-es5/duet-editable-table-button.entry.js +0 -4
  301. package/lib/esm-es5/duet-editable-table_4.entry.js +0 -4
  302. package/lib/esm-es5/focus-utils-d4e80e1e.js +0 -4
  303. package/lib/esm-es5/js-utils-b69f17df.js +0 -4
  304. package/lib/types/components/duet-editable-table/duet-editable-table-button.d.ts +0 -73
  305. 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
+ }
@@ -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
  */
@@ -237,7 +241,7 @@ export class DuetButton {
237
241
  commonChildren,
238
242
  this.external && h("duet-visually-hidden", null,
239
243
  ", ",
240
- 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)),
241
245
  this.loading && h("duet-spinner", { color: "currentColor" }))));
242
246
  }
243
247
  static get is() { return "duet-button"; }
@@ -283,6 +287,24 @@ export class DuetButton {
283
287
  "attribute": "accessible-controls",
284
288
  "reflect": false
285
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
+ },
286
308
  "accessibleActiveDescendant": {
287
309
  "type": "string",
288
310
  "mutable": false,
@@ -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 {
@@ -434,12 +434,8 @@ export class DuetDatePicker {
434
434
  h("span", null, this.focusedDay.getFullYear()),
435
435
  h("duet-icon", { name: "action-arrow-down-small", color: "currentColor", margin: "none", size: "xxx-small" })))),
436
436
  h("div", { class: "duet-date-dialog-buttons" },
437
- h("button", { class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, type: "button" },
438
- h("duet-icon", { name: "action-arrow-left-small", color: "currentColor", margin: "none", size: "xx-small" }),
439
- h("duet-visually-hidden", null, text.prevMonthLabel)),
440
- h("button", { class: "duet-date-dialog-next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, type: "button" },
441
- h("duet-icon", { name: "action-arrow-right-small", color: "currentColor", margin: "none", size: "xx-small" }),
442
- h("duet-visually-hidden", null, text.nextMonthLabel)))),
437
+ h("duet-action-button", { class: "duet-date-dialog-prev", onClick: this.handlePreviousMonthClick, disabled: prevMonthDisabled, "icon-name": "action-arrow-left-small" }, text.prevMonthLabel),
438
+ h("duet-action-button", { class: "duet-date-dialog-next", onClick: this.handleNextMonthClick, disabled: nextMonthDisabled, "icon-name": "action-arrow-right-small" }, text.nextMonthLabel))),
443
439
  h(DatePickerMonth, { selectedDate: valueAsDate, focusedDate: this.focusedDay, onDateSelect: this.handleDaySelect, onKeyboardNavigation: this.handleKeyboardNavigation, labelledById: this.dialogLabelId, language: this.language, theme: this.theme, min: minDate, max: maxDate, focusedDayRef: element => (this.focusedDayNode = element), onFocusEnter: this.enableActiveFocus, onFocusExit: this.disableActiveFocus })),
444
440
  h(FocusGuard, { moveFocusTo: this.closeButtonNode }))));
445
441
  }
@@ -4,10 +4,11 @@
4
4
  import { h } from "@stencil/core";
5
5
  //simple functional component that renders the data in the table
6
6
  export const TableData = ({ data, groupId, alignment }, _children) => {
7
+ const classNames = `duet-editable-table duet-editable-table-content-${groupId}`;
7
8
  if (typeof data === "string") {
8
- return (h("td", { innerHTML: data, class: "duet-editable-table-content", part: `${groupId}content`, style: { verticalAlign: alignment } }));
9
+ return h("td", { innerHTML: data, class: classNames, part: `${groupId}content`, style: { verticalAlign: alignment } });
9
10
  }
10
11
  else {
11
- return (h("td", { class: "duet-editable-table-content", part: `${groupId}content`, style: { verticalAlign: alignment } }, data));
12
+ return (h("td", { class: classNames, part: `${groupId}content`, style: { verticalAlign: alignment } }, data));
12
13
  }
13
14
  };
@@ -1,4 +1,4 @@
1
- duet-editable-table {
1
+ :host {
2
2
  box-sizing: border-box;
3
3
  padding: 0;
4
4
  margin: 0;
@@ -9,6 +9,25 @@ duet-editable-table {
9
9
  appearance: none;
10
10
  }
11
11
 
12
+ .duet-editable-table-actions-menu {
13
+ position: relative;
14
+ padding: 0 !important;
15
+ margin: 0;
16
+ }
17
+ .duet-editable-table-actions-menu-button {
18
+ position: relative;
19
+ right: -16px;
20
+ float: right;
21
+ padding: 0;
22
+ }
23
+ .duet-editable-table-actions-menu-icon .duet-icon {
24
+ max-width: 16px;
25
+ max-height: 16px;
26
+ }
27
+ .duet-editable-table-row.duet-table-action-row .duet-text-right {
28
+ text-align: right;
29
+ }
30
+
12
31
  .duet-editable-table-header tr .duet-editable-table-header-hidden {
13
32
  padding: 0 !important;
14
33
  font-size: 0;