mlform 0.1.23 → 0.1.24

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 (261) hide show
  1. package/README.md +98 -229
  2. package/dist/builtins-jvAitKUC.js +560 -0
  3. package/dist/{design-Dr7o4rR9.js → design-D8zce4Mh.js} +13 -12
  4. package/dist/mlform/builtins.mjs +2 -2
  5. package/dist/mlform/design.mjs +1 -1
  6. package/dist/mlform/kit.mjs +435 -275
  7. package/dist/mlform/primitives.mjs +2 -2
  8. package/dist/mlform/runtime.mjs +1 -1
  9. package/dist/mlform/schema.mjs +1 -1
  10. package/dist/{primitives-ljp3c5R8.js → primitives-ChLgMFl9.js} +452 -450
  11. package/dist/{runtime-BQsOz8iz.js → runtime-B_vnmwya.js} +9 -9
  12. package/dist/{schema-BI-Ia-h9.js → schema-C34LJ8aV.js} +5 -5
  13. package/dist/types/{src/builtins → builtins}/definitions/collections.d.ts +12 -12
  14. package/dist/types/{src/builtins → builtins}/definitions/fields/boolean.d.ts +1 -1
  15. package/dist/types/{src/builtins → builtins}/definitions/fields/category.d.ts +1 -1
  16. package/dist/types/{src/builtins → builtins}/definitions/fields/date.d.ts +1 -1
  17. package/dist/types/{src/builtins → builtins}/definitions/fields/long-text.d.ts +1 -1
  18. package/dist/types/{src/builtins → builtins}/definitions/fields/mapped-category.d.ts +1 -1
  19. package/dist/types/{src/builtins → builtins}/definitions/fields/multi-choice.d.ts +1 -1
  20. package/dist/types/{src/builtins → builtins}/definitions/fields/number.d.ts +1 -1
  21. package/dist/types/{src/builtins → builtins}/definitions/fields/onehot-category.d.ts +1 -1
  22. package/dist/types/{src/builtins → builtins}/definitions/fields/rating.d.ts +1 -1
  23. package/dist/types/{src/builtins → builtins}/definitions/fields/series-helpers.d.ts +4 -4
  24. package/dist/types/{src/builtins → builtins}/definitions/fields/single-choice.d.ts +1 -1
  25. package/dist/types/{src/builtins → builtins}/definitions/fields/text.d.ts +1 -1
  26. package/dist/types/{src/builtins → builtins}/definitions/reports/classifier.d.ts +1 -1
  27. package/dist/types/{src/builtins → builtins}/definitions/reports/regressor.d.ts +1 -1
  28. package/dist/types/{src/builtins → builtins}/definitions/shared.d.ts +3 -28
  29. package/dist/types/{src/builtins → builtins}/index.d.ts +2 -3
  30. package/dist/types/{src/builtins → builtins}/mapped-category-behavior.d.ts +1 -1
  31. package/dist/types/builtins/registry.d.ts +2 -0
  32. package/dist/types/kit/builtin-presenters.d.ts +2 -0
  33. package/dist/types/{src/kit → kit}/defaults.d.ts +3 -3
  34. package/dist/types/{src/kit → kit}/index.d.ts +3 -0
  35. package/dist/types/{src/kit → kit}/kinds/define-field-kind.d.ts +4 -3
  36. package/dist/types/{src/kit → kit}/kinds/define-report-kind.d.ts +4 -3
  37. package/dist/types/kit/kinds/register-kind.d.ts +6 -0
  38. package/dist/types/{src/kit → kit}/layout-helpers.d.ts +1 -1
  39. package/dist/types/{src/kit → kit}/layout-node-render.d.ts +1 -1
  40. package/dist/types/{src/kit → kit}/layout-root.d.ts +1 -1
  41. package/dist/types/{src/kit → kit}/layout-utils.d.ts +1 -1
  42. package/dist/types/{src/kit → kit}/layout.d.ts +1 -1
  43. package/dist/types/{src/kit → kit}/mount-types.d.ts +5 -3
  44. package/dist/types/kit/plugin.d.ts +19 -0
  45. package/dist/types/kit/registry-pack.d.ts +16 -0
  46. package/dist/types/{src/kit → kit}/tabs-root.d.ts +1 -1
  47. package/dist/types/{src/kit → kit}/view-core-types.d.ts +4 -2
  48. package/dist/types/{src/kit → kit}/view-navigation.d.ts +1 -1
  49. package/dist/types/{src/kit → kit}/view-snapshot-cache.d.ts +2 -2
  50. package/dist/types/{src/kit → kit}/view-snapshot.d.ts +2 -2
  51. package/dist/types/{src/kit → kit}/wizard-root.d.ts +1 -1
  52. package/dist/types/{src/primitives → primitives}/descriptors/registry.d.ts +2 -1
  53. package/dist/types/{src/primitives → primitives}/index.d.ts +1 -1
  54. package/dist/types/primitives/mount-form.d.ts +4 -0
  55. package/dist/types/{src/runtime → runtime}/errors.d.ts +1 -1
  56. package/dist/types/{src/runtime → runtime}/runtime-behaviors.d.ts +1 -1
  57. package/dist/types/{src/runtime → runtime}/submission/request.d.ts +1 -1
  58. package/dist/types/{src/runtime → runtime}/submission/types.d.ts +1 -1
  59. package/dist/types/{src/runtime → runtime}/types/behavior.d.ts +2 -2
  60. package/dist/types/{src/runtime → runtime}/types/field.d.ts +3 -3
  61. package/dist/types/{src/runtime → runtime}/types/form.d.ts +3 -2
  62. package/dist/types/{src/runtime → runtime}/types/index.d.ts +1 -0
  63. package/dist/types/{src/runtime → runtime}/types/registry.d.ts +1 -1
  64. package/dist/types/{src/runtime → runtime}/types/report.d.ts +5 -5
  65. package/dist/types/runtime/types/status.d.ts +1 -0
  66. package/dist/types/{src/runtime → runtime}/types/transport.d.ts +5 -5
  67. package/dist/types/{src/runtime → runtime}/validation/form.d.ts +1 -1
  68. package/dist/types/{src/schema → schema}/index.d.ts +1 -0
  69. package/dist/types/{src/schema → schema}/mapped-to.d.ts +2 -6
  70. package/dist/types/{src/schema → schema}/normalize.d.ts +2 -1
  71. package/dist/types/{src/schema → schema}/registry.d.ts +3 -1
  72. package/dist/types/{src/schema → schema}/types/field.d.ts +1 -1
  73. package/dist/types/schema/types/mapping.d.ts +6 -0
  74. package/dist/types/{src/schema → schema}/types/report.d.ts +1 -1
  75. package/dist/types/{src/schema → schema}/types/submit.d.ts +1 -1
  76. package/dist/types/{src/schema → schema}/validation.d.ts +2 -1
  77. package/dist/types/{src/transport → transport}/types.d.ts +1 -1
  78. package/package.json +27 -20
  79. package/dist/builtins-rkxD-h7K.js +0 -749
  80. package/dist/types/src/builtins/registry-pack.d.ts +0 -10
  81. package/dist/types/src/kit/kinds/register-kind.d.ts +0 -5
  82. package/dist/types/src/primitives/mount-form.d.ts +0 -4
  83. /package/dist/types/{src/builtins → builtins}/constants.d.ts +0 -0
  84. /package/dist/types/{src/builtins → builtins}/definitions/fields/series.d.ts +0 -0
  85. /package/dist/types/{src/builtins → builtins}/definitions/fields/value-helpers.d.ts +0 -0
  86. /package/dist/types/{src/builtins → builtins}/definitions/index.d.ts +0 -0
  87. /package/dist/types/{src/design → design}/constants.d.ts +0 -0
  88. /package/dist/types/{src/design → design}/contract/component-keys.d.ts +0 -0
  89. /package/dist/types/{src/design → design}/contract/component-tokens.d.ts +0 -0
  90. /package/dist/types/{src/design → design}/contract/global-tokens.d.ts +0 -0
  91. /package/dist/types/{src/design → design}/contract/index.d.ts +0 -0
  92. /package/dist/types/{src/design → design}/contract/token-keys.d.ts +0 -0
  93. /package/dist/types/{src/design → design}/index.d.ts +0 -0
  94. /package/dist/types/{src/design → design}/recipes/collections.d.ts +0 -0
  95. /package/dist/types/{src/design → design}/recipes/contrast.d.ts +0 -0
  96. /package/dist/types/{src/design → design}/recipes/default.d.ts +0 -0
  97. /package/dist/types/{src/design → design}/recipes/index.d.ts +0 -0
  98. /package/dist/types/{src/design → design}/recipes/minimal.d.ts +0 -0
  99. /package/dist/types/{src/design → design}/recipes/soft.d.ts +0 -0
  100. /package/dist/types/{src/design → design}/registry/builtins.d.ts +0 -0
  101. /package/dist/types/{src/design → design}/registry/create-registry.d.ts +0 -0
  102. /package/dist/types/{src/design → design}/registry/deep-freeze.d.ts +0 -0
  103. /package/dist/types/{src/design → design}/registry/define-recipe.d.ts +0 -0
  104. /package/dist/types/{src/design → design}/registry/define-theme.d.ts +0 -0
  105. /package/dist/types/{src/design → design}/registry/define-token-maps.d.ts +0 -0
  106. /package/dist/types/{src/design → design}/registry/index.d.ts +0 -0
  107. /package/dist/types/{src/design → design}/resolve/diagnostics.d.ts +0 -0
  108. /package/dist/types/{src/design → design}/resolve/index.d.ts +0 -0
  109. /package/dist/types/{src/design → design}/resolve/merge-config.d.ts +0 -0
  110. /package/dist/types/{src/design → design}/resolve/migrate-tokens.d.ts +0 -0
  111. /package/dist/types/{src/design → design}/resolve/resolve-design.d.ts +0 -0
  112. /package/dist/types/{src/design → design}/resolve/resolve-mode.d.ts +0 -0
  113. /package/dist/types/{src/design → design}/resolve/resolve-recipe.d.ts +0 -0
  114. /package/dist/types/{src/design → design}/resolve/resolve-theme.d.ts +0 -0
  115. /package/dist/types/{src/design → design}/resolve/resolve-tokens.d.ts +0 -0
  116. /package/dist/types/{src/design → design}/runtime/apply-tokens.d.ts +0 -0
  117. /package/dist/types/{src/design → design}/runtime/attach-design.d.ts +0 -0
  118. /package/dist/types/{src/design → design}/runtime/controller-helpers.d.ts +0 -0
  119. /package/dist/types/{src/design → design}/runtime/create-stylesheet.d.ts +0 -0
  120. /package/dist/types/{src/design → design}/runtime/declarations.d.ts +0 -0
  121. /package/dist/types/{src/design → design}/runtime/design-controller.d.ts +0 -0
  122. /package/dist/types/{src/design → design}/runtime/fingerprint.d.ts +0 -0
  123. /package/dist/types/{src/design → design}/runtime/host-observer.d.ts +0 -0
  124. /package/dist/types/{src/design → design}/runtime/host-state.d.ts +0 -0
  125. /package/dist/types/{src/design → design}/runtime/hydrate-design.d.ts +0 -0
  126. /package/dist/types/{src/design → design}/runtime/hydration-state.d.ts +0 -0
  127. /package/dist/types/{src/design → design}/runtime/index.d.ts +0 -0
  128. /package/dist/types/{src/design → design}/runtime/inherited-scheme.d.ts +0 -0
  129. /package/dist/types/{src/design → design}/runtime/media.d.ts +0 -0
  130. /package/dist/types/{src/design → design}/themes/airbnb.d.ts +0 -0
  131. /package/dist/types/{src/design → design}/themes/clickhouse.d.ts +0 -0
  132. /package/dist/types/{src/design → design}/themes/cobalt.d.ts +0 -0
  133. /package/dist/types/{src/design → design}/themes/collections.d.ts +0 -0
  134. /package/dist/types/{src/design → design}/themes/graphite.d.ts +0 -0
  135. /package/dist/types/{src/design → design}/themes/index.d.ts +0 -0
  136. /package/dist/types/{src/design → design}/themes/neutral.d.ts +0 -0
  137. /package/dist/types/{src/design → design}/themes/sage.d.ts +0 -0
  138. /package/dist/types/{src/design → design}/themes/sunset.d.ts +0 -0
  139. /package/dist/types/{src/design → design}/tokens/base.d.ts +0 -0
  140. /package/dist/types/{src/design → design}/tokens/contrast.d.ts +0 -0
  141. /package/dist/types/{src/design → design}/tokens/density.d.ts +0 -0
  142. /package/dist/types/{src/design → design}/tokens/forced-colors.d.ts +0 -0
  143. /package/dist/types/{src/design → design}/tokens/index.d.ts +0 -0
  144. /package/dist/types/{src/design → design}/tokens/motion.d.ts +0 -0
  145. /package/dist/types/{src/design → design}/types.d.ts +0 -0
  146. /package/dist/types/{src/kit → kit}/constants.d.ts +0 -0
  147. /package/dist/types/{src/kit → kit}/disclosure-root-styles.d.ts +0 -0
  148. /package/dist/types/{src/kit → kit}/error-navigation.d.ts +0 -0
  149. /package/dist/types/{src/kit → kit}/kinds/index.d.ts +0 -0
  150. /package/dist/types/{src/kit → kit}/layout-node-resolver.d.ts +0 -0
  151. /package/dist/types/{src/kit → kit}/layout-types.d.ts +0 -0
  152. /package/dist/types/{src/kit → kit}/mount-form.d.ts +0 -0
  153. /package/dist/types/{src/kit → kit}/panel-nav.d.ts +0 -0
  154. /package/dist/types/{src/kit → kit}/step-indicator.d.ts +0 -0
  155. /package/dist/types/{src/kit → kit}/tabs-root-styles.d.ts +0 -0
  156. /package/dist/types/{src/kit → kit}/types.d.ts +0 -0
  157. /package/dist/types/{src/kit → kit}/view-layout-state.d.ts +0 -0
  158. /package/dist/types/{src/kit → kit}/view-types.d.ts +0 -0
  159. /package/dist/types/{src/kit → kit}/view.d.ts +0 -0
  160. /package/dist/types/{src/kit → kit}/wizard-constants.d.ts +0 -0
  161. /package/dist/types/{src/kit → kit}/wizard-root-styles.d.ts +0 -0
  162. /package/dist/types/{src/primitives → primitives}/base-async-report-element.d.ts +0 -0
  163. /package/dist/types/{src/primitives → primitives}/base-field-element.d.ts +0 -0
  164. /package/dist/types/{src/primitives → primitives}/base-report-element.d.ts +0 -0
  165. /package/dist/types/{src/primitives → primitives}/components/declarative-field.d.ts +0 -0
  166. /package/dist/types/{src/primitives → primitives}/components/declarative-report.d.ts +0 -0
  167. /package/dist/types/{src/primitives → primitives}/components/descriptor-content.d.ts +0 -0
  168. /package/dist/types/{src/primitives → primitives}/components/error-focus.d.ts +0 -0
  169. /package/dist/types/{src/primitives → primitives}/components/field-frame-feedback.d.ts +0 -0
  170. /package/dist/types/{src/primitives → primitives}/components/field-frame-styles.d.ts +0 -0
  171. /package/dist/types/{src/primitives → primitives}/components/field-frame.d.ts +0 -0
  172. /package/dist/types/{src/primitives → primitives}/components/form-errors.d.ts +0 -0
  173. /package/dist/types/{src/primitives → primitives}/components/form-root-presenters.d.ts +0 -0
  174. /package/dist/types/{src/primitives → primitives}/components/form-root-split-styles.d.ts +0 -0
  175. /package/dist/types/{src/primitives → primitives}/components/form-root-state.d.ts +0 -0
  176. /package/dist/types/{src/primitives → primitives}/components/form-root-styles.d.ts +0 -0
  177. /package/dist/types/{src/primitives → primitives}/components/form-root-templates.d.ts +0 -0
  178. /package/dist/types/{src/primitives → primitives}/components/form-root.d.ts +0 -0
  179. /package/dist/types/{src/primitives → primitives}/components/mounted-report.d.ts +0 -0
  180. /package/dist/types/{src/primitives → primitives}/components/report-frame.d.ts +0 -0
  181. /package/dist/types/{src/primitives → primitives}/components/submit-button.d.ts +0 -0
  182. /package/dist/types/{src/primitives → primitives}/components/unsupported-component.d.ts +0 -0
  183. /package/dist/types/{src/primitives → primitives}/constants.d.ts +0 -0
  184. /package/dist/types/{src/primitives → primitives}/controller-binding.d.ts +0 -0
  185. /package/dist/types/{src/primitives → primitives}/controller-types.d.ts +0 -0
  186. /package/dist/types/{src/primitives → primitives}/descriptor-resolution.d.ts +0 -0
  187. /package/dist/types/{src/primitives → primitives}/descriptors/content.d.ts +0 -0
  188. /package/dist/types/{src/primitives → primitives}/descriptors/field.d.ts +0 -0
  189. /package/dist/types/{src/primitives → primitives}/descriptors/index.d.ts +0 -0
  190. /package/dist/types/{src/primitives → primitives}/descriptors/report.d.ts +0 -0
  191. /package/dist/types/{src/primitives → primitives}/fields/boolean-field.d.ts +0 -0
  192. /package/dist/types/{src/primitives → primitives}/fields/category-field.d.ts +0 -0
  193. /package/dist/types/{src/primitives → primitives}/fields/date-field.d.ts +0 -0
  194. /package/dist/types/{src/primitives → primitives}/fields/long-text-field.d.ts +0 -0
  195. /package/dist/types/{src/primitives → primitives}/fields/multi-choice-field.d.ts +0 -0
  196. /package/dist/types/{src/primitives → primitives}/fields/number-field.d.ts +0 -0
  197. /package/dist/types/{src/primitives → primitives}/fields/rating-field.d.ts +0 -0
  198. /package/dist/types/{src/primitives → primitives}/fields/series-field-helpers.d.ts +0 -0
  199. /package/dist/types/{src/primitives → primitives}/fields/series-field-renderers.d.ts +0 -0
  200. /package/dist/types/{src/primitives → primitives}/fields/series-field-styles.d.ts +0 -0
  201. /package/dist/types/{src/primitives → primitives}/fields/series-field.d.ts +0 -0
  202. /package/dist/types/{src/primitives → primitives}/fields/single-choice-field.d.ts +0 -0
  203. /package/dist/types/{src/primitives → primitives}/fields/text-field.d.ts +0 -0
  204. /package/dist/types/{src/primitives → primitives}/register.d.ts +0 -0
  205. /package/dist/types/{src/primitives → primitives}/registry.d.ts +0 -0
  206. /package/dist/types/{src/primitives → primitives}/reports/classifier-report.d.ts +0 -0
  207. /package/dist/types/{src/primitives → primitives}/reports/regressor-report.d.ts +0 -0
  208. /package/dist/types/{src/primitives → primitives}/request-runner.d.ts +0 -0
  209. /package/dist/types/{src/primitives → primitives}/types.d.ts +0 -0
  210. /package/dist/types/{src/primitives → primitives}/utils.d.ts +0 -0
  211. /package/dist/types/{src/runtime → runtime}/comparison.d.ts +0 -0
  212. /package/dist/types/{src/runtime → runtime}/create-runtime-helpers.d.ts +0 -0
  213. /package/dist/types/{src/runtime → runtime}/create-runtime.d.ts +0 -0
  214. /package/dist/types/{src/runtime → runtime}/equality.d.ts +0 -0
  215. /package/dist/types/{src/runtime → runtime}/fields/controller.d.ts +0 -0
  216. /package/dist/types/{src/runtime → runtime}/fields/index.d.ts +0 -0
  217. /package/dist/types/{src/runtime → runtime}/fields/state-calculations.d.ts +0 -0
  218. /package/dist/types/{src/runtime → runtime}/fields/state.d.ts +0 -0
  219. /package/dist/types/{src/runtime → runtime}/form.d.ts +0 -0
  220. /package/dist/types/{src/runtime → runtime}/index.d.ts +0 -0
  221. /package/dist/types/{src/runtime → runtime}/paths.d.ts +0 -0
  222. /package/dist/types/{src/runtime → runtime}/reports/controller.d.ts +0 -0
  223. /package/dist/types/{src/runtime → runtime}/reports/index.d.ts +0 -0
  224. /package/dist/types/{src/runtime → runtime}/runtime-controller.d.ts +0 -0
  225. /package/dist/types/{src/runtime → runtime}/runtime-refresh.d.ts +0 -0
  226. /package/dist/types/{src/runtime → runtime}/runtime-values.d.ts +0 -0
  227. /package/dist/types/{src/runtime → runtime}/state/engine.d.ts +0 -0
  228. /package/dist/types/{src/runtime → runtime}/state/index.d.ts +0 -0
  229. /package/dist/types/{src/runtime → runtime}/state/snapshots.d.ts +0 -0
  230. /package/dist/types/{src/runtime → runtime}/state/store.d.ts +0 -0
  231. /package/dist/types/{src/runtime → runtime}/submission/abort.d.ts +0 -0
  232. /package/dist/types/{src/runtime → runtime}/submission/create-submitter.d.ts +0 -0
  233. /package/dist/types/{src/runtime → runtime}/submission/error-flow.d.ts +0 -0
  234. /package/dist/types/{src/runtime → runtime}/submission/index.d.ts +0 -0
  235. /package/dist/types/{src/runtime → runtime}/submission/lifecycle.d.ts +0 -0
  236. /package/dist/types/{src/runtime → runtime}/submission/multi-backend.d.ts +0 -0
  237. /package/dist/types/{src/runtime → runtime}/submission/pipeline.d.ts +0 -0
  238. /package/dist/types/{src/runtime → runtime}/submission/report-fetches.d.ts +0 -0
  239. /package/dist/types/{src/runtime → runtime}/submission/reports.d.ts +0 -0
  240. /package/dist/types/{src/runtime → runtime}/submission/result.d.ts +0 -0
  241. /package/dist/types/{src/runtime → runtime}/submission/snapshot.d.ts +0 -0
  242. /package/dist/types/{src/runtime → runtime}/submission/submitter.d.ts +0 -0
  243. /package/dist/types/{src/runtime → runtime}/submission/transport-response.d.ts +0 -0
  244. /package/dist/types/{src/runtime → runtime}/types/pipeline.d.ts +0 -0
  245. /package/dist/types/{src/runtime → runtime}/utils.d.ts +0 -0
  246. /package/dist/types/{src/runtime → runtime}/validation/conditions.d.ts +0 -0
  247. /package/dist/types/{src/runtime → runtime}/validation/field-state.d.ts +0 -0
  248. /package/dist/types/{src/runtime → runtime}/validation/field-validator.d.ts +0 -0
  249. /package/dist/types/{src/runtime → runtime}/validation/field.d.ts +0 -0
  250. /package/dist/types/{src/runtime → runtime}/validation/index.d.ts +0 -0
  251. /package/dist/types/{src/runtime → runtime}/values.d.ts +0 -0
  252. /package/dist/types/{src/schema → schema}/ids.d.ts +0 -0
  253. /package/dist/types/{src/schema → schema}/onehot-display.d.ts +0 -0
  254. /package/dist/types/{src/schema → schema}/report-context.d.ts +0 -0
  255. /package/dist/types/{src/schema → schema}/report-fetch-request.d.ts +0 -0
  256. /package/dist/types/{src/schema → schema}/types/form.d.ts +0 -0
  257. /package/dist/types/{src/schema → schema}/types/registry.d.ts +0 -0
  258. /package/dist/types/{src/transport → transport}/errors.d.ts +0 -0
  259. /package/dist/types/{src/transport → transport}/fanout.d.ts +0 -0
  260. /package/dist/types/{src/transport → transport}/index.d.ts +0 -0
  261. /package/dist/types/{src/transport → transport}/request-runner.d.ts +0 -0
@@ -1,60 +1,185 @@
1
- import { _ as e, t } from "../runtime-BQsOz8iz.js";
2
- import { b as n, d as r } from "../schema-BI-Ia-h9.js";
3
- import { n as i } from "../builtins-rkxD-h7K.js";
4
- import { _ as a, a as o, h as s, l as c, m as l, p as u, r as d, t as f } from "../primitives-ljp3c5R8.js";
5
- import { d as p, h as m, r as h } from "../design-Dr7o4rR9.js";
6
- import { LitElement as g, css as _, html as v, nothing as y } from "lit";
7
- import { customElement as b, property as x, state as S } from "lit/decorators.js";
8
- import { repeat as C } from "lit/directives/repeat.js";
1
+ import { _ as e, t } from "../runtime-B_vnmwya.js";
2
+ import { b as n, d as r } from "../schema-C34LJ8aV.js";
3
+ import { S as i, c as a, n as o, t as s } from "../builtins-jvAitKUC.js";
4
+ import { _ as c, a as l, h as u, l as d, m as f, p, r as m, s as h, t as g } from "../primitives-ChLgMFl9.js";
5
+ import { d as _, h as v, r as y } from "../design-D8zce4Mh.js";
6
+ import { LitElement as b, css as x, html as S, nothing as C } from "lit";
7
+ import { customElement as w, property as T, state as E } from "lit/decorators.js";
8
+ import { repeat as D } from "lit/directives/repeat.js";
9
9
  //#region src/kit/defaults.ts
10
- var w = { ...l }, T = {
10
+ var ee = { ...f }, O = {
11
11
  mode: "auto",
12
12
  theme: "neutral",
13
13
  recipe: "default"
14
- }, ee = (e) => {
14
+ }, te = (e) => {
15
15
  let t = r();
16
16
  for (let n of e.listFields()) t.registerField(n);
17
17
  for (let n of e.listReports()) t.registerReport(n);
18
18
  return t;
19
- }, te = (e) => e?.clone() ?? d(), ne = (e) => e?.clone() ?? m.clone(), re = (e = {}) => ({
20
- ...w,
19
+ }, ne = (e) => e?.clone() ?? m(), re = (e) => e?.clone() ?? v.clone(), ie = (e = {}) => ({
20
+ ...ee,
21
21
  ...e
22
- }), ie = (e = {}) => p(T, e), E = (e, t) => {
23
- if (t(e), "children" in e) for (let n of e.children) E(n, t);
24
- }, D = (e, t) => {
22
+ }), ae = (e = {}) => _(O, e), k = (e, t, n) => ({
23
+ kind: e,
24
+ describe(e, r) {
25
+ return {
26
+ component: t,
27
+ props: {
28
+ id: r.fieldId,
29
+ kind: e.kind,
30
+ label: e.label,
31
+ description: e.description ?? "",
32
+ showDescriptionInline: e.showDescriptionInline ?? !1,
33
+ required: e.required ?? !1,
34
+ disabled: e.disabled ?? !1,
35
+ ...n(e, r),
36
+ ...e.ui
37
+ }
38
+ };
39
+ }
40
+ }), A = (e, t) => ({
41
+ value: t.state.value,
42
+ state: t.state.status,
43
+ errors: t.state.errors
44
+ }), j = (e) => e.options ?? [], M = (e) => j(e).map((e) => typeof e == "string" ? e : {
45
+ label: e.label,
46
+ value: e.value
47
+ }), oe = [
48
+ k("text", "text-field", (e, t) => ({
49
+ ...A(e, t),
50
+ placeholder: e.placeholder ?? "",
51
+ minLength: e.minLength,
52
+ maxLength: e.maxLength,
53
+ pattern: e.pattern
54
+ })),
55
+ k("number", "number-field", (e, t) => ({
56
+ ...A(e, t),
57
+ min: e.min,
58
+ max: e.max,
59
+ step: e.step,
60
+ unit: e.unit,
61
+ placeholder: e.placeholder ?? "",
62
+ input: e.min !== void 0 && e.max !== void 0 && !e.required && t.state.value !== null ? "range" : "text"
63
+ })),
64
+ k("boolean", "boolean-field", (e, t) => ({
65
+ checked: t.state.value,
66
+ trueLabel: e.trueLabel,
67
+ falseLabel: e.falseLabel,
68
+ state: t.state.status,
69
+ errors: t.state.errors
70
+ })),
71
+ k("category", "category-field", (e, t) => ({
72
+ ...A(e, t),
73
+ options: j(e)
74
+ })),
75
+ k("mapped-category", "category-field", (e, t) => ({
76
+ ...A(e, t),
77
+ options: M(e)
78
+ })),
79
+ k("onehot-category", "category-field", (e, t) => ({
80
+ ...A(e, t),
81
+ options: M(e)
82
+ })),
83
+ k("date", "date-field", (e, t) => ({
84
+ ...A(e, t),
85
+ value: t.state.value instanceof Date ? t.state.value.toISOString().slice(0, 10) : t.state.value,
86
+ min: e.min,
87
+ max: e.max,
88
+ step: e.step
89
+ })),
90
+ k("series", "series-field", (e, t) => ({
91
+ ...A(e, t),
92
+ value: Array.isArray(t.state.value) ? a.serializeValue?.(t.state.value, e) : [],
93
+ field1: e.field1,
94
+ field2: e.field2,
95
+ minPoints: e.minPoints,
96
+ maxPoints: e.maxPoints
97
+ })),
98
+ k("long-text", "long-text-field", (e, t) => ({
99
+ ...A(e, t),
100
+ placeholder: e.placeholder ?? "",
101
+ minLength: e.minLength,
102
+ maxLength: e.maxLength,
103
+ rows: e.rows
104
+ })),
105
+ k("single-choice", "single-choice-field", (e, t) => ({
106
+ ...A(e, t),
107
+ options: j(e),
108
+ layout: e.layout ?? "vertical"
109
+ })),
110
+ k("multi-choice", "multi-choice-field", (e, t) => ({
111
+ ...A(e, t),
112
+ options: j(e),
113
+ layout: e.layout ?? "vertical"
114
+ })),
115
+ k("rating", "rating-field", (e, t) => ({
116
+ ...A(e, t),
117
+ min: e.min ?? 1,
118
+ max: e.max,
119
+ step: e.step ?? 1
120
+ }))
121
+ ], N = (e, t, n) => ({
122
+ kind: e,
123
+ describe(r, a) {
124
+ return a.state.status === "idle" && a.payload === void 0 ? null : {
125
+ component: t,
126
+ props: {
127
+ id: a.reportId,
128
+ kind: r.kind,
129
+ label: r.label ?? i[e],
130
+ description: r.description ?? "",
131
+ payload: a.payload,
132
+ error: a.state.error,
133
+ state: a.state.status,
134
+ ...n(r),
135
+ ...r.ui
136
+ }
137
+ };
138
+ }
139
+ }), se = [N("classifier", "classifier-report", (e) => ({
140
+ showClassProbabilities: e.showClassProbabilities,
141
+ labels: e.labels
142
+ })), N("regressor", "regressor-report", (e) => ({
143
+ unit: e.unit,
144
+ precision: e.precision
145
+ }))], ce = () => {
146
+ let e = h();
147
+ for (let t of oe) e.registerField(t);
148
+ for (let t of se) e.registerReport(t);
149
+ return e;
150
+ }, P = (e, t) => {
151
+ if (t(e), "children" in e) for (let n of e.children) P(n, t);
152
+ }, le = (e, t) => {
25
153
  switch (e.kind) {
26
154
  case "stacked":
27
155
  case "split":
28
- for (let n of e.children) E(n, t);
156
+ for (let n of e.children) P(n, t);
29
157
  return;
30
158
  case "wizard":
31
- for (let n of e.steps) for (let e of n.children) E(e, t);
159
+ for (let n of e.steps) for (let e of n.children) P(e, t);
32
160
  return;
33
161
  case "tabs":
34
- for (let n of e.tabs) for (let e of n.children) E(e, t);
162
+ for (let n of e.tabs) for (let e of n.children) P(e, t);
35
163
  return;
36
164
  }
37
- }, O = (e) => {
165
+ }, F = (e) => {
38
166
  let t = [];
39
- return D(e, (e) => {
167
+ return le(e, (e) => {
40
168
  t.push(e);
41
169
  }), t;
42
- }, k = (e) => {
170
+ }, ue = (e) => {
43
171
  let t = {
44
172
  fields: [],
45
173
  reports: []
46
174
  };
47
- for (let n of O(e)) switch (n.kind) {
175
+ for (let n of F(e)) switch (n.kind) {
48
176
  case "field":
49
177
  t.fields.push(n.field);
50
178
  break;
51
- case "report":
52
- t.reports.push(n.report);
53
- break;
54
- default: break;
179
+ case "report": t.reports.push(n.report);
55
180
  }
56
181
  return t;
57
- }, A = {
182
+ }, I = {
58
183
  invalidDesignSystemSnapshot: "replaceDesignSystem requires an explicit mode, theme, and recipe.",
59
184
  fieldDuplicateInLayout: (e) => `Field "${e}" appears multiple times in layout.`,
60
185
  fieldMissingInLayout: (e) => `Field "${e}" is missing from layout.`,
@@ -71,44 +196,44 @@ var w = { ...l }, T = {
71
196
  unknownTab: (e) => `Unknown tab "${e}".`,
72
197
  unknownWizardStep: (e) => `Unknown wizard step "${e}".`,
73
198
  unknownDisclosureSection: (e) => `Unknown disclosure section "${e}".`
74
- }, j = {
199
+ }, L = {
75
200
  wizard: "mlf-kit-wizard",
76
201
  tabs: "mlf-kit-tabs",
77
202
  disclosure: "mlf-kit-disclosure",
78
203
  stepIndicator: "mlf-kit-step-indicator"
79
- }, ae = async (e) => {
204
+ }, de = async (e) => {
80
205
  await Promise.resolve(), "updateComplete" in e && await e.updateComplete, await Promise.resolve();
81
- }, oe = (e) => {
206
+ }, fe = (e) => {
82
207
  let t = e.getSnapshot().fields.filter((e) => e.state.visible && e.state.errors.length > 0), n = new Map(e.getLayoutReferences().fields.map((e, t) => [e, t]));
83
208
  return t.sort((e, t) => (n.get(e.id) ?? 0) - (n.get(t.id) ?? 0)), t[0] ?? null;
84
- }, M = async (e, t, n) => {
85
- let r = oe(t);
209
+ }, R = async (e, t, n) => {
210
+ let r = fe(t);
86
211
  if (!r) return !1;
87
212
  let i = t.getSnapshot().layout.kind;
88
- return i === "wizard" && r.stepId && await t.goToStep(r.stepId), i === "tabs" && r.tabId && t.setActiveTab(r.tabId), r.sectionId && t.openSection(r.sectionId), await ae(e), n(e, r.id);
89
- }, N = ({ node: e, view: t, snapshot: n, registry: r, primitiveText: i = s, sectionClass: a, sectionCopyClass: o, sectionTitleClass: c, sectionDescriptionClass: l, childrenClass: u, groupBaseClass: d }) => {
213
+ return i === "wizard" && r.stepId && await t.goToStep(r.stepId), i === "tabs" && r.tabId && t.setActiveTab(r.tabId), r.sectionId && t.openSection(r.sectionId), await de(e), n(e, r.id);
214
+ }, z = ({ node: e, view: t, snapshot: n, registry: r, primitiveText: i = u, sectionClass: a, sectionCopyClass: o, sectionTitleClass: s, sectionDescriptionClass: c, childrenClass: l, groupBaseClass: d }) => {
90
215
  switch (e.kind) {
91
216
  case "section": {
92
- let s = n.disclosure?.openSectionIds.includes(e.id) ?? !0;
93
- return v`
217
+ let u = n.disclosure?.openSectionIds.includes(e.id) ?? !0;
218
+ return S`
94
219
  <section class=${a} data-section-id=${e.id}>
95
- ${e.title || e.description ? v`
96
- <button
97
- type="button"
98
- class=${o}
99
- aria-expanded=${String(s)}
100
- @click=${() => t?.toggleSection(e.id)}
101
- >
102
- <span class="section-label">
103
- ${e.title ? v`<span class=${c}>${e.title}</span>` : y}
104
- ${e.description ? v`<span class=${l}>${e.description}</span>` : y}
105
- </span>
106
- <span class="section-toggle-icon" aria-hidden="true">${s ? "−" : "+"}</span>
107
- </button>
108
- ` : y}
109
- ${s ? v`
110
- <div class=${u}>
111
- ${C(e.children, (t, n) => `${e.id}-${n}`, (e) => N({
220
+ ${e.title || e.description ? S`
221
+ <button
222
+ type="button"
223
+ class=${o}
224
+ aria-expanded=${String(u)}
225
+ @click=${() => t?.toggleSection(e.id)}
226
+ >
227
+ <span class="section-label">
228
+ ${e.title ? S`<span class=${s}>${e.title}</span>` : C}
229
+ ${e.description ? S`<span class=${c}>${e.description}</span>` : C}
230
+ </span>
231
+ <span class="section-toggle-icon" aria-hidden="true">${u ? "−" : "+"}</span>
232
+ </button>
233
+ ` : C}
234
+ ${u ? S`
235
+ <div class=${l}>
236
+ ${D(e.children, (t, n) => `${e.id}-${n}`, (e) => z({
112
237
  node: e,
113
238
  view: t,
114
239
  snapshot: n,
@@ -116,22 +241,22 @@ var w = { ...l }, T = {
116
241
  primitiveText: i,
117
242
  sectionClass: a,
118
243
  sectionCopyClass: o,
119
- sectionTitleClass: c,
120
- sectionDescriptionClass: l,
121
- childrenClass: u,
244
+ sectionTitleClass: s,
245
+ sectionDescriptionClass: c,
246
+ childrenClass: l,
122
247
  groupBaseClass: d
123
248
  }))}
124
- </div>
125
- ` : y}
249
+ </div>
250
+ ` : C}
126
251
  </section>
127
252
  `;
128
253
  }
129
- case "group": return v`
254
+ case "group": return S`
130
255
  <div
131
256
  class=${`${d}${e.columns ? ` columns-${e.columns}` : ""}`}
132
257
  data-group-id=${e.id}
133
258
  >
134
- ${C(e.children, (t, n) => `${e.id}-${n}`, (e) => N({
259
+ ${D(e.children, (t, n) => `${e.id}-${n}`, (e) => z({
135
260
  node: e,
136
261
  view: t,
137
262
  snapshot: n,
@@ -139,16 +264,16 @@ var w = { ...l }, T = {
139
264
  primitiveText: i,
140
265
  sectionClass: a,
141
266
  sectionCopyClass: o,
142
- sectionTitleClass: c,
143
- sectionDescriptionClass: l,
144
- childrenClass: u,
267
+ sectionTitleClass: s,
268
+ sectionDescriptionClass: c,
269
+ childrenClass: l,
145
270
  groupBaseClass: d
146
271
  }))}
147
272
  </div>
148
273
  `;
149
274
  case "field": {
150
275
  let t = n.fields.find((t) => t.id === e.field);
151
- return t ? v`
276
+ return t ? S`
152
277
  <mlf-field-frame
153
278
  data-field-id=${t.id}
154
279
  .controller=${t.controller}
@@ -156,11 +281,11 @@ var w = { ...l }, T = {
156
281
  .registry=${r}
157
282
  .text=${i}
158
283
  ></mlf-field-frame>
159
- ` : y;
284
+ ` : C;
160
285
  }
161
286
  case "report": {
162
287
  let t = n.reports.find((t) => t.id === e.report);
163
- return t ? v`
288
+ return t ? S`
164
289
  <mlf-report-frame
165
290
  .controller=${t.controller}
166
291
  .descriptor=${t.descriptor}
@@ -168,10 +293,10 @@ var w = { ...l }, T = {
168
293
  .text=${i}
169
294
  .lastResult=${n.form.lastResult}
170
295
  ></mlf-report-frame>
171
- ` : y;
296
+ ` : C;
172
297
  }
173
298
  }
174
- }, se = _`
299
+ }, pe = x`
175
300
  :host {
176
301
  display: block;
177
302
  inline-size: 100%;
@@ -354,8 +479,8 @@ var w = { ...l }, T = {
354
479
  align-items: stretch;
355
480
  }
356
481
  }
357
- `, P = class extends g {
358
- static styles = se;
482
+ `, B = class extends b {
483
+ static styles = pe;
359
484
  #e;
360
485
  get view() {
361
486
  return this.#e;
@@ -370,7 +495,7 @@ var w = { ...l }, T = {
370
495
  set registry(e) {
371
496
  this.#t = e;
372
497
  }
373
- #n = s;
498
+ #n = u;
374
499
  get primitiveText() {
375
500
  return this.#n;
376
501
  }
@@ -416,13 +541,13 @@ var w = { ...l }, T = {
416
541
  }
417
542
  render() {
418
543
  let e = this.snapshot;
419
- if (!e || e.layout.kind !== "stacked" && e.layout.kind !== "split") return v``;
544
+ if (!e || e.layout.kind !== "stacked" && e.layout.kind !== "split") return S``;
420
545
  let t = e.form.status, n = t === "validating" ? this.validatingLabel : t === "submitting" ? this.submittingLabel : this.submitLabel;
421
- return v`
546
+ return S`
422
547
  <section class="root" part="layout-panel">
423
548
  <div class="body">
424
549
  <div class="collection">
425
- ${C(e.layout.children, (e, t) => `root-${t}`, (t) => N({
550
+ ${D(e.layout.children, (e, t) => `root-${t}`, (t) => z({
426
551
  node: t,
427
552
  view: this.view,
428
553
  snapshot: e,
@@ -456,14 +581,14 @@ var w = { ...l }, T = {
456
581
  if (this.view) try {
457
582
  await this.view.submit();
458
583
  } catch (e) {
459
- if (!await M(this, this.view, c)) throw e;
584
+ if (!await R(this, this.view, d)) throw e;
460
585
  }
461
586
  };
462
587
  };
463
- u([x({ attribute: !1 })], P.prototype, "view", null), u([x({ attribute: !1 })], P.prototype, "registry", null), u([x({ attribute: !1 })], P.prototype, "primitiveText", null), u([x({ type: String })], P.prototype, "submitLabel", null), u([x({ type: String })], P.prototype, "validatingLabel", null), u([x({ type: String })], P.prototype, "submittingLabel", null), u([S()], P.prototype, "snapshot", null), P = u([b(j.disclosure)], P);
588
+ p([T({ attribute: !1 })], B.prototype, "view", null), p([T({ attribute: !1 })], B.prototype, "registry", null), p([T({ attribute: !1 })], B.prototype, "primitiveText", null), p([T({ type: String })], B.prototype, "submitLabel", null), p([T({ type: String })], B.prototype, "validatingLabel", null), p([T({ type: String })], B.prototype, "submittingLabel", null), p([E()], B.prototype, "snapshot", null), B = p([w(L.disclosure)], B);
464
589
  //#endregion
465
590
  //#region src/kit/tabs-root-styles.ts
466
- var ce = _`
591
+ var me = x`
467
592
  :host {
468
593
  display: block;
469
594
  flex: 1 1 auto;
@@ -686,8 +811,8 @@ var ce = _`
686
811
  justify-content: space-between;
687
812
  }
688
813
  }
689
- `, F = class extends g {
690
- static styles = ce;
814
+ `, V = class extends b {
815
+ static styles = me;
691
816
  #e;
692
817
  get view() {
693
818
  return this.#e;
@@ -702,7 +827,7 @@ var ce = _`
702
827
  set registry(e) {
703
828
  this.#t = e;
704
829
  }
705
- #n = s;
830
+ #n = u;
706
831
  get primitiveText() {
707
832
  return this.#n;
708
833
  }
@@ -748,14 +873,14 @@ var ce = _`
748
873
  }
749
874
  render() {
750
875
  let e = this.snapshot, t = e?.tabs;
751
- if (!e || !t || e.layout.kind !== "tabs") return v``;
876
+ if (!e || !t || e.layout.kind !== "tabs") return S``;
752
877
  let n = e.layout.tabs[t.activeTabIndex];
753
- if (!n) return v``;
878
+ if (!n) return S``;
754
879
  let r = e.form.status, i = r === "validating" ? this.validatingLabel : r === "submitting" ? this.submittingLabel : this.submitLabel;
755
- return v`
880
+ return S`
756
881
  <section class="root" part="tabs-panel">
757
882
  <div class="tablist" role="tablist" aria-label="Form sections">
758
- ${C(e.layout.tabs, (e) => e.id, (e, n) => v`
883
+ ${D(e.layout.tabs, (e) => e.id, (e, n) => S`
759
884
  <button
760
885
  type="button"
761
886
  class="tab"
@@ -776,16 +901,16 @@ var ce = _`
776
901
  id=${`panel-${n.id}`}
777
902
  aria-labelledby=${`tab-${n.id}`}
778
903
  >
779
- ${n.title || n.description ? v`
780
- <header class="tab-header">
781
- <h1 class="tab-title">${n.title}</h1>
782
- ${n.description ? v`<p class="tab-description">${n.description}</p>` : y}
783
- </header>
784
- ` : y}
904
+ ${n.title || n.description ? S`
905
+ <header class="tab-header">
906
+ <h1 class="tab-title">${n.title}</h1>
907
+ ${n.description ? S`<p class="tab-description">${n.description}</p>` : C}
908
+ </header>
909
+ ` : C}
785
910
 
786
911
  <div class="body">
787
912
  <div class="collection">
788
- ${C(n.children, (e, t) => `${n.id}-${t}`, (t) => N({
913
+ ${D(n.children, (e, t) => `${n.id}-${t}`, (t) => z({
789
914
  node: t,
790
915
  view: this.view,
791
916
  snapshot: e,
@@ -837,15 +962,15 @@ var ce = _`
837
962
  if (this.view) try {
838
963
  await this.view.submit();
839
964
  } catch (e) {
840
- if (!await M(this, this.view, c)) throw e;
965
+ if (!await R(this, this.view, d)) throw e;
841
966
  }
842
967
  };
843
968
  };
844
- u([x({ attribute: !1 })], F.prototype, "view", null), u([x({ attribute: !1 })], F.prototype, "registry", null), u([x({ attribute: !1 })], F.prototype, "primitiveText", null), u([x({ type: String })], F.prototype, "submitLabel", null), u([x({ type: String })], F.prototype, "validatingLabel", null), u([x({ type: String })], F.prototype, "submittingLabel", null), u([S()], F.prototype, "snapshot", null), F = u([b(j.tabs)], F);
969
+ p([T({ attribute: !1 })], V.prototype, "view", null), p([T({ attribute: !1 })], V.prototype, "registry", null), p([T({ attribute: !1 })], V.prototype, "primitiveText", null), p([T({ type: String })], V.prototype, "submitLabel", null), p([T({ type: String })], V.prototype, "validatingLabel", null), p([T({ type: String })], V.prototype, "submittingLabel", null), p([E()], V.prototype, "snapshot", null), V = p([w(L.tabs)], V);
845
970
  //#endregion
846
971
  //#region src/kit/step-indicator.ts
847
- var I = class extends g {
848
- static styles = _`
972
+ var H = class extends b {
973
+ static styles = x`
849
974
  :host {
850
975
  display: block;
851
976
  min-width: 0;
@@ -945,7 +1070,7 @@ var I = class extends g {
945
1070
  }
946
1071
  render() {
947
1072
  let e = this.total > 0 ? Math.round(this.current / this.total * 100) : 0;
948
- return v`
1073
+ return S`
949
1074
  <div
950
1075
  class="indicator"
951
1076
  role="status"
@@ -959,32 +1084,35 @@ var I = class extends g {
959
1084
  <div class="fill" style="width: ${e}%"></div>
960
1085
  </div>
961
1086
  <div class="dots" aria-hidden="true">
962
- ${Array.from({ length: this.total }, (e, t) => v`<div class=${t + 1 < this.current ? "dot done" : t + 1 === this.current ? "dot active" : "dot"}></div>`)}
1087
+ ${Array.from({ length: this.total }, (e, t) => {
1088
+ let n = t + 1 < this.current ? "dot done" : t + 1 === this.current ? "dot active" : "dot";
1089
+ return S`<div class=${n}></div>`;
1090
+ })}
963
1091
  </div>
964
1092
  </div>
965
1093
  `;
966
1094
  }
967
1095
  };
968
- u([x({ type: Number })], I.prototype, "current", null), u([x({ type: Number })], I.prototype, "total", null), u([x({ type: String })], I.prototype, "label", null), I = u([b(j.stepIndicator)], I);
1096
+ p([T({ type: Number })], H.prototype, "current", null), p([T({ type: Number })], H.prototype, "total", null), p([T({ type: String })], H.prototype, "label", null), H = p([w(L.stepIndicator)], H);
969
1097
  //#endregion
970
1098
  //#region src/kit/wizard-constants.ts
971
- var L = {
1099
+ var U = {
972
1100
  prev: "Previous",
973
1101
  next: "Next",
974
1102
  submit: "Submit",
975
1103
  validating: "Validating...",
976
1104
  submitting: "Submitting..."
977
- }, R = Object.freeze({
1105
+ }, W = Object.freeze({
978
1106
  stepLabel: (e, t) => `Step ${e} of ${t}`,
979
1107
  prevLabel: "Previous",
980
1108
  nextLabel: "Next",
981
1109
  submitLabel: "Submit",
982
1110
  validatingLabel: "Validating...",
983
1111
  submittingLabel: "Submitting..."
984
- }), z = (e) => e ? Object.freeze({
985
- ...R,
1112
+ }), G = (e) => e ? Object.freeze({
1113
+ ...W,
986
1114
  ...e
987
- }) : R, le = _`
1115
+ }) : W, he = x`
988
1116
  :host {
989
1117
  display: block;
990
1118
  flex: 1 1 auto;
@@ -1177,8 +1305,8 @@ var L = {
1177
1305
  grid-template-columns: minmax(0, 1fr);
1178
1306
  }
1179
1307
  }
1180
- `, B = class extends g {
1181
- static styles = le;
1308
+ `, K = class extends b {
1309
+ static styles = he;
1182
1310
  #e;
1183
1311
  get view() {
1184
1312
  return this.#e;
@@ -1193,21 +1321,21 @@ var L = {
1193
1321
  set registry(e) {
1194
1322
  this.#t = e;
1195
1323
  }
1196
- #n = s;
1324
+ #n = u;
1197
1325
  get primitiveText() {
1198
1326
  return this.#n;
1199
1327
  }
1200
1328
  set primitiveText(e) {
1201
1329
  this.#n = e;
1202
1330
  }
1203
- #r = L;
1331
+ #r = U;
1204
1332
  get labels() {
1205
1333
  return this.#r;
1206
1334
  }
1207
1335
  set labels(e) {
1208
1336
  this.#r = e;
1209
1337
  }
1210
- #i = z();
1338
+ #i = G();
1211
1339
  get text() {
1212
1340
  return this.#i;
1213
1341
  }
@@ -1232,11 +1360,11 @@ var L = {
1232
1360
  }
1233
1361
  render() {
1234
1362
  let e = this.snapshot, t = e?.wizard;
1235
- if (!e || !t || e.layout.kind !== "wizard") return v``;
1363
+ if (!e || !t || e.layout.kind !== "wizard") return S``;
1236
1364
  let n = e.layout.steps[t.stepIndex];
1237
- if (!n) return v``;
1365
+ if (!n) return S``;
1238
1366
  let r = e.form.status, i = r === "validating" || r === "submitting", a = t.isLastStep ? r === "validating" ? this.labels.validating : r === "submitting" ? this.labels.submitting : this.labels.submit : this.labels.next;
1239
- return v`
1367
+ return S`
1240
1368
  <div class="root">
1241
1369
  <section class="panel" part="wizard-panel">
1242
1370
  <header class="pane-header">
@@ -1246,12 +1374,12 @@ var L = {
1246
1374
  .label=${this.text.stepLabel(t.stepIndex + 1, t.stepCount).split(" ")[0] ?? "Step"}
1247
1375
  ></mlf-kit-step-indicator>
1248
1376
  <h1 class="step-title">${n.title}</h1>
1249
- ${n.description ? v`<p class="step-description">${n.description}</p>` : y}
1377
+ ${n.description ? S`<p class="step-description">${n.description}</p>` : C}
1250
1378
  </header>
1251
1379
 
1252
1380
  <div class="pane-body">
1253
1381
  <div class="collection">
1254
- ${C(n.children, (e, t) => `${n.id}-${t}`, (t) => N({
1382
+ ${D(n.children, (e, t) => `${n.id}-${t}`, (t) => z({
1255
1383
  node: t,
1256
1384
  view: this.view,
1257
1385
  snapshot: e,
@@ -1294,29 +1422,29 @@ var L = {
1294
1422
  this.view?.prevStep();
1295
1423
  };
1296
1424
  #c = async () => {
1297
- await this.view?.nextStep() === !1 && this.view && await M(this, this.view, c);
1425
+ await this.view?.nextStep() === !1 && this.view && await R(this, this.view, d);
1298
1426
  };
1299
1427
  #l = async () => {
1300
1428
  if (this.view) {
1301
1429
  if (!await this.view.nextStep()) {
1302
- await M(this, this.view, c);
1430
+ await R(this, this.view, d);
1303
1431
  return;
1304
1432
  }
1305
1433
  try {
1306
1434
  await this.view.submit();
1307
1435
  } catch (e) {
1308
- if (!await M(this, this.view, c)) throw e;
1436
+ if (!await R(this, this.view, d)) throw e;
1309
1437
  }
1310
1438
  }
1311
1439
  };
1312
1440
  };
1313
- u([x({ attribute: !1 })], B.prototype, "view", null), u([x({ attribute: !1 })], B.prototype, "registry", null), u([x({ attribute: !1 })], B.prototype, "primitiveText", null), u([x({ attribute: !1 })], B.prototype, "labels", null), u([x({ attribute: !1 })], B.prototype, "text", null), u([S()], B.prototype, "snapshot", null), B = u([b(j.wizard)], B);
1441
+ p([T({ attribute: !1 })], K.prototype, "view", null), p([T({ attribute: !1 })], K.prototype, "registry", null), p([T({ attribute: !1 })], K.prototype, "primitiveText", null), p([T({ attribute: !1 })], K.prototype, "labels", null), p([T({ attribute: !1 })], K.prototype, "text", null), p([E()], K.prototype, "snapshot", null), K = p([w(L.wizard)], K);
1314
1442
  //#endregion
1315
1443
  //#region src/kit/layout-helpers.ts
1316
- var ue = (e, t) => ({
1444
+ var ge = (e, t) => ({
1317
1445
  fieldIds: new Set(e.map((e) => e.id)),
1318
1446
  reportIds: new Set(t.map((e) => e.id))
1319
- }), de = () => ({
1447
+ }), _e = () => ({
1320
1448
  fieldStepIds: /* @__PURE__ */ new Map(),
1321
1449
  reportStepIds: /* @__PURE__ */ new Map(),
1322
1450
  fieldTabIds: /* @__PURE__ */ new Map(),
@@ -1325,60 +1453,60 @@ var ue = (e, t) => ({
1325
1453
  reportSectionIds: /* @__PURE__ */ new Map(),
1326
1454
  fieldIdsInLayout: /* @__PURE__ */ new Set(),
1327
1455
  reportIdsInLayout: /* @__PURE__ */ new Set()
1328
- }), V = (e, t, r) => {
1456
+ }), q = (e, t, r) => {
1329
1457
  let i = n(t ?? e) || e, a = r.get(i) ?? 0;
1330
1458
  return r.set(i, a + 1), a === 0 ? i : `${i}-${a + 1}`;
1331
- }, fe = (e, t) => {
1332
- if (!t.fieldIds.has(e)) throw TypeError(A.unknownFieldReference(e));
1333
- }, pe = (e, t) => {
1334
- if (!t.reportIds.has(e)) throw TypeError(A.unknownReportReference(e));
1335
- }, me = (e, t, n, r, i) => {
1336
- if (t.fieldIdsInLayout.has(e)) throw TypeError(A.fieldDuplicateInLayout(e));
1459
+ }, ve = (e, t) => {
1460
+ if (!t.fieldIds.has(e)) throw TypeError(I.unknownFieldReference(e));
1461
+ }, ye = (e, t) => {
1462
+ if (!t.reportIds.has(e)) throw TypeError(I.unknownReportReference(e));
1463
+ }, be = (e, t, n, r, i) => {
1464
+ if (t.fieldIdsInLayout.has(e)) throw TypeError(I.fieldDuplicateInLayout(e));
1337
1465
  t.fieldIdsInLayout.add(e), n && t.fieldStepIds.set(e, n), r && t.fieldTabIds.set(e, r), i && t.fieldSectionIds.set(e, i);
1338
- }, he = (e, t, n, r, i) => {
1339
- if (t.reportIdsInLayout.has(e)) throw TypeError(A.reportDuplicateInLayout(e));
1466
+ }, xe = (e, t, n, r, i) => {
1467
+ if (t.reportIdsInLayout.has(e)) throw TypeError(I.reportDuplicateInLayout(e));
1340
1468
  t.reportIdsInLayout.add(e), n && t.reportStepIds.set(e, n), r && t.reportTabIds.set(e, r), i && t.reportSectionIds.set(e, i);
1341
- }, ge = (e, t) => [...e.map((e) => ({
1469
+ }, Se = (e, t) => [...e.map((e) => ({
1342
1470
  kind: "field",
1343
1471
  field: e.id
1344
1472
  })), ...t.map((e) => ({
1345
1473
  kind: "report",
1346
1474
  report: e.id
1347
- }))], H = (e, t) => {
1348
- for (let n of e) if (!t.fieldIdsInLayout.has(n.id)) throw TypeError(A.fieldMissingInLayout(n.id));
1349
- }, U = (e, t, n, r, i, a, o) => e.map((e) => {
1475
+ }))], J = (e, t) => {
1476
+ for (let n of e) if (!t.fieldIdsInLayout.has(n.id)) throw TypeError(I.fieldMissingInLayout(n.id));
1477
+ }, Y = (e, t, n, r, i, a, o) => e.map((e) => {
1350
1478
  switch (e.kind) {
1351
1479
  case "section": {
1352
- let o = V("section", e.id ?? e.title, r);
1480
+ let o = q("section", e.id ?? e.title, r);
1353
1481
  return {
1354
1482
  kind: "section",
1355
1483
  id: o,
1356
1484
  title: e.title,
1357
1485
  description: e.description,
1358
1486
  defaultOpen: e.defaultOpen ?? !0,
1359
- children: U(e.children, t, n, r, i, a, o)
1487
+ children: Y(e.children, t, n, r, i, a, o)
1360
1488
  };
1361
1489
  }
1362
1490
  case "group": return {
1363
1491
  kind: "group",
1364
- id: V("group", e.id, r),
1492
+ id: q("group", e.id, r),
1365
1493
  columns: e.columns,
1366
- children: U(e.children, t, n, r, i, a, o)
1494
+ children: Y(e.children, t, n, r, i, a, o)
1367
1495
  };
1368
- case "field": return fe(e.field, t), me(e.field, n, i, a, o), {
1496
+ case "field": return ve(e.field, t), be(e.field, n, i, a, o), {
1369
1497
  kind: "field",
1370
1498
  field: e.field
1371
1499
  };
1372
- case "report": return pe(e.report, t), he(e.report, n, i, a, o), {
1500
+ case "report": return ye(e.report, t), xe(e.report, n, i, a, o), {
1373
1501
  kind: "report",
1374
1502
  report: e.report
1375
1503
  };
1376
1504
  }
1377
- }), _e = (e, t, n) => {
1378
- let r = ue(t, n), i = de(), a = /* @__PURE__ */ new Map();
1505
+ }), Ce = (e, t, n) => {
1506
+ let r = ge(t, n), i = _e(), a = /* @__PURE__ */ new Map();
1379
1507
  if (!e || e.kind === void 0 || e.kind === "stacked" || e.kind === "split") {
1380
- let o = U(e?.children ?? ge(t, n), r, i, a, null, null, null);
1381
- return H(t, i), {
1508
+ let o = Y(e?.children ?? Se(t, n), r, i, a, null, null, null);
1509
+ return J(t, i), {
1382
1510
  layout: {
1383
1511
  kind: e?.kind ?? "stacked",
1384
1512
  children: o
@@ -1387,10 +1515,10 @@ var ue = (e, t) => ({
1387
1515
  };
1388
1516
  }
1389
1517
  if (e.kind === "tabs") {
1390
- if (e.tabs.length === 0) throw TypeError(A.tabsRequiresTabs);
1518
+ if (e.tabs.length === 0) throw TypeError(I.tabsRequiresTabs);
1391
1519
  let n = /* @__PURE__ */ new Map(), o = e.tabs.map((e, t) => {
1392
- let o = V("tab", e.id ?? e.title ?? `tab-${t + 1}`, n), s = U(e.children, r, i, a, null, o, null);
1393
- if (s.length === 0) throw TypeError(A.tabEmpty(o));
1520
+ let o = q("tab", e.id ?? e.title ?? `tab-${t + 1}`, n), s = Y(e.children, r, i, a, null, o, null);
1521
+ if (s.length === 0) throw TypeError(I.tabEmpty(o));
1394
1522
  return {
1395
1523
  id: o,
1396
1524
  title: e.title,
@@ -1398,7 +1526,7 @@ var ue = (e, t) => ({
1398
1526
  children: s
1399
1527
  };
1400
1528
  });
1401
- return H(t, i), {
1529
+ return J(t, i), {
1402
1530
  layout: {
1403
1531
  kind: "tabs",
1404
1532
  tabs: o
@@ -1407,10 +1535,10 @@ var ue = (e, t) => ({
1407
1535
  };
1408
1536
  }
1409
1537
  let o = e;
1410
- if (o.steps.length === 0) throw TypeError(A.wizardRequiresSteps);
1538
+ if (o.steps.length === 0) throw TypeError(I.wizardRequiresSteps);
1411
1539
  let s = /* @__PURE__ */ new Map(), c = o.steps.map((e, t) => {
1412
- let n = V("step", e.id ?? e.title ?? `step-${t + 1}`, s), o = U(e.children, r, i, a, n, null, null);
1413
- if (o.length === 0) throw TypeError(A.wizardStepEmpty(n));
1540
+ let n = q("step", e.id ?? e.title ?? `step-${t + 1}`, s), o = Y(e.children, r, i, a, n, null, null);
1541
+ if (o.length === 0) throw TypeError(I.wizardStepEmpty(n));
1414
1542
  return {
1415
1543
  id: n,
1416
1544
  title: e.title,
@@ -1418,14 +1546,30 @@ var ue = (e, t) => ({
1418
1546
  children: o
1419
1547
  };
1420
1548
  });
1421
- return H(t, i), {
1549
+ return J(t, i), {
1422
1550
  layout: {
1423
1551
  kind: "wizard",
1424
1552
  steps: c
1425
1553
  },
1426
1554
  maps: i
1427
1555
  };
1428
- }, W = (e, t, n) => {
1556
+ }, we = (e, t) => {
1557
+ for (let n of t.fields ?? []) n.register(e.registry, e.descriptorRegistry);
1558
+ for (let n of t.reports ?? []) n.register(e.registry, e.descriptorRegistry);
1559
+ e.behaviors.push(...t.behaviors ?? []);
1560
+ }, Te = () => ({
1561
+ registry: s(),
1562
+ descriptorRegistry: ce(),
1563
+ behaviors: [o()]
1564
+ }), Ee = (e) => {
1565
+ let t = Te(), n = {
1566
+ registry: e.registry ? te(e.registry) : t.registry,
1567
+ descriptorRegistry: e.descriptorRegistry?.clone() ?? t.descriptorRegistry,
1568
+ behaviors: e.behaviors ? [...e.behaviors] : t.behaviors
1569
+ };
1570
+ for (let t of e.plugins ?? []) we(n, t);
1571
+ return n;
1572
+ }, De = (e, t, n) => {
1429
1573
  if (n.length === 0) return null;
1430
1574
  let r = Math.min(Math.max(t, 0), n.length - 1);
1431
1575
  return {
@@ -1436,8 +1580,8 @@ var ue = (e, t) => ({
1436
1580
  canGoNext: r < n.length - 1,
1437
1581
  canGoPrev: r > 0
1438
1582
  };
1439
- }, G = ({ layout: e, stepIndex: t, formState: n }) => {
1440
- let r = W("wizard-step", t, (e.kind === "wizard" ? e.steps : []).map((e) => e.id));
1583
+ }, Oe = ({ layout: e, stepIndex: t, formState: n }) => {
1584
+ let r = De("wizard-step", t, (e.kind === "wizard" ? e.steps : []).map((e) => e.id));
1441
1585
  return r ? {
1442
1586
  stepIndex: r.index,
1443
1587
  stepCount: r.count,
@@ -1446,8 +1590,8 @@ var ue = (e, t) => ({
1446
1590
  canPrev: r.canGoPrev,
1447
1591
  isLastStep: r.index === r.count - 1
1448
1592
  } : null;
1449
- }, K = ({ layout: e, activeTabIndex: t }) => {
1450
- let n = W("tab", t, (e.kind === "tabs" ? e.tabs : []).map((e) => e.id));
1593
+ }, ke = ({ layout: e, activeTabIndex: t }) => {
1594
+ let n = De("tab", t, (e.kind === "tabs" ? e.tabs : []).map((e) => e.id));
1451
1595
  return n ? {
1452
1596
  activeTabIndex: n.index,
1453
1597
  tabCount: n.count,
@@ -1455,27 +1599,27 @@ var ue = (e, t) => ({
1455
1599
  canGoNext: n.canGoNext,
1456
1600
  canGoPrev: n.canGoPrev
1457
1601
  } : null;
1458
- }, q = (e, t = []) => {
1602
+ }, X = (e, t = []) => {
1459
1603
  for (let n of e) n.kind === "section" ? (t.push({
1460
1604
  id: n.id,
1461
1605
  defaultOpen: n.defaultOpen
1462
- }), q(n.children, t)) : n.kind === "group" && q(n.children, t);
1606
+ }), X(n.children, t)) : n.kind === "group" && X(n.children, t);
1463
1607
  return t;
1464
- }, J = ({ layout: e, openSectionIds: t }) => {
1465
- let n = e.kind === "wizard" ? e.steps.flatMap((e) => q(e.children)) : e.kind === "tabs" ? e.tabs.flatMap((e) => q(e.children)) : q(e.children);
1608
+ }, Ae = ({ layout: e, openSectionIds: t }) => {
1609
+ let n = e.kind === "wizard" ? e.steps.flatMap((e) => X(e.children)) : e.kind === "tabs" ? e.tabs.flatMap((e) => X(e.children)) : X(e.children);
1466
1610
  return n.length === 0 ? null : {
1467
1611
  openSectionIds: n.map((e) => e.id).filter((e) => t.has(e)),
1468
1612
  sectionCount: n.length
1469
1613
  };
1470
- }, ve = (e) => ({
1614
+ }, je = (e) => ({
1471
1615
  form: e.formState,
1472
- wizard: G(e),
1473
- tabs: K(e),
1474
- disclosure: J(e)
1475
- }), Y = (e, t, n, r, i, a, o) => e.kind === "wizard" ? i === (e.steps[t]?.id ?? null) && (!o || r.has(o)) : e.kind === "tabs" ? a === (e.tabs[n]?.id ?? null) && (!o || r.has(o)) : !o || r.has(o), ye = (e) => ({
1616
+ wizard: Oe(e),
1617
+ tabs: ke(e),
1618
+ disclosure: Ae(e)
1619
+ }), Me = (e, t, n, r, i, a, o) => e.kind === "wizard" ? i === (e.steps[t]?.id ?? null) && (!o || r.has(o)) : e.kind === "tabs" ? a === (e.tabs[n]?.id ?? null) && (!o || r.has(o)) : !o || r.has(o), Ne = (e) => ({
1476
1620
  component: "unsupported-field",
1477
1621
  props: { label: e.config.label ?? e.id }
1478
- }), be = (e, t, n, r, i, a) => {
1622
+ }), Pe = (e, t, n, r, i, a) => {
1479
1623
  let o = n.maps.fieldStepIds.get(e.id) ?? null, s = n.maps.fieldTabIds.get(e.id) ?? null, c = n.maps.fieldSectionIds.get(e.id) ?? null, l = t.getField(e.kind);
1480
1624
  return {
1481
1625
  id: e.id,
@@ -1487,13 +1631,13 @@ var ue = (e, t) => ({
1487
1631
  fieldId: e.id,
1488
1632
  state: e.state,
1489
1633
  value: e.state.value
1490
- }) ?? ye(e),
1634
+ }) ?? Ne(e),
1491
1635
  stepId: o,
1492
1636
  tabId: s,
1493
1637
  sectionId: c,
1494
- visibleInLayout: Y(n.layout, r, i, a, o, s, c)
1638
+ visibleInLayout: Me(n.layout, r, i, a, o, s, c)
1495
1639
  };
1496
- }, xe = (e, t, n, r, i, a, o) => {
1640
+ }, Fe = (e, t, n, r, i, a, o) => {
1497
1641
  let s = r.maps.reportStepIds.get(e.id) ?? null, c = r.maps.reportTabIds.get(e.id) ?? null, l = r.maps.reportSectionIds.get(e.id) ?? null, u = n.getReport(e.kind);
1498
1642
  return {
1499
1643
  id: e.id,
@@ -1510,45 +1654,45 @@ var ue = (e, t) => ({
1510
1654
  stepId: s,
1511
1655
  tabId: c,
1512
1656
  sectionId: l,
1513
- visibleInLayout: Y(r.layout, i, a, o, s, c, l)
1657
+ visibleInLayout: Me(r.layout, i, a, o, s, c, l)
1514
1658
  };
1515
- }, Se = ({ form: e, descriptorRegistry: t, resolvedLayout: n, stepIndex: r, activeTabIndex: i, openSectionIds: a }) => ({
1659
+ }, Ie = ({ form: e, descriptorRegistry: t, resolvedLayout: n, stepIndex: r, activeTabIndex: i, openSectionIds: a }) => ({
1516
1660
  form: e.state,
1517
1661
  layout: n.layout,
1518
- fields: e.fields.map((e) => be(e, t, n, r, i, a)),
1519
- reports: e.reports.map((o) => xe(o, e, t, n, r, i, a)),
1520
- wizard: G({
1662
+ fields: e.fields.map((e) => Pe(e, t, n, r, i, a)),
1663
+ reports: e.reports.map((o) => Fe(o, e, t, n, r, i, a)),
1664
+ wizard: Oe({
1521
1665
  layout: n.layout,
1522
1666
  stepIndex: r,
1523
1667
  activeTabIndex: i,
1524
1668
  openSectionIds: a,
1525
1669
  formState: e.state
1526
1670
  }),
1527
- tabs: K({
1671
+ tabs: ke({
1528
1672
  layout: n.layout,
1529
1673
  stepIndex: r,
1530
1674
  activeTabIndex: i,
1531
1675
  openSectionIds: a,
1532
1676
  formState: e.state
1533
1677
  }),
1534
- disclosure: J({
1678
+ disclosure: Ae({
1535
1679
  layout: n.layout,
1536
1680
  stepIndex: r,
1537
1681
  activeTabIndex: i,
1538
1682
  openSectionIds: a,
1539
1683
  formState: e.state
1540
1684
  })
1541
- }), Ce = (e, t, n, r, i) => ve({
1685
+ }), Le = (e, t, n, r, i) => je({
1542
1686
  formState: e.state,
1543
1687
  layout: t,
1544
1688
  stepIndex: n,
1545
1689
  activeTabIndex: r,
1546
1690
  openSectionIds: i
1547
- }), we = ({ form: e, descriptorRegistry: t, resolvedLayout: n, getStepIndex: r, getActiveTabIndex: i, getOpenSectionIds: a }) => {
1691
+ }), Re = ({ form: e, descriptorRegistry: t, resolvedLayout: n, getStepIndex: r, getActiveTabIndex: i, getOpenSectionIds: a }) => {
1548
1692
  let o = e.state, s = -1, c = -1, l = "", u = null;
1549
1693
  return () => {
1550
1694
  let d = r(), f = i(), p = a(), m = e.state, h = Array.from(p).sort().join("|");
1551
- return u && o === m && s === d && c === f && l === h ? u : (o = m, s = d, c = f, l = h, u = Se({
1695
+ return u && o === m && s === d && c === f && l === h ? u : (o = m, s = d, c = f, l = h, u = Ie({
1552
1696
  form: e,
1553
1697
  descriptorRegistry: t,
1554
1698
  resolvedLayout: n,
@@ -1557,26 +1701,26 @@ var ue = (e, t) => ({
1557
1701
  openSectionIds: p
1558
1702
  }), u);
1559
1703
  };
1560
- }, X = (e, t) => e.flatMap((e) => e.kind === "section" ? t.has(e.id) ? [e] : [] : [e]), Te = async (e, t, n) => {
1704
+ }, Z = (e, t) => e.flatMap((e) => e.kind === "section" ? t.has(e.id) ? [e] : [] : [e]), ze = async (e, t, n) => {
1561
1705
  if (t.layout.kind !== "wizard") return !1;
1562
1706
  let r = t.layout.steps[n]?.id;
1563
1707
  if (!r) return !1;
1564
1708
  let i = e.fields.filter((e) => t.maps.fieldStepIds.get(e.id) === r && e.state.visible);
1565
1709
  return (await Promise.all(i.map((e) => e.validate()))).every((e) => e.errors.length === 0);
1566
- }, Ee = (e, t, n, r) => {
1710
+ }, Be = (e, t, n, r) => {
1567
1711
  switch (e.layout.kind) {
1568
1712
  case "stacked":
1569
- case "split": return X(e.layout.children, r);
1570
- case "wizard": return X(e.layout.steps[t]?.children ?? [], r);
1571
- case "tabs": return X(e.layout.tabs[n]?.children ?? [], r);
1572
- }
1573
- }, Z = (e, t) => {
1574
- if (!e.some((e) => e.id === t)) throw TypeError(A.unknownDisclosureSection(t));
1575
- }, Q = (n) => {
1576
- let r = !n.registry || !n.descriptorRegistry || !n.behaviors ? i() : null, a = n.registry ? ee(n.registry) : r.registry, o = n.descriptorRegistry?.clone() ?? r.descriptorRegistry, s = t({
1713
+ case "split": return Z(e.layout.children, r);
1714
+ case "wizard": return Z(e.layout.steps[t]?.children ?? [], r);
1715
+ case "tabs": return Z(e.layout.tabs[n]?.children ?? [], r);
1716
+ }
1717
+ }, Q = (e, t) => {
1718
+ if (!e.some((e) => e.id === t)) throw TypeError(I.unknownDisclosureSection(t));
1719
+ }, Ve = (n) => {
1720
+ let r = Ee(n), i = r.registry, a = r.descriptorRegistry, o = t({
1577
1721
  schema: n.schema,
1578
- registry: a,
1579
- behaviors: n.behaviors ?? r?.behaviors,
1722
+ registry: i,
1723
+ behaviors: r.behaviors,
1580
1724
  transport: n.transport,
1581
1725
  initialValues: n.initialValues,
1582
1726
  validators: n.validators,
@@ -1585,128 +1729,129 @@ var ue = (e, t) => ({
1585
1729
  inactiveFieldPolicy: n.inactiveFieldPolicy,
1586
1730
  listenerErrorPolicy: n.listenerErrorPolicy,
1587
1731
  onListenerError: n.onListenerError
1588
- }), c = n.reportFetchMode ?? "lazy", l = _e(n.layout, s.fields, s.reports), u = 0, d = 0, f = l.layout.kind === "wizard" ? l.layout.steps.flatMap((e) => q(e.children)) : l.layout.kind === "tabs" ? l.layout.tabs.flatMap((e) => q(e.children)) : q(l.layout.children), p = new Set(f.filter((e) => e.defaultOpen).map((e) => e.id)), m = /* @__PURE__ */ new Set(), h = l.layout.kind === "wizard" ? l.layout.steps : [], g = l.layout.kind === "tabs" ? l.layout.tabs : [], _ = k(l.layout), v = /* @__PURE__ */ new Map();
1589
- for (let e of O(l.layout)) "id" in e && v.set(e.id, e);
1590
- let y = () => Ce(s, l.layout, u, d, p), b = we({
1591
- form: s,
1592
- descriptorRegistry: o,
1593
- resolvedLayout: l,
1594
- getStepIndex: () => u,
1595
- getActiveTabIndex: () => d,
1596
- getOpenSectionIds: () => p
1597
- }), x = () => {
1598
- let e = b();
1599
- for (let t of m) t(e);
1732
+ }), s = n.reportFetchMode ?? "lazy", c = Ce(n.layout, o.fields, o.reports), l = 0, u = 0, d = c.layout.kind === "wizard" ? c.layout.steps.flatMap((e) => X(e.children)) : c.layout.kind === "tabs" ? c.layout.tabs.flatMap((e) => X(e.children)) : X(c.layout.children), f = new Set(d.filter((e) => e.defaultOpen).map((e) => e.id)), p = /* @__PURE__ */ new Set(), m = c.layout.kind === "wizard" ? c.layout.steps : [], h = c.layout.kind === "tabs" ? c.layout.tabs : [], g = ue(c.layout), _ = /* @__PURE__ */ new Map();
1733
+ for (let e of F(c.layout)) "id" in e && _.set(e.id, e);
1734
+ let v = () => Le(o, c.layout, l, u, f), y = Re({
1735
+ form: o,
1736
+ descriptorRegistry: a,
1737
+ resolvedLayout: c,
1738
+ getStepIndex: () => l,
1739
+ getActiveTabIndex: () => u,
1740
+ getOpenSectionIds: () => f
1741
+ }), b = () => {
1742
+ let e = y();
1743
+ for (let t of p) t(e);
1600
1744
  };
1601
- return s.subscribe(() => {
1602
- x();
1745
+ return o.subscribe(() => {
1746
+ b();
1603
1747
  }), Object.freeze({
1604
- form: s,
1605
- engineRegistry: a,
1606
- descriptorRegistry: o,
1748
+ form: o,
1749
+ engineRegistry: i,
1750
+ descriptorRegistry: a,
1607
1751
  get state() {
1608
- return y();
1752
+ return v();
1609
1753
  },
1610
- getSnapshot: b,
1754
+ getSnapshot: y,
1611
1755
  getNodeById(e) {
1612
- return v.get(e);
1756
+ return _.get(e);
1613
1757
  },
1614
1758
  getField(e) {
1615
- return b().fields.find((t) => t.id === e);
1759
+ return y().fields.find((t) => t.id === e);
1616
1760
  },
1617
1761
  getReport(e) {
1618
- return b().reports.find((t) => t.id === e);
1762
+ return y().reports.find((t) => t.id === e);
1619
1763
  },
1620
1764
  getVisibleFields() {
1621
- return b().fields.filter((e) => e.visibleInLayout && e.state.visible);
1765
+ return y().fields.filter((e) => e.visibleInLayout && e.state.visible);
1622
1766
  },
1623
1767
  getVisibleReports() {
1624
- return b().reports.filter((e) => e.visibleInLayout);
1768
+ return y().reports.filter((e) => e.visibleInLayout);
1625
1769
  },
1626
1770
  getActiveLayoutNodes() {
1627
- return Ee(l, u, d, p);
1771
+ return Be(c, l, u, f);
1628
1772
  },
1629
1773
  getLayoutReferences() {
1630
- return _;
1774
+ return g;
1631
1775
  },
1632
1776
  validate() {
1633
- return s.validate();
1777
+ return o.validate();
1634
1778
  },
1635
1779
  async submit(t) {
1636
- return c === "lazy" ? s.submit(t) : (await e({
1637
- form: s,
1780
+ return s === "lazy" ? o.submit(t) : (await e({
1781
+ form: o,
1638
1782
  submit: t,
1639
- reportFetchMode: c
1783
+ reportFetchMode: s
1640
1784
  })).submitResult;
1641
1785
  },
1642
1786
  submitPipeline(t) {
1643
1787
  return e({
1644
- form: s,
1788
+ form: o,
1645
1789
  submit: t,
1646
- reportFetchMode: c === "lazy" ? "none" : c
1790
+ reportFetchMode: s === "lazy" ? "none" : s
1647
1791
  });
1648
1792
  },
1649
1793
  reset() {
1650
- s.reset();
1794
+ o.reset();
1651
1795
  },
1652
1796
  subscribe(e) {
1653
- return m.add(e), () => {
1654
- m.delete(e);
1797
+ return p.add(e), () => {
1798
+ p.delete(e);
1655
1799
  };
1656
1800
  },
1657
1801
  async nextStep() {
1658
- return l.layout.kind !== "wizard" || !await Te(s, l, u) ? !1 : (u < h.length - 1 && (u += 1, x()), !0);
1802
+ return c.layout.kind !== "wizard" || !await ze(o, c, l) ? !1 : (l < m.length - 1 && (l += 1, b()), !0);
1659
1803
  },
1660
1804
  prevStep() {
1661
- l.layout.kind === "wizard" && u > 0 && (--u, x());
1805
+ c.layout.kind === "wizard" && l > 0 && (--l, b());
1662
1806
  },
1663
1807
  async goToStep(e) {
1664
- if (l.layout.kind !== "wizard") throw TypeError(A.nonWizardGoToStep);
1665
- let t = h.findIndex((t) => t.id === e);
1666
- if (t < 0) throw TypeError(A.unknownWizardStep(e));
1667
- if (t <= u) return u = t, x(), !0;
1668
- for (; u < t;) if (!await this.nextStep()) return !1;
1808
+ if (c.layout.kind !== "wizard") throw TypeError(I.nonWizardGoToStep);
1809
+ let t = m.findIndex((t) => t.id === e);
1810
+ if (t < 0) throw TypeError(I.unknownWizardStep(e));
1811
+ if (t <= l) return l = t, b(), !0;
1812
+ for (; l < t;) if (!await this.nextStep()) return !1;
1669
1813
  return !0;
1670
1814
  },
1671
1815
  setActiveTab(e) {
1672
- if (l.layout.kind !== "tabs") throw TypeError(A.nonTabsSetActiveTab);
1673
- let t = g.findIndex((t) => t.id === e);
1674
- if (t < 0) throw TypeError(A.unknownTab(e));
1675
- t !== d && (d = t, x());
1816
+ if (c.layout.kind !== "tabs") throw TypeError(I.nonTabsSetActiveTab);
1817
+ let t = h.findIndex((t) => t.id === e);
1818
+ if (t < 0) throw TypeError(I.unknownTab(e));
1819
+ t !== u && (u = t, b());
1676
1820
  },
1677
1821
  nextTab() {
1678
- return l.layout.kind !== "tabs" || d >= g.length - 1 ? !1 : (d += 1, x(), !0);
1822
+ return c.layout.kind !== "tabs" || u >= h.length - 1 ? !1 : (u += 1, b(), !0);
1679
1823
  },
1680
1824
  prevTab() {
1681
- return l.layout.kind !== "tabs" || d <= 0 ? !1 : (--d, x(), !0);
1825
+ return c.layout.kind !== "tabs" || u <= 0 ? !1 : (--u, b(), !0);
1682
1826
  },
1683
1827
  toggleSection(e) {
1684
- Z(f, e), p.has(e) ? p.delete(e) : p.add(e), x();
1828
+ Q(d, e), f.has(e) ? f.delete(e) : f.add(e), b();
1685
1829
  },
1686
1830
  openSection(e) {
1687
- Z(f, e), p.has(e) || (p.add(e), x());
1831
+ Q(d, e), f.has(e) || (f.add(e), b());
1688
1832
  },
1689
1833
  closeSection(e) {
1690
- Z(f, e), p.delete(e) && x();
1834
+ Q(d, e), f.delete(e) && b();
1691
1835
  },
1692
1836
  openAllSections() {
1693
- p = new Set(f.map((e) => e.id)), x();
1837
+ f = new Set(d.map((e) => e.id)), b();
1694
1838
  },
1695
1839
  closeAllSections() {
1696
- p = /* @__PURE__ */ new Set(), x();
1840
+ f = /* @__PURE__ */ new Set(), b();
1697
1841
  }
1698
1842
  });
1699
- }, $ = Symbol("mlform.kit.mounted"), De = (e) => {
1700
- if (!e.mode || !e.theme || !e.recipe) throw TypeError(A.invalidDesignSystemSnapshot);
1701
- }, Oe = (e) => {
1843
+ }, $ = Symbol("mlform.kit.mounted"), He = (e) => {
1844
+ if (!e.mode || !e.theme || !e.recipe) throw TypeError(I.invalidDesignSystemSnapshot);
1845
+ }, Ue = (e) => {
1702
1846
  let t = e.layout;
1703
1847
  return !!(t && "children" in t && t.children && t.children.length > 0);
1704
- }, ke = (e) => Q({
1848
+ }, We = (e) => Ve({
1705
1849
  schema: e.schema,
1706
1850
  transport: e.transport,
1707
1851
  registry: e.registry,
1708
1852
  descriptorRegistry: e.descriptorRegistry,
1709
1853
  behaviors: e.behaviors,
1854
+ plugins: e.plugins,
1710
1855
  initialValues: e.initialValues,
1711
1856
  validators: e.validators,
1712
1857
  hooks: e.hooks,
@@ -1716,11 +1861,11 @@ var ue = (e, t) => ({
1716
1861
  onListenerError: e.onListenerError,
1717
1862
  layout: e.layout,
1718
1863
  reportFetchMode: e.reportFetchMode
1719
- }), Ae = (e, t) => {
1864
+ }), Ge = (e, t) => {
1720
1865
  let n = e;
1721
1866
  n[$]?.unmount();
1722
- let r = te(t.primitiveRegistry), i = ne(t.designSystemRegistry), a = re(t.labels), o = ie(t.designSystem), s = !t.layout || (t.layout.kind === void 0 || t.layout.kind === "stacked" || t.layout.kind === "split") && !Oe(t), c = ke(t), l = () => {}, u = s ? (() => {
1723
- let n = f(e, c.form, {
1867
+ let r = ne(t.primitiveRegistry), i = re(t.designSystemRegistry), a = ie(t.labels), o = ae(t.designSystem), s = !t.layout || (t.layout.kind === void 0 || t.layout.kind === "stacked" || t.layout.kind === "split") && !Ue(t), c = We(t), l = () => {}, u = s ? (() => {
1868
+ let n = g(e, c.form, {
1724
1869
  registry: r,
1725
1870
  descriptorRegistry: c.descriptorRegistry,
1726
1871
  layout: t.layout?.kind === "split" ? "split" : "stacked",
@@ -1744,13 +1889,13 @@ var ue = (e, t) => ({
1744
1889
  });
1745
1890
  return l = () => n.unmount(), n.host;
1746
1891
  })() : (() => {
1747
- let n = Me(e, t, r, a, c);
1892
+ let n = qe(e, t, r, a, c);
1748
1893
  return l = () => n.remove(), n;
1749
- })(), d = h(u, {
1894
+ })(), d = y(u, {
1750
1895
  config: o,
1751
1896
  registry: i,
1752
1897
  onChange: t.onDesignSystemChange
1753
- }), p = !1, m = Object.freeze({
1898
+ }), f = !1, p = Object.freeze({
1754
1899
  form: c.form,
1755
1900
  host: u,
1756
1901
  engineRegistry: c.engineRegistry,
@@ -1762,35 +1907,35 @@ var ue = (e, t) => ({
1762
1907
  d.update(e);
1763
1908
  },
1764
1909
  replaceDesignSystem(e) {
1765
- De(e), d.replace(e);
1910
+ He(e), d.replace(e);
1766
1911
  },
1767
1912
  resetDesignSystem() {
1768
1913
  d.reset();
1769
1914
  },
1770
1915
  unmount() {
1771
- p || (p = !0, n[$] === m && delete n[$], c.form.abortSubmit("unmount"), d.disconnect(), l());
1916
+ f || (f = !0, n[$] === p && delete n[$], c.form.abortSubmit("unmount"), d.disconnect(), l());
1772
1917
  }
1773
1918
  });
1774
- return n[$] = m, m;
1775
- }, je = (e) => {
1919
+ return n[$] = p, p;
1920
+ }, Ke = (e) => {
1776
1921
  e.unmount();
1777
- }, Me = (e, t, n, r, i) => {
1778
- let o = i.getSnapshot(), s = o.layout.kind === "wizard" ? j.wizard : o.layout.kind === "tabs" ? j.tabs : j.disclosure, c = document.createElement(s);
1779
- if (c.view = i, c.registry = n, c.primitiveText = a(t.primitiveText), o.layout.kind === "wizard") {
1922
+ }, qe = (e, t, n, r, i) => {
1923
+ let a = i.getSnapshot(), o = a.layout.kind === "wizard" ? L.wizard : a.layout.kind === "tabs" ? L.tabs : L.disclosure, s = document.createElement(o);
1924
+ if (s.view = i, s.registry = n, s.primitiveText = c(t.primitiveText), a.layout.kind === "wizard") {
1780
1925
  let e = {
1781
- ...L,
1926
+ ...U,
1782
1927
  ...t.labels
1783
1928
  };
1784
- c.labels = e, c.text = z({
1929
+ s.labels = e, s.text = G({
1785
1930
  prevLabel: e.prev,
1786
1931
  nextLabel: e.next,
1787
1932
  submitLabel: e.submit,
1788
1933
  validatingLabel: e.validating,
1789
1934
  submittingLabel: e.submitting
1790
1935
  });
1791
- } else c.submitLabel = r.submit, c.validatingLabel = r.validating, c.submittingLabel = r.submitting;
1792
- return e.replaceChildren(c), c;
1793
- }, Ne = (e, t) => e ? typeof e == "function" ? e(t) ?? {} : e : {}, Pe = (e) => {
1936
+ } else s.submitLabel = r.submit, s.validatingLabel = r.validating, s.submittingLabel = r.submitting;
1937
+ return e.replaceChildren(s), s;
1938
+ }, Je = (e, t) => e ? typeof e == "function" ? e(t) ?? {} : e : {}, Ye = (e) => {
1794
1939
  let t = e.validate, n = {
1795
1940
  kind: e.kind,
1796
1941
  schema: e.schema,
@@ -1807,7 +1952,7 @@ var ue = (e, t) => ({
1807
1952
  }, r = {
1808
1953
  kind: e.kind,
1809
1954
  describe(t, n) {
1810
- let r = Ne(e.render.hints, {
1955
+ let r = Je(e.render.hints, {
1811
1956
  config: t,
1812
1957
  fieldId: t.id,
1813
1958
  state: n.state,
@@ -1838,6 +1983,7 @@ var ue = (e, t) => ({
1838
1983
  }
1839
1984
  }, i = r.describe.bind(r);
1840
1985
  return Object.assign(n, { describe: i }), {
1986
+ category: "field",
1841
1987
  kind: e.kind,
1842
1988
  schema: e.schema,
1843
1989
  getDefaultValue: e.value?.default,
@@ -1848,9 +1994,12 @@ var ue = (e, t) => ({
1848
1994
  validate: n.validate,
1849
1995
  describe: i,
1850
1996
  definition: n,
1851
- presenter: r
1997
+ presenter: r,
1998
+ register(e, t) {
1999
+ e.registerField(n), t.registerField(r);
2000
+ }
1852
2001
  };
1853
- }, Fe = (e) => {
2002
+ }, Xe = (e) => {
1854
2003
  let t = {
1855
2004
  kind: e.kind,
1856
2005
  schema: e.schema,
@@ -1886,7 +2035,7 @@ var ue = (e, t) => ({
1886
2035
  error: n.state.error,
1887
2036
  state: n.state.status,
1888
2037
  summary: e.render.summary?.(r) ?? null,
1889
- content: !i && n.payload !== void 0 && e.render.content ? o(e.render.content(r)) : [],
2038
+ content: !i && n.payload !== void 0 && e.render.content ? l(e.render.content(r)) : [],
1890
2039
  mount: i ? e.render.mount : null,
1891
2040
  mountContext: i ? r : null,
1892
2041
  ...t.ui
@@ -1896,6 +2045,7 @@ var ue = (e, t) => ({
1896
2045
  }
1897
2046
  }, r = n.describe.bind(n);
1898
2047
  return Object.assign(t, { describe: r }), {
2048
+ category: "report",
1899
2049
  kind: e.kind,
1900
2050
  schema: e.schema,
1901
2051
  payloadSchema: e.payloadSchema,
@@ -1905,12 +2055,22 @@ var ue = (e, t) => ({
1905
2055
  resolvePayload: t.resolvePayload,
1906
2056
  describe: r,
1907
2057
  definition: t,
1908
- presenter: n
2058
+ presenter: n,
2059
+ register(e, r) {
2060
+ e.registerReport(t), r.registerReport(n);
2061
+ }
1909
2062
  };
1910
- }, Ie = (e, t, n) => {
1911
- e.registerField(n.definition), t.registerField(n.presenter);
1912
- }, Le = (e, t, n) => {
1913
- e.registerReport(n.definition), t.registerReport(n.presenter);
2063
+ }, Ze = (e, t, n) => {
2064
+ n.register(e, t);
2065
+ }, Qe = (e, t, n) => {
2066
+ n.register(e, t);
2067
+ }, $e = (e) => {
2068
+ let t = [...e.fields ?? []], n = [...e.reports ?? []], r = [...e.behaviors ?? []];
2069
+ return Object.freeze({
2070
+ fields: Object.freeze(t),
2071
+ reports: Object.freeze(n),
2072
+ behaviors: Object.freeze(r)
2073
+ });
1914
2074
  };
1915
2075
  //#endregion
1916
- export { k as collectLayoutReferences, Q as createFormView, T as defaultKitDesignSystem, w as defaultKitLabels, Pe as defineFieldKind, Fe as defineReportKind, O as flattenLayoutNodes, Ae as mountForm, Ie as registerDefinedFieldKind, Le as registerDefinedReportKind, je as unmountForm, D as walkLayoutNodes };
2076
+ export { ue as collectLayoutReferences, ce as createBuiltinDescriptorRegistry, Ve as createFormView, O as defaultKitDesignSystem, ee as defaultKitLabels, Ye as defineFieldKind, $e as defineMlformPlugin, Xe as defineReportKind, F as flattenLayoutNodes, Ge as mountForm, Ze as registerDefinedFieldKind, Qe as registerDefinedReportKind, Ke as unmountForm, le as walkLayoutNodes };