@duetds/components 4.33.1 → 4.33.2

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 (230) hide show
  1. package/hydrate/index.js +25 -104
  2. package/lib/cjs/duet-alert.cjs.entry.js +1 -1
  3. package/lib/cjs/duet-badge.cjs.entry.js +1 -1
  4. package/lib/cjs/duet-button_2.cjs.entry.js +1 -1
  5. package/lib/cjs/duet-caption_4.cjs.entry.js +1 -1
  6. package/lib/cjs/duet-card.cjs.entry.js +1 -1
  7. package/lib/cjs/duet-checkbox.cjs.entry.js +1 -1
  8. package/lib/cjs/duet-choice_2.cjs.entry.js +2 -2
  9. package/lib/cjs/duet-collapsible.cjs.entry.js +4 -452
  10. package/lib/cjs/duet-cookie-consent.cjs.entry.js +1 -1
  11. package/lib/cjs/duet-date-picker.cjs.entry.js +2 -2
  12. package/lib/cjs/duet-divider_2.cjs.entry.js +1 -1
  13. package/lib/cjs/duet-editable-table-button.cjs.entry.js +1 -1
  14. package/lib/cjs/duet-editable-table_4.cjs.entry.js +1 -1
  15. package/lib/cjs/duet-empty-state.cjs.entry.js +1 -1
  16. package/lib/cjs/duet-fieldset.cjs.entry.js +1 -1
  17. package/lib/cjs/duet-footer.cjs.entry.js +1 -1
  18. package/lib/cjs/duet-grid_2.cjs.entry.js +20 -3
  19. package/lib/cjs/duet-header_2.cjs.entry.js +1 -1
  20. package/lib/cjs/duet-hero.cjs.entry.js +1 -1
  21. package/lib/cjs/duet-icon.cjs.entry.js +7 -17
  22. package/lib/cjs/duet-input_2.cjs.entry.js +1 -1
  23. package/lib/cjs/duet-layout.cjs.entry.js +1 -1
  24. package/lib/cjs/duet-list_2.cjs.entry.js +1 -1
  25. package/lib/cjs/duet-modal.cjs.entry.js +2 -2
  26. package/lib/cjs/duet-notification_2.cjs.entry.js +1 -1
  27. package/lib/cjs/duet-number-input.cjs.entry.js +1 -1
  28. package/lib/cjs/duet-progress.cjs.entry.js +1 -1
  29. package/lib/cjs/duet-radio_2.cjs.entry.js +1 -1
  30. package/lib/cjs/duet-range-slider.cjs.entry.js +1 -1
  31. package/lib/cjs/duet-select.cjs.entry.js +1 -1
  32. package/lib/cjs/duet-step_2.cjs.entry.js +1 -1
  33. package/lib/cjs/duet-tab_2.cjs.entry.js +1 -1
  34. package/lib/cjs/duet-textarea.cjs.entry.js +1 -1
  35. package/lib/cjs/duet-toggle.cjs.entry.js +1 -1
  36. package/lib/cjs/duet-tooltip.cjs.entry.js +1 -1
  37. package/lib/cjs/duet-tray.cjs.entry.js +1 -1
  38. package/lib/cjs/duet-upload-aria-status.cjs.entry.js +1 -1
  39. package/lib/cjs/duet-visually-hidden.cjs.entry.js +1 -1
  40. package/lib/cjs/duet.cjs.js +1 -1
  41. package/lib/cjs/{focus-utils-b609a7a5.js → focus-utils-27c696bb.js} +1 -1
  42. package/lib/cjs/{index-9a57d969.js → index-18b0f43a.js} +1 -8
  43. package/lib/cjs/loader.cjs.js +1 -1
  44. package/lib/cjs/tokens-8596cece.js +459 -0
  45. package/lib/collection/components/duet-grid/duet-grid.js +19 -2
  46. package/lib/collection/components/duet-icon/duet-icon.js +6 -2
  47. package/lib/collection/components/duet-icon/icon-utils.js +5 -15
  48. package/lib/custom-elements-bundle/index.js +25 -25
  49. package/lib/duet/duet.esm.js +1 -1
  50. package/lib/duet/duet.js +1 -1
  51. package/lib/duet/{p-af49d4f9.entry.js → p-042ec8b1.entry.js} +1 -1
  52. package/lib/duet/{p-a2a00146.system.entry.js → p-0435b54a.system.entry.js} +1 -1
  53. package/lib/duet/{p-75edcaed.entry.js → p-04b3e682.entry.js} +1 -1
  54. package/lib/duet/{p-2297d13f.system.entry.js → p-0ac2e60d.system.entry.js} +1 -1
  55. package/lib/duet/{p-73f9db25.system.entry.js → p-1082d9f2.system.entry.js} +1 -1
  56. package/lib/duet/{p-c742856b.system.entry.js → p-12fc4849.system.entry.js} +1 -1
  57. package/lib/duet/{p-85e52be8.entry.js → p-15fae689.entry.js} +1 -1
  58. package/lib/duet/{p-4c5eedf8.entry.js → p-1ad58142.entry.js} +1 -1
  59. package/lib/duet/{p-cf319832.system.entry.js → p-1c7d7cdd.system.entry.js} +1 -1
  60. package/lib/duet/{p-b314348c.system.js → p-1cf8dbc7.system.js} +2 -2
  61. package/lib/duet/p-1dcbd837.system.entry.js +4 -0
  62. package/lib/duet/{p-b25edbbe.entry.js → p-1ecddc1d.entry.js} +1 -1
  63. package/lib/duet/{p-7530be48.system.entry.js → p-2b4bd1b2.system.entry.js} +1 -1
  64. package/lib/duet/{p-71a77368.system.entry.js → p-2d8e0faa.system.entry.js} +1 -1
  65. package/lib/duet/{p-323643af.system.entry.js → p-33538e90.system.entry.js} +1 -1
  66. package/lib/duet/{p-e8123a53.entry.js → p-3364cfd2.entry.js} +1 -1
  67. package/lib/duet/p-350cea4e.system.entry.js +4 -0
  68. package/lib/duet/{p-43847557.entry.js → p-39e9d638.entry.js} +1 -1
  69. package/lib/duet/{p-e2596ea0.entry.js → p-3a7e519e.entry.js} +1 -1
  70. package/lib/duet/{p-3013c9bb.system.entry.js → p-3bcf2054.system.entry.js} +1 -1
  71. package/lib/duet/{p-6024e484.system.entry.js → p-3cad13af.system.entry.js} +1 -1
  72. package/lib/duet/{p-e1dc86b5.system.js → p-408e8cdb.system.js} +1 -1
  73. package/lib/duet/{p-fd613733.entry.js → p-4a14da52.entry.js} +1 -1
  74. package/lib/duet/{p-bf9f6d80.system.entry.js → p-4e17a6cb.system.entry.js} +1 -1
  75. package/lib/duet/{p-360086f8.entry.js → p-50b796eb.entry.js} +1 -1
  76. package/lib/duet/{p-7a8597c2.system.entry.js → p-5727cd82.system.entry.js} +1 -1
  77. package/lib/duet/{p-ef7251bf.entry.js → p-582f3a2c.entry.js} +1 -1
  78. package/lib/duet/{p-e70088d5.entry.js → p-5b9621e2.entry.js} +1 -1
  79. package/lib/duet/{p-e7b90769.system.entry.js → p-5f79eff8.system.entry.js} +1 -1
  80. package/lib/duet/{p-6fa6c4fb.system.entry.js → p-60e721aa.system.entry.js} +1 -1
  81. package/lib/duet/{p-f5a55b3c.entry.js → p-60ef3d05.entry.js} +1 -1
  82. package/lib/duet/{p-51955fc0.system.js → p-61fc3872.system.js} +1 -1
  83. package/lib/duet/{p-9e79e033.entry.js → p-637df820.entry.js} +1 -1
  84. package/lib/duet/{p-3ba62cf1.system.entry.js → p-6402041d.system.entry.js} +1 -1
  85. package/lib/duet/{p-68008644.entry.js → p-64c0aa2a.entry.js} +1 -1
  86. package/lib/duet/{p-2fdcff82.entry.js → p-65451003.entry.js} +1 -1
  87. package/lib/duet/{p-6a5ab3eb.entry.js → p-659d6cb7.entry.js} +1 -1
  88. package/lib/duet/p-66fdebc5.js +4 -0
  89. package/lib/duet/p-6708db8a.entry.js +4 -0
  90. package/lib/duet/{p-079795e5.entry.js → p-68635a1c.entry.js} +1 -1
  91. package/lib/duet/{p-e60ee8b0.entry.js → p-720a36f2.entry.js} +1 -1
  92. package/lib/duet/{p-b6e9860a.entry.js → p-72629304.entry.js} +1 -1
  93. package/lib/duet/{p-d67fff56.entry.js → p-75a104e3.entry.js} +1 -1
  94. package/lib/duet/{p-de5ec54e.system.entry.js → p-75e5d4d1.system.entry.js} +1 -1
  95. package/lib/duet/{p-6e4b1c0d.entry.js → p-7ab0bad8.entry.js} +1 -1
  96. package/lib/duet/{p-b4111e88.system.entry.js → p-7ceaf4ef.system.entry.js} +1 -1
  97. package/lib/duet/{p-6a4d85ed.system.entry.js → p-7f8cce41.system.entry.js} +1 -1
  98. package/lib/duet/p-7fed7f57.entry.js +4 -0
  99. package/lib/duet/p-8143f3de.js +4 -0
  100. package/lib/duet/{p-f0cfe033.system.entry.js → p-8c2f14d8.system.entry.js} +1 -1
  101. package/lib/duet/{p-0205162d.entry.js → p-8c730326.entry.js} +1 -1
  102. package/lib/duet/{p-32b7397d.entry.js → p-9125ed25.entry.js} +1 -1
  103. package/lib/duet/{p-2a822e91.system.entry.js → p-933c2774.system.entry.js} +1 -1
  104. package/lib/duet/{p-5cfc53f9.entry.js → p-9584411c.entry.js} +1 -1
  105. package/lib/duet/p-9930e52e.entry.js +4 -0
  106. package/lib/duet/{p-19d7d9d5.system.entry.js → p-9a09ac2b.system.entry.js} +1 -1
  107. package/lib/duet/{p-a545398c.entry.js → p-a09ddd8f.entry.js} +1 -1
  108. package/lib/duet/{p-6f36f647.system.entry.js → p-a2b2fa13.system.entry.js} +1 -1
  109. package/lib/duet/{p-020a2c42.system.entry.js → p-b1ad7a52.system.entry.js} +1 -1
  110. package/lib/duet/{p-dd76db9b.system.entry.js → p-b5dc29b8.system.entry.js} +1 -1
  111. package/lib/duet/{p-00210a63.entry.js → p-ba6214be.entry.js} +1 -1
  112. package/lib/duet/{p-e48f3a32.system.entry.js → p-be349a3d.system.entry.js} +1 -1
  113. package/lib/duet/{p-4b6e8558.system.entry.js → p-c0f3f60f.system.entry.js} +1 -1
  114. package/lib/duet/{p-b5c7d304.system.entry.js → p-c3c95a34.system.entry.js} +1 -1
  115. package/lib/duet/{p-df6f39a3.entry.js → p-c506017d.entry.js} +1 -1
  116. package/lib/duet/p-c74cecf2.system.entry.js +4 -0
  117. package/lib/duet/{p-1cbc6269.entry.js → p-c9a11360.entry.js} +1 -1
  118. package/lib/duet/{p-ba18b56e.entry.js → p-cd21755b.entry.js} +1 -1
  119. package/lib/duet/{p-5e77432e.system.entry.js → p-cd597d62.system.entry.js} +1 -1
  120. package/lib/duet/{p-e5031543.entry.js → p-cff461b6.entry.js} +1 -1
  121. package/lib/duet/{p-cbdb9e98.system.entry.js → p-d0fb19f7.system.entry.js} +1 -1
  122. package/lib/duet/{p-9f35d682.entry.js → p-d1dfa30e.entry.js} +1 -1
  123. package/lib/duet/{p-5decc259.system.entry.js → p-d4e706ac.system.entry.js} +1 -1
  124. package/lib/duet/{p-85ad012a.system.entry.js → p-d5e2bb48.system.entry.js} +1 -1
  125. package/lib/duet/{p-0a89315d.entry.js → p-dd79932a.entry.js} +1 -1
  126. package/lib/duet/{p-3fd9190b.system.entry.js → p-dd9b8fcb.system.entry.js} +1 -1
  127. package/lib/duet/{p-09013a48.system.entry.js → p-de43620d.system.entry.js} +1 -1
  128. package/lib/duet/{p-74f4a0d8.system.entry.js → p-e038da47.system.entry.js} +1 -1
  129. package/lib/duet/{p-c1a1ea1b.js → p-ebc4e334.js} +1 -1
  130. package/lib/duet/{p-bf4596bd.system.entry.js → p-f37ffb6f.system.entry.js} +1 -1
  131. package/lib/duet/{p-8aaf3383.entry.js → p-f8744611.entry.js} +1 -1
  132. package/lib/duet/p-fa99eaa4.system.js +4 -0
  133. package/lib/duet/{p-37cda933.entry.js → p-fd00b025.entry.js} +1 -1
  134. package/lib/esm/duet-alert.entry.js +1 -1
  135. package/lib/esm/duet-badge.entry.js +1 -1
  136. package/lib/esm/duet-button_2.entry.js +1 -1
  137. package/lib/esm/duet-caption_4.entry.js +1 -1
  138. package/lib/esm/duet-card.entry.js +1 -1
  139. package/lib/esm/duet-checkbox.entry.js +1 -1
  140. package/lib/esm/duet-choice_2.entry.js +2 -2
  141. package/lib/esm/duet-collapsible.entry.js +3 -451
  142. package/lib/esm/duet-cookie-consent.entry.js +1 -1
  143. package/lib/esm/duet-date-picker.entry.js +2 -2
  144. package/lib/esm/duet-divider_2.entry.js +1 -1
  145. package/lib/esm/duet-editable-table-button.entry.js +1 -1
  146. package/lib/esm/duet-editable-table_4.entry.js +1 -1
  147. package/lib/esm/duet-empty-state.entry.js +1 -1
  148. package/lib/esm/duet-fieldset.entry.js +1 -1
  149. package/lib/esm/duet-footer.entry.js +1 -1
  150. package/lib/esm/duet-grid_2.entry.js +20 -3
  151. package/lib/esm/duet-header_2.entry.js +1 -1
  152. package/lib/esm/duet-hero.entry.js +1 -1
  153. package/lib/esm/duet-icon.entry.js +7 -17
  154. package/lib/esm/duet-input_2.entry.js +1 -1
  155. package/lib/esm/duet-layout.entry.js +1 -1
  156. package/lib/esm/duet-list_2.entry.js +1 -1
  157. package/lib/esm/duet-modal.entry.js +2 -2
  158. package/lib/esm/duet-notification_2.entry.js +1 -1
  159. package/lib/esm/duet-number-input.entry.js +1 -1
  160. package/lib/esm/duet-progress.entry.js +1 -1
  161. package/lib/esm/duet-radio_2.entry.js +1 -1
  162. package/lib/esm/duet-range-slider.entry.js +1 -1
  163. package/lib/esm/duet-select.entry.js +1 -1
  164. package/lib/esm/duet-step_2.entry.js +1 -1
  165. package/lib/esm/duet-tab_2.entry.js +1 -1
  166. package/lib/esm/duet-textarea.entry.js +1 -1
  167. package/lib/esm/duet-toggle.entry.js +1 -1
  168. package/lib/esm/duet-tooltip.entry.js +1 -1
  169. package/lib/esm/duet-tray.entry.js +1 -1
  170. package/lib/esm/duet-upload-aria-status.entry.js +1 -1
  171. package/lib/esm/duet-visually-hidden.entry.js +1 -1
  172. package/lib/esm/duet.js +1 -1
  173. package/lib/esm/{focus-utils-aeb6ca93.js → focus-utils-c1fa24c4.js} +1 -1
  174. package/lib/esm/{index-e8c7d36f.js → index-05e43a37.js} +2 -8
  175. package/lib/esm/loader.js +1 -1
  176. package/lib/esm/tokens-e110dc89.js +453 -0
  177. package/lib/esm-es5/duet-alert.entry.js +1 -1
  178. package/lib/esm-es5/duet-badge.entry.js +1 -1
  179. package/lib/esm-es5/duet-button_2.entry.js +1 -1
  180. package/lib/esm-es5/duet-caption_4.entry.js +1 -1
  181. package/lib/esm-es5/duet-card.entry.js +1 -1
  182. package/lib/esm-es5/duet-checkbox.entry.js +1 -1
  183. package/lib/esm-es5/duet-choice_2.entry.js +1 -1
  184. package/lib/esm-es5/duet-collapsible.entry.js +2 -2
  185. package/lib/esm-es5/duet-cookie-consent.entry.js +1 -1
  186. package/lib/esm-es5/duet-date-picker.entry.js +1 -1
  187. package/lib/esm-es5/duet-divider_2.entry.js +1 -1
  188. package/lib/esm-es5/duet-editable-table-button.entry.js +1 -1
  189. package/lib/esm-es5/duet-editable-table_4.entry.js +1 -1
  190. package/lib/esm-es5/duet-empty-state.entry.js +1 -1
  191. package/lib/esm-es5/duet-fieldset.entry.js +1 -1
  192. package/lib/esm-es5/duet-footer.entry.js +1 -1
  193. package/lib/esm-es5/duet-grid_2.entry.js +2 -2
  194. package/lib/esm-es5/duet-header_2.entry.js +1 -1
  195. package/lib/esm-es5/duet-hero.entry.js +1 -1
  196. package/lib/esm-es5/duet-icon.entry.js +2 -2
  197. package/lib/esm-es5/duet-input_2.entry.js +1 -1
  198. package/lib/esm-es5/duet-layout.entry.js +1 -1
  199. package/lib/esm-es5/duet-list_2.entry.js +1 -1
  200. package/lib/esm-es5/duet-modal.entry.js +1 -1
  201. package/lib/esm-es5/duet-notification_2.entry.js +1 -1
  202. package/lib/esm-es5/duet-number-input.entry.js +1 -1
  203. package/lib/esm-es5/duet-progress.entry.js +1 -1
  204. package/lib/esm-es5/duet-radio_2.entry.js +1 -1
  205. package/lib/esm-es5/duet-range-slider.entry.js +1 -1
  206. package/lib/esm-es5/duet-select.entry.js +1 -1
  207. package/lib/esm-es5/duet-step_2.entry.js +1 -1
  208. package/lib/esm-es5/duet-tab_2.entry.js +1 -1
  209. package/lib/esm-es5/duet-textarea.entry.js +1 -1
  210. package/lib/esm-es5/duet-toggle.entry.js +1 -1
  211. package/lib/esm-es5/duet-tooltip.entry.js +1 -1
  212. package/lib/esm-es5/duet-tray.entry.js +1 -1
  213. package/lib/esm-es5/duet-upload-aria-status.entry.js +1 -1
  214. package/lib/esm-es5/duet-visually-hidden.entry.js +1 -1
  215. package/lib/esm-es5/duet.js +1 -1
  216. package/lib/esm-es5/{focus-utils-aeb6ca93.js → focus-utils-c1fa24c4.js} +1 -1
  217. package/lib/esm-es5/{index-e8c7d36f.js → index-05e43a37.js} +2 -2
  218. package/lib/esm-es5/loader.js +1 -1
  219. package/lib/esm-es5/tokens-e110dc89.js +4 -0
  220. package/lib/types/components/duet-grid/duet-grid.d.ts +1 -0
  221. package/lib/types/components/duet-icon/duet-icon.d.ts +1 -1
  222. package/lib/types/components/duet-icon/icon-utils.d.ts +1 -1
  223. package/package.json +5 -6
  224. package/lib/duet/p-0e90f075.system.entry.js +0 -4
  225. package/lib/duet/p-3212a556.entry.js +0 -4
  226. package/lib/duet/p-4c827f0d.entry.js +0 -4
  227. package/lib/duet/p-5e0071d6.js +0 -4
  228. package/lib/duet/p-69385972.system.entry.js +0 -4
  229. package/lib/duet/p-e370c18b.entry.js +0 -4
  230. package/lib/duet/p-f2a087a8.system.entry.js +0 -4
package/hydrate/index.js CHANGED
@@ -4700,19 +4700,8 @@ function hydrateFactory($stencilWindow, $stencilHydrateOpts, $stencilHydrateResu
4700
4700
  /*hydrateAppClosure start*/
4701
4701
 
4702
4702
 
4703
- var process = require('process');
4704
-
4705
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
4706
-
4707
- var process__default = /*#__PURE__*/_interopDefaultLegacy(process);
4708
-
4709
- var global$1 = (typeof global !== "undefined" ? global :
4710
- typeof self !== "undefined" ? self :
4711
- typeof window !== "undefined" ? window : {});
4712
-
4713
4703
  const NAMESPACE = 'duet';
4714
4704
  const BUILD = /* duet */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: true, cmpShouldUpdate: false, cmpWillLoad: true, cmpWillRender: true, cmpWillUpdate: false, connectedCallback: true, constructableCSS: false, cssAnnotations: true, cssVarShim: false, devTools: false, disconnectedCallback: true, dynamicImportShim: false, element: false, event: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: true, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: true, hydrateServerSide: true, hydratedAttribute: false, hydratedClass: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, safari10: false, scoped: true, scriptDataOpts: false, shadowDelegatesFocus: true, shadowDom: true, shadowDomShim: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: true, taskQueue: true, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: true, watchCallback: true };
4715
- const Env = /* duet */ {"cdnURILocal":"http://0.0.0.0:3334","cdnURIProd":"https://cdn.duetds.com/api","duetIconVersion":"2.2.4"};
4716
4705
 
4717
4706
  const TAB_KEY = 9;
4718
4707
  var appGlobalScript = () => {
@@ -4753,7 +4742,7 @@ function forceUpdate() {}
4753
4742
 
4754
4743
  function hydrateApp(e, t, o, n, s) {
4755
4744
  function l() {
4756
- if (global$1.clearTimeout(p), i.clear(), r.clear(), !h) {
4745
+ if (global.clearTimeout(p), i.clear(), r.clear(), !h) {
4757
4746
  h = !0;
4758
4747
  try {
4759
4748
  t.clientHydrateAnnotations && insertVdomAnnotations(e.document, t.staticComponents),
@@ -4848,7 +4837,7 @@ function hydrateApp(e, t, o, n, s) {
4848
4837
  }, e.document.createElementNS = function t(o, n) {
4849
4838
  const s = $.call(e.document, o, n);
4850
4839
  return f(s), s;
4851
- }, p = global$1.setTimeout((function L() {
4840
+ }, p = global.setTimeout((function L() {
4852
4841
  a(`Hydrate exceeded timeout${function e(t) {
4853
4842
  return Array.from(t).map(waitingOnElementMsg);
4854
4843
  }(d)}`);
@@ -5516,7 +5505,7 @@ const cmpModules = new Map, getModule = e => {
5516
5505
  });
5517
5506
  }
5518
5507
  }, win = window, doc = win.document, writeTask = e => {
5519
- process__default['default'].nextTick((() => {
5508
+ process.nextTick((() => {
5520
5509
  try {
5521
5510
  e();
5522
5511
  } catch (e) {
@@ -9534,6 +9523,11 @@ function isGridItem(element) {
9534
9523
  class DuetGrid {
9535
9524
  constructor(hostRef) {
9536
9525
  registerInstance(this, hostRef);
9526
+ this.mql = [
9527
+ window.matchMedia(media_query_large.replace(/'/g, "")),
9528
+ window.matchMedia(media_query_medium.replace(/'/g, "")),
9529
+ window.matchMedia(media_query_small.replace(/'/g, "")),
9530
+ ];
9537
9531
  this.distributeFormElement = false;
9538
9532
  /**
9539
9533
  * Enable or disable the automatic responsive behaviour of the grid component.
@@ -9588,10 +9582,15 @@ class DuetGrid {
9588
9582
  this.mutationO = watchForOptions(el, "duet-grid-item", () => {
9589
9583
  this.updateGridItems();
9590
9584
  });
9585
+ // the next two functions are used to watch for changes in the grid items, and are process intensive - so only run when needed
9591
9586
  if (this.distributeFormElement) {
9592
9587
  this.mutation1 = watchForElement(el, "duet-input", () => {
9593
9588
  this.updateGridItemsWithInputFields();
9594
9589
  });
9590
+ // listen for potential mediaquery changes and reset layout
9591
+ for (let i = 0; i < this.mql.length; i++) {
9592
+ this.mql[i].addEventListener("change", this.updateGridItemsWithInputFields.bind(this));
9593
+ }
9595
9594
  }
9596
9595
  this.updateGridItems();
9597
9596
  }
@@ -9604,6 +9603,10 @@ class DuetGrid {
9604
9603
  this.mutation1.disconnect();
9605
9604
  this.mutation1 = undefined;
9606
9605
  }
9606
+ // listen for potential mediaquery changes and reset layout
9607
+ for (let i = 0; i < this.mql.length; i++) {
9608
+ this.mql[i].removeEventListener("change", this.updateGridItemsWithInputFields.bind(this));
9609
+ }
9607
9610
  }
9608
9611
  /**
9609
9612
  * Local methods
@@ -9617,6 +9620,8 @@ class DuetGrid {
9617
9620
  }
9618
9621
  async updateGridItemsWithInputFields() {
9619
9622
  const items = Array.from(this.element.children).filter(isGridItem);
9623
+ // if layout changes to columns instead of row, remove all padding
9624
+ const hasColumnLayout = window ? window.getComputedStyle(this.element).flexDirection === "column" : false;
9620
9625
  let maxHeight = 0;
9621
9626
  const sizes = [];
9622
9627
  items.forEach(item => {
@@ -9628,10 +9633,10 @@ class DuetGrid {
9628
9633
  items.forEach(item => {
9629
9634
  const inputErrorDom = item.querySelector("span.duet-input-error");
9630
9635
  const height = inputErrorDom ? this.outerHeight(inputErrorDom) : 0;
9631
- if (height < maxHeight) {
9636
+ if (height < maxHeight && !hasColumnLayout) {
9632
9637
  item.setAttribute("style", `padding-bottom: ${maxHeight - height}px;`);
9633
9638
  }
9634
- else if (height === maxHeight) {
9639
+ else if (height === maxHeight || hasColumnLayout) {
9635
9640
  item.setAttribute("style", `padding-bottom: 0px;`);
9636
9641
  }
9637
9642
  });
@@ -10734,86 +10739,6 @@ class DuetHero {
10734
10739
  }; }
10735
10740
  }
10736
10741
 
10737
- const cleanupSvg = (svgContent) => {
10738
- if (typeof document === "undefined" || !svgContent) {
10739
- return;
10740
- }
10741
- const div = document.createElement("div");
10742
- div.innerHTML = svgContent;
10743
- // setup this way to ensure it works on our buddy IE
10744
- for (let i = div.childNodes.length - 1; i >= 0; i--) {
10745
- const child = div.childNodes[i];
10746
- if (child.nodeName.toLowerCase() !== "svg") {
10747
- div.removeChild(div.childNodes[i]);
10748
- }
10749
- }
10750
- return div.firstElementChild;
10751
- };
10752
- const isValid = (elm) => {
10753
- if (elm.nodeName.toLowerCase() === "script") {
10754
- return false;
10755
- }
10756
- for (let i = 0; i < elm.attributes.length; i++) {
10757
- const attribute = elm.attributes[i];
10758
- if (attribute.name.toLowerCase().indexOf("on") === 0) {
10759
- return false;
10760
- }
10761
- }
10762
- if (elm.children) {
10763
- for (let i = 0; i < elm.children.length; i++) {
10764
- if (!isValid(elm.children[i])) {
10765
- return false;
10766
- }
10767
- }
10768
- }
10769
- return true;
10770
- };
10771
- const buildIconUrl = (iconName) => {
10772
- // under normal operations the Icons should always be loaded from the CDN
10773
- {
10774
- return `${Env.cdnURIProd}/icons/${Env.duetIconVersion}/lib/assets/${iconName}.svg`;
10775
- }
10776
- };
10777
- const iconCache = {};
10778
- function fetchIconByUrl(url, isServer = Build.isServer) {
10779
- if (iconCache[url]) {
10780
- return iconCache[url];
10781
- }
10782
- // we create a function that covers all the fetching, cleanup, validation etc,
10783
- // this way we can perform that work just once, and then return the same promise in future.
10784
- async function doFetch() {
10785
- let responseText = "";
10786
- if (isServer) {
10787
- const fs = require("fs");
10788
- const path = require("path");
10789
- const iconsPath = `${path.resolve(path.dirname(require.resolve("@duetds/icons")), "..")}/lib/assets`;
10790
- const filenameFromUrl = url.split("/").pop().split("#")[0].split("?")[0];
10791
- responseText = fs.readFileSync(`${iconsPath}/${filenameFromUrl}`, "utf-8");
10792
- }
10793
- else {
10794
- const res = await fetch(url);
10795
- if (!res.ok) {
10796
- throw new Error(`SVG request failed: ${res.status} ${res.statusText}`);
10797
- }
10798
- responseText = await res.text();
10799
- }
10800
- const svgElement = cleanupSvg(responseText);
10801
- if (!isValid(svgElement)) {
10802
- throw new Error("SVG validation failed");
10803
- }
10804
- // OuterHTML does not unfortunately work here with IE11
10805
- // was previously: resolve(svgElement.outerHTML)
10806
- const div = document.createElement("div");
10807
- div.appendChild(svgElement);
10808
- return div.innerHTML;
10809
- }
10810
- // we do not `await` the fetch, as we only care about initiating the work,
10811
- // it's the responsibility of the calling code to wait for the response.
10812
- const req = doFetch();
10813
- // cache for the repeat requests
10814
- return (iconCache[url] = req);
10815
- }
10816
-
10817
10742
  const duetIconCss = "/*!@*,\n*::after,\n*::before*/*.sc-duet-icon,*.sc-duet-icon::after,*.sc-duet-icon::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}/*!@:host*/.sc-duet-icon-h{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-bottom:16px !important;display:inline-block;width:auto;max-width:100%;color:inherit;-webkit-tap-highlight-color:transparent}@media (max-width: 35.9375em){/*!@:host(.duet-icon-has-outline)*/.duet-icon-has-outline.sc-duet-icon-h{margin-bottom:0 !important}}@media (max-width: 35.9375em){/*!@:host(.duet-icon-has-background)*/.duet-icon-has-background.sc-duet-icon-h{margin-bottom:0 !important}}/*!@:host(.duet-m-0)*/.duet-m-0.sc-duet-icon-h{margin:0 !important}@media (max-width: 35.9375em){/*!@:host(.duet-m-0)*/.duet-m-0.sc-duet-icon-h{margin:0 !important}}/*!@.duet-icon*/.duet-icon.sc-duet-icon{-webkit-user-select:none;user-select:none;width:100%;height:100%;transform-origin:top center}/*!@.duet-icon.duet-icon-has-outline*/.duet-icon.duet-icon-has-outline.sc-duet-icon{padding:12px;border-style:solid;border-width:1px;border-radius:50%}@media (max-width: 35.9375em){/*!@.duet-icon.duet-icon-has-outline*/.duet-icon.duet-icon-has-outline.sc-duet-icon{outline:1px solid transparent;transform:scale(0.8)}}/*!@.duet-icon.duet-icon-has-background*/.duet-icon.duet-icon-has-background.sc-duet-icon{padding:16px;color:white;border-radius:50%}@media (max-width: 35.9375em){/*!@.duet-icon.duet-icon-has-background*/.duet-icon.duet-icon-has-background.sc-duet-icon{outline:1px solid transparent;transform:scale(0.8)}}/*!@.duet-icon.duet-icon-has-background.duet-theme-turva, .duet-icon.duet-icon-has-background.duet-theme-default*/.duet-icon.duet-icon-has-background.duet-theme-turva.sc-duet-icon,.duet-icon.duet-icon-has-background.duet-theme-default.sc-duet-icon{color:white}/*!@.duet-icon.duet-icon-has-background.xxx-small .duet-icon-svg, .duet-icon.duet-icon-has-outline.xxx-small .duet-icon-svg*/.duet-icon.duet-icon-has-background.xxx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon,.duet-icon.duet-icon-has-outline.xxx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:10px;height:10px}/*!@.duet-icon.duet-icon-has-background.xx-small .duet-icon-svg, .duet-icon.duet-icon-has-outline.xx-small .duet-icon-svg*/.duet-icon.duet-icon-has-background.xx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon,.duet-icon.duet-icon-has-outline.xx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:16px;height:16px}@media (max-width: 35.9375em){/*!@.duet-icon.duet-icon-not-responsive*/.duet-icon.duet-icon-not-responsive.sc-duet-icon{transform:scale(1) !important}}/*!@.duet-icon.duet-theme-default*/.duet-icon.duet-theme-default.sc-duet-icon{color:#0077b3}/*!@.duet-icon.duet-theme-turva*/.duet-icon.duet-theme-turva.sc-duet-icon{color:#c60c30}/*!@.duet-icon.auto .duet-icon-svg*/.duet-icon.auto.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:100%;height:100%}/*!@.duet-icon.xxx-small .duet-icon-svg*/.duet-icon.xxx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:7px;height:7px}/*!@.duet-icon.duet-icon-has-background.xxx-small*/.duet-icon.duet-icon-has-background.xxx-small.sc-duet-icon{padding:6px}/*!@.duet-icon.duet-icon-has-outline.xxx-small*/.duet-icon.duet-icon-has-outline.xxx-small.sc-duet-icon{padding:4px}/*!@.duet-icon.xx-small .duet-icon-svg*/.duet-icon.xx-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:10px;height:10px}/*!@.duet-icon.duet-icon-has-background.xx-small*/.duet-icon.duet-icon-has-background.xx-small.sc-duet-icon{padding:8px}/*!@.duet-icon.duet-icon-has-outline.xx-small*/.duet-icon.duet-icon-has-outline.xx-small.sc-duet-icon{padding:7px}/*!@.duet-icon.x-small .duet-icon-svg*/.duet-icon.x-small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:16px;height:16px}/*!@.duet-icon.duet-icon-has-outline.x-small*/.duet-icon.duet-icon-has-outline.x-small.sc-duet-icon{padding:10px}/*!@.duet-icon.duet-icon-has-background.x-small*/.duet-icon.duet-icon-has-background.x-small.sc-duet-icon{padding:12px}/*!@.duet-icon.small .duet-icon-svg*/.duet-icon.small.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:20px;height:20px}/*!@.duet-icon.duet-icon-has-background.small*/.duet-icon.duet-icon-has-background.small.sc-duet-icon{padding:14px}/*!@.duet-icon.large .duet-icon-svg*/.duet-icon.large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:30px;height:30px}/*!@.duet-icon.x-large .duet-icon-svg*/.duet-icon.x-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:36px;height:36px}/*!@.duet-icon.xx-large .duet-icon-svg*/.duet-icon.xx-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:48px;height:48px}/*!@.duet-icon.xxx-large .duet-icon-svg*/.duet-icon.xxx-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:48px;height:48px}@media (min-width: 48em){/*!@.duet-icon.xxx-large .duet-icon-svg*/.duet-icon.xxx-large.sc-duet-icon .duet-icon-svg.sc-duet-icon{width:72px;height:72px}}/*!@.duet-icon .duet-icon-svg*/.duet-icon.sc-duet-icon .duet-icon-svg.sc-duet-icon{display:block;width:24px;min-width:100%;height:24px;font-size:0}/*!@.duet-icon svg*/.duet-icon.sc-duet-icon svg.sc-duet-icon{width:100%;min-width:100%;fill:currentColor}";
10818
10743
 
10819
10744
  class DuetIcon {
@@ -10870,7 +10795,7 @@ class DuetIcon {
10870
10795
  if (this.src && this.icon) {
10871
10796
  console.warn("[DUET COMPONENTS]: <duet-icon> should have either have src or icon attributes, but not both. icon attribute will take precedence", "icon:", this.icon, "src:", this.src);
10872
10797
  }
10873
- return this.loadIcon();
10798
+ this.loadIcon();
10874
10799
  }
10875
10800
  async loadIcon() {
10876
10801
  // static icon known at build-time, so we can set it synchronously
@@ -10878,13 +10803,9 @@ class DuetIcon {
10878
10803
  this.svgContent = this.icon;
10879
10804
  return;
10880
10805
  }
10881
- // dynamically load icon from url
10882
- const src = this.src ? this.src : buildIconUrl(this.name);
10883
- try {
10884
- this.svgContent = await fetchIconByUrl(src);
10885
- }
10886
- catch (e) {
10887
- console.warn(`[DUET COMPONENTS]: <duet-icon> could not load SVG from URL: ${src}.`, e);
10806
+ // on server, don't make requests
10807
+ {
10808
+ return;
10888
10809
  }
10889
10810
  }
10890
10811
  /**
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const languageUtils = require('./language-utils-aa282901.js');
10
10
  const themeableComponent = require('./themeable-component-0c1be552.js');
11
11
  require('./string-utils-267e3dbb.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const themeableComponent = require('./themeable-component-0c1be552.js');
10
10
 
11
11
  const duetBadgeCss = "*,*::after,*::before{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none}:host{box-sizing:border-box;padding:0;margin:0;background:transparent;border:0;-moz-appearance:none;-webkit-appearance:none;appearance:none;margin-right:4px !important;margin-bottom:2px !important;display:inline-block;width:auto;vertical-align:middle}:host:last-child,:host:last-of-type{margin-right:0 !important}:host(.duet-m-0){margin:0 !important}.duet-badge{width:100%;padding:4.4444444444px 12px 5.4444444444px;font-family:\"localtapiola-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-size:0.75rem;font-style:normal;font-weight:600;line-height:1.25;color:#00294d;text-align:center;word-break:break-word;vertical-align:middle;background:#e6f1f7;border-radius:20rem}.duet-badge.duet-p-0{padding:0 !important}.duet-badge.duet-m-0{margin:0 !important}.duet-badge.duet-theme-turva{padding:5.4444444444px 12px 4.4444444444px;font-family:\"turva-sans\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";font-weight:700;color:#171c3a;background:#e8e8eb}.duet-badge.warning{background:#fef3df}.duet-badge.warning.duet-theme-turva{background:#fef1db}.duet-badge.danger{background:#fce9ef}.duet-badge.danger.duet-theme-turva{background:#fceae7}.duet-badge.success{background:#e6f3ef}.duet-badge.success.duet-theme-turva{background:#e6f3ed}";
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const commonStrings = require('./common-strings-de17f887.js');
10
10
  const languageUtils = require('./language-utils-aa282901.js');
11
11
  const themeableComponent = require('./themeable-component-0c1be552.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const themeableComponent = require('./themeable-component-0c1be552.js');
10
10
  const stringUtils = require('./string-utils-267e3dbb.js');
11
11
  const tokenUtils = require('./token-utils-63a9c8dc.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const createId = require('./create-id-c3b984b1.js');
10
10
  const keyboardUtils = require('./keyboard-utils-b4e3d1d3.js');
11
11
  const stringUtils = require('./string-utils-267e3dbb.js');
@@ -5,7 +5,7 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const createId = require('./create-id-c3b984b1.js');
10
10
  const themeableComponent = require('./themeable-component-0c1be552.js');
11
11
 
@@ -5,10 +5,10 @@
5
5
 
6
6
  Object.defineProperty(exports, '__esModule', { value: true });
7
7
 
8
- const index = require('./index-9a57d969.js');
8
+ const index = require('./index-18b0f43a.js');
9
9
  const commonStrings = require('./common-strings-de17f887.js');
10
10
  const createId = require('./create-id-c3b984b1.js');
11
- const focusUtils = require('./focus-utils-b609a7a5.js');
11
+ const focusUtils = require('./focus-utils-27c696bb.js');
12
12
  const keyboardUtils = require('./keyboard-utils-b4e3d1d3.js');
13
13
  const languageUtils = require('./language-utils-aa282901.js');
14
14
  const themeableComponent = require('./themeable-component-0c1be552.js');