@duetds/components 10.0.0-alpha.3 → 10.0.0-alpha.30

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 (1231) hide show
  1. package/hydrate/index.d.ts +38 -7
  2. package/hydrate/index.js +11784 -4278
  3. package/hydrate/index.mjs +46035 -0
  4. package/lib/cjs/_commonjsHelpers-4N64IRaP.js +10 -0
  5. package/lib/cjs/{a11y-utils-8177cf00.js → a11y-utils-D2e4DE4A.js} +1 -1
  6. package/lib/cjs/action-arrow-down-small-CDsSJFvZ.js +21 -0
  7. package/lib/cjs/action-new-window-small-BWlVx6YN.js +21 -0
  8. package/lib/cjs/{app-globals-718a3704.js → app-globals-P2FPiN9v.js} +2 -2
  9. package/lib/cjs/{common-strings-2984301e.js → common-strings-CSqtNIxt.js} +29 -0
  10. package/lib/cjs/duet-action-button.cjs.entry.js +84 -29
  11. package/lib/cjs/duet-alert.cjs.entry.js +102 -48
  12. package/lib/cjs/duet-badge.cjs.entry.js +31 -9
  13. package/lib/cjs/duet-banner.cjs.entry.js +64 -27
  14. package/lib/cjs/duet-breadcrumb.cjs.entry.js +37 -26
  15. package/lib/cjs/duet-breadcrumbs.cjs.entry.js +20 -14
  16. package/lib/cjs/duet-button_2.cjs.entry.js +162 -68
  17. package/lib/cjs/duet-callout.cjs.entry.js +13 -10
  18. package/lib/cjs/duet-caption_4.cjs.entry.js +211 -75
  19. package/lib/cjs/duet-card.cjs.entry.js +95 -34
  20. package/lib/cjs/duet-checkbox.cjs.entry.js +68 -32
  21. package/lib/cjs/duet-checkmark.cjs.entry.js +21 -9
  22. package/lib/cjs/duet-chip.cjs.entry.js +356 -0
  23. package/lib/cjs/duet-choice_2.cjs.entry.js +276 -128
  24. package/lib/cjs/duet-collapsible.cjs.entry.js +94 -29
  25. package/lib/cjs/duet-combobox.cjs.entry.js +85 -48
  26. package/lib/cjs/duet-contact-card.cjs.entry.js +17 -18
  27. package/lib/cjs/duet-cookie-consent.cjs.entry.js +14 -11
  28. package/lib/cjs/duet-date-picker.cjs.entry.js +163 -57
  29. package/lib/cjs/duet-divider_2.cjs.entry.js +30 -14
  30. package/lib/cjs/duet-editable-table_3.cjs.entry.js +553 -210
  31. package/lib/cjs/duet-empty-state.cjs.entry.js +15 -9
  32. package/lib/cjs/duet-fieldset.cjs.entry.js +51 -18
  33. package/lib/cjs/duet-file-chooser.cjs.entry.js +18 -11
  34. package/lib/cjs/duet-footer.cjs.entry.js +56 -30
  35. package/lib/cjs/duet-grid_2.cjs.entry.js +164 -64
  36. package/lib/cjs/duet-header_2.cjs.entry.js +302 -91
  37. package/lib/cjs/duet-hero.cjs.entry.js +149 -32
  38. package/lib/cjs/duet-icon.cjs.entry.js +64 -20
  39. package/lib/cjs/duet-indicator.cjs.entry.js +53 -0
  40. package/lib/cjs/duet-input_2.cjs.entry.js +204 -86
  41. package/lib/cjs/duet-layout.cjs.entry.js +33 -13
  42. package/lib/cjs/duet-list_2.cjs.entry.js +58 -14
  43. package/lib/cjs/duet-menu-bar-button.cjs.entry.js +24 -16
  44. package/lib/cjs/duet-menu-bar-dropdown-link.cjs.entry.js +19 -14
  45. package/lib/cjs/duet-menu-bar-dropdown.cjs.entry.js +21 -16
  46. package/lib/cjs/duet-menu-bar-item.cjs.entry.js +40 -19
  47. package/lib/cjs/duet-menu-bar-link.cjs.entry.js +18 -10
  48. package/lib/cjs/duet-menu-bar.cjs.entry.js +37 -58
  49. package/lib/cjs/duet-modal.cjs.entry.js +122 -35
  50. package/lib/cjs/duet-multiselect.cjs.entry.js +88 -42
  51. package/lib/cjs/duet-nav.cjs.entry.js +12 -8
  52. package/lib/cjs/duet-notification_2.cjs.entry.js +91 -32
  53. package/lib/cjs/duet-number-input.cjs.entry.js +185 -70
  54. package/lib/cjs/duet-overlay.cjs.entry.js +36 -14
  55. package/lib/cjs/duet-page-heading.cjs.entry.js +16 -11
  56. package/lib/cjs/duet-pagination_2.cjs.entry.js +162 -87
  57. package/lib/cjs/duet-panel.cjs.entry.js +53 -0
  58. package/lib/cjs/duet-phone-input.cjs.entry.js +2072 -0
  59. package/lib/cjs/duet-popup-menu_2.cjs.entry.js +552 -0
  60. package/lib/cjs/duet-progress.cjs.entry.js +32 -13
  61. package/lib/cjs/duet-promo-card.cjs.entry.js +27 -13
  62. package/lib/cjs/duet-radio_2.cjs.entry.js +114 -55
  63. package/lib/cjs/duet-range-slider.cjs.entry.js +73 -37
  64. package/lib/cjs/duet-scrollable_3.cjs.entry.js +269 -130
  65. package/lib/cjs/duet-section-layout.cjs.entry.js +17 -10
  66. package/lib/cjs/duet-select.cjs.entry.js +89 -43
  67. package/lib/cjs/duet-shaped-image.cjs.entry.js +16 -11
  68. package/lib/cjs/duet-share-chart-item.cjs.entry.js +22 -0
  69. package/lib/cjs/duet-share-chart.cjs.entry.js +85 -0
  70. package/lib/cjs/duet-show-more.cjs.entry.js +81 -38
  71. package/lib/cjs/duet-slideout-lang.cjs.entry.js +10 -10
  72. package/lib/cjs/duet-slideout-link.cjs.entry.js +61 -10
  73. package/lib/cjs/duet-slideout-panel-dropdown.cjs.entry.js +25 -14
  74. package/lib/cjs/duet-slideout-panel.cjs.entry.js +50 -36
  75. package/lib/cjs/duet-slideout.cjs.entry.js +110 -60
  76. package/lib/cjs/duet-status-icon.cjs.entry.js +99 -0
  77. package/lib/cjs/duet-step_2.cjs.entry.js +72 -24
  78. package/lib/cjs/duet-submenu-bar-dropdown-link.cjs.entry.js +25 -10
  79. package/lib/cjs/duet-submenu-bar-dropdown.cjs.entry.js +27 -18
  80. package/lib/cjs/duet-submenu-bar-item.cjs.entry.js +40 -19
  81. package/lib/cjs/duet-submenu-bar-link.cjs.entry.js +18 -9
  82. package/lib/cjs/duet-submenu-bar.cjs.entry.js +27 -21
  83. package/lib/cjs/duet-textarea.cjs.entry.js +109 -50
  84. package/lib/cjs/duet-toggle.cjs.entry.js +50 -29
  85. package/lib/cjs/duet-toolbar-dropdown-link.cjs.entry.js +22 -11
  86. package/lib/cjs/duet-toolbar-dropdown.cjs.entry.js +27 -16
  87. package/lib/cjs/duet-toolbar-item.cjs.entry.js +46 -19
  88. package/lib/cjs/duet-toolbar-link.cjs.entry.js +21 -10
  89. package/lib/cjs/duet-toolbar.cjs.entry.js +12 -10
  90. package/lib/cjs/duet-tooltip-button_2.cjs.entry.js +24 -27
  91. package/lib/cjs/duet-tooltip.cjs.entry.js +98 -46
  92. package/lib/cjs/duet-tray.cjs.entry.js +63 -24
  93. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +30 -11
  94. package/lib/cjs/duet-upload-item.cjs.entry.js +12 -22
  95. package/lib/cjs/duet-visually-hidden.cjs.entry.js +4 -7
  96. package/lib/cjs/duet.cjs.js +8 -8
  97. package/lib/cjs/{errorcodes.utils-4e8a9de4.js → errorcodes.utils-B_Hqvx-5.js} +2 -2
  98. package/lib/cjs/floating-ui.dom.browser.min-Cj0r5YDz.js +709 -0
  99. package/lib/cjs/{focus-utils-2a0030aa.js → focus-utils-B7QfRXd-.js} +1 -1
  100. package/lib/cjs/form-search-CzPfHB80.js +21 -0
  101. package/lib/cjs/index-B1t_Yumd.js +3107 -0
  102. package/lib/cjs/{keyboard-utils-681e11ec.js → keyboard-utils-D9UlHbik.js} +4 -0
  103. package/lib/cjs/{label-2abeac23.js → label-e--2ISFA.js} +1 -1
  104. package/lib/cjs/{language-utils-b5940c7b.js → language-utils-Ce6b_uA3.js} +10 -2
  105. package/lib/cjs/loader.cjs.js +3 -5
  106. package/lib/cjs/{slot-utils-382633cf.js → slot-utils-C8k-6Rvc.js} +6 -1
  107. package/lib/cjs/{teleport-c6f8391a.js → teleport-D5NDbuu0.js} +22 -7
  108. package/lib/cjs/themeable-component-DmPMm0Cz.js +74 -0
  109. package/lib/cjs/{token-utils-5000595c.js → token-utils-COKjUxmn.js} +80 -9
  110. package/lib/cjs/{tokens-57e06fe4.js → tokens-9aevMbB1.js} +150 -8
  111. package/lib/cjs/{tokens.module-7c947029.js → tokens.module-Bhh9B2g8.js} +99 -3
  112. package/lib/cjs/{watch-options-30a12622.js → watch-options-D4JNsU3B.js} +0 -20
  113. package/lib/collection/collection-manifest.json +7 -1
  114. package/lib/collection/common/themeable-component.js +61 -3
  115. package/lib/collection/common-strings.js +27 -0
  116. package/lib/collection/components/duet-action-button/duet-action-button.css +29 -12
  117. package/lib/collection/components/duet-action-button/duet-action-button.js +92 -33
  118. package/lib/collection/components/duet-alert/duet-alert.css +88 -59
  119. package/lib/collection/components/duet-alert/duet-alert.js +141 -57
  120. package/lib/collection/components/duet-badge/duet-badge.css +21 -9
  121. package/lib/collection/components/duet-badge/duet-badge.js +30 -6
  122. package/lib/collection/components/duet-banner/duet-banner.css +30 -24
  123. package/lib/collection/components/duet-banner/duet-banner.js +68 -28
  124. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.css +10 -8
  125. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumb.js +26 -28
  126. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.css +18 -7
  127. package/lib/collection/components/duet-breadcrumbs/duet-breadcrumbs.js +15 -6
  128. package/lib/collection/components/duet-button/duet-button.css +149 -48
  129. package/lib/collection/components/duet-button/duet-button.js +175 -91
  130. package/lib/collection/components/duet-callout/duet-callout.css +7 -2
  131. package/lib/collection/components/duet-callout/duet-callout.js +10 -4
  132. package/lib/collection/components/duet-caption/duet-caption.css +7 -3
  133. package/lib/collection/components/duet-caption/duet-caption.js +18 -6
  134. package/lib/collection/components/duet-card/duet-card.css +45 -16
  135. package/lib/collection/components/duet-card/duet-card.js +115 -37
  136. package/lib/collection/components/duet-checkbox/duet-checkbox.css +26 -8
  137. package/lib/collection/components/duet-checkbox/duet-checkbox.js +86 -47
  138. package/lib/collection/components/duet-chip/duet-chip.css +63 -25
  139. package/lib/collection/components/duet-chip/duet-chip.js +70 -36
  140. package/lib/collection/components/duet-choice/duet-checkmark.css +4 -0
  141. package/lib/collection/components/duet-choice/duet-checkmark.js +22 -7
  142. package/lib/collection/components/duet-choice/duet-choice.css +90 -38
  143. package/lib/collection/components/duet-choice/duet-choice.js +228 -133
  144. package/lib/collection/components/duet-choice-group/duet-choice-group.css +4 -4
  145. package/lib/collection/components/duet-choice-group/duet-choice-group.js +108 -47
  146. package/lib/collection/components/duet-collapsible/duet-collapsible.css +49 -13
  147. package/lib/collection/components/duet-collapsible/duet-collapsible.js +116 -28
  148. package/lib/collection/components/duet-combobox/duet-combobox.css +9 -2
  149. package/lib/collection/components/duet-combobox/duet-combobox.js +88 -46
  150. package/lib/collection/components/duet-contact-card/duet-contact-card.css +8 -4
  151. package/lib/collection/components/duet-contact-card/duet-contact-card.js +21 -19
  152. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.css +23 -14
  153. package/lib/collection/components/duet-cookie-consent/duet-cookie-consent.js +11 -5
  154. package/lib/collection/components/duet-date-picker/date-picker-day.js +6 -1
  155. package/lib/collection/components/duet-date-picker/date-utils.js +6 -1
  156. package/lib/collection/components/duet-date-picker/duet-date-picker.css +99 -46
  157. package/lib/collection/components/duet-date-picker/duet-date-picker.js +177 -69
  158. package/lib/collection/components/duet-divider/duet-divider.css +12 -6
  159. package/lib/collection/components/duet-divider/duet-divider.js +14 -4
  160. package/lib/collection/components/duet-editable-table/duet-editable-table.css +2 -2
  161. package/lib/collection/components/duet-editable-table/duet-editable-table.js +83 -26
  162. package/lib/collection/components/duet-empty-state/duet-empty-state.css +11 -6
  163. package/lib/collection/components/duet-empty-state/duet-empty-state.js +14 -5
  164. package/lib/collection/components/duet-fieldset/duet-fieldset.css +13 -6
  165. package/lib/collection/components/duet-fieldset/duet-fieldset.js +58 -20
  166. package/lib/collection/components/duet-file-chooser/duet-file-chooser.css +2 -2
  167. package/lib/collection/components/duet-file-chooser/duet-file-chooser.js +17 -7
  168. package/lib/collection/components/duet-footer/duet-footer.css +43 -14
  169. package/lib/collection/components/duet-footer/duet-footer.js +55 -27
  170. package/lib/collection/components/duet-grid/duet-grid.css +2 -6
  171. package/lib/collection/components/duet-grid/duet-grid.js +144 -68
  172. package/lib/collection/components/duet-grid-item/duet-grid-item.css +6 -2
  173. package/lib/collection/components/duet-grid-item/duet-grid-item.js +40 -13
  174. package/lib/collection/components/duet-header/duet-header.css +165 -65
  175. package/lib/collection/components/duet-header/duet-header.js +165 -76
  176. package/lib/collection/components/duet-heading/duet-heading.css +11 -5
  177. package/lib/collection/components/duet-heading/duet-heading.js +56 -12
  178. package/lib/collection/components/duet-hero/duet-hero.css +326 -18
  179. package/lib/collection/components/duet-hero/duet-hero.js +170 -53
  180. package/lib/collection/components/duet-icon/duet-icon.css +17 -5
  181. package/lib/collection/components/duet-icon/duet-icon.js +71 -24
  182. package/lib/collection/components/duet-indicator/duet-indicator.css +46 -0
  183. package/lib/collection/components/duet-indicator/duet-indicator.js +104 -0
  184. package/lib/collection/components/duet-input/duet-input.css +155 -53
  185. package/lib/collection/components/duet-input/duet-input.js +241 -138
  186. package/lib/collection/components/duet-label/duet-label.css +8 -4
  187. package/lib/collection/components/duet-label/duet-label.js +23 -8
  188. package/lib/collection/components/duet-layout/duet-layout.css +4 -7
  189. package/lib/collection/components/duet-layout/duet-layout.js +35 -12
  190. package/lib/collection/components/duet-link/duet-link.css +166 -22
  191. package/lib/collection/components/duet-link/duet-link.js +121 -70
  192. package/lib/collection/components/duet-list/duet-list.css +4 -4
  193. package/lib/collection/components/duet-list/duet-list.js +38 -9
  194. package/lib/collection/components/duet-list-item/duet-list-item.css +25 -5
  195. package/lib/collection/components/duet-list-item/duet-list-item.js +50 -4
  196. package/lib/collection/components/duet-logo/duet-logo.css +33 -8
  197. package/lib/collection/components/duet-logo/duet-logo.js +111 -11
  198. package/lib/collection/components/duet-menu-bar/duet-menu-bar.css +110 -8
  199. package/lib/collection/components/duet-menu-bar/duet-menu-bar.js +59 -57
  200. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.css +17 -8
  201. package/lib/collection/components/duet-menu-bar-button/duet-menu-bar-button.js +33 -22
  202. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.css +28 -12
  203. package/lib/collection/components/duet-menu-bar-dropdown/duet-menu-bar-dropdown.js +20 -12
  204. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.css +19 -9
  205. package/lib/collection/components/duet-menu-bar-dropdown-link/duet-menu-bar-dropdown-link.js +18 -10
  206. package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.css +28 -10
  207. package/lib/collection/components/duet-menu-bar-item/duet-menu-bar-item.js +39 -16
  208. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.css +25 -10
  209. package/lib/collection/components/duet-menu-bar-link/duet-menu-bar-link.js +19 -8
  210. package/lib/collection/components/duet-modal/duet-modal.css +23 -25
  211. package/lib/collection/components/duet-modal/duet-modal.js +193 -39
  212. package/lib/collection/components/duet-multiselect/duet-multiselect.css +67 -29
  213. package/lib/collection/components/duet-multiselect/duet-multiselect.js +98 -48
  214. package/lib/collection/components/duet-nav/duet-nav.css +8 -4
  215. package/lib/collection/components/duet-nav/duet-nav.js +10 -3
  216. package/lib/collection/components/duet-notification/duet-notification.css +33 -26
  217. package/lib/collection/components/duet-notification/duet-notification.js +39 -9
  218. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.css +38 -36
  219. package/lib/collection/components/duet-notification-drawer/duet-notification-drawer.js +57 -24
  220. package/lib/collection/components/duet-number-input/duet-number-input.css +26 -14
  221. package/lib/collection/components/duet-number-input/duet-number-input.js +190 -95
  222. package/lib/collection/components/duet-overlay/duet-overlay.css +5 -1
  223. package/lib/collection/components/duet-overlay/duet-overlay.js +40 -15
  224. package/lib/collection/components/duet-page-heading/duet-page-heading.css +44 -16
  225. package/lib/collection/components/duet-page-heading/duet-page-heading.js +17 -9
  226. package/lib/collection/components/duet-pagination/duet-pagination.css +8 -4
  227. package/lib/collection/components/duet-pagination/duet-pagination.js +130 -76
  228. package/lib/collection/components/duet-panel/duet-panel.css +98 -0
  229. package/lib/collection/components/duet-panel/duet-panel.js +234 -0
  230. package/lib/collection/components/duet-paragraph/duet-paragraph.css +19 -6
  231. package/lib/collection/components/duet-paragraph/duet-paragraph.js +29 -8
  232. package/lib/collection/components/duet-phone-input/duet-phone-input.css +61 -0
  233. package/lib/collection/components/duet-phone-input/duet-phone-input.js +930 -0
  234. package/lib/collection/components/duet-popup-menu/duet-popup-menu.css +14 -6
  235. package/lib/collection/components/duet-popup-menu/duet-popup-menu.js +235 -76
  236. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.css +30 -12
  237. package/lib/collection/components/duet-popup-menu-item/duet-popup-menu-item.js +64 -29
  238. package/lib/collection/components/duet-progress/duet-progress.css +27 -8
  239. package/lib/collection/components/duet-progress/duet-progress.js +36 -14
  240. package/lib/collection/components/duet-promo-card/duet-promo-card.css +15 -12
  241. package/lib/collection/components/duet-promo-card/duet-promo-card.js +28 -11
  242. package/lib/collection/components/duet-radio/duet-radio.css +35 -8
  243. package/lib/collection/components/duet-radio/duet-radio.js +67 -49
  244. package/lib/collection/components/duet-radio-group/duet-radio-group.css +4 -4
  245. package/lib/collection/components/duet-radio-group/duet-radio-group.js +78 -30
  246. package/lib/collection/components/duet-range-slider/duet-range-slider.css +60 -18
  247. package/lib/collection/components/duet-range-slider/duet-range-slider.js +85 -46
  248. package/lib/collection/components/duet-range-stepper/duet-range-stepper.css +8 -4
  249. package/lib/collection/components/duet-range-stepper/duet-range-stepper.js +43 -14
  250. package/lib/collection/components/duet-scrollable/duet-scrollable.css +84 -47
  251. package/lib/collection/components/duet-scrollable/duet-scrollable.js +160 -43
  252. package/lib/collection/components/duet-section-layout/duet-section-layout.css +4 -7
  253. package/lib/collection/components/duet-section-layout/duet-section-layout.js +16 -6
  254. package/lib/collection/components/duet-select/duet-select.css +51 -23
  255. package/lib/collection/components/duet-select/duet-select.js +109 -60
  256. package/lib/collection/components/duet-shaped-image/duet-shaped-image.css +6 -6
  257. package/lib/collection/components/duet-shaped-image/duet-shaped-image.js +17 -9
  258. package/lib/collection/components/duet-share-chart/duet-share-chart.css +82 -0
  259. package/lib/collection/components/duet-share-chart/duet-share-chart.js +141 -0
  260. package/lib/collection/components/duet-share-chart-item/duet-share-chart-item.js +67 -0
  261. package/lib/collection/components/duet-show-more/duet-show-more.css +15 -8
  262. package/lib/collection/components/duet-show-more/duet-show-more.js +87 -37
  263. package/lib/collection/components/duet-slideout/duet-slideout.css +68 -33
  264. package/lib/collection/components/duet-slideout/duet-slideout.js +109 -54
  265. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.css +10 -6
  266. package/lib/collection/components/duet-slideout-lang/duet-slideout-lang.js +5 -2
  267. package/lib/collection/components/duet-slideout-link/duet-slideout-link.css +41 -13
  268. package/lib/collection/components/duet-slideout-link/duet-slideout-link.js +135 -12
  269. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.css +63 -40
  270. package/lib/collection/components/duet-slideout-panel/duet-slideout-panel.js +47 -30
  271. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.css +29 -16
  272. package/lib/collection/components/duet-slideout-panel-dropdown/duet-slideout-panel-dropdown.js +25 -11
  273. package/lib/collection/components/duet-spacer/duet-spacer.css +2 -2
  274. package/lib/collection/components/duet-spacer/duet-spacer.js +14 -4
  275. package/lib/collection/components/duet-spinner/duet-spinner.css +7 -4
  276. package/lib/collection/components/duet-spinner/duet-spinner.js +21 -10
  277. package/lib/collection/components/duet-status-icon/duet-status-icon.js +197 -0
  278. package/lib/collection/components/duet-step/duet-step.css +28 -13
  279. package/lib/collection/components/duet-step/duet-step.js +25 -16
  280. package/lib/collection/components/duet-stepper/duet-stepper.css +4 -4
  281. package/lib/collection/components/duet-stepper/duet-stepper.js +45 -10
  282. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.css +34 -16
  283. package/lib/collection/components/duet-submenu-bar/duet-submenu-bar.js +25 -16
  284. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.css +49 -15
  285. package/lib/collection/components/duet-submenu-bar-dropdown/duet-submenu-bar-dropdown.js +25 -13
  286. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.css +29 -8
  287. package/lib/collection/components/duet-submenu-bar-dropdown-link/duet-submenu-bar-dropdown-link.js +26 -8
  288. package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.css +33 -10
  289. package/lib/collection/components/duet-submenu-bar-item/duet-submenu-bar-item.js +38 -15
  290. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.css +34 -9
  291. package/lib/collection/components/duet-submenu-bar-link/duet-submenu-bar-link.js +17 -5
  292. package/lib/collection/components/duet-tab/duet-tab.css +15 -11
  293. package/lib/collection/components/duet-tab/duet-tab.js +88 -24
  294. package/lib/collection/components/duet-tab-group/duet-tab-group.css +232 -129
  295. package/lib/collection/components/duet-tab-group/duet-tab-group.js +228 -83
  296. package/lib/collection/components/duet-table/duet-table-styles.js +68 -4
  297. package/lib/collection/components/duet-table/duet-table.js +42 -13
  298. package/lib/collection/components/duet-textarea/duet-textarea.css +61 -22
  299. package/lib/collection/components/duet-textarea/duet-textarea.js +159 -74
  300. package/lib/collection/components/duet-toggle/duet-toggle.css +23 -10
  301. package/lib/collection/components/duet-toggle/duet-toggle.js +62 -38
  302. package/lib/collection/components/duet-toolbar/duet-toolbar.css +11 -4
  303. package/lib/collection/components/duet-toolbar/duet-toolbar.js +11 -6
  304. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.css +36 -12
  305. package/lib/collection/components/duet-toolbar-dropdown/duet-toolbar-dropdown.js +28 -14
  306. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.css +21 -8
  307. package/lib/collection/components/duet-toolbar-dropdown-link/duet-toolbar-dropdown-link.js +23 -9
  308. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.css +52 -30
  309. package/lib/collection/components/duet-toolbar-item/duet-toolbar-item.js +48 -19
  310. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.css +42 -10
  311. package/lib/collection/components/duet-toolbar-link/duet-toolbar-link.js +23 -9
  312. package/lib/collection/components/duet-tooltip/duet-tooltip-button.css +24 -14
  313. package/lib/collection/components/duet-tooltip/duet-tooltip-button.js +9 -11
  314. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.css +48 -16
  315. package/lib/collection/components/duet-tooltip/duet-tooltip-popup.js +18 -14
  316. package/lib/collection/components/duet-tooltip/duet-tooltip.css +4 -4
  317. package/lib/collection/components/duet-tooltip/duet-tooltip.js +100 -45
  318. package/lib/collection/components/duet-tray/duet-tray.css +43 -27
  319. package/lib/collection/components/duet-tray/duet-tray.js +63 -21
  320. package/lib/collection/components/duet-upload/duet-upload.css +6 -6
  321. package/lib/collection/components/duet-upload/duet-upload.js +419 -213
  322. package/lib/collection/components/duet-upload-aria-status/duet-upload-aria-status.js +35 -13
  323. package/lib/collection/components/duet-upload-item/duet-upload-item.js +17 -18
  324. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.css +3 -3
  325. package/lib/collection/components/duet-visually-hidden/duet-visually-hidden.js +1 -1
  326. package/lib/collection/data/countries.js +1762 -0
  327. package/lib/collection/index.js +1 -0
  328. package/lib/collection/utils/keyboard-utils.js +3 -0
  329. package/lib/collection/utils/language-utils.js +7 -0
  330. package/lib/collection/utils/slot-utils.js +4 -0
  331. package/lib/collection/utils/teleport.js +22 -7
  332. package/lib/collection/utils/test-utils.js +2 -2
  333. package/lib/collection/utils/token-utils.js +59 -7
  334. package/lib/collection/utils/turva2-color-tokens.js +42 -0
  335. package/lib/duet/duet.esm.js +1 -1
  336. package/lib/duet/p-05b44a92.entry.js +4 -0
  337. package/lib/duet/p-0c4bde0e.entry.js +4 -0
  338. package/lib/duet/p-0cf754a3.entry.js +4 -0
  339. package/lib/duet/p-11303551.entry.js +4 -0
  340. package/lib/duet/p-11dc2ca3.entry.js +4 -0
  341. package/lib/duet/p-14b9af85.entry.js +4 -0
  342. package/lib/duet/p-17b2fad7.entry.js +4 -0
  343. package/lib/duet/p-19c8adaa.entry.js +4 -0
  344. package/lib/duet/p-1UeoYjt6.js +4 -0
  345. package/lib/duet/p-25bfc839.entry.js +4 -0
  346. package/lib/duet/p-2690a420.entry.js +4 -0
  347. package/lib/duet/p-2f0a1808.entry.js +4 -0
  348. package/lib/duet/p-2f34aa4c.entry.js +4 -0
  349. package/lib/duet/p-37bdc3b9.entry.js +4 -0
  350. package/lib/duet/p-39e7cc4b.entry.js +4 -0
  351. package/lib/duet/p-3c5f5035.entry.js +4 -0
  352. package/lib/duet/p-3e08bd06.entry.js +4 -0
  353. package/lib/duet/p-3f932150.entry.js +4 -0
  354. package/lib/duet/p-414f4b06.entry.js +4 -0
  355. package/lib/duet/p-4457a9cc.entry.js +4 -0
  356. package/lib/duet/p-450983a5.entry.js +4 -0
  357. package/lib/duet/p-492d90a6.entry.js +4 -0
  358. package/lib/duet/p-4a743428.entry.js +4 -0
  359. package/lib/duet/p-4b4d9bdc.entry.js +4 -0
  360. package/lib/duet/p-4d4f7a6e.entry.js +4 -0
  361. package/lib/duet/p-4efa7172.entry.js +4 -0
  362. package/lib/duet/p-513683f8.entry.js +4 -0
  363. package/lib/duet/p-51e85e15.entry.js +4 -0
  364. package/lib/duet/{p-6be341c4.entry.js → p-52bb0826.entry.js} +1 -1
  365. package/lib/duet/p-52e64670.entry.js +4 -0
  366. package/lib/duet/p-52f52f3f.entry.js +4 -0
  367. package/lib/duet/p-559a54d1.entry.js +4 -0
  368. package/lib/duet/p-56331c29.entry.js +4 -0
  369. package/lib/duet/p-5c4687b0.entry.js +4 -0
  370. package/lib/duet/p-5f2507ee.entry.js +4 -0
  371. package/lib/duet/p-5iZMFvpJ.js +4 -0
  372. package/lib/duet/p-625bf656.entry.js +4 -0
  373. package/lib/duet/p-638d143f.entry.js +4 -0
  374. package/lib/duet/p-63d75040.entry.js +4 -0
  375. package/lib/duet/p-64482bf0.entry.js +4 -0
  376. package/lib/duet/p-64db9820.entry.js +4 -0
  377. package/lib/duet/p-653a4f52.entry.js +4 -0
  378. package/lib/duet/p-67cbf570.entry.js +4 -0
  379. package/lib/duet/p-6d0a6cef.entry.js +4 -0
  380. package/lib/duet/p-7ab7b977.entry.js +4 -0
  381. package/lib/duet/p-7d8ba1c8.entry.js +4 -0
  382. package/lib/duet/p-80157aab.entry.js +4 -0
  383. package/lib/duet/p-81fdf21e.entry.js +4 -0
  384. package/lib/duet/p-835532a3.entry.js +4 -0
  385. package/lib/duet/p-87d63c67.entry.js +4 -0
  386. package/lib/duet/p-88b2a4ab.entry.js +4 -0
  387. package/lib/duet/p-89119c58.entry.js +4 -0
  388. package/lib/duet/p-8a22e0f7.entry.js +4 -0
  389. package/lib/duet/p-9278d908.entry.js +4 -0
  390. package/lib/duet/p-93d1d4cb.entry.js +4 -0
  391. package/lib/duet/p-963f5510.entry.js +4 -0
  392. package/lib/duet/p-9bdedc1c.entry.js +4 -0
  393. package/lib/duet/p-9c452a9d.entry.js +4 -0
  394. package/lib/duet/p-9fd3fbde.entry.js +4 -0
  395. package/lib/duet/p-9fe9aaec.entry.js +4 -0
  396. package/lib/duet/p-9ff0f670.entry.js +4 -0
  397. package/lib/duet/p-BVgBUIYF.js +4 -0
  398. package/lib/duet/p-BW-c05c3.js +4 -0
  399. package/lib/duet/p-BWvtXbhA.js +4 -0
  400. package/lib/duet/{p-81287261.js → p-B_NkY9T0.js} +1 -1
  401. package/lib/duet/p-Bh9dkusU.js +4 -0
  402. package/lib/duet/p-BmMFVM-y.js +4 -0
  403. package/lib/duet/p-Bt_DCuTi.js +4 -0
  404. package/lib/duet/p-CZ7vOBA_.js +4 -0
  405. package/lib/duet/p-CcCc0HYj.js +4 -0
  406. package/lib/duet/p-CjRTMlgs.js +5 -0
  407. package/lib/duet/p-CooAqTCj.js +4 -0
  408. package/lib/duet/p-Db8rvjPI.js +4 -0
  409. package/lib/duet/p-DcQPCCbT.js +4 -0
  410. package/lib/duet/p-Df3Doz7n.js +4 -0
  411. package/lib/duet/{p-8c9eb171.js → p-DmZj36y3.js} +1 -1
  412. package/lib/duet/p-DvwKrUS6.js +4 -0
  413. package/lib/duet/p-DzEPksgg.js +4 -0
  414. package/lib/duet/p-a22b9c52.entry.js +4 -0
  415. package/lib/duet/p-a39af7a5.entry.js +4 -0
  416. package/lib/{esm-es5/duet-grid_2.entry.js → duet/p-a49e7633.entry.js} +2 -2
  417. package/lib/duet/p-a5ebee52.entry.js +4 -0
  418. package/lib/duet/p-ac7bf279.entry.js +4 -0
  419. package/lib/duet/p-ae22406a.entry.js +4 -0
  420. package/lib/duet/p-b17749b1.entry.js +4 -0
  421. package/lib/duet/p-b8e1621d.entry.js +4 -0
  422. package/lib/duet/p-ba0fc0f3.entry.js +4 -0
  423. package/lib/duet/p-bba12747.entry.js +4 -0
  424. package/lib/duet/p-bf4c10ea.entry.js +4 -0
  425. package/lib/duet/p-c2afba51.entry.js +4 -0
  426. package/lib/duet/p-c74cd476.entry.js +4 -0
  427. package/lib/duet/p-c8c7616a.entry.js +4 -0
  428. package/lib/duet/p-ca8ad275.entry.js +4 -0
  429. package/lib/duet/p-cf054af5.entry.js +4 -0
  430. package/lib/duet/p-d27678ec.entry.js +4 -0
  431. package/lib/duet/p-d49e4c1a.entry.js +4 -0
  432. package/lib/duet/p-da90aae6.entry.js +4 -0
  433. package/lib/duet/p-dceb943b.entry.js +4 -0
  434. package/lib/duet/{p-ff4f7076.entry.js → p-df64aa65.entry.js} +1 -1
  435. package/lib/duet/p-e04410c6.entry.js +4 -0
  436. package/lib/duet/p-e057762a.entry.js +4 -0
  437. package/lib/duet/p-ea09620e.entry.js +4 -0
  438. package/lib/duet/p-ebd27669.entry.js +4 -0
  439. package/lib/duet/p-ec601f3c.entry.js +4 -0
  440. package/lib/duet/p-ec7bdfaf.entry.js +4 -0
  441. package/lib/duet/p-qH1epSqB.js +4 -0
  442. package/lib/duet/p-vVCYtBMj.js +4 -0
  443. package/lib/esm/_commonjsHelpers-DvwKrUS6.js +8 -0
  444. package/lib/{dist-custom-elements/p-afb6f7fb.js → esm/a11y-utils-CfJGGdQJ.js} +1 -1
  445. package/lib/esm/action-arrow-down-small-Bk3GShyI.js +19 -0
  446. package/lib/esm/action-new-window-small-EH8_HdAm.js +19 -0
  447. package/lib/esm/{app-globals-00959ca9.js → app-globals-DGW8k4EA.js} +2 -2
  448. package/lib/esm/common-strings-BWvtXbhA.js +52 -0
  449. package/lib/esm/duet-action-button.entry.js +84 -27
  450. package/lib/esm/duet-alert.entry.js +102 -46
  451. package/lib/esm/duet-badge.entry.js +31 -7
  452. package/lib/esm/duet-banner.entry.js +64 -25
  453. package/lib/esm/duet-breadcrumb.entry.js +38 -25
  454. package/lib/esm/duet-breadcrumbs.entry.js +20 -12
  455. package/lib/esm/duet-button_2.entry.js +162 -66
  456. package/lib/esm/duet-callout.entry.js +13 -8
  457. package/lib/esm/duet-caption_4.entry.js +211 -73
  458. package/lib/esm/duet-card.entry.js +95 -32
  459. package/lib/esm/duet-checkbox.entry.js +68 -30
  460. package/lib/esm/duet-checkmark.entry.js +21 -7
  461. package/lib/{dist-custom-elements/p-3431b690.js → esm/duet-chip.entry.js} +68 -82
  462. package/lib/esm/duet-choice_2.entry.js +277 -127
  463. package/lib/esm/duet-collapsible.entry.js +94 -27
  464. package/lib/esm/duet-combobox.entry.js +85 -46
  465. package/lib/esm/duet-contact-card.entry.js +17 -16
  466. package/lib/esm/duet-cookie-consent.entry.js +14 -9
  467. package/lib/esm/duet-date-picker.entry.js +163 -55
  468. package/lib/esm/duet-divider_2.entry.js +30 -12
  469. package/lib/esm/duet-editable-table_3.entry.js +553 -208
  470. package/lib/esm/duet-empty-state.entry.js +15 -7
  471. package/lib/esm/duet-fieldset.entry.js +51 -16
  472. package/lib/esm/duet-file-chooser.entry.js +18 -9
  473. package/lib/esm/duet-footer.entry.js +56 -28
  474. package/lib/esm/duet-grid_2.entry.js +164 -62
  475. package/lib/esm/duet-header_2.entry.js +303 -90
  476. package/lib/esm/duet-hero.entry.js +149 -30
  477. package/lib/esm/duet-icon.entry.js +64 -18
  478. package/lib/esm/duet-indicator.entry.js +51 -0
  479. package/lib/esm/duet-input_2.entry.js +205 -85
  480. package/lib/esm/duet-layout.entry.js +33 -11
  481. package/lib/esm/duet-list_2.entry.js +58 -12
  482. package/lib/esm/duet-menu-bar-button.entry.js +24 -14
  483. package/lib/esm/duet-menu-bar-dropdown-link.entry.js +19 -12
  484. package/lib/esm/duet-menu-bar-dropdown.entry.js +21 -14
  485. package/lib/esm/duet-menu-bar-item.entry.js +40 -17
  486. package/lib/esm/duet-menu-bar-link.entry.js +18 -8
  487. package/lib/esm/duet-menu-bar.entry.js +37 -56
  488. package/lib/esm/duet-modal.entry.js +122 -33
  489. package/lib/esm/duet-multiselect.entry.js +88 -40
  490. package/lib/esm/duet-nav.entry.js +12 -6
  491. package/lib/esm/duet-notification_2.entry.js +91 -30
  492. package/lib/esm/duet-number-input.entry.js +186 -69
  493. package/lib/esm/duet-overlay.entry.js +36 -12
  494. package/lib/esm/duet-page-heading.entry.js +16 -9
  495. package/lib/esm/duet-pagination_2.entry.js +162 -85
  496. package/lib/esm/duet-panel.entry.js +51 -0
  497. package/lib/esm/duet-phone-input.entry.js +2070 -0
  498. package/lib/esm/duet-popup-menu_2.entry.js +549 -0
  499. package/lib/esm/duet-progress.entry.js +32 -11
  500. package/lib/esm/duet-promo-card.entry.js +27 -11
  501. package/lib/esm/duet-radio_2.entry.js +114 -53
  502. package/lib/esm/duet-range-slider.entry.js +73 -35
  503. package/lib/esm/duet-scrollable_3.entry.js +269 -128
  504. package/lib/esm/duet-section-layout.entry.js +17 -8
  505. package/lib/esm/duet-select.entry.js +89 -41
  506. package/lib/esm/duet-shaped-image.entry.js +16 -9
  507. package/lib/esm/duet-share-chart-item.entry.js +20 -0
  508. package/lib/esm/duet-share-chart.entry.js +83 -0
  509. package/lib/esm/duet-show-more.entry.js +81 -36
  510. package/lib/esm/duet-slideout-lang.entry.js +10 -8
  511. package/lib/esm/duet-slideout-link.entry.js +61 -8
  512. package/lib/esm/duet-slideout-panel-dropdown.entry.js +25 -12
  513. package/lib/esm/duet-slideout-panel.entry.js +50 -34
  514. package/lib/esm/duet-slideout.entry.js +110 -58
  515. package/lib/esm/duet-status-icon.entry.js +97 -0
  516. package/lib/esm/duet-step_2.entry.js +73 -23
  517. package/lib/esm/duet-submenu-bar-dropdown-link.entry.js +25 -8
  518. package/lib/esm/duet-submenu-bar-dropdown.entry.js +27 -16
  519. package/lib/esm/duet-submenu-bar-item.entry.js +40 -17
  520. package/lib/esm/duet-submenu-bar-link.entry.js +18 -7
  521. package/lib/esm/duet-submenu-bar.entry.js +27 -19
  522. package/lib/esm/duet-textarea.entry.js +109 -48
  523. package/lib/esm/duet-toggle.entry.js +50 -27
  524. package/lib/esm/duet-toolbar-dropdown-link.entry.js +22 -9
  525. package/lib/esm/duet-toolbar-dropdown.entry.js +27 -14
  526. package/lib/esm/duet-toolbar-item.entry.js +46 -17
  527. package/lib/esm/duet-toolbar-link.entry.js +21 -8
  528. package/lib/esm/duet-toolbar.entry.js +12 -8
  529. package/lib/esm/duet-tooltip-button_2.entry.js +24 -25
  530. package/lib/esm/duet-tooltip.entry.js +97 -43
  531. package/lib/esm/duet-tray.entry.js +63 -22
  532. package/lib/esm/duet-upload-aria-status.entry.js +30 -9
  533. package/lib/esm/duet-upload-item.entry.js +12 -20
  534. package/lib/esm/duet-visually-hidden.entry.js +4 -5
  535. package/lib/esm/duet.js +7 -6
  536. package/lib/esm/{errorcodes.utils-d9431251.js → errorcodes.utils-qEQnnnLR.js} +3 -3
  537. package/lib/esm/floating-ui.dom.browser.min-B_NkY9T0.js +702 -0
  538. package/lib/{dist-custom-elements/p-e30dc66d.js → esm/focus-utils-D7bOJ91T.js} +1 -1
  539. package/lib/esm/form-search-CevX33LA.js +19 -0
  540. package/lib/esm/{index-1d0b7c66.js → index-CjRTMlgs.js} +2069 -1238
  541. package/lib/esm/{keyboard-utils-439bcc8b.js → keyboard-utils-Db8rvjPI.js} +4 -1
  542. package/lib/{dist-custom-elements/p-42619f94.js → esm/label-DI1u_MFQ.js} +1 -1
  543. package/lib/esm/{language-utils-14969cef.js → language-utils-DMUadJDW.js} +10 -3
  544. package/lib/esm/loader.js +4 -4
  545. package/lib/esm/{slot-utils-4e5ed4eb.js → slot-utils-DmMljwEF.js} +6 -2
  546. package/lib/{dist-custom-elements/p-ca3cb21e.js → esm/teleport-CooAqTCj.js} +22 -7
  547. package/lib/esm/themeable-component-CULFNCJP.js +72 -0
  548. package/lib/esm/{token-utils-b9ba8c5e.js → token-utils-Dw-GA7-4.js} +80 -10
  549. package/lib/{dist-custom-elements/p-f6000a03.js → esm/tokens-DcQPCCbT.js} +151 -7
  550. package/lib/{dist-custom-elements/p-cea716f7.js → esm/tokens.module-Bh9dkusU.js} +100 -4
  551. package/lib/{dist-custom-elements/p-7d8a2628.js → esm/watch-options-BmMFVM-y.js} +1 -20
  552. package/lib/index.js +1 -1
  553. package/lib/loader/cdn.js +1 -2
  554. package/lib/loader/index.cjs.js +1 -2
  555. package/lib/loader/index.es2017.js +0 -1
  556. package/lib/loader/index.js +1 -2
  557. package/lib/types/common-strings.d.ts +3 -0
  558. package/lib/types/common-types.d.ts +1 -1
  559. package/lib/types/components/duet-alert/duet-alert.d.ts +20 -10
  560. package/lib/types/components/duet-badge/duet-badge.d.ts +1 -0
  561. package/lib/types/components/duet-banner/duet-banner.d.ts +2 -0
  562. package/lib/types/components/duet-breadcrumbs/duet-breadcrumb.d.ts +2 -4
  563. package/lib/types/components/duet-button/duet-button.d.ts +1 -1
  564. package/lib/types/components/duet-card/duet-card.d.ts +6 -0
  565. package/lib/types/components/duet-chip/duet-chip.d.ts +1 -0
  566. package/lib/types/components/duet-choice/duet-choice.d.ts +1 -5
  567. package/lib/types/components/duet-choice-group/duet-choice-group.d.ts +3 -2
  568. package/lib/types/components/duet-collapsible/duet-collapsible.d.ts +8 -1
  569. package/lib/types/components/duet-combobox/duet-combobox.d.ts +1 -0
  570. package/lib/types/components/duet-date-picker/duet-date-picker.d.ts +4 -0
  571. package/lib/types/components/duet-fieldset/duet-fieldset.d.ts +3 -0
  572. package/lib/types/components/duet-grid/duet-grid.d.ts +9 -7
  573. package/lib/types/components/duet-heading/duet-heading.d.ts +6 -0
  574. package/lib/types/components/duet-hero/duet-hero.d.ts +6 -2
  575. package/lib/types/components/duet-indicator/duet-indicator.d.ts +17 -0
  576. package/lib/types/components/duet-input/duet-input.d.ts +13 -15
  577. package/lib/types/components/duet-link/duet-link.d.ts +3 -7
  578. package/lib/types/components/duet-list-item/duet-list-item.d.ts +9 -3
  579. package/lib/types/components/duet-logo/duet-logo.d.ts +8 -0
  580. package/lib/types/components/duet-menu-bar/duet-menu-bar.d.ts +5 -4
  581. package/lib/types/components/duet-modal/duet-modal.d.ts +17 -1
  582. package/lib/types/components/duet-number-input/duet-number-input.d.ts +5 -2
  583. package/lib/types/components/duet-overlay/duet-overlay.d.ts +4 -0
  584. package/lib/types/components/duet-panel/duet-panel.d.ts +47 -0
  585. package/lib/types/components/duet-paragraph/duet-paragraph.d.ts +1 -0
  586. package/lib/types/components/duet-phone-input/duet-phone-input.d.ts +178 -0
  587. package/lib/types/components/duet-popup-menu/duet-popup-menu.d.ts +19 -5
  588. package/lib/types/components/duet-popup-menu-item/duet-popup-menu-item.d.ts +1 -0
  589. package/lib/types/components/duet-radio-group/duet-radio-group.d.ts +1 -0
  590. package/lib/types/components/duet-scrollable/duet-scrollable.d.ts +18 -1
  591. package/lib/types/components/duet-select/duet-select.d.ts +2 -0
  592. package/lib/types/components/duet-share-chart/duet-share-chart.d.ts +34 -0
  593. package/lib/types/components/duet-share-chart-item/duet-share-chart-item.d.ts +13 -0
  594. package/lib/types/components/duet-show-more/duet-show-more.d.ts +1 -0
  595. package/lib/types/components/duet-slideout/duet-slideout.d.ts +4 -3
  596. package/lib/types/components/duet-slideout-link/duet-slideout-link.d.ts +17 -0
  597. package/lib/types/components/duet-spinner/duet-spinner.d.ts +1 -0
  598. package/lib/types/components/duet-status-icon/duet-status-icon.d.ts +27 -0
  599. package/lib/types/components/duet-stepper/duet-stepper.d.ts +5 -2
  600. package/lib/types/components/duet-tab/duet-tab.d.ts +10 -0
  601. package/lib/types/components/duet-tab-group/duet-tab-group.d.ts +24 -4
  602. package/lib/types/components/duet-textarea/duet-textarea.d.ts +4 -2
  603. package/lib/types/components/duet-tooltip/duet-tooltip.d.ts +1 -1
  604. package/lib/types/components.d.ts +2350 -52
  605. package/lib/types/data/countries.d.ts +22 -0
  606. package/lib/types/index.d.ts +1 -0
  607. package/lib/types/stencil-public-runtime.d.ts +35 -6
  608. package/lib/types/utils/keyboard-utils.d.ts +1 -0
  609. package/lib/types/utils/language-utils.d.ts +1 -0
  610. package/lib/types/utils/slot-utils.d.ts +1 -0
  611. package/lib/types/utils/teleport.d.ts +4 -1
  612. package/lib/types/utils/token-utils.d.ts +4 -0
  613. package/lib/types/utils/turva2-color-tokens.d.ts +39 -0
  614. package/package.json +30 -16
  615. package/lib/cjs/action-arrow-down-small-ef77a2d1.js +0 -8
  616. package/lib/cjs/action-new-window-small-fa51dfb9.js +0 -8
  617. package/lib/cjs/duet-chip_3.cjs.entry.js +0 -699
  618. package/lib/cjs/floating-ui.dom.esm-806e7c53.js +0 -1355
  619. package/lib/cjs/form-search-d61b2843.js +0 -8
  620. package/lib/cjs/index-21e67ab3.js +0 -2278
  621. package/lib/cjs/themeable-component-996b489c.js +0 -15
  622. package/lib/dist-custom-elements/duet-action-button.d.ts +0 -11
  623. package/lib/dist-custom-elements/duet-action-button.js +0 -9
  624. package/lib/dist-custom-elements/duet-alert.d.ts +0 -11
  625. package/lib/dist-custom-elements/duet-alert.js +0 -9
  626. package/lib/dist-custom-elements/duet-badge.d.ts +0 -11
  627. package/lib/dist-custom-elements/duet-badge.js +0 -9
  628. package/lib/dist-custom-elements/duet-banner.d.ts +0 -11
  629. package/lib/dist-custom-elements/duet-banner.js +0 -157
  630. package/lib/dist-custom-elements/duet-breadcrumb.d.ts +0 -11
  631. package/lib/dist-custom-elements/duet-breadcrumb.js +0 -101
  632. package/lib/dist-custom-elements/duet-breadcrumbs.d.ts +0 -11
  633. package/lib/dist-custom-elements/duet-breadcrumbs.js +0 -88
  634. package/lib/dist-custom-elements/duet-button.d.ts +0 -11
  635. package/lib/dist-custom-elements/duet-button.js +0 -9
  636. package/lib/dist-custom-elements/duet-callout.d.ts +0 -11
  637. package/lib/dist-custom-elements/duet-callout.js +0 -72
  638. package/lib/dist-custom-elements/duet-caption.d.ts +0 -11
  639. package/lib/dist-custom-elements/duet-caption.js +0 -9
  640. package/lib/dist-custom-elements/duet-card.d.ts +0 -11
  641. package/lib/dist-custom-elements/duet-card.js +0 -171
  642. package/lib/dist-custom-elements/duet-checkbox.d.ts +0 -11
  643. package/lib/dist-custom-elements/duet-checkbox.js +0 -9
  644. package/lib/dist-custom-elements/duet-checkmark.d.ts +0 -11
  645. package/lib/dist-custom-elements/duet-checkmark.js +0 -9
  646. package/lib/dist-custom-elements/duet-chip.d.ts +0 -11
  647. package/lib/dist-custom-elements/duet-chip.js +0 -9
  648. package/lib/dist-custom-elements/duet-choice-group.d.ts +0 -11
  649. package/lib/dist-custom-elements/duet-choice-group.js +0 -228
  650. package/lib/dist-custom-elements/duet-choice.d.ts +0 -11
  651. package/lib/dist-custom-elements/duet-choice.js +0 -454
  652. package/lib/dist-custom-elements/duet-collapsible.d.ts +0 -11
  653. package/lib/dist-custom-elements/duet-collapsible.js +0 -158
  654. package/lib/dist-custom-elements/duet-combobox.d.ts +0 -11
  655. package/lib/dist-custom-elements/duet-combobox.js +0 -702
  656. package/lib/dist-custom-elements/duet-contact-card.d.ts +0 -11
  657. package/lib/dist-custom-elements/duet-contact-card.js +0 -134
  658. package/lib/dist-custom-elements/duet-cookie-consent.d.ts +0 -11
  659. package/lib/dist-custom-elements/duet-cookie-consent.js +0 -106
  660. package/lib/dist-custom-elements/duet-date-picker.d.ts +0 -11
  661. package/lib/dist-custom-elements/duet-date-picker.js +0 -932
  662. package/lib/dist-custom-elements/duet-divider.d.ts +0 -11
  663. package/lib/dist-custom-elements/duet-divider.js +0 -9
  664. package/lib/dist-custom-elements/duet-editable-table.d.ts +0 -11
  665. package/lib/dist-custom-elements/duet-editable-table.js +0 -258
  666. package/lib/dist-custom-elements/duet-empty-state.d.ts +0 -11
  667. package/lib/dist-custom-elements/duet-empty-state.js +0 -9
  668. package/lib/dist-custom-elements/duet-fieldset.d.ts +0 -11
  669. package/lib/dist-custom-elements/duet-fieldset.js +0 -9
  670. package/lib/dist-custom-elements/duet-file-chooser.d.ts +0 -11
  671. package/lib/dist-custom-elements/duet-file-chooser.js +0 -86
  672. package/lib/dist-custom-elements/duet-footer.d.ts +0 -11
  673. package/lib/dist-custom-elements/duet-footer.js +0 -223
  674. package/lib/dist-custom-elements/duet-grid-item.d.ts +0 -11
  675. package/lib/dist-custom-elements/duet-grid-item.js +0 -9
  676. package/lib/dist-custom-elements/duet-grid.d.ts +0 -11
  677. package/lib/dist-custom-elements/duet-grid.js +0 -9
  678. package/lib/dist-custom-elements/duet-header.d.ts +0 -11
  679. package/lib/dist-custom-elements/duet-header.js +0 -698
  680. package/lib/dist-custom-elements/duet-heading.d.ts +0 -11
  681. package/lib/dist-custom-elements/duet-heading.js +0 -9
  682. package/lib/dist-custom-elements/duet-hero.d.ts +0 -11
  683. package/lib/dist-custom-elements/duet-hero.js +0 -299
  684. package/lib/dist-custom-elements/duet-icon.d.ts +0 -11
  685. package/lib/dist-custom-elements/duet-icon.js +0 -9
  686. package/lib/dist-custom-elements/duet-input.d.ts +0 -11
  687. package/lib/dist-custom-elements/duet-input.js +0 -9
  688. package/lib/dist-custom-elements/duet-label.d.ts +0 -11
  689. package/lib/dist-custom-elements/duet-label.js +0 -70
  690. package/lib/dist-custom-elements/duet-layout.d.ts +0 -11
  691. package/lib/dist-custom-elements/duet-layout.js +0 -94
  692. package/lib/dist-custom-elements/duet-link.d.ts +0 -11
  693. package/lib/dist-custom-elements/duet-link.js +0 -9
  694. package/lib/dist-custom-elements/duet-list-item.d.ts +0 -11
  695. package/lib/dist-custom-elements/duet-list-item.js +0 -9
  696. package/lib/dist-custom-elements/duet-list.d.ts +0 -11
  697. package/lib/dist-custom-elements/duet-list.js +0 -9
  698. package/lib/dist-custom-elements/duet-logo.d.ts +0 -11
  699. package/lib/dist-custom-elements/duet-logo.js +0 -9
  700. package/lib/dist-custom-elements/duet-menu-bar-button.d.ts +0 -11
  701. package/lib/dist-custom-elements/duet-menu-bar-button.js +0 -94
  702. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.d.ts +0 -11
  703. package/lib/dist-custom-elements/duet-menu-bar-dropdown-link.js +0 -87
  704. package/lib/dist-custom-elements/duet-menu-bar-dropdown.d.ts +0 -11
  705. package/lib/dist-custom-elements/duet-menu-bar-dropdown.js +0 -108
  706. package/lib/dist-custom-elements/duet-menu-bar-item.d.ts +0 -11
  707. package/lib/dist-custom-elements/duet-menu-bar-item.js +0 -108
  708. package/lib/dist-custom-elements/duet-menu-bar-link.d.ts +0 -11
  709. package/lib/dist-custom-elements/duet-menu-bar-link.js +0 -70
  710. package/lib/dist-custom-elements/duet-menu-bar.d.ts +0 -11
  711. package/lib/dist-custom-elements/duet-menu-bar.js +0 -206
  712. package/lib/dist-custom-elements/duet-modal.d.ts +0 -11
  713. package/lib/dist-custom-elements/duet-modal.js +0 -382
  714. package/lib/dist-custom-elements/duet-multiselect.d.ts +0 -11
  715. package/lib/dist-custom-elements/duet-multiselect.js +0 -346
  716. package/lib/dist-custom-elements/duet-nav.d.ts +0 -11
  717. package/lib/dist-custom-elements/duet-nav.js +0 -54
  718. package/lib/dist-custom-elements/duet-notification-drawer.d.ts +0 -11
  719. package/lib/dist-custom-elements/duet-notification-drawer.js +0 -168
  720. package/lib/dist-custom-elements/duet-notification.d.ts +0 -11
  721. package/lib/dist-custom-elements/duet-notification.js +0 -95
  722. package/lib/dist-custom-elements/duet-number-input.d.ts +0 -11
  723. package/lib/dist-custom-elements/duet-number-input.js +0 -484
  724. package/lib/dist-custom-elements/duet-overlay.d.ts +0 -11
  725. package/lib/dist-custom-elements/duet-overlay.js +0 -9
  726. package/lib/dist-custom-elements/duet-page-heading.d.ts +0 -11
  727. package/lib/dist-custom-elements/duet-page-heading.js +0 -87
  728. package/lib/dist-custom-elements/duet-pagination.d.ts +0 -11
  729. package/lib/dist-custom-elements/duet-pagination.js +0 -493
  730. package/lib/dist-custom-elements/duet-paragraph.d.ts +0 -11
  731. package/lib/dist-custom-elements/duet-paragraph.js +0 -9
  732. package/lib/dist-custom-elements/duet-popup-menu-item.d.ts +0 -11
  733. package/lib/dist-custom-elements/duet-popup-menu-item.js +0 -9
  734. package/lib/dist-custom-elements/duet-popup-menu.d.ts +0 -11
  735. package/lib/dist-custom-elements/duet-popup-menu.js +0 -9
  736. package/lib/dist-custom-elements/duet-progress.d.ts +0 -11
  737. package/lib/dist-custom-elements/duet-progress.js +0 -9
  738. package/lib/dist-custom-elements/duet-promo-card.d.ts +0 -11
  739. package/lib/dist-custom-elements/duet-promo-card.js +0 -105
  740. package/lib/dist-custom-elements/duet-radio-group.d.ts +0 -11
  741. package/lib/dist-custom-elements/duet-radio-group.js +0 -213
  742. package/lib/dist-custom-elements/duet-radio.d.ts +0 -11
  743. package/lib/dist-custom-elements/duet-radio.js +0 -230
  744. package/lib/dist-custom-elements/duet-range-slider.d.ts +0 -11
  745. package/lib/dist-custom-elements/duet-range-slider.js +0 -181
  746. package/lib/dist-custom-elements/duet-range-stepper.d.ts +0 -11
  747. package/lib/dist-custom-elements/duet-range-stepper.js +0 -234
  748. package/lib/dist-custom-elements/duet-scrollable.d.ts +0 -11
  749. package/lib/dist-custom-elements/duet-scrollable.js +0 -9
  750. package/lib/dist-custom-elements/duet-section-layout.d.ts +0 -11
  751. package/lib/dist-custom-elements/duet-section-layout.js +0 -56
  752. package/lib/dist-custom-elements/duet-select.d.ts +0 -11
  753. package/lib/dist-custom-elements/duet-select.js +0 -9
  754. package/lib/dist-custom-elements/duet-shaped-image.d.ts +0 -11
  755. package/lib/dist-custom-elements/duet-shaped-image.js +0 -64
  756. package/lib/dist-custom-elements/duet-show-more.d.ts +0 -11
  757. package/lib/dist-custom-elements/duet-show-more.js +0 -9
  758. package/lib/dist-custom-elements/duet-slideout-lang.d.ts +0 -11
  759. package/lib/dist-custom-elements/duet-slideout-lang.js +0 -76
  760. package/lib/dist-custom-elements/duet-slideout-link.d.ts +0 -11
  761. package/lib/dist-custom-elements/duet-slideout-link.js +0 -79
  762. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.d.ts +0 -11
  763. package/lib/dist-custom-elements/duet-slideout-panel-dropdown.js +0 -93
  764. package/lib/dist-custom-elements/duet-slideout-panel.d.ts +0 -11
  765. package/lib/dist-custom-elements/duet-slideout-panel.js +0 -224
  766. package/lib/dist-custom-elements/duet-slideout.d.ts +0 -11
  767. package/lib/dist-custom-elements/duet-slideout.js +0 -311
  768. package/lib/dist-custom-elements/duet-spacer.d.ts +0 -11
  769. package/lib/dist-custom-elements/duet-spacer.js +0 -9
  770. package/lib/dist-custom-elements/duet-spinner.d.ts +0 -11
  771. package/lib/dist-custom-elements/duet-spinner.js +0 -9
  772. package/lib/dist-custom-elements/duet-step.d.ts +0 -11
  773. package/lib/dist-custom-elements/duet-step.js +0 -147
  774. package/lib/dist-custom-elements/duet-stepper.d.ts +0 -11
  775. package/lib/dist-custom-elements/duet-stepper.js +0 -151
  776. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.d.ts +0 -11
  777. package/lib/dist-custom-elements/duet-submenu-bar-dropdown-link.js +0 -81
  778. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.d.ts +0 -11
  779. package/lib/dist-custom-elements/duet-submenu-bar-dropdown.js +0 -152
  780. package/lib/dist-custom-elements/duet-submenu-bar-item.d.ts +0 -11
  781. package/lib/dist-custom-elements/duet-submenu-bar-item.js +0 -113
  782. package/lib/dist-custom-elements/duet-submenu-bar-link.d.ts +0 -11
  783. package/lib/dist-custom-elements/duet-submenu-bar-link.js +0 -72
  784. package/lib/dist-custom-elements/duet-submenu-bar.d.ts +0 -11
  785. package/lib/dist-custom-elements/duet-submenu-bar.js +0 -192
  786. package/lib/dist-custom-elements/duet-tab-group.d.ts +0 -11
  787. package/lib/dist-custom-elements/duet-tab-group.js +0 -339
  788. package/lib/dist-custom-elements/duet-tab.d.ts +0 -11
  789. package/lib/dist-custom-elements/duet-tab.js +0 -150
  790. package/lib/dist-custom-elements/duet-table.d.ts +0 -11
  791. package/lib/dist-custom-elements/duet-table.js +0 -9
  792. package/lib/dist-custom-elements/duet-textarea.d.ts +0 -11
  793. package/lib/dist-custom-elements/duet-textarea.js +0 -301
  794. package/lib/dist-custom-elements/duet-toggle.d.ts +0 -11
  795. package/lib/dist-custom-elements/duet-toggle.js +0 -146
  796. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.d.ts +0 -11
  797. package/lib/dist-custom-elements/duet-toolbar-dropdown-link.js +0 -80
  798. package/lib/dist-custom-elements/duet-toolbar-dropdown.d.ts +0 -11
  799. package/lib/dist-custom-elements/duet-toolbar-dropdown.js +0 -107
  800. package/lib/dist-custom-elements/duet-toolbar-item.d.ts +0 -11
  801. package/lib/dist-custom-elements/duet-toolbar-item.js +0 -120
  802. package/lib/dist-custom-elements/duet-toolbar-link.d.ts +0 -11
  803. package/lib/dist-custom-elements/duet-toolbar-link.js +0 -74
  804. package/lib/dist-custom-elements/duet-toolbar.d.ts +0 -11
  805. package/lib/dist-custom-elements/duet-toolbar.js +0 -67
  806. package/lib/dist-custom-elements/duet-tooltip-button.d.ts +0 -11
  807. package/lib/dist-custom-elements/duet-tooltip-button.js +0 -9
  808. package/lib/dist-custom-elements/duet-tooltip-popup.d.ts +0 -11
  809. package/lib/dist-custom-elements/duet-tooltip-popup.js +0 -9
  810. package/lib/dist-custom-elements/duet-tooltip.d.ts +0 -11
  811. package/lib/dist-custom-elements/duet-tooltip.js +0 -9
  812. package/lib/dist-custom-elements/duet-tray.d.ts +0 -11
  813. package/lib/dist-custom-elements/duet-tray.js +0 -146
  814. package/lib/dist-custom-elements/duet-upload-aria-status.d.ts +0 -11
  815. package/lib/dist-custom-elements/duet-upload-aria-status.js +0 -9
  816. package/lib/dist-custom-elements/duet-upload-item.d.ts +0 -11
  817. package/lib/dist-custom-elements/duet-upload-item.js +0 -9
  818. package/lib/dist-custom-elements/duet-upload.d.ts +0 -11
  819. package/lib/dist-custom-elements/duet-upload.js +0 -1444
  820. package/lib/dist-custom-elements/duet-visually-hidden.d.ts +0 -11
  821. package/lib/dist-custom-elements/duet-visually-hidden.js +0 -9
  822. package/lib/dist-custom-elements/index.d.ts +0 -33
  823. package/lib/dist-custom-elements/index.js +0 -29
  824. package/lib/dist-custom-elements/p-02f97b91.js +0 -39
  825. package/lib/dist-custom-elements/p-087d8c5a.js +0 -60
  826. package/lib/dist-custom-elements/p-115c79b6.js +0 -6
  827. package/lib/dist-custom-elements/p-1296f851.js +0 -63
  828. package/lib/dist-custom-elements/p-174a9d1d.js +0 -73
  829. package/lib/dist-custom-elements/p-1ccd7c39.js +0 -80
  830. package/lib/dist-custom-elements/p-1f4fbc7a.js +0 -138
  831. package/lib/dist-custom-elements/p-22147601.js +0 -642
  832. package/lib/dist-custom-elements/p-29be247b.js +0 -80
  833. package/lib/dist-custom-elements/p-2c70b9f4.js +0 -50
  834. package/lib/dist-custom-elements/p-2f25dfb3.js +0 -154
  835. package/lib/dist-custom-elements/p-330bcf1d.js +0 -205
  836. package/lib/dist-custom-elements/p-35375593.js +0 -161
  837. package/lib/dist-custom-elements/p-36ab2d57.js +0 -83
  838. package/lib/dist-custom-elements/p-3ce1f7b8.js +0 -214
  839. package/lib/dist-custom-elements/p-41dca9e4.js +0 -63
  840. package/lib/dist-custom-elements/p-430f3778.js +0 -100
  841. package/lib/dist-custom-elements/p-43c4a1af.js +0 -81
  842. package/lib/dist-custom-elements/p-4da43fbc.js +0 -232
  843. package/lib/dist-custom-elements/p-68c629a8.js +0 -127
  844. package/lib/dist-custom-elements/p-6b77d4d3.js +0 -338
  845. package/lib/dist-custom-elements/p-81287261.js +0 -1348
  846. package/lib/dist-custom-elements/p-89b10856.js +0 -102
  847. package/lib/dist-custom-elements/p-956e3bce.js +0 -110
  848. package/lib/dist-custom-elements/p-993aea39.js +0 -175
  849. package/lib/dist-custom-elements/p-9df4cfa4.js +0 -25
  850. package/lib/dist-custom-elements/p-9f9423c6.js +0 -56
  851. package/lib/dist-custom-elements/p-9fa4eb51.js +0 -94
  852. package/lib/dist-custom-elements/p-a2147aff.js +0 -268
  853. package/lib/dist-custom-elements/p-aaa7a7bd.js +0 -13
  854. package/lib/dist-custom-elements/p-ab34075b.js +0 -124
  855. package/lib/dist-custom-elements/p-ad615991.js +0 -115
  856. package/lib/dist-custom-elements/p-b0925e24.js +0 -318
  857. package/lib/dist-custom-elements/p-b8de9a9c.js +0 -165
  858. package/lib/dist-custom-elements/p-c7d815f6.js +0 -194
  859. package/lib/dist-custom-elements/p-ca700701.js +0 -55
  860. package/lib/dist-custom-elements/p-d004da5f.js +0 -6
  861. package/lib/dist-custom-elements/p-d1f89e90.js +0 -124
  862. package/lib/dist-custom-elements/p-d2a5148f.js +0 -61
  863. package/lib/dist-custom-elements/p-d77db171.js +0 -2130
  864. package/lib/dist-custom-elements/p-dad518a5.js +0 -303
  865. package/lib/dist-custom-elements/p-de4ee016.js +0 -209
  866. package/lib/dist-custom-elements/p-de8f018a.js +0 -55
  867. package/lib/dist-custom-elements/p-df2042f8.js +0 -206
  868. package/lib/dist-custom-elements/p-e176f419.js +0 -61
  869. package/lib/dist-custom-elements/p-e37d189b.js +0 -607
  870. package/lib/dist-custom-elements/p-f11208c3.js +0 -6
  871. package/lib/dist-custom-elements/p-fe9e47d9.js +0 -287
  872. package/lib/duet/duet.js +0 -127
  873. package/lib/duet/p-021a4763.system.entry.js +0 -4
  874. package/lib/duet/p-031167a1.system.entry.js +0 -4
  875. package/lib/duet/p-051c4536.entry.js +0 -4
  876. package/lib/duet/p-053b71e6.system.js +0 -4
  877. package/lib/duet/p-05ca5aea.entry.js +0 -4
  878. package/lib/duet/p-07847129.system.entry.js +0 -4
  879. package/lib/duet/p-0a305aee.entry.js +0 -4
  880. package/lib/duet/p-0c4bbd65.system.js +0 -4
  881. package/lib/duet/p-0d7da85a.js +0 -4
  882. package/lib/duet/p-0dc9089b.system.js +0 -4
  883. package/lib/duet/p-0e348f96.system.entry.js +0 -4
  884. package/lib/duet/p-0e8e80b1.entry.js +0 -4
  885. package/lib/duet/p-0ee85b71.entry.js +0 -4
  886. package/lib/duet/p-115c79b6.js +0 -4
  887. package/lib/duet/p-1183d305.system.entry.js +0 -4
  888. package/lib/duet/p-1268b5a0.system.entry.js +0 -4
  889. package/lib/duet/p-153b6150.system.entry.js +0 -4
  890. package/lib/duet/p-192bba35.system.entry.js +0 -4
  891. package/lib/duet/p-1e17463d.system.js +0 -4
  892. package/lib/duet/p-1e904342.entry.js +0 -4
  893. package/lib/duet/p-1e9e887d.entry.js +0 -4
  894. package/lib/duet/p-209d6065.system.entry.js +0 -4
  895. package/lib/duet/p-20d056ac.entry.js +0 -4
  896. package/lib/duet/p-20eaf445.system.entry.js +0 -4
  897. package/lib/duet/p-215f4257.system.entry.js +0 -4
  898. package/lib/duet/p-237efb0c.system.entry.js +0 -4
  899. package/lib/duet/p-2437b4cb.js +0 -4
  900. package/lib/duet/p-250fb070.entry.js +0 -4
  901. package/lib/duet/p-25af4a6c.entry.js +0 -4
  902. package/lib/duet/p-25d79094.entry.js +0 -4
  903. package/lib/duet/p-27260106.entry.js +0 -4
  904. package/lib/duet/p-27ed5ca7.system.entry.js +0 -4
  905. package/lib/duet/p-2810c6dc.system.entry.js +0 -4
  906. package/lib/duet/p-2814473c.system.entry.js +0 -4
  907. package/lib/duet/p-29152853.entry.js +0 -4
  908. package/lib/duet/p-2a0ad29c.system.entry.js +0 -4
  909. package/lib/duet/p-2a979523.entry.js +0 -4
  910. package/lib/duet/p-2b2cd3be.entry.js +0 -4
  911. package/lib/duet/p-2b35de7b.entry.js +0 -4
  912. package/lib/duet/p-2b45d2e4.entry.js +0 -4
  913. package/lib/duet/p-2b6a7397.js +0 -4
  914. package/lib/duet/p-2bf17427.entry.js +0 -4
  915. package/lib/duet/p-2dc360ee.entry.js +0 -4
  916. package/lib/duet/p-2de0ab3d.system.entry.js +0 -4
  917. package/lib/duet/p-2eae4a0b.js +0 -4
  918. package/lib/duet/p-2fa7ecef.entry.js +0 -4
  919. package/lib/duet/p-2fb96333.entry.js +0 -4
  920. package/lib/duet/p-3106c658.entry.js +0 -4
  921. package/lib/duet/p-34024554.system.entry.js +0 -4
  922. package/lib/duet/p-34d7dd10.system.js +0 -4
  923. package/lib/duet/p-380f74e8.system.entry.js +0 -4
  924. package/lib/duet/p-3810c7dc.entry.js +0 -4
  925. package/lib/duet/p-3c64dab9.entry.js +0 -4
  926. package/lib/duet/p-3d826a58.system.entry.js +0 -4
  927. package/lib/duet/p-3d96186f.system.entry.js +0 -4
  928. package/lib/duet/p-3df2981e.system.entry.js +0 -4
  929. package/lib/duet/p-3faaa469.entry.js +0 -4
  930. package/lib/duet/p-3fe7e109.system.entry.js +0 -4
  931. package/lib/duet/p-40bab9a0.system.entry.js +0 -4
  932. package/lib/duet/p-41552571.system.entry.js +0 -4
  933. package/lib/duet/p-41982d26.system.js +0 -4
  934. package/lib/duet/p-43cc4ad9.system.entry.js +0 -4
  935. package/lib/duet/p-43d16748.system.entry.js +0 -4
  936. package/lib/duet/p-44ee649f.system.entry.js +0 -4
  937. package/lib/duet/p-486576ee.entry.js +0 -4
  938. package/lib/duet/p-49957220.system.js +0 -4
  939. package/lib/duet/p-49fa4a07.entry.js +0 -4
  940. package/lib/duet/p-4a9978a4.entry.js +0 -4
  941. package/lib/duet/p-4cff3036.system.js +0 -4
  942. package/lib/duet/p-4e7f27d8.entry.js +0 -4
  943. package/lib/duet/p-4e9052cd.entry.js +0 -4
  944. package/lib/duet/p-4ee7eb8a.entry.js +0 -4
  945. package/lib/duet/p-5170726b.system.entry.js +0 -4
  946. package/lib/duet/p-55674524.entry.js +0 -4
  947. package/lib/duet/p-58caf53a.system.entry.js +0 -4
  948. package/lib/duet/p-5b927db3.entry.js +0 -4
  949. package/lib/duet/p-5db9497a.entry.js +0 -4
  950. package/lib/duet/p-5dbd1202.entry.js +0 -4
  951. package/lib/duet/p-5e25b406.entry.js +0 -4
  952. package/lib/duet/p-60547899.system.entry.js +0 -4
  953. package/lib/duet/p-605e69c8.system.js +0 -4
  954. package/lib/duet/p-612fbfcc.entry.js +0 -4
  955. package/lib/duet/p-620d4575.system.entry.js +0 -4
  956. package/lib/duet/p-629a9c13.entry.js +0 -4
  957. package/lib/duet/p-62bdecfb.system.entry.js +0 -4
  958. package/lib/duet/p-6324514a.system.entry.js +0 -4
  959. package/lib/duet/p-6447f20d.system.entry.js +0 -4
  960. package/lib/duet/p-6537159a.system.entry.js +0 -4
  961. package/lib/duet/p-670bd483.system.entry.js +0 -4
  962. package/lib/duet/p-6b436ca9.entry.js +0 -4
  963. package/lib/duet/p-7483d86c.entry.js +0 -4
  964. package/lib/duet/p-76563c02.entry.js +0 -4
  965. package/lib/duet/p-769a3309.system.entry.js +0 -4
  966. package/lib/duet/p-76b42e90.entry.js +0 -4
  967. package/lib/duet/p-76b84b22.entry.js +0 -4
  968. package/lib/duet/p-76d69a18.system.js +0 -4
  969. package/lib/duet/p-7972306f.entry.js +0 -4
  970. package/lib/duet/p-79dfc8e6.system.entry.js +0 -4
  971. package/lib/duet/p-7a67ce10.system.entry.js +0 -4
  972. package/lib/duet/p-7acabaa7.system.js +0 -4
  973. package/lib/duet/p-7cce22af.system.js +0 -4
  974. package/lib/duet/p-7d2fffc2.entry.js +0 -4
  975. package/lib/duet/p-7d8a2628.js +0 -4
  976. package/lib/duet/p-7dd3b7d1.entry.js +0 -4
  977. package/lib/duet/p-7f5c1da2.entry.js +0 -4
  978. package/lib/duet/p-8142169f.system.entry.js +0 -4
  979. package/lib/duet/p-8481bbda.entry.js +0 -4
  980. package/lib/duet/p-871d7ca1.system.entry.js +0 -4
  981. package/lib/duet/p-894c1be1.system.entry.js +0 -4
  982. package/lib/duet/p-8abb0984.js +0 -5
  983. package/lib/duet/p-8f477bd6.system.js +0 -4
  984. package/lib/duet/p-8f4cdf46.system.entry.js +0 -4
  985. package/lib/duet/p-8faaaf5f.system.js +0 -4
  986. package/lib/duet/p-9253e832.system.entry.js +0 -4
  987. package/lib/duet/p-965e597c.system.js +0 -4
  988. package/lib/duet/p-966bd64a.entry.js +0 -4
  989. package/lib/duet/p-98636086.system.js +0 -4
  990. package/lib/duet/p-9b04e4a2.entry.js +0 -4
  991. package/lib/duet/p-9fb9ba73.entry.js +0 -4
  992. package/lib/duet/p-a19244e5.system.js +0 -5
  993. package/lib/duet/p-a1b7f2a0.js +0 -4
  994. package/lib/duet/p-a2aa619b.system.entry.js +0 -4
  995. package/lib/duet/p-a2b93336.system.entry.js +0 -4
  996. package/lib/duet/p-a3341588.entry.js +0 -4
  997. package/lib/duet/p-a47047f2.entry.js +0 -4
  998. package/lib/duet/p-a51e1b9e.entry.js +0 -4
  999. package/lib/duet/p-a600451a.entry.js +0 -4
  1000. package/lib/duet/p-a7d809b4.system.entry.js +0 -4
  1001. package/lib/duet/p-a8a381c9.system.entry.js +0 -4
  1002. package/lib/duet/p-aa82f9a1.entry.js +0 -4
  1003. package/lib/duet/p-aaa7a7bd.js +0 -4
  1004. package/lib/duet/p-ac9460ca.entry.js +0 -4
  1005. package/lib/duet/p-aca3a5a9.entry.js +0 -4
  1006. package/lib/duet/p-af209330.entry.js +0 -4
  1007. package/lib/duet/p-afad5fd3.system.js +0 -4
  1008. package/lib/duet/p-b010f56b.system.entry.js +0 -4
  1009. package/lib/duet/p-b69f3d9d.system.entry.js +0 -4
  1010. package/lib/duet/p-b6c584b6.entry.js +0 -4
  1011. package/lib/duet/p-b765710e.entry.js +0 -4
  1012. package/lib/duet/p-b864159a.system.js +0 -4
  1013. package/lib/duet/p-ba03d034.system.js +0 -4
  1014. package/lib/duet/p-bcc40139.system.entry.js +0 -4
  1015. package/lib/duet/p-beeb12f1.js +0 -4
  1016. package/lib/duet/p-c15cd383.system.entry.js +0 -4
  1017. package/lib/duet/p-c22935bf.system.entry.js +0 -4
  1018. package/lib/duet/p-c2dd561e.entry.js +0 -4
  1019. package/lib/duet/p-c3ba8e74.system.entry.js +0 -4
  1020. package/lib/duet/p-c52e8007.entry.js +0 -4
  1021. package/lib/duet/p-c6894b07.system.entry.js +0 -4
  1022. package/lib/duet/p-c694f12d.system.entry.js +0 -4
  1023. package/lib/duet/p-c79cbfdb.entry.js +0 -4
  1024. package/lib/duet/p-c8421271.system.entry.js +0 -4
  1025. package/lib/duet/p-c8d3cb52.entry.js +0 -4
  1026. package/lib/duet/p-c8e22ae2.system.entry.js +0 -4
  1027. package/lib/duet/p-ca3cb21e.js +0 -4
  1028. package/lib/duet/p-cbedbd77.system.entry.js +0 -4
  1029. package/lib/duet/p-cc5e6288.system.js +0 -4
  1030. package/lib/duet/p-cc67e773.js +0 -4
  1031. package/lib/duet/p-ce543cc1.system.entry.js +0 -4
  1032. package/lib/duet/p-cf30c088.entry.js +0 -4
  1033. package/lib/duet/p-d004da5f.js +0 -4
  1034. package/lib/duet/p-d3c304b5.system.js +0 -4
  1035. package/lib/duet/p-d43fc5e9.system.entry.js +0 -4
  1036. package/lib/duet/p-d6dc9819.system.entry.js +0 -4
  1037. package/lib/duet/p-d7d86092.js +0 -4
  1038. package/lib/duet/p-d86d8491.system.entry.js +0 -4
  1039. package/lib/duet/p-db2ccb9d.system.js +0 -4
  1040. package/lib/duet/p-dfd223d9.entry.js +0 -4
  1041. package/lib/duet/p-e0536bb5.entry.js +0 -4
  1042. package/lib/duet/p-e12066c8.system.js +0 -4
  1043. package/lib/duet/p-e1c881da.system.js +0 -4
  1044. package/lib/duet/p-e216bea4.system.js +0 -4
  1045. package/lib/duet/p-e258270f.entry.js +0 -4
  1046. package/lib/duet/p-e2daf94c.entry.js +0 -4
  1047. package/lib/duet/p-e38edd16.system.entry.js +0 -4
  1048. package/lib/duet/p-e44da0ff.system.entry.js +0 -4
  1049. package/lib/duet/p-e4c8559c.system.js +0 -4
  1050. package/lib/duet/p-e6b5a1c7.system.js +0 -4
  1051. package/lib/duet/p-e8dd29e7.entry.js +0 -4
  1052. package/lib/duet/p-e93849fd.system.entry.js +0 -4
  1053. package/lib/duet/p-e9d2f4a1.entry.js +0 -4
  1054. package/lib/duet/p-eca03d5e.js +0 -4
  1055. package/lib/duet/p-ee1eb7cb.system.entry.js +0 -4
  1056. package/lib/duet/p-efa5ec67.entry.js +0 -4
  1057. package/lib/duet/p-f0b0e2b2.system.entry.js +0 -4
  1058. package/lib/duet/p-f105f32a.system.entry.js +0 -4
  1059. package/lib/duet/p-f11208c3.js +0 -4
  1060. package/lib/duet/p-f3633004.entry.js +0 -4
  1061. package/lib/duet/p-f3cf6b50.entry.js +0 -4
  1062. package/lib/duet/p-f43e134e.system.entry.js +0 -4
  1063. package/lib/duet/p-f5dd7e7e.system.entry.js +0 -4
  1064. package/lib/duet/p-f6000a03.js +0 -4
  1065. package/lib/duet/p-f6b21d17.system.js +0 -4
  1066. package/lib/duet/p-f6bd2d4f.system.entry.js +0 -4
  1067. package/lib/duet/p-f75a6d54.system.entry.js +0 -4
  1068. package/lib/duet/p-f97500ff.system.entry.js +0 -4
  1069. package/lib/duet/p-fa3b3dbc.system.entry.js +0 -4
  1070. package/lib/duet/p-fbc396a7.system.entry.js +0 -4
  1071. package/lib/duet/p-fbf89657.system.entry.js +0 -4
  1072. package/lib/duet/p-fcb14b31.system.entry.js +0 -4
  1073. package/lib/duet/p-fd2299b4.entry.js +0 -4
  1074. package/lib/duet/p-fd78f61a.js +0 -4
  1075. package/lib/duet/p-fee25f59.entry.js +0 -4
  1076. package/lib/esm/a11y-utils-8fc393f6.js +0 -23
  1077. package/lib/esm/action-arrow-down-small-82273dc8.js +0 -6
  1078. package/lib/esm/action-new-window-small-1945be91.js +0 -6
  1079. package/lib/esm/body-scroll-46854769.js +0 -234
  1080. package/lib/esm/bodyScrollLock.es6-ecbf187e.js +0 -184
  1081. package/lib/esm/common-strings-af765cad.js +0 -25
  1082. package/lib/esm/create-id-149a1b6d.js +0 -11
  1083. package/lib/esm/duet-chip_3.entry.js +0 -693
  1084. package/lib/esm/floating-ui.dom.esm-ebc91b33.js +0 -1348
  1085. package/lib/esm/focus-utils-adcd9463.js +0 -18
  1086. package/lib/esm/form-search-ea8e19ae.js +0 -6
  1087. package/lib/esm/input-utils-85681162.js +0 -53
  1088. package/lib/esm/is-internet-explorer-2c48f686.js +0 -9
  1089. package/lib/esm/js-utils-9b9e0039.js +0 -47
  1090. package/lib/esm/label-ce262202.js +0 -20
  1091. package/lib/esm/polyfills/core-js.js +0 -11
  1092. package/lib/esm/polyfills/dom.js +0 -79
  1093. package/lib/esm/polyfills/es5-html-element.js +0 -1
  1094. package/lib/esm/polyfills/index.js +0 -34
  1095. package/lib/esm/polyfills/system.js +0 -6
  1096. package/lib/esm/string-utils-192eb3c8.js +0 -61
  1097. package/lib/esm/teleport-546f382d.js +0 -116
  1098. package/lib/esm/themeable-component-860041c5.js +0 -13
  1099. package/lib/esm/tokens-84fb2357.js +0 -753
  1100. package/lib/esm/tokens.module-2d02f5ff.js +0 -503
  1101. package/lib/esm/watch-options-e96ecd92.js +0 -57
  1102. package/lib/esm-es5/a11y-utils-8fc393f6.js +0 -4
  1103. package/lib/esm-es5/action-arrow-down-small-82273dc8.js +0 -4
  1104. package/lib/esm-es5/action-new-window-small-1945be91.js +0 -4
  1105. package/lib/esm-es5/app-globals-00959ca9.js +0 -4
  1106. package/lib/esm-es5/body-scroll-46854769.js +0 -4
  1107. package/lib/esm-es5/bodyScrollLock.es6-ecbf187e.js +0 -4
  1108. package/lib/esm-es5/common-strings-af765cad.js +0 -4
  1109. package/lib/esm-es5/create-id-149a1b6d.js +0 -4
  1110. package/lib/esm-es5/duet-action-button.entry.js +0 -4
  1111. package/lib/esm-es5/duet-alert.entry.js +0 -4
  1112. package/lib/esm-es5/duet-badge.entry.js +0 -4
  1113. package/lib/esm-es5/duet-banner.entry.js +0 -4
  1114. package/lib/esm-es5/duet-breadcrumb.entry.js +0 -4
  1115. package/lib/esm-es5/duet-breadcrumbs.entry.js +0 -4
  1116. package/lib/esm-es5/duet-button_2.entry.js +0 -4
  1117. package/lib/esm-es5/duet-callout.entry.js +0 -4
  1118. package/lib/esm-es5/duet-caption_4.entry.js +0 -4
  1119. package/lib/esm-es5/duet-card.entry.js +0 -4
  1120. package/lib/esm-es5/duet-checkbox.entry.js +0 -4
  1121. package/lib/esm-es5/duet-checkmark.entry.js +0 -4
  1122. package/lib/esm-es5/duet-chip_3.entry.js +0 -4
  1123. package/lib/esm-es5/duet-choice_2.entry.js +0 -4
  1124. package/lib/esm-es5/duet-collapsible.entry.js +0 -4
  1125. package/lib/esm-es5/duet-combobox.entry.js +0 -4
  1126. package/lib/esm-es5/duet-contact-card.entry.js +0 -4
  1127. package/lib/esm-es5/duet-cookie-consent.entry.js +0 -4
  1128. package/lib/esm-es5/duet-date-picker.entry.js +0 -4
  1129. package/lib/esm-es5/duet-divider_2.entry.js +0 -4
  1130. package/lib/esm-es5/duet-editable-table_3.entry.js +0 -4
  1131. package/lib/esm-es5/duet-empty-state.entry.js +0 -4
  1132. package/lib/esm-es5/duet-fieldset.entry.js +0 -4
  1133. package/lib/esm-es5/duet-file-chooser.entry.js +0 -4
  1134. package/lib/esm-es5/duet-footer.entry.js +0 -4
  1135. package/lib/esm-es5/duet-header_2.entry.js +0 -4
  1136. package/lib/esm-es5/duet-hero.entry.js +0 -4
  1137. package/lib/esm-es5/duet-icon.entry.js +0 -4
  1138. package/lib/esm-es5/duet-input_2.entry.js +0 -4
  1139. package/lib/esm-es5/duet-layout.entry.js +0 -4
  1140. package/lib/esm-es5/duet-list_2.entry.js +0 -4
  1141. package/lib/esm-es5/duet-menu-bar-button.entry.js +0 -4
  1142. package/lib/esm-es5/duet-menu-bar-dropdown-link.entry.js +0 -4
  1143. package/lib/esm-es5/duet-menu-bar-dropdown.entry.js +0 -4
  1144. package/lib/esm-es5/duet-menu-bar-item.entry.js +0 -4
  1145. package/lib/esm-es5/duet-menu-bar-link.entry.js +0 -4
  1146. package/lib/esm-es5/duet-menu-bar.entry.js +0 -4
  1147. package/lib/esm-es5/duet-modal.entry.js +0 -4
  1148. package/lib/esm-es5/duet-multiselect.entry.js +0 -4
  1149. package/lib/esm-es5/duet-nav.entry.js +0 -4
  1150. package/lib/esm-es5/duet-notification_2.entry.js +0 -4
  1151. package/lib/esm-es5/duet-number-input.entry.js +0 -4
  1152. package/lib/esm-es5/duet-overlay.entry.js +0 -4
  1153. package/lib/esm-es5/duet-page-heading.entry.js +0 -4
  1154. package/lib/esm-es5/duet-pagination_2.entry.js +0 -4
  1155. package/lib/esm-es5/duet-progress.entry.js +0 -4
  1156. package/lib/esm-es5/duet-promo-card.entry.js +0 -4
  1157. package/lib/esm-es5/duet-radio_2.entry.js +0 -4
  1158. package/lib/esm-es5/duet-range-slider.entry.js +0 -4
  1159. package/lib/esm-es5/duet-scrollable_3.entry.js +0 -4
  1160. package/lib/esm-es5/duet-section-layout.entry.js +0 -4
  1161. package/lib/esm-es5/duet-select.entry.js +0 -4
  1162. package/lib/esm-es5/duet-shaped-image.entry.js +0 -4
  1163. package/lib/esm-es5/duet-show-more.entry.js +0 -4
  1164. package/lib/esm-es5/duet-slideout-lang.entry.js +0 -4
  1165. package/lib/esm-es5/duet-slideout-link.entry.js +0 -4
  1166. package/lib/esm-es5/duet-slideout-panel-dropdown.entry.js +0 -4
  1167. package/lib/esm-es5/duet-slideout-panel.entry.js +0 -4
  1168. package/lib/esm-es5/duet-slideout.entry.js +0 -4
  1169. package/lib/esm-es5/duet-step_2.entry.js +0 -4
  1170. package/lib/esm-es5/duet-submenu-bar-dropdown-link.entry.js +0 -4
  1171. package/lib/esm-es5/duet-submenu-bar-dropdown.entry.js +0 -4
  1172. package/lib/esm-es5/duet-submenu-bar-item.entry.js +0 -4
  1173. package/lib/esm-es5/duet-submenu-bar-link.entry.js +0 -4
  1174. package/lib/esm-es5/duet-submenu-bar.entry.js +0 -4
  1175. package/lib/esm-es5/duet-textarea.entry.js +0 -4
  1176. package/lib/esm-es5/duet-toggle.entry.js +0 -4
  1177. package/lib/esm-es5/duet-toolbar-dropdown-link.entry.js +0 -4
  1178. package/lib/esm-es5/duet-toolbar-dropdown.entry.js +0 -4
  1179. package/lib/esm-es5/duet-toolbar-item.entry.js +0 -4
  1180. package/lib/esm-es5/duet-toolbar-link.entry.js +0 -4
  1181. package/lib/esm-es5/duet-toolbar.entry.js +0 -4
  1182. package/lib/esm-es5/duet-tooltip-button_2.entry.js +0 -4
  1183. package/lib/esm-es5/duet-tooltip.entry.js +0 -4
  1184. package/lib/esm-es5/duet-tray.entry.js +0 -4
  1185. package/lib/esm-es5/duet-upload-aria-status.entry.js +0 -4
  1186. package/lib/esm-es5/duet-upload-item.entry.js +0 -4
  1187. package/lib/esm-es5/duet-visually-hidden.entry.js +0 -4
  1188. package/lib/esm-es5/duet.js +0 -4
  1189. package/lib/esm-es5/errorcodes.utils-d9431251.js +0 -4
  1190. package/lib/esm-es5/floating-ui.dom.esm-ebc91b33.js +0 -4
  1191. package/lib/esm-es5/focus-utils-adcd9463.js +0 -4
  1192. package/lib/esm-es5/form-search-ea8e19ae.js +0 -4
  1193. package/lib/esm-es5/index-1d0b7c66.js +0 -5
  1194. package/lib/esm-es5/index.js +0 -3
  1195. package/lib/esm-es5/input-utils-85681162.js +0 -4
  1196. package/lib/esm-es5/is-internet-explorer-2c48f686.js +0 -4
  1197. package/lib/esm-es5/js-utils-9b9e0039.js +0 -4
  1198. package/lib/esm-es5/keyboard-utils-439bcc8b.js +0 -4
  1199. package/lib/esm-es5/label-ce262202.js +0 -4
  1200. package/lib/esm-es5/language-utils-14969cef.js +0 -4
  1201. package/lib/esm-es5/loader.js +0 -4
  1202. package/lib/esm-es5/slot-utils-4e5ed4eb.js +0 -4
  1203. package/lib/esm-es5/string-utils-192eb3c8.js +0 -4
  1204. package/lib/esm-es5/teleport-546f382d.js +0 -4
  1205. package/lib/esm-es5/themeable-component-860041c5.js +0 -4
  1206. package/lib/esm-es5/token-utils-b9ba8c5e.js +0 -4
  1207. package/lib/esm-es5/tokens-84fb2357.js +0 -4
  1208. package/lib/esm-es5/tokens.module-2d02f5ff.js +0 -4
  1209. package/lib/esm-es5/watch-options-e96ecd92.js +0 -4
  1210. package/lib/loader/package.json +0 -11
  1211. /package/lib/cjs/{body-scroll-dba42314.js → body-scroll-FWPe3_T_.js} +0 -0
  1212. /package/lib/cjs/{bodyScrollLock.es6-dd2d7d91.js → bodyScrollLock.es6-B2sCDud5.js} +0 -0
  1213. /package/lib/cjs/{create-id-1f8c438f.js → create-id-DtslnIOq.js} +0 -0
  1214. /package/lib/cjs/{input-utils-1096a2c5.js → input-utils-DUKdslOM.js} +0 -0
  1215. /package/lib/cjs/{is-internet-explorer-e7f58ebc.js → is-internet-explorer-BTLb_loH.js} +0 -0
  1216. /package/lib/cjs/{js-utils-92e24ba1.js → js-utils-hJ4A2edy.js} +0 -0
  1217. /package/lib/cjs/{string-utils-7b13c16e.js → string-utils-B35hEUBv.js} +0 -0
  1218. /package/lib/duet/{p-8354d1f1.js → p-B1B-PPrh.js} +0 -0
  1219. /package/lib/duet/{p-9e371678.js → p-BlUsLmbQ.js} +0 -0
  1220. /package/lib/duet/{p-fc09c464.js → p-C6CAT054.js} +0 -0
  1221. /package/lib/duet/{p-9c3c64b9.js → p-C6E9F6QT.js} +0 -0
  1222. /package/lib/duet/{p-df7874f9.js → p-CLDy7YaM.js} +0 -0
  1223. /package/lib/duet/{p-5e59e970.js → p-Cfr_DJqU.js} +0 -0
  1224. /package/lib/duet/{p-43b89e38.js → p-DxESMgwA.js} +0 -0
  1225. /package/lib/{dist-custom-elements/p-fc09c464.js → esm/body-scroll-C6CAT054.js} +0 -0
  1226. /package/lib/{dist-custom-elements/p-8354d1f1.js → esm/bodyScrollLock.es6-B1B-PPrh.js} +0 -0
  1227. /package/lib/{dist-custom-elements/p-5e59e970.js → esm/create-id-Cfr_DJqU.js} +0 -0
  1228. /package/lib/{dist-custom-elements/p-df7874f9.js → esm/input-utils-CLDy7YaM.js} +0 -0
  1229. /package/lib/{dist-custom-elements/p-43b89e38.js → esm/is-internet-explorer-DxESMgwA.js} +0 -0
  1230. /package/lib/{dist-custom-elements/p-9e371678.js → esm/js-utils-BlUsLmbQ.js} +0 -0
  1231. /package/lib/{dist-custom-elements/p-9c3c64b9.js → esm/string-utils-C6E9F6QT.js} +0 -0
@@ -1,1444 +0,0 @@
1
- /*!
2
- * Built with Duet Design System
3
- */
4
- import { p as proxyCustomElement, H, c as createEvent, h as h$1, F as Fragment, d as Host } from './p-d77db171.js';
5
- import { i as inheritGlobalTheme } from './p-aaa7a7bd.js';
6
- import { c as createID } from './p-5e59e970.js';
7
- import { d as debounce } from './p-9e371678.js';
8
- import { g as getLocaleString, s as sanitizeString } from './p-35375593.js';
9
- import { p as parsePossibleJSON } from './p-9c3c64b9.js';
10
- import { g as getError, a as getI18nError, d as defineCustomElement$3 } from './p-3ce1f7b8.js';
11
- import { h } from './p-993aea39.js';
12
- import { d as defineCustomElement$j } from './p-df2042f8.js';
13
- import { d as defineCustomElement$i } from './p-330bcf1d.js';
14
- import { d as defineCustomElement$h } from './p-e176f419.js';
15
- import { d as defineCustomElement$g } from './p-b0925e24.js';
16
- import { d as defineCustomElement$f } from './p-d2a5148f.js';
17
- import { d as defineCustomElement$e } from './p-1296f851.js';
18
- import { d as defineCustomElement$d } from './p-9fa4eb51.js';
19
- import { d as defineCustomElement$c } from './p-1ccd7c39.js';
20
- import { d as defineCustomElement$b } from './p-4da43fbc.js';
21
- import { d as defineCustomElement$a } from './p-de4ee016.js';
22
- import { d as defineCustomElement$9 } from './p-174a9d1d.js';
23
- import { d as defineCustomElement$8 } from './p-430f3778.js';
24
- import { d as defineCustomElement$7 } from './p-b8de9a9c.js';
25
- import { d as defineCustomElement$6 } from './p-9f9423c6.js';
26
- import { d as defineCustomElement$5 } from './p-41dca9e4.js';
27
- import { d as defineCustomElement$4 } from './p-956e3bce.js';
28
- import { d as defineCustomElement$2 } from './p-02f97b91.js';
29
-
30
- const errorCodes = [
31
- {
32
- type: "default",
33
- system_message: "unknown error",
34
- message: {
35
- fi: "Tapahtui tuntematon virhe, ole hyvä ja yritä uudelleen.",
36
- sv: "Ett okänt fel uppstod, försök igen.",
37
- en: "An unknown error occured, please try again."
38
- }
39
- },
40
- {
41
- type: "400",
42
- system_message: "Bad Request: The server could not understand the request due to invalid syntax.",
43
- message: {
44
- fi: "Tiedostoa ei hyväksytty.",
45
- sv: "Servern avvisade din fil.",
46
- en: "The server rejected your file."
47
- }
48
- },
49
- {
50
- type: "401",
51
- system_message: "Not Authenticated: The client must authenticate itself to get the requested response...",
52
- message: {
53
- fi: "Vain kirjautunut käyttäjä voi lähettää tiedostoja.",
54
- sv: "Du måste vara inloggad för att ladda upp filer.",
55
- en: "You need to be logged in to upload files."
56
- }
57
- },
58
- {
59
- type: "403",
60
- system_message: "No Access: The client does not have access rights to the content.",
61
- message: {
62
- fi: "Ei oikeuksia lähettää tiedostoja.",
63
- sv: "Du har inte rätt åtkomsträttigheter för att ladda upp filer.",
64
- en: "You do not have the correct access rights to upload files."
65
- }
66
- },
67
- {
68
- type: "413",
69
- system_message: "Payload too large",
70
- message: {
71
- fi: "Tiedosto oli liian vastaanotettavaksi.",
72
- sv: "Filen var för stor för servern att hantera.",
73
- en: "The file was to large for the server to handle."
74
- }
75
- },
76
- {
77
- type: "415",
78
- system_message: "Unsupported media type",
79
- message: {
80
- fi: "Tiedoston tyyppi oli väärä.",
81
- sv: "Servern avvisade filen eftersom den hade fel typ.",
82
- en: "The server rejected the file because it had the wrong type."
83
- }
84
- },
85
- {
86
- type: "429",
87
- system_message: "Too many request from same address",
88
- message: {
89
- fi: "Liian monta yritystä, ole hyvä ja yritä myöhemmin uudelleen.",
90
- sv: "Servern har fått många förfrågningar från dig, försök igen senare.",
91
- en: "The server has received to many request from you, please try again later."
92
- }
93
- },
94
- {
95
- type: "500",
96
- system_message: "Internal Server Error",
97
- message: {
98
- fi: "Palvelin ilmoitti tuntemattomasta virheestä ja lataus epäonnistui.",
99
- sv: "Servern rapporterade ett okänt fel och uppladdningen misslyckades.",
100
- en: "The server reported an unknown error and the upload failed."
101
- }
102
- },
103
- {
104
- type: "duet-upload-100",
105
- system_message: "File extension not allowed",
106
- message: {
107
- fi: "Tiedoston tyyppi ei ole sallittu.",
108
- sv: "Du kan inte ladda upp filer av den type.",
109
- en: "You cannot upload files with that extension."
110
- }
111
- },
112
- {
113
- type: "duet-upload-001",
114
- system_message: "File transfer failed",
115
- message: {
116
- fi: "Tiedoston lähetys keskeytyi, ole hyvä ja yritä uudelleen.",
117
- sv: "Din anslutning till servern avbröts, försök igen.",
118
- en: "Your connection to the server was interrupted, try again."
119
- }
120
- },
121
- {
122
- type: "duet-upload-101",
123
- system_message: "File mimetype not allowed",
124
- message: {
125
- fi: "Tiedoston tyyppi ei ole sallittu.",
126
- sv: "Du kan inte ladda upp filer av den typ.",
127
- en: "You cannot upload files of that type."
128
- }
129
- },
130
- {
131
- type: "duet-upload-201",
132
- system_message: "File is too large",
133
- message: {
134
- fi: "Tiedosto on liian iso.",
135
- sv: "Filen är större än tillåtet.",
136
- en: "The file is larger than permitted."
137
- }
138
- },
139
- {
140
- type: "duet-upload-202",
141
- system_message: "The combined size of all files is too large",
142
- message: {
143
- fi: "Tiedostojen yhteenlaskettu koko on liian iso.",
144
- sv: "Du har nått den maximala kombinerade filstorleken.",
145
- en: "You have reached the maximum combined filesize."
146
- }
147
- },
148
- {
149
- type: "duet-upload-203",
150
- system_message: "Files to upload exceed total byte size limit",
151
- message: {
152
- fi: "Yritit lisätä tiedostoja, jotka ylittäisivät suurimman sallitun yhteenlasketun koon.",
153
- sv: "Du försökte lägga till filer som skulle överskrida den maximala kombinerade storleken.",
154
- en: "You tried to add files that would exceed the maximum combined size."
155
- }
156
- },
157
- {
158
- type: "duet-upload-301",
159
- system_message: "The maximum file limit has been reached",
160
- message: {
161
- fi: "Liitteiden maksimimäärä saavutettu.",
162
- sv: "Maximalt antal bilagor har uppnåtts.",
163
- en: "Maximum number of attachments reached."
164
- }
165
- },
166
- {
167
- type: "duet-upload-302",
168
- system_message: "Files to upload exceeds limits",
169
- message: {
170
- fi: "Et voi lähettää enempää kuin enimmäismäärän liitteitä.",
171
- sv: "Du kan inte ladda upp fler än det maximala antalet bilagor.",
172
- en: "You can't upload more than maximum number of attachments."
173
- }
174
- }
175
- ];
176
-
177
- const headerAriaLabel = {
178
- fi: "Liiteluettelo",
179
- sv: "Lista över bilagor",
180
- en: "Attachments list",
181
- };
182
- const UploadItemHeader = ({ label, categoryLabel }) => {
183
- return (h("div", { class: "items-header", tabindex: "-1", "aria-label": getLocaleString(headerAriaLabel) },
184
- categoryLabel && (h("duet-heading", { class: "category-header", border: "solid", color: "gray-darker", level: "h3", "visual-level": "h6", weight: "semibold", margin: "none", "aria-hidden": "true" }, getLocaleString(categoryLabel))),
185
- h("duet-heading", { class: { "filename-header": true, "no-category": !categoryLabel }, border: "solid", color: "gray-darker", level: "h3", "visual-level": "h6", weight: "semibold", margin: "none", "aria-hidden": "true" }, getLocaleString(label))));
186
- };
187
-
188
- const validateFileExtension = (name, allowedExtensions) => {
189
- if (!allowedExtensions) {
190
- return true;
191
- }
192
- const ext = name.split(".");
193
- const validExtension = allowedExtensions.split(",");
194
- const extension = ext[ext.length - 1];
195
- return validExtension.includes(extension);
196
- };
197
- const validateFileMime = (type, allowedMimetypes) => {
198
- if (!allowedMimetypes || !type) {
199
- return true;
200
- }
201
- const validMimeTypes = allowedMimetypes.split(",");
202
- let valid = false;
203
- validMimeTypes.forEach(mimeType => {
204
- const allowedTypes = mimeType.split("/");
205
- const fileType = type.split("/");
206
- if (allowedTypes[0] === fileType[0] && (allowedTypes[1] === fileType[1] || allowedTypes[1] === "*")) {
207
- valid = true;
208
- }
209
- });
210
- return valid;
211
- };
212
- const validateFileSize = (size, maxBytes) => {
213
- if (!maxBytes || !size) {
214
- return true;
215
- }
216
- return maxBytes >= size;
217
- };
218
- const validateFile = (item, validators, errorCodes) => {
219
- const { allowedMimetypes, allowedExtensions, maxBytes } = validators;
220
- let valid = false;
221
- let errorMessage = getError("default", errorCodes);
222
- if (item) {
223
- const { name, type, size } = item;
224
- const mime = validateFileMime(type, allowedMimetypes);
225
- const ext = allowedExtensions === "all" ||
226
- allowedExtensions === "" ||
227
- allowedExtensions === " " ||
228
- allowedExtensions === undefined
229
- ? true
230
- : validateFileExtension(name.toLowerCase(), allowedExtensions);
231
- const bytes = validateFileSize(size, maxBytes);
232
- if (!mime) {
233
- errorMessage = getError("duet-upload-101", errorCodes);
234
- }
235
- if (!ext) {
236
- errorMessage = getError("duet-upload-100", errorCodes);
237
- }
238
- if (!bytes) {
239
- errorMessage = getError("duet-upload-201", errorCodes);
240
- }
241
- valid = mime && ext && bytes;
242
- }
243
- else {
244
- valid = false;
245
- }
246
- return {
247
- valid,
248
- errorMessage: valid ? undefined : getLocaleString(errorMessage.message),
249
- errorSystem: valid ? undefined : errorMessage.system_message,
250
- errorType: valid ? undefined : errorMessage.type,
251
- };
252
- };
253
- const validateTotalSizeIsAboveMax = (filelist, maxTotalBytes) => {
254
- let total = 0;
255
- if (maxTotalBytes) {
256
- filelist.forEach(item => {
257
- if (item.valid && item.size) {
258
- total += item.size;
259
- }
260
- });
261
- if (total >= maxTotalBytes) {
262
- return true;
263
- }
264
- }
265
- return false;
266
- };
267
- const validateTotalAmountIsAboveMax = (filelist, maxFiles) => {
268
- let total = 0;
269
- if (maxFiles) {
270
- filelist.forEach(item => {
271
- if (item.valid) {
272
- total++;
273
- }
274
- });
275
- if (total >= maxFiles) {
276
- return true;
277
- }
278
- }
279
- return false;
280
- };
281
- const filesToUploadCountAboveMax = (currentFilesCount, filesToUploadCount, maxFiles) => {
282
- if (currentFilesCount + filesToUploadCount > maxFiles) {
283
- return true;
284
- }
285
- return false;
286
- };
287
- const filesToUploadTotalSizeIsAboveMax = (currentFiles, filesToUpload, maxTotalBytes) => {
288
- let total = 0;
289
- if (maxTotalBytes) {
290
- currentFiles.forEach(item => {
291
- if (item.valid && item.size) {
292
- total += item.size;
293
- }
294
- });
295
- filesToUpload.forEach(item => {
296
- if (item.size) {
297
- total += item.size;
298
- }
299
- });
300
- if (total >= maxTotalBytes) {
301
- return true;
302
- }
303
- }
304
- return false;
305
- };
306
-
307
- const makeXhrRequest = ({ payload, options, onFailure, onSuccess, onProgress }) => {
308
- // @ts-ignore
309
- const { type = "POST", xhr, uri, argument = null, headers = null } = options;
310
- xhr.open(type, `${uri}${argument || ""}`, true);
311
- const { data, name } = payload;
312
- // headers must be added after open
313
- if (headers) {
314
- Object.keys(headers).forEach(key => {
315
- xhr.setRequestHeader(key, headers[key]);
316
- });
317
- }
318
- if (type === "POST") {
319
- xhr.onreadystatechange = () => {
320
- // Call a function when the state changes.
321
- if (xhr.readyState === XMLHttpRequest.DONE && xhr.status >= 200 && xhr.status < 300) {
322
- // Request finished without errors
323
- onSuccess(xhr, name, xhr.status);
324
- }
325
- if (xhr.readyState === XMLHttpRequest.DONE && xhr.status >= 300 && xhr.status < 999) {
326
- // Request finished with errors
327
- onFailure(xhr, name, xhr.status);
328
- }
329
- };
330
- onProgress(name);
331
- }
332
- xhr.send(data);
333
- return xhr;
334
- };
335
-
336
- const duetUploadCss = "*,*::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}::slotted([slot=header]){margin-bottom:16px}::slotted([slot=fileheader]){margin:16px 0 0 0}::slotted([slot=filefooter]){margin-top:16px}::slotted([slot=uploadfooter]){margin-top:20px}.duet-upload{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}.duet-upload-item-size{font-size:0.75rem;font-weight:400}.duet-upload-filelist{margin-bottom:25px}.duet-upload-filelist-empty{display:flex;align-items:center;justify-content:center;width:100%;height:75px;margin:0 auto;font-size:1rem;font-weight:400;background-color:rgb(245, 248, 250)}.duet-upload-filelist-empty-label{font-size:1rem;font-weight:400}.duet-upload-editable-table-header-hidden{display:none}.duet-upload-editable-table tbody .duet-upload-editable-table-data{padding:0 !important;border:0}.duet-upload-editable-table duet-editable-table tfoot,.duet-upload-editable-table duet-editable-table thead{display:none}.duet-upload-editable-table duet-editable-table .duet-editable-table-content{padding-right:0 !important;padding-left:0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td{padding:1rem 0 !important}.duet-upload-editable-table duet-editable-table duet-table .duet-table-action-row td:last-child{padding-right:0 !important}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending{position:relative}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-progress,.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-progress{position:absolute;bottom:0;width:100%}.duet-upload-editable-table duet-editable-table .duet-editable-table-row-inprogress duet-action-button::part(button),.duet-upload-editable-table duet-editable-table .duet-editable-table-row-pending duet-action-button::part(button){border:0}duet-paragraph::part(duet-paragraph){word-break:break-word}duet-editable-table tfoot{display:none}.upload-bottom-caption{margin-top:12px;margin-bottom:16px;line-height:1.4rem}.items-header{display:none;flex-direction:row;margin-bottom:0}@media (min-width: 36em){.items-header{display:flex}}.items-header:not(:last-child),.items-header:not(:first-child){margin-top:12px}.items-header .category-header{width:35%}.items-header .filename-header{width:65%}.items-header .filename-header.no-category{width:100%}.upload-item-row{display:flex;flex-direction:column;gap:16px;align-content:center;align-items:center;padding:16px 0 16px 0;border-bottom:1px solid rgb(212, 223, 229)}@media (min-width: 36em){.upload-item-row{flex-direction:row;gap:10px}}.upload-item-row .item-categories{width:100%}@media (min-width: 36em){.upload-item-row .item-categories{width:35%}}.upload-item-row .item-name{position:relative;bottom:2px;width:100%;text-align:left}@media (min-width: 36em){.upload-item-row .item-name{width:50%}.upload-item-row .item-name.no-category{width:85%}}.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:block}@media (min-width: 36em){.upload-item-row .item-categories .heading,.upload-item-row .item-name .heading{display:none}}.upload-item-row .item-actions{width:100%;margin-left:-8px;text-align:left}@media (min-width: 36em){.upload-item-row .item-actions{width:15%;padding-top:0;margin-left:auto;text-align:right}}.upload-item-row .duet-upload-item-name duet-icon{position:relative;top:4px}.upload-item-row .duet-upload-item-name duet-progress{display:block;margin-top:16px}";
337
- const DuetUploadStyle0 = duetUploadCss;
338
-
339
- const DuetUpload$1 = /*@__PURE__*/ proxyCustomElement(class DuetUpload extends H {
340
- constructor() {
341
- super();
342
- this.__registerHost();
343
- this.__attachShadow();
344
- this.duetChange = createEvent(this, "duetChange", 3);
345
- this.duetBlur = createEvent(this, "duetBlur", 7);
346
- this.duetFocus = createEvent(this, "duetFocus", 7);
347
- this.duetReady = createEvent(this, "duetReady", 7);
348
- this.duetDone = createEvent(this, "duetDone", 3);
349
- this.duetState = createEvent(this, "duetState", 3);
350
- this.duetDelete = createEvent(this, "duetDelete", 3);
351
- this.duetCancel = createEvent(this, "duetCancel", 3);
352
- this.duetProgress = createEvent(this, "duetProgress", 3);
353
- this.duetUpload = createEvent(this, "duetUpload", 3);
354
- this.linkClick = createEvent(this, "linkClick", 3);
355
- /**
356
- * Own Properties
357
- */
358
- this.buttonId = createID("DuetButton");
359
- this.labelId = createID("DuetLabel");
360
- this.uploadId = createID("DuetUpload");
361
- this.filesInProgress = new Map();
362
- this.fileMaxReached = false;
363
- this.bytesMaxReached = false;
364
- this.filesToUploadExceedsLimit = false;
365
- this.filesToUploadTotalSizeIsAboveMax = false;
366
- this.internalStatusMessageLabel = undefined;
367
- this.itemRefs = new Map();
368
- /**
369
- * Properties
370
- */
371
- this.DefaultGroups = {
372
- inprogress: "inprogress",
373
- success: "success",
374
- pending: "pending",
375
- failure: "failure",
376
- };
377
- this.kick = debounce(() => {
378
- this.tick = Date.now();
379
- }, 30); // will trigger re-render
380
- this.categoryLabel = {
381
- en: "Category",
382
- sv: "Filtyp",
383
- fi: "Tiedostotyyppi",
384
- };
385
- /**
386
- * Private functions
387
- */
388
- this.listenForActionEvents = () => {
389
- this.element.addEventListener("duetActionEvent", (e) => {
390
- const detail = e.detail;
391
- const { action, id, originalEvent } = detail;
392
- switch (action) {
393
- case "delete":
394
- this.onDelete(id, originalEvent);
395
- break;
396
- case "cancel":
397
- this.onCancel(id, originalEvent);
398
- break;
399
- // code block
400
- }
401
- });
402
- };
403
- this.verifyValidity = () => {
404
- const { invalid, valid } = this.getFilesAsArray();
405
- const oldValid = this.valid;
406
- this.valid = invalid.length === 0 && valid.length !== 0;
407
- if (this.valid !== oldValid) {
408
- this.duetState.emit({
409
- originalEvent: undefined,
410
- data: { valid: this.valid, from: "componentWillRender" },
411
- component: "duet-upload",
412
- });
413
- }
414
- };
415
- this.getGroupFromItemData = (item) => {
416
- if (item.valid && item.progress === 100) {
417
- // if the item has a group, move the file to that group instead
418
- // of into the standard success group
419
- return this.DefaultGroups.success;
420
- }
421
- else if (item.progress > 0 && item.progress !== 100) {
422
- return this.DefaultGroups.inprogress;
423
- }
424
- else if (!item.valid) {
425
- return this.DefaultGroups.failure;
426
- }
427
- else if (item.pending) {
428
- return this.DefaultGroups.pending;
429
- }
430
- else if (item.group) {
431
- return item.group;
432
- }
433
- else {
434
- return "none";
435
- }
436
- };
437
- this.mapFilesToUploadItems = (data, group, showCategory, filteredActions) => {
438
- if (group === this.DefaultGroups.success) {
439
- return (h$1("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "success", data: data, showLinks: this.showLinks, linkClickEvent: this.emitEvent ? this.linkClick : undefined, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
440
- this.itemRefs.set(data.uid, item);
441
- } }));
442
- }
443
- else if (group === this.DefaultGroups.inprogress) {
444
- return (h$1("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "inprogress", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
445
- this.itemRefs.set(data.uid, item);
446
- } }));
447
- }
448
- else if (group === this.DefaultGroups.pending) {
449
- return (h$1("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "pending", data: data, showLinks: this.showLinks, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
450
- this.itemRefs.set(data.uid, item);
451
- } }));
452
- }
453
- else if (group === this.DefaultGroups.failure) {
454
- return (h$1("duet-upload-item", { theme: this.theme, actions: this.getActions(group, filteredActions), type: "failure", data: data, showLinks: this.showLinks, errorCodes: this.errorCodes, categoryLabel: this.categoryLabel, label: this.uploadedItemsHeaderLabel, showCategory: showCategory, buttonTitles: this.processedButtonTitles, ref: item => {
455
- this.itemRefs.set(data.uid, item);
456
- } }));
457
- }
458
- else if (data.group) {
459
- return data.html;
460
- }
461
- else {
462
- return "none";
463
- }
464
- };
465
- this.genHashName = () => Date.now().toString(36) + Math.random();
466
- this.updateValueInMap = (item, key, value, kick = true) => {
467
- try {
468
- const fileItem = this.files.get(item);
469
- fileItem[key] = value;
470
- this.files.set(item, fileItem);
471
- if (this.external && key !== "url") {
472
- this.trackProgress(item, key === "uploaded");
473
- }
474
- }
475
- catch (e) {
476
- // if a users tries to update entries on a file that doesn't exist,
477
- // this will blow up - so we're swallowing the errors here on purpose
478
- // console.warn("operation on missing items")
479
- }
480
- if (kick) {
481
- this.kick();
482
- }
483
- };
484
- this.updateProgress = (ev, name) => {
485
- const updateProgressHelper = percentComplete => {
486
- this.updateValueInMap(name, "progress", percentComplete);
487
- this.onProgress(name, percentComplete, ev);
488
- };
489
- if (ev.lengthComputable) {
490
- const percentComplete = (ev.loaded / ev.total) * 100;
491
- updateProgressHelper(percentComplete);
492
- }
493
- else {
494
- console.log("cant read progress");
495
- }
496
- };
497
- this.trackProgress = (name, remove = false) => {
498
- if (remove) {
499
- this.filesInProgress.delete(name);
500
- }
501
- else {
502
- this.filesInProgress.set(name, "inprogress");
503
- }
504
- if (this.filesInProgress.size === 0) {
505
- this.onDone();
506
- }
507
- };
508
- this.getFilesAsArray = () => {
509
- const filesInQueue = [];
510
- const filesInError = [];
511
- this.files.forEach(value => {
512
- if (value.valid && !value.deleted) {
513
- filesInQueue.push(value);
514
- }
515
- else if (!value.valid && !value.deleted) {
516
- filesInError.push(value);
517
- }
518
- });
519
- return { valid: filesInQueue, invalid: filesInError };
520
- };
521
- this.resetFormFields = () => {
522
- /**
523
- * You cannot modify a FileList, nor remove single items from it
524
- * This completely removes all items in the FileList
525
- * We reset the form fields to always be able to re-upload files
526
- * and because we handle all uploads and states internally in the component (not relying on native form elements)
527
- */
528
- /* TODO: it may be a good idea to just update the list so that this always matches what is in the files map,
529
- * 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
530
- * TODO: but for now we'll just reset the form fields
531
- */
532
- this.nativeInput.value = "";
533
- };
534
- this.startUpload = async (ev, metaData = undefined) => {
535
- // validate that we haven't hit any maxfiles or maxbytes limits before we upload
536
- const { bytesMaxReached, fileMaxReached } = this.validateTotals();
537
- if (bytesMaxReached || fileMaxReached) {
538
- this.kick();
539
- return;
540
- }
541
- this.metaData = metaData;
542
- this.nativeInput.click();
543
- this.onUpload(ev, metaData);
544
- ev.stopPropagation();
545
- ev.preventDefault();
546
- return;
547
- };
548
- /**
549
- * Eventlisteners for the XHR requests
550
- */
551
- this.transferComplete = name => {
552
- this.updateValueInMap(name, "progress", 100, false);
553
- this.trackProgress(name, true);
554
- };
555
- this.transferDone = (xhr, name, status) => {
556
- this.updateValueInMap(name, "status", status, false);
557
- this.updateValueInMap(name, "uploaded", true, false);
558
- try {
559
- const response = JSON.parse(xhr.response);
560
- this.updateValueInMap(name, "url", response.url);
561
- }
562
- catch (e) {
563
- this.updateValueInMap(name, "url", null);
564
- console.error("Server did not respond with expected response {url: string}");
565
- }
566
- return;
567
- };
568
- this.transferDoneWithFailure = (xhr, name, status) => {
569
- try {
570
- const { error } = JSON.parse(xhr.response);
571
- this.updateValueInMap(name, "error", { message: error.message, type: error.type }, false);
572
- }
573
- catch (e) {
574
- console.error("Server did not respond with expected response error:{message: string, type: int}");
575
- this.updateValueInMap(name, "error", { type: status }, false);
576
- }
577
- this.updateValueInMap(name, "valid", false, true);
578
- };
579
- this.transferFailed = name => {
580
- this.updateValueInMap(name, "error", getI18nError("duet-upload-001", this.errorCodes));
581
- };
582
- this.transferCanceled = name => {
583
- this.files.delete(name);
584
- this.validateTotals(name);
585
- this.kick();
586
- };
587
- this.validateTotals = (name) => {
588
- const isTotalSizeOverMaxSize = validateTotalSizeIsAboveMax(this.files, this.maxBytesTotal);
589
- const isTotalFileAmountAboveMax = validateTotalAmountIsAboveMax(this.files, this.maxFiles);
590
- if (isTotalSizeOverMaxSize && name) {
591
- this.updateValueInMap(name, "error", getI18nError("duet-upload-202", this.errorCodes), false);
592
- }
593
- if (isTotalFileAmountAboveMax && name) {
594
- this.updateValueInMap(name, "error", getI18nError("duet-upload-301", this.errorCodes), false);
595
- }
596
- this.bytesMaxReached = isTotalSizeOverMaxSize;
597
- this.fileMaxReached = isTotalFileAmountAboveMax;
598
- return {
599
- bytesMaxReached: isTotalSizeOverMaxSize,
600
- fileMaxReached: isTotalFileAmountAboveMax,
601
- };
602
- };
603
- this.uploadFile = async (fileListItem, force = false, key) => {
604
- if (!force && this.deferUpload) {
605
- this.updateValueInMap(fileListItem.item.name, "pending", true, false);
606
- this.updateValueInMap(fileListItem.item.name, "group", "pending", true);
607
- }
608
- else if (force) {
609
- this.updateValueInMap(fileListItem.item.name, "pending", false, false);
610
- this.updateValueInMap(fileListItem.item.name, "group", undefined, true);
611
- }
612
- try {
613
- if (!this.deferUpload || force) {
614
- // if all is well AND external file upload handling has not been set, start upload
615
- const data = new FormData();
616
- data.append("file", fileListItem.item);
617
- if (key) {
618
- data.append("key", key);
619
- }
620
- data.append("uid", fileListItem.uid);
621
- data.append("name", fileListItem.item.name);
622
- data.append("metadata", JSON.stringify({
623
- uid: fileListItem.uid,
624
- url: this.uri,
625
- size: fileListItem.item.size,
626
- meta: fileListItem.meta,
627
- }));
628
- fileListItem.xhr = await this.makeXHRPostRequest(data);
629
- }
630
- }
631
- catch (e) {
632
- // in case one of the global maxes have been reached, invalidate the file
633
- this.updateValueInMap(fileListItem.item.name, "valid", false, false);
634
- }
635
- };
636
- this.uploadPendingFiles = () => {
637
- for (const [key, value] of Array.from(this.files.entries())) {
638
- if (value.group === "pending" && value.pending === true) {
639
- this.uploadFile(value, true, key);
640
- }
641
- }
642
- };
643
- this.getItemFromUID = (uid) => {
644
- for (const [key, value] of Array.from(this.files.entries())) {
645
- if (value.uid === uid) {
646
- return { value, key };
647
- }
648
- }
649
- return null;
650
- };
651
- this.handleExternalUploadButton = (bytesMaxReached, fileMaxReached) => {
652
- if (this.externalUploadButton) {
653
- if (bytesMaxReached || fileMaxReached) {
654
- this.externalUploadButton.disabled = true;
655
- }
656
- else {
657
- this.externalUploadButton.disabled = false;
658
- }
659
- }
660
- };
661
- this.onDelete = (key, ev) => {
662
- const item = this.getItemFromUID(key);
663
- const retrievedKey = item.key;
664
- const deletedItem = this.files.get(retrievedKey);
665
- this.files.delete(retrievedKey);
666
- const { bytesMaxReached, fileMaxReached } = this.validateTotals();
667
- this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
668
- this.kick();
669
- this.duetDelete.emit({
670
- originalEvent: ev,
671
- data: { deletion: deletedItem },
672
- component: "duet-upload",
673
- });
674
- // don't send a xhr request if the item was pending, just remove it from the list
675
- if (!this.external && !deletedItem.pending) {
676
- this.makeXHRDeleteRequest(deletedItem);
677
- }
678
- this.resetFormFields();
679
- };
680
- this.onCancel = (key, ev) => {
681
- const retrievedKey = this.getItemFromUID(key).key;
682
- const cancelledItem = this.files.get(retrievedKey);
683
- this.files.delete(retrievedKey);
684
- const { bytesMaxReached, fileMaxReached } = this.validateTotals();
685
- this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
686
- if (!this.external) {
687
- const { xhr } = cancelledItem;
688
- if (xhr) {
689
- xhr.abort();
690
- }
691
- }
692
- this.kick();
693
- this.resetFormFields();
694
- this.duetCancel.emit({
695
- originalEvent: ev,
696
- data: { cancelled: cancelledItem },
697
- component: "duet-upload",
698
- });
699
- };
700
- this.onUpload = (ev, metaData) => {
701
- this.duetUpload.emit({
702
- originalEvent: ev,
703
- metaData,
704
- component: "duet-upload",
705
- });
706
- };
707
- this.onBlur = (ev) => {
708
- this.duetBlur.emit({
709
- originalEvent: ev,
710
- component: "duet-upload",
711
- });
712
- };
713
- this.onProgress = (key, percentComplete, ev) => {
714
- this.duetChange.emit({
715
- originalEvent: ev,
716
- data: {
717
- key,
718
- percentComplete,
719
- },
720
- component: "duet-upload",
721
- });
722
- };
723
- this.onFocus = (ev) => {
724
- this.duetFocus.emit({
725
- originalEvent: ev,
726
- component: "duet-upload",
727
- });
728
- };
729
- this.onReady = () => {
730
- this.duetReady.emit({
731
- component: "duet-upload",
732
- });
733
- };
734
- this.onDone = () => {
735
- this.duetDone.emit({
736
- component: "duet-upload",
737
- data: { files: this.files },
738
- });
739
- };
740
- /**
741
- * @description This functions return sorted map items byg condition which are:
742
- */
743
- this.filterMap = () => {
744
- const all = Array.from(this.files.values());
745
- const inprogress = [];
746
- const failure = [];
747
- const pending = [];
748
- const success = [];
749
- let hasCategory = false;
750
- all.forEach(data => {
751
- const group = this.getGroupFromItemData(data);
752
- // const item = mapFn(data, group)
753
- // const category = <UploadCategory meta={data.meta} />
754
- // const categories = data.meta?.badges?.join(",")
755
- if (data.meta && !!data.meta.badges) {
756
- hasCategory = true;
757
- }
758
- if (group === this.DefaultGroups.success) {
759
- success.push({
760
- uid: data.uid,
761
- data,
762
- });
763
- }
764
- else if (group === this.DefaultGroups.inprogress) {
765
- inprogress.push({
766
- uid: data.uid,
767
- data,
768
- });
769
- }
770
- else if (group === this.DefaultGroups.pending) {
771
- pending.push({
772
- uid: data.uid,
773
- data,
774
- });
775
- }
776
- else if (group === this.DefaultGroups.failure) {
777
- failure.push({
778
- uid: data.uid,
779
- data,
780
- });
781
- }
782
- else if (data.group) {
783
- inprogress.push({
784
- uid: data.uid,
785
- data,
786
- });
787
- }
788
- });
789
- return {
790
- pending,
791
- failure,
792
- success,
793
- inprogress,
794
- hasCategory,
795
- };
796
- };
797
- this.getActions = (id, actions) => {
798
- return actions.filter(item => item.map.includes(id));
799
- };
800
- this.renderUploadedItems = () => {
801
- this.itemRefs.clear();
802
- const filteredItems = this.filterMap();
803
- const hasCategory = filteredItems.hasCategory;
804
- const filteredActions = this.hideCancelButton
805
- ? this.actions.filter(action => action.name !== "cancel")
806
- : this.actions;
807
- const ItemRows = this.groups.map(group => {
808
- const currentItems = filteredItems[group.id];
809
- if (!(currentItems === null || currentItems === void 0 ? void 0 : currentItems.length)) {
810
- return;
811
- }
812
- return (h$1(Fragment, null, !this.hideGroups && (h$1(UploadItemHeader, { categoryLabel: hasCategory ? this.categoryLabel : undefined, label: group.label })), currentItems.map(item => this.mapFilesToUploadItems(item.data, group.id, hasCategory, filteredActions))));
813
- });
814
- return (h$1(Fragment, null, this.showUploadedItemsHeader && (h$1(UploadItemHeader, { categoryLabel: hasCategory ? this.categoryLabel : undefined, label: this.uploadedItemsHeaderLabel })), ItemRows));
815
- };
816
- this.tick = Date.now();
817
- this.accessibleActiveDescendant = undefined;
818
- this.accessibleDescribedBy = undefined;
819
- this.accessibleControls = undefined;
820
- this.accessibleOwns = undefined;
821
- this.external = false;
822
- this.middleware = null;
823
- this.deferUpload = false;
824
- this.hideButton = false;
825
- this.actions = [
826
- {
827
- icon: "action-delete",
828
- color: "color-danger",
829
- size: "x-small",
830
- background: "gray-lightest",
831
- name: "delete",
832
- map: ["success", "failure"],
833
- label: {
834
- fi: "Poista tiedosto",
835
- en: "Delete the file",
836
- sv: "Ta bort filen",
837
- },
838
- },
839
- {
840
- icon: "navigation-close",
841
- color: "primary",
842
- size: "x-small",
843
- background: "gray-lightest",
844
- name: "cancel",
845
- map: ["inprogress", "pending"],
846
- label: {
847
- fi: "Keskeytä lähetys",
848
- en: "Cancel the upload",
849
- sv: "Stop överföringen",
850
- },
851
- },
852
- ];
853
- this.uri = undefined;
854
- this.showLinks = false;
855
- this.caption = undefined;
856
- this.statusLabelDefaults = {
857
- fi: {
858
- inProgress: "Lähetetään {filesUploaded}, yhteensä lähetettävänä {filesTotal}.",
859
- inProgressWithErrors: "Lähetetään {filesInProgress}, lähetetty {filesUploaded}, yhteensä lähetettävänä {filesTotal}, {filesWithErrors} epäonnistui",
860
- done: "Lähetys valmis, {filesTotal} lisätty onnistuneesti",
861
- doneWithErrors: "Lähetys valmis, {filesUploaded} lisätty onnistuneesti, {filesWithErrors} epäonnistui",
862
- files: "tiedostoa",
863
- file: "tiedosto",
864
- },
865
- sv: {
866
- inProgress: "Laddar upp {filesUploaded} av {filesTotal}",
867
- inProgressWithErrors: "Laddar upp {filesInProgress}, {filesUploaded} uppladdad av {filesTotal}, {filesWithErrors} misslyckades",
868
- done: "Uppladdningen slutförd, {filesTotal} har lagts till",
869
- doneWithErrors: "Uppladdningen slutförd, {filesUploaded} har lagts till, {filesWithErrors} misslyckades",
870
- files: "filer",
871
- file: "fil",
872
- },
873
- en: {
874
- inProgress: "Uploading {filesUploaded} of {filesTotal}",
875
- inProgressWithErrors: "Uploading {filesInProgress}, {filesUploaded} uploaded of {filesTotal}, {filesWithErrors} failed",
876
- done: "Upload completed, {filesTotal} added successfully",
877
- doneWithErrors: "Upload completed, {filesUploaded} added successfully, {filesWithErrors} failed.",
878
- files: "files",
879
- file: "file",
880
- },
881
- };
882
- this.statusMessageLabel = getLocaleString(this.statusLabelDefaults);
883
- this.buttonLabelDefaults = {
884
- fi: "Lisää liite",
885
- sv: "Lägg till en bilaga",
886
- en: "Add an attachment",
887
- };
888
- this.buttonLabel = getLocaleString(this.buttonLabelDefaults);
889
- this.accessibleButtonLabel = undefined;
890
- this.theme = "";
891
- this.disabled = false;
892
- this.identifier = undefined;
893
- this.margin = "auto";
894
- this.required = false;
895
- this.alignment = "middle";
896
- this.hideGroups = false;
897
- this.files = new Map();
898
- this.valid = !this.required;
899
- this.labelDefaults = {
900
- fi: "Lisää liite",
901
- sv: "Lägg till en bilaga",
902
- en: "Add attachments",
903
- };
904
- this.label = getLocaleString(this.labelDefaults);
905
- this.descriptionDefaults = {
906
- en: "You may attach the following filetypes: {filetypes} - as well as the most common video files. You can upload {maxbytestotal} of files at a time, and add up to {maxfiles} attachments at a time each no larger than {maxbytes}.",
907
- sv: "Du kan bifoga följande filtyper: {filetypes} - samt de vanligaste videofilerna. Du kan ladda upp {maxbytestotal} av filer åt gången, och lägga till upp till {maxfiles} bilagor åt gången varje inte större än {maxbytes}.",
908
- fi: "Voit liittää seuraavat tiedostotyypit: {filetypes} - sekä yleisimmät videotiedostot. Voit lähettää {maxbytestotal} tiedostoa kerrallaan, ja lisätä enintään {maxfiles} liitettä kerrallaan, jokainen enintään {maxbytes} kokoisena.",
909
- };
910
- this.description = getLocaleString(this.descriptionDefaults);
911
- this.fileListEmptyDefaults = {
912
- fi: "Ei vielä lisättyjä tiedostoja.",
913
- sv: "Inga filer har lagts till ännu.",
914
- en: "No files added yet.",
915
- };
916
- this.fileListEmpty = getLocaleString(this.fileListEmptyDefaults);
917
- this.error = "";
918
- this.errorCodes = errorCodes;
919
- this.name = undefined;
920
- this.maxBytes = 200000000;
921
- this.maxBytesTotal = undefined;
922
- this.maxFiles = 99;
923
- this.allowedExtensions = "all";
924
- this.allowedMimetypes = "";
925
- this.multiple = true;
926
- this.limitSelection = false;
927
- this.hideCancelButton = false;
928
- this.value = undefined;
929
- this.externalUploadButtonId = undefined;
930
- this.captionOnBottom = false;
931
- this.showUploadedItemsHeader = false;
932
- this.uploadedItemsHeaderLabel = {
933
- fi: "Ladattu tiedosto",
934
- sv: "Lägg till en bilaga",
935
- en: "Uploaded file",
936
- };
937
- this.headerHeadingLevel = "h3";
938
- this.hideHeader = false;
939
- this.emitEvent = false;
940
- this.actionButtonTitles = {
941
- cancel: false,
942
- delete: false,
943
- };
944
- this.renameDuplicates = false;
945
- this.groups = [
946
- {
947
- id: this.DefaultGroups.success,
948
- label: {
949
- fi: "Valmiit tiedostot",
950
- sv: "Files success",
951
- en: "Files success",
952
- },
953
- },
954
- {
955
- id: this.DefaultGroups.failure,
956
- label: {
957
- fi: "Tiedostot, joissa on virheitä",
958
- sv: "Filer med fel",
959
- en: "Files with errors",
960
- },
961
- },
962
- {
963
- id: this.DefaultGroups.inprogress,
964
- label: {
965
- fi: "Kesken olevat tiedostot",
966
- sv: "Filer inprogress",
967
- en: "Files inprogress",
968
- },
969
- },
970
- {
971
- id: this.DefaultGroups.pending,
972
- label: {
973
- en: "Files to upload",
974
- sv: "Filer att ladda",
975
- fi: "Ladattavat tiedostot",
976
- },
977
- },
978
- ];
979
- }
980
- watchValidHandler(newValue, oldValue) {
981
- if (newValue !== oldValue) {
982
- this.kick();
983
- }
984
- }
985
- /**
986
- * Component lifecycle events.
987
- */
988
- componentWillLoad() {
989
- if (typeof this.statusMessageLabel === "string") {
990
- this.internalStatusMessageLabel = sanitizeString(this.groups);
991
- }
992
- else {
993
- this.internalStatusMessageLabel = this.statusMessageLabel;
994
- }
995
- inheritGlobalTheme(this);
996
- this.listenForActionEvents();
997
- this.onReady();
998
- this.externalUploadButton = document.querySelector(`#${this.externalUploadButtonId}`);
999
- this.processedButtonTitles = parsePossibleJSON(this.actionButtonTitles);
1000
- }
1001
- componentWillRender() {
1002
- // listen to the events from the component
1003
- this.verifyValidity();
1004
- }
1005
- /**
1006
- * Sets focus on the specified `duet-input`. Use this method instead of the global
1007
- * `input.focus()`.
1008
- */
1009
- async setFocus(options) {
1010
- if (this.nativeInput) {
1011
- this.nativeInput.focus(options);
1012
- }
1013
- return;
1014
- }
1015
- /**
1016
- * Method for invoking the upload sequence
1017
- */
1018
- async upload(metaData = undefined) {
1019
- // validate that we haven't hit any maxfiles or maxbytes limits before we upload
1020
- const { bytesMaxReached, fileMaxReached } = this.validateTotals();
1021
- if (bytesMaxReached || fileMaxReached) {
1022
- this.handleExternalUploadButton(bytesMaxReached, fileMaxReached);
1023
- this.kick();
1024
- return;
1025
- }
1026
- this.metaData = metaData;
1027
- this.nativeInput.click();
1028
- return;
1029
- }
1030
- /**
1031
- * Method for uploading pending files
1032
- */
1033
- async uploadPending() {
1034
- this.uploadPendingFiles();
1035
- }
1036
- /**
1037
- * Method for forcing a render of the upload list, element.files can be changed externally
1038
- * But it will only rerender on a new Map or a top Level change - this can be used to update
1039
- * the tabular data if the automatic re-render is no sufficient
1040
- */
1041
- async refresh() {
1042
- this.kick();
1043
- await this.setFocus();
1044
- }
1045
- /**
1046
- * Get list of files, divided in errors and valid sections
1047
- */
1048
- async getFiles() {
1049
- if (!this.files || this.files.size === 0) {
1050
- return false;
1051
- }
1052
- return this.getFilesAsArray();
1053
- }
1054
- /**
1055
- * Convenience method for updating the value of a key:value inside an item in the files attribute
1056
- */
1057
- async updateValue(item, key, value) {
1058
- this.updateValueInMap(item, key, value);
1059
- }
1060
- /**
1061
- * focusActionButton.
1062
- */
1063
- async focusActionButton(uid) {
1064
- var _a;
1065
- await ((_a = this.itemRefs.get(uid)) === null || _a === void 0 ? void 0 : _a.focusActionButton());
1066
- }
1067
- /**
1068
- * render() function
1069
- * Always the last one in the class.
1070
- */
1071
- render() {
1072
- const identifier = this.identifier || this.uploadId;
1073
- const maxMegaBytesTotal = Math.round((this.maxBytesTotal ? this.maxBytesTotal : this.maxBytes * this.maxFiles) / 1024 / 1024);
1074
- const maxMegaBytesPrFile = Math.round(this.maxBytes / 1024 / 1024);
1075
- let caption = this.description.replace(/{maxfiles}/g, this.maxFiles.toString());
1076
- caption = caption.replace(/{maxbytes}/g, `${maxMegaBytesPrFile.toString()} MB`);
1077
- caption = caption.replace(/{maxbytestotal}/g, `${maxMegaBytesTotal.toString()} MB`);
1078
- caption = caption.replace(/{filetypes}/g, this.allowedExtensions.split(",").join(", "));
1079
- if (this.externalUploadButton) {
1080
- this.externalUploadButton.accessibleLabel = `${this.externalUploadButton.innerText}. ${caption}`;
1081
- }
1082
- // @ts-ignore
1083
- return (h$1(Host, { key: 'f22b72ae72f670b1d3b96699cc22b916e44805bb', class: { "duet-m-0": this.margin === "none" } }, h$1("duet-fieldset", { key: 'd9062ebd9b108b426984ea6336014d707816be6a', "label-heading-level": this.headerHeadingLevel, "label-hidden": this.hideHeader, label: this.label }, h$1("slot", { key: 'f05cf1d0a76d07a12e0169d4554344860fe8d5e9', name: "header" }), !this.files.size && (h$1("duet-empty-state", { key: '5f6ea952dccd0579fa97ae6e751c727bb2b72383', id: this.labelId, part: this.identifier ? `${this.identifier}-empty-state` : "duet-upload-empty-state", icon: "messaging-attachment" }, h$1("duet-paragraph", { key: 'b99e0d6949b2377b83a5b8e3ba4fab263685e427', margin: "none" }, this.fileListEmpty))), !!this.files.size && h$1("slot", { key: '0de37444dc62aac38f4ce95cb488cbd9c6485814', name: "fileheader" }), !!this.files.size && (h$1("duet-upload-aria-status", { key: '0d169ad657e0ae9af98769dd2c7b007899826afe', invalid: this.getFilesAsArray().invalid.length, valid: this.getFilesAsArray().valid.length, inprogress: this.filesInProgress.size, total: this.files.size, statusMessageLabel: this.internalStatusMessageLabel })), !!this.files.size && this.renderUploadedItems(), !!this.files.size && h$1("slot", { key: 'a957b0255feb705762d39f4615bd9a49a4569017', name: "filefooter" }), h$1("slot", { key: 'f76b8605d58a7659c2dd0aa29c48a1f34e4a18a9', name: "uploadfooter" }), this.captionOnBottom && (h$1("duet-caption", { key: '3c3b2d1cc4929a960035feb0055c41d435a2cfba', margin: "none", size: "small" }, h$1("div", { key: 'e5f8bd26ec72800dd78794620d3d1dcfb4c55ad8', class: "upload-bottom-caption" }, caption))), h$1("slot", { key: 'c3d1e3f1725fdddfaad3eec7fdc9ed7cb3ef8b5b', name: "afterfooter" }), !this.hideButton && (h$1(Fragment, { key: '25b1dfcfeb51ed4dce30e9dc0dfd4bf3e5adb41e' }, h$1("duet-spacer", { key: 'd19f3991e372c617a6b9509adbc062a03f390090', size: "large" }), h$1("duet-button", { key: '8536bf08e8becf2c50e0fff041facbe975f18ad5', id: this.buttonId, onClick: this.startUpload, "accessible-controls": identifier, disabled: this.fileMaxReached, "accessible-label": this.accessibleButtonLabel || `${this.buttonLabel}. ${caption}`, "accessible-owns": identifier, size: "small", variation: "secondary", fixed: true, icon: "action-add-circle", part: this.identifier ? `${this.identifier}-button-upload` : "duet-upload-button-upload" }, this.buttonLabel))), (this.fileMaxReached ||
1084
- this.bytesMaxReached ||
1085
- this.filesToUploadExceedsLimit ||
1086
- this.filesToUploadTotalSizeIsAboveMax) && (h$1(Fragment, { key: '970bfa230702ba75dc8f8ac9e71f4183c4c3c0d7' }, h$1("duet-spacer", { key: '72b8c0c087760db99ce3fdda33e33471b9606d61', size: "medium" }), h$1("duet-alert", { key: '0769bcb8f099a5094dba69584d27909b915a1b18', part: this.identifier ? `${this.identifier}-error-notification` : "duet-upload-error-notification" }, this.fileMaxReached && getI18nError("duet-upload-301", this.errorCodes), this.bytesMaxReached && getI18nError("duet-upload-202", this.errorCodes), this.filesToUploadExceedsLimit && getI18nError("duet-upload-302", this.errorCodes), this.filesToUploadTotalSizeIsAboveMax && getI18nError("duet-upload-203", this.errorCodes)))), h$1("duet-visually-hidden", { key: 'fba8af1631c5f83e159c7070c9680fb36e5e2d80', "aria-hidden": "true" }, h$1("input", { key: '0c7c75a5a7328dfde2317095e37b363108c6423f', ref: input => {
1087
- this.nativeInput = input;
1088
- }, accept: !this.limitSelection ? undefined : `${this.allowedMimetypes},${this.allowedExtensions}`, onBlur: this.onBlur, onFocus: this.onFocus, onChange: e => this.onChange(e), type: "file", class: {
1089
- "duet-upload": true,
1090
- }, disabled: this.disabled, "aria-hidden": "true", required: this.required, name: this.name, id: this.identifier, multiple: this.multiple, tabIndex: -1 })))));
1091
- }
1092
- /**
1093
- * XHR request utilities
1094
- */
1095
- makeXHRPostRequest(data) {
1096
- const xhr = new XMLHttpRequest();
1097
- const name = data.get("name");
1098
- xhr.upload.addEventListener("progress", ev => {
1099
- this.updateProgress(ev, name);
1100
- });
1101
- xhr.upload.addEventListener("load", () => {
1102
- this.transferComplete(name);
1103
- });
1104
- xhr.upload.addEventListener("error", () => {
1105
- this.transferFailed(name);
1106
- });
1107
- xhr.upload.addEventListener("abort", () => {
1108
- this.transferCanceled(name);
1109
- });
1110
- let options = {
1111
- payload: { data, name },
1112
- options: { type: "POST", uri: this.uri, xhr, argument: null, headers: undefined },
1113
- onFailure: this.transferDoneWithFailure,
1114
- onSuccess: this.transferDone,
1115
- onProgress: this.trackProgress,
1116
- };
1117
- if (this.middleware) {
1118
- options = this.middleware(options);
1119
- }
1120
- return makeXhrRequest(options);
1121
- }
1122
- makeXHRDeleteRequest(data) {
1123
- const { uid, item } = data;
1124
- const xhr = new XMLHttpRequest();
1125
- const headers = {
1126
- "x-fileuid": uid,
1127
- "x-filename": item.name,
1128
- };
1129
- let options = {
1130
- payload: { data: null, name },
1131
- options: {
1132
- type: "DELETE",
1133
- xhr,
1134
- uri: this.uri,
1135
- argument: `?key=${uid}&name=${item.name}`,
1136
- headers,
1137
- },
1138
- onFailure: this.transferDoneWithFailure,
1139
- onSuccess: this.transferDone,
1140
- onProgress: this.trackProgress,
1141
- };
1142
- if (this.middleware) {
1143
- options = this.middleware(options);
1144
- }
1145
- // don't present server issues to user on deletes, just remove them from the visible list
1146
- return makeXhrRequest(options);
1147
- }
1148
- escapeSpecialCharacters(str) {
1149
- return (str + "").replace(/[\\"'(){}\[\]*?$^+]/g, "\\$&").replace(/\u0000/g, "\\0");
1150
- }
1151
- getRenamedFileName(newFileName, extension) {
1152
- const re = new RegExp(`${this.escapeSpecialCharacters(newFileName)} \\(\\d+\\\).${extension}`);
1153
- const lastFileName = Array.from(this.files.entries())
1154
- .map(entry => {
1155
- const [key, _] = entry;
1156
- return key;
1157
- })
1158
- .filter(existingFileName => {
1159
- return re.test(existingFileName) || existingFileName === `${newFileName}.${extension}`;
1160
- })
1161
- .sort((fileOne, fileTwo) => {
1162
- //needs to be sorted using file names without extension
1163
- return fileOne.split(".").slice(0, -1).join(".") > fileTwo.split(".").slice(0, -1).join(".") ? 1 : -1;
1164
- })
1165
- .pop()
1166
- .split(".")
1167
- .slice(0, -1)
1168
- .join(".");
1169
- if (lastFileName === newFileName) {
1170
- return `${newFileName} (1).${extension}`;
1171
- }
1172
- const lastFileNumber = parseInt(lastFileName.split("(").pop().slice(0, -1));
1173
- return `${newFileName} (${lastFileNumber + 1}).${extension}`;
1174
- }
1175
- renameFiles(files) {
1176
- return files.map(file => {
1177
- if (this.files.get(file.name)) {
1178
- const splitName = file.name.split(".");
1179
- const extension = splitName.pop();
1180
- const nameWithoutExtension = splitName.join(".");
1181
- const newName = this.getRenamedFileName(nameWithoutExtension, extension);
1182
- return new File([file], newName, {
1183
- type: file.type,
1184
- lastModified: file.lastModified,
1185
- });
1186
- }
1187
- else {
1188
- return file;
1189
- }
1190
- });
1191
- }
1192
- /**
1193
- * Component event handling.
1194
- */
1195
- async onChange(ev) {
1196
- var _a;
1197
- let selectedFiles = Array.from((_a = this.nativeInput) === null || _a === void 0 ? void 0 : _a.files);
1198
- // FileList is a nice array like structure but
1199
- // to ensure uniqueness of files we use a mapping structure and
1200
- // key to the name (makes it easier to delete as well)
1201
- this.filesToUploadExceedsLimit = false;
1202
- if (filesToUploadCountAboveMax(this.files.size, selectedFiles.length, this.maxFiles)) {
1203
- this.filesToUploadExceedsLimit = true;
1204
- this.kick();
1205
- return;
1206
- }
1207
- this.filesToUploadTotalSizeIsAboveMax = false;
1208
- if (filesToUploadTotalSizeIsAboveMax(this.files, selectedFiles, this.maxBytesTotal)) {
1209
- this.filesToUploadTotalSizeIsAboveMax = true;
1210
- this.kick();
1211
- return;
1212
- }
1213
- if (selectedFiles) {
1214
- if (this.renameDuplicates) {
1215
- selectedFiles = this.renameFiles(selectedFiles);
1216
- }
1217
- for (const item of selectedFiles) {
1218
- const { valid, errorMessage, errorType, errorSystem } = validateFile(item, {
1219
- maxBytes: this.maxBytes,
1220
- allowedExtensions: this.allowedExtensions,
1221
- allowedMimetypes: this.allowedMimetypes,
1222
- }, this.errorCodes);
1223
- const uid = this.genHashName();
1224
- const fileListItem = {
1225
- uid,
1226
- item: item,
1227
- size: item.size,
1228
- meta: this.metaData,
1229
- uploaded: false,
1230
- valid,
1231
- error: {
1232
- type: valid ? undefined : errorType,
1233
- message: valid ? undefined : errorMessage,
1234
- system_message: valid ? undefined : errorSystem,
1235
- },
1236
- progress: 0,
1237
- deleted: false,
1238
- xhr: false,
1239
- url: false,
1240
- };
1241
- this.files.set(item.name, fileListItem);
1242
- if (valid && !this.external) {
1243
- await this.uploadFile(fileListItem);
1244
- }
1245
- else if (valid && this.external) {
1246
- this.updateValueInMap(fileListItem.item.name, "pending", true, false);
1247
- this.updateValueInMap(fileListItem.item.name, "group", "pending", true);
1248
- }
1249
- else if (!valid) {
1250
- this.updateValueInMap(item.name, "valid", false, true);
1251
- }
1252
- // kick the stat to force update
1253
- this.kick();
1254
- }
1255
- }
1256
- // reset the form, so that a user may upload a file again (with the same name)
1257
- this.resetFormFields();
1258
- // reset the internal metaData state
1259
- this.metaData = undefined;
1260
- this.duetChange.emit({
1261
- originalEvent: ev,
1262
- data: { files: this.files },
1263
- component: "duet-upload",
1264
- });
1265
- }
1266
- get element() { return this; }
1267
- static get watchers() { return {
1268
- "valid": ["watchValidHandler"]
1269
- }; }
1270
- static get style() { return DuetUploadStyle0; }
1271
- }, [1, "duet-upload", {
1272
- "accessibleActiveDescendant": [1, "accessible-active-descendant"],
1273
- "accessibleDescribedBy": [1, "accessible-described-by"],
1274
- "accessibleControls": [1, "accessible-controls"],
1275
- "accessibleOwns": [1, "accessible-owns"],
1276
- "external": [4],
1277
- "middleware": [16],
1278
- "deferUpload": [4, "defer-upload"],
1279
- "hideButton": [4, "hide-upload-button"],
1280
- "actions": [16],
1281
- "uri": [1],
1282
- "showLinks": [4, "show-links"],
1283
- "caption": [1],
1284
- "statusLabelDefaults": [1, "status-label-default"],
1285
- "statusMessageLabel": [1, "status-message-label"],
1286
- "buttonLabelDefaults": [1, "button-label-default"],
1287
- "buttonLabel": [1, "button-label"],
1288
- "accessibleButtonLabel": [1, "accessible-button-label"],
1289
- "theme": [1025],
1290
- "disabled": [516],
1291
- "identifier": [1],
1292
- "margin": [1],
1293
- "required": [4],
1294
- "alignment": [1],
1295
- "hideGroups": [4, "hide-table-labels"],
1296
- "files": [1040],
1297
- "valid": [1540],
1298
- "labelDefaults": [1, "label-default"],
1299
- "label": [1],
1300
- "descriptionDefaults": [1, "description-default"],
1301
- "description": [1],
1302
- "fileListEmptyDefaults": [1, "list-empty-default"],
1303
- "fileListEmpty": [1, "file-list-empty"],
1304
- "error": [1],
1305
- "errorCodes": [16],
1306
- "name": [1],
1307
- "maxBytes": [2, "max-bytes"],
1308
- "maxBytesTotal": [2, "max-bytes-total"],
1309
- "maxFiles": [2, "max-files"],
1310
- "allowedExtensions": [1, "allowed-extensions"],
1311
- "allowedMimetypes": [1, "allowed-mimetypes"],
1312
- "multiple": [4],
1313
- "limitSelection": [4, "limit-selection"],
1314
- "hideCancelButton": [4, "hide-cancel-button"],
1315
- "value": [1025],
1316
- "externalUploadButtonId": [1, "external-upload-button-id"],
1317
- "captionOnBottom": [4, "caption-on-bottom"],
1318
- "showUploadedItemsHeader": [4, "show-uploaded-items-header"],
1319
- "uploadedItemsHeaderLabel": [16],
1320
- "headerHeadingLevel": [1, "header-heading-level"],
1321
- "hideHeader": [4, "hide-header"],
1322
- "emitEvent": [4, "link-click-event"],
1323
- "actionButtonTitles": [1, "action-button-titles"],
1324
- "renameDuplicates": [4, "rename-duplicates"],
1325
- "groups": [16],
1326
- "tick": [32],
1327
- "setFocus": [64],
1328
- "upload": [64],
1329
- "uploadPending": [64],
1330
- "refresh": [64],
1331
- "getFiles": [64],
1332
- "updateValue": [64],
1333
- "focusActionButton": [64]
1334
- }, undefined, {
1335
- "valid": ["watchValidHandler"]
1336
- }]);
1337
- function defineCustomElement$1() {
1338
- if (typeof customElements === "undefined") {
1339
- return;
1340
- }
1341
- const components = ["duet-upload", "duet-action-button", "duet-alert", "duet-badge", "duet-button", "duet-caption", "duet-empty-state", "duet-fieldset", "duet-heading", "duet-icon", "duet-link", "duet-paragraph", "duet-progress", "duet-show-more", "duet-spacer", "duet-spinner", "duet-upload-aria-status", "duet-upload-item", "duet-visually-hidden"];
1342
- components.forEach(tagName => { switch (tagName) {
1343
- case "duet-upload":
1344
- if (!customElements.get(tagName)) {
1345
- customElements.define(tagName, DuetUpload$1);
1346
- }
1347
- break;
1348
- case "duet-action-button":
1349
- if (!customElements.get(tagName)) {
1350
- defineCustomElement$j();
1351
- }
1352
- break;
1353
- case "duet-alert":
1354
- if (!customElements.get(tagName)) {
1355
- defineCustomElement$i();
1356
- }
1357
- break;
1358
- case "duet-badge":
1359
- if (!customElements.get(tagName)) {
1360
- defineCustomElement$h();
1361
- }
1362
- break;
1363
- case "duet-button":
1364
- if (!customElements.get(tagName)) {
1365
- defineCustomElement$g();
1366
- }
1367
- break;
1368
- case "duet-caption":
1369
- if (!customElements.get(tagName)) {
1370
- defineCustomElement$f();
1371
- }
1372
- break;
1373
- case "duet-empty-state":
1374
- if (!customElements.get(tagName)) {
1375
- defineCustomElement$e();
1376
- }
1377
- break;
1378
- case "duet-fieldset":
1379
- if (!customElements.get(tagName)) {
1380
- defineCustomElement$d();
1381
- }
1382
- break;
1383
- case "duet-heading":
1384
- if (!customElements.get(tagName)) {
1385
- defineCustomElement$c();
1386
- }
1387
- break;
1388
- case "duet-icon":
1389
- if (!customElements.get(tagName)) {
1390
- defineCustomElement$b();
1391
- }
1392
- break;
1393
- case "duet-link":
1394
- if (!customElements.get(tagName)) {
1395
- defineCustomElement$a();
1396
- }
1397
- break;
1398
- case "duet-paragraph":
1399
- if (!customElements.get(tagName)) {
1400
- defineCustomElement$9();
1401
- }
1402
- break;
1403
- case "duet-progress":
1404
- if (!customElements.get(tagName)) {
1405
- defineCustomElement$8();
1406
- }
1407
- break;
1408
- case "duet-show-more":
1409
- if (!customElements.get(tagName)) {
1410
- defineCustomElement$7();
1411
- }
1412
- break;
1413
- case "duet-spacer":
1414
- if (!customElements.get(tagName)) {
1415
- defineCustomElement$6();
1416
- }
1417
- break;
1418
- case "duet-spinner":
1419
- if (!customElements.get(tagName)) {
1420
- defineCustomElement$5();
1421
- }
1422
- break;
1423
- case "duet-upload-aria-status":
1424
- if (!customElements.get(tagName)) {
1425
- defineCustomElement$4();
1426
- }
1427
- break;
1428
- case "duet-upload-item":
1429
- if (!customElements.get(tagName)) {
1430
- defineCustomElement$3();
1431
- }
1432
- break;
1433
- case "duet-visually-hidden":
1434
- if (!customElements.get(tagName)) {
1435
- defineCustomElement$2();
1436
- }
1437
- break;
1438
- } });
1439
- }
1440
-
1441
- const DuetUpload = DuetUpload$1;
1442
- const defineCustomElement = defineCustomElement$1;
1443
-
1444
- export { DuetUpload, defineCustomElement };