mlform 0.1.7 → 0.1.8

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 (218) hide show
  1. package/README.md +39 -12
  2. package/dist/builtins-DegwhFGA.js +3507 -0
  3. package/dist/builtins-ml-9qB2MOxt.js +51 -0
  4. package/dist/{design-system-CrrSGfFB.js → design-system-Dxx1Sh7r.js} +284 -268
  5. package/dist/errors-B3H1wRwj.js +8 -0
  6. package/dist/kit-CuRF6dhL.js +1847 -0
  7. package/dist/mlform/behaviors.mjs +32 -0
  8. package/dist/mlform/builtins-ml.mjs +3 -0
  9. package/dist/mlform/design-system.mjs +1 -1
  10. package/dist/mlform/kit.mjs +3 -3
  11. package/dist/mlform/presentation.mjs +2 -0
  12. package/dist/mlform/primitives.mjs +2 -2
  13. package/dist/mlform/runtime.mjs +5 -0
  14. package/dist/mlform/schema.mjs +102 -0
  15. package/dist/mlform/transport.mjs +2 -2
  16. package/dist/mlform.mjs +8 -4
  17. package/dist/presentation-CkQuYheR.js +200 -0
  18. package/dist/{primitives-BqjFDDhL.js → primitives-Duag8Lj0.js} +1367 -1312
  19. package/dist/runtime-DMjDVo0H.js +1824 -0
  20. package/dist/strings-CWwrrYzz.js +4 -0
  21. package/dist/{transport-A1RsnZhD.js → transport-CtVX8ZUT.js} +311 -336
  22. package/dist/types/src/behaviors/index.d.ts +3 -0
  23. package/dist/types/src/builtins-ml/index.d.ts +5 -0
  24. package/dist/types/src/design-system/runtime/fingerprint.d.ts +8 -0
  25. package/dist/types/src/design-system/runtime/host-observer.d.ts +1 -0
  26. package/dist/types/src/design-system/runtime/hydration-state.d.ts +13 -0
  27. package/dist/types/src/design-system/runtime/inherited-scheme.d.ts +5 -0
  28. package/dist/types/src/design-system/runtime/media.d.ts +19 -0
  29. package/dist/types/src/index.d.ts +10 -4
  30. package/dist/types/src/kit/accordion-root-styles.d.ts +1 -0
  31. package/dist/types/src/kit/accordion-root.d.ts +24 -0
  32. package/dist/types/src/kit/accordion.d.ts +2 -0
  33. package/dist/types/src/kit/constants.d.ts +29 -0
  34. package/dist/types/src/kit/defaults.d.ts +2 -2
  35. package/dist/types/src/kit/index.d.ts +6 -1
  36. package/dist/types/src/kit/layout-helpers.d.ts +29 -0
  37. package/dist/types/src/kit/layout-node-render.d.ts +18 -0
  38. package/dist/types/src/kit/layout-node-resolver.d.ts +3 -0
  39. package/dist/types/src/kit/layout-types.d.ts +124 -0
  40. package/dist/types/src/kit/layout-utils.d.ts +9 -0
  41. package/dist/types/src/kit/layout.d.ts +8 -0
  42. package/dist/types/src/kit/mount-types.d.ts +54 -0
  43. package/dist/types/src/kit/panel-nav.d.ts +9 -0
  44. package/dist/types/src/{questionnaire/primitives/components → kit}/step-indicator.d.ts +3 -3
  45. package/dist/types/src/kit/tabs-root-styles.d.ts +1 -0
  46. package/dist/types/src/kit/tabs-root.d.ts +24 -0
  47. package/dist/types/src/kit/tabs.d.ts +2 -0
  48. package/dist/types/src/kit/types.d.ts +4 -51
  49. package/dist/types/src/kit/view-layout-state.d.ts +14 -0
  50. package/dist/types/src/kit/view-navigation.d.ts +8 -0
  51. package/dist/types/src/kit/view-snapshot-cache.d.ts +14 -0
  52. package/dist/types/src/kit/view-snapshot.d.ts +15 -0
  53. package/dist/types/src/kit/view-types.d.ts +172 -0
  54. package/dist/types/src/kit/view.d.ts +8 -0
  55. package/dist/types/src/kit/wizard-constants.d.ts +19 -0
  56. package/dist/types/src/kit/wizard-root-styles.d.ts +1 -0
  57. package/dist/types/src/kit/wizard-root.d.ts +23 -0
  58. package/dist/types/src/kit/wizard.d.ts +2 -0
  59. package/dist/types/src/packs/default.d.ts +2 -0
  60. package/dist/types/src/packs/index.d.ts +3 -0
  61. package/dist/types/src/packs/ml.d.ts +2 -0
  62. package/dist/types/src/packs/shared.d.ts +25 -0
  63. package/dist/types/src/presentation/define-explanation-kind.d.ts +11 -0
  64. package/dist/types/src/presentation/define-field-kind.d.ts +18 -0
  65. package/dist/types/src/presentation/define-report-kind.d.ts +15 -0
  66. package/dist/types/src/presentation/index.d.ts +10 -0
  67. package/dist/types/src/presentation/register-kind.d.ts +6 -0
  68. package/dist/types/src/presentation/registry.d.ts +15 -0
  69. package/dist/types/src/presentation/types/explanation.d.ts +32 -0
  70. package/dist/types/src/presentation/types/field.d.ts +36 -0
  71. package/dist/types/src/presentation/types/report.d.ts +41 -0
  72. package/dist/types/src/primitives/base-explanation-element.d.ts +2 -1
  73. package/dist/types/src/primitives/base-field-element.d.ts +2 -1
  74. package/dist/types/src/primitives/base-report-element.d.ts +2 -1
  75. package/dist/types/src/primitives/components/explanation-panel.d.ts +4 -2
  76. package/dist/types/src/primitives/components/field-frame-feedback.d.ts +9 -0
  77. package/dist/types/src/primitives/components/field-frame-styles.d.ts +1 -0
  78. package/dist/types/src/primitives/components/field-frame.d.ts +5 -3
  79. package/dist/types/src/primitives/components/form-errors.d.ts +1 -1
  80. package/dist/types/src/primitives/components/form-root-presenters.d.ts +17 -0
  81. package/dist/types/src/primitives/components/form-root-state.d.ts +19 -0
  82. package/dist/types/src/primitives/components/form-root-styles.d.ts +1 -0
  83. package/dist/types/src/primitives/components/form-root-templates.d.ts +42 -0
  84. package/dist/types/src/primitives/components/form-root.d.ts +4 -2
  85. package/dist/types/src/primitives/components/presentation.d.ts +1 -1
  86. package/dist/types/src/primitives/components/report-frame.d.ts +4 -2
  87. package/dist/types/src/primitives/components/submit-button.d.ts +1 -1
  88. package/dist/types/src/primitives/constants.d.ts +1 -1
  89. package/dist/types/src/primitives/fields/series-field-helpers.d.ts +23 -0
  90. package/dist/types/src/primitives/fields/series-field-styles.d.ts +1 -0
  91. package/dist/types/src/primitives/mount-form.d.ts +1 -1
  92. package/dist/types/src/primitives/presentation.d.ts +8 -0
  93. package/dist/types/src/primitives/types.d.ts +4 -1
  94. package/dist/types/src/{engine → runtime}/builtins/index.d.ts +1 -3
  95. package/dist/types/src/{engine → runtime}/builtins/reports/classifier.d.ts +1 -1
  96. package/dist/types/src/{engine → runtime}/builtins/shared.d.ts +2 -0
  97. package/dist/types/src/runtime/declarative/presentation.d.ts +61 -0
  98. package/dist/types/src/runtime/fields/state-calculations.d.ts +25 -0
  99. package/dist/types/src/runtime/fields/state.d.ts +2 -0
  100. package/dist/types/src/runtime/form.d.ts +1 -0
  101. package/dist/types/src/runtime/index.d.ts +16 -0
  102. package/dist/types/src/runtime/registry/index.d.ts +5 -0
  103. package/dist/types/src/runtime/runtime-behaviors.d.ts +23 -0
  104. package/dist/types/src/runtime/runtime-controller.d.ts +34 -0
  105. package/dist/types/src/runtime/runtime-refresh.d.ts +14 -0
  106. package/dist/types/src/runtime/runtime-values.d.ts +19 -0
  107. package/dist/types/src/runtime/submission/create-submitter.d.ts +2 -0
  108. package/dist/types/src/runtime/submission/error-flow.d.ts +19 -0
  109. package/dist/types/src/runtime/submission/field-updates.d.ts +14 -0
  110. package/dist/types/src/runtime/submission/report-updates.d.ts +16 -0
  111. package/dist/types/src/runtime/submission/stream-progress.d.ts +4 -0
  112. package/dist/types/src/runtime/submission/submitter.d.ts +2 -0
  113. package/dist/types/src/runtime/submission/types.d.ts +60 -0
  114. package/dist/types/src/runtime/types/behavior.d.ts +32 -0
  115. package/dist/types/src/runtime/types/explanation.d.ts +22 -0
  116. package/dist/types/src/runtime/types/field.d.ts +24 -0
  117. package/dist/types/src/{engine → runtime}/types/form.d.ts +8 -11
  118. package/dist/types/src/runtime/types/index.d.ts +9 -0
  119. package/dist/types/src/runtime/types/registry.d.ts +6 -0
  120. package/dist/types/src/runtime/types/report.d.ts +23 -0
  121. package/dist/types/src/{engine → runtime}/utils.d.ts +2 -2
  122. package/dist/types/src/{engine/validation/field.d.ts → runtime/validation/field-state.d.ts} +3 -19
  123. package/dist/types/src/runtime/validation/field-validator.d.ts +18 -0
  124. package/dist/types/src/runtime/validation/field.d.ts +2 -0
  125. package/dist/types/src/schema/index.d.ts +7 -0
  126. package/dist/types/src/schema/normalize.d.ts +2 -0
  127. package/dist/types/src/schema/registry.d.ts +9 -0
  128. package/dist/types/src/schema/types/explanation.d.ts +43 -0
  129. package/dist/types/src/{engine → schema}/types/field.d.ts +3 -45
  130. package/dist/types/src/schema/types/form.d.ts +13 -0
  131. package/dist/types/src/schema/types/report.d.ts +43 -0
  132. package/dist/types/src/shared/index.d.ts +2 -0
  133. package/dist/types/src/shared/object.d.ts +1 -0
  134. package/dist/types/src/shared/strings.d.ts +1 -0
  135. package/dist/types/src/transport/composition/fanout-helpers.d.ts +2 -0
  136. package/dist/types/src/transport/composition/fanout.d.ts +1 -2
  137. package/dist/types/src/transport/composition/index.d.ts +1 -0
  138. package/dist/types/src/transport/composition/quorum-fanout.d.ts +2 -0
  139. package/dist/types/src/transport/internal-core.d.ts +21 -0
  140. package/dist/types/src/transport/internal-errors.d.ts +21 -0
  141. package/dist/types/src/transport/internal-request.d.ts +21 -0
  142. package/dist/types/src/transport/internal-routing.d.ts +25 -0
  143. package/dist/types/src/transport/internal-sse.d.ts +14 -0
  144. package/dist/types/src/transport/internal-stream.d.ts +13 -0
  145. package/dist/types/src/transport/internal.d.ts +6 -110
  146. package/dist/types/src/transport/types/options-http.d.ts +85 -0
  147. package/dist/types/src/transport/types/options-middleware.d.ts +96 -0
  148. package/dist/types/src/transport/types/options-routing.d.ts +82 -0
  149. package/dist/types/src/transport/types/options.d.ts +3 -258
  150. package/package.json +20 -8
  151. package/dist/engine-CEy1IX7y.js +0 -5367
  152. package/dist/kit-DrrbtxI2.js +0 -76
  153. package/dist/mlform/engine.mjs +0 -3
  154. package/dist/mlform/questionnaire.mjs +0 -640
  155. package/dist/types/src/engine/index.d.ts +0 -11
  156. package/dist/types/src/engine/registry/index.d.ts +0 -26
  157. package/dist/types/src/engine/submission/submitter.d.ts +0 -40
  158. package/dist/types/src/engine/types/explanation.d.ts +0 -109
  159. package/dist/types/src/engine/types/index.d.ts +0 -9
  160. package/dist/types/src/engine/types/report.d.ts +0 -87
  161. package/dist/types/src/questionnaire/constants.d.ts +0 -31
  162. package/dist/types/src/questionnaire/defaults.d.ts +0 -8
  163. package/dist/types/src/questionnaire/engine/controller.d.ts +0 -12
  164. package/dist/types/src/questionnaire/engine/schema.d.ts +0 -9
  165. package/dist/types/src/questionnaire/errors.d.ts +0 -3
  166. package/dist/types/src/questionnaire/index.d.ts +0 -6
  167. package/dist/types/src/questionnaire/mount.d.ts +0 -3
  168. package/dist/types/src/questionnaire/primitives/components/questionnaire-root.d.ts +0 -23
  169. package/dist/types/src/questionnaire/primitives/register.d.ts +0 -0
  170. package/dist/types/src/questionnaire/types.d.ts +0 -69
  171. package/dist/types/src/{engine/declarative → presentation/types}/presentation.d.ts +0 -0
  172. package/dist/types/src/{engine → runtime}/builtins/fields/boolean.d.ts +0 -0
  173. package/dist/types/src/{engine → runtime}/builtins/fields/category.d.ts +0 -0
  174. package/dist/types/src/{engine → runtime}/builtins/fields/date.d.ts +0 -0
  175. package/dist/types/src/{engine → runtime}/builtins/fields/long-text.d.ts +0 -0
  176. package/dist/types/src/{engine → runtime}/builtins/fields/mapped-category.d.ts +0 -0
  177. package/dist/types/src/{engine → runtime}/builtins/fields/multi-choice.d.ts +0 -0
  178. package/dist/types/src/{engine → runtime}/builtins/fields/number.d.ts +0 -0
  179. package/dist/types/src/{engine → runtime}/builtins/fields/rating.d.ts +0 -0
  180. package/dist/types/src/{engine → runtime}/builtins/fields/series.d.ts +0 -0
  181. package/dist/types/src/{engine → runtime}/builtins/fields/single-choice.d.ts +0 -0
  182. package/dist/types/src/{engine → runtime}/builtins/fields/text.d.ts +0 -0
  183. package/dist/types/src/{engine → runtime}/builtins/reports/regressor.d.ts +0 -0
  184. package/dist/types/src/{engine → runtime}/comparison.d.ts +0 -0
  185. package/dist/types/src/{engine → runtime}/constants.d.ts +0 -0
  186. package/dist/types/src/{engine/form.d.ts → runtime/create-runtime.d.ts} +0 -0
  187. package/dist/types/src/{engine → runtime}/declarative/explanation.d.ts +0 -0
  188. package/dist/types/src/{engine → runtime}/declarative/field.d.ts +0 -0
  189. package/dist/types/src/{engine → runtime}/declarative/report.d.ts +0 -0
  190. package/dist/types/src/{engine → runtime}/equality.d.ts +0 -0
  191. package/dist/types/src/{engine → runtime}/errors.d.ts +0 -0
  192. package/dist/types/src/{engine → runtime}/explanations/controller.d.ts +0 -0
  193. package/dist/types/src/{engine → runtime}/explanations/index.d.ts +0 -0
  194. package/dist/types/src/{engine → runtime}/fields/controller.d.ts +0 -0
  195. package/dist/types/src/{engine → runtime}/fields/index.d.ts +0 -0
  196. package/dist/types/src/{engine → runtime}/paths.d.ts +0 -0
  197. package/dist/types/src/{engine → runtime}/reports/controller.d.ts +0 -0
  198. package/dist/types/src/{engine → runtime}/reports/index.d.ts +0 -0
  199. package/dist/types/src/{engine → runtime}/schema/index.d.ts +0 -0
  200. package/dist/types/src/{engine → runtime}/state/engine.d.ts +0 -0
  201. package/dist/types/src/{engine → runtime}/state/index.d.ts +0 -0
  202. package/dist/types/src/{engine → runtime}/state/snapshots.d.ts +0 -0
  203. package/dist/types/src/{engine → runtime}/state/store.d.ts +0 -0
  204. package/dist/types/src/{engine → runtime}/submission/abort.d.ts +0 -0
  205. package/dist/types/src/{engine → runtime}/submission/explanations.d.ts +0 -0
  206. package/dist/types/src/{engine → runtime}/submission/index.d.ts +0 -0
  207. package/dist/types/src/{engine → runtime}/submission/lifecycle.d.ts +0 -0
  208. package/dist/types/src/{engine → runtime}/submission/pipeline.d.ts +0 -0
  209. package/dist/types/src/{engine → runtime}/submission/reports.d.ts +0 -0
  210. package/dist/types/src/{engine → runtime}/submission/request.d.ts +0 -0
  211. package/dist/types/src/{engine → runtime}/submission/result.d.ts +0 -0
  212. package/dist/types/src/{engine → runtime}/types/pipeline.d.ts +0 -0
  213. package/dist/types/src/{engine → runtime}/types/transport.d.ts +0 -0
  214. package/dist/types/src/{engine → runtime}/validation/conditions.d.ts +0 -0
  215. package/dist/types/src/{engine → runtime}/validation/form.d.ts +0 -0
  216. package/dist/types/src/{engine → runtime}/validation/index.d.ts +0 -0
  217. package/dist/types/src/{engine → runtime}/values.d.ts +0 -0
  218. package/dist/types/src/{engine → schema}/types/registry.d.ts +1 -1
@@ -522,7 +522,7 @@ var e = [
522
522
  }])) : void 0,
523
523
  sharedTokens: e.sharedTokens ? { ...e.sharedTokens } : void 0
524
524
  });
525
- }, _ = class e {
525
+ }, ee = class e {
526
526
  #e = /* @__PURE__ */ new Map();
527
527
  #t = /* @__PURE__ */ new Map();
528
528
  #n = /* @__PURE__ */ new Map();
@@ -607,59 +607,59 @@ var e = [
607
607
  for (let [e, n] of this.#n) t.#n.set(e, new Map(n));
608
608
  return t;
609
609
  }
610
- }, v = () => new _(), y = [
610
+ }, _ = () => new ee(), v = [
611
611
  d,
612
612
  l,
613
613
  f,
614
614
  p,
615
615
  u
616
- ], b = [
616
+ ], y = [
617
617
  o,
618
618
  s,
619
619
  c,
620
620
  a
621
- ], x = () => {
622
- let e = v();
623
- for (let t of y) e.registerTheme(t);
624
- for (let t of b) e.registerRecipe(t);
621
+ ], b = () => {
622
+ let e = _();
623
+ for (let t of v) e.registerTheme(t);
624
+ for (let t of y) e.registerRecipe(t);
625
625
  return e;
626
- }, S = x(), C = new Set(i), ee = (t) => {
626
+ }, x = b(), S = new Set(i), te = (t) => {
627
627
  for (let n of e) if (t.startsWith(`--mlf-${n}-`)) return n;
628
628
  return null;
629
- }, te = (e) => {
629
+ }, ne = (e) => {
630
630
  for (let t of Object.keys(e)) {
631
- if (!C.has(t)) throw Error(`[mlform] Unknown global token "${t}"`);
632
- let e = ee(t);
631
+ if (!S.has(t)) throw Error(`[mlform] Unknown global token "${t}"`);
632
+ let e = te(t);
633
633
  if (e) throw Error(`[mlform] Token "${t}" belongs to component "${e}". Use defineComponentTokens("${e}", ...)`);
634
634
  }
635
635
  return { ...e };
636
- }, ne = (e, t) => {
636
+ }, re = (e, t) => {
637
637
  for (let n of Object.keys(t)) {
638
- if (!C.has(n)) throw Error(`[mlform] Unknown token "${n}" for component "${e}"`);
638
+ if (!S.has(n)) throw Error(`[mlform] Unknown token "${n}" for component "${e}"`);
639
639
  if (!n.startsWith(`--mlf-${e}-`)) throw Error(`[mlform] Token "${n}" does not belong to component "${e}"`);
640
640
  }
641
641
  return { tokens: { ...t } };
642
- }, w = new Set(i), T = /var\(\s*(--mlf-[a-z0-9-]+)\s*[,)]/g, E = (e, t, n) => {
643
- if (n) for (let r of Object.keys(n)) !r.startsWith("--mlf-") || w.has(r) || e.push({
642
+ }, C = new Set(i), w = /var\(\s*(--mlf-[a-z0-9-]+)\s*[,)]/g, T = (e, t, n) => {
643
+ if (n) for (let r of Object.keys(n)) !r.startsWith("--mlf-") || C.has(r) || e.push({
644
644
  code: "unknown-token-key",
645
645
  path: t,
646
646
  value: r,
647
647
  message: `[mlform] Unknown design-system token "${r}" at ${t}`
648
648
  });
649
- }, D = (e, t, n, r) => {
650
- if (r) for (let i of Object.keys(r)) !i.startsWith("--mlf-") || !w.has(i) || i.startsWith(`--mlf-${t}-`) || e.push({
649
+ }, E = (e, t, n, r) => {
650
+ if (r) for (let i of Object.keys(r)) !i.startsWith("--mlf-") || !C.has(i) || i.startsWith(`--mlf-${t}-`) || e.push({
651
651
  code: "misplaced-component-token",
652
652
  path: n,
653
653
  value: i,
654
654
  message: `[mlform] Token "${i}" does not belong to component "${t}" at ${n}`
655
655
  });
656
- }, re = (e, t, n) => {
656
+ }, ie = (e, t, n) => {
657
657
  if (n) for (let [r, i] of Object.entries(n)) {
658
- T.lastIndex = 0;
658
+ w.lastIndex = 0;
659
659
  let n;
660
- for (; (n = T.exec(i)) !== null;) {
660
+ for (; (n = w.exec(i)) !== null;) {
661
661
  let i = n[1];
662
- !t.has(i) && w.has(i) && e.push({
662
+ !t.has(i) && C.has(i) && e.push({
663
663
  code: "broken-token-reference",
664
664
  path: r,
665
665
  value: i,
@@ -667,7 +667,7 @@ var e = [
667
667
  });
668
668
  }
669
669
  }
670
- }, O = (e) => {
670
+ }, D = (e) => {
671
671
  let t = /* @__PURE__ */ new Set();
672
672
  return e.filter((e) => {
673
673
  let n = [
@@ -678,7 +678,7 @@ var e = [
678
678
  ].join("|");
679
679
  return t.has(n) ? !1 : (t.add(n), !0);
680
680
  });
681
- }, k = (t, n, r, i) => {
681
+ }, ae = (t, n, r, i) => {
682
682
  let a = [];
683
683
  typeof t.theme == "string" && !n.getTheme(t.theme) && a.push({
684
684
  code: "unknown-theme-id",
@@ -690,17 +690,17 @@ var e = [
690
690
  path: "recipe",
691
691
  value: t.recipe,
692
692
  message: `[mlform] Unknown recipe "${t.recipe}". Falling back to "${i.id}"`
693
- }), E(a, `theme "${r.id}".sharedTokens`, r.sharedTokens), E(a, `theme "${r.id}".schemes.light.tokens`, r.schemes.light.tokens), E(a, `theme "${r.id}".schemes.dark.tokens`, r.schemes.dark?.tokens);
694
- for (let [e, t] of Object.entries(r.variants ?? {})) E(a, `theme "${r.id}".variants.${e}.tokens`, t.tokens);
695
- E(a, `recipe "${i.id}".tokens`, i.tokens);
696
- for (let [e, t] of Object.entries(i.components ?? {})) E(a, `recipe "${i.id}".components.${e}.tokens`, t?.tokens), D(a, e, `recipe "${i.id}".components.${e}.tokens`, t?.tokens);
697
- E(a, "overrides.tokens", t.overrides?.tokens);
693
+ }), T(a, `theme "${r.id}".sharedTokens`, r.sharedTokens), T(a, `theme "${r.id}".schemes.light.tokens`, r.schemes.light.tokens), T(a, `theme "${r.id}".schemes.dark.tokens`, r.schemes.dark?.tokens);
694
+ for (let [e, t] of Object.entries(r.variants ?? {})) T(a, `theme "${r.id}".variants.${e}.tokens`, t.tokens);
695
+ T(a, `recipe "${i.id}".tokens`, i.tokens);
696
+ for (let [e, t] of Object.entries(i.components ?? {})) T(a, `recipe "${i.id}".components.${e}.tokens`, t?.tokens), E(a, e, `recipe "${i.id}".components.${e}.tokens`, t?.tokens);
697
+ T(a, "overrides.tokens", t.overrides?.tokens);
698
698
  for (let n of e) {
699
699
  let e = t.overrides?.components?.[n];
700
- E(a, `overrides.components.${n}.tokens`, e?.tokens), D(a, n, `overrides.components.${n}.tokens`, e?.tokens);
700
+ T(a, `overrides.components.${n}.tokens`, e?.tokens), E(a, n, `overrides.components.${n}.tokens`, e?.tokens);
701
701
  }
702
- return O(a);
703
- }, ie = (e, t, n) => {
702
+ return D(a);
703
+ }, oe = (e, t, n) => {
704
704
  if (!e.variant) return [];
705
705
  let r = t.variants?.[e.variant];
706
706
  return r ? r.baseScheme === n ? [] : [{
@@ -714,62 +714,62 @@ var e = [
714
714
  value: e.variant,
715
715
  message: `[mlform] Theme "${t.id}" does not define variant "${e.variant}"`
716
716
  }];
717
- }, ae = (e) => {
717
+ }, se = (e) => {
718
718
  let t = [];
719
- return re(t, new Set(Object.keys(e)), e), O(t);
720
- }, A = (e, t) => {
719
+ return ie(t, new Set(Object.keys(e)), e), D(t);
720
+ }, O = (e, t) => {
721
721
  if (t.length !== 0) {
722
722
  for (let n of t) e.onWarning?.(n);
723
723
  if (e.strict) throw Error(t.map((e) => e.message).join("\n"));
724
724
  }
725
- }, j = "light", M = (e, t) => t === "light" || !!e.schemes.dark, oe = (e, t, n = {}) => {
725
+ }, k = "light", A = (e, t) => t === "light" || !!e.schemes.dark, ce = (e, t, n = {}) => {
726
726
  let r = e.mode ?? "auto";
727
727
  return r === "light" || r === "dark" ? r === "dark" && !t.schemes.dark ? {
728
728
  requestedMode: r,
729
- effectiveScheme: j,
729
+ effectiveScheme: k,
730
730
  effectiveModeSource: "theme-fallback"
731
731
  } : {
732
732
  requestedMode: r,
733
733
  effectiveScheme: r,
734
734
  effectiveModeSource: "explicit"
735
- } : r === "auto" ? n.systemScheme && M(t, n.systemScheme) ? {
735
+ } : r === "auto" ? n.systemScheme && A(t, n.systemScheme) ? {
736
736
  requestedMode: r,
737
737
  effectiveScheme: n.systemScheme,
738
738
  effectiveModeSource: "system"
739
739
  } : {
740
740
  requestedMode: r,
741
- effectiveScheme: j,
741
+ effectiveScheme: k,
742
742
  effectiveModeSource: "theme-fallback"
743
- } : n.inheritedScheme && M(t, n.inheritedScheme) ? {
743
+ } : n.inheritedScheme && A(t, n.inheritedScheme) ? {
744
744
  requestedMode: r,
745
745
  effectiveScheme: n.inheritedScheme,
746
746
  effectiveModeSource: n.inheritedSource ?? "default"
747
747
  } : {
748
748
  requestedMode: r,
749
- effectiveScheme: j,
749
+ effectiveScheme: k,
750
750
  effectiveModeSource: "theme-fallback"
751
751
  };
752
- }, se = (e, t) => {
752
+ }, le = (e, t) => {
753
753
  let n = e.recipe, r = t.getRecipe("default") ?? o;
754
754
  return n && typeof n != "string" ? n : typeof n == "string" ? t.getRecipe(n) ?? r : r;
755
- }, ce = (e, t) => {
755
+ }, ue = (e, t) => {
756
756
  let n = e.theme, r = t.getTheme("neutral") ?? d;
757
757
  return n && typeof n != "string" ? n : typeof n == "string" ? t.getTheme(n) ?? r : r;
758
- }, N = (t) => {
758
+ }, j = (t) => {
759
759
  let n = {};
760
760
  for (let r of e) {
761
761
  let e = t[r]?.tokens;
762
762
  e && Object.assign(n, e);
763
763
  }
764
764
  return n;
765
- }, le = {
765
+ }, de = {
766
766
  ...r,
767
- ...N(t)
768
- }, ue = {
767
+ ...j(t)
768
+ }, fe = {
769
769
  "--mlf-border-width": "1.5px",
770
770
  "--mlf-ring-width": "5px",
771
771
  "--mlf-color-border": "var(--mlf-color-border-strong)"
772
- }, de = {
772
+ }, pe = {
773
773
  compact: {
774
774
  "--mlf-shell-gap": "1rem",
775
775
  "--mlf-layout-gap": "0.85rem",
@@ -800,7 +800,7 @@ var e = [
800
800
  "--mlf-control-padding-block": "0.9rem",
801
801
  "--mlf-pane-min-width": "22rem"
802
802
  }
803
- }, fe = {
803
+ }, me = {
804
804
  "--mlf-color-bg": "Canvas",
805
805
  "--mlf-color-surface": "Canvas",
806
806
  "--mlf-color-surface-muted": "Canvas",
@@ -847,7 +847,7 @@ var e = [
847
847
  "--mlf-error-bg": "Canvas",
848
848
  "--mlf-error-border": "CanvasText",
849
849
  "--mlf-chart-fill-bg": "Highlight"
850
- }, pe = {
850
+ }, he = {
851
851
  none: {
852
852
  "--mlf-motion-fast": "0ms linear",
853
853
  "--mlf-motion-base": "0ms linear",
@@ -869,36 +869,36 @@ var e = [
869
869
  "--mlf-transition-duration": "250ms",
870
870
  "--mlf-transition-easing": "ease-in-out"
871
871
  }
872
- }, me = (e, t, n) => {
872
+ }, ge = (e, t, n) => {
873
873
  let r = t === "dark" ? e.schemes.dark?.tokens ?? e.schemes.light.tokens : e.schemes.light.tokens, i = n && e.variants?.[n]?.baseScheme === t ? e.variants[n].tokens : {};
874
874
  return {
875
875
  ...e.sharedTokens,
876
876
  ...r,
877
877
  ...i
878
878
  };
879
- }, he = e.map((e) => [`--mlf-${e}-`, e]), ge = (t) => {
879
+ }, _e = e.map((e) => [`--mlf-${e}-`, e]), ve = (t) => {
880
880
  let n = Object.fromEntries(e.map((e) => [e, {}]));
881
- for (let [e, r] of Object.entries(t)) for (let [t, i] of he) if (e.startsWith(t)) {
881
+ for (let [e, r] of Object.entries(t)) for (let [t, i] of _e) if (e.startsWith(t)) {
882
882
  n[i][e] = r;
883
883
  break;
884
884
  }
885
885
  return Object.fromEntries(e.map((e) => [e, { tokens: n[e] }]));
886
- }, _e = (e, t, n, r, i, a, o, s = {}) => {
886
+ }, ye = (e, t, n, r, i, a, o, s = {}) => {
887
887
  let c = e.overrides?.density ?? (s.prefersMoreContrast ? "spacious" : n.density), l = e.overrides?.motion ?? (s.prefersReducedMotion ? "none" : n.motion), u = {
888
888
  ...e.overrides?.tokens,
889
- ...N(e.overrides?.components ?? {})
890
- }, d = (e.variant && t.variants?.[e.variant]?.baseScheme === r ? e.variant : null) ?? (s.prefersMoreContrast && t.variants?.[`high-contrast-${r}`] ? `high-contrast-${r}` : null), f = s.prefersMoreContrast ? ue : {}, p = s.forcedColors ? fe : {}, m = {
891
- ...le,
892
- ...de[c],
893
- ...pe[l],
889
+ ...j(e.overrides?.components ?? {})
890
+ }, d = (e.variant && t.variants?.[e.variant]?.baseScheme === r ? e.variant : null) ?? (s.prefersMoreContrast && t.variants?.[`high-contrast-${r}`] ? `high-contrast-${r}` : null), f = s.prefersMoreContrast ? fe : {}, p = s.forcedColors ? me : {}, m = {
891
+ ...de,
892
+ ...pe[c],
893
+ ...he[l],
894
894
  ...f,
895
- ...me(t, r, d),
895
+ ...ge(t, r, d),
896
896
  ...n.tokens,
897
- ...N(n.components ?? {}),
897
+ ...j(n.components ?? {}),
898
898
  ...e.overrides?.tokens,
899
- ...N(e.overrides?.components ?? {}),
899
+ ...j(e.overrides?.components ?? {}),
900
900
  ...p
901
- }, h = ge(m);
901
+ }, h = ve(m);
902
902
  return {
903
903
  requestedMode: i,
904
904
  effectiveScheme: r,
@@ -913,7 +913,7 @@ var e = [
913
913
  components: h,
914
914
  warnings: o
915
915
  };
916
- }, ve = (e, t) => {
916
+ }, be = (e, t) => {
917
917
  if (!e && !t) return;
918
918
  let n = /* @__PURE__ */ new Map();
919
919
  for (let r of [e?.components, t?.components]) if (r) for (let [e, t] of Object.entries(r)) t && n.set(e, { tokens: {
@@ -929,7 +929,7 @@ var e = [
929
929
  },
930
930
  components: n.size > 0 ? Object.fromEntries(n) : void 0
931
931
  };
932
- }, P = (...e) => e.reduce((e, t) => ({
932
+ }, M = (...e) => e.reduce((e, t) => ({
933
933
  mode: t?.mode ?? e.mode,
934
934
  theme: t?.theme ?? e.theme,
935
935
  recipe: t?.recipe ?? e.recipe,
@@ -937,8 +937,8 @@ var e = [
937
937
  hostSchemeResolver: t?.hostSchemeResolver ?? e.hostSchemeResolver,
938
938
  strict: t?.strict ?? e.strict,
939
939
  onWarning: t?.onWarning ?? e.onWarning,
940
- overrides: ve(e.overrides, t?.overrides)
941
- }), {}), F = (e, t, n = "source-wins") => {
940
+ overrides: be(e.overrides, t?.overrides)
941
+ }), {}), N = (e, t, n = "source-wins") => {
942
942
  let r = new Map(t.map((e) => [e.from, e.to])), i = { ...e }, a = {};
943
943
  for (let [o, s] of Object.entries(e)) {
944
944
  let e = r.get(o) ?? o;
@@ -951,29 +951,29 @@ var e = [
951
951
  else a[e] = s;
952
952
  }
953
953
  return a;
954
- }, ye = (e, t) => {
954
+ }, xe = (e, t) => {
955
955
  let n = Object.fromEntries(Object.entries(e.schemes).map(([e, n]) => [e, n && {
956
956
  ...n,
957
- tokens: F(n.tokens, t)
957
+ tokens: N(n.tokens, t)
958
958
  }]));
959
959
  return {
960
960
  ...e,
961
961
  schemes: n,
962
- sharedTokens: e.sharedTokens ? F(e.sharedTokens, t) : void 0
962
+ sharedTokens: e.sharedTokens ? N(e.sharedTokens, t) : void 0
963
963
  };
964
- }, I = (e = {}, t = S, n = {}) => {
965
- let r = ce(e, t), i = se(e, t), a = k(e, t, r, i);
966
- A(e, a);
967
- let o = oe(e, r, n), s = ie(e, r, o.effectiveScheme);
968
- s.length > 0 && (a.push(...s), A(e, s));
969
- let c = _e(e, r, i, o.effectiveScheme, o.requestedMode, o.effectiveModeSource, a, n), l = ae(c.tokens);
970
- return l.length > 0 && (c.warnings.push(...l), A(e, l)), c;
971
- }, be = { change: "ml-design-system-change" }, L = {
964
+ }, P = (e = {}, t = x, n = {}) => {
965
+ let r = ue(e, t), i = le(e, t), a = ae(e, t, r, i);
966
+ O(e, a);
967
+ let o = ce(e, r, n), s = oe(e, r, o.effectiveScheme);
968
+ s.length > 0 && (a.push(...s), O(e, s));
969
+ let c = ye(e, r, i, o.effectiveScheme, o.requestedMode, o.effectiveModeSource, a, n), l = se(c.tokens);
970
+ return l.length > 0 && (c.warnings.push(...l), O(e, l)), c;
971
+ }, Se = { change: "ml-design-system-change" }, F = {
972
972
  prefersDarkScheme: "(prefers-color-scheme: dark)",
973
973
  prefersReducedMotion: "(prefers-reduced-motion: reduce)",
974
974
  prefersMoreContrast: "(prefers-contrast: more)",
975
975
  forcedColors: "(forced-colors: active)"
976
- }, R = {
976
+ }, I = {
977
977
  explicitScheme: "data-color-scheme",
978
978
  inheritedScheme: "data-mlf-scheme",
979
979
  effectiveScheme: "data-mlf-effective-scheme",
@@ -985,17 +985,17 @@ var e = [
985
985
  signature: "data-mlf-signature",
986
986
  style: "style",
987
987
  class: "class"
988
- }, xe = [R.explicitScheme], Se = [
989
- R.inheritedScheme,
990
- R.effectiveScheme,
991
- R.explicitScheme,
992
- R.style,
993
- R.class
994
- ], Ce = (e) => {
988
+ }, Ce = [I.explicitScheme], we = [
989
+ I.inheritedScheme,
990
+ I.effectiveScheme,
991
+ I.explicitScheme,
992
+ I.style,
993
+ I.class
994
+ ], Te = (e) => {
995
995
  let t = 2166136261;
996
996
  for (let n = 0; n < e.length; n += 1) t ^= e.charCodeAt(n), t = Math.imul(t, 16777619);
997
997
  return (t >>> 0).toString(16).padStart(8, "0");
998
- }, z = (e) => `v1:${Ce([
998
+ }, L = (e) => `v1:${Te([
999
999
  e.effectiveScheme,
1000
1000
  e.themeId,
1001
1001
  e.variant ?? "",
@@ -1003,89 +1003,209 @@ var e = [
1003
1003
  e.density,
1004
1004
  e.motion,
1005
1005
  ...Object.entries(e.tokens).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${t}`)
1006
- ].join("|"))}`, B = (e) => {
1006
+ ].join("|"))}`, R = (e) => {
1007
1007
  let t = {
1008
- [R.themeId]: e.themeId,
1009
- [R.recipeId]: e.recipeId,
1010
- [R.effectiveScheme]: e.effectiveScheme,
1011
- [R.inheritedScheme]: e.effectiveScheme,
1012
- [R.density]: e.density,
1013
- [R.motion]: e.motion,
1014
- [R.signature]: z(e)
1008
+ [I.themeId]: e.themeId,
1009
+ [I.recipeId]: e.recipeId,
1010
+ [I.effectiveScheme]: e.effectiveScheme,
1011
+ [I.inheritedScheme]: e.effectiveScheme,
1012
+ [I.density]: e.density,
1013
+ [I.motion]: e.motion,
1014
+ [I.signature]: L(e)
1015
1015
  };
1016
- return e.variant && (t[R.variantId] = e.variant), t;
1017
- }, V = (e) => {
1016
+ return e.variant && (t[I.variantId] = e.variant), t;
1017
+ }, z = (e) => {
1018
1018
  for (let t = 0; t < e.length; t += 1) if (e.charCodeAt(t) <= 31) return !0;
1019
1019
  return !1;
1020
- }, we = (e) => {
1020
+ }, Ee = (e) => {
1021
1021
  if (!e.trim()) throw Error("[mlform] createDesignSystemStylesheet requires a non-empty selector");
1022
- if (e.includes("{") || e.includes("}") || e.includes(";") || V(e)) throw Error("[mlform] createDesignSystemStylesheet selector contains unsafe characters");
1023
- }, H = (e, t) => {
1022
+ if (e.includes("{") || e.includes("}") || e.includes(";") || z(e)) throw Error("[mlform] createDesignSystemStylesheet selector contains unsafe characters");
1023
+ }, De = (e, t) => {
1024
1024
  if (!e.startsWith("--")) throw Error(`[mlform] Invalid design-system token "${e}"`);
1025
- if (t.includes("{") || t.includes("}") || t.includes(";") || V(t)) throw Error(`[mlform] Token "${e}" contains unsafe stylesheet characters`);
1026
- }, U = (e) => Object.entries(e.tokens).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => (H(e, t), [e, t])), W = (e, t) => {
1025
+ if (t.includes("{") || t.includes("}") || t.includes(";") || z(t)) throw Error(`[mlform] Token "${e}" contains unsafe stylesheet characters`);
1026
+ }, B = (e) => Object.entries(e.tokens).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => (De(e, t), [e, t])), V = (e, t) => {
1027
1027
  let n = /* @__PURE__ */ new Set();
1028
- for (let [r, i] of U(t)) e.setProperty(r, i), n.add(r);
1028
+ for (let [r, i] of B(t)) e.setProperty(r, i), n.add(r);
1029
1029
  return n;
1030
- }, G = [
1031
- R.themeId,
1032
- R.variantId,
1033
- R.recipeId,
1034
- R.effectiveScheme,
1035
- R.inheritedScheme,
1036
- R.density,
1037
- R.motion,
1038
- R.signature
1039
- ], K = (e, t, n) => {
1040
- let r = B(t);
1041
- for (let t of G) {
1030
+ }, H = [
1031
+ I.themeId,
1032
+ I.variantId,
1033
+ I.recipeId,
1034
+ I.effectiveScheme,
1035
+ I.inheritedScheme,
1036
+ I.density,
1037
+ I.motion,
1038
+ I.signature
1039
+ ], U = (e, t, n) => {
1040
+ let r = R(t);
1041
+ for (let t of H) {
1042
1042
  let n = r[t];
1043
1043
  n === void 0 ? e.removeAttribute(t) : e.setAttribute(t, n);
1044
1044
  }
1045
- return n === "view-transition" && (e.style.viewTransitionName = "mlf-design-system"), e.style.colorScheme = t.effectiveScheme, W(e.style, t);
1046
- }, Te = (e, t, n, r, i) => {
1045
+ return n === "view-transition" && (e.style.viewTransitionName = "mlf-design-system"), e.style.colorScheme = t.effectiveScheme, V(e.style, t);
1046
+ }, Oe = (e, t, n, r, i) => {
1047
1047
  for (let n of t) {
1048
1048
  let t = r.get(n) ?? null;
1049
1049
  t === null ? e.style.removeProperty(n) : e.style.setProperty(n, t);
1050
1050
  }
1051
- for (let t of G) {
1051
+ for (let t of H) {
1052
1052
  let r = n.get(t) ?? null;
1053
1053
  r === null ? e.removeAttribute(t) : e.setAttribute(t, r);
1054
1054
  }
1055
1055
  i === null ? e.style.removeProperty("color-scheme") : e.style.colorScheme = i, e.style.removeProperty("view-transition-name");
1056
- }, q = (e) => e ? Object.entries(e).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${t}`).join(",") : "", Ee = (e) => {
1057
- let t = Object.entries(e.variants ?? {}).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${t.baseScheme}:${q(t.tokens)}`).join(";");
1056
+ }, W = (e) => e ? Object.entries(e).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${t}`).join(",") : "", ke = (e) => {
1057
+ let t = Object.entries(e.variants ?? {}).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${t.baseScheme}:${W(t.tokens)}`).join(";");
1058
1058
  return [
1059
1059
  e.id,
1060
1060
  e.label,
1061
1061
  e.schemes.light.colorScheme ?? "",
1062
- q(e.schemes.light.tokens),
1062
+ W(e.schemes.light.tokens),
1063
1063
  e.schemes.dark?.colorScheme ?? "",
1064
- q(e.schemes.dark?.tokens),
1065
- q(e.sharedTokens),
1064
+ W(e.schemes.dark?.tokens),
1065
+ W(e.sharedTokens),
1066
1066
  t
1067
1067
  ].join("|");
1068
- }, De = (e) => {
1069
- let t = Object.entries(e.components ?? {}).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${q(t?.tokens)}`).join(";");
1068
+ }, Ae = (e) => {
1069
+ let t = Object.entries(e.components ?? {}).sort(([e], [t]) => e.localeCompare(t)).map(([e, t]) => `${e}:${W(t?.tokens)}`).join(";");
1070
1070
  return [
1071
1071
  e.id,
1072
1072
  e.label,
1073
1073
  e.density,
1074
1074
  e.motion,
1075
- q(e.tokens),
1075
+ W(e.tokens),
1076
1076
  t
1077
1077
  ].join("|");
1078
- }, Oe = (e) => {
1079
- let t = typeof e.theme == "string" ? `ref:${e.theme}` : e.theme ? `inline:${Ee(e.theme)}` : "", n = typeof e.recipe == "string" ? `ref:${e.recipe}` : e.recipe ? `inline:${De(e.recipe)}` : "", r = e.overrides, i = q(r?.tokens), a = Object.entries(r?.components ?? {}).sort(([e], [t]) => e.localeCompare(t)).filter(([, e]) => !!e?.tokens).map(([e, t]) => `${e}:${q(t.tokens)}`).join(";");
1078
+ }, je = (e) => {
1079
+ let t = typeof e.theme == "string" ? `ref:${e.theme}` : e.theme ? `inline:${ke(e.theme)}` : "", n = typeof e.recipe == "string" ? `ref:${e.recipe}` : e.recipe ? `inline:${Ae(e.recipe)}` : "", r = e.overrides, i = W(r?.tokens), a = Object.entries(r?.components ?? {}).sort(([e], [t]) => e.localeCompare(t)).filter(([, e]) => !!e?.tokens).map(([e, t]) => `${e}:${W(t.tokens)}`).join(";");
1080
1080
  return `${e.mode ?? ""}|${t}|${n}|${e.variant ?? ""}|${e.strict ?? ""}|${r?.density ?? ""}|${r?.motion ?? ""}|${i}|${a}`;
1081
- }, J = (e, t) => `${t.prefersDarkScheme}|${t.prefersReducedMotion}|${t.prefersMoreContrast}|${t.forcedColors}|${Oe(e)}`, Y = (e) => {
1081
+ }, G = (e, t) => `${t.prefersDarkScheme}|${t.prefersReducedMotion}|${t.prefersMoreContrast}|${t.forcedColors}|${je(e)}`, K = (e, t, n) => {
1082
+ for (let r of Object.keys(n)) {
1083
+ if (t.has(r)) continue;
1084
+ let n = e.style.getPropertyValue(r);
1085
+ t.set(r, n === "" ? null : n);
1086
+ }
1087
+ }, Me = (e, t, n, r) => {
1088
+ let i = new Set(Object.keys(r));
1089
+ for (let r of t) {
1090
+ if (i.has(r)) continue;
1091
+ let t = n.get(r) ?? null;
1092
+ t === null ? e.style.removeProperty(r) : e.style.setProperty(r, t);
1093
+ }
1094
+ }, Ne = (e, t) => {
1095
+ let n = R(t);
1096
+ for (let t of H) {
1097
+ let r = n[t];
1098
+ if (r === void 0) {
1099
+ if (e.hasAttribute(t)) return !1;
1100
+ continue;
1101
+ }
1102
+ if (e.getAttribute(t) !== r) return !1;
1103
+ }
1104
+ if (e.getAttribute(I.signature) === n[I.signature]) return !0;
1105
+ if (e.style.colorScheme !== t.effectiveScheme) return !1;
1106
+ let r = /* @__PURE__ */ new Map();
1107
+ for (let t = 0; t < e.style.length; t += 1) {
1108
+ let n = e.style.item(t);
1109
+ n.startsWith("--mlf-") && r.set(n, e.style.getPropertyValue(n).trim());
1110
+ }
1111
+ let i = Object.entries(t.tokens);
1112
+ if (r.size === i.length) {
1113
+ for (let [e, t] of i) if (r.get(e) !== t) return !1;
1114
+ return !0;
1115
+ }
1116
+ if (typeof window > "u") return !1;
1117
+ let a = window.getComputedStyle(e);
1118
+ for (let [e, t] of i) if (a.getPropertyValue(e).trim() !== t) return !1;
1119
+ return !0;
1120
+ }, Pe = (e, t, n) => Ne(e, n.resolved) ? (K(e, t, n.resolved.tokens), {
1121
+ appliedTokens: new Set(Object.keys(n.resolved.tokens)),
1122
+ resolved: n.resolved,
1123
+ signature: L(n.resolved),
1124
+ envSnapshot: n.envSnapshot
1125
+ }) : null, q = (e) => {
1082
1126
  if (!e) return null;
1083
1127
  let t = e.trim().toLowerCase();
1084
1128
  return t === "light" || t === "dark" ? t : null;
1085
- }, X = (e, t) => {
1129
+ }, J = (e, t) => {
1130
+ if ((t.mode ?? "auto") !== "inherit") return {
1131
+ scheme: null,
1132
+ source: null
1133
+ };
1134
+ if (t.hostSchemeResolver) {
1135
+ let n = t.hostSchemeResolver(e);
1136
+ if (n) return {
1137
+ scheme: n,
1138
+ source: "host-resolver"
1139
+ };
1140
+ }
1141
+ let n = q(e.getAttribute(I.explicitScheme));
1142
+ if (n) return {
1143
+ scheme: n,
1144
+ source: "host-attribute"
1145
+ };
1146
+ let r = e.parentElement;
1147
+ for (; r;) {
1148
+ let e = q(r.getAttribute(I.inheritedScheme)) ?? q(r.getAttribute(I.effectiveScheme)) ?? q(r.getAttribute(I.explicitScheme));
1149
+ if (e) return {
1150
+ scheme: e,
1151
+ source: "host-attribute"
1152
+ };
1153
+ r = r.parentElement;
1154
+ }
1155
+ if (typeof window > "u") return {
1156
+ scheme: null,
1157
+ source: null
1158
+ };
1159
+ let i = window.getComputedStyle(e).colorScheme;
1160
+ return i.includes("dark") ? {
1161
+ scheme: "dark",
1162
+ source: "host-style"
1163
+ } : i.includes("light") ? {
1164
+ scheme: "light",
1165
+ source: "host-style"
1166
+ } : {
1167
+ scheme: null,
1168
+ source: null
1169
+ };
1170
+ }, Fe = () => typeof window < "u" && typeof window.matchMedia == "function" ? {
1171
+ scheme: window.matchMedia(F.prefersDarkScheme),
1172
+ motion: window.matchMedia(F.prefersReducedMotion),
1173
+ contrast: window.matchMedia(F.prefersMoreContrast),
1174
+ forcedColors: window.matchMedia(F.forcedColors)
1175
+ } : {
1176
+ scheme: null,
1177
+ motion: null,
1178
+ contrast: null,
1179
+ forcedColors: null
1180
+ }, Y = (e, t) => {
1086
1181
  typeof e.addEventListener == "function" ? e.addEventListener("change", t) : e.addListener?.(t);
1087
- }, Z = (e, t) => {
1182
+ }, X = (e, t) => {
1088
1183
  typeof e.removeEventListener == "function" ? e.removeEventListener("change", t) : e.removeListener?.(t);
1184
+ }, Ie = (e) => ({
1185
+ prefersDarkScheme: e.scheme?.matches ?? !1,
1186
+ prefersReducedMotion: e.motion?.matches ?? !1,
1187
+ prefersMoreContrast: e.contrast?.matches ?? !1,
1188
+ forcedColors: e.forcedColors?.matches ?? !1
1189
+ }), Le = (e, t, n, r) => {
1190
+ !e || t.has(n) || (t.add(n), e.observe(n, {
1191
+ attributes: !0,
1192
+ childList: r,
1193
+ subtree: !1,
1194
+ attributeFilter: [...we]
1195
+ }));
1196
+ }, Z = (e, t, n) => {
1197
+ if (!t) return;
1198
+ let r = [e], i = e.parentElement;
1199
+ for (; i;) r.push(i), i = i.parentElement;
1200
+ if (r.length === n.size && r.every((e) => n.has(e))) return;
1201
+ t.disconnect(), n.clear(), n.add(e), t.observe(e, {
1202
+ attributes: !0,
1203
+ childList: !1,
1204
+ subtree: !1,
1205
+ attributeFilter: [...Ce]
1206
+ });
1207
+ let a = e.parentElement;
1208
+ for (; a;) Le(t, n, a, !0), a = a.parentElement;
1089
1209
  }, Q = class {
1090
1210
  #e;
1091
1211
  #t;
@@ -1115,39 +1235,39 @@ var e = [
1115
1235
  #T = "";
1116
1236
  #E = null;
1117
1237
  constructor({ host: e, registry: t, getConfig: n, onChange: r, transition: i, hydrate: a }) {
1118
- this.#e = e, this.#t = t ?? S, this.#n = n, this.#r = r, this.#p = i ?? "none", this.#f = a ?? !1, this.#y = e.style.colorScheme || null;
1119
- let o = typeof window < "u" && typeof window.matchMedia == "function";
1120
- this.#i = o ? window.matchMedia(L.prefersDarkScheme) : null, this.#o = o ? window.matchMedia(L.prefersReducedMotion) : null, this.#c = o ? window.matchMedia(L.prefersMoreContrast) : null, this.#u = o ? window.matchMedia(L.forcedColors) : null, this.#a = () => this.refresh(), this.#s = () => this.refresh(), this.#l = () => this.refresh(), this.#d = () => this.refresh(), this.#m = typeof MutationObserver < "u" ? new MutationObserver(() => this.refresh()) : null, this.#h = this.#t.onChange(() => {
1238
+ this.#e = e, this.#t = t ?? x, this.#n = n, this.#r = r, this.#p = i ?? "none", this.#f = a ?? !1, this.#y = e.style.colorScheme || null;
1239
+ let o = Fe();
1240
+ this.#i = o.scheme, this.#o = o.motion, this.#c = o.contrast, this.#u = o.forcedColors, this.#a = () => this.refresh(), this.#s = () => this.refresh(), this.#l = () => this.refresh(), this.#d = () => this.refresh(), this.#m = typeof MutationObserver < "u" ? new MutationObserver(() => this.refresh()) : null, this.#h = this.#t.onChange(() => {
1121
1241
  this.#S = "", this.#T = "", this.refresh();
1122
1242
  });
1123
- for (let t of G) this.#_.set(t, e.getAttribute(t));
1243
+ for (let t of H) this.#_.set(t, e.getAttribute(t));
1124
1244
  }
1125
1245
  get resolved() {
1126
1246
  return this.#E;
1127
1247
  }
1128
1248
  connect() {
1129
- this.#x || (this.#x = !0, this.#i && X(this.#i, this.#a), this.#o && X(this.#o, this.#s), this.#c && X(this.#c, this.#l), this.#u && X(this.#u, this.#d), this.#k(), !(this.#f && this.#P()) && this.refresh());
1249
+ this.#x || (this.#x = !0, this.#i && Y(this.#i, this.#a), this.#o && Y(this.#o, this.#s), this.#c && Y(this.#c, this.#l), this.#u && Y(this.#u, this.#d), Z(this.#e, this.#m, this.#g), !(this.#f && this.#O()) && this.refresh());
1130
1250
  }
1131
1251
  disconnect() {
1132
- this.#x && (this.#x = !1, this.#i && Z(this.#i, this.#a), this.#o && Z(this.#o, this.#s), this.#c && Z(this.#c, this.#l), this.#u && Z(this.#u, this.#d), this.#I(), this.#m?.disconnect(), this.#h?.(), this.#g.clear(), Te(this.#e, this.#b, this.#_, this.#v, this.#y), this.#b.clear(), this.#S = "", this.#T = "", this.#E = null);
1252
+ this.#x && (this.#x = !1, this.#i && X(this.#i, this.#a), this.#o && X(this.#o, this.#s), this.#c && X(this.#c, this.#l), this.#u && X(this.#u, this.#d), this.#k(), this.#m?.disconnect(), this.#h?.(), this.#g.clear(), Oe(this.#e, this.#b, this.#_, this.#v, this.#y), this.#b.clear(), this.#S = "", this.#T = "", this.#E = null);
1133
1253
  }
1134
1254
  refresh() {
1135
1255
  if (!this.#x) return;
1136
- this.#k();
1137
- let e = this.#n(), t = this.#N(), n = J(e, t);
1256
+ Z(this.#e, this.#m, this.#g);
1257
+ let e = this.#n(), t = this.#A(), n = G(e, t);
1138
1258
  if (n === this.#T && (e.mode ?? "auto") !== "inherit") return;
1139
- let r = this.#O(), i = I(e, this.#t, {
1259
+ let r = J(this.#e, e), i = P(e, this.#t, {
1140
1260
  inheritedScheme: r.scheme,
1141
1261
  inheritedSource: r.source ?? void 0,
1142
1262
  systemScheme: t.prefersDarkScheme ? "dark" : "light",
1143
1263
  prefersReducedMotion: t.prefersReducedMotion,
1144
1264
  prefersMoreContrast: t.prefersMoreContrast,
1145
1265
  forcedColors: t.forcedColors
1146
- }), a = z(i);
1266
+ }), a = L(i);
1147
1267
  if (this.#T = n, a === this.#S) return;
1148
1268
  let o = this.#E;
1149
1269
  this.#S = a, this.#E = i, this.#D(() => {
1150
- this.#j(i.tokens), this.#M(i.tokens), this.#b = K(this.#e, i, this.#p), this.#r?.(i), this.#e.dispatchEvent(new CustomEvent(be.change, {
1270
+ K(this.#e, this.#v, i.tokens), Me(this.#e, this.#b, this.#v, i.tokens), this.#b = U(this.#e, i, this.#p), this.#r?.(i), this.#e.dispatchEvent(new CustomEvent(Se.change, {
1151
1271
  detail: { designSystem: i },
1152
1272
  bubbles: !0,
1153
1273
  composed: !0
@@ -1155,7 +1275,7 @@ var e = [
1155
1275
  }, i, o);
1156
1276
  }
1157
1277
  #D(e, t, n) {
1158
- this.#I();
1278
+ this.#k();
1159
1279
  let r = new AbortController();
1160
1280
  if (this.#C = r, this.#p === "none") {
1161
1281
  r.signal.aborted || e(), this.#C = null;
@@ -1179,136 +1299,32 @@ var e = [
1179
1299
  this.#w = typeof a == "function" ? a : null;
1180
1300
  }
1181
1301
  #O() {
1182
- let e = this.#n();
1183
- if ((e.mode ?? "auto") !== "inherit") return {
1184
- scheme: null,
1185
- source: null
1186
- };
1187
- if (e.hostSchemeResolver) {
1188
- let t = e.hostSchemeResolver(this.#e);
1189
- if (t) return {
1190
- scheme: t,
1191
- source: "host-resolver"
1192
- };
1193
- }
1194
- let t = Y(this.#e.getAttribute(R.explicitScheme));
1195
- if (t) return {
1196
- scheme: t,
1197
- source: "host-attribute"
1198
- };
1199
- let n = this.#e.parentElement;
1200
- for (; n;) {
1201
- let e = Y(n.getAttribute(R.inheritedScheme)) ?? Y(n.getAttribute(R.effectiveScheme)) ?? Y(n.getAttribute(R.explicitScheme));
1202
- if (e) return {
1203
- scheme: e,
1204
- source: "host-attribute"
1205
- };
1206
- n = n.parentElement;
1207
- }
1208
- if (typeof window > "u") return {
1209
- scheme: null,
1210
- source: null
1211
- };
1212
- let r = window.getComputedStyle(this.#e).colorScheme;
1213
- return r.includes("dark") ? {
1214
- scheme: "dark",
1215
- source: "host-style"
1216
- } : r.includes("light") ? {
1217
- scheme: "light",
1218
- source: "host-style"
1219
- } : {
1220
- scheme: null,
1221
- source: null
1222
- };
1223
- }
1224
- #k() {
1225
- if (!this.#m) return;
1226
- let e = [this.#e], t = this.#e.parentElement;
1227
- for (; t;) e.push(t), t = t.parentElement;
1228
- if (e.length === this.#g.size && e.every((e) => this.#g.has(e))) return;
1229
- this.#m.disconnect(), this.#g.clear(), this.#g.add(this.#e), this.#m.observe(this.#e, {
1230
- attributes: !0,
1231
- childList: !1,
1232
- subtree: !1,
1233
- attributeFilter: [...xe]
1234
- });
1235
- let n = this.#e.parentElement;
1236
- for (; n;) this.#A(n, !0), n = n.parentElement;
1237
- }
1238
- #A(e, t) {
1239
- !this.#m || this.#g.has(e) || (this.#g.add(e), this.#m.observe(e, {
1240
- attributes: !0,
1241
- childList: t,
1242
- subtree: !1,
1243
- attributeFilter: [...Se]
1244
- }));
1245
- }
1246
- #j(e) {
1247
- for (let t of Object.keys(e)) {
1248
- if (this.#v.has(t)) continue;
1249
- let e = this.#e.style.getPropertyValue(t);
1250
- this.#v.set(t, e === "" ? null : e);
1251
- }
1252
- }
1253
- #M(e) {
1254
- let t = new Set(Object.keys(e));
1255
- for (let e of this.#b) {
1256
- if (t.has(e)) continue;
1257
- let n = this.#v.get(e) ?? null;
1258
- n === null ? this.#e.style.removeProperty(e) : this.#e.style.setProperty(e, n);
1259
- }
1260
- }
1261
- #N() {
1262
- return {
1263
- prefersDarkScheme: this.#i?.matches ?? !1,
1264
- prefersReducedMotion: this.#o?.matches ?? !1,
1265
- prefersMoreContrast: this.#c?.matches ?? !1,
1266
- forcedColors: this.#u?.matches ?? !1
1267
- };
1268
- }
1269
- #P() {
1270
- let e = this.#n(), t = this.#N(), n = this.#O(), r = I(e, this.#t, {
1302
+ let e = this.#n(), t = this.#A(), n = J(this.#e, e), r = P(e, this.#t, {
1271
1303
  inheritedScheme: n.scheme,
1272
1304
  inheritedSource: n.source ?? void 0,
1273
1305
  systemScheme: t.prefersDarkScheme ? "dark" : "light",
1274
1306
  prefersReducedMotion: t.prefersReducedMotion,
1275
1307
  prefersMoreContrast: t.prefersMoreContrast,
1276
1308
  forcedColors: t.forcedColors
1309
+ }), i = Pe(this.#e, this.#v, {
1310
+ resolved: r,
1311
+ envSnapshot: G(e, t)
1277
1312
  });
1278
- return this.#F(r) ? (this.#j(r.tokens), this.#b = new Set(Object.keys(r.tokens)), this.#E = r, this.#S = z(r), this.#T = J(e, t), !0) : !1;
1279
- }
1280
- #F(e) {
1281
- let t = B(e);
1282
- for (let e of G) {
1283
- let n = t[e];
1284
- if (n === void 0) {
1285
- if (this.#e.hasAttribute(e)) return !1;
1286
- continue;
1287
- }
1288
- if (this.#e.getAttribute(e) !== n) return !1;
1289
- }
1290
- if (this.#e.getAttribute(R.signature) === t[R.signature]) return !0;
1291
- if (this.#e.style.colorScheme !== e.effectiveScheme) return !1;
1292
- let n = /* @__PURE__ */ new Map();
1293
- for (let e = 0; e < this.#e.style.length; e += 1) {
1294
- let t = this.#e.style.item(e);
1295
- t.startsWith("--mlf-") && n.set(t, this.#e.style.getPropertyValue(t).trim());
1296
- }
1297
- let r = Object.entries(e.tokens);
1298
- if (n.size === r.length) {
1299
- for (let [e, t] of r) if (n.get(e) !== t) return !1;
1300
- return !0;
1301
- }
1302
- if (typeof window > "u") return !1;
1303
- let i = window.getComputedStyle(this.#e);
1304
- for (let [e, t] of r) if (i.getPropertyValue(e).trim() !== t) return !1;
1305
- return !0;
1313
+ return i ? (this.#b = i.appliedTokens, this.#E = i.resolved, this.#S = i.signature, this.#T = i.envSnapshot, !0) : !1;
1306
1314
  }
1307
- #I() {
1315
+ #k() {
1308
1316
  this.#C?.abort(), this.#C = null, this.#w?.(), this.#w = null;
1309
1317
  }
1318
+ #A() {
1319
+ return Ie({
1320
+ scheme: this.#i,
1321
+ motion: this.#o,
1322
+ contrast: this.#c,
1323
+ forcedColors: this.#u
1324
+ });
1325
+ }
1310
1326
  }, $ = (e, t = {}, n = !1) => {
1311
- let r = (...e) => m(P(...e)), i = r(t.config), a = i, o = t.registry?.clone() ?? S.clone(), s = new Q({
1327
+ let r = (...e) => m(M(...e)), i = r(t.config), a = i, o = t.registry?.clone() ?? x.clone(), s = new Q({
1312
1328
  host: e,
1313
1329
  registry: o,
1314
1330
  getConfig: () => a,
@@ -1338,15 +1354,15 @@ var e = [
1338
1354
  s.disconnect();
1339
1355
  }
1340
1356
  });
1341
- }, ke = (e, t = {}) => $(e, t), Ae = /^-?[_a-zA-Z][_a-zA-Z0-9-]*$/, je = (e) => {
1357
+ }, Re = (e, t = {}) => $(e, t), ze = /^-?[_a-zA-Z][_a-zA-Z0-9-]*$/, Be = (e) => {
1342
1358
  if (!e.trim()) throw Error("[mlform] createDesignSystemStylesheet layer name must be non-empty");
1343
1359
  if (e.includes("{") || e.includes("}") || e.includes(";")) throw Error("[mlform] createDesignSystemStylesheet layer name contains unsafe characters");
1344
- if (e.split(".").some((e) => !Ae.test(e))) throw Error("[mlform] createDesignSystemStylesheet layer name is not a valid CSS layer name");
1345
- }, Me = (e, t = ":host") => {
1360
+ if (e.split(".").some((e) => !ze.test(e))) throw Error("[mlform] createDesignSystemStylesheet layer name is not a valid CSS layer name");
1361
+ }, Ve = (e, t = ":host") => {
1346
1362
  let n = typeof t == "string" ? { selector: t } : t, r = n.selector ?? ":host", i = n.layer;
1347
- we(r), i && je(i);
1348
- let a = `${r} {\n${U(e).map(([e, t]) => ` ${e}: ${t};`).join("\n")}\n}`;
1363
+ Ee(r), i && Be(i);
1364
+ let a = `${r} {\n${B(e).map(([e, t]) => ` ${e}: ${t};`).join("\n")}\n}`;
1349
1365
  return i ? `@layer ${i} {\n${a}\n}` : a;
1350
- }, Ne = (e, t = {}) => $(e, t, !0);
1366
+ }, He = (e, t = {}) => $(e, t, !0);
1351
1367
  //#endregion
1352
- export { r as C, i as S, e as T, y as _, K as a, g as b, B as c, F as d, P as f, b as g, S as h, Q as i, I as l, te as m, Me as n, W as o, ne as p, ke as r, z as s, Ne as t, ye as u, x as v, t as w, h as x, v as y };
1368
+ export { r as C, i as S, e as T, v as _, U as a, g as b, R as c, N as d, M as f, y as g, x as h, Q as i, P as l, ne as m, Ve as n, V as o, re as p, Re as r, L as s, He as t, xe as u, b as v, t as w, h as x, _ as y };