@lmvz-ds/components 0.14.1 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/dist/cjs/app-globals-V2Kpy_OQ.js +3 -0
  2. package/dist/cjs/app-globals-V2Kpy_OQ.js.map +1 -0
  3. package/dist/cjs/{assets-BnJmIx_h.js → assets-XY-cBmal.js} +5 -2
  4. package/dist/cjs/assets-XY-cBmal.js.map +1 -0
  5. package/dist/cjs/header-integration_7.cjs.entry.js +1024 -0
  6. package/dist/cjs/header-integration_7.cjs.entry.js.map +1 -0
  7. package/dist/cjs/{Effect-CpZhfb0D.js → icons-BOM23oli.js} +1010 -236
  8. package/dist/cjs/icons-BOM23oli.js.map +1 -0
  9. package/dist/cjs/{index-9ZJx0550.js → index-B1Puzu82.js} +11 -651
  10. package/dist/cjs/index-B1Puzu82.js.map +1 -0
  11. package/dist/cjs/{index-QRnWYctw.js → index-ww_DCXU7.js} +431 -426
  12. package/dist/cjs/index-ww_DCXU7.js.map +1 -0
  13. package/dist/cjs/index.cjs.js +13 -12
  14. package/dist/cjs/index.cjs.js.map +1 -0
  15. package/dist/cjs/lmvz-action.cjs.entry.js +5 -2
  16. package/dist/cjs/lmvz-action.cjs.entry.js.map +1 -0
  17. package/dist/cjs/lmvz-card.cjs.entry.js +7 -4
  18. package/dist/cjs/lmvz-card.cjs.entry.js.map +1 -0
  19. package/dist/cjs/lmvz-chip.cjs.entry.js +5 -2
  20. package/dist/cjs/lmvz-chip.cjs.entry.js.map +1 -0
  21. package/dist/cjs/lmvz-components.cjs.js +6 -3
  22. package/dist/cjs/lmvz-components.cjs.js.map +1 -0
  23. package/dist/cjs/loader.cjs.js +5 -2
  24. package/dist/cjs/loader.cjs.js.map +1 -0
  25. package/dist/collection/api/ds.constants.js +1 -0
  26. package/dist/collection/api/ds.constants.js.map +1 -0
  27. package/dist/collection/api/index.js +1 -0
  28. package/dist/collection/api/index.js.map +1 -0
  29. package/dist/collection/collection-manifest.json +2 -1
  30. package/dist/collection/components/lmvz-action/lmvz-action.js +2 -1
  31. package/dist/collection/components/lmvz-action/lmvz-action.js.map +1 -0
  32. package/dist/collection/components/lmvz-button/lmvz-button.css +4 -0
  33. package/dist/collection/components/lmvz-button/lmvz-button.js +3 -2
  34. package/dist/collection/components/lmvz-button/lmvz-button.js.map +1 -0
  35. package/dist/collection/components/lmvz-card/lmvz-card.css +4 -0
  36. package/dist/collection/components/lmvz-card/lmvz-card.js +4 -3
  37. package/dist/collection/components/lmvz-card/lmvz-card.js.map +1 -0
  38. package/dist/collection/components/lmvz-chip/lmvz-chip.js +3 -2
  39. package/dist/collection/components/lmvz-chip/lmvz-chip.js.map +1 -0
  40. package/dist/collection/components/lmvz-header/lmvz-header.js +17 -10
  41. package/dist/collection/components/lmvz-header/lmvz-header.js.map +1 -0
  42. package/dist/collection/components/lmvz-icon/icons.js +1 -0
  43. package/dist/collection/components/lmvz-icon/icons.js.map +1 -0
  44. package/dist/collection/components/lmvz-icon/lmvz-icon.js +8 -7
  45. package/dist/collection/components/lmvz-icon/lmvz-icon.js.map +1 -0
  46. package/dist/collection/components/lmvz-icon/public.js +1 -0
  47. package/dist/collection/components/lmvz-icon/public.js.map +1 -0
  48. package/dist/collection/components/lmvz-icon/test/icons.unit.js +1 -0
  49. package/dist/collection/components/lmvz-icon/test/icons.unit.js.map +1 -0
  50. package/dist/collection/components/lmvz-input/lmvz-input.js +35 -28
  51. package/dist/collection/components/lmvz-input/lmvz-input.js.map +1 -0
  52. package/dist/collection/components/lmvz-menuitem/lmvz-menuitem.js +5 -2
  53. package/dist/collection/components/lmvz-menuitem/lmvz-menuitem.js.map +1 -0
  54. package/dist/collection/components/lmvz-select/lmvz-select.css +197 -0
  55. package/dist/collection/components/lmvz-select/lmvz-select.js +224 -0
  56. package/dist/collection/components/lmvz-select/lmvz-select.js.map +1 -0
  57. package/dist/collection/index.js +1 -0
  58. package/dist/collection/index.js.map +1 -0
  59. package/dist/collection/integration/header-integration.js +5 -4
  60. package/dist/collection/integration/header-integration.js.map +1 -0
  61. package/dist/collection/utils/aria/aria-validation-controller.js +1 -0
  62. package/dist/collection/utils/aria/aria-validation-controller.js.map +1 -0
  63. package/dist/collection/utils/aria/element-activation-controller.js +1 -0
  64. package/dist/collection/utils/aria/element-activation-controller.js.map +1 -0
  65. package/dist/collection/utils/aria/list-keyboard-controller.js +7 -4
  66. package/dist/collection/utils/aria/list-keyboard-controller.js.map +1 -0
  67. package/dist/collection/utils/assets.js +1 -0
  68. package/dist/collection/utils/assets.js.map +1 -0
  69. package/dist/collection/utils/component.js +7 -4
  70. package/dist/collection/utils/component.js.map +1 -0
  71. package/dist/collection/utils/effect.js +1 -0
  72. package/dist/collection/utils/effect.js.map +1 -0
  73. package/dist/collection/utils/environment.js +1 -0
  74. package/dist/collection/utils/environment.js.map +1 -0
  75. package/dist/collection/utils/http.js +1 -0
  76. package/dist/collection/utils/http.js.map +1 -0
  77. package/dist/collection/utils/http.unit.js +1 -0
  78. package/dist/collection/utils/http.unit.js.map +1 -0
  79. package/dist/collection/utils/public.js +1 -0
  80. package/dist/collection/utils/public.js.map +1 -0
  81. package/dist/collection/utils/reactive-controller-host.js +1 -0
  82. package/dist/collection/utils/reactive-controller-host.js.map +1 -0
  83. package/dist/collection/utils/validation/svg.js +1 -0
  84. package/dist/collection/utils/validation/svg.js.map +1 -0
  85. package/dist/components/header-integration.d.ts +11 -0
  86. package/dist/components/header-integration.js +2 -0
  87. package/dist/components/header-integration.js.map +1 -0
  88. package/dist/components/index.d.ts +4 -0
  89. package/dist/components/index.js +2 -1
  90. package/dist/components/index.js.map +1 -0
  91. package/dist/components/lmvz-action.js +2 -1
  92. package/dist/components/lmvz-action.js.map +1 -0
  93. package/dist/components/lmvz-button.js +2 -1
  94. package/dist/components/lmvz-button.js.map +1 -0
  95. package/dist/components/lmvz-card.js +2 -1
  96. package/dist/components/lmvz-card.js.map +1 -0
  97. package/dist/components/lmvz-chip.js +2 -1
  98. package/dist/components/lmvz-chip.js.map +1 -0
  99. package/dist/components/lmvz-header.js +2 -1
  100. package/dist/components/lmvz-header.js.map +1 -0
  101. package/dist/components/lmvz-icon.js +2 -1
  102. package/dist/components/lmvz-icon.js.map +1 -0
  103. package/dist/components/lmvz-input.js +2 -1
  104. package/dist/components/lmvz-input.js.map +1 -0
  105. package/dist/components/lmvz-menuitem.js +2 -1
  106. package/dist/components/lmvz-menuitem.js.map +1 -0
  107. package/dist/components/lmvz-select.d.ts +11 -0
  108. package/dist/components/lmvz-select.js +2 -0
  109. package/dist/components/lmvz-select.js.map +1 -0
  110. package/dist/components/p-B2g3aN-E.js +2 -0
  111. package/dist/components/p-B2g3aN-E.js.map +1 -0
  112. package/dist/components/p-BXdOuZTp.js +2 -0
  113. package/dist/components/p-BXdOuZTp.js.map +1 -0
  114. package/dist/components/p-BfTCfPZ1.js +3 -2
  115. package/dist/components/p-BfTCfPZ1.js.map +1 -0
  116. package/dist/components/p-BpCjj39Z.js +2 -0
  117. package/dist/components/p-BpCjj39Z.js.map +1 -0
  118. package/dist/components/p-BsHYIl56.js +2 -0
  119. package/dist/components/p-BsHYIl56.js.map +1 -0
  120. package/dist/components/p-C5rqq3bf.js +2 -0
  121. package/dist/components/p-C5rqq3bf.js.map +1 -0
  122. package/dist/components/p-CI0tffvo.js +2 -0
  123. package/dist/components/p-CI0tffvo.js.map +1 -0
  124. package/dist/components/p-CN0JX9-m.js +2 -1
  125. package/dist/components/p-CN0JX9-m.js.map +1 -0
  126. package/dist/components/p-ClmDNIy4.js +2 -0
  127. package/dist/components/p-ClmDNIy4.js.map +1 -0
  128. package/dist/components/p-DQEkWkMh.js +2 -0
  129. package/dist/components/p-DQEkWkMh.js.map +1 -0
  130. package/dist/components/p-X5fEFT9T.js +2 -0
  131. package/dist/components/p-X5fEFT9T.js.map +1 -0
  132. package/dist/components/p-vIq2biqy.js +13 -0
  133. package/dist/components/p-vIq2biqy.js.map +1 -0
  134. package/dist/esm/app-globals-DQuL1Twl.js +3 -0
  135. package/dist/esm/app-globals-DQuL1Twl.js.map +1 -0
  136. package/dist/esm/{assets-CvV1KMMV.js → assets-BD98wsl7.js} +4 -1
  137. package/dist/esm/assets-BD98wsl7.js.map +1 -0
  138. package/dist/esm/header-integration_7.entry.js +1016 -0
  139. package/dist/esm/header-integration_7.entry.js.map +1 -0
  140. package/dist/esm/{Effect-DyamyJqO.js → icons-D1lxdRXP.js} +975 -174
  141. package/dist/esm/icons-D1lxdRXP.js.map +1 -0
  142. package/dist/esm/{index-CekEw3_K.js → index-DoNkkDv1.js} +6 -1
  143. package/dist/esm/index-DoNkkDv1.js.map +1 -0
  144. package/dist/esm/{index-smGPjoDX.js → index-WeqgWisK.js} +11 -651
  145. package/dist/esm/index-WeqgWisK.js.map +1 -0
  146. package/dist/esm/index.js +7 -5
  147. package/dist/esm/index.js.map +1 -0
  148. package/dist/esm/lmvz-action.entry.js +5 -2
  149. package/dist/esm/lmvz-action.entry.js.map +1 -0
  150. package/dist/esm/lmvz-card.entry.js +7 -4
  151. package/dist/esm/lmvz-card.entry.js.map +1 -0
  152. package/dist/esm/lmvz-chip.entry.js +5 -2
  153. package/dist/esm/lmvz-chip.entry.js.map +1 -0
  154. package/dist/esm/lmvz-components.js +7 -4
  155. package/dist/esm/lmvz-components.js.map +1 -0
  156. package/dist/esm/loader.js +6 -3
  157. package/dist/esm/loader.js.map +1 -0
  158. package/dist/ext-libs.d.ts +1 -0
  159. package/dist/lmvz-components/index.esm.js +2 -1
  160. package/dist/lmvz-components/index.esm.js.map +1 -0
  161. package/dist/lmvz-components/lmvz-components.esm.js +2 -1
  162. package/dist/lmvz-components/lmvz-components.esm.js.map +1 -0
  163. package/dist/lmvz-components/p-33485219.entry.js +2 -0
  164. package/dist/lmvz-components/p-33485219.entry.js.map +1 -0
  165. package/dist/lmvz-components/p-76032c32.entry.js +2 -0
  166. package/dist/lmvz-components/p-76032c32.entry.js.map +1 -0
  167. package/dist/lmvz-components/p-7aeec9a8.entry.js +7 -0
  168. package/dist/lmvz-components/p-7aeec9a8.entry.js.map +1 -0
  169. package/dist/lmvz-components/p-84e0a9dd.entry.js +2 -0
  170. package/dist/lmvz-components/p-84e0a9dd.entry.js.map +1 -0
  171. package/dist/lmvz-components/p-CkJb8WVZ.js +2 -0
  172. package/dist/lmvz-components/p-CkJb8WVZ.js.map +1 -0
  173. package/dist/lmvz-components/p-DQuL1Twl.js +2 -1
  174. package/dist/lmvz-components/p-DQuL1Twl.js.map +1 -0
  175. package/dist/lmvz-components/p-WeqgWisK.js +3 -0
  176. package/dist/lmvz-components/p-WeqgWisK.js.map +1 -0
  177. package/dist/lmvz-components/p-Z9X0_ik0.js +2 -0
  178. package/dist/lmvz-components/p-Z9X0_ik0.js.map +1 -0
  179. package/dist/lmvz-components/p-eP0oxQ44.js +13 -0
  180. package/dist/lmvz-components/p-eP0oxQ44.js.map +1 -0
  181. package/dist/manifest.json +392 -68
  182. package/dist/stencil.config.base.js +45 -0
  183. package/dist/stencil.config.base.js.map +1 -0
  184. package/dist/stencil.config.dev.js +22 -0
  185. package/dist/stencil.config.dev.js.map +1 -0
  186. package/dist/stencil.config.integration.js +27 -0
  187. package/dist/stencil.config.integration.js.map +1 -0
  188. package/dist/stencil.config.js +16 -0
  189. package/dist/stencil.config.js.map +1 -0
  190. package/dist/stencil.config.prod.js +30 -0
  191. package/dist/stencil.config.prod.js.map +1 -0
  192. package/dist/types/Users/patrick.nemenz/workspace/lmvz/lmvz-ds/packages/components/.stencil/stencil.config.base.d.ts +2 -0
  193. package/dist/types/Users/patrick.nemenz/workspace/lmvz/lmvz-ds/packages/components/.stencil/stencil.config.d.ts +2 -0
  194. package/dist/types/Users/patrick.nemenz/workspace/lmvz/lmvz-ds/packages/components/.stencil/stencil.config.dev.d.ts +2 -0
  195. package/dist/types/Users/patrick.nemenz/workspace/lmvz/lmvz-ds/packages/components/.stencil/stencil.config.integration.d.ts +2 -0
  196. package/dist/types/Users/patrick.nemenz/workspace/lmvz/lmvz-ds/packages/components/.stencil/stencil.config.prod.d.ts +2 -0
  197. package/dist/types/components/lmvz-action/lmvz-action.d.ts +1 -1
  198. package/dist/types/components/lmvz-button/lmvz-button.d.ts +2 -2
  199. package/dist/types/components/lmvz-card/lmvz-card.d.ts +1 -1
  200. package/dist/types/components/lmvz-header/lmvz-header.d.ts +4 -4
  201. package/dist/types/components/lmvz-icon/lmvz-icon.d.ts +4 -4
  202. package/dist/types/components/lmvz-input/lmvz-input.d.ts +4 -4
  203. package/dist/types/components/lmvz-menuitem/lmvz-menuitem.d.ts +3 -3
  204. package/dist/types/components/lmvz-select/lmvz-select.d.ts +24 -0
  205. package/dist/types/components.d.ts +173 -3
  206. package/dist/types/index.d.ts +1 -1
  207. package/dist/types/integration/header-integration.d.ts +5 -0
  208. package/dist/types/utils/aria/aria-validation-controller.d.ts +1 -1
  209. package/dist/types/utils/aria/element-activation-controller.d.ts +1 -1
  210. package/dist/types/utils/component.d.ts +2 -2
  211. package/dist/types/utils/http.d.ts +3 -3
  212. package/dist/types/utils/validation/svg.d.ts +1 -1
  213. package/hydrate/index.js +998 -436
  214. package/hydrate/index.mjs +998 -436
  215. package/package.json +37 -73
  216. package/readme.md +2 -2
  217. package/dist/cjs/aria-loader-BBKbBZLq.js +0 -76
  218. package/dist/cjs/component-CRc6eHcV.js +0 -138
  219. package/dist/cjs/element-activation-controller-DC_6T0Rt.js +0 -31
  220. package/dist/cjs/icons-Brr4vqiE.js +0 -653
  221. package/dist/cjs/index-Bp6Dd2i1.js +0 -94
  222. package/dist/cjs/lmvz-button.cjs.entry.js +0 -73
  223. package/dist/cjs/lmvz-header.cjs.entry.js +0 -142
  224. package/dist/cjs/lmvz-icon.cjs.entry.js +0 -87
  225. package/dist/cjs/lmvz-input.cjs.entry.js +0 -177
  226. package/dist/cjs/lmvz-menuitem.cjs.entry.js +0 -34
  227. package/dist/cjs/reactive-controller-host-DWpVosFu.js +0 -189
  228. package/dist/collection/utils/typing.js +0 -1
  229. package/dist/components/p-B3JVFwO1.js +0 -1
  230. package/dist/components/p-BaPwpeMs.js +0 -1
  231. package/dist/components/p-CSRpdnrt.js +0 -1
  232. package/dist/components/p-DK2hpvEW.js +0 -12
  233. package/dist/components/p-DcMNH3fv.js +0 -1
  234. package/dist/components/p-DugBvwmd.js +0 -1
  235. package/dist/esm/aria-loader-DB71Xewa.js +0 -69
  236. package/dist/esm/component-B3JVFwO1.js +0 -132
  237. package/dist/esm/element-activation-controller-CN0JX9-m.js +0 -29
  238. package/dist/esm/icons-C69Um2xB.js +0 -649
  239. package/dist/esm/index-BfTCfPZ1.js +0 -92
  240. package/dist/esm/lmvz-button.entry.js +0 -71
  241. package/dist/esm/lmvz-header.entry.js +0 -140
  242. package/dist/esm/lmvz-icon.entry.js +0 -85
  243. package/dist/esm/lmvz-input.entry.js +0 -175
  244. package/dist/esm/lmvz-menuitem.entry.js +0 -32
  245. package/dist/esm/reactive-controller-host-1nFoJEdT.js +0 -186
  246. package/dist/lmvz-components/p-0e5aa1a3.entry.js +0 -1
  247. package/dist/lmvz-components/p-18c18de4.entry.js +0 -1
  248. package/dist/lmvz-components/p-5775a56c.entry.js +0 -1
  249. package/dist/lmvz-components/p-814ee542.entry.js +0 -1
  250. package/dist/lmvz-components/p-9faac8f3.entry.js +0 -1
  251. package/dist/lmvz-components/p-B3JVFwO1.js +0 -1
  252. package/dist/lmvz-components/p-B3j8zrhV.js +0 -1
  253. package/dist/lmvz-components/p-BEoSvNlI.js +0 -1
  254. package/dist/lmvz-components/p-BTpia82J.js +0 -1
  255. package/dist/lmvz-components/p-BfTCfPZ1.js +0 -6
  256. package/dist/lmvz-components/p-CN0JX9-m.js +0 -1
  257. package/dist/lmvz-components/p-D7GrtdQF.js +0 -1
  258. package/dist/lmvz-components/p-DyamyJqO.js +0 -1
  259. package/dist/lmvz-components/p-c61f7daa.entry.js +0 -1
  260. package/dist/lmvz-components/p-c6bae21b.entry.js +0 -1
  261. package/dist/lmvz-components/p-cM67HC0Z.js +0 -12
  262. package/dist/lmvz-components/p-d4b68381.entry.js +0 -1
  263. package/dist/lmvz-components/p-smGPjoDX.js +0 -2
  264. package/dist/types/utils/typing.d.ts +0 -3
package/hydrate/index.js CHANGED
@@ -136,7 +136,7 @@ const NAMESPACE = 'lmvz-components';
136
136
  const BUILD = /* lmvz-components */ { hotModuleReplacement: false, hydratedSelectorName: "hydrated", slotRelocation: true, state: true, updatable: true};
137
137
 
138
138
  /*
139
- Stencil Hydrate Platform v4.43.2 | MIT Licensed | https://stenciljs.com
139
+ Stencil Hydrate Platform v4.43.3 | MIT Licensed | https://stenciljs.com
140
140
  */
141
141
  var __create = Object.create;
142
142
  var __defProp = Object.defineProperty;
@@ -171,7 +171,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
171
171
  __defProp(target, "default", { value: mod, enumerable: true }) ,
172
172
  mod
173
173
  ));
174
- var __publicField = (obj, key, value) => __defNormalProp(obj, key + "" , value);
174
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
175
175
  var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
176
176
  var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
177
177
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
@@ -422,9 +422,9 @@ function getPropertyDescriptor(obj, memberName, getOnly) {
422
422
 
423
423
  // src/utils/es2022-rewire-class-members.ts
424
424
  var reWireGetterSetter = (instance, hostRef) => {
425
- var _a;
425
+ var _a2;
426
426
  const cmpMeta = hostRef.$cmpMeta$;
427
- const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
427
+ const members = Object.entries((_a2 = cmpMeta.$members$) != null ? _a2 : {});
428
428
  members.map(([memberName, [memberFlags]]) => {
429
429
  if ((memberFlags & 31 /* Prop */ || memberFlags & 32 /* State */)) {
430
430
  const ogValue = instance[memberName];
@@ -482,13 +482,13 @@ function createStyleSheetIfNeededAndSupported(styles2) {
482
482
  // src/utils/shadow-root.ts
483
483
  var globalStyleSheet;
484
484
  function createShadowRoot(cmpMeta) {
485
- var _a;
485
+ var _a2;
486
486
  const opts = { mode: "open" };
487
487
  {
488
488
  opts.delegatesFocus = !!(cmpMeta.$flags$ & 16 /* shadowDelegatesFocus */);
489
489
  }
490
490
  const shadowRoot = this.attachShadow(opts);
491
- if (globalStyleSheet === void 0) globalStyleSheet = (_a = createStyleSheetIfNeededAndSupported()) != null ? _a : null;
491
+ if (globalStyleSheet === void 0) globalStyleSheet = (_a2 = createStyleSheetIfNeededAndSupported()) != null ? _a2 : null;
492
492
  if (globalStyleSheet) {
493
493
  {
494
494
  shadowRoot.adoptedStyleSheets = [...shadowRoot.adoptedStyleSheets, globalStyleSheet];
@@ -624,8 +624,8 @@ function dispatchSlotChangeEvent(elm) {
624
624
  elm.dispatchEvent(new CustomEvent("slotchange", { bubbles: false, cancelable: false, composed: false }));
625
625
  }
626
626
  function findSlotFromSlottedNode(slottedNode, parentHost) {
627
- var _a;
628
- parentHost = parentHost || ((_a = slottedNode["s-ol"]) == null ? void 0 : _a.parentElement);
627
+ var _a2;
628
+ parentHost = parentHost || ((_a2 = slottedNode["s-ol"]) == null ? void 0 : _a2.parentElement);
629
629
  if (!parentHost) return { slotNode: null, slotName: "" };
630
630
  const slotName = slottedNode["s-sn"] = getSlotName(slottedNode) || "";
631
631
  const childNodes = internalCall(parentHost, "childNodes");
@@ -659,8 +659,8 @@ var uniqueTime = (key, measureText) => {
659
659
 
660
660
  // src/utils/query-nonce-meta-tag-content.ts
661
661
  function queryNonceMetaTagContent(doc) {
662
- var _a, _b, _c;
663
- return (_c = (_b = (_a = doc.head) == null ? void 0 : _a.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
662
+ var _a2, _b, _c;
663
+ return (_c = (_b = (_a2 = doc.head) == null ? void 0 : _a2.querySelector('meta[name="csp-nonce"]')) == null ? void 0 : _b.getAttribute("content")) != null ? _c : void 0;
664
664
  }
665
665
 
666
666
  // src/runtime/styles.ts
@@ -673,7 +673,7 @@ var registerStyle = (scopeId2, cssText, allowCS) => {
673
673
  styles.set(scopeId2, style);
674
674
  };
675
675
  var addStyle = (styleContainerNode, cmpMeta, mode) => {
676
- var _a;
676
+ var _a2;
677
677
  const scopeId2 = getScopeId(cmpMeta);
678
678
  const style = styles.get(scopeId2);
679
679
  if (!win.document) {
@@ -694,7 +694,7 @@ var addStyle = (styleContainerNode, cmpMeta, mode) => {
694
694
  } else if (!appliedStyles.has(scopeId2)) {
695
695
  styleElm = win.document.createElement("style");
696
696
  styleElm.textContent = style;
697
- const nonce = (_a = plt.$nonce$) != null ? _a : queryNonceMetaTagContent(win.document);
697
+ const nonce = (_a2 = plt.$nonce$) != null ? _a2 : queryNonceMetaTagContent(win.document);
698
698
  if (nonce != null) {
699
699
  styleElm.setAttribute("nonce", nonce);
700
700
  }
@@ -841,7 +841,7 @@ var isHost = (node) => node && node.$tag$ === Host;
841
841
 
842
842
  // src/runtime/client-hydrate.ts
843
843
  var initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => {
844
- var _a, _b, _c, _d;
844
+ var _a2, _b, _c, _d;
845
845
  const endHydrate = createTime("hydrateClient", tagName);
846
846
  const shadowRoot = hostElm.shadowRoot;
847
847
  const childRenderNodes = [];
@@ -888,7 +888,7 @@ var initializeClientHydrate = (hostElm, tagName, hostId, hostRef) => {
888
888
  if (childRenderNode.$tag$ === "slot") {
889
889
  node["s-cr"] = hostElm["s-cr"];
890
890
  }
891
- } else if (((_a = childRenderNode.$tag$) == null ? void 0 : _a.toString().includes("-")) && childRenderNode.$tag$ !== "slot-fb" && !childRenderNode.$elm$.shadowRoot) {
891
+ } else if (((_a2 = childRenderNode.$tag$) == null ? void 0 : _a2.toString().includes("-")) && childRenderNode.$tag$ !== "slot-fb" && !childRenderNode.$elm$.shadowRoot) {
892
892
  const cmpMeta = getHostRef(childRenderNode.$elm$);
893
893
  if (cmpMeta) {
894
894
  const scopeId3 = getScopeId(
@@ -1233,10 +1233,10 @@ function addSlot(slotName, slotId, childVNode, node, parentVNode, childRenderNod
1233
1233
  parentVNode.$children$[childVNode.$index$] = childVNode;
1234
1234
  }
1235
1235
  var addSlottedNodes = (slottedNodes, slotNodeId, slotName, slotNode, hostId) => {
1236
- var _a, _b;
1236
+ var _a2, _b;
1237
1237
  let slottedNode = slotNode.nextSibling;
1238
1238
  slottedNodes[slotNodeId] = slottedNodes[slotNodeId] || [];
1239
- if (!slottedNode || ((_a = slottedNode.nodeValue) == null ? void 0 : _a.startsWith(SLOT_NODE_ID + "."))) return;
1239
+ if (!slottedNode || ((_a2 = slottedNode.nodeValue) == null ? void 0 : _a2.startsWith(SLOT_NODE_ID + "."))) return;
1240
1240
  do {
1241
1241
  if (slottedNode && ((slottedNode["getAttribute"] && slottedNode.getAttribute("slot") || slottedNode["s-sn"]) === slotName || slotName === "" && !slottedNode["s-sn"] && (!slottedNode["getAttribute"] || !slottedNode.getAttribute("slot")) && (slottedNode.nodeType === 8 /* CommentNode */ || slottedNode.nodeType === 3 /* TextNode */))) {
1242
1242
  slottedNode["s-sn"] = slotName;
@@ -1792,8 +1792,8 @@ var parsePropertyValue = (propValue, propType, isFormAssociated) => {
1792
1792
  return propValue;
1793
1793
  };
1794
1794
  var getElement = (ref) => {
1795
- var _a;
1796
- return (_a = getHostRef(ref)) == null ? void 0 : _a.$hostElement$ ;
1795
+ var _a2;
1796
+ return (_a2 = getHostRef(ref)) == null ? void 0 : _a2.$hostElement$ ;
1797
1797
  };
1798
1798
 
1799
1799
  // src/runtime/event-emitter.ts
@@ -2018,7 +2018,7 @@ var isSvgMode = false;
2018
2018
  var refCallbacksToRemove = [];
2019
2019
  var refCallbacksToAttach = [];
2020
2020
  var createElm = (oldParentVNode, newParentVNode, childIndex) => {
2021
- var _a;
2021
+ var _a2;
2022
2022
  const newVNode2 = newParentVNode.$children$[childIndex];
2023
2023
  let i2 = 0;
2024
2024
  let elm;
@@ -2075,7 +2075,7 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
2075
2075
  elm["s-sr"] = true;
2076
2076
  elm["s-cr"] = contentRef;
2077
2077
  elm["s-sn"] = newVNode2.$name$ || "";
2078
- elm["s-rf"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;
2078
+ elm["s-rf"] = (_a2 = newVNode2.$attrs$) == null ? void 0 : _a2.ref;
2079
2079
  patchSlotNode(elm);
2080
2080
  oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
2081
2081
  if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {
@@ -2411,12 +2411,12 @@ var insertBefore = (parent, newNode, reference, isInitialLoad) => {
2411
2411
  }
2412
2412
  };
2413
2413
  function addRemoveSlotScopedClass(reference, slotNode, newParent, oldParent) {
2414
- var _a, _b;
2414
+ var _a2, _b;
2415
2415
  let scopeId2;
2416
2416
  if (reference && typeof slotNode["s-sn"] === "string" && !!slotNode["s-sr"] && reference.parentNode && reference.parentNode["s-sc"] && (scopeId2 = slotNode["s-si"] || reference.parentNode["s-sc"])) {
2417
2417
  const scopeName = slotNode["s-sn"];
2418
2418
  const hostName = slotNode["s-hn"];
2419
- (_a = newParent.classList) == null ? void 0 : _a.add(scopeId2 + "-s");
2419
+ (_a2 = newParent.classList) == null ? void 0 : _a2.add(scopeId2 + "-s");
2420
2420
  if (oldParent && ((_b = oldParent.classList) == null ? void 0 : _b.contains(scopeId2 + "-s"))) {
2421
2421
  let child = (oldParent.__childNodes || oldParent.childNodes)[0];
2422
2422
  let found = false;
@@ -2432,7 +2432,7 @@ function addRemoveSlotScopedClass(reference, slotNode, newParent, oldParent) {
2432
2432
  }
2433
2433
  }
2434
2434
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
2435
- var _a, _d, _e;
2435
+ var _a2, _d, _e;
2436
2436
  const hostElm = hostRef.$hostElement$;
2437
2437
  const cmpMeta = hostRef.$cmpMeta$;
2438
2438
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
@@ -2488,7 +2488,7 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
2488
2488
  const nodeToRelocate = relocateData.$nodeToRelocate$;
2489
2489
  const slotRefNode = relocateData.$slotRefNode$;
2490
2490
  if (nodeToRelocate.nodeType === 1 /* ElementNode */ && isInitialLoad) {
2491
- nodeToRelocate["s-ih"] = (_a = nodeToRelocate.hidden) != null ? _a : false;
2491
+ nodeToRelocate["s-ih"] = (_a2 = nodeToRelocate.hidden) != null ? _a2 : false;
2492
2492
  }
2493
2493
  if (slotRefNode) {
2494
2494
  const parentNodeRef = slotRefNode.parentNode;
@@ -2548,14 +2548,14 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
2548
2548
  flushQueuedRefCallbacks();
2549
2549
  };
2550
2550
  var slotReferenceDebugNode = (slotVNode) => {
2551
- var _a;
2552
- return (_a = win.document) == null ? void 0 : _a.createComment(
2551
+ var _a2;
2552
+ return (_a2 = win.document) == null ? void 0 : _a2.createComment(
2553
2553
  `<slot${slotVNode.$name$ ? ' name="' + slotVNode.$name$ + '"' : ""}> (host=${hostTagName.toLowerCase()})`
2554
2554
  );
2555
2555
  };
2556
2556
  var originalLocationDebugNode = (nodeToRelocate) => {
2557
- var _a;
2558
- return (_a = win.document) == null ? void 0 : _a.createComment(
2557
+ var _a2;
2558
+ return (_a2 = win.document) == null ? void 0 : _a2.createComment(
2559
2559
  `org-location for ` + (nodeToRelocate.localName ? `<${nodeToRelocate.localName}> (host=${nodeToRelocate["s-hn"]})` : `[${nodeToRelocate.textContent}]`)
2560
2560
  );
2561
2561
  };
@@ -2625,7 +2625,7 @@ var enqueue = (maybePromise, fn) => isPromisey(maybePromise) ? maybePromise.then
2625
2625
  }) : fn();
2626
2626
  var isPromisey = (maybePromise) => maybePromise instanceof Promise || maybePromise && maybePromise.then && typeof maybePromise.then === "function";
2627
2627
  var updateComponent = async (hostRef, instance, isInitialLoad) => {
2628
- var _a;
2628
+ var _a2;
2629
2629
  const elm = hostRef.$hostElement$;
2630
2630
  const endUpdate = createTime("update", hostRef.$cmpMeta$.$tagName$);
2631
2631
  const rc = elm["s-rc"];
@@ -2657,7 +2657,7 @@ var updateComponent = async (hostRef, instance, isInitialLoad) => {
2657
2657
  endRender();
2658
2658
  endUpdate();
2659
2659
  {
2660
- const childrenPromises = (_a = elm["s-p"]) != null ? _a : [];
2660
+ const childrenPromises = (_a2 = elm["s-p"]) != null ? _a2 : [];
2661
2661
  const postUpdate = () => postUpdateComponent(hostRef);
2662
2662
  if (childrenPromises.length === 0) {
2663
2663
  postUpdate();
@@ -2728,13 +2728,13 @@ var postUpdateComponent = (hostRef) => {
2728
2728
  }
2729
2729
  };
2730
2730
  var appDidLoad = (who) => {
2731
- var _a;
2731
+ var _a2;
2732
2732
  if (BUILD.asyncQueue) {
2733
2733
  plt.$flags$ |= 2 /* appLoaded */;
2734
2734
  }
2735
2735
  nextTick(() => emitEvent(win, "appload", { detail: { namespace: NAMESPACE } }));
2736
2736
  {
2737
- if ((_a = plt.$orgLocNodes$) == null ? void 0 : _a.size) {
2737
+ if ((_a2 = plt.$orgLocNodes$) == null ? void 0 : _a2.size) {
2738
2738
  plt.$orgLocNodes$.clear();
2739
2739
  }
2740
2740
  }
@@ -2750,8 +2750,8 @@ var safeCall = (instance, method, arg, elm) => {
2750
2750
  return void 0;
2751
2751
  };
2752
2752
  var addHydratedFlag = (elm) => {
2753
- var _a;
2754
- return elm.classList.add((_a = BUILD.hydratedSelectorName) != null ? _a : "hydrated") ;
2753
+ var _a2;
2754
+ return elm.classList.add((_a2 = BUILD.hydratedSelectorName) != null ? _a2 : "hydrated") ;
2755
2755
  };
2756
2756
  var serverSideConnected = (elm) => {
2757
2757
  const children = elm.children;
@@ -2828,7 +2828,7 @@ var setValue = (ref, propName, newVal, cmpMeta) => {
2828
2828
 
2829
2829
  // src/runtime/proxy-component.ts
2830
2830
  var proxyComponent = (Cstr, cmpMeta, flags) => {
2831
- var _a;
2831
+ var _a2;
2832
2832
  const prototype = Cstr.prototype;
2833
2833
  {
2834
2834
  {
@@ -2842,7 +2842,7 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
2842
2842
  cmpMeta.$serializers$ = Cstr.serializers;
2843
2843
  }
2844
2844
  }
2845
- const members = Object.entries((_a = cmpMeta.$members$) != null ? _a : {});
2845
+ const members = Object.entries((_a2 = cmpMeta.$members$) != null ? _a2 : {});
2846
2846
  members.map(([memberName, [memberFlags]]) => {
2847
2847
  if ((memberFlags & 31 /* Prop */ || memberFlags & 32 /* State */)) {
2848
2848
  const { get: origGetter, set: origSetter } = getPropertyDescriptor(prototype, memberName) || {};
@@ -3076,7 +3076,7 @@ var insertVdomAnnotations = (doc, staticComponents) => {
3076
3076
  const orgLocationNodes = [];
3077
3077
  parseVNodeAnnotations(doc, doc.body, docData, orgLocationNodes);
3078
3078
  orgLocationNodes.forEach((orgLocationNode) => {
3079
- var _a;
3079
+ var _a2;
3080
3080
  if (orgLocationNode != null && orgLocationNode["s-nr"]) {
3081
3081
  const nodeRef = orgLocationNode["s-nr"];
3082
3082
  let hostId = nodeRef["s-host-id"];
@@ -3094,7 +3094,7 @@ var insertVdomAnnotations = (doc, staticComponents) => {
3094
3094
  }
3095
3095
  } else if (nodeRef.nodeType === 3 /* TextNode */) {
3096
3096
  if (hostId === 0) {
3097
- const textContent = (_a = nodeRef.nodeValue) == null ? void 0 : _a.trim();
3097
+ const textContent = (_a2 = nodeRef.nodeValue) == null ? void 0 : _a2.trim();
3098
3098
  if (textContent === "") {
3099
3099
  orgLocationNode.remove();
3100
3100
  return;
@@ -3124,7 +3124,7 @@ var insertVdomAnnotations = (doc, staticComponents) => {
3124
3124
  }
3125
3125
  };
3126
3126
  var parseVNodeAnnotations = (doc, node, docData, orgLocationNodes) => {
3127
- var _a;
3127
+ var _a2;
3128
3128
  if (node == null) {
3129
3129
  return;
3130
3130
  }
@@ -3132,7 +3132,7 @@ var parseVNodeAnnotations = (doc, node, docData, orgLocationNodes) => {
3132
3132
  orgLocationNodes.push(node);
3133
3133
  }
3134
3134
  if (node.nodeType === 1 /* ElementNode */) {
3135
- const childNodes = [...Array.from(node.childNodes), ...Array.from(((_a = node.shadowRoot) == null ? void 0 : _a.childNodes) || [])];
3135
+ const childNodes = [...Array.from(node.childNodes), ...Array.from(((_a2 = node.shadowRoot) == null ? void 0 : _a2.childNodes) || [])];
3136
3136
  childNodes.forEach((childNode) => {
3137
3137
  const hostRef = getHostRef(childNode);
3138
3138
  if (hostRef != null && !docData.staticComponents.has(childNode.nodeName.toLowerCase())) {
@@ -3358,8 +3358,35 @@ var unescape = (s, { windowsPathsNoEscape = false } = {}) => {
3358
3358
  };
3359
3359
 
3360
3360
  // node_modules/minimatch/dist/esm/ast.js
3361
+ var _a;
3361
3362
  var types = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
3362
3363
  var isExtglobType = (c) => types.has(c);
3364
+ var isExtglobAST = (c) => isExtglobType(c.type);
3365
+ var adoptionMap = /* @__PURE__ */ new Map([
3366
+ ["!", ["@"]],
3367
+ ["?", ["?", "@"]],
3368
+ ["@", ["@"]],
3369
+ ["*", ["*", "+", "?", "@"]],
3370
+ ["+", ["+", "@"]]
3371
+ ]);
3372
+ var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
3373
+ ["!", ["?"]],
3374
+ ["@", ["?"]],
3375
+ ["+", ["?", "*"]]
3376
+ ]);
3377
+ var adoptionAnyMap = /* @__PURE__ */ new Map([
3378
+ ["!", ["?", "@"]],
3379
+ ["?", ["?", "@"]],
3380
+ ["@", ["?", "@"]],
3381
+ ["*", ["*", "+", "?", "@"]],
3382
+ ["+", ["+", "@", "?", "*"]]
3383
+ ]);
3384
+ var usurpMap = /* @__PURE__ */ new Map([
3385
+ ["!", /* @__PURE__ */ new Map([["!", "@"]])],
3386
+ ["?", /* @__PURE__ */ new Map([["*", "*"], ["+", "*"]])],
3387
+ ["@", /* @__PURE__ */ new Map([["!", "!"], ["?", "?"], ["@", "@"], ["*", "*"], ["+", "+"]])],
3388
+ ["+", /* @__PURE__ */ new Map([["?", "*"], ["*", "*"]])]
3389
+ ]);
3363
3390
  var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
3364
3391
  var startNoDot = "(?!\\.)";
3365
3392
  var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
@@ -3369,8 +3396,8 @@ var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
3369
3396
  var qmark = "[^/]";
3370
3397
  var star = qmark + "*?";
3371
3398
  var starNoEmpty = qmark + "+?";
3372
- var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _AST_instances, fillNegs_fn, _AST_static, parseAST_fn, partsToRegExp_fn, parseGlob_fn;
3373
- var _AST = class _AST {
3399
+ var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _AST_instances, fillNegs_fn, _AST_static, parseAST_fn, canAdoptWithSpace_fn, canAdopt_fn, canAdoptType_fn, adoptWithSpace_fn, adopt_fn, canUsurpType_fn, canUsurp_fn, usurp_fn, flatten_fn, partsToRegExp_fn, parseGlob_fn;
3400
+ var AST = class {
3374
3401
  constructor(type, parent, options = {}) {
3375
3402
  __privateAdd(this, _AST_instances);
3376
3403
  __publicField(this, "type");
@@ -3423,44 +3450,44 @@ var _AST = class _AST {
3423
3450
  for (const p of parts) {
3424
3451
  if (p === "")
3425
3452
  continue;
3426
- if (typeof p !== "string" && !(p instanceof _AST && __privateGet(p, _parent) === this)) {
3453
+ if (typeof p !== "string" && !(p instanceof _a && __privateGet(p, _parent) === this)) {
3427
3454
  throw new Error("invalid part: " + p);
3428
3455
  }
3429
3456
  __privateGet(this, _parts).push(p);
3430
3457
  }
3431
3458
  }
3432
3459
  toJSON() {
3433
- var _a;
3460
+ var _a2;
3434
3461
  const ret = this.type === null ? __privateGet(this, _parts).slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...__privateGet(this, _parts).map((p) => p.toJSON())];
3435
3462
  if (this.isStart() && !this.type)
3436
3463
  ret.unshift([]);
3437
- if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && ((_a = __privateGet(this, _parent)) == null ? void 0 : _a.type) === "!")) {
3464
+ if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && ((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!")) {
3438
3465
  ret.push({});
3439
3466
  }
3440
3467
  return ret;
3441
3468
  }
3442
3469
  isStart() {
3443
- var _a;
3470
+ var _a2;
3444
3471
  if (__privateGet(this, _root) === this)
3445
3472
  return true;
3446
- if (!((_a = __privateGet(this, _parent)) == null ? void 0 : _a.isStart()))
3473
+ if (!((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.isStart()))
3447
3474
  return false;
3448
3475
  if (__privateGet(this, _parentIndex) === 0)
3449
3476
  return true;
3450
3477
  const p = __privateGet(this, _parent);
3451
3478
  for (let i2 = 0; i2 < __privateGet(this, _parentIndex); i2++) {
3452
3479
  const pp = __privateGet(p, _parts)[i2];
3453
- if (!(pp instanceof _AST && pp.type === "!")) {
3480
+ if (!(pp instanceof _a && pp.type === "!")) {
3454
3481
  return false;
3455
3482
  }
3456
3483
  }
3457
3484
  return true;
3458
3485
  }
3459
3486
  isEnd() {
3460
- var _a, _b, _c;
3487
+ var _a2, _b, _c;
3461
3488
  if (__privateGet(this, _root) === this)
3462
3489
  return true;
3463
- if (((_a = __privateGet(this, _parent)) == null ? void 0 : _a.type) === "!")
3490
+ if (((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!")
3464
3491
  return true;
3465
3492
  if (!((_b = __privateGet(this, _parent)) == null ? void 0 : _b.isEnd()))
3466
3493
  return false;
@@ -3476,16 +3503,16 @@ var _AST = class _AST {
3476
3503
  this.push(part.clone(this));
3477
3504
  }
3478
3505
  clone(parent) {
3479
- const c = new _AST(this.type, parent);
3506
+ const c = new _a(this.type, parent);
3480
3507
  for (const p of __privateGet(this, _parts)) {
3481
3508
  c.copyIn(p);
3482
3509
  }
3483
3510
  return c;
3484
3511
  }
3485
3512
  static fromGlob(pattern, options = {}) {
3486
- var _a;
3487
- const ast = new _AST(null, void 0, options);
3488
- __privateMethod(_a = _AST, _AST_static, parseAST_fn).call(_a, pattern, ast, 0, options);
3513
+ var _a2;
3514
+ const ast = new _a(null, void 0, options);
3515
+ __privateMethod(_a2 = _a, _AST_static, parseAST_fn).call(_a2, pattern, ast, 0, options, 0);
3489
3516
  return ast;
3490
3517
  }
3491
3518
  // returns the regular expression if there's magic, or the unescaped
@@ -3578,15 +3605,17 @@ var _AST = class _AST {
3578
3605
  // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
3579
3606
  // or start or whatever) and prepend ^ or / at the Regexp construction.
3580
3607
  toRegExpSource(allowDot) {
3581
- var _a;
3608
+ var _a2;
3582
3609
  const dot = allowDot != null ? allowDot : !!__privateGet(this, _options).dot;
3583
- if (__privateGet(this, _root) === this)
3610
+ if (__privateGet(this, _root) === this) {
3611
+ __privateMethod(this, _AST_instances, flatten_fn).call(this);
3584
3612
  __privateMethod(this, _AST_instances, fillNegs_fn).call(this);
3585
- if (!this.type) {
3613
+ }
3614
+ if (!isExtglobAST(this)) {
3586
3615
  const noEmpty = this.isStart() && this.isEnd();
3587
3616
  const src = __privateGet(this, _parts).map((p) => {
3588
- var _a2;
3589
- const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a2 = _AST, _AST_static, parseGlob_fn).call(_a2, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot);
3617
+ var _a3;
3618
+ const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a3 = _a, _AST_static, parseGlob_fn).call(_a3, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot);
3590
3619
  __privateSet(this, _hasMagic, __privateGet(this, _hasMagic) || hasMagic);
3591
3620
  __privateSet(this, _uflag, __privateGet(this, _uflag) || uflag);
3592
3621
  return re;
@@ -3609,7 +3638,7 @@ var _AST = class _AST {
3609
3638
  }
3610
3639
  }
3611
3640
  let end = "";
3612
- if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && ((_a = __privateGet(this, _parent)) == null ? void 0 : _a.type) === "!") {
3641
+ if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && ((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!") {
3613
3642
  end = "(?:$|\\/)";
3614
3643
  }
3615
3644
  const final2 = start2 + src + end;
@@ -3625,9 +3654,10 @@ var _AST = class _AST {
3625
3654
  let body = __privateMethod(this, _AST_instances, partsToRegExp_fn).call(this, dot);
3626
3655
  if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
3627
3656
  const s = this.toString();
3628
- __privateSet(this, _parts, [s]);
3629
- this.type = null;
3630
- __privateSet(this, _hasMagic, void 0);
3657
+ const me = this;
3658
+ __privateSet(me, _parts, [s]);
3659
+ me.type = null;
3660
+ __privateSet(me, _hasMagic, void 0);
3631
3661
  return [s, unescape(this.toString()), false, false];
3632
3662
  }
3633
3663
  let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : __privateMethod(this, _AST_instances, partsToRegExp_fn).call(this, true);
@@ -3696,8 +3726,9 @@ fillNegs_fn = function() {
3696
3726
  return this;
3697
3727
  };
3698
3728
  _AST_static = new WeakSet();
3699
- parseAST_fn = function(str, ast, pos, opt) {
3700
- var _a, _b;
3729
+ parseAST_fn = function(str, ast, pos, opt, extDepth) {
3730
+ var _a2, _b, _c, _d, _e;
3731
+ const maxDepth = (_a2 = opt.maxExtglobRecursion) != null ? _a2 : 2;
3701
3732
  let escaping = false;
3702
3733
  let inBrace = false;
3703
3734
  let braceStart = -1;
@@ -3729,11 +3760,12 @@ parseAST_fn = function(str, ast, pos, opt) {
3729
3760
  acc2 += c;
3730
3761
  continue;
3731
3762
  }
3732
- if (!opt.noext && isExtglobType(c) && str.charAt(i3) === "(") {
3763
+ const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i3) === "(" && extDepth <= maxDepth;
3764
+ if (doRecurse) {
3733
3765
  ast.push(acc2);
3734
3766
  acc2 = "";
3735
- const ext2 = new _AST(c, ast);
3736
- i3 = __privateMethod(_a = _AST, _AST_static, parseAST_fn).call(_a, str, ext2, i3, opt);
3767
+ const ext2 = new _a(c, ast);
3768
+ i3 = __privateMethod(_b = _a, _AST_static, parseAST_fn).call(_b, str, ext2, i3, opt, extDepth + 1);
3737
3769
  ast.push(ext2);
3738
3770
  continue;
3739
3771
  }
@@ -3743,7 +3775,7 @@ parseAST_fn = function(str, ast, pos, opt) {
3743
3775
  return i3;
3744
3776
  }
3745
3777
  let i2 = pos + 1;
3746
- let part = new _AST(null, ast);
3778
+ let part = new _a(null, ast);
3747
3779
  const parts = [];
3748
3780
  let acc = "";
3749
3781
  while (i2 < str.length) {
@@ -3770,19 +3802,22 @@ parseAST_fn = function(str, ast, pos, opt) {
3770
3802
  acc += c;
3771
3803
  continue;
3772
3804
  }
3773
- if (isExtglobType(c) && str.charAt(i2) === "(") {
3805
+ const doRecurse = isExtglobType(c) && str.charAt(i2) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
3806
+ (extDepth <= maxDepth || ast && __privateMethod(_c = ast, _AST_instances, canAdoptType_fn).call(_c, c));
3807
+ if (doRecurse) {
3808
+ const depthAdd = ast && __privateMethod(_d = ast, _AST_instances, canAdoptType_fn).call(_d, c) ? 0 : 1;
3774
3809
  part.push(acc);
3775
3810
  acc = "";
3776
- const ext2 = new _AST(c, part);
3811
+ const ext2 = new _a(c, part);
3777
3812
  part.push(ext2);
3778
- i2 = __privateMethod(_b = _AST, _AST_static, parseAST_fn).call(_b, str, ext2, i2, opt);
3813
+ i2 = __privateMethod(_e = _a, _AST_static, parseAST_fn).call(_e, str, ext2, i2, opt, extDepth + depthAdd);
3779
3814
  continue;
3780
3815
  }
3781
3816
  if (c === "|") {
3782
3817
  part.push(acc);
3783
3818
  acc = "";
3784
3819
  parts.push(part);
3785
- part = new _AST(null, ast);
3820
+ part = new _a(null, ast);
3786
3821
  continue;
3787
3822
  }
3788
3823
  if (c === ")") {
@@ -3801,6 +3836,100 @@ parseAST_fn = function(str, ast, pos, opt) {
3801
3836
  __privateSet(ast, _parts, [str.substring(pos - 1)]);
3802
3837
  return i2;
3803
3838
  };
3839
+ canAdoptWithSpace_fn = function(child) {
3840
+ return __privateMethod(this, _AST_instances, canAdopt_fn).call(this, child, adoptionWithSpaceMap);
3841
+ };
3842
+ canAdopt_fn = function(child, map2 = adoptionMap) {
3843
+ if (!child || typeof child !== "object" || child.type !== null || __privateGet(child, _parts).length !== 1 || this.type === null) {
3844
+ return false;
3845
+ }
3846
+ const gc = __privateGet(child, _parts)[0];
3847
+ if (!gc || typeof gc !== "object" || gc.type === null) {
3848
+ return false;
3849
+ }
3850
+ return __privateMethod(this, _AST_instances, canAdoptType_fn).call(this, gc.type, map2);
3851
+ };
3852
+ canAdoptType_fn = function(c, map2 = adoptionAnyMap) {
3853
+ var _a2;
3854
+ return !!((_a2 = map2.get(this.type)) == null ? void 0 : _a2.includes(c));
3855
+ };
3856
+ adoptWithSpace_fn = function(child, index) {
3857
+ const gc = __privateGet(child, _parts)[0];
3858
+ const blank = new _a(null, gc, this.options);
3859
+ __privateGet(blank, _parts).push("");
3860
+ gc.push(blank);
3861
+ __privateMethod(this, _AST_instances, adopt_fn).call(this, child, index);
3862
+ };
3863
+ adopt_fn = function(child, index) {
3864
+ const gc = __privateGet(child, _parts)[0];
3865
+ __privateGet(this, _parts).splice(index, 1, ...__privateGet(gc, _parts));
3866
+ for (const p of __privateGet(gc, _parts)) {
3867
+ if (typeof p === "object")
3868
+ __privateSet(p, _parent, this);
3869
+ }
3870
+ __privateSet(this, _toString, void 0);
3871
+ };
3872
+ canUsurpType_fn = function(c) {
3873
+ const m = usurpMap.get(this.type);
3874
+ return !!(m == null ? void 0 : m.has(c));
3875
+ };
3876
+ canUsurp_fn = function(child) {
3877
+ if (!child || typeof child !== "object" || child.type !== null || __privateGet(child, _parts).length !== 1 || this.type === null || __privateGet(this, _parts).length !== 1) {
3878
+ return false;
3879
+ }
3880
+ const gc = __privateGet(child, _parts)[0];
3881
+ if (!gc || typeof gc !== "object" || gc.type === null) {
3882
+ return false;
3883
+ }
3884
+ return __privateMethod(this, _AST_instances, canUsurpType_fn).call(this, gc.type);
3885
+ };
3886
+ usurp_fn = function(child) {
3887
+ const m = usurpMap.get(this.type);
3888
+ const gc = __privateGet(child, _parts)[0];
3889
+ const nt = m == null ? void 0 : m.get(gc.type);
3890
+ if (!nt)
3891
+ return false;
3892
+ __privateSet(this, _parts, __privateGet(gc, _parts));
3893
+ for (const p of __privateGet(this, _parts)) {
3894
+ if (typeof p === "object")
3895
+ __privateSet(p, _parent, this);
3896
+ }
3897
+ this.type = nt;
3898
+ __privateSet(this, _toString, void 0);
3899
+ __privateSet(this, _emptyExt, false);
3900
+ };
3901
+ flatten_fn = function() {
3902
+ var _a2, _b;
3903
+ if (!isExtglobAST(this)) {
3904
+ for (const p of __privateGet(this, _parts)) {
3905
+ if (typeof p === "object")
3906
+ __privateMethod(_a2 = p, _AST_instances, flatten_fn).call(_a2);
3907
+ }
3908
+ } else {
3909
+ let iterations = 0;
3910
+ let done = false;
3911
+ do {
3912
+ done = true;
3913
+ for (let i2 = 0; i2 < __privateGet(this, _parts).length; i2++) {
3914
+ const c = __privateGet(this, _parts)[i2];
3915
+ if (typeof c === "object") {
3916
+ __privateMethod(_b = c, _AST_instances, flatten_fn).call(_b);
3917
+ if (__privateMethod(this, _AST_instances, canAdopt_fn).call(this, c)) {
3918
+ done = false;
3919
+ __privateMethod(this, _AST_instances, adopt_fn).call(this, c, i2);
3920
+ } else if (__privateMethod(this, _AST_instances, canAdoptWithSpace_fn).call(this, c)) {
3921
+ done = false;
3922
+ __privateMethod(this, _AST_instances, adoptWithSpace_fn).call(this, c, i2);
3923
+ } else if (__privateMethod(this, _AST_instances, canUsurp_fn).call(this, c)) {
3924
+ done = false;
3925
+ __privateMethod(this, _AST_instances, usurp_fn).call(this, c);
3926
+ }
3927
+ }
3928
+ }
3929
+ } while (!done && ++iterations < 10);
3930
+ }
3931
+ __privateSet(this, _toString, void 0);
3932
+ };
3804
3933
  partsToRegExp_fn = function(dot) {
3805
3934
  return __privateGet(this, _parts).map((p) => {
3806
3935
  if (typeof p === "string") {
@@ -3815,11 +3944,13 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
3815
3944
  let escaping = false;
3816
3945
  let re = "";
3817
3946
  let uflag = false;
3947
+ let inStar = false;
3818
3948
  for (let i2 = 0; i2 < glob.length; i2++) {
3819
3949
  const c = glob.charAt(i2);
3820
3950
  if (escaping) {
3821
3951
  escaping = false;
3822
3952
  re += (reSpecials.has(c) ? "\\" : "") + c;
3953
+ inStar = false;
3823
3954
  continue;
3824
3955
  }
3825
3956
  if (c === "\\") {
@@ -3837,16 +3968,19 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
3837
3968
  uflag = uflag || needUflag;
3838
3969
  i2 += consumed - 1;
3839
3970
  hasMagic = hasMagic || magic;
3971
+ inStar = false;
3840
3972
  continue;
3841
3973
  }
3842
3974
  }
3843
3975
  if (c === "*") {
3844
- if (noEmpty && glob === "*")
3845
- re += starNoEmpty;
3846
- else
3847
- re += star;
3976
+ if (inStar)
3977
+ continue;
3978
+ inStar = true;
3979
+ re += noEmpty && /^[*]+$/.test(glob) ? starNoEmpty : star;
3848
3980
  hasMagic = true;
3849
3981
  continue;
3982
+ } else {
3983
+ inStar = false;
3850
3984
  }
3851
3985
  if (c === "?") {
3852
3986
  re += qmark;
@@ -3857,8 +3991,8 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
3857
3991
  }
3858
3992
  return [re, unescape(glob), !!hasMagic, uflag];
3859
3993
  };
3860
- __privateAdd(_AST, _AST_static);
3861
- var AST = _AST;
3994
+ __privateAdd(AST, _AST_static);
3995
+ _a = AST;
3862
3996
 
3863
3997
  // node_modules/minimatch/dist/esm/escape.js
3864
3998
  var escape = (s, { windowsPathsNoEscape = false } = {}) => {
@@ -3997,28 +4131,33 @@ var match$1 = (list, pattern, options = {}) => {
3997
4131
  minimatch.match = match$1;
3998
4132
  var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
3999
4133
  var regExpEscape2 = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
4134
+ var _Minimatch_instances, matchGlobstar_fn, matchGlobStarBodySections_fn, matchOne_fn;
4000
4135
  var Minimatch = class {
4001
- options;
4002
- set;
4003
- pattern;
4004
- windowsPathsNoEscape;
4005
- nonegate;
4006
- negate;
4007
- comment;
4008
- empty;
4009
- preserveMultipleSlashes;
4010
- partial;
4011
- globSet;
4012
- globParts;
4013
- nocase;
4014
- isWindows;
4015
- platform;
4016
- windowsNoMagicRoot;
4017
- regexp;
4018
4136
  constructor(pattern, options = {}) {
4137
+ __privateAdd(this, _Minimatch_instances);
4138
+ __publicField(this, "options");
4139
+ __publicField(this, "set");
4140
+ __publicField(this, "pattern");
4141
+ __publicField(this, "windowsPathsNoEscape");
4142
+ __publicField(this, "nonegate");
4143
+ __publicField(this, "negate");
4144
+ __publicField(this, "comment");
4145
+ __publicField(this, "empty");
4146
+ __publicField(this, "preserveMultipleSlashes");
4147
+ __publicField(this, "partial");
4148
+ __publicField(this, "globSet");
4149
+ __publicField(this, "globParts");
4150
+ __publicField(this, "nocase");
4151
+ __publicField(this, "isWindows");
4152
+ __publicField(this, "platform");
4153
+ __publicField(this, "windowsNoMagicRoot");
4154
+ __publicField(this, "maxGlobstarRecursion");
4155
+ __publicField(this, "regexp");
4156
+ var _a2;
4019
4157
  assertValidPattern(pattern);
4020
4158
  options = options || {};
4021
4159
  this.options = options;
4160
+ this.maxGlobstarRecursion = (_a2 = options.maxGlobstarRecursion) != null ? _a2 : 200;
4022
4161
  this.pattern = pattern;
4023
4162
  this.platform = options.platform || defaultPlatform;
4024
4163
  this.isWindows = this.platform === "win32";
@@ -4286,10 +4425,11 @@ var Minimatch = class {
4286
4425
  for (let i2 = 0; i2 < globParts.length - 1; i2++) {
4287
4426
  for (let j = i2 + 1; j < globParts.length; j++) {
4288
4427
  const matched = this.partsMatch(globParts[i2], globParts[j], !this.preserveMultipleSlashes);
4289
- if (!matched)
4290
- continue;
4291
- globParts[i2] = matched;
4292
- globParts[j] = [];
4428
+ if (matched) {
4429
+ globParts[i2] = [];
4430
+ globParts[j] = matched;
4431
+ break;
4432
+ }
4293
4433
  }
4294
4434
  }
4295
4435
  return globParts.filter((gs) => gs.length);
@@ -4350,7 +4490,8 @@ var Minimatch = class {
4350
4490
  // out of pattern, then that's fine, as long as all
4351
4491
  // the parts match.
4352
4492
  matchOne(file, pattern, partial = false) {
4353
- const options = this.options;
4493
+ let fileStartIndex = 0;
4494
+ let patternStartIndex = 0;
4354
4495
  if (this.isWindows) {
4355
4496
  const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
4356
4497
  const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
@@ -4359,14 +4500,14 @@ var Minimatch = class {
4359
4500
  const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
4360
4501
  const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
4361
4502
  if (typeof fdi === "number" && typeof pdi === "number") {
4362
- const [fd, pd] = [file[fdi], pattern[pdi]];
4503
+ const [fd, pd] = [
4504
+ file[fdi],
4505
+ pattern[pdi]
4506
+ ];
4363
4507
  if (fd.toLowerCase() === pd.toLowerCase()) {
4364
4508
  pattern[pdi] = fd;
4365
- if (pdi > fdi) {
4366
- pattern = pattern.slice(pdi);
4367
- } else if (fdi > pdi) {
4368
- file = file.slice(fdi);
4369
- }
4509
+ patternStartIndex = pdi;
4510
+ fileStartIndex = fdi;
4370
4511
  }
4371
4512
  }
4372
4513
  }
@@ -4374,71 +4515,10 @@ var Minimatch = class {
4374
4515
  if (optimizationLevel >= 2) {
4375
4516
  file = this.levelTwoFileOptimize(file);
4376
4517
  }
4377
- this.debug("matchOne", this, { file, pattern });
4378
- this.debug("matchOne", file.length, pattern.length);
4379
- for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
4380
- this.debug("matchOne loop");
4381
- var p = pattern[pi];
4382
- var f = file[fi];
4383
- this.debug(pattern, p, f);
4384
- if (p === false) {
4385
- return false;
4386
- }
4387
- if (p === GLOBSTAR) {
4388
- this.debug("GLOBSTAR", [pattern, p, f]);
4389
- var fr = fi;
4390
- var pr = pi + 1;
4391
- if (pr === pl) {
4392
- this.debug("** at the end");
4393
- for (; fi < fl; fi++) {
4394
- if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".")
4395
- return false;
4396
- }
4397
- return true;
4398
- }
4399
- while (fr < fl) {
4400
- var swallowee = file[fr];
4401
- this.debug("\nglobstar while", file, fr, pattern, pr, swallowee);
4402
- if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
4403
- this.debug("globstar found match!", fr, fl, swallowee);
4404
- return true;
4405
- } else {
4406
- if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") {
4407
- this.debug("dot detected!", file, fr, pattern, pr);
4408
- break;
4409
- }
4410
- this.debug("globstar swallow a segment, and continue");
4411
- fr++;
4412
- }
4413
- }
4414
- if (partial) {
4415
- this.debug("\n>>> no match, partial?", file, fr, pattern, pr);
4416
- if (fr === fl) {
4417
- return true;
4418
- }
4419
- }
4420
- return false;
4421
- }
4422
- let hit;
4423
- if (typeof p === "string") {
4424
- hit = f === p;
4425
- this.debug("string match", p, f, hit);
4426
- } else {
4427
- hit = p.test(f);
4428
- this.debug("pattern match", p, f, hit);
4429
- }
4430
- if (!hit)
4431
- return false;
4432
- }
4433
- if (fi === fl && pi === pl) {
4434
- return true;
4435
- } else if (fi === fl) {
4436
- return partial;
4437
- } else if (pi === pl) {
4438
- return fi === fl - 1 && file[fi] === "";
4439
- } else {
4440
- throw new Error("wtf?");
4518
+ if (pattern.includes(GLOBSTAR)) {
4519
+ return __privateMethod(this, _Minimatch_instances, matchGlobstar_fn).call(this, file, pattern, partial, fileStartIndex, patternStartIndex);
4441
4520
  }
4521
+ return __privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, pattern, partial, fileStartIndex, patternStartIndex);
4442
4522
  }
4443
4523
  braceExpand() {
4444
4524
  return braceExpand(this.pattern, this.options);
@@ -4577,6 +4657,135 @@ var Minimatch = class {
4577
4657
  return minimatch.defaults(def).Minimatch;
4578
4658
  }
4579
4659
  };
4660
+ _Minimatch_instances = new WeakSet();
4661
+ matchGlobstar_fn = function(file, pattern, partial, fileIndex, patternIndex) {
4662
+ const firstgs = pattern.indexOf(GLOBSTAR, patternIndex);
4663
+ const lastgs = pattern.lastIndexOf(GLOBSTAR);
4664
+ const [head, body, tail] = partial ? [
4665
+ pattern.slice(patternIndex, firstgs),
4666
+ pattern.slice(firstgs + 1),
4667
+ []
4668
+ ] : [
4669
+ pattern.slice(patternIndex, firstgs),
4670
+ pattern.slice(firstgs + 1, lastgs),
4671
+ pattern.slice(lastgs + 1)
4672
+ ];
4673
+ if (head.length) {
4674
+ const fileHead = file.slice(fileIndex, fileIndex + head.length);
4675
+ if (!__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, fileHead, head, partial, 0, 0))
4676
+ return false;
4677
+ fileIndex += head.length;
4678
+ }
4679
+ let fileTailMatch = 0;
4680
+ if (tail.length) {
4681
+ if (tail.length + fileIndex > file.length)
4682
+ return false;
4683
+ let tailStart = file.length - tail.length;
4684
+ if (__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, tail, partial, tailStart, 0)) {
4685
+ fileTailMatch = tail.length;
4686
+ } else {
4687
+ if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
4688
+ return false;
4689
+ }
4690
+ tailStart--;
4691
+ if (!__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, tail, partial, tailStart, 0))
4692
+ return false;
4693
+ fileTailMatch = tail.length + 1;
4694
+ }
4695
+ }
4696
+ if (!body.length) {
4697
+ let sawSome = !!fileTailMatch;
4698
+ for (let i3 = fileIndex; i3 < file.length - fileTailMatch; i3++) {
4699
+ const f = String(file[i3]);
4700
+ sawSome = true;
4701
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
4702
+ return false;
4703
+ }
4704
+ }
4705
+ return partial || sawSome;
4706
+ }
4707
+ const bodySegments = [[[], 0]];
4708
+ let currentBody = bodySegments[0];
4709
+ let nonGsParts = 0;
4710
+ const nonGsPartsSums = [0];
4711
+ for (const b of body) {
4712
+ if (b === GLOBSTAR) {
4713
+ nonGsPartsSums.push(nonGsParts);
4714
+ currentBody = [[], 0];
4715
+ bodySegments.push(currentBody);
4716
+ } else {
4717
+ currentBody[0].push(b);
4718
+ nonGsParts++;
4719
+ }
4720
+ }
4721
+ let i2 = bodySegments.length - 1;
4722
+ const fileLength = file.length - fileTailMatch;
4723
+ for (const b of bodySegments) {
4724
+ b[1] = fileLength - (nonGsPartsSums[i2--] + b[0].length);
4725
+ }
4726
+ return !!__privateMethod(this, _Minimatch_instances, matchGlobStarBodySections_fn).call(this, file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
4727
+ };
4728
+ matchGlobStarBodySections_fn = function(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
4729
+ const bs = bodySegments[bodyIndex];
4730
+ if (!bs) {
4731
+ for (let i2 = fileIndex; i2 < file.length; i2++) {
4732
+ sawTail = true;
4733
+ const f = file[i2];
4734
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
4735
+ return false;
4736
+ }
4737
+ }
4738
+ return sawTail;
4739
+ }
4740
+ const [body, after] = bs;
4741
+ while (fileIndex <= after) {
4742
+ const m = __privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
4743
+ if (m && globStarDepth < this.maxGlobstarRecursion) {
4744
+ const sub = __privateMethod(this, _Minimatch_instances, matchGlobStarBodySections_fn).call(this, file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
4745
+ if (sub !== false)
4746
+ return sub;
4747
+ }
4748
+ const f = file[fileIndex];
4749
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
4750
+ return false;
4751
+ }
4752
+ fileIndex++;
4753
+ }
4754
+ return partial || null;
4755
+ };
4756
+ matchOne_fn = function(file, pattern, partial, fileIndex, patternIndex) {
4757
+ let fi;
4758
+ let pi;
4759
+ let pl;
4760
+ let fl;
4761
+ for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
4762
+ this.debug("matchOne loop");
4763
+ let p = pattern[pi];
4764
+ let f = file[fi];
4765
+ this.debug(pattern, p, f);
4766
+ if (p === false || p === GLOBSTAR)
4767
+ return false;
4768
+ let hit;
4769
+ if (typeof p === "string") {
4770
+ hit = f === p;
4771
+ this.debug("string match", p, f, hit);
4772
+ } else {
4773
+ hit = p.test(f);
4774
+ this.debug("pattern match", p, f, hit);
4775
+ }
4776
+ if (!hit)
4777
+ return false;
4778
+ }
4779
+ if (fi === fl && pi === pl) {
4780
+ return true;
4781
+ } else if (fi === fl) {
4782
+ return partial;
4783
+ } else if (pi === pl) {
4784
+ return fi === fl - 1 && file[fi] === "";
4785
+ } else {
4786
+ throw new Error("wtf?");
4787
+ }
4788
+ };
4580
4789
  minimatch.AST = AST;
4581
4790
  minimatch.Minimatch = Minimatch;
4582
4791
  minimatch.escape = escape;
@@ -4650,7 +4859,7 @@ function proxyHostElement(elm, cstr) {
4650
4859
  const hostRef = getHostRef(elm);
4651
4860
  const members = Object.entries(cmpMeta.$members$);
4652
4861
  members.forEach(([memberName, [memberFlags, metaAttributeName]]) => {
4653
- var _a, _b;
4862
+ var _a2, _b;
4654
4863
  if (memberFlags & 31 /* Prop */) {
4655
4864
  const attributeName = metaAttributeName || memberName;
4656
4865
  const attrValue = elm.getAttribute(attributeName);
@@ -4658,7 +4867,7 @@ function proxyHostElement(elm, cstr) {
4658
4867
  let attrPropVal;
4659
4868
  const { get: origGetter, set: origSetter } = Object.getOwnPropertyDescriptor(cstr.prototype, memberName) || {};
4660
4869
  if (attrValue != null) {
4661
- if ((_a = cmpMeta.$deserializers$) == null ? void 0 : _a[memberName]) {
4870
+ if ((_a2 = cmpMeta.$deserializers$) == null ? void 0 : _a2[memberName]) {
4662
4871
  for (const deserializer of cmpMeta.$deserializers$[memberName]) {
4663
4872
  const [[methodName]] = Object.entries(deserializer);
4664
4873
  attrPropVal = cstr.prototype[methodName](attrValue, memberName);
@@ -4691,8 +4900,8 @@ function proxyHostElement(elm, cstr) {
4691
4900
  Object.defineProperty(elm, memberName, getterSetterDescriptor);
4692
4901
  Object.defineProperty(elm, metaAttributeName, getterSetterDescriptor);
4693
4902
  hostRef.$fetchedCbList$.push(() => {
4694
- var _a2;
4695
- if (!((_a2 = hostRef == null ? void 0 : hostRef.$instanceValues$) == null ? void 0 : _a2.has(memberName))) {
4903
+ var _a3;
4904
+ if (!((_a3 = hostRef == null ? void 0 : hostRef.$instanceValues$) == null ? void 0 : _a3.has(memberName))) {
4696
4905
  setValue(
4697
4906
  elm,
4698
4907
  memberName,
@@ -4705,11 +4914,11 @@ function proxyHostElement(elm, cstr) {
4705
4914
  } else if (memberFlags & 64 /* Method */) {
4706
4915
  Object.defineProperty(elm, memberName, {
4707
4916
  value(...args) {
4708
- var _a2;
4917
+ var _a3;
4709
4918
  const ref = getHostRef(this);
4710
- return (_a2 = ref == null ? void 0 : ref.$onInstancePromise$) == null ? void 0 : _a2.then(() => {
4711
- var _a3;
4712
- return (_a3 = ref == null ? void 0 : ref.$lazyInstance$) == null ? void 0 : _a3[memberName](...args);
4919
+ return (_a3 = ref == null ? void 0 : ref.$onInstancePromise$) == null ? void 0 : _a3.then(() => {
4920
+ var _a4;
4921
+ return (_a4 = ref == null ? void 0 : ref.$lazyInstance$) == null ? void 0 : _a4[memberName](...args);
4713
4922
  }).catch((e) => {
4714
4923
  consoleError(e, this);
4715
4924
  });
@@ -4720,8 +4929,8 @@ function proxyHostElement(elm, cstr) {
4720
4929
  }
4721
4930
  }
4722
4931
  function componentOnReady$1() {
4723
- var _a;
4724
- return (_a = getHostRef(this)) == null ? void 0 : _a.$onReadyPromise$;
4932
+ var _a2;
4933
+ return (_a2 = getHostRef(this)) == null ? void 0 : _a2.$onReadyPromise$;
4725
4934
  }
4726
4935
  function forceUpdate2() {
4727
4936
  }
@@ -5117,7 +5326,7 @@ class LmvzAction {
5117
5326
  this.actionClick.emit(event);
5118
5327
  }
5119
5328
  render() {
5120
- return (hAsync(Host, { key: '71303bfe6ac64a96edd21800ae5e8c43a3a38c23', onClick: this._onClick.bind(this) }, hAsync("slot", { key: '94922fdfd355e7e4d1b78bedb80ae814c186b199' })));
5329
+ return (hAsync(Host, { key: '15c0f20e08cd5019abfd3bb71ec69d175dc5ba48', onClick: this._onClick.bind(this) }, hAsync("slot", { key: 'f71a7853168d1b66b0a50b0f971d140385530ac3' })));
5121
5330
  }
5122
5331
  static get style() { return lmvzActionCss(); }
5123
5332
  static get cmpMeta() { return {
@@ -5221,6 +5430,26 @@ function requireClassnames () {
5221
5430
  var classnamesExports = requireClassnames();
5222
5431
  var classNames = /*@__PURE__*/getDefaultExportFromCjs(classnamesExports);
5223
5432
 
5433
+ /**
5434
+ * Verify whether a value is a Promise by duck-testing for a 'then' function
5435
+ */
5436
+ function isPromise(value) {
5437
+ if (!value)
5438
+ return false;
5439
+ return typeof value === 'object' && typeof value.then === 'function';
5440
+ }
5441
+
5442
+ /**
5443
+ * Resolve the result of a function that may be async or not, as a Promise.
5444
+ */
5445
+ function resolvePossiblyAsyncFunction(func, args = []) {
5446
+ const res = func(...args);
5447
+ if (isPromise(res)) {
5448
+ return res;
5449
+ }
5450
+ return Promise.resolve(res);
5451
+ }
5452
+
5224
5453
  const GLOBAL_STATE_KEY = Symbol('__lmvzAriaValidationRuntimeState');
5225
5454
  const ARIA_VALIDATION_RUNTIME_CHANGED_EVENT = 'lmvz:aria-validation-runtime-changed';
5226
5455
  function getRuntimeState() {
@@ -5235,10 +5464,35 @@ function getRuntimeState() {
5235
5464
  const isAriaValidationEnabled = () => getRuntimeState().enabled;
5236
5465
  const useVerboseLogging = () => getRuntimeState().verboseLogging ?? false;
5237
5466
  function queueValidation(...args) {
5238
- const state = getRuntimeState();
5239
- if (!state.enabled || !state.runtime)
5467
+ const { enabled, runtime, loadPromise, lazyCondition } = getRuntimeState();
5468
+ if (!enabled)
5240
5469
  return;
5241
- state.runtime.enqueueValidation(...args);
5470
+ if (!lazyCondition)
5471
+ return q();
5472
+ resolvePossiblyAsyncFunction(lazyCondition).then((shouldEnqueue) => {
5473
+ if (!shouldEnqueue)
5474
+ return;
5475
+ q();
5476
+ });
5477
+ function q() {
5478
+ if (runtime)
5479
+ return runtime.enqueueValidation(...args);
5480
+ if (!loadPromise) {
5481
+ console.warn('neither runtime nor load promise found for aria validation. This should not happen, as enabling aria validation should have triggered the loading of the runtime.');
5482
+ return;
5483
+ }
5484
+ loadPromise
5485
+ .then((loadedRuntime) => {
5486
+ if (!loadedRuntime?.enqueueValidation) {
5487
+ console.error('Failed to load aria validation runtime');
5488
+ return;
5489
+ }
5490
+ loadedRuntime.enqueueValidation(...args);
5491
+ })
5492
+ .catch(() => {
5493
+ console.error('Failed to enqueue validation due to an error while loading the runtime');
5494
+ });
5495
+ }
5242
5496
  }
5243
5497
 
5244
5498
  class AriaValidationController {
@@ -5421,7 +5675,7 @@ const componentOnReady = (el, callback) => {
5421
5675
  };
5422
5676
  const inheritAttributes = (el, attributes = []) => {
5423
5677
  const attributeObject = {};
5424
- attributes.forEach(attr => {
5678
+ attributes.forEach((attr) => {
5425
5679
  if (el.hasAttribute(attr)) {
5426
5680
  const value = el.getAttribute(attr);
5427
5681
  if (value !== null) {
@@ -5503,7 +5757,7 @@ function getDeepActiveElement(root = document) {
5503
5757
  if (!activeElement) {
5504
5758
  return null;
5505
5759
  }
5506
- while (activeElement && activeElement.shadowRoot) {
5760
+ while (activeElement?.shadowRoot) {
5507
5761
  const next = activeElement.shadowRoot.activeElement;
5508
5762
  if (!next) {
5509
5763
  break;
@@ -5513,6 +5767,8 @@ function getDeepActiveElement(root = document) {
5513
5767
  return activeElement;
5514
5768
  }
5515
5769
  function canReceiveFocus(el) {
5770
+ if (!el)
5771
+ return false;
5516
5772
  return (el instanceof HTMLElement && el.tabIndex >= 0 && !el.hasAttribute('disabled') && el.getAttribute('aria-hidden') !== 'true' && el.checkVisibility() && el.offsetParent !== null);
5517
5773
  }
5518
5774
  function findFormByRef(form, el) {
@@ -5582,7 +5838,7 @@ class ReactiveControllerHost {
5582
5838
  }
5583
5839
  }
5584
5840
 
5585
- const lmvzButtonCss = () => ` @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { h1, h2, h3, h4, h5, h6 { margin: 0; } } :host { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: contents; } ::slotted(*) { --lmvz-component-color: var(--lmvz-button-color); } `;
5841
+ const lmvzButtonCss = () => ` @layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { body { margin: 0; } h1, h2, h3, h4, h5, h6 { margin: 0; } } :host { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: contents; } ::slotted(*) { --lmvz-component-color: var(--lmvz-button-color); } `;
5586
5842
 
5587
5843
  class LmvzButton extends ReactiveControllerHost {
5588
5844
  get el() { return getElement(this); }
@@ -5639,7 +5895,7 @@ class LmvzButton extends ReactiveControllerHost {
5639
5895
  };
5640
5896
  render() {
5641
5897
  this.renderHiddenButton();
5642
- return (hAsync(Host, { key: '3f3eda78349322ce5160d7aac1290a73f0adcd4a', "aria-disabled": this.disabled ? 'true' : null }, hAsync("button", { key: 'b132404d8d5f5bf0fa7e845b562c953c5ceec36c', ref: (e) => (this.validationEl = e), disabled: this.disabled, class: classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, hAsync("slot", { key: 'ce63f7f1061ec9c3f10cbcfc67998ddbf3e04c3d' }))));
5898
+ return (hAsync(Host, { key: 'c6f44d3765d579e04ab91272747035d8589e2ff2', "aria-disabled": this.disabled ? 'true' : null }, hAsync("button", { key: '9d48dfc7a6a23df1eda46e9c9035520789a08d4c', ref: (e) => (this.validationEl = e), disabled: this.disabled, class: classNames(this.variant, { [this.scale ?? '']: !!this.scale, disabled: this.disabled }), ...this.inheritedAttributes }, hAsync("slot", { key: '95e9fb932e477c7d6e933d2c00e6a3728e55c256' }))));
5643
5899
  }
5644
5900
  static get delegatesFocus() { return true; }
5645
5901
  static get style() { return lmvzButtonCss(); }
@@ -5680,7 +5936,7 @@ function joinPath(...parts) {
5680
5936
  return parts.filter(Boolean).join('/').replace('//', '/').replace('/./', '/');
5681
5937
  }
5682
5938
 
5683
- const lmvzCardCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { h1, h2, h3, h4, h5, h6 { margin: 0; } } .sc-lmvz-card-h { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: flex; min-width: var(--lmvz-other-component-card-minwidth, 20.4375rem); max-width: var(--lmvz-other-component-card-maxwidth, 21.6875rem); flex-direction: column; align-items: flex-start; border-radius: var(--lmvz-semantic-border-radius-lg, 14px); border: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-default, #e0e0e0); background: var(--lmvz-semantic-color-surface-primary, #ffffff); } *.sc-lmvz-card { color: var(--lmvz-semantic-color-on-surface-primary, #000000); font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .top.sc-lmvz-card { display: flex; padding: var(--lmvz-dimension-8-12, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); flex-direction: column; justify-content: center; align-items: center; align-self: stretch; } .bottom.sc-lmvz-card { display: flex; min-width: 150px; padding: var(--lmvz-dimension-4-6, clamp(0.25rem, 0.22rem + 0.13vw, 0.38rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)); flex-direction: column; align-items: flex-start; align-self: stretch; } .title.sc-lmvz-card { margin: 0; display: flex; justify-content: center; align-items: center; align-self: stretch; padding-bottom: var(--lmvz-global-s4, 4px); overflow-wrap: break-word; font: var(--lmvz-typography-heading-2xl, 500 clamp(2rem, 1.94rem + 0.26vw, 2.25rem) / 1.2 Router); } .description.sc-lmvz-card { display: flex; margin: 0; padding-bottom: var(--lmvz-component-body-sm-padding-bottom, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-items: flex-start; align-self: stretch; white-space: pre-line; font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .image-wrapper.sc-lmvz-card { aspect-ratio: 4 / 3; width: 100%; background-size: cover; background-position: center; flex: 1 0 0; align-self: stretch; border-radius: var(--lmvz-semantic-border-radius-md, 6px); } .actions.sc-lmvz-card { margin-top: var(--lmvz-component-form-wrapper-gap-y, clamp(1.13rem, 0.97rem + 0.65vw, 1.75rem)); display: flex; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-self: stretch; } button.primary.sc-lmvz-card, lmvz-button.primary.sc-lmvz-card { display: flex; justify-content: center; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); flex: 1 0 0; }`;
5939
+ const lmvzCardCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } @layer lmvz-ds.reset { body { margin: 0; } h1, h2, h3, h4, h5, h6 { margin: 0; } } .sc-lmvz-card-h { button { --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff)); --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem))); --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-button-border-width: 0; --lmvz-button-border-color: transparent; --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000); display: inline-flex; align-items: center; justify-content: center; gap: var(--lmvz-button-gap); padding-block: var(--lmvz-button-padding-block); padding-inline: var(--lmvz-button-padding-inline); border-radius: var(--lmvz-button-radius); border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color); background-color: var(--lmvz-button-background); color: var(--lmvz-button-color); cursor: pointer; font: var(--lmvz-button-font); text-align: center; text-decoration: none; white-space: nowrap; transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease; } button > * { font: inherit; color: inherit; } button:focus-visible { outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe); outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); } button:is([disabled], .disabled) { cursor: not-allowed; pointer-events: none; opacity: var(--lmvz-component-input-disabled-opacity, 40%); } button:not([disabled]):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e); } button:not([disabled]):active { --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454); } button.secondary { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px); --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0); } button.secondary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7); } button.secondary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4); --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4); } button.tertiary { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff); --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454); } button.tertiary:not([disabled], .disabled):hover { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0); } button.tertiary:not([disabled], .disabled):active { --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0); } button.small { --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } button.large { --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem)); --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4 Router); } display: flex; min-width: var(--lmvz-other-component-card-minwidth, 20.4375rem); max-width: var(--lmvz-other-component-card-maxwidth, 21.6875rem); flex-direction: column; align-items: flex-start; border-radius: var(--lmvz-semantic-border-radius-lg, 14px); border: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-default, #e0e0e0); background: var(--lmvz-semantic-color-surface-primary, #ffffff); } *.sc-lmvz-card { color: var(--lmvz-semantic-color-on-surface-primary, #000000); font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .top.sc-lmvz-card { display: flex; padding: var(--lmvz-dimension-8-12, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem)); flex-direction: column; justify-content: center; align-items: center; align-self: stretch; } .bottom.sc-lmvz-card { display: flex; min-width: 150px; padding: var(--lmvz-dimension-4-6, clamp(0.25rem, 0.22rem + 0.13vw, 0.38rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)); flex-direction: column; align-items: flex-start; align-self: stretch; } .title.sc-lmvz-card { margin: 0; display: flex; justify-content: center; align-items: center; align-self: stretch; padding-bottom: var(--lmvz-global-s4, 4px); overflow-wrap: break-word; font: var(--lmvz-typography-heading-2xl, 500 clamp(2rem, 1.94rem + 0.26vw, 2.25rem) / 1.2 Router); } .description.sc-lmvz-card { display: flex; margin: 0; padding-bottom: var(--lmvz-component-body-sm-padding-bottom, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-items: flex-start; align-self: stretch; white-space: pre-line; font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4 Router); } .image-wrapper.sc-lmvz-card { aspect-ratio: 4 / 3; width: 100%; background-size: cover; background-position: center; flex: 1 0 0; align-self: stretch; border-radius: var(--lmvz-semantic-border-radius-md, 6px); } .actions.sc-lmvz-card { margin-top: var(--lmvz-component-form-wrapper-gap-y, clamp(1.13rem, 0.97rem + 0.65vw, 1.75rem)); display: flex; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); align-self: stretch; } button.primary.sc-lmvz-card, lmvz-button.primary.sc-lmvz-card { display: flex; justify-content: center; align-items: center; gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); flex: 1 0 0; }`;
5684
5940
 
5685
5941
  class LmvzCard {
5686
5942
  constructor(hostRef) {
@@ -5705,7 +5961,7 @@ class LmvzCard {
5705
5961
  const imgStyle = {
5706
5962
  backgroundImage: `url(${this.imageUrl ?? this.fallbackImage})`,
5707
5963
  };
5708
- return (hAsync(Host, { key: 'ba2e8d9e25428c744da2470cbd677306c56b09ae', role: "article" }, hAsync("div", { key: '54ff7545559a4b6fb00c94909717234f4dfedd7c', class: "top" }, hAsync("div", { key: '7bff35f247b6e8aca9b6346103139daa65ca16a3', class: "image-wrapper", style: imgStyle }, hAsync("div", { key: 'c2c3d21227175b9dc0a55c75294f6c21bc713a26', class: "chip-slot" }, hAsync("slot", { key: '1a7002aab5fc3f9f698c3d1678f8819ea36f91d3', name: "chip" })))), hAsync("div", { key: 'a313321abe4da83db4b2ba64fdefa28edde93d41', class: "bottom" }, hAsync("header", { key: 'f5ba333fcaa59d5b4f61dee94aba4628f49db9d7' }, hAsync("h2", { key: 'b7d9ad6944b136476703cde89f885b189583eef1', class: "title" }, this.cardTitle)), hAsync("p", { key: '6594626904a4f9fbc53d5956b71bbdefe00add8c', class: "description" }, this.description), hAsync("div", { key: 'd8bbfebeb572fcf6990160a0dba7c5ae8a5a7fc7', class: "actions" }, hAsync("button", { key: '6311a97a18412f8fbf8eb33e8a0f7a17700e71c6', class: "primary", onClick: this._onPrimaryClick.bind(this), "data-testid": "primary" }, this.primaryActionLabel), hAsync("button", { key: '12033ad5018d100f84f0149d83dc965d8e5b2c66', class: "tertiary", "aria-label": "More actions", onClick: this._onOverflowClick }, hAsync("span", { key: 'e11f8008542b4f7f70d1273bb31200c50d02aabb', class: "icon-placeholder" }, "..."))))));
5964
+ return (hAsync(Host, { key: '46c2832b4f90b9eb222749632bc7ad59cd645e10', role: "article" }, hAsync("div", { key: 'cc387fe96cff2dd04c24f75cf838a2bf6f438279', class: "top" }, hAsync("div", { key: 'f9a54a5f81378ef4265e1d74c36c78af002e8874', class: "image-wrapper", style: imgStyle }, hAsync("div", { key: '76daed00408f7ae9ee46977637ddcd3d4f846380', class: "chip-slot" }, hAsync("slot", { key: '6ad522ef7428166b876d0218ef8d801c4ef337f1', name: "chip" })))), hAsync("div", { key: '9c9799668ac199cfecbe10061e271d70d70e2d07', class: "bottom" }, hAsync("header", { key: '1bec743235bea5c7ab163225ffbd7bc6cf11f754' }, hAsync("h2", { key: '06f8e14153328bc5ca920e71e09d9343047c440c', class: "title" }, this.cardTitle)), hAsync("p", { key: '86b95db4e6464ca3236b4a03798013c3580819bf', class: "description" }, this.description), hAsync("div", { key: '553dc998d5318a4730196baa0b9baff3a0a3369f', class: "actions" }, hAsync("button", { key: '7532d01b46769198c23a1b1015c187fdefce146a', class: "primary", onClick: this._onPrimaryClick.bind(this), "data-testid": "primary" }, this.primaryActionLabel), hAsync("button", { key: '633d679ae59b1896aa2a06e04b4564569cf27a7d', class: "tertiary", "aria-label": "More actions", onClick: this._onOverflowClick }, hAsync("span", { key: 'b72c45f93d259502b9d7c5ffb19e292a53c60ec6', class: "icon-placeholder" }, "..."))))));
5709
5965
  }
5710
5966
  static get assetsDirs() { return ["../../assets"]; }
5711
5967
  static get style() { return lmvzCardCss(); }
@@ -5732,7 +5988,7 @@ class LmvzChip {
5732
5988
  }
5733
5989
  text;
5734
5990
  render() {
5735
- return hAsync(Host, { key: 'b247f41d22bcf77998bf5a49669f1aa8d7fd3a63' }, this.text);
5991
+ return hAsync(Host, { key: 'd128e24bb90891ebd13d13a8e27c06782363cace' }, this.text);
5736
5992
  }
5737
5993
  static get style() { return lmvzChipCss(); }
5738
5994
  static get cmpMeta() { return {
@@ -5773,19 +6029,21 @@ class ListKeyboardNavigationController {
5773
6029
  }
5774
6030
  };
5775
6031
  getNextFocusableElement(current, direction) {
6032
+ if (!current)
6033
+ return undefined;
5776
6034
  const { elements } = this;
5777
6035
  const currentIndex = elements.indexOf(current);
5778
6036
  if (currentIndex === -1)
5779
- return null;
5780
- let nextIndex = null;
6037
+ return undefined;
6038
+ let nextIndex = undefined;
5781
6039
  if (direction === 'down') {
5782
6040
  nextIndex = (currentIndex + 1) % elements.length;
5783
6041
  }
5784
6042
  else if (direction === 'up') {
5785
6043
  nextIndex = (currentIndex - 1 + elements.length) % elements.length;
5786
6044
  }
5787
- if (nextIndex == null)
5788
- return null;
6045
+ if (nextIndex == undefined)
6046
+ return undefined;
5789
6047
  const candidate = elements[nextIndex];
5790
6048
  if (!canReceiveFocus(candidate))
5791
6049
  return this.getNextFocusableElement(candidate, direction);
@@ -5797,16 +6055,18 @@ const lmvzHeaderCss = () => `:host{display:flex;width:100vw;flex-direction:row;a
5797
6055
 
5798
6056
  class LmvzHeader extends ReactiveControllerHost {
5799
6057
  get el() { return getElement(this); }
5800
- validationEl = this.el;
6058
+ get validationEl() {
6059
+ return this.el;
6060
+ }
5801
6061
  primarySlot;
5802
6062
  secondarySlot;
5803
6063
  secondaryNav;
5804
6064
  keyboardNavigationController = new ListKeyboardNavigationController(this);
5805
6065
  get primaryMenuitems() {
5806
- return this.primarySlot.assignedElements({ flatten: false });
6066
+ return this.primarySlot?.assignedElements({ flatten: false }) || [];
5807
6067
  }
5808
6068
  get secondaryMenuitems() {
5809
- return this.secondarySlot.assignedElements({ flatten: true });
6069
+ return this.secondarySlot?.assignedElements({ flatten: true }) || [];
5810
6070
  }
5811
6071
  get role() {
5812
6072
  return 'banner';
@@ -5825,9 +6085,9 @@ class LmvzHeader extends ReactiveControllerHost {
5825
6085
  this.updateElementsActive();
5826
6086
  }
5827
6087
  componentDidLoad() {
5828
- this.primarySlot.addEventListener('slotchange', this.handlePrimaryNavItemsChange.bind(this));
6088
+ this.primarySlot?.addEventListener('slotchange', this.handlePrimaryNavItemsChange.bind(this));
5829
6089
  this.handlePrimaryNavItemsChange();
5830
- this.secondarySlot.addEventListener('slotchange', this.handleSecondaryNavItemsChange.bind(this));
6090
+ this.secondarySlot?.addEventListener('slotchange', this.handleSecondaryNavItemsChange.bind(this));
5831
6091
  super.componentDidLoad();
5832
6092
  }
5833
6093
  handlePrimaryNavItemsChange() {
@@ -5855,14 +6115,18 @@ class LmvzHeader extends ReactiveControllerHost {
5855
6115
  }
5856
6116
  updateElementsActive() {
5857
6117
  const items = this.primaryMenuitems;
5858
- let label;
6118
+ if (!items.length)
6119
+ return;
6120
+ let label = '';
5859
6121
  items.forEach((el) => {
5860
6122
  const isActive = el.id === this.lmvzActiveNav;
5861
6123
  if (isActive)
5862
6124
  label = el.textContent || el.id;
5863
6125
  el.setAttribute('aria-expanded', isActive ? 'true' : 'false');
5864
6126
  });
5865
- this.secondaryNav.setAttribute('aria-label', `Untermenü für ${label}`);
6127
+ if (!label)
6128
+ return;
6129
+ this.secondaryNav?.setAttribute('aria-label', `Untermenü für ${label}`);
5866
6130
  }
5867
6131
  delegateFocus() {
5868
6132
  const firstFocusable = this.primaryMenuitems[0];
@@ -5871,7 +6135,7 @@ class LmvzHeader extends ReactiveControllerHost {
5871
6135
  }
5872
6136
  }
5873
6137
  render() {
5874
- return (hAsync(Host, { key: 'e5efeeb233de82c44e23302d20ebb488dfc6307b', onFocus: this.delegateFocus.bind(this) }, hAsync("div", { key: '5e34efe17901ec990d09cd6764c37858ced1f021', class: "brand" }, hAsync("slot", { key: 'd30fa8bf8e77a6f02bad45dbad58fe9bbdc8b3f3', name: "brand" }, hAsync("img", { key: '074192bf3b5b4bcdb19302a954c56c5c61ee4b8f', id: "fallback-logo-lmvz", src: logoSvg, alt: "Lehrmittelverlag Z\u00FCrich" }))), hAsync("nav", { key: '663f04ecb9d6ea026f9476888b532f8e1c4e432c', "aria-label": "Hauptnavigation" }, hAsync("div", { key: 'ed0f492144c2b94822db02733c371329a95d8a1e', role: "menubar", class: "primary-menubar" }, hAsync("slot", { key: 'cbcf15f96b5b6c2133506902dc992c962e4873fb', name: "nav-primary", ref: (el) => (this.primarySlot = el) }), hAsync("div", { key: '109ca0ea7ee937c9a1a4a510305595486ea48d94', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: (el) => (this.secondaryNav = el) }, hAsync("slot", { key: 'b88d0da4772cf171854c369fa4e01131377c4f35', name: this.secondarySlotName, ref: (el) => (this.secondarySlot = el) })))), hAsync("div", { key: '4f024b948ea1ebce1ef914b1149420cd9ed817dd', class: "actions" }, hAsync("slot", { key: 'b1f6cff936e2a8fa5c0ff4e3bcc938a5c4f88e0c', name: "actions" }))));
6138
+ return (hAsync(Host, { key: '35883b5d4a92d10b5b010d822fb2233604464f9b', onFocus: this.delegateFocus.bind(this) }, hAsync("div", { key: '6fdec3af75bab2b076651b8cfef4aec8e23326a6', class: "brand" }, hAsync("slot", { key: '3127b4223b8bebfe425efc7ce45626f37fbf76b9', name: "brand" }, hAsync("img", { key: '20b3dd598e320c6950fb08bbd55dd80c47552eaf', id: "fallback-logo-lmvz", src: logoSvg, alt: "Lehrmittelverlag Z\u00FCrich" }))), hAsync("nav", { key: 'c3bf07f78930085c1a7b89421506bcd41d139911', "aria-label": "Hauptnavigation" }, hAsync("div", { key: 'fbc5199080f52da4f10c8c14fbbc0877ecc5f31c', role: "menubar", class: "primary-menubar" }, hAsync("slot", { key: '4210d213dcf7a1a27a73f2a9cf7ff97fec62f0db', name: "nav-primary", ref: (el) => (this.primarySlot = el) }), hAsync("div", { key: '7b91c269f75e1245f75d471ec5bb7eeabfe1094d', role: "menu", id: "nav-secondary", class: "secondary-menubar", hidden: !this.lmvzActiveNav, ref: (el) => (this.secondaryNav = el) }, hAsync("slot", { key: 'e23eb0f222b49d912bb45870df6d9b0d01f43788', name: this.secondarySlotName, ref: (el) => (this.secondarySlot = el) })))), hAsync("div", { key: '4b19026d5b2e54aa7aed072ce57de4acaa75cb4f', class: "actions" }, hAsync("slot", { key: '8f02d5d178bb60b40604fcd1be74d373d89c911f', name: "actions" }))));
5875
6139
  }
5876
6140
  static get watchers() { return {
5877
6141
  "lmvzActiveNav": [{
@@ -6609,10 +6873,13 @@ function compareBoth(self, that) {
6609
6873
  }
6610
6874
  }
6611
6875
  if (structuralRegionState.enabled) {
6876
+ if (self === null || that === null) {
6877
+ return false;
6878
+ }
6612
6879
  if (Array.isArray(self) && Array.isArray(that)) {
6613
6880
  return self.length === that.length && self.every((v, i) => compareBoth(v, that[i]));
6614
6881
  }
6615
- if (Object.getPrototypeOf(self) === Object.prototype && Object.getPrototypeOf(self) === Object.prototype) {
6882
+ if (Object.getPrototypeOf(self) === Object.prototype && Object.getPrototypeOf(that) === Object.prototype) {
6616
6883
  const keysSelf = Object.keys(self);
6617
6884
  const keysThat = Object.keys(that);
6618
6885
  if (keysSelf.length === keysThat.length) {
@@ -6741,7 +7008,7 @@ const OP_FAILURE = "Failure";
6741
7008
  /** @internal */
6742
7009
  const OP_WITH_RUNTIME = "WithRuntime";
6743
7010
 
6744
- let moduleVersion = "3.19.14";
7011
+ let moduleVersion = "3.21.0";
6745
7012
  const getCurrentVersion = () => moduleVersion;
6746
7013
 
6747
7014
  /** @internal */
@@ -9231,34 +9498,33 @@ const renderErrorCause = (cause, prefix) => {
9231
9498
  return stack;
9232
9499
  };
9233
9500
  /** @internal */
9234
- class PrettyError extends globalThis.Error {
9235
- span = undefined;
9236
- constructor(originalError) {
9237
- const originalErrorIsObject = typeof originalError === "object" && originalError !== null;
9238
- const prevLimit = Error.stackTraceLimit;
9239
- Error.stackTraceLimit = 1;
9240
- super(prettyErrorMessage(originalError), originalErrorIsObject && "cause" in originalError && typeof originalError.cause !== "undefined" ? {
9241
- cause: new PrettyError(originalError.cause)
9242
- } : undefined);
9243
- if (this.message === "") {
9244
- this.message = "An error has occurred";
9245
- }
9246
- Error.stackTraceLimit = prevLimit;
9247
- this.name = originalError instanceof Error ? originalError.name : "Error";
9248
- if (originalErrorIsObject) {
9249
- if (spanSymbol in originalError) {
9250
- this.span = originalError[spanSymbol];
9251
- }
9252
- Object.keys(originalError).forEach(key => {
9253
- if (!(key in this)) {
9254
- // @ts-expect-error
9255
- this[key] = originalError[key];
9256
- }
9257
- });
9258
- }
9259
- this.stack = prettyErrorStack(`${this.name}: ${this.message}`, originalError instanceof Error && originalError.stack ? originalError.stack : "", this.span);
9501
+ const makePrettyError = originalError => {
9502
+ const originalErrorIsObject = typeof originalError === "object" && originalError !== null;
9503
+ const prevLimit = Error.stackTraceLimit;
9504
+ Error.stackTraceLimit = 1;
9505
+ const error = new Error(prettyErrorMessage(originalError), originalErrorIsObject && "cause" in originalError && typeof originalError.cause !== "undefined" ? {
9506
+ cause: makePrettyError(originalError.cause)
9507
+ } : undefined);
9508
+ Error.stackTraceLimit = prevLimit;
9509
+ if (error.message === "") {
9510
+ error.message = "An error has occurred";
9511
+ }
9512
+ Error.stackTraceLimit = prevLimit;
9513
+ error.name = originalError instanceof Error ? originalError.name : "Error";
9514
+ if (originalErrorIsObject) {
9515
+ if (spanSymbol in originalError) {
9516
+ error.span = originalError[spanSymbol];
9517
+ }
9518
+ Object.keys(originalError).forEach(key => {
9519
+ if (!(key in error)) {
9520
+ // @ts-expect-error
9521
+ error[key] = originalError[key];
9522
+ }
9523
+ });
9260
9524
  }
9261
- }
9525
+ error.stack = prettyErrorStack(`${error.name}: ${error.message}`, originalError instanceof Error && originalError.stack ? originalError.stack : "", error.span);
9526
+ return error;
9527
+ };
9262
9528
  /**
9263
9529
  * A utility function for generating human-readable error messages from a generic error of type `unknown`.
9264
9530
  *
@@ -9346,10 +9612,10 @@ const spanSymbol = /*#__PURE__*/Symbol.for("effect/SpanAnnotation");
9346
9612
  const prettyErrors = cause => reduceWithContext(cause, void 0, {
9347
9613
  emptyCase: () => [],
9348
9614
  dieCase: (_, unknownError) => {
9349
- return [new PrettyError(unknownError)];
9615
+ return [makePrettyError(unknownError)];
9350
9616
  },
9351
9617
  failCase: (_, error) => {
9352
- return [new PrettyError(error)];
9618
+ return [makePrettyError(error)];
9353
9619
  },
9354
9620
  interruptCase: () => [],
9355
9621
  parallelCase: (_, l, r) => [...l, ...r],
@@ -9669,7 +9935,7 @@ class LmvzIcon extends ReactiveControllerHost {
9669
9935
  disconnectedCallback() {
9670
9936
  if (this.intersectionObserver) {
9671
9937
  this.intersectionObserver.disconnect();
9672
- this.intersectionObserver = null;
9938
+ this.intersectionObserver = undefined;
9673
9939
  }
9674
9940
  super.disconnectedCallback();
9675
9941
  }
@@ -9684,7 +9950,7 @@ class LmvzIcon extends ReactiveControllerHost {
9684
9950
  super.componentDidRender();
9685
9951
  }
9686
9952
  render() {
9687
- return hAsync(Host, { key: '8b1ce550253e994650fe91de38496aff7c7eccc2', role: 'img', "aria-hidden": `${this.ariaHidden}`, innerHTML: this.iconData });
9953
+ return hAsync(Host, { key: 'f5c2f8025d0e9598d903e72770ebca6cad01961c', role: "img", "aria-hidden": `${this.ariaHidden}`, innerHTML: this.iconData });
9688
9954
  }
9689
9955
  waitUntilVisible(callback, rootMargin = 50) {
9690
9956
  {
@@ -9721,7 +9987,9 @@ const lmvzInputCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.compone
9721
9987
  let inputIdCounter = 0;
9722
9988
  class LmvzInput extends ReactiveControllerHost {
9723
9989
  get el() { return getElement(this); }
9724
- validationEl = this.el;
9990
+ get validationEl() {
9991
+ return this.el;
9992
+ }
9725
9993
  lmvzInput;
9726
9994
  internals;
9727
9995
  nativeInputElement;
@@ -9777,9 +10045,13 @@ class LmvzInput extends ReactiveControllerHost {
9777
10045
  }
9778
10046
  async setValue(newValue) {
9779
10047
  const input = this.nativeInputElement;
9780
- this.value = input.value = newValue ?? '';
9781
- this.internals.setFormValue?.(newValue);
9782
- this.lmvzInput.emit(newValue);
10048
+ const val = newValue ?? '';
10049
+ if (input) {
10050
+ input.value = val;
10051
+ }
10052
+ this.value = val;
10053
+ this.internals.setFormValue?.(val);
10054
+ this.lmvzInput.emit(val);
9783
10055
  }
9784
10056
  async focusInput() {
9785
10057
  this.nativeInputElement?.focus();
@@ -9818,13 +10090,13 @@ class LmvzInput extends ReactiveControllerHost {
9818
10090
  }));
9819
10091
  }
9820
10092
  componentWillLoad() {
9821
- this.initialValue = this.value;
10093
+ this.initialValue = this.value ?? '';
9822
10094
  super.componentWillLoad();
9823
10095
  }
9824
10096
  formAssociatedCallback(form) {
9825
10097
  if (!form)
9826
10098
  return;
9827
- this.internals.setFormValue?.(this.value);
10099
+ this.internals.setFormValue?.(this.value ?? '');
9828
10100
  }
9829
10101
  formResetCallback() {
9830
10102
  this.internals.setValidity({});
@@ -9868,9 +10140,9 @@ class LmvzInput extends ReactiveControllerHost {
9868
10140
  render() {
9869
10141
  const hasValue = Boolean(this.value);
9870
10142
  const shouldFloatLabel = hasValue || Boolean(this.placeholder);
9871
- return (hAsync("div", { key: '79ab97e1e1d0217d5302ca1dea7087292ef19fc7', class: classNames('input-container', {
10143
+ return (hAsync("div", { key: '195e2c5046d48d01f4912993bde3c8d2b3a73d1d', class: classNames('input-container', {
9872
10144
  'interaction-filled': hasValue,
9873
- }) }, hAsync("div", { key: '9e59a33c261f610f93e1d6db3a07107f9300bbda', class: 'input-wrapper' }, hAsync("slot", { key: 'fadb3f5e49afa817014cdbd44774462b467827f4', name: 'before-input' }), hAsync("div", { key: '27d592787bb841fbd430c2e8ce0adc10f59b68ec', class: 'label-input-group' }, hAsync("label", { key: 'f83f154f356660ecafde254b5437ce6c42898b54', htmlFor: this.inputId, class: classNames({ floating: shouldFloatLabel }) }, this.label, this.required && (hAsync("span", { key: 'b51463179a2099ecd687ccd2480136379b0d0502', class: 'required-indicator', "aria-hidden": 'true' }, ' ', "*"))), hAsync("input", { key: '30d8308f286e82fba5d2ebdad972509c06294543', id: this.inputId, ref: (el) => (this.nativeInputElement = el), type: this.type, min: this.min, max: this.max, step: this.step, value: this.value, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, form: this.form, autocomplete: this.autocomplete, inputmode: this.inputmode, autocorrect: this.autocorrect, autocapitalize: this.autocapitalize, spellcheck: this.spellcheck, autofocus: this.autofocus, minlength: this.minlength, maxlength: this.maxlength, pattern: this.pattern, "aria-invalid": this.error ? 'true' : 'false', "aria-required": this.required ? 'true' : 'false', "aria-describedby": this.describedBy, "aria-errormessage": this.errorId, onInput: this.handleInput, onChange: this.handleChange, onFocus: this.handleFocus, onBlur: this.handleBlur })), hAsync("slot", { key: 'a8448a0827ce24194b21b8281d2b54eb76f24652', name: 'after-input' })), hAsync("div", { key: '79413854b97380812c84f3128d1db053d4154008', id: this.helperId, role: 'status' }, this.helperText || null), hAsync("div", { key: 'd34c6b421688934b69917f6da1f9bb22c220a6f9', id: this.errorId, role: 'alert' }, (this.showErrorMessage && this.errorMessage) || null)));
10145
+ }) }, hAsync("div", { key: '66bc3deab063a309eefc0de5ebf7f54331c9190c', class: "input-wrapper" }, hAsync("slot", { key: 'fac318070421d526bb09ba0dd0efdecf8964d952', name: "before-input" }), hAsync("div", { key: '1945152dc010d571c5886f222332b057e89e496c', class: "label-input-group" }, hAsync("label", { key: 'd57392c2c83b1e5f362dd33fa9d060e570417f3f', htmlFor: this.inputId, class: classNames({ floating: shouldFloatLabel }) }, this.label, this.required && (hAsync("span", { key: '507603a50eb08f0f4f5e2b87b2550fe6b657c4d4', class: "required-indicator", "aria-hidden": "true" }, ' ', "*"))), hAsync("input", { key: '0fe916fef48618331806142c0d3500d9e6dec9cb', id: this.inputId, ref: (el) => (this.nativeInputElement = el), type: this.type, min: this.min, max: this.max, step: this.step, value: this.value, name: this.name, placeholder: this.placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, form: this.form, autocomplete: this.autocomplete, inputmode: this.inputmode, autocorrect: this.autocorrect, autocapitalize: this.autocapitalize, spellcheck: this.spellcheck, autofocus: this.autofocus, minlength: this.minlength, maxlength: this.maxlength, pattern: this.pattern, "aria-invalid": this.error ? 'true' : 'false', "aria-required": this.required ? 'true' : 'false', "aria-describedby": this.describedBy, "aria-errormessage": this.errorId, onInput: this.handleInput, onChange: this.handleChange, onFocus: this.handleFocus, onBlur: this.handleBlur })), hAsync("slot", { key: 'b415bedde58862e5bd7621f73a1d77bc478850a3', name: "after-input" })), hAsync("div", { key: 'bc0e07f5243417f4c632eb2f7976dc944fdbf17a', id: this.helperId, role: "status" }, this.helperText || null), hAsync("div", { key: '62e2267453b92edd47077b233cb231a1deecedc4', id: this.errorId, role: "alert" }, (this.showErrorMessage && this.errorMessage) || null)));
9874
10146
  }
9875
10147
  static get formAssociated() { return true; }
9876
10148
  static get watchers() { return {
@@ -9929,7 +10201,9 @@ const lmvzMenuitemCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.comp
9929
10201
 
9930
10202
  class LmvzMenuItem extends ReactiveControllerHost {
9931
10203
  get el() { return getElement(this); }
9932
- validationEl = this.el;
10204
+ get validationEl() {
10205
+ return this.el;
10206
+ }
9933
10207
  validationSlot;
9934
10208
  get role() {
9935
10209
  return 'menuitem';
@@ -9946,7 +10220,7 @@ class LmvzMenuItem extends ReactiveControllerHost {
9946
10220
  this.addController(new ElementActivationController(this));
9947
10221
  }
9948
10222
  render() {
9949
- return (hAsync(Host, { key: 'a022a198618ac628cb39c97b29cf0c332b522e79' }, hAsync("slot", { key: 'c8dab82b31b49db3d966cacb1cf9ef5cb1763797', ref: e => (this.validationSlot = e) })));
10223
+ return (hAsync(Host, { key: '1a37d2873a29c713cf95c60070c8dcf045c9f8fc' }, hAsync("slot", { key: 'c6578bcfdb9f0cebad095d80f0ed63cf663bf91e', ref: (e) => (this.validationSlot = e) })));
9950
10224
  }
9951
10225
  static get style() { return lmvzMenuitemCss(); }
9952
10226
  static get cmpMeta() { return {
@@ -9962,6 +10236,86 @@ class LmvzMenuItem extends ReactiveControllerHost {
9962
10236
  }; }
9963
10237
  }
9964
10238
 
10239
+ const chevronDownSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTIwLjMzMzQgOC42NjY2M0wxMi4wMDAxIDE3TDMuNjY2NzUgOC42NjY2MyIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=';
10240
+
10241
+ const lmvzSelectCss = () => `@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides; @layer lmvz-ds.theme { @font-face { font-family: Router; src: local('Router-Book'), url('/assets/fonts/Router-Book.woff') format('woff'), local('Router'); font-weight: 400 normal; } @font-face { font-family: Router; src: local('Router-Medium'), url('/assets/fonts/Router-Medium.woff') format('woff'), local('Router'); font-weight: 500; } @font-face { font-family: Router; src: local('Router-Bold'), url('/assets/fonts/Router-Bold.woff') format('woff'), local('Router'); font-weight: 700 bold; } } .sc-lmvz-select-h { display: block; font-family: var(--lmvz-global-font-family-default, Router); --lmvz-internal-select-floating-label-top-offset: 0.375rem; padding-top: var(--lmvz-internal-select-floating-label-top-offset); --lmvz-select-radius: var(--lmvz-component-input-radius-default, 999px); --lmvz-select-bg: var(--lmvz-semantic-color-int-secondary, #f0f0f0); --lmvz-select-bg-hover: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0); --lmvz-select-text-color: var(--lmvz-semantic-color-int-on-secondary, #000000); --lmvz-select-label-color: var(--lmvz-semantic-color-on-surface-input-primary, #000000); --lmvz-select-padding-x: var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); --lmvz-select-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem)); --lmvz-select-height: 40px; --lmvz-select-label-font-size: var(--lmvz-component-component-typography-body-sm-font-size, 0.75rem); --lmvz-select-label-top-offset: calc(var(--lmvz-internal-select-floating-label-top-offset) * -1); --lmvz-select-label-minimized-padding-x: 4px; --lmvz-select-disabled-opacity: var(--lmvz-component-input-disabled-opacity, 40%); --lmvz-select-helper-color: var(--lmvz-semantic-color-on-surface-input-secondary, #7a7a7a); --lmvz-select-focus-color: var(--lmvz-semantic-color-status-on-selected, #0e7ab4); --lmvz-select-error-color: var(--lmvz-semantic-color-status-on-danger, #e52a31); } .select-wrapper.sc-lmvz-select { position: relative; height: var(--lmvz-select-height); } label.sc-lmvz-select { position: absolute; top: 50%; left: var(--lmvz-select-padding-x); font-size: var(--lmvz-select-label-font-size); color: var(--lmvz-select-label-color); line-height: normal; white-space: nowrap; pointer-events: none; z-index: 2; transform: translateY(-50%); transform-origin: left top; transition: top 0.2s ease-out, transform 0.2s ease-out, opacity 0.2s ease-out, padding 0.2s ease-out; } label.assistive-label.sc-lmvz-select { opacity: 0; padding: 0; } label.floating-label.sc-lmvz-select { top: var(--lmvz-select-label-top-offset); transform: translateY(0) scale(0.85); left: calc(var(--lmvz-select-padding-x) - 2px); background-color: var(--lmvz-select-bg); padding: 0 var(--lmvz-select-label-minimized-padding-x); opacity: 1; font-weight: 500; } label.sc-lmvz-select > span[aria-hidden='true'].sc-lmvz-select, div[aria-hidden='true'].sc-lmvz-select > span.sc-lmvz-select:first-child > span[aria-hidden='true'].sc-lmvz-select { color: var(--lmvz-select-error-color); margin-left: 2px; display: inline-block; line-height: 0; vertical-align: middle; } div[aria-hidden].sc-lmvz-select { display: flex; align-items: center; gap: var(--lmvz-select-gap); height: 100%; padding: 0 var(--lmvz-select-padding-x); border-radius: var(--lmvz-select-radius); background-color: var(--lmvz-select-bg); cursor: pointer; position: relative; z-index: 1; transition: background-color 0.15s ease; } .sc-lmvz-select-h:not([disabled]) .select-wrapper.sc-lmvz-select:hover div[aria-hidden].sc-lmvz-select { background-color: var(--lmvz-select-bg-hover); } .select-wrapper.sc-lmvz-select:focus-within div[aria-hidden].sc-lmvz-select { outline: 2px solid var(--lmvz-select-focus-color); outline-offset: 2px; } div[aria-hidden].sc-lmvz-select > span.sc-lmvz-select:first-child { flex: 1 0 0; font-size: var(--lmvz-component-component-typography-body-md-font-size, 0.875rem); font-weight: var(--lmvz-global-font-weight-500, 500); color: var(--lmvz-select-text-color); line-height: 1.4; letter-spacing: var(--lmvz-component-body-md-letter-spacing, 0); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } div[aria-hidden].sc-lmvz-select > span.sc-lmvz-select:last-child { flex-shrink: 0; display: flex; align-items: center; justify-content: center; } img.sc-lmvz-select { display: block; width: var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); height: var(--lmvz-component-icon-size-xs, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)); } select.sc-lmvz-select { appearance: none; position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; z-index: 2; border: none; background: transparent; margin: 0; padding: 0; } [disabled].sc-lmvz-select-h .select-wrapper.sc-lmvz-select { opacity: var(--lmvz-select-disabled-opacity); pointer-events: none; cursor: not-allowed; } [role='status'].sc-lmvz-select { margin-top: 4px; padding-left: var(--lmvz-select-padding-x); font-size: var(--lmvz-select-label-font-size); color: var(--lmvz-select-helper-color); line-height: normal; }`;
10242
+
10243
+ let selectIdCounter = 0;
10244
+ class LmvzSelect extends ReactiveControllerHost {
10245
+ get el() { return getElement(this); }
10246
+ get validationEl() {
10247
+ return this.el;
10248
+ }
10249
+ selectId = `lmvz-select-${selectIdCounter++}`;
10250
+ nativeSelectEl;
10251
+ constructor(hostRef) {
10252
+ super();
10253
+ registerInstance(this, hostRef);
10254
+ this.lmvzChange = createEvent(this, "lmvzChange");
10255
+ this.addController(new AriaValidationController(this));
10256
+ }
10257
+ lmvzChange;
10258
+ value;
10259
+ label;
10260
+ helperText;
10261
+ disabled = false;
10262
+ required = false;
10263
+ name;
10264
+ selectedLabel = '';
10265
+ get hasValue() {
10266
+ return Boolean(this.value);
10267
+ }
10268
+ componentDidLoad() {
10269
+ this.syncSelectedLabel();
10270
+ super.componentDidLoad();
10271
+ }
10272
+ handleValueChange(newValue) {
10273
+ if (this.nativeSelectEl && this.nativeSelectEl.value !== (newValue ?? '')) {
10274
+ this.nativeSelectEl.value = newValue ?? '';
10275
+ }
10276
+ this.syncSelectedLabel();
10277
+ }
10278
+ syncSelectedLabel() {
10279
+ if (!this.nativeSelectEl)
10280
+ return;
10281
+ const idx = this.nativeSelectEl.selectedIndex;
10282
+ this.selectedLabel = idx >= 0 ? (this.nativeSelectEl.options[idx]?.text ?? '') : '';
10283
+ }
10284
+ handleChange = (event) => {
10285
+ const select = event.target;
10286
+ this.value = select.value;
10287
+ this.syncSelectedLabel();
10288
+ this.lmvzChange.emit(select.value);
10289
+ };
10290
+ render() {
10291
+ const hasValue = this.hasValue;
10292
+ const shouldShowLabel = hasValue;
10293
+ return (hAsync(Host, { key: '7d1abb943f79e90451b43c9221801b80a2f61346' }, hAsync("div", { key: 'ded3e45246ab38e89d444c59239cdc63a2c4d4fc', class: "select-wrapper" }, hAsync("label", { key: 'cb68ff79976c2fb55d4cc827f9e90ba2597a8a43', htmlFor: this.selectId, class: shouldShowLabel ? 'floating-label' : 'assistive-label' }, this.label, this.required && shouldShowLabel && hAsync("span", { key: 'ab77eaea1645b95d90f00ffb609bbd7a1704f7bc', "aria-hidden": "true" }, " *")), hAsync("div", { key: '45cee00478a6cc31c10dddf69d8e6687fc8f440d', "aria-hidden": "true" }, hAsync("span", { key: '0c5d425ea8843234aa6abd94a207377e2a675686' }, hasValue ? this.selectedLabel : this.label, this.required && !hasValue && hAsync("span", { key: 'ebef5322371ee0253b50dd801b80cbb6402c067a', "aria-hidden": "true" }, " *")), hAsync("span", { key: 'a12d31dc29563444f728133f181b48914d31705b' }, hAsync("img", { key: 'dd3f175d1ca2b9ccc6c2bfa2075e5da62016a896', src: chevronDownSvg, alt: "" }))), hAsync("select", { key: 'a196f3b824177d1b45971c38341bf6a2939dda82', id: this.selectId, ref: (el) => (this.nativeSelectEl = el), name: this.name, disabled: this.disabled, required: this.required, "aria-label": this.label, onChange: this.handleChange }, !hasValue && hAsync("option", { key: '536cc559def0e9ffa4b2150693ece9a597c238d1', value: "", disabled: true, selected: true, hidden: true }), hAsync("slot", { key: 'ad9fed96b9f8c1d8257511bb1d5ab5ee756973ce' }))), this.helperText && hAsync("div", { key: '4723b44d781c900be5aae7ece2a0be04b6c744b9', role: "status" }, this.helperText)));
10294
+ }
10295
+ static get watchers() { return {
10296
+ "value": [{
10297
+ "handleValueChange": 0
10298
+ }]
10299
+ }; }
10300
+ static get style() { return lmvzSelectCss(); }
10301
+ static get cmpMeta() { return {
10302
+ "$flags$": 774,
10303
+ "$tagName$": "lmvz-select",
10304
+ "$members$": {
10305
+ "value": [1025],
10306
+ "label": [1],
10307
+ "helperText": [1, "helper-text"],
10308
+ "disabled": [516],
10309
+ "required": [516],
10310
+ "name": [1],
10311
+ "selectedLabel": [32]
10312
+ },
10313
+ "$listeners$": undefined,
10314
+ "$lazyBundleId$": "-",
10315
+ "$attrsToReflect$": [["disabled", "disabled"], ["required", "required"]]
10316
+ }; }
10317
+ }
10318
+
9965
10319
  registerComponents([
9966
10320
  LmvzAction,
9967
10321
  LmvzButton,
@@ -9971,6 +10325,7 @@ registerComponents([
9971
10325
  LmvzIcon,
9972
10326
  LmvzInput,
9973
10327
  LmvzMenuItem,
10328
+ LmvzSelect,
9974
10329
  ]);
9975
10330
 
9976
10331
  exports.hydrateApp = hydrateApp;
@@ -10072,7 +10427,7 @@ var NAMESPACE = (
10072
10427
  );
10073
10428
 
10074
10429
  /*
10075
- Stencil Hydrate Runner v4.43.2 | MIT Licensed | https://stenciljs.com
10430
+ Stencil Hydrate Runner v4.43.3 | MIT Licensed | https://stenciljs.com
10076
10431
  */
10077
10432
  var __create = Object.create;
10078
10433
  var __defProp = Object.defineProperty;
@@ -11403,11 +11758,11 @@ var fromCodePoint = (
11403
11758
  }
11404
11759
  );
11405
11760
  function replaceCodePoint(codePoint) {
11406
- var _a2;
11761
+ var _a3;
11407
11762
  if (codePoint >= 55296 && codePoint <= 57343 || codePoint > 1114111) {
11408
11763
  return 65533;
11409
11764
  }
11410
- return (_a2 = decodeMap.get(codePoint)) !== null && _a2 !== void 0 ? _a2 : codePoint;
11765
+ return (_a3 = decodeMap.get(codePoint)) !== null && _a3 !== void 0 ? _a3 : codePoint;
11411
11766
  }
11412
11767
 
11413
11768
  // node_modules/entities/lib/esm/decode.js
@@ -11604,9 +11959,9 @@ var EntityDecoder = class {
11604
11959
  * @returns The number of characters that were consumed.
11605
11960
  */
11606
11961
  emitNumericEntity(lastCp, expectedLength) {
11607
- var _a2;
11962
+ var _a3;
11608
11963
  if (this.consumed <= expectedLength) {
11609
- (_a2 = this.errors) === null || _a2 === void 0 ? void 0 : _a2.absenceOfDigitsInNumericCharacterReference(this.consumed);
11964
+ (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.absenceOfDigitsInNumericCharacterReference(this.consumed);
11610
11965
  return 0;
11611
11966
  }
11612
11967
  if (lastCp === CharCodes.SEMI) {
@@ -11666,11 +12021,11 @@ var EntityDecoder = class {
11666
12021
  * @returns The number of characters consumed.
11667
12022
  */
11668
12023
  emitNotTerminatedNamedEntity() {
11669
- var _a2;
12024
+ var _a3;
11670
12025
  const { result, decodeTree } = this;
11671
12026
  const valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14;
11672
12027
  this.emitNamedEntityData(result, valueLength, this.consumed);
11673
- (_a2 = this.errors) === null || _a2 === void 0 ? void 0 : _a2.missingSemicolonAfterCharacterReference();
12028
+ (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.missingSemicolonAfterCharacterReference();
11674
12029
  return this.consumed;
11675
12030
  }
11676
12031
  /**
@@ -11698,7 +12053,7 @@ var EntityDecoder = class {
11698
12053
  * @returns The number of characters consumed.
11699
12054
  */
11700
12055
  end() {
11701
- var _a2;
12056
+ var _a3;
11702
12057
  switch (this.state) {
11703
12058
  case EntityDecoderState.NamedEntity: {
11704
12059
  return this.result !== 0 && (this.decodeMode !== DecodingMode.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;
@@ -11711,7 +12066,7 @@ var EntityDecoder = class {
11711
12066
  return this.emitNumericEntity(0, 3);
11712
12067
  }
11713
12068
  case EntityDecoderState.NumericStart: {
11714
- (_a2 = this.errors) === null || _a2 === void 0 ? void 0 : _a2.absenceOfDigitsInNumericCharacterReference(this.consumed);
12069
+ (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.absenceOfDigitsInNumericCharacterReference(this.consumed);
11715
12070
  return 0;
11716
12071
  }
11717
12072
  case EntityDecoderState.EntityStart: {
@@ -12192,8 +12547,8 @@ var TAG_NAME_TO_ID = /* @__PURE__ */ new Map([
12192
12547
  [TAG_NAMES.XMP, TAG_ID.XMP]
12193
12548
  ]);
12194
12549
  function getTagID(tagName) {
12195
- var _a2;
12196
- return (_a2 = TAG_NAME_TO_ID.get(tagName)) !== null && _a2 !== void 0 ? _a2 : TAG_ID.UNKNOWN;
12550
+ var _a3;
12551
+ return (_a3 = TAG_NAME_TO_ID.get(tagName)) !== null && _a3 !== void 0 ? _a3 : TAG_ID.UNKNOWN;
12197
12552
  }
12198
12553
  var $ = TAG_ID;
12199
12554
  var SPECIAL_ELEMENTS = {
@@ -12460,8 +12815,8 @@ var Tokenizer = class {
12460
12815
  }
12461
12816
  //Errors
12462
12817
  _err(code, cpOffset = 0) {
12463
- var _a2, _b;
12464
- (_b = (_a2 = this.handler).onParseError) === null || _b === void 0 ? void 0 : _b.call(_a2, this.preprocessor.getError(code, cpOffset));
12818
+ var _a3, _b;
12819
+ (_b = (_a3 = this.handler).onParseError) === null || _b === void 0 ? void 0 : _b.call(_a3, this.preprocessor.getError(code, cpOffset));
12465
12820
  }
12466
12821
  // NOTE: `offset` may never run across line boundaries.
12467
12822
  getCurrentLocation(offset) {
@@ -12603,13 +12958,13 @@ var Tokenizer = class {
12603
12958
  this.currentLocation = this.getCurrentLocation(0);
12604
12959
  }
12605
12960
  _leaveAttrName() {
12606
- var _a2;
12961
+ var _a3;
12607
12962
  var _b;
12608
12963
  const token = this.currentToken;
12609
12964
  if (getTokenAttr(token, this.currentAttr.name) === null) {
12610
12965
  token.attrs.push(this.currentAttr);
12611
12966
  if (token.location && this.currentLocation) {
12612
- const attrLocations = (_a2 = (_b = token.location).attrs) !== null && _a2 !== void 0 ? _a2 : _b.attrs = /* @__PURE__ */ Object.create(null);
12967
+ const attrLocations = (_a3 = (_b = token.location).attrs) !== null && _a3 !== void 0 ? _a3 : _b.attrs = /* @__PURE__ */ Object.create(null);
12613
12968
  attrLocations[this.currentAttr.name] = this.currentLocation;
12614
12969
  this._leaveAttrValue();
12615
12970
  }
@@ -15957,10 +16312,10 @@ var Parser = class {
15957
16312
  //Errors
15958
16313
  /** @internal */
15959
16314
  _err(token, code, beforeToken) {
15960
- var _a2;
16315
+ var _a3;
15961
16316
  if (!this.onParseError)
15962
16317
  return;
15963
- const loc = (_a2 = token.location) !== null && _a2 !== void 0 ? _a2 : BASE_LOC;
16318
+ const loc = (_a3 = token.location) !== null && _a3 !== void 0 ? _a3 : BASE_LOC;
15964
16319
  const err2 = {
15965
16320
  code,
15966
16321
  startLine: loc.startLine,
@@ -15975,18 +16330,18 @@ var Parser = class {
15975
16330
  //Stack events
15976
16331
  /** @internal */
15977
16332
  onItemPush(node, tid, isTop) {
15978
- var _a2, _b;
15979
- (_b = (_a2 = this.treeAdapter).onItemPush) === null || _b === void 0 ? void 0 : _b.call(_a2, node);
16333
+ var _a3, _b;
16334
+ (_b = (_a3 = this.treeAdapter).onItemPush) === null || _b === void 0 ? void 0 : _b.call(_a3, node);
15980
16335
  if (isTop && this.openElements.stackTop > 0)
15981
16336
  this._setContextModes(node, tid);
15982
16337
  }
15983
16338
  /** @internal */
15984
16339
  onItemPop(node, isTop) {
15985
- var _a2, _b;
16340
+ var _a3, _b;
15986
16341
  if (this.options.sourceCodeLocationInfo) {
15987
16342
  this._setEndLocation(node, this.currentToken);
15988
16343
  }
15989
- (_b = (_a2 = this.treeAdapter).onItemPop) === null || _b === void 0 ? void 0 : _b.call(_a2, node, this.openElements.current);
16344
+ (_b = (_a3 = this.treeAdapter).onItemPop) === null || _b === void 0 ? void 0 : _b.call(_a3, node, this.openElements.current);
15990
16345
  if (isTop) {
15991
16346
  let current;
15992
16347
  let currentTagId;
@@ -18060,9 +18415,9 @@ function eofInBody(p, token) {
18060
18415
  }
18061
18416
  }
18062
18417
  function endTagInText(p, token) {
18063
- var _a2;
18418
+ var _a3;
18064
18419
  if (token.tagID === TAG_ID.SCRIPT) {
18065
- (_a2 = p.scriptHandler) === null || _a2 === void 0 ? void 0 : _a2.call(p, p.openElements.current);
18420
+ (_a3 = p.scriptHandler) === null || _a3 === void 0 ? void 0 : _a3.call(p, p.openElements.current);
18066
18421
  }
18067
18422
  p.openElements.pop();
18068
18423
  p.insertionMode = p.originalInsertionMode;
@@ -18724,7 +19079,7 @@ function startTagAfterBody(p, token) {
18724
19079
  }
18725
19080
  }
18726
19081
  function endTagAfterBody(p, token) {
18727
- var _a2;
19082
+ var _a3;
18728
19083
  if (token.tagID === TAG_ID.HTML) {
18729
19084
  if (!p.fragmentContext) {
18730
19085
  p.insertionMode = InsertionMode.AFTER_AFTER_BODY;
@@ -18732,7 +19087,7 @@ function endTagAfterBody(p, token) {
18732
19087
  if (p.options.sourceCodeLocationInfo && p.openElements.tagIDs[0] === TAG_ID.HTML) {
18733
19088
  p._setEndLocation(p.openElements.items[0], token);
18734
19089
  const bodyElement = p.openElements.items[1];
18735
- if (bodyElement && !((_a2 = p.treeAdapter.getNodeSourceCodeLocation(bodyElement)) === null || _a2 === void 0 ? void 0 : _a2.endTag)) {
19090
+ if (bodyElement && !((_a3 = p.treeAdapter.getNodeSourceCodeLocation(bodyElement)) === null || _a3 === void 0 ? void 0 : _a3.endTag)) {
18736
19091
  p._setEndLocation(bodyElement, token);
18737
19092
  }
18738
19093
  }
@@ -20596,7 +20951,7 @@ function serializeNodeToHtml(elm, serializationOptions = {}) {
20596
20951
  }
20597
20952
  var shadowRootTag = "mock:shadow-root";
20598
20953
  function* streamToHtml(node, opts, output) {
20599
- var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
20954
+ var _a3, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
20600
20955
  const isShadowRoot = node.nodeType === 11 /* DOCUMENT_FRAGMENT_NODE */;
20601
20956
  if (node.nodeType === 1 /* ELEMENT_NODE */ || isShadowRoot) {
20602
20957
  const tagName = isShadowRoot ? shadowRootTag : getTagName(node);
@@ -20605,7 +20960,7 @@ function* streamToHtml(node, opts, output) {
20605
20960
  }
20606
20961
  const ignoreTag = opts.excludeTags != null && opts.excludeTags.includes(tagName);
20607
20962
  if (ignoreTag === false) {
20608
- const isWithinWhitespaceSensitiveNode = opts.newLines || ((_a2 = opts.indentSpaces) != null ? _a2 : 0) > 0 ? isWithinWhitespaceSensitive(node) : false;
20963
+ const isWithinWhitespaceSensitiveNode = opts.newLines || ((_a3 = opts.indentSpaces) != null ? _a3 : 0) > 0 ? isWithinWhitespaceSensitive(node) : false;
20609
20964
  if (opts.newLines && !isWithinWhitespaceSensitiveNode) {
20610
20965
  yield "\n";
20611
20966
  output.currentLineWidth = 0;
@@ -21124,9 +21479,7 @@ var MockNode2 = class {
21124
21479
  const firstChild = this.firstChild;
21125
21480
  items.forEach((item) => {
21126
21481
  const isNode = typeof item === "object" && item !== null && "nodeType" in item;
21127
- if (firstChild) {
21128
- this.insertBefore(isNode ? item : this.ownerDocument.createTextNode(String(item)), firstChild);
21129
- }
21482
+ this.insertBefore(isNode ? item : this.ownerDocument.createTextNode(String(item)), firstChild);
21130
21483
  });
21131
21484
  }
21132
21485
  cloneNode(deep) {
@@ -21175,8 +21528,8 @@ var MockNode2 = class {
21175
21528
  return null;
21176
21529
  }
21177
21530
  get nodeValue() {
21178
- var _a2;
21179
- return (_a2 = this._nodeValue) != null ? _a2 : "";
21531
+ var _a3;
21532
+ return (_a3 = this._nodeValue) != null ? _a3 : "";
21180
21533
  }
21181
21534
  set nodeValue(value) {
21182
21535
  this._nodeValue = value;
@@ -21236,8 +21589,8 @@ var MockNode2 = class {
21236
21589
  return null;
21237
21590
  }
21238
21591
  get textContent() {
21239
- var _a2;
21240
- return (_a2 = this._nodeValue) != null ? _a2 : "";
21592
+ var _a3;
21593
+ return (_a3 = this._nodeValue) != null ? _a3 : "";
21241
21594
  }
21242
21595
  set textContent(value) {
21243
21596
  this._nodeValue = String(value);
@@ -21296,9 +21649,9 @@ var MockElement = class extends MockNode2 {
21296
21649
  addEventListener(this, type, handler);
21297
21650
  }
21298
21651
  attachShadow(_opts) {
21299
- var _a2;
21652
+ var _a3;
21300
21653
  const shadowRoot = this.ownerDocument.createDocumentFragment();
21301
- shadowRoot.delegatesFocus = (_a2 = _opts.delegatesFocus) != null ? _a2 : false;
21654
+ shadowRoot.delegatesFocus = (_a3 = _opts.delegatesFocus) != null ? _a3 : false;
21302
21655
  this.shadowRoot = shadowRoot;
21303
21656
  return shadowRoot;
21304
21657
  }
@@ -21474,8 +21827,8 @@ var MockElement = class extends MockNode2 {
21474
21827
  });
21475
21828
  }
21476
21829
  set innerHTML(html) {
21477
- var _a2;
21478
- if (NON_ESCAPABLE_CONTENT.has((_a2 = this.nodeName) != null ? _a2 : "") === true) {
21830
+ var _a3;
21831
+ if (NON_ESCAPABLE_CONTENT.has((_a3 = this.nodeName) != null ? _a3 : "") === true) {
21479
21832
  setTextContent(this, html);
21480
21833
  } else {
21481
21834
  for (let i = this.childNodes.length - 1; i >= 0; i--) {
@@ -21718,8 +22071,8 @@ var MockElement = class extends MockNode2 {
21718
22071
  this.setAttributeNS(null, "tabindex", value);
21719
22072
  }
21720
22073
  get tagName() {
21721
- var _a2;
21722
- return (_a2 = this.nodeName) != null ? _a2 : "";
22074
+ var _a3;
22075
+ return (_a3 = this.nodeName) != null ? _a3 : "";
21723
22076
  }
21724
22077
  set tagName(value) {
21725
22078
  this.nodeName = value;
@@ -21941,11 +22294,11 @@ function getElementsByClassName(elm, classNames, foundElms) {
21941
22294
  }
21942
22295
  }
21943
22296
  function getElementsByTagName(elm, tagName, foundElms) {
21944
- var _a2;
22297
+ var _a3;
21945
22298
  const children = elm.children;
21946
22299
  for (let i = 0, ii = children.length; i < ii; i++) {
21947
22300
  const childElm = children[i];
21948
- if (tagName === "*" || ((_a2 = childElm.nodeName) != null ? _a2 : "").toLowerCase() === tagName) {
22301
+ if (tagName === "*" || ((_a3 = childElm.nodeName) != null ? _a3 : "").toLowerCase() === tagName) {
21949
22302
  foundElms.push(childElm);
21950
22303
  }
21951
22304
  getElementsByTagName(childElm, tagName, foundElms);
@@ -21982,8 +22335,8 @@ var MockHTMLElement = class extends MockElement {
21982
22335
  super(ownerDocument, typeof nodeName === "string" ? nodeName.toUpperCase() : null);
21983
22336
  }
21984
22337
  get tagName() {
21985
- var _a2;
21986
- return (_a2 = this.nodeName) != null ? _a2 : "";
22338
+ var _a3;
22339
+ return (_a3 = this.nodeName) != null ? _a3 : "";
21987
22340
  }
21988
22341
  set tagName(value) {
21989
22342
  this.nodeName = value;
@@ -22441,10 +22794,10 @@ var MockLabelElement = class extends MockHTMLElement {
22441
22794
  this.setAttributeNS(null, "for", value);
22442
22795
  }
22443
22796
  get control() {
22444
- var _a2, _b;
22797
+ var _a3, _b;
22445
22798
  const forAttr = this.htmlFor;
22446
22799
  if (forAttr) {
22447
- return (_b = (_a2 = this.ownerDocument) == null ? void 0 : _a2.getElementById(forAttr)) != null ? _b : null;
22800
+ return (_b = (_a3 = this.ownerDocument) == null ? void 0 : _a3.getElementById(forAttr)) != null ? _b : null;
22448
22801
  }
22449
22802
  const labelableSelector = 'button, input:not([type="hidden"]), meter, output, progress, select, textarea';
22450
22803
  return this.querySelector(labelableSelector);
@@ -25157,8 +25510,35 @@ var unescape = (s, { windowsPathsNoEscape = false } = {}) => {
25157
25510
  };
25158
25511
 
25159
25512
  // node_modules/minimatch/dist/esm/ast.js
25513
+ var _a2;
25160
25514
  var types = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
25161
25515
  var isExtglobType = (c) => types.has(c);
25516
+ var isExtglobAST = (c) => isExtglobType(c.type);
25517
+ var adoptionMap = /* @__PURE__ */ new Map([
25518
+ ["!", ["@"]],
25519
+ ["?", ["?", "@"]],
25520
+ ["@", ["@"]],
25521
+ ["*", ["*", "+", "?", "@"]],
25522
+ ["+", ["+", "@"]]
25523
+ ]);
25524
+ var adoptionWithSpaceMap = /* @__PURE__ */ new Map([
25525
+ ["!", ["?"]],
25526
+ ["@", ["?"]],
25527
+ ["+", ["?", "*"]]
25528
+ ]);
25529
+ var adoptionAnyMap = /* @__PURE__ */ new Map([
25530
+ ["!", ["?", "@"]],
25531
+ ["?", ["?", "@"]],
25532
+ ["@", ["?", "@"]],
25533
+ ["*", ["*", "+", "?", "@"]],
25534
+ ["+", ["+", "@", "?", "*"]]
25535
+ ]);
25536
+ var usurpMap = /* @__PURE__ */ new Map([
25537
+ ["!", /* @__PURE__ */ new Map([["!", "@"]])],
25538
+ ["?", /* @__PURE__ */ new Map([["*", "*"], ["+", "*"]])],
25539
+ ["@", /* @__PURE__ */ new Map([["!", "!"], ["?", "?"], ["@", "@"], ["*", "*"], ["+", "+"]])],
25540
+ ["+", /* @__PURE__ */ new Map([["?", "*"], ["*", "*"]])]
25541
+ ]);
25162
25542
  var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
25163
25543
  var startNoDot = "(?!\\.)";
25164
25544
  var addPatternStart = /* @__PURE__ */ new Set(["[", "."]);
@@ -25168,8 +25548,8 @@ var regExpEscape = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
25168
25548
  var qmark = "[^/]";
25169
25549
  var star = qmark + "*?";
25170
25550
  var starNoEmpty = qmark + "+?";
25171
- var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _AST_instances, fillNegs_fn, _AST_static, parseAST_fn, partsToRegExp_fn, parseGlob_fn;
25172
- var _AST = class _AST {
25551
+ var _root, _hasMagic, _uflag, _parts, _parent, _parentIndex, _negs, _filledNegs, _options, _toString, _emptyExt, _AST_instances, fillNegs_fn, _AST_static, parseAST_fn, canAdoptWithSpace_fn, canAdopt_fn, canAdoptType_fn, adoptWithSpace_fn, adopt_fn, canUsurpType_fn, canUsurp_fn, usurp_fn, flatten_fn, partsToRegExp_fn, parseGlob_fn;
25552
+ var AST = class {
25173
25553
  constructor(type, parent, options = {}) {
25174
25554
  __privateAdd(this, _AST_instances);
25175
25555
  __publicField(this, "type");
@@ -25222,44 +25602,44 @@ var _AST = class _AST {
25222
25602
  for (const p of parts) {
25223
25603
  if (p === "")
25224
25604
  continue;
25225
- if (typeof p !== "string" && !(p instanceof _AST && __privateGet(p, _parent) === this)) {
25605
+ if (typeof p !== "string" && !(p instanceof _a2 && __privateGet(p, _parent) === this)) {
25226
25606
  throw new Error("invalid part: " + p);
25227
25607
  }
25228
25608
  __privateGet(this, _parts).push(p);
25229
25609
  }
25230
25610
  }
25231
25611
  toJSON() {
25232
- var _a2;
25612
+ var _a3;
25233
25613
  const ret = this.type === null ? __privateGet(this, _parts).slice().map((p) => typeof p === "string" ? p : p.toJSON()) : [this.type, ...__privateGet(this, _parts).map((p) => p.toJSON())];
25234
25614
  if (this.isStart() && !this.type)
25235
25615
  ret.unshift([]);
25236
- if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && ((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!")) {
25616
+ if (this.isEnd() && (this === __privateGet(this, _root) || __privateGet(__privateGet(this, _root), _filledNegs) && ((_a3 = __privateGet(this, _parent)) == null ? void 0 : _a3.type) === "!")) {
25237
25617
  ret.push({});
25238
25618
  }
25239
25619
  return ret;
25240
25620
  }
25241
25621
  isStart() {
25242
- var _a2;
25622
+ var _a3;
25243
25623
  if (__privateGet(this, _root) === this)
25244
25624
  return true;
25245
- if (!((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.isStart()))
25625
+ if (!((_a3 = __privateGet(this, _parent)) == null ? void 0 : _a3.isStart()))
25246
25626
  return false;
25247
25627
  if (__privateGet(this, _parentIndex) === 0)
25248
25628
  return true;
25249
25629
  const p = __privateGet(this, _parent);
25250
25630
  for (let i = 0; i < __privateGet(this, _parentIndex); i++) {
25251
25631
  const pp = __privateGet(p, _parts)[i];
25252
- if (!(pp instanceof _AST && pp.type === "!")) {
25632
+ if (!(pp instanceof _a2 && pp.type === "!")) {
25253
25633
  return false;
25254
25634
  }
25255
25635
  }
25256
25636
  return true;
25257
25637
  }
25258
25638
  isEnd() {
25259
- var _a2, _b, _c;
25639
+ var _a3, _b, _c;
25260
25640
  if (__privateGet(this, _root) === this)
25261
25641
  return true;
25262
- if (((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!")
25642
+ if (((_a3 = __privateGet(this, _parent)) == null ? void 0 : _a3.type) === "!")
25263
25643
  return true;
25264
25644
  if (!((_b = __privateGet(this, _parent)) == null ? void 0 : _b.isEnd()))
25265
25645
  return false;
@@ -25275,16 +25655,16 @@ var _AST = class _AST {
25275
25655
  this.push(part.clone(this));
25276
25656
  }
25277
25657
  clone(parent) {
25278
- const c = new _AST(this.type, parent);
25658
+ const c = new _a2(this.type, parent);
25279
25659
  for (const p of __privateGet(this, _parts)) {
25280
25660
  c.copyIn(p);
25281
25661
  }
25282
25662
  return c;
25283
25663
  }
25284
25664
  static fromGlob(pattern, options = {}) {
25285
- var _a2;
25286
- const ast = new _AST(null, void 0, options);
25287
- __privateMethod(_a2 = _AST, _AST_static, parseAST_fn).call(_a2, pattern, ast, 0, options);
25665
+ var _a3;
25666
+ const ast = new _a2(null, void 0, options);
25667
+ __privateMethod(_a3 = _a2, _AST_static, parseAST_fn).call(_a3, pattern, ast, 0, options, 0);
25288
25668
  return ast;
25289
25669
  }
25290
25670
  // returns the regular expression if there's magic, or the unescaped
@@ -25377,15 +25757,17 @@ var _AST = class _AST {
25377
25757
  // is ^(?!\.), we can just prepend (?!\.) to the pattern (either root
25378
25758
  // or start or whatever) and prepend ^ or / at the Regexp construction.
25379
25759
  toRegExpSource(allowDot) {
25380
- var _a2;
25760
+ var _a3;
25381
25761
  const dot = allowDot != null ? allowDot : !!__privateGet(this, _options).dot;
25382
- if (__privateGet(this, _root) === this)
25762
+ if (__privateGet(this, _root) === this) {
25763
+ __privateMethod(this, _AST_instances, flatten_fn).call(this);
25383
25764
  __privateMethod(this, _AST_instances, fillNegs_fn).call(this);
25384
- if (!this.type) {
25765
+ }
25766
+ if (!isExtglobAST(this)) {
25385
25767
  const noEmpty = this.isStart() && this.isEnd();
25386
25768
  const src = __privateGet(this, _parts).map((p) => {
25387
- var _a3;
25388
- const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a3 = _AST, _AST_static, parseGlob_fn).call(_a3, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot);
25769
+ var _a4;
25770
+ const [re, _, hasMagic, uflag] = typeof p === "string" ? __privateMethod(_a4 = _a2, _AST_static, parseGlob_fn).call(_a4, p, __privateGet(this, _hasMagic), noEmpty) : p.toRegExpSource(allowDot);
25389
25771
  __privateSet(this, _hasMagic, __privateGet(this, _hasMagic) || hasMagic);
25390
25772
  __privateSet(this, _uflag, __privateGet(this, _uflag) || uflag);
25391
25773
  return re;
@@ -25408,7 +25790,7 @@ var _AST = class _AST {
25408
25790
  }
25409
25791
  }
25410
25792
  let end = "";
25411
- if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && ((_a2 = __privateGet(this, _parent)) == null ? void 0 : _a2.type) === "!") {
25793
+ if (this.isEnd() && __privateGet(__privateGet(this, _root), _filledNegs) && ((_a3 = __privateGet(this, _parent)) == null ? void 0 : _a3.type) === "!") {
25412
25794
  end = "(?:$|\\/)";
25413
25795
  }
25414
25796
  const final2 = start2 + src + end;
@@ -25424,9 +25806,10 @@ var _AST = class _AST {
25424
25806
  let body = __privateMethod(this, _AST_instances, partsToRegExp_fn).call(this, dot);
25425
25807
  if (this.isStart() && this.isEnd() && !body && this.type !== "!") {
25426
25808
  const s = this.toString();
25427
- __privateSet(this, _parts, [s]);
25428
- this.type = null;
25429
- __privateSet(this, _hasMagic, void 0);
25809
+ const me = this;
25810
+ __privateSet(me, _parts, [s]);
25811
+ me.type = null;
25812
+ __privateSet(me, _hasMagic, void 0);
25430
25813
  return [s, unescape(this.toString()), false, false];
25431
25814
  }
25432
25815
  let bodyDotAllowed = !repeated || allowDot || dot || !startNoDot ? "" : __privateMethod(this, _AST_instances, partsToRegExp_fn).call(this, true);
@@ -25495,8 +25878,9 @@ fillNegs_fn = function() {
25495
25878
  return this;
25496
25879
  };
25497
25880
  _AST_static = new WeakSet();
25498
- parseAST_fn = function(str, ast, pos, opt) {
25499
- var _a2, _b;
25881
+ parseAST_fn = function(str, ast, pos, opt, extDepth) {
25882
+ var _a3, _b, _c, _d, _e;
25883
+ const maxDepth = (_a3 = opt.maxExtglobRecursion) != null ? _a3 : 2;
25500
25884
  let escaping = false;
25501
25885
  let inBrace = false;
25502
25886
  let braceStart = -1;
@@ -25528,11 +25912,12 @@ parseAST_fn = function(str, ast, pos, opt) {
25528
25912
  acc2 += c;
25529
25913
  continue;
25530
25914
  }
25531
- if (!opt.noext && isExtglobType(c) && str.charAt(i2) === "(") {
25915
+ const doRecurse = !opt.noext && isExtglobType(c) && str.charAt(i2) === "(" && extDepth <= maxDepth;
25916
+ if (doRecurse) {
25532
25917
  ast.push(acc2);
25533
25918
  acc2 = "";
25534
- const ext2 = new _AST(c, ast);
25535
- i2 = __privateMethod(_a2 = _AST, _AST_static, parseAST_fn).call(_a2, str, ext2, i2, opt);
25919
+ const ext2 = new _a2(c, ast);
25920
+ i2 = __privateMethod(_b = _a2, _AST_static, parseAST_fn).call(_b, str, ext2, i2, opt, extDepth + 1);
25536
25921
  ast.push(ext2);
25537
25922
  continue;
25538
25923
  }
@@ -25542,7 +25927,7 @@ parseAST_fn = function(str, ast, pos, opt) {
25542
25927
  return i2;
25543
25928
  }
25544
25929
  let i = pos + 1;
25545
- let part = new _AST(null, ast);
25930
+ let part = new _a2(null, ast);
25546
25931
  const parts = [];
25547
25932
  let acc = "";
25548
25933
  while (i < str.length) {
@@ -25569,19 +25954,22 @@ parseAST_fn = function(str, ast, pos, opt) {
25569
25954
  acc += c;
25570
25955
  continue;
25571
25956
  }
25572
- if (isExtglobType(c) && str.charAt(i) === "(") {
25957
+ const doRecurse = isExtglobType(c) && str.charAt(i) === "(" && /* c8 ignore start - the maxDepth is sufficient here */
25958
+ (extDepth <= maxDepth || ast && __privateMethod(_c = ast, _AST_instances, canAdoptType_fn).call(_c, c));
25959
+ if (doRecurse) {
25960
+ const depthAdd = ast && __privateMethod(_d = ast, _AST_instances, canAdoptType_fn).call(_d, c) ? 0 : 1;
25573
25961
  part.push(acc);
25574
25962
  acc = "";
25575
- const ext2 = new _AST(c, part);
25963
+ const ext2 = new _a2(c, part);
25576
25964
  part.push(ext2);
25577
- i = __privateMethod(_b = _AST, _AST_static, parseAST_fn).call(_b, str, ext2, i, opt);
25965
+ i = __privateMethod(_e = _a2, _AST_static, parseAST_fn).call(_e, str, ext2, i, opt, extDepth + depthAdd);
25578
25966
  continue;
25579
25967
  }
25580
25968
  if (c === "|") {
25581
25969
  part.push(acc);
25582
25970
  acc = "";
25583
25971
  parts.push(part);
25584
- part = new _AST(null, ast);
25972
+ part = new _a2(null, ast);
25585
25973
  continue;
25586
25974
  }
25587
25975
  if (c === ")") {
@@ -25600,6 +25988,100 @@ parseAST_fn = function(str, ast, pos, opt) {
25600
25988
  __privateSet(ast, _parts, [str.substring(pos - 1)]);
25601
25989
  return i;
25602
25990
  };
25991
+ canAdoptWithSpace_fn = function(child) {
25992
+ return __privateMethod(this, _AST_instances, canAdopt_fn).call(this, child, adoptionWithSpaceMap);
25993
+ };
25994
+ canAdopt_fn = function(child, map2 = adoptionMap) {
25995
+ if (!child || typeof child !== "object" || child.type !== null || __privateGet(child, _parts).length !== 1 || this.type === null) {
25996
+ return false;
25997
+ }
25998
+ const gc = __privateGet(child, _parts)[0];
25999
+ if (!gc || typeof gc !== "object" || gc.type === null) {
26000
+ return false;
26001
+ }
26002
+ return __privateMethod(this, _AST_instances, canAdoptType_fn).call(this, gc.type, map2);
26003
+ };
26004
+ canAdoptType_fn = function(c, map2 = adoptionAnyMap) {
26005
+ var _a3;
26006
+ return !!((_a3 = map2.get(this.type)) == null ? void 0 : _a3.includes(c));
26007
+ };
26008
+ adoptWithSpace_fn = function(child, index) {
26009
+ const gc = __privateGet(child, _parts)[0];
26010
+ const blank = new _a2(null, gc, this.options);
26011
+ __privateGet(blank, _parts).push("");
26012
+ gc.push(blank);
26013
+ __privateMethod(this, _AST_instances, adopt_fn).call(this, child, index);
26014
+ };
26015
+ adopt_fn = function(child, index) {
26016
+ const gc = __privateGet(child, _parts)[0];
26017
+ __privateGet(this, _parts).splice(index, 1, ...__privateGet(gc, _parts));
26018
+ for (const p of __privateGet(gc, _parts)) {
26019
+ if (typeof p === "object")
26020
+ __privateSet(p, _parent, this);
26021
+ }
26022
+ __privateSet(this, _toString, void 0);
26023
+ };
26024
+ canUsurpType_fn = function(c) {
26025
+ const m = usurpMap.get(this.type);
26026
+ return !!(m == null ? void 0 : m.has(c));
26027
+ };
26028
+ canUsurp_fn = function(child) {
26029
+ if (!child || typeof child !== "object" || child.type !== null || __privateGet(child, _parts).length !== 1 || this.type === null || __privateGet(this, _parts).length !== 1) {
26030
+ return false;
26031
+ }
26032
+ const gc = __privateGet(child, _parts)[0];
26033
+ if (!gc || typeof gc !== "object" || gc.type === null) {
26034
+ return false;
26035
+ }
26036
+ return __privateMethod(this, _AST_instances, canUsurpType_fn).call(this, gc.type);
26037
+ };
26038
+ usurp_fn = function(child) {
26039
+ const m = usurpMap.get(this.type);
26040
+ const gc = __privateGet(child, _parts)[0];
26041
+ const nt = m == null ? void 0 : m.get(gc.type);
26042
+ if (!nt)
26043
+ return false;
26044
+ __privateSet(this, _parts, __privateGet(gc, _parts));
26045
+ for (const p of __privateGet(this, _parts)) {
26046
+ if (typeof p === "object")
26047
+ __privateSet(p, _parent, this);
26048
+ }
26049
+ this.type = nt;
26050
+ __privateSet(this, _toString, void 0);
26051
+ __privateSet(this, _emptyExt, false);
26052
+ };
26053
+ flatten_fn = function() {
26054
+ var _a3, _b;
26055
+ if (!isExtglobAST(this)) {
26056
+ for (const p of __privateGet(this, _parts)) {
26057
+ if (typeof p === "object")
26058
+ __privateMethod(_a3 = p, _AST_instances, flatten_fn).call(_a3);
26059
+ }
26060
+ } else {
26061
+ let iterations = 0;
26062
+ let done = false;
26063
+ do {
26064
+ done = true;
26065
+ for (let i = 0; i < __privateGet(this, _parts).length; i++) {
26066
+ const c = __privateGet(this, _parts)[i];
26067
+ if (typeof c === "object") {
26068
+ __privateMethod(_b = c, _AST_instances, flatten_fn).call(_b);
26069
+ if (__privateMethod(this, _AST_instances, canAdopt_fn).call(this, c)) {
26070
+ done = false;
26071
+ __privateMethod(this, _AST_instances, adopt_fn).call(this, c, i);
26072
+ } else if (__privateMethod(this, _AST_instances, canAdoptWithSpace_fn).call(this, c)) {
26073
+ done = false;
26074
+ __privateMethod(this, _AST_instances, adoptWithSpace_fn).call(this, c, i);
26075
+ } else if (__privateMethod(this, _AST_instances, canUsurp_fn).call(this, c)) {
26076
+ done = false;
26077
+ __privateMethod(this, _AST_instances, usurp_fn).call(this, c);
26078
+ }
26079
+ }
26080
+ }
26081
+ } while (!done && ++iterations < 10);
26082
+ }
26083
+ __privateSet(this, _toString, void 0);
26084
+ };
25603
26085
  partsToRegExp_fn = function(dot) {
25604
26086
  return __privateGet(this, _parts).map((p) => {
25605
26087
  if (typeof p === "string") {
@@ -25614,11 +26096,13 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
25614
26096
  let escaping = false;
25615
26097
  let re = "";
25616
26098
  let uflag = false;
26099
+ let inStar = false;
25617
26100
  for (let i = 0; i < glob.length; i++) {
25618
26101
  const c = glob.charAt(i);
25619
26102
  if (escaping) {
25620
26103
  escaping = false;
25621
26104
  re += (reSpecials.has(c) ? "\\" : "") + c;
26105
+ inStar = false;
25622
26106
  continue;
25623
26107
  }
25624
26108
  if (c === "\\") {
@@ -25636,16 +26120,19 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
25636
26120
  uflag = uflag || needUflag;
25637
26121
  i += consumed - 1;
25638
26122
  hasMagic = hasMagic || magic;
26123
+ inStar = false;
25639
26124
  continue;
25640
26125
  }
25641
26126
  }
25642
26127
  if (c === "*") {
25643
- if (noEmpty && glob === "*")
25644
- re += starNoEmpty;
25645
- else
25646
- re += star;
26128
+ if (inStar)
26129
+ continue;
26130
+ inStar = true;
26131
+ re += noEmpty && /^[*]+$/.test(glob) ? starNoEmpty : star;
25647
26132
  hasMagic = true;
25648
26133
  continue;
26134
+ } else {
26135
+ inStar = false;
25649
26136
  }
25650
26137
  if (c === "?") {
25651
26138
  re += qmark;
@@ -25656,8 +26143,8 @@ parseGlob_fn = function(glob, hasMagic, noEmpty = false) {
25656
26143
  }
25657
26144
  return [re, unescape(glob), !!hasMagic, uflag];
25658
26145
  };
25659
- __privateAdd(_AST, _AST_static);
25660
- var AST = _AST;
26146
+ __privateAdd(AST, _AST_static);
26147
+ _a2 = AST;
25661
26148
 
25662
26149
  // node_modules/minimatch/dist/esm/escape.js
25663
26150
  var escape = (s, { windowsPathsNoEscape = false } = {}) => {
@@ -25796,28 +26283,33 @@ var match = (list, pattern, options = {}) => {
25796
26283
  minimatch.match = match;
25797
26284
  var globMagic = /[?*]|[+@!]\(.*?\)|\[|\]/;
25798
26285
  var regExpEscape2 = (s) => s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
26286
+ var _Minimatch_instances, matchGlobstar_fn, matchGlobStarBodySections_fn, matchOne_fn;
25799
26287
  var Minimatch = class {
25800
- options;
25801
- set;
25802
- pattern;
25803
- windowsPathsNoEscape;
25804
- nonegate;
25805
- negate;
25806
- comment;
25807
- empty;
25808
- preserveMultipleSlashes;
25809
- partial;
25810
- globSet;
25811
- globParts;
25812
- nocase;
25813
- isWindows;
25814
- platform;
25815
- windowsNoMagicRoot;
25816
- regexp;
25817
26288
  constructor(pattern, options = {}) {
26289
+ __privateAdd(this, _Minimatch_instances);
26290
+ __publicField(this, "options");
26291
+ __publicField(this, "set");
26292
+ __publicField(this, "pattern");
26293
+ __publicField(this, "windowsPathsNoEscape");
26294
+ __publicField(this, "nonegate");
26295
+ __publicField(this, "negate");
26296
+ __publicField(this, "comment");
26297
+ __publicField(this, "empty");
26298
+ __publicField(this, "preserveMultipleSlashes");
26299
+ __publicField(this, "partial");
26300
+ __publicField(this, "globSet");
26301
+ __publicField(this, "globParts");
26302
+ __publicField(this, "nocase");
26303
+ __publicField(this, "isWindows");
26304
+ __publicField(this, "platform");
26305
+ __publicField(this, "windowsNoMagicRoot");
26306
+ __publicField(this, "maxGlobstarRecursion");
26307
+ __publicField(this, "regexp");
26308
+ var _a3;
25818
26309
  assertValidPattern(pattern);
25819
26310
  options = options || {};
25820
26311
  this.options = options;
26312
+ this.maxGlobstarRecursion = (_a3 = options.maxGlobstarRecursion) != null ? _a3 : 200;
25821
26313
  this.pattern = pattern;
25822
26314
  this.platform = options.platform || defaultPlatform;
25823
26315
  this.isWindows = this.platform === "win32";
@@ -26085,10 +26577,11 @@ var Minimatch = class {
26085
26577
  for (let i = 0; i < globParts.length - 1; i++) {
26086
26578
  for (let j = i + 1; j < globParts.length; j++) {
26087
26579
  const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
26088
- if (!matched)
26089
- continue;
26090
- globParts[i] = matched;
26091
- globParts[j] = [];
26580
+ if (matched) {
26581
+ globParts[i] = [];
26582
+ globParts[j] = matched;
26583
+ break;
26584
+ }
26092
26585
  }
26093
26586
  }
26094
26587
  return globParts.filter((gs) => gs.length);
@@ -26149,7 +26642,8 @@ var Minimatch = class {
26149
26642
  // out of pattern, then that's fine, as long as all
26150
26643
  // the parts match.
26151
26644
  matchOne(file, pattern, partial = false) {
26152
- const options = this.options;
26645
+ let fileStartIndex = 0;
26646
+ let patternStartIndex = 0;
26153
26647
  if (this.isWindows) {
26154
26648
  const fileDrive = typeof file[0] === "string" && /^[a-z]:$/i.test(file[0]);
26155
26649
  const fileUNC = !fileDrive && file[0] === "" && file[1] === "" && file[2] === "?" && /^[a-z]:$/i.test(file[3]);
@@ -26158,14 +26652,14 @@ var Minimatch = class {
26158
26652
  const fdi = fileUNC ? 3 : fileDrive ? 0 : void 0;
26159
26653
  const pdi = patternUNC ? 3 : patternDrive ? 0 : void 0;
26160
26654
  if (typeof fdi === "number" && typeof pdi === "number") {
26161
- const [fd, pd] = [file[fdi], pattern[pdi]];
26655
+ const [fd, pd] = [
26656
+ file[fdi],
26657
+ pattern[pdi]
26658
+ ];
26162
26659
  if (fd.toLowerCase() === pd.toLowerCase()) {
26163
26660
  pattern[pdi] = fd;
26164
- if (pdi > fdi) {
26165
- pattern = pattern.slice(pdi);
26166
- } else if (fdi > pdi) {
26167
- file = file.slice(fdi);
26168
- }
26661
+ patternStartIndex = pdi;
26662
+ fileStartIndex = fdi;
26169
26663
  }
26170
26664
  }
26171
26665
  }
@@ -26173,71 +26667,10 @@ var Minimatch = class {
26173
26667
  if (optimizationLevel >= 2) {
26174
26668
  file = this.levelTwoFileOptimize(file);
26175
26669
  }
26176
- this.debug("matchOne", this, { file, pattern });
26177
- this.debug("matchOne", file.length, pattern.length);
26178
- for (var fi = 0, pi = 0, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
26179
- this.debug("matchOne loop");
26180
- var p = pattern[pi];
26181
- var f = file[fi];
26182
- this.debug(pattern, p, f);
26183
- if (p === false) {
26184
- return false;
26185
- }
26186
- if (p === GLOBSTAR) {
26187
- this.debug("GLOBSTAR", [pattern, p, f]);
26188
- var fr = fi;
26189
- var pr = pi + 1;
26190
- if (pr === pl) {
26191
- this.debug("** at the end");
26192
- for (; fi < fl; fi++) {
26193
- if (file[fi] === "." || file[fi] === ".." || !options.dot && file[fi].charAt(0) === ".")
26194
- return false;
26195
- }
26196
- return true;
26197
- }
26198
- while (fr < fl) {
26199
- var swallowee = file[fr];
26200
- this.debug("\nglobstar while", file, fr, pattern, pr, swallowee);
26201
- if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {
26202
- this.debug("globstar found match!", fr, fl, swallowee);
26203
- return true;
26204
- } else {
26205
- if (swallowee === "." || swallowee === ".." || !options.dot && swallowee.charAt(0) === ".") {
26206
- this.debug("dot detected!", file, fr, pattern, pr);
26207
- break;
26208
- }
26209
- this.debug("globstar swallow a segment, and continue");
26210
- fr++;
26211
- }
26212
- }
26213
- if (partial) {
26214
- this.debug("\n>>> no match, partial?", file, fr, pattern, pr);
26215
- if (fr === fl) {
26216
- return true;
26217
- }
26218
- }
26219
- return false;
26220
- }
26221
- let hit;
26222
- if (typeof p === "string") {
26223
- hit = f === p;
26224
- this.debug("string match", p, f, hit);
26225
- } else {
26226
- hit = p.test(f);
26227
- this.debug("pattern match", p, f, hit);
26228
- }
26229
- if (!hit)
26230
- return false;
26231
- }
26232
- if (fi === fl && pi === pl) {
26233
- return true;
26234
- } else if (fi === fl) {
26235
- return partial;
26236
- } else if (pi === pl) {
26237
- return fi === fl - 1 && file[fi] === "";
26238
- } else {
26239
- throw new Error("wtf?");
26670
+ if (pattern.includes(GLOBSTAR)) {
26671
+ return __privateMethod(this, _Minimatch_instances, matchGlobstar_fn).call(this, file, pattern, partial, fileStartIndex, patternStartIndex);
26240
26672
  }
26673
+ return __privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, pattern, partial, fileStartIndex, patternStartIndex);
26241
26674
  }
26242
26675
  braceExpand() {
26243
26676
  return braceExpand(this.pattern, this.options);
@@ -26376,6 +26809,135 @@ var Minimatch = class {
26376
26809
  return minimatch.defaults(def).Minimatch;
26377
26810
  }
26378
26811
  };
26812
+ _Minimatch_instances = new WeakSet();
26813
+ matchGlobstar_fn = function(file, pattern, partial, fileIndex, patternIndex) {
26814
+ const firstgs = pattern.indexOf(GLOBSTAR, patternIndex);
26815
+ const lastgs = pattern.lastIndexOf(GLOBSTAR);
26816
+ const [head, body, tail] = partial ? [
26817
+ pattern.slice(patternIndex, firstgs),
26818
+ pattern.slice(firstgs + 1),
26819
+ []
26820
+ ] : [
26821
+ pattern.slice(patternIndex, firstgs),
26822
+ pattern.slice(firstgs + 1, lastgs),
26823
+ pattern.slice(lastgs + 1)
26824
+ ];
26825
+ if (head.length) {
26826
+ const fileHead = file.slice(fileIndex, fileIndex + head.length);
26827
+ if (!__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, fileHead, head, partial, 0, 0))
26828
+ return false;
26829
+ fileIndex += head.length;
26830
+ }
26831
+ let fileTailMatch = 0;
26832
+ if (tail.length) {
26833
+ if (tail.length + fileIndex > file.length)
26834
+ return false;
26835
+ let tailStart = file.length - tail.length;
26836
+ if (__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, tail, partial, tailStart, 0)) {
26837
+ fileTailMatch = tail.length;
26838
+ } else {
26839
+ if (file[file.length - 1] !== "" || fileIndex + tail.length === file.length) {
26840
+ return false;
26841
+ }
26842
+ tailStart--;
26843
+ if (!__privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file, tail, partial, tailStart, 0))
26844
+ return false;
26845
+ fileTailMatch = tail.length + 1;
26846
+ }
26847
+ }
26848
+ if (!body.length) {
26849
+ let sawSome = !!fileTailMatch;
26850
+ for (let i2 = fileIndex; i2 < file.length - fileTailMatch; i2++) {
26851
+ const f = String(file[i2]);
26852
+ sawSome = true;
26853
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
26854
+ return false;
26855
+ }
26856
+ }
26857
+ return partial || sawSome;
26858
+ }
26859
+ const bodySegments = [[[], 0]];
26860
+ let currentBody = bodySegments[0];
26861
+ let nonGsParts = 0;
26862
+ const nonGsPartsSums = [0];
26863
+ for (const b of body) {
26864
+ if (b === GLOBSTAR) {
26865
+ nonGsPartsSums.push(nonGsParts);
26866
+ currentBody = [[], 0];
26867
+ bodySegments.push(currentBody);
26868
+ } else {
26869
+ currentBody[0].push(b);
26870
+ nonGsParts++;
26871
+ }
26872
+ }
26873
+ let i = bodySegments.length - 1;
26874
+ const fileLength = file.length - fileTailMatch;
26875
+ for (const b of bodySegments) {
26876
+ b[1] = fileLength - (nonGsPartsSums[i--] + b[0].length);
26877
+ }
26878
+ return !!__privateMethod(this, _Minimatch_instances, matchGlobStarBodySections_fn).call(this, file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch);
26879
+ };
26880
+ matchGlobStarBodySections_fn = function(file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail) {
26881
+ const bs = bodySegments[bodyIndex];
26882
+ if (!bs) {
26883
+ for (let i = fileIndex; i < file.length; i++) {
26884
+ sawTail = true;
26885
+ const f = file[i];
26886
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
26887
+ return false;
26888
+ }
26889
+ }
26890
+ return sawTail;
26891
+ }
26892
+ const [body, after] = bs;
26893
+ while (fileIndex <= after) {
26894
+ const m = __privateMethod(this, _Minimatch_instances, matchOne_fn).call(this, file.slice(0, fileIndex + body.length), body, partial, fileIndex, 0);
26895
+ if (m && globStarDepth < this.maxGlobstarRecursion) {
26896
+ const sub = __privateMethod(this, _Minimatch_instances, matchGlobStarBodySections_fn).call(this, file, bodySegments, fileIndex + body.length, bodyIndex + 1, partial, globStarDepth + 1, sawTail);
26897
+ if (sub !== false)
26898
+ return sub;
26899
+ }
26900
+ const f = file[fileIndex];
26901
+ if (f === "." || f === ".." || !this.options.dot && f.startsWith(".")) {
26902
+ return false;
26903
+ }
26904
+ fileIndex++;
26905
+ }
26906
+ return partial || null;
26907
+ };
26908
+ matchOne_fn = function(file, pattern, partial, fileIndex, patternIndex) {
26909
+ let fi;
26910
+ let pi;
26911
+ let pl;
26912
+ let fl;
26913
+ for (fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length; fi < fl && pi < pl; fi++, pi++) {
26914
+ this.debug("matchOne loop");
26915
+ let p = pattern[pi];
26916
+ let f = file[fi];
26917
+ this.debug(pattern, p, f);
26918
+ if (p === false || p === GLOBSTAR)
26919
+ return false;
26920
+ let hit;
26921
+ if (typeof p === "string") {
26922
+ hit = f === p;
26923
+ this.debug("string match", p, f, hit);
26924
+ } else {
26925
+ hit = p.test(f);
26926
+ this.debug("pattern match", p, f, hit);
26927
+ }
26928
+ if (!hit)
26929
+ return false;
26930
+ }
26931
+ if (fi === fl && pi === pl) {
26932
+ return true;
26933
+ } else if (fi === fl) {
26934
+ return partial;
26935
+ } else if (pi === pl) {
26936
+ return fi === fl - 1 && file[fi] === "";
26937
+ } else {
26938
+ throw new Error("wtf?");
26939
+ }
26940
+ };
26379
26941
  minimatch.AST = AST;
26380
26942
  minimatch.Minimatch = Minimatch;
26381
26943
  minimatch.escape = escape;
@@ -26446,7 +27008,7 @@ var isJsFile = lowerPathParam((p) => p.endsWith(".js") || p.endsWith(".mjs") ||
26446
27008
 
26447
27009
  // src/compiler/html/canonical-link.ts
26448
27010
  var updateCanonicalLink = (doc, href) => {
26449
- var _a2;
27011
+ var _a3;
26450
27012
  let canonicalLinkElm = doc.head.querySelector('link[rel="canonical"]');
26451
27013
  if (typeof href === "string") {
26452
27014
  if (canonicalLinkElm == null) {
@@ -26459,7 +27021,7 @@ var updateCanonicalLink = (doc, href) => {
26459
27021
  if (canonicalLinkElm != null) {
26460
27022
  const existingHref = canonicalLinkElm.getAttribute("href");
26461
27023
  if (!existingHref) {
26462
- (_a2 = canonicalLinkElm.parentNode) == null ? void 0 : _a2.removeChild(canonicalLinkElm);
27024
+ (_a3 = canonicalLinkElm.parentNode) == null ? void 0 : _a3.removeChild(canonicalLinkElm);
26463
27025
  }
26464
27026
  }
26465
27027
  }
@@ -26971,7 +27533,7 @@ var serializeCss = (stylesheet, serializeOpts) => {
26971
27533
  return out.join("");
26972
27534
  };
26973
27535
  var serializeCssVisitNode = (opts, node, index, len) => {
26974
- var _a2;
27536
+ var _a3;
26975
27537
  const nodeType = node.type;
26976
27538
  if (nodeType === 4 /* Declaration */) {
26977
27539
  return serializeCssDeclaration(node, index, len);
@@ -26980,7 +27542,7 @@ var serializeCssVisitNode = (opts, node, index, len) => {
26980
27542
  return serializeCssRule(opts, node);
26981
27543
  }
26982
27544
  if (nodeType === 1 /* Comment */) {
26983
- if (((_a2 = node.comment) == null ? void 0 : _a2[0]) === "!") {
27545
+ if (((_a3 = node.comment) == null ? void 0 : _a3[0]) === "!") {
26984
27546
  return `/*${node.comment}*/`;
26985
27547
  } else {
26986
27548
  return "";
@@ -27028,10 +27590,10 @@ var serializeCssVisitNode = (opts, node, index, len) => {
27028
27590
  return "";
27029
27591
  };
27030
27592
  var serializeCssRule = (opts, node) => {
27031
- var _a2, _b;
27593
+ var _a3, _b;
27032
27594
  const decls = node.declarations;
27033
27595
  const usedSelectors = opts.usedSelectors;
27034
- const selectors = (_b = (_a2 = node.selectors) == null ? void 0 : _a2.slice()) != null ? _b : [];
27596
+ const selectors = (_b = (_a3 = node.selectors) == null ? void 0 : _a3.slice()) != null ? _b : [];
27035
27597
  const hasDecls = decls != null && decls.length > 0;
27036
27598
  const hasNestedRules = node.rules != null && node.rules.length > 0;
27037
27599
  if (!hasDecls && !hasNestedRules) {
@@ -27135,8 +27697,8 @@ var serializeCssKeyframes = (opts, node) => {
27135
27697
  return "@" + (node.vendor || "") + "keyframes " + node.name + "{" + keyframesCss + "}";
27136
27698
  };
27137
27699
  var serializeCssKeyframe = (opts, node) => {
27138
- var _a2, _b;
27139
- return ((_b = (_a2 = node.values) == null ? void 0 : _a2.join(",")) != null ? _b : "") + "{" + serializeCssMapVisit(opts, node.declarations) + "}";
27700
+ var _a3, _b;
27701
+ return ((_b = (_a3 = node.values) == null ? void 0 : _a3.join(",")) != null ? _b : "") + "{" + serializeCssMapVisit(opts, node.declarations) + "}";
27140
27702
  };
27141
27703
  var serializeCssFontFace = (opts, node) => {
27142
27704
  const fontCss = serializeCssMapVisit(opts, node.declarations);
@@ -27160,8 +27722,8 @@ var serializeCssContainer = (opts, node) => {
27160
27722
  return "@container " + removeMediaWhitespace(node.media) + "{" + containerCss + "}";
27161
27723
  };
27162
27724
  var serializeCssPage = (opts, node) => {
27163
- var _a2, _b;
27164
- const sel = (_b = (_a2 = node.selectors) == null ? void 0 : _a2.join(", ")) != null ? _b : "";
27725
+ var _a3, _b;
27726
+ const sel = (_b = (_a3 = node.selectors) == null ? void 0 : _a3.join(", ")) != null ? _b : "";
27165
27727
  return "@page " + sel + "{" + serializeCssMapVisit(opts, node.declarations) + "}";
27166
27728
  };
27167
27729
  var serializeCssDocument = (opts, node) => {
@@ -27208,10 +27770,10 @@ var removeSelectorWhitespace = (selector) => {
27208
27770
  return rtn;
27209
27771
  };
27210
27772
  var removeMediaWhitespace = (media) => {
27211
- var _a2;
27773
+ var _a3;
27212
27774
  let rtn = "";
27213
27775
  let char = "";
27214
- media = (_a2 = media == null ? void 0 : media.trim()) != null ? _a2 : "";
27776
+ media = (_a3 = media == null ? void 0 : media.trim()) != null ? _a3 : "";
27215
27777
  for (let i = 0, l = media.length; i < l; i++) {
27216
27778
  char = media[i];
27217
27779
  if (CSS_WS_REG.test(char)) {