@duetds/components 4.33.0 → 4.34.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. package/hydrate/index.js +487 -198
  2. package/lib/cjs/{dom-c850c8d7.js → dom-52a4f07a.js} +1 -1
  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-button_2.cjs.entry.js +2 -2
  6. package/lib/cjs/duet-caption_4.cjs.entry.js +3 -3
  7. package/lib/cjs/duet-card.cjs.entry.js +2 -2
  8. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  9. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -3
  10. package/lib/cjs/duet-collapsible.cjs.entry.js +5 -453
  11. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  12. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  13. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-editable-table-button.cjs.entry.js +96 -0
  15. package/lib/cjs/{duet-upload.cjs.entry.js → duet-editable-table_4.cjs.entry.js} +463 -32
  16. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-fieldset.cjs.entry.js +62 -0
  18. package/lib/cjs/duet-footer.cjs.entry.js +2 -2
  19. package/lib/cjs/duet-grid_2.cjs.entry.js +26 -3
  20. package/lib/cjs/duet-header_2.cjs.entry.js +220 -47
  21. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  22. package/lib/cjs/duet-icon.cjs.entry.js +8 -6
  23. package/lib/cjs/duet-input_2.cjs.entry.js +3 -4
  24. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-list_2.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  27. package/lib/cjs/duet-notification_2.cjs.entry.js +2 -2
  28. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-tab_2.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +100 -0
  40. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  41. package/lib/cjs/duet.cjs.js +4 -4
  42. package/lib/cjs/{focus-utils-a7a1fb8b.js → focus-utils-30f5dc06.js} +1 -1
  43. package/lib/cjs/form-search-d61b2843.js +8 -0
  44. package/lib/cjs/{index-b724d698.js → index-1c10bbfb.js} +2 -2
  45. package/lib/cjs/loader.cjs.js +3 -3
  46. package/lib/cjs/{shadow-css-e3edeed1.js → shadow-css-e1b62a99.js} +1 -1
  47. package/lib/cjs/token-utils-05bd23b4.js +77 -0
  48. package/lib/cjs/tokens-8596cece.js +459 -0
  49. package/lib/collection/collection-manifest.json +11 -10
  50. package/lib/collection/components/duet-choice/duet-choice.js +0 -1
  51. package/lib/collection/components/duet-collapsible/duet-collapsible.js +4 -1
  52. package/lib/collection/components/duet-editable-table/duet-editable-table-button.js +13 -6
  53. package/lib/collection/components/duet-editable-table/duet-editable-table-item.js +25 -3
  54. package/lib/collection/components/duet-editable-table/duet-editable-table-tabledata.js +3 -3
  55. package/lib/collection/components/duet-editable-table/duet-editable-table.js +58 -2
  56. package/lib/collection/components/duet-footer/duet-footer.css +1 -0
  57. package/lib/collection/components/duet-grid/duet-grid.js +25 -2
  58. package/lib/collection/components/duet-header/duet-header-dropdown.js +27 -0
  59. package/lib/collection/components/duet-header/duet-header-hamburger.js +9 -0
  60. package/lib/collection/components/duet-header/duet-header-icon.js +9 -0
  61. package/lib/collection/components/duet-header/duet-header.css +272 -39
  62. package/lib/collection/components/duet-header/duet-header.js +316 -122
  63. package/lib/collection/components/duet-icon/duet-icon.js +11 -5
  64. package/lib/collection/components/duet-link/duet-link.js +4 -1
  65. package/lib/collection/components/duet-list-item/duet-list-item.css +1 -1
  66. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.css +4 -3
  67. package/lib/collection/components/duet-table/duet-table.css +42 -17
  68. package/lib/collection/components/duet-table/duet-table.js +2 -2
  69. package/lib/collection/components/duet-upload/duet-upload.js +98 -51
  70. package/lib/collection/components/duet-upload/{duet-upload-editable-item-error.js → upload-editable-item-error.js} +0 -0
  71. package/lib/collection/components/duet-upload/{duet-upload-editable-item-inprogres.js → upload-editable-item-inprogres.js} +0 -0
  72. package/lib/collection/components/duet-upload/{duet-upload-editable-item-success.js → upload-editable-item-success.js} +0 -0
  73. package/lib/collection/components/duet-upload/{duet-upload-validators.js → upload-validators.js} +0 -0
  74. package/lib/collection/components/{duet-upload → duet-upload-aria-status}/duet-upload-aria-status.js +3 -3
  75. package/lib/collection/utils/template-utils.js +33 -0
  76. package/lib/collection/utils/token-utils.js +67 -14
  77. package/lib/custom-elements-bundle/index.js +468 -121
  78. package/lib/duet/duet.esm.js +1 -1
  79. package/lib/duet/duet.js +1 -1
  80. package/lib/duet/{p-060d79be.entry.js → p-08498e46.entry.js} +1 -1
  81. package/lib/duet/p-0bb75f62.system.entry.js +4 -0
  82. package/lib/duet/p-0d546cd6.system.entry.js +4 -0
  83. package/lib/duet/{p-263bc9cd.system.entry.js → p-1164a119.system.entry.js} +1 -1
  84. package/lib/duet/{p-a890da72.entry.js → p-13f72df0.entry.js} +1 -1
  85. package/lib/duet/{p-387823af.system.entry.js → p-15945ba7.system.entry.js} +1 -1
  86. package/lib/duet/{p-35a3794e.js → p-183726f7.js} +0 -0
  87. package/lib/duet/{p-7fee0d23.system.entry.js → p-1842a4db.system.entry.js} +1 -1
  88. package/lib/duet/{p-4607af59.entry.js → p-1a4204b7.entry.js} +1 -1
  89. package/lib/duet/{p-b4e87f02.system.entry.js → p-1d8d319c.system.entry.js} +1 -1
  90. package/lib/duet/{p-9dca5c22.system.entry.js → p-2b1707bd.system.entry.js} +1 -1
  91. package/lib/duet/{p-8b5ca0e7.system.entry.js → p-2c89e016.system.entry.js} +1 -1
  92. package/lib/duet/p-309f9094.entry.js +4 -0
  93. package/lib/duet/{p-67d9a9a9.system.entry.js → p-30f15c84.system.entry.js} +1 -1
  94. package/lib/duet/p-39cd816e.entry.js +4 -0
  95. package/lib/duet/{p-86daec1c.entry.js → p-3d47d6d4.entry.js} +1 -1
  96. package/lib/duet/{p-d744d188.system.entry.js → p-3e9fe1c7.system.entry.js} +1 -1
  97. package/lib/duet/{p-a9859a82.entry.js → p-3ff50cee.entry.js} +1 -1
  98. package/lib/duet/{p-b42d81c3.system.js → p-41938e76.system.js} +1 -1
  99. package/lib/duet/p-420c000b.entry.js +4 -0
  100. package/lib/duet/{p-cdd70b93.entry.js → p-477c6c71.entry.js} +1 -1
  101. package/lib/duet/p-478d2995.entry.js +4 -0
  102. package/lib/duet/p-4b400f7d.system.entry.js +4 -0
  103. package/lib/duet/p-4b480fdc.entry.js +4 -0
  104. package/lib/duet/p-50b4fb2c.js +4 -0
  105. package/lib/duet/{p-987edcd0.js → p-52621211.js} +0 -0
  106. package/lib/duet/{p-94169303.entry.js → p-545dcb04.entry.js} +1 -1
  107. package/lib/duet/{p-8f826843.system.entry.js → p-571015b8.system.entry.js} +1 -1
  108. package/lib/duet/{p-9481e312.entry.js → p-580c57ea.entry.js} +1 -1
  109. package/lib/duet/{p-2bb1460c.entry.js → p-5cf1d847.entry.js} +1 -1
  110. package/lib/duet/{p-c2e77278.entry.js → p-5d2ddf99.entry.js} +1 -1
  111. package/lib/duet/{p-af41d894.system.entry.js → p-5db0676e.system.entry.js} +1 -1
  112. package/lib/duet/p-603a61dc.system.entry.js +4 -0
  113. package/lib/duet/{p-aba68b7b.entry.js → p-6b1b2655.entry.js} +1 -1
  114. package/lib/duet/{p-597d99c7.entry.js → p-6bb9a991.entry.js} +1 -1
  115. package/lib/duet/p-6dc026cf.system.entry.js +4 -0
  116. package/lib/duet/{p-c18a599e.system.js → p-6e4fd6ba.system.js} +0 -0
  117. package/lib/duet/p-71261eb7.entry.js +4 -0
  118. package/lib/duet/{p-751542a0.system.entry.js → p-71a94fb9.system.entry.js} +1 -1
  119. package/lib/duet/{p-e12f2b8b.system.js → p-76b98e4d.system.js} +1 -1
  120. package/lib/duet/{p-f8ce39fb.entry.js → p-80d40375.entry.js} +1 -1
  121. package/lib/duet/{p-548d484e.js → p-80f90fef.js} +1 -1
  122. package/lib/duet/p-8143f3de.js +4 -0
  123. package/lib/duet/{p-bf93a991.entry.js → p-87703af9.entry.js} +1 -1
  124. package/lib/duet/p-8ad673ef.entry.js +4 -0
  125. package/lib/duet/{p-d4118b6e.system.entry.js → p-8adcc2f9.system.entry.js} +1 -1
  126. package/lib/duet/{p-4a87e9ab.system.entry.js → p-8e478364.system.entry.js} +1 -1
  127. package/lib/duet/p-8f477bd6.system.js +4 -0
  128. package/lib/duet/{p-00735436.entry.js → p-8fcaeb1b.entry.js} +1 -1
  129. package/lib/duet/p-93a51797.entry.js +4 -0
  130. package/lib/duet/{p-a5b9c192.system.entry.js → p-95edfcb8.system.entry.js} +1 -1
  131. package/lib/duet/p-97dc72c2.system.entry.js +4 -0
  132. package/lib/duet/p-99cd16d8.system.entry.js +4 -0
  133. package/lib/duet/{p-e964d062.entry.js → p-9c3b48fc.entry.js} +1 -1
  134. package/lib/duet/{p-5826523b.entry.js → p-9dad09a8.entry.js} +1 -1
  135. package/lib/duet/{p-8cb7416d.entry.js → p-9db71699.entry.js} +1 -1
  136. package/lib/duet/{p-b32224fe.system.entry.js → p-a0129887.system.entry.js} +1 -1
  137. package/lib/duet/p-a16a58c1.system.js +4 -0
  138. package/lib/duet/{p-2443bdca.system.entry.js → p-a4c0ce83.system.entry.js} +1 -1
  139. package/lib/duet/{p-48d1eb1f.system.entry.js → p-a9dc4dd9.system.entry.js} +1 -1
  140. package/lib/duet/p-aa5ba0fd.entry.js +4 -0
  141. package/lib/duet/{p-d3a3c3c7.system.entry.js → p-af7685aa.system.entry.js} +1 -1
  142. package/lib/duet/{p-6e6e76db.system.entry.js → p-b061516e.system.entry.js} +1 -1
  143. package/lib/duet/{p-58750bae.system.entry.js → p-b1401fd8.system.entry.js} +1 -1
  144. package/lib/duet/{p-b3744481.entry.js → p-b71cbe4b.entry.js} +1 -1
  145. package/lib/duet/p-c0472744.system.entry.js +4 -0
  146. package/lib/duet/{p-27d80cef.system.entry.js → p-c04ca724.system.entry.js} +1 -1
  147. package/lib/duet/{p-e2a44156.js → p-c33d1202.js} +1 -1
  148. package/lib/duet/{p-374fb7e6.system.entry.js → p-c85583d4.system.entry.js} +1 -1
  149. package/lib/duet/{p-aef1b720.system.entry.js → p-ca2b3f6a.system.entry.js} +1 -1
  150. package/lib/duet/{p-3af5d66f.entry.js → p-ca68c8f0.entry.js} +1 -1
  151. package/lib/duet/{p-acc57c77.entry.js → p-cecdebf3.entry.js} +1 -1
  152. package/lib/duet/p-d004da5f.js +4 -0
  153. package/lib/duet/{p-984576c9.entry.js → p-d1d6dc7a.entry.js} +1 -1
  154. package/lib/duet/{p-794659ac.entry.js → p-d9a93e45.entry.js} +1 -1
  155. package/lib/duet/{p-d1c19f04.system.entry.js → p-dc27e127.system.entry.js} +1 -1
  156. package/lib/duet/p-df37c5cd.entry.js +4 -0
  157. package/lib/duet/{p-6a19b5ec.entry.js → p-e10f1828.entry.js} +1 -1
  158. package/lib/duet/{p-a207b008.entry.js → p-e5120c30.entry.js} +1 -1
  159. package/lib/duet/p-e54705b2.system.js +4 -0
  160. package/lib/duet/{p-0d22396e.system.js → p-e5c1751e.system.js} +0 -0
  161. package/lib/duet/{p-dfe79666.system.entry.js → p-f1c7f166.system.entry.js} +2 -2
  162. package/lib/duet/p-f1dbb4ec.entry.js +4 -0
  163. package/lib/duet/{p-aee24388.system.entry.js → p-f3cd9499.system.entry.js} +1 -1
  164. package/lib/duet/{p-4b6ebe40.system.entry.js → p-f55ea1cc.system.entry.js} +1 -1
  165. package/lib/duet/{p-e76b722f.entry.js → p-f7700f25.entry.js} +1 -1
  166. package/lib/duet/p-fa99eaa4.system.js +4 -0
  167. package/lib/duet/{p-c36b4da0.entry.js → p-fd009368.entry.js} +1 -1
  168. package/lib/duet/{p-237e47b4.system.entry.js → p-fe1a2f0d.system.entry.js} +1 -1
  169. package/lib/duet/p-fe3806e2.system.entry.js +4 -0
  170. package/lib/duet/{p-4e28da18.system.entry.js → p-ffcfbd7a.system.entry.js} +1 -1
  171. package/lib/esm/{dom-58cd15f6.js → dom-5d060ace.js} +1 -1
  172. package/lib/esm/duet-alert.entry.js +1 -1
  173. package/lib/esm/duet-badge.entry.js +1 -1
  174. package/lib/esm/duet-button_2.entry.js +2 -2
  175. package/lib/esm/duet-caption_4.entry.js +3 -3
  176. package/lib/esm/duet-card.entry.js +2 -2
  177. package/lib/esm/duet-checkbox.entry.js +1 -1
  178. package/lib/esm/duet-choice_2.entry.js +2 -3
  179. package/lib/esm/duet-collapsible.entry.js +4 -452
  180. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  181. package/lib/esm/duet-date-picker.entry.js +2 -2
  182. package/lib/esm/duet-divider_2.entry.js +1 -1
  183. package/lib/esm/duet-editable-table-button.entry.js +92 -0
  184. package/lib/esm/{duet-upload.entry.js → duet-editable-table_4.entry.js} +461 -33
  185. package/lib/esm/duet-empty-state.entry.js +1 -1
  186. package/lib/esm/duet-fieldset.entry.js +58 -0
  187. package/lib/esm/duet-footer.entry.js +2 -2
  188. package/lib/esm/duet-grid_2.entry.js +26 -3
  189. package/lib/esm/duet-header_2.entry.js +220 -47
  190. package/lib/esm/duet-hero.entry.js +1 -1
  191. package/lib/esm/duet-icon.entry.js +8 -6
  192. package/lib/esm/duet-input_2.entry.js +2 -3
  193. package/lib/esm/duet-layout.entry.js +1 -1
  194. package/lib/esm/duet-list_2.entry.js +2 -2
  195. package/lib/esm/duet-modal.entry.js +2 -2
  196. package/lib/esm/duet-notification_2.entry.js +2 -2
  197. package/lib/esm/duet-number-input.entry.js +1 -1
  198. package/lib/esm/duet-progress.entry.js +1 -1
  199. package/lib/esm/duet-radio_2.entry.js +1 -1
  200. package/lib/esm/duet-range-slider.entry.js +1 -1
  201. package/lib/esm/duet-select.entry.js +1 -1
  202. package/lib/esm/duet-step_2.entry.js +1 -1
  203. package/lib/esm/duet-tab_2.entry.js +1 -1
  204. package/lib/esm/duet-textarea.entry.js +1 -1
  205. package/lib/esm/duet-toggle.entry.js +1 -1
  206. package/lib/esm/duet-tooltip.entry.js +1 -1
  207. package/lib/esm/duet-tray.entry.js +1 -1
  208. package/lib/esm/duet-upload-aria-status.entry.js +96 -0
  209. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  210. package/lib/esm/duet.js +4 -4
  211. package/lib/esm/{focus-utils-1fe0dcd0.js → focus-utils-bf7d1e80.js} +1 -1
  212. package/lib/esm/form-search-ea8e19ae.js +6 -0
  213. package/lib/esm/{index-84d97bd1.js → index-f813a624.js} +2 -2
  214. package/lib/esm/loader.js +3 -3
  215. package/lib/esm/{shadow-css-7c726abb.js → shadow-css-13d024f4.js} +1 -1
  216. package/lib/esm/token-utils-75f78ca4.js +75 -0
  217. package/lib/esm/tokens-e110dc89.js +453 -0
  218. package/lib/esm-es5/{dom-58cd15f6.js → dom-5d060ace.js} +0 -0
  219. package/lib/esm-es5/duet-alert.entry.js +1 -1
  220. package/lib/esm-es5/duet-badge.entry.js +1 -1
  221. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  222. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  223. package/lib/esm-es5/duet-card.entry.js +1 -1
  224. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  225. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  226. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  227. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  228. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  229. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  230. package/lib/esm-es5/duet-editable-table-button.entry.js +4 -0
  231. package/lib/esm-es5/duet-editable-table_4.entry.js +4 -0
  232. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  233. package/lib/esm-es5/duet-fieldset.entry.js +4 -0
  234. package/lib/esm-es5/duet-footer.entry.js +1 -1
  235. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  236. package/lib/esm-es5/duet-header_2.entry.js +2 -2
  237. package/lib/esm-es5/duet-hero.entry.js +1 -1
  238. package/lib/esm-es5/duet-icon.entry.js +1 -1
  239. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  240. package/lib/esm-es5/duet-layout.entry.js +1 -1
  241. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  242. package/lib/esm-es5/duet-modal.entry.js +1 -1
  243. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  244. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  245. package/lib/esm-es5/duet-progress.entry.js +1 -1
  246. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  247. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  248. package/lib/esm-es5/duet-select.entry.js +1 -1
  249. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  250. package/lib/esm-es5/duet-tab_2.entry.js +1 -1
  251. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  252. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  253. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  254. package/lib/esm-es5/duet-tray.entry.js +1 -1
  255. package/lib/esm-es5/duet-upload-aria-status.entry.js +4 -0
  256. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  257. package/lib/esm-es5/duet.js +1 -1
  258. package/lib/esm-es5/{focus-utils-1fe0dcd0.js → focus-utils-bf7d1e80.js} +1 -1
  259. package/lib/esm-es5/form-search-ea8e19ae.js +4 -0
  260. package/lib/esm-es5/{index-84d97bd1.js → index-f813a624.js} +1 -1
  261. package/lib/esm-es5/loader.js +1 -1
  262. package/lib/esm-es5/{shadow-css-7c726abb.js → shadow-css-13d024f4.js} +0 -0
  263. package/lib/esm-es5/token-utils-75f78ca4.js +4 -0
  264. package/lib/esm-es5/tokens-e110dc89.js +4 -0
  265. package/lib/html.html-data.json +4925 -0
  266. package/lib/types/common-types.d.ts +0 -1
  267. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +3 -0
  268. package/lib/types/components/duet-editable-table/duet-editable-table-button.d.ts +1 -0
  269. package/lib/types/components/duet-editable-table/duet-editable-table-item.d.ts +5 -1
  270. package/lib/types/components/duet-editable-table/duet-editable-table-tabledata.d.ts +1 -0
  271. package/lib/types/components/duet-editable-table/duet-editable-table.d.ts +10 -0
  272. package/lib/types/components/duet-grid/duet-grid.d.ts +1 -0
  273. package/lib/types/components/duet-header/duet-header-dropdown.d.ts +16 -0
  274. package/lib/types/components/duet-header/duet-header-hamburger.d.ts +2 -0
  275. package/lib/types/components/duet-header/duet-header-icon.d.ts +8 -0
  276. package/lib/types/components/duet-header/duet-header.d.ts +41 -4
  277. package/lib/types/components/duet-icon/duet-icon.d.ts +1 -1
  278. package/lib/types/components/duet-link/duet-link.d.ts +3 -0
  279. package/lib/types/components/duet-table/duet-table.d.ts +1 -1
  280. package/lib/types/components/duet-upload/duet-upload.d.ts +46 -18
  281. package/lib/types/components/duet-upload/{duet-upload-editable-item-error.d.ts → upload-editable-item-error.d.ts} +0 -0
  282. package/lib/types/components/duet-upload/{duet-upload-editable-item-inprogres.d.ts → upload-editable-item-inprogres.d.ts} +0 -0
  283. package/lib/types/components/duet-upload/{duet-upload-editable-item-success.d.ts → upload-editable-item-success.d.ts} +0 -0
  284. package/lib/types/components/duet-upload/{duet-upload-validators.d.ts → upload-validators.d.ts} +0 -0
  285. package/lib/types/components/{duet-upload → duet-upload-aria-status}/duet-upload-aria-status.d.ts +2 -2
  286. package/lib/types/components.d.ts +71 -35
  287. package/lib/types/stencil-public-runtime.d.ts +6 -4
  288. package/lib/types/utils/template-utils.d.ts +13 -0
  289. package/lib/types/utils/token-utils.d.ts +8 -2
  290. package/package.json +13 -13
  291. package/lib/cjs/duet-editable-table-button_3.cjs.entry.js +0 -232
  292. package/lib/cjs/duet-editable-table_3.cjs.entry.js +0 -336
  293. package/lib/cjs/js-utils-33a9dbe3.js +0 -16
  294. package/lib/cjs/token-utils-63a9c8dc.js +0 -30
  295. package/lib/duet/p-10deead0.system.js +0 -4
  296. package/lib/duet/p-1208c84f.entry.js +0 -4
  297. package/lib/duet/p-155ef581.system.entry.js +0 -4
  298. package/lib/duet/p-16c48c5d.entry.js +0 -4
  299. package/lib/duet/p-1797df7b.system.entry.js +0 -4
  300. package/lib/duet/p-1a08fc22.system.entry.js +0 -4
  301. package/lib/duet/p-28e02c08.entry.js +0 -4
  302. package/lib/duet/p-33c58756.entry.js +0 -4
  303. package/lib/duet/p-3c1971d8.js +0 -4
  304. package/lib/duet/p-5ea0cd19.entry.js +0 -4
  305. package/lib/duet/p-63d5bf73.system.entry.js +0 -4
  306. package/lib/duet/p-6cc3be76.system.entry.js +0 -4
  307. package/lib/duet/p-6e363557.system.js +0 -4
  308. package/lib/duet/p-7368b14e.system.entry.js +0 -4
  309. package/lib/duet/p-7e8d5bb9.system.entry.js +0 -4
  310. package/lib/duet/p-81867417.system.js +0 -4
  311. package/lib/duet/p-9d73343a.entry.js +0 -4
  312. package/lib/duet/p-a6a84ec6.entry.js +0 -4
  313. package/lib/duet/p-b25d3769.js +0 -4
  314. package/lib/duet/p-c34329f3.entry.js +0 -4
  315. package/lib/duet/p-de07c7d7.entry.js +0 -4
  316. package/lib/duet/p-f0a4b68d.system.entry.js +0 -4
  317. package/lib/duet/p-f364eb96.entry.js +0 -4
  318. package/lib/esm/duet-editable-table-button_3.entry.js +0 -226
  319. package/lib/esm/duet-editable-table_3.entry.js +0 -330
  320. package/lib/esm/js-utils-b69f17df.js +0 -14
  321. package/lib/esm/token-utils-590d9413.js +0 -28
  322. package/lib/esm-es5/duet-editable-table-button_3.entry.js +0 -4
  323. package/lib/esm-es5/duet-editable-table_3.entry.js +0 -4
  324. package/lib/esm-es5/duet-upload.entry.js +0 -4
  325. package/lib/esm-es5/js-utils-b69f17df.js +0 -4
  326. package/lib/esm-es5/token-utils-590d9413.js +0 -4
@@ -4,9 +4,11 @@
4
4
  import { Component, Element, h, Host, Method, Prop, State } from "@stencil/core";
5
5
  import { debounce } from "../../utils/js-utils";
6
6
  import { getLocaleString, sanitizeString } from "../../utils/language-utils";
7
+ import { generateTemplateFn } from "../../utils/template-utils";
7
8
  import { inheritGlobalTheme } from "../../utils/themeable-component";
8
9
  export class DuetEditableTable {
9
10
  constructor() {
11
+ this.template = undefined;
10
12
  /**
11
13
  * State() variables
12
14
  * @internal
@@ -16,6 +18,10 @@ export class DuetEditableTable {
16
18
  * Map of items that contain list of things.
17
19
  */
18
20
  this.items = new Map();
21
+ /**
22
+ * Key used to set vertical alignment of action buttons
23
+ */
24
+ this.alignment = "middle";
19
25
  /**
20
26
  * Array of internationalized defaults for the default groups labels.
21
27
  */
@@ -64,12 +70,40 @@ export class DuetEditableTable {
64
70
  * Exposes the aria role for optimizing accessibility.
65
71
  */
66
72
  this.accessibleRole = undefined;
73
+ /**
74
+ * Theme of the table.
75
+ */
76
+ this.theme = "";
67
77
  /**
68
78
  * Private methods.
69
79
  */
70
80
  this.kick = debounce(() => {
71
81
  this.tick = Date.now();
72
82
  }, 100); // will trigger re-render
83
+ /**
84
+ * If a user defines a template section within editable table, try to read an use it.
85
+ */
86
+ this.getTemplate = () => {
87
+ const templateDom = this.element.getElementsByTagName("template");
88
+ if (templateDom === null || templateDom === void 0 ? void 0 : templateDom.length) {
89
+ const templateString = templateDom[0].content.firstElementChild.outerHTML;
90
+ return generateTemplateFn(templateString);
91
+ }
92
+ else {
93
+ return false;
94
+ }
95
+ };
96
+ this.getItemData = (data) => {
97
+ const { item, group, uid } = data;
98
+ if (this.template) {
99
+ return {
100
+ group,
101
+ uid,
102
+ item: this.template(item),
103
+ };
104
+ }
105
+ return { item, group, uid };
106
+ };
73
107
  this.filterMap = needle => {
74
108
  if (needle === "all") {
75
109
  return Array.from(this.items);
@@ -81,6 +115,9 @@ export class DuetEditableTable {
81
115
  * Component lifecycle events.
82
116
  */
83
117
  componentWillLoad() {
118
+ // look for a <template> region in the duet-editable-table
119
+ this.template = this.getTemplate();
120
+ // take care of the case where groups and actions are defined as html properties instead of javascript objects
84
121
  if (typeof this.groups === "string") {
85
122
  this.internalGroupArray = sanitizeString(this.groups);
86
123
  }
@@ -126,7 +163,7 @@ export class DuetEditableTable {
126
163
  : getLocaleString(this.actionLabelDefaults))))),
127
164
  h("tbody", null, currentGroup.map(dataAsArray => {
128
165
  const [key, value] = dataAsArray;
129
- return (h("duet-editable-table-item", { keyName: key, data: Object.assign({}, value), groupId: group.id, part: group.id, actions: this.internalActionsArray }));
166
+ return (h("duet-editable-table-item", { theme: this.theme, keyName: key, data: this.getItemData(value), groupId: group.id, part: group.id, alignment: this.alignment, actions: this.internalActionsArray }));
130
167
  })))));
131
168
  })));
132
169
  }
@@ -159,6 +196,24 @@ export class DuetEditableTable {
159
196
  },
160
197
  "defaultValue": "new Map()"
161
198
  },
199
+ "alignment": {
200
+ "type": "string",
201
+ "mutable": false,
202
+ "complexType": {
203
+ "original": "string",
204
+ "resolved": "string",
205
+ "references": {}
206
+ },
207
+ "required": false,
208
+ "optional": false,
209
+ "docs": {
210
+ "tags": [],
211
+ "text": "Key used to set vertical alignment of action buttons"
212
+ },
213
+ "attribute": "alignment",
214
+ "reflect": false,
215
+ "defaultValue": "\"middle\""
216
+ },
162
217
  "groupsLabelDefaults": {
163
218
  "type": "unknown",
164
219
  "mutable": false,
@@ -314,7 +369,8 @@ export class DuetEditableTable {
314
369
  "text": "Theme of the table."
315
370
  },
316
371
  "attribute": "theme",
317
- "reflect": false
372
+ "reflect": false,
373
+ "defaultValue": "\"\""
318
374
  }
319
375
  }; }
320
376
  static get states() { return {
@@ -249,6 +249,7 @@ a:hover .duet-footer-arrow {
249
249
  }
250
250
  .duet-footer-menu a {
251
251
  text-decoration: none;
252
+ white-space: nowrap;
252
253
  }
253
254
  .duet-footer-menu a:hover, .duet-footer-menu a:focus {
254
255
  text-decoration: underline;
@@ -1,6 +1,7 @@
1
1
  /*!
2
2
  * Built with Duet Design System
3
3
  */
4
+ import { media_query_large, media_query_medium, media_query_small } from "@duetds/tokens/lib/tokens.json";
4
5
  import { Component, Element, h, Host, Prop, State, Watch } from "@stencil/core";
5
6
  import { watchForElement, watchForOptions } from "../../utils/watch-options";
6
7
  function isGridItem(element) {
@@ -8,6 +9,11 @@ function isGridItem(element) {
8
9
  }
9
10
  export class DuetGrid {
10
11
  constructor() {
12
+ this.mql = [
13
+ window.matchMedia(media_query_large.replace(/'/g, "")),
14
+ window.matchMedia(media_query_medium.replace(/'/g, "")),
15
+ window.matchMedia(media_query_small.replace(/'/g, "")),
16
+ ];
11
17
  this.distributeFormElement = false;
12
18
  /**
13
19
  * Enable or disable the automatic responsive behaviour of the grid component.
@@ -62,10 +68,18 @@ export class DuetGrid {
62
68
  this.mutationO = watchForOptions(el, "duet-grid-item", () => {
63
69
  this.updateGridItems();
64
70
  });
71
+ // the next two functions are used to watch for changes in the grid items, and are process intensive - so only run when needed
65
72
  if (this.distributeFormElement) {
66
73
  this.mutation1 = watchForElement(el, "duet-input", () => {
67
74
  this.updateGridItemsWithInputFields();
68
75
  });
76
+ // listen for potential mediaquery changes and reset layout
77
+ for (let i = 0; i < this.mql.length; i++) {
78
+ // addEventListener is not available in Stencil hydrate
79
+ if (this.mql[i].addEventListener) {
80
+ this.mql[i].addEventListener("change", this.updateGridItemsWithInputFields.bind(this));
81
+ }
82
+ }
69
83
  }
70
84
  this.updateGridItems();
71
85
  }
@@ -78,6 +92,13 @@ export class DuetGrid {
78
92
  this.mutation1.disconnect();
79
93
  this.mutation1 = undefined;
80
94
  }
95
+ // listen for potential mediaquery changes and reset layout
96
+ for (let i = 0; i < this.mql.length; i++) {
97
+ // addEventListener is not available in Stencil hydrate
98
+ if (this.mql[i].removeEventListener) {
99
+ this.mql[i].removeEventListener("change", this.updateGridItemsWithInputFields.bind(this));
100
+ }
101
+ }
81
102
  }
82
103
  /**
83
104
  * Local methods
@@ -91,6 +112,8 @@ export class DuetGrid {
91
112
  }
92
113
  async updateGridItemsWithInputFields() {
93
114
  const items = Array.from(this.element.children).filter(isGridItem);
115
+ // if layout changes to columns instead of row, remove all padding
116
+ const hasColumnLayout = window ? window.getComputedStyle(this.element).flexDirection === "column" : false;
94
117
  let maxHeight = 0;
95
118
  const sizes = [];
96
119
  items.forEach(item => {
@@ -102,10 +125,10 @@ export class DuetGrid {
102
125
  items.forEach(item => {
103
126
  const inputErrorDom = item.querySelector("span.duet-input-error");
104
127
  const height = inputErrorDom ? this.outerHeight(inputErrorDom) : 0;
105
- if (height < maxHeight) {
128
+ if (height < maxHeight && !hasColumnLayout) {
106
129
  item.setAttribute("style", `padding-bottom: ${maxHeight - height}px;`);
107
130
  }
108
- else if (height === maxHeight) {
131
+ else if (height === maxHeight || hasColumnLayout) {
109
132
  item.setAttribute("style", `padding-bottom: 0px;`);
110
133
  }
111
134
  });
@@ -0,0 +1,27 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import arrowDownIcon from "@duetds/icons/lib/assets/action-arrow-down-small";
5
+ import { h } from "@stencil/core";
6
+ import { DuetHeaderIcon } from "./duet-header-icon";
7
+ export const DuetHeaderDropdown = (props, _children) => {
8
+ const accessibleLabel = props.accessibleText ? props.accessibleText : props.label;
9
+ return (h("div", { class: { ["duet-header-dropdown"]: true, [props.className]: !!props.className } },
10
+ h("button", { ref: props.toggleRef, "aria-haspopup": "listbox", "aria-controls": props.id, "aria-expanded": props.isOpen ? "true" : "false", "aria-labelledby": `${props.id}-accessible-label`, id: `${props.id}-button`, type: "button", class: {
11
+ [props.id]: true,
12
+ "duet-header-dropdown-toggle": true,
13
+ "duet-header-button": true,
14
+ active: props.active,
15
+ }, onClick: props.onToggle },
16
+ props.icon && h(DuetHeaderIcon, { icon: props.icon }),
17
+ h("span", { "aria-hidden": "true", id: `${props.id}-label`, class: "duet-header-dropdown-label" }, props.label),
18
+ props.badge && h("div", { class: "duet-header-badge" }),
19
+ h("div", { class: "duet-header-caret", "aria-hidden": "true" },
20
+ h("duet-icon", { margin: "none", size: "auto", icon: arrowDownIcon.svg, color: "currentColor" })),
21
+ h("duet-visually-hidden", { id: `${props.id}-accessible-label` }, accessibleLabel)),
22
+ h("div", { ref: props.itemsRef, tabindex: "-1", role: "menu", id: props.id, "aria-labelledby": `${props.id}-button`, class: {
23
+ "duet-header-dropdown-content": true,
24
+ [`${props.id}-items`]: true,
25
+ active: props.isOpen,
26
+ } }, _children)));
27
+ };
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h } from "@stencil/core";
5
+ export const DuetHeaderHamburger = () => (h("div", { class: "duet-header-hamburger" },
6
+ h("span", { class: "duet-header-bar" }),
7
+ h("span", { class: "duet-header-bar" }),
8
+ h("span", { class: "duet-header-bar" }),
9
+ h("span", { class: "duet-header-bar" })));
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ import { h } from "@stencil/core";
5
+ export const DuetHeaderIcon = (props, _children) => {
6
+ const iconSize = props.iconSize ? props.iconSize : "x-small";
7
+ return (h("span", { class: "duet-header-icon" },
8
+ h("duet-icon", { margin: "none", size: iconSize, icon: props.icon, color: "currentColor" })));
9
+ };