@duetds/components 4.33.0 → 4.33.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 (253) hide show
  1. package/hydrate/index.js +82 -40
  2. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  3. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -3
  9. package/lib/cjs/duet-collapsible.cjs.entry.js +1 -1
  10. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  12. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-editable-table-button.cjs.entry.js +89 -0
  14. package/lib/cjs/{duet-upload.cjs.entry.js → duet-editable-table_4.cjs.entry.js} +386 -30
  15. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  16. package/lib/cjs/duet-fieldset.cjs.entry.js +62 -0
  17. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-grid_2.cjs.entry.js +1 -1
  19. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-icon.cjs.entry.js +16 -6
  22. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-tab_2.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +100 -0
  39. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  40. package/lib/cjs/duet.cjs.js +2 -2
  41. package/lib/cjs/{focus-utils-a7a1fb8b.js → focus-utils-b609a7a5.js} +1 -1
  42. package/lib/cjs/{index-b724d698.js → index-9a57d969.js} +8 -1
  43. package/lib/cjs/loader.cjs.js +2 -2
  44. package/lib/collection/collection-manifest.json +9 -8
  45. package/lib/collection/components/duet-choice/duet-choice.js +0 -1
  46. package/lib/collection/components/duet-icon/icon-utils.js +15 -5
  47. package/lib/collection/components/duet-upload/duet-upload.js +72 -47
  48. package/lib/collection/components/duet-upload/{duet-upload-editable-item-error.js → upload-editable-item-error.js} +0 -0
  49. package/lib/collection/components/duet-upload/{duet-upload-editable-item-inprogres.js → upload-editable-item-inprogres.js} +0 -0
  50. package/lib/collection/components/duet-upload/{duet-upload-editable-item-success.js → upload-editable-item-success.js} +0 -0
  51. package/lib/collection/components/duet-upload/{duet-upload-validators.js → upload-validators.js} +0 -0
  52. package/lib/collection/components/{duet-upload → duet-upload-aria-status}/duet-upload-aria-status.js +3 -3
  53. package/lib/custom-elements-bundle/index.js +75 -36
  54. package/lib/duet/duet.esm.js +1 -1
  55. package/lib/duet/duet.js +1 -1
  56. package/lib/duet/{p-a207b008.entry.js → p-00210a63.entry.js} +1 -1
  57. package/lib/duet/{p-8cb7416d.entry.js → p-0205162d.entry.js} +1 -1
  58. package/lib/duet/{p-d744d188.system.entry.js → p-020a2c42.system.entry.js} +1 -1
  59. package/lib/duet/{p-c36b4da0.entry.js → p-079795e5.entry.js} +1 -1
  60. package/lib/duet/{p-6e6e76db.system.entry.js → p-09013a48.system.entry.js} +1 -1
  61. package/lib/duet/p-0a89315d.entry.js +4 -0
  62. package/lib/duet/{p-6cc3be76.system.entry.js → p-0e90f075.system.entry.js} +1 -1
  63. package/lib/duet/{p-8f826843.system.entry.js → p-19d7d9d5.system.entry.js} +1 -1
  64. package/lib/duet/{p-c2e77278.entry.js → p-1cbc6269.entry.js} +1 -1
  65. package/lib/duet/{p-a5b9c192.system.entry.js → p-2297d13f.system.entry.js} +1 -1
  66. package/lib/duet/{p-263bc9cd.system.entry.js → p-2a822e91.system.entry.js} +1 -1
  67. package/lib/duet/{p-2bb1460c.entry.js → p-2fdcff82.entry.js} +1 -1
  68. package/lib/duet/{p-67d9a9a9.system.entry.js → p-3013c9bb.system.entry.js} +1 -1
  69. package/lib/duet/{p-c34329f3.entry.js → p-3212a556.entry.js} +1 -1
  70. package/lib/duet/{p-b32224fe.system.entry.js → p-323643af.system.entry.js} +1 -1
  71. package/lib/duet/{p-a9859a82.entry.js → p-32b7397d.entry.js} +1 -1
  72. package/lib/duet/{p-6a19b5ec.entry.js → p-360086f8.entry.js} +1 -1
  73. package/lib/duet/{p-bf93a991.entry.js → p-37cda933.entry.js} +1 -1
  74. package/lib/duet/{p-af41d894.system.entry.js → p-3ba62cf1.system.entry.js} +1 -1
  75. package/lib/duet/{p-4a87e9ab.system.entry.js → p-3fd9190b.system.entry.js} +1 -1
  76. package/lib/duet/{p-acc57c77.entry.js → p-43847557.entry.js} +1 -1
  77. package/lib/duet/{p-374fb7e6.system.entry.js → p-4b6e8558.system.entry.js} +1 -1
  78. package/lib/duet/p-4c5eedf8.entry.js +4 -0
  79. package/lib/duet/{p-a6a84ec6.entry.js → p-4c827f0d.entry.js} +1 -1
  80. package/lib/duet/{p-b42d81c3.system.js → p-51955fc0.system.js} +1 -1
  81. package/lib/duet/{p-e964d062.entry.js → p-5cfc53f9.entry.js} +1 -1
  82. package/lib/duet/{p-2443bdca.system.entry.js → p-5decc259.system.entry.js} +1 -1
  83. package/lib/duet/{p-548d484e.js → p-5e0071d6.js} +1 -1
  84. package/lib/duet/p-5e77432e.system.entry.js +4 -0
  85. package/lib/duet/{p-58750bae.system.entry.js → p-6024e484.system.entry.js} +1 -1
  86. package/lib/duet/{p-9d73343a.entry.js → p-68008644.entry.js} +1 -1
  87. package/lib/duet/p-69385972.system.entry.js +4 -0
  88. package/lib/duet/{p-4e28da18.system.entry.js → p-6a4d85ed.system.entry.js} +1 -1
  89. package/lib/duet/{p-984576c9.entry.js → p-6a5ab3eb.entry.js} +1 -1
  90. package/lib/duet/{p-aba68b7b.entry.js → p-6e4b1c0d.entry.js} +1 -1
  91. package/lib/duet/{p-27d80cef.system.entry.js → p-6f36f647.system.entry.js} +1 -1
  92. package/lib/duet/{p-7e8d5bb9.system.entry.js → p-6fa6c4fb.system.entry.js} +1 -1
  93. package/lib/duet/{p-d1c19f04.system.entry.js → p-71a77368.system.entry.js} +1 -1
  94. package/lib/duet/p-73f9db25.system.entry.js +4 -0
  95. package/lib/duet/{p-63d5bf73.system.entry.js → p-74f4a0d8.system.entry.js} +1 -1
  96. package/lib/duet/{p-aef1b720.system.entry.js → p-7530be48.system.entry.js} +1 -1
  97. package/lib/duet/{p-9481e312.entry.js → p-75edcaed.entry.js} +1 -1
  98. package/lib/duet/{p-237e47b4.system.entry.js → p-7a8597c2.system.entry.js} +1 -1
  99. package/lib/duet/p-85ad012a.system.entry.js +4 -0
  100. package/lib/duet/{p-cdd70b93.entry.js → p-85e52be8.entry.js} +1 -1
  101. package/lib/duet/{p-94169303.entry.js → p-8aaf3383.entry.js} +1 -1
  102. package/lib/duet/{p-86daec1c.entry.js → p-9e79e033.entry.js} +1 -1
  103. package/lib/duet/{p-4607af59.entry.js → p-9f35d682.entry.js} +1 -1
  104. package/lib/duet/{p-d3a3c3c7.system.entry.js → p-a2a00146.system.entry.js} +1 -1
  105. package/lib/duet/{p-1208c84f.entry.js → p-a545398c.entry.js} +1 -1
  106. package/lib/duet/{p-00735436.entry.js → p-af49d4f9.entry.js} +1 -1
  107. package/lib/duet/p-b25edbbe.entry.js +4 -0
  108. package/lib/duet/{p-e12f2b8b.system.js → p-b314348c.system.js} +2 -2
  109. package/lib/duet/{p-751542a0.system.entry.js → p-b4111e88.system.entry.js} +1 -1
  110. package/lib/duet/{p-7fee0d23.system.entry.js → p-b5c7d304.system.entry.js} +1 -1
  111. package/lib/duet/{p-16c48c5d.entry.js → p-b6e9860a.entry.js} +1 -1
  112. package/lib/duet/{p-060d79be.entry.js → p-ba18b56e.entry.js} +1 -1
  113. package/lib/duet/{p-387823af.system.entry.js → p-bf4596bd.system.entry.js} +1 -1
  114. package/lib/duet/{p-8b5ca0e7.system.entry.js → p-bf9f6d80.system.entry.js} +1 -1
  115. package/lib/duet/{p-e2a44156.js → p-c1a1ea1b.js} +1 -1
  116. package/lib/duet/{p-7368b14e.system.entry.js → p-c742856b.system.entry.js} +1 -1
  117. package/lib/duet/{p-48d1eb1f.system.entry.js → p-cbdb9e98.system.entry.js} +1 -1
  118. package/lib/duet/{p-b4e87f02.system.entry.js → p-cf319832.system.entry.js} +1 -1
  119. package/lib/duet/p-d67fff56.entry.js +4 -0
  120. package/lib/duet/{p-4b6ebe40.system.entry.js → p-dd76db9b.system.entry.js} +1 -1
  121. package/lib/duet/{p-d4118b6e.system.entry.js → p-de5ec54e.system.entry.js} +1 -1
  122. package/lib/duet/{p-5826523b.entry.js → p-df6f39a3.entry.js} +1 -1
  123. package/lib/duet/p-e1dc86b5.system.js +4 -0
  124. package/lib/duet/{p-b3744481.entry.js → p-e2596ea0.entry.js} +1 -1
  125. package/lib/duet/{p-e76b722f.entry.js → p-e370c18b.entry.js} +1 -1
  126. package/lib/duet/{p-9dca5c22.system.entry.js → p-e48f3a32.system.entry.js} +1 -1
  127. package/lib/duet/p-e5031543.entry.js +4 -0
  128. package/lib/duet/{p-597d99c7.entry.js → p-e60ee8b0.entry.js} +1 -1
  129. package/lib/duet/{p-794659ac.entry.js → p-e70088d5.entry.js} +1 -1
  130. package/lib/duet/{p-aee24388.system.entry.js → p-e7b90769.system.entry.js} +1 -1
  131. package/lib/duet/{p-f8ce39fb.entry.js → p-e8123a53.entry.js} +1 -1
  132. package/lib/duet/{p-a890da72.entry.js → p-ef7251bf.entry.js} +1 -1
  133. package/lib/duet/p-f0cfe033.system.entry.js +4 -0
  134. package/lib/duet/{p-1a08fc22.system.entry.js → p-f2a087a8.system.entry.js} +1 -1
  135. package/lib/duet/{p-3af5d66f.entry.js → p-f5a55b3c.entry.js} +1 -1
  136. package/lib/duet/p-fd613733.entry.js +4 -0
  137. package/lib/esm/duet-alert.entry.js +1 -1
  138. package/lib/esm/duet-badge.entry.js +1 -1
  139. package/lib/esm/duet-button_2.entry.js +1 -1
  140. package/lib/esm/duet-caption_4.entry.js +1 -1
  141. package/lib/esm/duet-card.entry.js +1 -1
  142. package/lib/esm/duet-checkbox.entry.js +1 -1
  143. package/lib/esm/duet-choice_2.entry.js +2 -3
  144. package/lib/esm/duet-collapsible.entry.js +1 -1
  145. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  146. package/lib/esm/duet-date-picker.entry.js +2 -2
  147. package/lib/esm/duet-divider_2.entry.js +1 -1
  148. package/lib/esm/duet-editable-table-button.entry.js +85 -0
  149. package/lib/esm/{duet-upload.entry.js → duet-editable-table_4.entry.js} +384 -31
  150. package/lib/esm/duet-empty-state.entry.js +1 -1
  151. package/lib/esm/duet-fieldset.entry.js +58 -0
  152. package/lib/esm/duet-footer.entry.js +1 -1
  153. package/lib/esm/duet-grid_2.entry.js +1 -1
  154. package/lib/esm/duet-header_2.entry.js +1 -1
  155. package/lib/esm/duet-hero.entry.js +1 -1
  156. package/lib/esm/duet-icon.entry.js +16 -6
  157. package/lib/esm/duet-input_2.entry.js +1 -1
  158. package/lib/esm/duet-layout.entry.js +1 -1
  159. package/lib/esm/duet-list_2.entry.js +1 -1
  160. package/lib/esm/duet-modal.entry.js +2 -2
  161. package/lib/esm/duet-notification_2.entry.js +1 -1
  162. package/lib/esm/duet-number-input.entry.js +1 -1
  163. package/lib/esm/duet-progress.entry.js +1 -1
  164. package/lib/esm/duet-radio_2.entry.js +1 -1
  165. package/lib/esm/duet-range-slider.entry.js +1 -1
  166. package/lib/esm/duet-select.entry.js +1 -1
  167. package/lib/esm/duet-step_2.entry.js +1 -1
  168. package/lib/esm/duet-tab_2.entry.js +1 -1
  169. package/lib/esm/duet-textarea.entry.js +1 -1
  170. package/lib/esm/duet-toggle.entry.js +1 -1
  171. package/lib/esm/duet-tooltip.entry.js +1 -1
  172. package/lib/esm/duet-tray.entry.js +1 -1
  173. package/lib/esm/duet-upload-aria-status.entry.js +96 -0
  174. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  175. package/lib/esm/duet.js +2 -2
  176. package/lib/esm/{focus-utils-1fe0dcd0.js → focus-utils-aeb6ca93.js} +1 -1
  177. package/lib/esm/{index-84d97bd1.js → index-e8c7d36f.js} +8 -2
  178. package/lib/esm/loader.js +2 -2
  179. package/lib/esm-es5/duet-alert.entry.js +1 -1
  180. package/lib/esm-es5/duet-badge.entry.js +1 -1
  181. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  182. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  183. package/lib/esm-es5/duet-card.entry.js +1 -1
  184. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  185. package/lib/esm-es5/duet-choice_2.entry.js +2 -2
  186. package/lib/esm-es5/duet-collapsible.entry.js +1 -1
  187. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  188. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  189. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  190. package/lib/esm-es5/duet-editable-table-button.entry.js +4 -0
  191. package/lib/esm-es5/duet-editable-table_4.entry.js +4 -0
  192. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  193. package/lib/esm-es5/duet-fieldset.entry.js +4 -0
  194. package/lib/esm-es5/duet-footer.entry.js +1 -1
  195. package/lib/esm-es5/duet-grid_2.entry.js +1 -1
  196. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  197. package/lib/esm-es5/duet-hero.entry.js +1 -1
  198. package/lib/esm-es5/duet-icon.entry.js +2 -2
  199. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  200. package/lib/esm-es5/duet-layout.entry.js +1 -1
  201. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  202. package/lib/esm-es5/duet-modal.entry.js +1 -1
  203. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  204. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  205. package/lib/esm-es5/duet-progress.entry.js +1 -1
  206. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  207. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  208. package/lib/esm-es5/duet-select.entry.js +1 -1
  209. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  210. package/lib/esm-es5/duet-tab_2.entry.js +1 -1
  211. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  212. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  213. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  214. package/lib/esm-es5/duet-tray.entry.js +1 -1
  215. package/lib/esm-es5/duet-upload-aria-status.entry.js +4 -0
  216. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  217. package/lib/esm-es5/duet.js +1 -1
  218. package/lib/esm-es5/focus-utils-aeb6ca93.js +4 -0
  219. package/lib/esm-es5/{index-84d97bd1.js → index-e8c7d36f.js} +2 -2
  220. package/lib/esm-es5/loader.js +1 -1
  221. package/lib/html.html-data.json +4906 -0
  222. package/lib/types/components/duet-icon/icon-utils.d.ts +1 -1
  223. package/lib/types/components/duet-upload/duet-upload.d.ts +42 -18
  224. package/lib/types/components/duet-upload/{duet-upload-editable-item-error.d.ts → upload-editable-item-error.d.ts} +0 -0
  225. package/lib/types/components/duet-upload/{duet-upload-editable-item-inprogres.d.ts → upload-editable-item-inprogres.d.ts} +0 -0
  226. package/lib/types/components/duet-upload/{duet-upload-editable-item-success.d.ts → upload-editable-item-success.d.ts} +0 -0
  227. package/lib/types/components/duet-upload/{duet-upload-validators.d.ts → upload-validators.d.ts} +0 -0
  228. package/lib/types/components/{duet-upload → duet-upload-aria-status}/duet-upload-aria-status.d.ts +2 -2
  229. package/lib/types/components.d.ts +25 -25
  230. package/package.json +6 -5
  231. package/lib/cjs/duet-editable-table-button_3.cjs.entry.js +0 -232
  232. package/lib/cjs/duet-editable-table_3.cjs.entry.js +0 -336
  233. package/lib/cjs/js-utils-33a9dbe3.js +0 -16
  234. package/lib/duet/p-10deead0.system.js +0 -4
  235. package/lib/duet/p-155ef581.system.entry.js +0 -4
  236. package/lib/duet/p-1797df7b.system.entry.js +0 -4
  237. package/lib/duet/p-28e02c08.entry.js +0 -4
  238. package/lib/duet/p-33c58756.entry.js +0 -4
  239. package/lib/duet/p-5ea0cd19.entry.js +0 -4
  240. package/lib/duet/p-81867417.system.js +0 -4
  241. package/lib/duet/p-b25d3769.js +0 -4
  242. package/lib/duet/p-de07c7d7.entry.js +0 -4
  243. package/lib/duet/p-dfe79666.system.entry.js +0 -4
  244. package/lib/duet/p-f0a4b68d.system.entry.js +0 -4
  245. package/lib/duet/p-f364eb96.entry.js +0 -4
  246. package/lib/esm/duet-editable-table-button_3.entry.js +0 -226
  247. package/lib/esm/duet-editable-table_3.entry.js +0 -330
  248. package/lib/esm/js-utils-b69f17df.js +0 -14
  249. package/lib/esm-es5/duet-editable-table-button_3.entry.js +0 -4
  250. package/lib/esm-es5/duet-editable-table_3.entry.js +0 -4
  251. package/lib/esm-es5/duet-upload.entry.js +0 -4
  252. package/lib/esm-es5/focus-utils-1fe0dcd0.js +0 -4
  253. package/lib/esm-es5/js-utils-b69f17df.js +0 -4
package/hydrate/index.js CHANGED
@@ -4700,9 +4700,19 @@ function hydrateFactory($stencilWindow, $stencilHydrateOpts, $stencilHydrateResu
4700
4700
  /*hydrateAppClosure start*/
4701
4701
 
4702
4702
 
4703
+ var process = require('process');
4704
+
4705
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
4706
+
4707
+ var process__default = /*#__PURE__*/_interopDefaultLegacy(process);
4708
+
4709
+ var global$1 = (typeof global !== "undefined" ? global :
4710
+ typeof self !== "undefined" ? self :
4711
+ typeof window !== "undefined" ? window : {});
4712
+
4703
4713
  const NAMESPACE = 'duet';
4704
4714
  const BUILD = /* duet */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: false, connectedCallback: true, constructableCSS: false, cssAnnotations: true, cssVarShim: false, devTools: false, disconnectedCallback: true, dynamicImportShim: false, element: false, event: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: true, hydratedAttribute: false, hydratedClass: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, safari10: false, scoped: true, scriptDataOpts: false, shadowDelegatesFocus: true, shadowDom: true, shadowDomShim: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
4705
- const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.2.3"};
4715
+ const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.2.4"};
4706
4716
 
4707
4717
  const TAB_KEY = 9;
4708
4718
  var appGlobalScript = () => {
@@ -4743,7 +4753,7 @@ function forceUpdate() {}
4743
4753
 
4744
4754
  function hydrateApp(e, t, o, n, s) {
4745
4755
  function l() {
4746
- if (global.clearTimeout(p), i.clear(), r.clear(), !h) {
4756
+ if (global$1.clearTimeout(p), i.clear(), r.clear(), !h) {
4747
4757
  h = !0;
4748
4758
  try {
4749
4759
  t.clientHydrateAnnotations && insertVdomAnnotations(e.document, t.staticComponents),
@@ -4838,7 +4848,7 @@ function hydrateApp(e, t, o, n, s) {
4838
4848
  }, e.document.createElementNS = function t(o, n) {
4839
4849
  const s = $.call(e.document, o, n);
4840
4850
  return f(s), s;
4841
- }, p = global.setTimeout((function L() {
4851
+ }, p = global$1.setTimeout((function L() {
4842
4852
  a(`Hydrate exceeded timeout${function e(t) {
4843
4853
  return Array.from(t).map(waitingOnElementMsg);
4844
4854
  }(d)}`);
@@ -5506,7 +5516,7 @@ const cmpModules = new Map, getModule = e => {
5506
5516
  });
5507
5517
  }
5508
5518
  }, win = window, doc = win.document, writeTask = e => {
5509
- process.nextTick((() => {
5519
+ process__default['default'].nextTick((() => {
5510
5520
  try {
5511
5521
  e();
5512
5522
  } catch (e) {
@@ -7092,7 +7102,6 @@ class DuetChoice {
7092
7102
  */
7093
7103
  render() {
7094
7104
  const identifier = this.identifier || this.choiceId;
7095
- console.log(this.element);
7096
7105
  return (hAsync(Host, { class: {
7097
7106
  horizontal: this.groupDirection === "horizontal" && !this.groupResponsive,
7098
7107
  "horizontal-responsive": this.groupDirection === "horizontal" && this.groupResponsive,
@@ -10766,18 +10775,28 @@ const buildIconUrl = (iconName) => {
10766
10775
  }
10767
10776
  };
10768
10777
  const iconCache = {};
10769
- function fetchIconByUrl(url) {
10778
+ function fetchIconByUrl(url, isServer = Build.isServer) {
10770
10779
  if (iconCache[url]) {
10771
10780
  return iconCache[url];
10772
10781
  }
10773
10782
  // we create a function that covers all the fetching, cleanup, validation etc,
10774
10783
  // this way we can perform that work just once, and then return the same promise in future.
10775
10784
  async function doFetch() {
10776
- const res = await fetch(url);
10777
- if (!res.ok) {
10778
- throw new Error(`SVG request failed: ${res.status} ${res.statusText}`);
10785
+ let responseText = "";
10786
+ if (isServer) {
10787
+ const fs = require("fs");
10788
+ const path = require("path");
10789
+ const iconsPath = `${path.resolve(path.dirname(require.resolve("@duetds/icons")), "..")}/lib/assets`;
10790
+ const filenameFromUrl = url.split("/").pop().split("#")[0].split("?")[0];
10791
+ responseText = fs.readFileSync(`${iconsPath}/${filenameFromUrl}`, "utf-8");
10792
+ }
10793
+ else {
10794
+ const res = await fetch(url);
10795
+ if (!res.ok) {
10796
+ throw new Error(`SVG request failed: ${res.status} ${res.statusText}`);
10797
+ }
10798
+ responseText = await res.text();
10779
10799
  }
10780
- const responseText = await res.text();
10781
10800
  const svgElement = cleanupSvg(responseText);
10782
10801
  if (!isValid(svgElement)) {
10783
10802
  throw new Error("SVG validation failed");
@@ -15250,7 +15269,6 @@ const duetUploadCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-upload,*.sc-duet-
15250
15269
  /**
15251
15270
  * @slot header - named slot - to place content after description / caption
15252
15271
  * @slot fileheader - named slot - to place content above "filelist" (only displayed when "filelist" contains items)
15253
- * @slot filelist - named slot - should always contain a configurable duet-editable-table or a component that exposes the same functionality
15254
15272
  * @slot filefooter - named slot - to place content below "filelist" (only displayed when "filelist" contains items)
15255
15273
  */
15256
15274
  class DuetUpload {
@@ -15275,7 +15293,7 @@ class DuetUpload {
15275
15293
  this.filesInProgress = new Map();
15276
15294
  this.fileMaxReached = false;
15277
15295
  this.bytesMaxReached = false;
15278
- //region Internally exposed properties
15296
+ this.internalStatusMessageLabel = undefined;
15279
15297
  /**
15280
15298
  * Properties
15281
15299
  */
@@ -15294,12 +15312,12 @@ class DuetUpload {
15294
15312
  */
15295
15313
  this.external = false;
15296
15314
  /**
15297
- * If set the upload component will not display an upload button, you will have to create on yourself
15298
- * and call the exposed methods startUpload
15315
+ * If set the upload component will not display an upload button, you will have to create one yourself
15316
+ * and call the exposed method startUpload
15299
15317
  */
15300
15318
  this.hideButton = false;
15301
15319
  /**
15302
- * Default actions added to all files
15320
+ * Default actions added to the internally used duet-editable-table
15303
15321
  */
15304
15322
  this.actions = [
15305
15323
  {
@@ -15328,17 +15346,43 @@ class DuetUpload {
15328
15346
  },
15329
15347
  ];
15330
15348
  /**
15331
- * If enabled the filelist will create links on successfully uploaded items,
15349
+ * If enabled the editable-table will display links on successfully uploaded items,
15332
15350
  * this requires the server can respond with link URIs in the correct format
15351
+ * and that the files are accessible to the user
15333
15352
  */
15334
15353
  this.showLinks = false;
15335
15354
  /**
15336
15355
  * Property to change the aria upload progress text read aloud by screenreaders
15337
15356
  * @default {
15338
- fi: "Lisää liite",
15339
- sv: "Lägg till en bilaga",
15340
- en: "Choose files",
15341
- }
15357
+ * fi: {
15358
+ * inProgress: "Lähetetään {filesUploaded} lähetettävästä {filesTotal} tiedostosta",
15359
+ * inProgressWithErrors:
15360
+ * "Lähetetään {filesInProgress} tiedostoa, lähetetty {filesUploaded} lähetettävästä {filesTotal} tiedostosta, {filesWithErrors} tiedostossa on virheitä",
15361
+ * done: "Kaikki {filesTotal} tiedostoa lähetetty onnistuneesti",
15362
+ * doneWithErrors:
15363
+ * "Lähetys valmis, {filesUploaded} tiedostoa on lähetetty onnistuneesti, {filesWithErrors} tiedostossa oli virheitä",
15364
+ * files: "tiedostot",
15365
+ * file: "tiedosto",
15366
+ * },
15367
+ * sv: {
15368
+ * inProgress: "Adding {filesUploaded} of {filesTotal}",
15369
+ * inProgressWithErrors:
15370
+ * "Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",
15371
+ * done: "Alla {filesTotal} har lagts till",
15372
+ * doneWithErrors: "Handling slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",
15373
+ * files: "filer",
15374
+ * file: "fil",
15375
+ * },
15376
+ * en: {
15377
+ * inProgress: "Adding {filesUploaded} of {filesTotal}",
15378
+ * inProgressWithErrors:
15379
+ * "Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",
15380
+ * done: "All {filesTotal} added successfully",
15381
+ * doneWithErrors: "Action completed, {filesUploaded} has been added successfully, {filesWithErrors} had errors",
15382
+ * files: "tiedostoa",
15383
+ * file: "tiedosto",
15384
+ * },
15385
+ * }
15342
15386
  */
15343
15387
  this.statusLabelDefaults = {
15344
15388
  fi: {
@@ -15371,8 +15415,7 @@ class DuetUpload {
15371
15415
  */
15372
15416
  this.statusMessageLabel = getLocaleString(this.statusLabelDefaults);
15373
15417
  /**
15374
- * Property to change descriptionDefaults defaults on the component.
15375
- * normally you would handle these strings on an application level and override @label when needed
15418
+ * Property to change button label defaults on the component.
15376
15419
  * @default {
15377
15420
  fi: "Lisää liite",
15378
15421
  sv: "Lägg till en bilaga",
@@ -15390,7 +15433,7 @@ class DuetUpload {
15390
15433
  */
15391
15434
  this.buttonLabel = getLocaleString(this.buttonLabelDefaults);
15392
15435
  /**
15393
- * accessible Label of button
15436
+ * accessible aria-Label of button
15394
15437
  */
15395
15438
  this.accessibleButtonLabel = undefined;
15396
15439
  /**
@@ -15422,7 +15465,7 @@ class DuetUpload {
15422
15465
  */
15423
15466
  this.files = new Map();
15424
15467
  /**
15425
- * Property to read if filelist contains errors or not
15468
+ * Property to read if the internally used editable-table contains errors or not
15426
15469
  */
15427
15470
  this.valid = !this.required;
15428
15471
  /**
@@ -15442,7 +15485,6 @@ class DuetUpload {
15442
15485
  this.label = getLocaleString(this.labelDefaults);
15443
15486
  /**
15444
15487
  * Property to change descriptionDefaults defaults on the component.
15445
- * normally you would handle these strings on an application level and override @label when needed
15446
15488
  * @default {
15447
15489
  fi: "Voit liittää {filetypes}-muotoisia tiedostoja sekä yleisimpiä videotiedostoja. Voit lähettää {maxbytes} verran tiedostoja yhdellä kertaa, ja lisätä enintään {maxfiles} liitettä kerrallaan.",
15448
15490
  sv: "Du kan bifoga filer i flg. formater {filetypes} samt de vanligaste videofilerna. Du kan ladda upp {maxbytes} filer åt gången och lägga till upp till {maxfiles} bilagor åt gången.",
@@ -15516,7 +15558,6 @@ class DuetUpload {
15516
15558
  * by default this is off, setting this to true will limit the users choices to what has been explicitly set
15517
15559
  */
15518
15560
  this.limitSelection = false;
15519
- //region Private functions
15520
15561
  /**
15521
15562
  * Private functions
15522
15563
  */
@@ -15614,7 +15655,6 @@ class DuetUpload {
15614
15655
  }
15615
15656
  };
15616
15657
  this.updateProgress = (ev, name) => {
15617
- console.log(this.filesInProgress.size);
15618
15658
  const updateProgressHelper = percentComplete => {
15619
15659
  this.updateValueInMap(name, "progress", percentComplete);
15620
15660
  this.onProgress(name, percentComplete, ev);
@@ -15658,6 +15698,10 @@ class DuetUpload {
15658
15698
  * We reset the form fields to always be able to re-upload files
15659
15699
  * and because we handle all uploads and states internally in the component (not relying on native form elements)
15660
15700
  */
15701
+ /* TODO: it may be a good idea to just update the list so that this always matches what is in the files map,
15702
+ * TODO: this would remove the capability of Re-uploading, unless we can catch and remove the user file from the form filelist before the upload is canceled by the browser
15703
+ * TODO: but for now we'll just reset the form fields
15704
+ */
15661
15705
  this.nativeInput.value = "";
15662
15706
  };
15663
15707
  this.startUpload = async (ev, metaData = undefined) => {
@@ -15669,8 +15713,6 @@ class DuetUpload {
15669
15713
  ev.preventDefault();
15670
15714
  return;
15671
15715
  };
15672
- //endregion
15673
- //region Eventlisteners for the XHR requests
15674
15716
  /**
15675
15717
  * Eventlisteners for the XHR requests
15676
15718
  */
@@ -15799,11 +15841,16 @@ class DuetUpload {
15799
15841
  this.kick();
15800
15842
  }
15801
15843
  }
15802
- //endregion
15803
15844
  /**
15804
15845
  * Component lifecycle events.
15805
15846
  */
15806
15847
  componentWillLoad() {
15848
+ if (typeof this.statusMessageLabel === "string") {
15849
+ this.internalStatusMessageLabel = sanitizeString(this.groups);
15850
+ }
15851
+ else {
15852
+ this.internalStatusMessageLabel = this.statusMessageLabel;
15853
+ }
15807
15854
  inheritGlobalTheme(this);
15808
15855
  this.listenForActionEvents();
15809
15856
  }
@@ -15811,8 +15858,6 @@ class DuetUpload {
15811
15858
  // listen to the events from the component
15812
15859
  this.verifyValidity();
15813
15860
  }
15814
- //endregion
15815
- //region XHR requests
15816
15861
  /**
15817
15862
  * XHR request utilities
15818
15863
  */
@@ -15860,8 +15905,6 @@ class DuetUpload {
15860
15905
  onProgress: this.trackProgress,
15861
15906
  });
15862
15907
  }
15863
- //endregion
15864
- //region EventHandlers
15865
15908
  /**
15866
15909
  * Component event handling.
15867
15910
  */
@@ -15936,7 +15979,6 @@ class DuetUpload {
15936
15979
  component: "duet-upload",
15937
15980
  });
15938
15981
  }
15939
- //endregion
15940
15982
  /**
15941
15983
  * Sets focus on the specified `duet-input`. Use this method instead of the global
15942
15984
  * `input.focus()`.
@@ -15966,7 +16008,7 @@ class DuetUpload {
15966
16008
  return this.getFilesAsArray();
15967
16009
  }
15968
16010
  /**
15969
- * Convenience method for updating a of an item in the files attribute
16011
+ * Convenience method for updating the value of a key:value inside an item in the files attribute
15970
16012
  */
15971
16013
  async updateValue(item, key, value) {
15972
16014
  this.updateValueInMap(item, key, value);
@@ -15984,7 +16026,7 @@ class DuetUpload {
15984
16026
  "duet-upload-filelist-empty": !this.files.size,
15985
16027
  "duet-upload-filelist": true,
15986
16028
  "duet-upload-filelist-filled": this.files.size,
15987
- }, id: this.labelId, for: identifier }, this.fileListEmpty)), !!this.files.size && hAsync("slot", { name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.statusMessageLabel })), !!this.files.size && (hAsync("duet-editable-table", { "aria-live": "polite", "aria-relevant": "removals", accessibleRole: "log", id: this.editableTableId, groups: this.groups, actions: this.actions, hideGroups: this.hideGroups, items: this.convertToDuetEditableTableItems() })), !!this.files.size && hAsync("slot", { name: "filefooter" }), hAsync("duet-spacer", { size: "large" }), !this.hideButton && (hAsync("duet-button", { id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle" }, this.buttonLabel)), hAsync("duet-spacer", { size: "medium" }), (this.fileMaxReached || this.bytesMaxReached) && (hAsync("duet-alert", null, this.fileMaxReached && getI18nError("duet-upload-301"), this.bytesMaxReached && getI18nError("duet-upload-202"))), hAsync("duet-spacer", { size: "medium" }), hAsync("duet-visually-hidden", null, hAsync("input", { ref: input => {
16029
+ }, id: this.labelId, for: identifier }, this.fileListEmpty)), !!this.files.size && hAsync("slot", { name: "fileheader" }), !!this.files.size && (hAsync("duet-upload-aria-status", { invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.internalStatusMessageLabel })), !!this.files.size && (hAsync("duet-editable-table", { "aria-live": "polite", "aria-relevant": "removals", accessibleRole: "log", id: this.editableTableId, groups: this.groups, actions: this.actions, hideGroups: this.hideGroups, items: this.convertToDuetEditableTableItems() })), !!this.files.size && hAsync("slot", { name: "filefooter" }), hAsync("duet-spacer", { size: "large" }), !this.hideButton && (hAsync("duet-button", { id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle" }, this.buttonLabel)), hAsync("duet-spacer", { size: "medium" }), (this.fileMaxReached || this.bytesMaxReached) && (hAsync("duet-alert", null, this.fileMaxReached && getI18nError("duet-upload-301"), this.bytesMaxReached && getI18nError("duet-upload-202"))), hAsync("duet-spacer", { size: "medium" }), hAsync("duet-visually-hidden", null, hAsync("input", { ref: input => {
15988
16030
  this.nativeInput = input;
15989
16031
  }, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
15990
16032
  "duet-upload": true,
@@ -16010,7 +16052,7 @@ class DuetUpload {
16010
16052
  "showLinks": [4, "show-links"],
16011
16053
  "caption": [1],
16012
16054
  "statusLabelDefaults": [1, "status-label-default"],
16013
- "statusMessageLabel": [16],
16055
+ "statusMessageLabel": [1, "status-message-label"],
16014
16056
  "buttonLabelDefaults": [1, "button-label-default"],
16015
16057
  "buttonLabel": [1, "button-label"],
16016
16058
  "accessibleButtonLabel": [1, "accessible-button-label"],
@@ -16059,7 +16101,7 @@ class DuetUploadAriaStatus {
16059
16101
  */
16060
16102
  this.statusMessage = null;
16061
16103
  /**
16062
- * State() variables
16104
+ * Status labels used in the component
16063
16105
  */
16064
16106
  this.statusMessageLabel = null;
16065
16107
  /**
@@ -16083,7 +16125,7 @@ class DuetUploadAriaStatus {
16083
16125
  */
16084
16126
  this.inprogress = undefined;
16085
16127
  /**
16086
- * Component lifecycle events.
16128
+ * Private functions
16087
16129
  */
16088
16130
  this.replacePlaceHolders = (statusString) => {
16089
16131
  const addFiles = (amount) => {
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const languageUtils = require('./language-utils-aa282901.js');
10
10
  const themeableComponent = require('./themeable-component-0c1be552.js');
11
11
  require('./string-utils-267e3dbb.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const themeableComponent = require('./themeable-component-0c1be552.js');
10
10
 
11
11
  const duetBadgeCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:4px !important;margin-bottom:2px !important;display:inline-block;width:auto;vertical-align:middle}:host:last-child,:host:last-of-type{margin-right:0 !important}:host(.duet-m-0){margin:0 !important}.duet-badge{width:100%;padding:4.4444444444px 12px 5.4444444444px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.75rem;font-style:normal;font-weight:600;line-height:1.25;color:#00294d;text-align:center;word-break:break-word;vertical-align:middle;background:#e6f1f7;border-radius:20rem}.duet-badge.duet-p-0{padding:0 !important}.duet-badge.duet-m-0{margin:0 !important}.duet-badge.duet-theme-turva{padding:5.4444444444px 12px 4.4444444444px;font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-weight:700;color:#171c3a;background:#e8e8eb}.duet-badge.warning{background:#fef3df}.duet-badge.warning.duet-theme-turva{background:#fef1db}.duet-badge.danger{background:#fce9ef}.duet-badge.danger.duet-theme-turva{background:#fceae7}.duet-badge.success{background:#e6f3ef}.duet-badge.success.duet-theme-turva{background:#e6f3ed}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const commonStrings = require('./common-strings-de17f887.js');
10
10
  const languageUtils = require('./language-utils-aa282901.js');
11
11
  const themeableComponent = require('./themeable-component-0c1be552.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const themeableComponent = require('./themeable-component-0c1be552.js');
10
10
  const stringUtils = require('./string-utils-267e3dbb.js');
11
11
  const tokenUtils = require('./token-utils-63a9c8dc.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const createId = require('./create-id-c3b984b1.js');
10
10
  const keyboardUtils = require('./keyboard-utils-b4e3d1d3.js');
11
11
  const stringUtils = require('./string-utils-267e3dbb.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const createId = require('./create-id-c3b984b1.js');
10
10
  const themeableComponent = require('./themeable-component-0c1be552.js');
11
11
 
@@ -5,10 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const commonStrings = require('./common-strings-de17f887.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
- const focusUtils = require('./focus-utils-a7a1fb8b.js');
11
+ const focusUtils = require('./focus-utils-b609a7a5.js');
12
12
  const keyboardUtils = require('./keyboard-utils-b4e3d1d3.js');
13
13
  const languageUtils = require('./language-utils-aa282901.js');
14
14
  const themeableComponent = require('./themeable-component-0c1be552.js');
@@ -275,7 +275,6 @@ let DuetChoice = class {
275
275
  */
276
276
  render() {
277
277
  const identifier = this.identifier || this.choiceId;
278
- console.log(this.element);
279
278
  return (index.h(index.Host, { class: {
280
279
  horizontal: this.groupDirection === "horizontal" && !this.groupResponsive,
281
280
  "horizontal-responsive": this.groupDirection === "horizontal" && this.groupResponsive,
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const actionArrowDownSmall = require('./action-arrow-down-small-ef77a2d1.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
11
  const keyboardUtils = require('./keyboard-utils-b4e3d1d3.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const themeableComponent = require('./themeable-component-0c1be552.js');
10
10
 
11
11
  const duetCookieConsentCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;position:fixed;right:0;bottom:0;left:0;z-index:950;display:block;width:100%;box-shadow:0 2px 20px 0 rgba(0, 0, 0, 0.2)}@media (min-width: 48em){:host{right:28px;bottom:28px;left:auto;width:25rem}}:host(:focus){outline:0}:host(.user-is-tabbing:focus){border-radius:4px;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}:host(.user-is-tabbing.duet-theme-turva:focus){box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}.duet-cookie-consent{padding:20px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.875rem;color:white !important;background-color:rgba(0, 21, 39, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent{background:rgba(0, 21, 39, 0.8);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.duet-cookie-consent.duet-theme-turva{font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";background-color:rgba(12, 14, 29, 0.9)}@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none){.duet-cookie-consent.duet-theme-turva{background:rgba(12, 14, 29, 0.8)}}@media (min-width: 48em){.duet-cookie-consent{padding:20px;border-radius:4px}}.duet-cookie-consent-content{display:flex;align-items:center;max-width:1110px;margin:0 auto}.duet-cookie-consent-content .expand{flex:1}::slotted(a){font-weight:600;color:white !important;text-decoration:underline;white-space:nowrap}::slotted(a[target=_blank]){padding-right:16px;background:url(\"data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMjQgMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjUgMmExLjUgMS41IDAgMDEuMTQgM0gzLjc1Yy0uMzggMC0uNy4yOC0uNzQuNjVsLS4wMS4xdjE0LjVjMCAuMzguMjguNy42NS43NGwuMS4wMWgxNC41Yy4zOCAwIC43LS4yOC43NC0uNjVsLjAxLS4xdi02Ljg5YTEuNSAxLjUgMCAwMTMgMHY2Ljg5QTMuNzUgMy43NSAwIDAxMTguMjUgMjRIMy43NUEzLjc1IDMuNzUgMCAwMTAgMjAuMjVWNS43NUEzLjc1IDMuNzUgMCAwMTMuNzUgMnptMTItMmMuNzggMCAxLjQyLjYgMS41IDEuMzZWNy41YTEuNSAxLjUgMCAwMS0zIC4xNFY1LjEybC01LjQ0IDUuNDRhMS41IDEuNSAwIDAxLTIuMjItMmwuMS0uMTJMMTguODggM0gxNi41QTEuNSAxLjUgMCAwMTE1IDEuNjRWMS41YzAtLjc4LjYtMS40MiAxLjM2LTEuNWguMTR6Ii8+PC9zdmc+\") no-repeat right 50%;background-size:12px 10px}::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(0, 119, 179, 0.3), 0 0 0 1px #0077b3}.duet-theme-turva ::slotted(a:focus){outline:0;box-shadow:0 0 0 4px rgba(23, 28, 58, 0.2), 0 0 0 1px #171c3a}";
@@ -5,9 +5,9 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const createId = require('./create-id-c3b984b1.js');
10
- const focusUtils = require('./focus-utils-a7a1fb8b.js');
10
+ const focusUtils = require('./focus-utils-b609a7a5.js');
11
11
  const languageUtils = require('./language-utils-aa282901.js');
12
12
  const themeableComponent = require('./themeable-component-0c1be552.js');
13
13
  require('./string-utils-267e3dbb.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-b724d698.js');
8
+ const index = require('./index-9a57d969.js');
9
9
  const themeableComponent = require('./themeable-component-0c1be552.js');
10
10
 
11
11
  const duetDividerCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;display:block;width:100%}.duet-divider{-webkit-user-select:none;user-select:none;display:block;width:100%;height:1px;margin-top:36px !important;margin-bottom:28px;background:#e1e3e6}.duet-divider.duet-p-0{padding:0 !important}.duet-divider.duet-m-0{margin:0 !important}.duet-divider.duet-m-s{margin-bottom:16px !important;margin-top:0 !important}.duet-divider.duet-theme-turva{background:#e4e4e6}";
@@ -0,0 +1,89 @@
1
+ /*!
2
+ * Built with Duet Design System
3
+ */
4
+ 'use strict';
5
+
6
+ Object.defineProperty(exports, '__esModule', { value: true });
7
+
8
+ const index = require('./index-9a57d969.js');
9
+ const languageUtils = require('./language-utils-aa282901.js');
10
+ const themeableComponent = require('./themeable-component-0c1be552.js');
11
+ const tokenUtils = require('./token-utils-63a9c8dc.js');
12
+ require('./string-utils-267e3dbb.js');
13
+ require('./tokens.module-6b2df1c2.js');
14
+
15
+ const duetEditableTableButtonCss = "*.sc-duet-editable-table-button,*.sc-duet-editable-table-button::after,*.sc-duet-editable-table-button::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.sc-duet-editable-table-button-h button.sc-duet-editable-table-button{display:flex;align-content:space-between;justify-content:center;min-width:32px;max-width:32px;height:100%;min-height:32px;max-height:32px;padding:0;margin:0;cursor:pointer !important;background-color:transparent;border:1px solid;border-radius:50%}.sc-duet-editable-table-button-h button.sc-duet-editable-table-button duet-icon.sc-duet-editable-table-button{align-self:center}";
16
+
17
+ let DuetEditableTableButton = class {
18
+ constructor(hostRef) {
19
+ index.registerInstance(this, hostRef);
20
+ this.duetEditableItemAction = index.createEvent(this, "duetEditableItemAction", 7);
21
+ this.isHovering = false;
22
+ /**
23
+ * Theme of the empty state component.
24
+ */
25
+ this.theme = "";
26
+ /**
27
+ * action items passed from host component
28
+ * @internal
29
+ */
30
+ this.actions = undefined;
31
+ /**
32
+ * uid that gets passed along when the action is emitted
33
+ * @internal
34
+ */
35
+ this.uid = "";
36
+ /**
37
+ * group associated with action
38
+ * @internal
39
+ */
40
+ this.group = "";
41
+ /**
42
+ * key of the item in the map
43
+ * @internal
44
+ */
45
+ this.keyName = "";
46
+ this.onMouseEnter = () => {
47
+ this.isHovering = true;
48
+ };
49
+ this.onMouseLeave = () => {
50
+ this.isHovering = false;
51
+ };
52
+ }
53
+ /**
54
+ /**
55
+ * Component lifecycle events.
56
+ */
57
+ componentWillLoad() {
58
+ themeableComponent.inheritGlobalTheme(this);
59
+ }
60
+ /**
61
+ /**
62
+ * private functions
63
+ */
64
+ emitActionEvent(ev) {
65
+ this.duetEditableItemAction.emit({
66
+ originalEvent: ev,
67
+ uid: this.uid,
68
+ group: this.group,
69
+ action: this.actions.id,
70
+ keyName: this.keyName,
71
+ component: "duet-editable-table-item",
72
+ });
73
+ }
74
+ /**
75
+ * render() function
76
+ * Always the last one in the class.
77
+ */
78
+ render() {
79
+ return (index.h("button", { style: {
80
+ "border-color": this.isHovering
81
+ ? tokenUtils.getColorByName(this.actions.color_hover)
82
+ : tokenUtils.getColorByName(this.actions.color),
83
+ }, onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, role: "menuitem", class: "duet-editable-table-actions-items-button", "aria-label": this.actions.label ? languageUtils.getLocaleString(this.actions.label) : undefined, onClick: ev => this.emitActionEvent(ev) }, index.h("duet-icon", { class: "duet-editable-table-actions-items-icon", size: "x-small", name: this.actions.icon, color: this.isHovering ? this.actions.color_hover : this.actions.color, margin: "none" })));
84
+ }
85
+ get el() { return index.getElement(this); }
86
+ };
87
+ DuetEditableTableButton.style = duetEditableTableButtonCss;
88
+
89
+ exports.duet_editable_table_button = DuetEditableTableButton;