mlform 0.1.7 → 0.1.9

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 (363) hide show
  1. package/README.md +42 -13
  2. package/dist/builtins-ml-pjab8_gu.js +3878 -0
  3. package/dist/{design-system-CrrSGfFB.js → design-system-CIU_vH6O.js} +612 -415
  4. package/dist/errors-CTNw8fwS.js +8 -0
  5. package/dist/kit-QY6zff-h.js +1888 -0
  6. package/dist/mlform/behaviors.mjs +32 -0
  7. package/dist/mlform/builtins-ml.mjs +2 -0
  8. package/dist/mlform/design-system.mjs +2 -2
  9. package/dist/mlform/kit.mjs +3 -3
  10. package/dist/mlform/presentation.mjs +2 -0
  11. package/dist/mlform/primitives.mjs +2 -2
  12. package/dist/mlform/runtime.mjs +4 -0
  13. package/dist/mlform/schema.mjs +102 -0
  14. package/dist/mlform/transport.mjs +2 -2
  15. package/dist/mlform.mjs +8 -4
  16. package/dist/presentation-BrlVO4oV.js +200 -0
  17. package/dist/{primitives-BqjFDDhL.js → primitives-Di95y_ur.js} +1653 -1561
  18. package/dist/runtime-C5iTM3uu.js +1839 -0
  19. package/dist/strings-CWwrrYzz.js +4 -0
  20. package/dist/{transport-A1RsnZhD.js → transport-B6ePTLFK.js} +345 -372
  21. package/dist/types/behaviors/index.d.ts +3 -0
  22. package/dist/types/builtins-ml/definitions/fields/boolean.d.ts +9 -0
  23. package/dist/types/builtins-ml/definitions/fields/category.d.ts +12 -0
  24. package/dist/types/builtins-ml/definitions/fields/date.d.ts +10 -0
  25. package/dist/types/builtins-ml/definitions/fields/long-text.d.ts +11 -0
  26. package/dist/types/{src/engine/builtins → builtins-ml/definitions}/fields/mapped-category.d.ts +3 -2
  27. package/dist/types/{src/engine/builtins → builtins-ml/definitions}/fields/multi-choice.d.ts +3 -2
  28. package/dist/types/builtins-ml/definitions/fields/number.d.ts +12 -0
  29. package/dist/types/builtins-ml/definitions/fields/rating.d.ts +10 -0
  30. package/dist/types/builtins-ml/definitions/fields/series-helpers.d.ts +52 -0
  31. package/dist/types/builtins-ml/definitions/fields/series.d.ts +3 -0
  32. package/dist/types/{src/engine/builtins → builtins-ml/definitions}/fields/single-choice.d.ts +3 -2
  33. package/dist/types/builtins-ml/definitions/fields/text.d.ts +11 -0
  34. package/dist/types/{src/engine/builtins → builtins-ml/definitions}/index.d.ts +13 -34
  35. package/dist/types/builtins-ml/definitions/reports/classifier.d.ts +9 -0
  36. package/dist/types/builtins-ml/definitions/reports/regressor.d.ts +9 -0
  37. package/dist/types/{src/engine/builtins → builtins-ml/definitions}/shared.d.ts +25 -1
  38. package/dist/types/builtins-ml/index.d.ts +5 -0
  39. package/dist/types/design-system/recipes/index.d.ts +3 -0
  40. package/dist/types/{src/design-system → design-system}/registry/builtins.d.ts +0 -3
  41. package/dist/types/{src/design-system → design-system}/registry/index.d.ts +3 -1
  42. package/dist/types/design-system/runtime/controller-helpers.d.ts +12 -0
  43. package/dist/types/design-system/runtime/fingerprint.d.ts +8 -0
  44. package/dist/types/design-system/runtime/host-observer.d.ts +1 -0
  45. package/dist/types/design-system/runtime/hydration-state.d.ts +13 -0
  46. package/dist/types/design-system/runtime/inherited-scheme.d.ts +5 -0
  47. package/dist/types/design-system/runtime/media.d.ts +19 -0
  48. package/dist/types/design-system/themes/airbnb.d.ts +2 -0
  49. package/dist/types/design-system/themes/clickhouse.d.ts +2 -0
  50. package/dist/types/design-system/themes/index.d.ts +4 -0
  51. package/dist/types/index.d.ts +13 -0
  52. package/dist/types/kit/accordion-root-styles.d.ts +1 -0
  53. package/dist/types/kit/accordion-root.d.ts +24 -0
  54. package/dist/types/kit/accordion.d.ts +2 -0
  55. package/dist/types/kit/constants.d.ts +33 -0
  56. package/dist/types/{src/kit → kit}/defaults.d.ts +4 -4
  57. package/dist/types/kit/error-navigation.d.ts +2 -0
  58. package/dist/types/kit/index.d.ts +9 -0
  59. package/dist/types/kit/layout-helpers.d.ts +29 -0
  60. package/dist/types/kit/layout-node-render.d.ts +18 -0
  61. package/dist/types/kit/layout-node-resolver.d.ts +3 -0
  62. package/dist/types/kit/layout-types.d.ts +124 -0
  63. package/dist/types/kit/layout-utils.d.ts +9 -0
  64. package/dist/types/kit/layout.d.ts +8 -0
  65. package/dist/types/{src/kit/types.d.ts → kit/mount-types.d.ts} +6 -4
  66. package/dist/types/kit/panel-nav.d.ts +9 -0
  67. package/dist/types/{src/questionnaire/primitives/components → kit}/step-indicator.d.ts +3 -3
  68. package/dist/types/kit/tabs-root-styles.d.ts +1 -0
  69. package/dist/types/kit/tabs-root.d.ts +24 -0
  70. package/dist/types/kit/tabs.d.ts +2 -0
  71. package/dist/types/kit/types.d.ts +5 -0
  72. package/dist/types/kit/view-layout-state.d.ts +14 -0
  73. package/dist/types/kit/view-navigation.d.ts +8 -0
  74. package/dist/types/kit/view-snapshot-cache.d.ts +14 -0
  75. package/dist/types/kit/view-snapshot.d.ts +15 -0
  76. package/dist/types/kit/view-types.d.ts +172 -0
  77. package/dist/types/kit/view.d.ts +8 -0
  78. package/dist/types/kit/wizard-constants.d.ts +19 -0
  79. package/dist/types/kit/wizard-root-styles.d.ts +1 -0
  80. package/dist/types/kit/wizard-root.d.ts +23 -0
  81. package/dist/types/kit/wizard.d.ts +2 -0
  82. package/dist/types/packs/default.d.ts +2 -0
  83. package/dist/types/packs/index.d.ts +3 -0
  84. package/dist/types/packs/ml.d.ts +2 -0
  85. package/dist/types/packs/shared.d.ts +24 -0
  86. package/dist/types/presentation/define-explanation-kind.d.ts +11 -0
  87. package/dist/types/presentation/define-field-kind.d.ts +18 -0
  88. package/dist/types/presentation/define-report-kind.d.ts +15 -0
  89. package/dist/types/presentation/index.d.ts +10 -0
  90. package/dist/types/presentation/register-kind.d.ts +6 -0
  91. package/dist/types/presentation/registry.d.ts +15 -0
  92. package/dist/types/presentation/types/explanation.d.ts +32 -0
  93. package/dist/types/presentation/types/field.d.ts +36 -0
  94. package/dist/types/presentation/types/report.d.ts +41 -0
  95. package/dist/types/{src/primitives → primitives}/base-explanation-element.d.ts +2 -1
  96. package/dist/types/{src/primitives → primitives}/base-field-element.d.ts +2 -1
  97. package/dist/types/{src/primitives → primitives}/base-report-element.d.ts +2 -1
  98. package/dist/types/primitives/components/error-focus.d.ts +4 -0
  99. package/dist/types/{src/primitives → primitives}/components/explanation-panel.d.ts +4 -2
  100. package/dist/types/primitives/components/field-frame-feedback.d.ts +9 -0
  101. package/dist/types/primitives/components/field-frame-styles.d.ts +1 -0
  102. package/dist/types/{src/primitives → primitives}/components/field-frame.d.ts +5 -3
  103. package/dist/types/{src/primitives → primitives}/components/form-errors.d.ts +1 -1
  104. package/dist/types/primitives/components/form-root-presenters.d.ts +17 -0
  105. package/dist/types/primitives/components/form-root-split-styles.d.ts +1 -0
  106. package/dist/types/primitives/components/form-root-state.d.ts +19 -0
  107. package/dist/types/primitives/components/form-root-styles.d.ts +1 -0
  108. package/dist/types/primitives/components/form-root-templates.d.ts +42 -0
  109. package/dist/types/{src/primitives → primitives}/components/form-root.d.ts +4 -2
  110. package/dist/types/{src/primitives → primitives}/components/presentation.d.ts +1 -1
  111. package/dist/types/{src/primitives → primitives}/components/report-frame.d.ts +4 -2
  112. package/dist/types/{src/primitives → primitives}/components/submit-button.d.ts +1 -1
  113. package/dist/types/{src/primitives → primitives}/constants.d.ts +1 -1
  114. package/dist/types/primitives/fields/series-field-helpers.d.ts +23 -0
  115. package/dist/types/primitives/fields/series-field-renderers.d.ts +18 -0
  116. package/dist/types/primitives/fields/series-field-styles.d.ts +1 -0
  117. package/dist/types/{src/primitives → primitives}/mount-form.d.ts +1 -1
  118. package/dist/types/primitives/presentation.d.ts +8 -0
  119. package/dist/types/{src/primitives → primitives}/types.d.ts +4 -1
  120. package/dist/types/runtime/create-runtime-helpers.d.ts +11 -0
  121. package/dist/types/{src/engine → runtime}/errors.d.ts +3 -3
  122. package/dist/types/runtime/fields/state-calculations.d.ts +25 -0
  123. package/dist/types/runtime/fields/state.d.ts +2 -0
  124. package/dist/types/runtime/form.d.ts +1 -0
  125. package/dist/types/runtime/index.d.ts +12 -0
  126. package/dist/types/runtime/runtime-behaviors.d.ts +23 -0
  127. package/dist/types/runtime/runtime-controller.d.ts +34 -0
  128. package/dist/types/runtime/runtime-refresh.d.ts +14 -0
  129. package/dist/types/runtime/runtime-values.d.ts +19 -0
  130. package/dist/types/runtime/submission/create-submitter.d.ts +2 -0
  131. package/dist/types/runtime/submission/error-flow.d.ts +19 -0
  132. package/dist/types/runtime/submission/field-updates.d.ts +14 -0
  133. package/dist/types/runtime/submission/pending-patches.d.ts +2 -0
  134. package/dist/types/runtime/submission/report-updates.d.ts +16 -0
  135. package/dist/types/runtime/submission/stream-events.d.ts +13 -0
  136. package/dist/types/runtime/submission/stream-progress.d.ts +4 -0
  137. package/dist/types/runtime/submission/submitter.d.ts +2 -0
  138. package/dist/types/runtime/submission/types.d.ts +60 -0
  139. package/dist/types/runtime/types/behavior.d.ts +32 -0
  140. package/dist/types/runtime/types/explanation.d.ts +15 -0
  141. package/dist/types/runtime/types/field.d.ts +17 -0
  142. package/dist/types/{src/engine → runtime}/types/form.d.ts +8 -11
  143. package/dist/types/{src/engine → runtime}/types/index.d.ts +1 -2
  144. package/dist/types/runtime/types/registry.d.ts +6 -0
  145. package/dist/types/runtime/types/report.d.ts +13 -0
  146. package/dist/types/{src/engine → runtime}/types/transport.d.ts +2 -2
  147. package/dist/types/{src/engine → runtime}/utils.d.ts +2 -2
  148. package/dist/types/{src/engine/validation/field.d.ts → runtime/validation/field-state.d.ts} +3 -19
  149. package/dist/types/runtime/validation/field-validator.d.ts +18 -0
  150. package/dist/types/runtime/validation/field.d.ts +2 -0
  151. package/dist/types/schema/index.d.ts +7 -0
  152. package/dist/types/schema/normalize.d.ts +2 -0
  153. package/dist/types/schema/registry.d.ts +9 -0
  154. package/dist/types/schema/types/explanation.d.ts +43 -0
  155. package/dist/types/{src/engine → schema}/types/field.d.ts +3 -45
  156. package/dist/types/schema/types/form.d.ts +13 -0
  157. package/dist/types/schema/types/report.d.ts +43 -0
  158. package/dist/types/shared/index.d.ts +3 -0
  159. package/dist/types/shared/object.d.ts +1 -0
  160. package/dist/types/shared/strings.d.ts +1 -0
  161. package/dist/types/transport/composition/fanout-helpers.d.ts +2 -0
  162. package/dist/types/transport/composition/fanout-options.d.ts +9 -0
  163. package/dist/types/transport/composition/fanout.d.ts +2 -0
  164. package/dist/types/{src/transport → transport}/composition/index.d.ts +1 -0
  165. package/dist/types/transport/composition/quorum-fanout.d.ts +2 -0
  166. package/dist/types/{src/transport → transport}/errors.d.ts +1 -1
  167. package/dist/types/transport/internal-core.d.ts +21 -0
  168. package/dist/types/transport/internal-errors.d.ts +21 -0
  169. package/dist/types/transport/internal-request.d.ts +21 -0
  170. package/dist/types/transport/internal-routing.d.ts +25 -0
  171. package/dist/types/transport/internal-sse.d.ts +14 -0
  172. package/dist/types/transport/internal-stream.d.ts +13 -0
  173. package/dist/types/transport/internal.d.ts +6 -0
  174. package/dist/types/transport/types/options-http.d.ts +85 -0
  175. package/dist/types/transport/types/options-middleware.d.ts +96 -0
  176. package/dist/types/transport/types/options-routing.d.ts +82 -0
  177. package/dist/types/transport/types/options.d.ts +3 -0
  178. package/dist/utils-J5o8lkea.js +29 -0
  179. package/package.json +26 -14
  180. package/dist/engine-CEy1IX7y.js +0 -5367
  181. package/dist/kit-DrrbtxI2.js +0 -76
  182. package/dist/mlform/engine.mjs +0 -3
  183. package/dist/mlform/questionnaire.mjs +0 -640
  184. package/dist/types/src/design-system/recipes/index.d.ts +0 -4
  185. package/dist/types/src/design-system/themes/index.d.ts +0 -5
  186. package/dist/types/src/engine/builtins/fields/boolean.d.ts +0 -8
  187. package/dist/types/src/engine/builtins/fields/category.d.ts +0 -11
  188. package/dist/types/src/engine/builtins/fields/date.d.ts +0 -9
  189. package/dist/types/src/engine/builtins/fields/long-text.d.ts +0 -10
  190. package/dist/types/src/engine/builtins/fields/number.d.ts +0 -11
  191. package/dist/types/src/engine/builtins/fields/rating.d.ts +0 -9
  192. package/dist/types/src/engine/builtins/fields/series.d.ts +0 -20
  193. package/dist/types/src/engine/builtins/fields/text.d.ts +0 -10
  194. package/dist/types/src/engine/builtins/reports/classifier.d.ts +0 -8
  195. package/dist/types/src/engine/builtins/reports/regressor.d.ts +0 -8
  196. package/dist/types/src/engine/declarative/explanation.d.ts +0 -2
  197. package/dist/types/src/engine/declarative/field.d.ts +0 -2
  198. package/dist/types/src/engine/declarative/report.d.ts +0 -2
  199. package/dist/types/src/engine/index.d.ts +0 -11
  200. package/dist/types/src/engine/registry/index.d.ts +0 -26
  201. package/dist/types/src/engine/submission/submitter.d.ts +0 -40
  202. package/dist/types/src/engine/types/explanation.d.ts +0 -109
  203. package/dist/types/src/engine/types/report.d.ts +0 -87
  204. package/dist/types/src/index.d.ts +0 -7
  205. package/dist/types/src/kit/constants.d.ts +0 -4
  206. package/dist/types/src/kit/index.d.ts +0 -4
  207. package/dist/types/src/questionnaire/constants.d.ts +0 -31
  208. package/dist/types/src/questionnaire/defaults.d.ts +0 -8
  209. package/dist/types/src/questionnaire/engine/controller.d.ts +0 -12
  210. package/dist/types/src/questionnaire/engine/schema.d.ts +0 -9
  211. package/dist/types/src/questionnaire/errors.d.ts +0 -3
  212. package/dist/types/src/questionnaire/index.d.ts +0 -6
  213. package/dist/types/src/questionnaire/mount.d.ts +0 -3
  214. package/dist/types/src/questionnaire/primitives/components/questionnaire-root.d.ts +0 -23
  215. package/dist/types/src/questionnaire/primitives/register.d.ts +0 -0
  216. package/dist/types/src/questionnaire/types.d.ts +0 -69
  217. package/dist/types/src/shared/index.d.ts +0 -1
  218. package/dist/types/src/transport/composition/fanout.d.ts +0 -3
  219. package/dist/types/src/transport/internal.d.ts +0 -110
  220. package/dist/types/src/transport/types/options.d.ts +0 -258
  221. package/dist/types/{src/design-system → design-system}/constants.d.ts +0 -0
  222. package/dist/types/{src/design-system → design-system}/contract/component-keys.d.ts +0 -0
  223. package/dist/types/{src/design-system → design-system}/contract/component-tokens.d.ts +0 -0
  224. package/dist/types/{src/design-system → design-system}/contract/global-tokens.d.ts +0 -0
  225. package/dist/types/{src/design-system → design-system}/contract/index.d.ts +0 -0
  226. package/dist/types/{src/design-system → design-system}/contract/token-keys.d.ts +0 -0
  227. package/dist/types/{src/design-system → design-system}/index.d.ts +0 -0
  228. package/dist/types/{src/design-system → design-system}/recipes/contrast.d.ts +0 -0
  229. package/dist/types/{src/design-system → design-system}/recipes/default.d.ts +0 -0
  230. package/dist/types/{src/design-system → design-system}/recipes/minimal.d.ts +0 -0
  231. package/dist/types/{src/design-system → design-system}/recipes/soft.d.ts +0 -0
  232. package/dist/types/{src/design-system → design-system}/registry/create-registry.d.ts +0 -0
  233. package/dist/types/{src/design-system → design-system}/registry/deep-freeze.d.ts +0 -0
  234. package/dist/types/{src/design-system → design-system}/registry/define-recipe.d.ts +0 -0
  235. package/dist/types/{src/design-system → design-system}/registry/define-theme.d.ts +0 -0
  236. package/dist/types/{src/design-system → design-system}/registry/define-token-maps.d.ts +0 -0
  237. package/dist/types/{src/design-system → design-system}/resolve/diagnostics.d.ts +0 -0
  238. package/dist/types/{src/design-system → design-system}/resolve/index.d.ts +0 -0
  239. package/dist/types/{src/design-system → design-system}/resolve/merge-config.d.ts +0 -0
  240. package/dist/types/{src/design-system → design-system}/resolve/migrate-tokens.d.ts +0 -0
  241. package/dist/types/{src/design-system → design-system}/resolve/resolve-mode.d.ts +0 -0
  242. package/dist/types/{src/design-system → design-system}/resolve/resolve-recipe.d.ts +0 -0
  243. package/dist/types/{src/design-system → design-system}/resolve/resolve-theme.d.ts +0 -0
  244. package/dist/types/{src/design-system → design-system}/resolve/resolve-tokens.d.ts +0 -0
  245. package/dist/types/{src/design-system → design-system}/runtime/apply-tokens.d.ts +0 -0
  246. package/dist/types/{src/design-system → design-system}/runtime/attach-design-system.d.ts +0 -0
  247. package/dist/types/{src/design-system → design-system}/runtime/create-stylesheet.d.ts +0 -0
  248. package/dist/types/{src/design-system → design-system}/runtime/declarations.d.ts +0 -0
  249. package/dist/types/{src/design-system → design-system}/runtime/design-system-controller.d.ts +0 -0
  250. package/dist/types/{src/design-system → design-system}/runtime/host-state.d.ts +0 -0
  251. package/dist/types/{src/design-system → design-system}/runtime/hydrate-design-system.d.ts +0 -0
  252. package/dist/types/{src/design-system → design-system}/runtime/index.d.ts +0 -0
  253. package/dist/types/{src/design-system → design-system}/themes/cobalt.d.ts +0 -0
  254. package/dist/types/{src/design-system → design-system}/themes/graphite.d.ts +0 -0
  255. package/dist/types/{src/design-system → design-system}/themes/neutral.d.ts +0 -0
  256. package/dist/types/{src/design-system → design-system}/themes/sage.d.ts +0 -0
  257. package/dist/types/{src/design-system → design-system}/themes/sunset.d.ts +0 -0
  258. package/dist/types/{src/design-system → design-system}/tokens/base.d.ts +0 -0
  259. package/dist/types/{src/design-system → design-system}/tokens/contrast.d.ts +0 -0
  260. package/dist/types/{src/design-system → design-system}/tokens/density.d.ts +0 -0
  261. package/dist/types/{src/design-system → design-system}/tokens/forced-colors.d.ts +0 -0
  262. package/dist/types/{src/design-system → design-system}/tokens/index.d.ts +0 -0
  263. package/dist/types/{src/design-system → design-system}/tokens/motion.d.ts +0 -0
  264. package/dist/types/{src/design-system → design-system}/types.d.ts +0 -0
  265. package/dist/types/{src/kit → kit}/mount-form.d.ts +0 -0
  266. package/dist/types/{src/engine/declarative → presentation/types}/presentation.d.ts +0 -0
  267. package/dist/types/{src/primitives → primitives}/base-async-report-element.d.ts +0 -0
  268. package/dist/types/{src/primitives → primitives}/components/declarative-explanation.d.ts +0 -0
  269. package/dist/types/{src/primitives → primitives}/components/declarative-field.d.ts +0 -0
  270. package/dist/types/{src/primitives → primitives}/components/declarative-report.d.ts +0 -0
  271. package/dist/types/{src/primitives → primitives}/components/unsupported-component.d.ts +0 -0
  272. package/dist/types/{src/primitives → primitives}/controller-binding.d.ts +0 -0
  273. package/dist/types/{src/primitives → primitives}/fields/boolean-field.d.ts +0 -0
  274. package/dist/types/{src/primitives → primitives}/fields/category-field.d.ts +0 -0
  275. package/dist/types/{src/primitives → primitives}/fields/date-field.d.ts +0 -0
  276. package/dist/types/{src/primitives → primitives}/fields/long-text-field.d.ts +0 -0
  277. package/dist/types/{src/primitives → primitives}/fields/multi-choice-field.d.ts +0 -0
  278. package/dist/types/{src/primitives → primitives}/fields/number-field.d.ts +0 -0
  279. package/dist/types/{src/primitives → primitives}/fields/rating-field.d.ts +0 -0
  280. package/dist/types/{src/primitives → primitives}/fields/series-field.d.ts +0 -0
  281. package/dist/types/{src/primitives → primitives}/fields/single-choice-field.d.ts +0 -0
  282. package/dist/types/{src/primitives → primitives}/fields/text-field.d.ts +0 -0
  283. package/dist/types/{src/primitives → primitives}/index.d.ts +0 -0
  284. package/dist/types/{src/primitives → primitives}/register.d.ts +0 -0
  285. package/dist/types/{src/primitives → primitives}/registry.d.ts +0 -0
  286. package/dist/types/{src/primitives → primitives}/reports/classifier-report.d.ts +0 -0
  287. package/dist/types/{src/primitives → primitives}/reports/regressor-report.d.ts +0 -0
  288. package/dist/types/{src/primitives → primitives}/utils.d.ts +0 -0
  289. package/dist/types/{src/engine → runtime}/comparison.d.ts +0 -0
  290. package/dist/types/{src/engine → runtime}/constants.d.ts +0 -0
  291. package/dist/types/{src/engine/form.d.ts → runtime/create-runtime.d.ts} +0 -0
  292. package/dist/types/{src/engine → runtime}/equality.d.ts +0 -0
  293. package/dist/types/{src/engine → runtime}/explanations/controller.d.ts +0 -0
  294. package/dist/types/{src/engine → runtime}/explanations/index.d.ts +0 -0
  295. package/dist/types/{src/engine → runtime}/fields/controller.d.ts +0 -0
  296. package/dist/types/{src/engine → runtime}/fields/index.d.ts +0 -0
  297. package/dist/types/{src/engine → runtime}/paths.d.ts +0 -0
  298. package/dist/types/{src/engine → runtime}/reports/controller.d.ts +0 -0
  299. package/dist/types/{src/engine → runtime}/reports/index.d.ts +0 -0
  300. package/dist/types/{src/engine → runtime}/schema/index.d.ts +0 -0
  301. package/dist/types/{src/engine → runtime}/state/engine.d.ts +0 -0
  302. package/dist/types/{src/engine → runtime}/state/index.d.ts +0 -0
  303. package/dist/types/{src/engine → runtime}/state/snapshots.d.ts +0 -0
  304. package/dist/types/{src/engine → runtime}/state/store.d.ts +0 -0
  305. package/dist/types/{src/engine → runtime}/submission/abort.d.ts +0 -0
  306. package/dist/types/{src/engine → runtime}/submission/explanations.d.ts +0 -0
  307. package/dist/types/{src/engine → runtime}/submission/index.d.ts +0 -0
  308. package/dist/types/{src/engine → runtime}/submission/lifecycle.d.ts +0 -0
  309. package/dist/types/{src/engine → runtime}/submission/pipeline.d.ts +0 -0
  310. package/dist/types/{src/engine → runtime}/submission/reports.d.ts +0 -0
  311. package/dist/types/{src/engine → runtime}/submission/request.d.ts +0 -0
  312. package/dist/types/{src/engine → runtime}/submission/result.d.ts +0 -0
  313. package/dist/types/{src/engine → runtime}/types/pipeline.d.ts +0 -0
  314. package/dist/types/{src/engine → runtime}/validation/conditions.d.ts +0 -0
  315. package/dist/types/{src/engine → runtime}/validation/form.d.ts +0 -0
  316. package/dist/types/{src/engine → runtime}/validation/index.d.ts +0 -0
  317. package/dist/types/{src/engine → runtime}/values.d.ts +0 -0
  318. package/dist/types/{src/engine → schema}/types/registry.d.ts +1 -1
  319. /package/dist/types/{src/shared → shared}/errors.d.ts +0 -0
  320. /package/dist/types/{src/transport → transport}/capabilities.d.ts +0 -0
  321. /package/dist/types/{src/transport → transport}/clone.d.ts +0 -0
  322. /package/dist/types/{src/transport → transport}/composition/fallback.d.ts +0 -0
  323. /package/dist/types/{src/transport → transport}/composition/hedged.d.ts +0 -0
  324. /package/dist/types/{src/transport → transport}/composition/load-balancing.d.ts +0 -0
  325. /package/dist/types/{src/transport → transport}/composition/pipeline.d.ts +0 -0
  326. /package/dist/types/{src/transport → transport}/composition/racing.d.ts +0 -0
  327. /package/dist/types/{src/transport → transport}/composition/routing.d.ts +0 -0
  328. /package/dist/types/{src/transport → transport}/constants.d.ts +0 -0
  329. /package/dist/types/{src/transport → transport}/index.d.ts +0 -0
  330. /package/dist/types/{src/transport → transport}/middleware/auth.d.ts +0 -0
  331. /package/dist/types/{src/transport → transport}/middleware/cache.d.ts +0 -0
  332. /package/dist/types/{src/transport → transport}/middleware/circuit-breaker.d.ts +0 -0
  333. /package/dist/types/{src/transport → transport}/middleware/dedup.d.ts +0 -0
  334. /package/dist/types/{src/transport → transport}/middleware/index.d.ts +0 -0
  335. /package/dist/types/{src/transport → transport}/middleware/logging.d.ts +0 -0
  336. /package/dist/types/{src/transport → transport}/middleware/metrics.d.ts +0 -0
  337. /package/dist/types/{src/transport → transport}/middleware/pipe.d.ts +0 -0
  338. /package/dist/types/{src/transport → transport}/middleware/rate-limit.d.ts +0 -0
  339. /package/dist/types/{src/transport → transport}/middleware/retry.d.ts +0 -0
  340. /package/dist/types/{src/transport → transport}/middleware/timeout.d.ts +0 -0
  341. /package/dist/types/{src/transport → transport}/middleware/tracing.d.ts +0 -0
  342. /package/dist/types/{src/transport → transport}/middleware/transform.d.ts +0 -0
  343. /package/dist/types/{src/transport → transport}/policy-context.d.ts +0 -0
  344. /package/dist/types/{src/transport → transport}/protocols/graphql.d.ts +0 -0
  345. /package/dist/types/{src/transport → transport}/protocols/grpc.d.ts +0 -0
  346. /package/dist/types/{src/transport → transport}/protocols/index.d.ts +0 -0
  347. /package/dist/types/{src/transport → transport}/protocols/json.d.ts +0 -0
  348. /package/dist/types/{src/transport → transport}/protocols/sse.d.ts +0 -0
  349. /package/dist/types/{src/transport → transport}/protocols/websocket.d.ts +0 -0
  350. /package/dist/types/{src/transport → transport}/runtime.d.ts +0 -0
  351. /package/dist/types/{src/transport → transport}/state/cache-store.d.ts +0 -0
  352. /package/dist/types/{src/transport → transport}/state/circuit-breaker.d.ts +0 -0
  353. /package/dist/types/{src/transport → transport}/state/health.d.ts +0 -0
  354. /package/dist/types/{src/transport → transport}/state/index.d.ts +0 -0
  355. /package/dist/types/{src/transport → transport}/state/rate-limiter.d.ts +0 -0
  356. /package/dist/types/{src/transport → transport}/state/session.d.ts +0 -0
  357. /package/dist/types/{src/transport → transport}/types/capabilities.d.ts +0 -0
  358. /package/dist/types/{src/transport → transport}/types/core.d.ts +0 -0
  359. /package/dist/types/{src/transport → transport}/types/events.d.ts +0 -0
  360. /package/dist/types/{src/transport → transport}/types/index.d.ts +0 -0
  361. /package/dist/types/{src/transport → transport}/types/middleware.d.ts +0 -0
  362. /package/dist/types/{src/transport → transport}/types/session.d.ts +0 -0
  363. /package/dist/types/{src/transport → transport}/types/state.d.ts +0 -0
@@ -0,0 +1,13 @@
1
+ import { ExplanationConfig, NormalizedExplanationConfig } from './explanation';
2
+ import { FieldConfig, NormalizedFieldConfig } from './field';
3
+ import { NormalizedReportConfig, ReportConfig } from './report';
4
+ export interface FormSchema {
5
+ fields: FieldConfig[];
6
+ reports?: ReportConfig[];
7
+ explanations?: ExplanationConfig[];
8
+ }
9
+ export interface NormalizedFormSchema {
10
+ fields: NormalizedFieldConfig[];
11
+ reports: NormalizedReportConfig[];
12
+ explanations: NormalizedExplanationConfig[];
13
+ }
@@ -0,0 +1,43 @@
1
+ import { ZodType } from 'zod';
2
+ import { MaybePromise } from './field';
3
+ import { SubmitResult } from '../../runtime/types/transport';
4
+ export type ReportStatus = "idle" | "loading" | "ready" | "error";
5
+ export type ReportPayloadValidationPolicy = "report-error" | "fail-submit";
6
+ export type PartialReportUpdatePolicy = "trust" | "validate" | "defer";
7
+ export interface BaseReportConfig {
8
+ id?: string;
9
+ kind: string;
10
+ label?: string;
11
+ description?: string;
12
+ source?: string;
13
+ ui?: Record<string, unknown>;
14
+ [key: string]: unknown;
15
+ }
16
+ export type ReportConfig = BaseReportConfig;
17
+ export type NormalizedReportConfig<TConfig extends ReportConfig = ReportConfig> = TConfig & {
18
+ id: string;
19
+ source: string;
20
+ };
21
+ export interface ReportStateSnapshot {
22
+ payload: unknown;
23
+ error: string | null;
24
+ status: ReportStatus;
25
+ }
26
+ export interface ReportPayloadContext<TConfig extends ReportConfig = ReportConfig> {
27
+ report: NormalizedReportConfig<TConfig>;
28
+ result: SubmitResult;
29
+ }
30
+ export interface ReportResolveContext<TConfig extends ReportConfig = ReportConfig> {
31
+ config: NormalizedReportConfig<TConfig>;
32
+ report: NormalizedReportConfig<TConfig>;
33
+ result: SubmitResult;
34
+ }
35
+ export interface ReportDefinition<TConfig extends ReportConfig = ReportConfig> {
36
+ kind: string;
37
+ schema: ZodType<TConfig>;
38
+ payloadSchema?: ZodType<unknown>;
39
+ payloadValidationPolicy?: ReportPayloadValidationPolicy;
40
+ partialUpdatePolicy?: PartialReportUpdatePolicy;
41
+ clonePayload?: (payload: unknown, config: TConfig) => unknown;
42
+ resolvePayload?: (config: TConfig, context: ReportPayloadContext<TConfig>) => MaybePromise<unknown>;
43
+ }
@@ -0,0 +1,3 @@
1
+ export { MLFormError } from './errors';
2
+ export { isRecord } from './object';
3
+ export { slugify } from './strings';
@@ -0,0 +1 @@
1
+ export declare const isRecord: (value: unknown) => value is Record<string, unknown>;
@@ -0,0 +1 @@
1
+ export declare const slugify: (value: string) => string;
@@ -0,0 +1,2 @@
1
+ import { FanoutTransportFailure } from '../types';
2
+ export declare const createFanoutFailure: (failures: readonly FanoutTransportFailure[]) => Error;
@@ -0,0 +1,9 @@
1
+ import { FanoutTransportOptions, SubmitRequest, TransportCapabilities } from '../types';
2
+ export type FanoutTransportEntry<TTransportId extends string> = {
3
+ id: TTransportId | undefined;
4
+ index: number;
5
+ transport: import('../types').Transport;
6
+ };
7
+ export declare const resolveActiveFanoutEntries: <TTransportId extends string>(entries: readonly FanoutTransportEntry<TTransportId>[], options: FanoutTransportOptions<TTransportId>, request: SubmitRequest) => Promise<readonly FanoutTransportEntry<TTransportId>[]>;
8
+ export declare const collectFanoutCapabilities: (entries: readonly FanoutTransportEntry<string>[]) => TransportCapabilities | undefined;
9
+ export declare const createFanoutAbortOthers: (controllers: readonly AbortController[]) => (reason: string, skipIndex: number) => void;
@@ -0,0 +1,2 @@
1
+ import { FanoutTransportOptions, Transport } from '../types';
2
+ export declare const createFanoutTransport: <TTransportId extends string = string>(options: FanoutTransportOptions<TTransportId>) => Transport;
@@ -1,6 +1,7 @@
1
1
  export * from './routing';
2
2
  export * from './load-balancing';
3
3
  export * from './fanout';
4
+ export * from './quorum-fanout';
4
5
  export * from './fallback';
5
6
  export * from './pipeline';
6
7
  export * from './racing';
@@ -0,0 +1,2 @@
1
+ import { QuorumFanoutTransportOptions, Transport } from '../types';
2
+ export declare const createQuorumFanoutTransport: <TTransportId extends string = string>(options: QuorumFanoutTransportOptions<TTransportId>) => Transport;
@@ -1,4 +1,4 @@
1
- import { MLFormError } from '../../shared';
1
+ import { MLFormError } from '../shared';
2
2
  export declare const transportErrorCodes: {
3
3
  readonly TIMEOUT: "TIMEOUT";
4
4
  readonly AUTH_FAILED: "AUTH_FAILED";
@@ -0,0 +1,21 @@
1
+ import { SubmitRequest, Transport, TransportCapabilities, TransportSession, TransportStreamEvent } from './types';
2
+ export type TransportEntry = {
3
+ id: string | undefined;
4
+ index: number;
5
+ label: string;
6
+ transport: Transport;
7
+ };
8
+ export type StreamFactory = (request: SubmitRequest) => AsyncIterable<TransportStreamEvent> | PromiseLike<AsyncIterable<TransportStreamEvent>>;
9
+ type SessionFactory = (request: SubmitRequest) => TransportSession | PromiseLike<TransportSession>;
10
+ export type AsyncQueue<T> = {
11
+ push(value: T): void;
12
+ close(): void;
13
+ [Symbol.asyncIterator](): AsyncIterator<T>;
14
+ };
15
+ export declare const isRecord: (value: unknown) => value is Record<string, unknown>;
16
+ export declare const createTransport: (submit: Transport["submit"], stream?: StreamFactory, options?: {
17
+ openSession?: SessionFactory;
18
+ capabilities?: TransportCapabilities;
19
+ }) => Transport;
20
+ export declare const createAsyncQueue: <T>() => AsyncQueue<T>;
21
+ export {};
@@ -0,0 +1,21 @@
1
+ import { TransportError } from './errors';
2
+ import { Transport } from './types';
3
+ export declare const isAbortError: (error: unknown) => boolean;
4
+ export declare const getErrorMessage: (error: unknown) => string;
5
+ export declare const toTransportError: (error: unknown, defaults?: {
6
+ source?: string;
7
+ status?: number;
8
+ code?: string;
9
+ retryable?: boolean;
10
+ response?: unknown;
11
+ details?: unknown;
12
+ }) => TransportError;
13
+ export declare const assertRetrySafe: (transport: Transport, allowUnsafeRetry?: boolean) => void;
14
+ export declare const assertCacheSafe: (transport: Transport, allowUnsafeCache?: boolean) => void;
15
+ export declare const assertHedgingSafe: (transport: Transport, allowUnsafeHedging?: boolean) => void;
16
+ export declare const createAggregateFailure: (message: string, failures: readonly {
17
+ label: string;
18
+ error: unknown;
19
+ }[]) => TransportError;
20
+ export declare const resolveErrorMessage: (status: number, statusText: string, payload: unknown) => string;
21
+ export declare const resolveErrorCode: (payload: unknown) => string | undefined;
@@ -0,0 +1,21 @@
1
+ import { CapabilityRequirement, MaybePromise, SubmitRequest, Transport } from './types';
2
+ export declare const mergeHeaders: (baseHeaders: HeadersInit | undefined, extraHeaders: HeadersInit | undefined) => Headers;
3
+ export declare const resolveRequestCredentials: (optionsCredentials: RequestCredentials | undefined, request: SubmitRequest) => RequestCredentials | undefined;
4
+ export declare const withRequestTransportContext: (request: SubmitRequest, context: NonNullable<SubmitRequest["transport"]>) => SubmitRequest;
5
+ export declare const ensureRequestPolicyContext: (request: SubmitRequest) => SubmitRequest;
6
+ export declare const withCapabilityRequirement: (request: SubmitRequest, requirement: CapabilityRequirement | undefined, transport: Transport, context: string) => SubmitRequest;
7
+ export declare const normalizeRequest: (request: SubmitRequest, transport: Transport, context: string) => SubmitRequest;
8
+ export declare const getTransportScope: (request: SubmitRequest, fallback: string) => string;
9
+ export declare const withRequestPolicyScope: (request: SubmitRequest, scope: string, extras?: {
10
+ source?: string;
11
+ backend?: string;
12
+ requestId?: string;
13
+ }) => SubmitRequest;
14
+ export declare const defaultDedupKey: (request: SubmitRequest) => string;
15
+ export declare const resolveGraphqlValue: <TValue>(value: TValue | ((request: SubmitRequest) => MaybePromise<TValue>), request: SubmitRequest) => Promise<TValue>;
16
+ export declare const defaultBody: (request: Parameters<Transport["submit"]>[0]) => {
17
+ inputs: Record<string, unknown>;
18
+ };
19
+ export declare const resolveMethod: (method: string | undefined) => "POST" | "PUT" | "PATCH" | "DELETE";
20
+ export declare const resolveSecret: (value: string | (() => MaybePromise<string>)) => Promise<string>;
21
+ export declare const resolveTransportEntries: (transports: import('./types').TransportCollection, factoryName: string) => readonly import('./internal-core').TransportEntry[];
@@ -0,0 +1,25 @@
1
+ import { MaybePromise, SubmitRequest, TransportResponse } from './types';
2
+ export declare const chooseWeightedTransport: <TTransportId extends string>(request: SubmitRequest, transportIds: readonly TTransportId[], weights: Partial<Record<TTransportId, number>> | ((request: SubmitRequest, transportId: TTransportId) => MaybePromise<number>), filter?: (transportId: TTransportId, request: SubmitRequest) => MaybePromise<boolean>) => Promise<TTransportId>;
3
+ export declare const toFanoutMeta: (results: readonly {
4
+ id: string | undefined;
5
+ index: number;
6
+ response: TransportResponse;
7
+ }[], failures: readonly {
8
+ id: string | undefined;
9
+ index: number;
10
+ error: unknown;
11
+ }[]) => Record<string, unknown>;
12
+ export declare const toFanoutRaw: (results: readonly {
13
+ id: string | undefined;
14
+ index: number;
15
+ response: TransportResponse;
16
+ }[]) => unknown;
17
+ export declare const mergeFanoutResponses: (results: readonly {
18
+ id: string | undefined;
19
+ index: number;
20
+ response: TransportResponse;
21
+ }[], failures: readonly {
22
+ id: string | undefined;
23
+ index: number;
24
+ error: unknown;
25
+ }[]) => TransportResponse;
@@ -0,0 +1,14 @@
1
+ import { TransportStreamEvent } from './types';
2
+ export declare const parseSseBlocks: (stream: ReadableStream<Uint8Array>) => AsyncIterable<{
3
+ id?: string;
4
+ event?: string;
5
+ data: string;
6
+ retry?: number;
7
+ }>;
8
+ export declare const defaultDecodeSseEvent: (event: {
9
+ id?: string;
10
+ event?: string;
11
+ data: string;
12
+ retry?: number;
13
+ }) => Promise<TransportStreamEvent>;
14
+ export declare const defaultParse: (response: Response) => Promise<unknown>;
@@ -0,0 +1,13 @@
1
+ import { SubmitRequest, Transport, TransportResponse, TransportSessionEvent, TransportStreamEvent } from './types';
2
+ export declare const resolveStream: (transport: Transport, request: SubmitRequest) => Promise<AsyncIterable<TransportStreamEvent>>;
3
+ export declare const normalizeTransportResponse: (response: unknown) => TransportResponse;
4
+ export declare const normalizeStreamEvent: (event: unknown) => TransportStreamEvent;
5
+ export declare const combineSignals: (signals: (AbortSignal | undefined)[]) => {
6
+ signal: AbortSignal;
7
+ cleanup: () => void;
8
+ };
9
+ export declare const waitForDelay: (ms: number, signal?: AbortSignal) => Promise<void>;
10
+ export declare const withEventMeta: (event: TransportStreamEvent, meta: Record<string, unknown>) => TransportStreamEvent;
11
+ export declare const toSessionStreamEvent: (event: TransportSessionEvent) => TransportStreamEvent | null;
12
+ export declare const createSubmitBackedStream: (transport: Transport, request: SubmitRequest) => AsyncIterable<TransportStreamEvent>;
13
+ export declare const resolveStreamOrSubmit: (transport: Transport, request: SubmitRequest) => AsyncIterable<TransportStreamEvent> | PromiseLike<AsyncIterable<TransportStreamEvent>>;
@@ -0,0 +1,6 @@
1
+ export * from './internal-core';
2
+ export * from './internal-request';
3
+ export * from './internal-errors';
4
+ export * from './internal-stream';
5
+ export * from './internal-sse';
6
+ export * from './internal-routing';
@@ -0,0 +1,85 @@
1
+ import { TransportCapabilities } from './capabilities';
2
+ import { MaybePromise, SubmitRequest } from './core';
3
+ import { TransportStreamEvent } from './events';
4
+ import { TransportSession, TransportSessionMessage } from './session';
5
+ export type JsonTransportMethod = "POST" | "PUT" | "PATCH" | "DELETE";
6
+ export interface JsonTransportOptions {
7
+ endpoint: string | URL;
8
+ source?: string;
9
+ fetch?: typeof globalThis.fetch;
10
+ method?: JsonTransportMethod;
11
+ headers?: HeadersInit | (() => MaybePromise<HeadersInit>);
12
+ credentials?: RequestCredentials;
13
+ body?: (request: SubmitRequest) => BodyInit | null | undefined;
14
+ parse?: (response: Response) => Promise<unknown>;
15
+ stream?: (response: Response, request: SubmitRequest) => MaybePromise<AsyncIterable<TransportStreamEvent>>;
16
+ }
17
+ export interface GraphqlTransportOptions {
18
+ endpoint: string | URL;
19
+ source?: string;
20
+ fetch?: typeof globalThis.fetch;
21
+ query: string | ((request: SubmitRequest) => MaybePromise<string>);
22
+ operationName?: string | ((request: SubmitRequest) => MaybePromise<string | undefined>);
23
+ variables?: (request: SubmitRequest) => MaybePromise<Record<string, unknown>>;
24
+ headers?: HeadersInit | (() => MaybePromise<HeadersInit>);
25
+ credentials?: RequestCredentials;
26
+ parse?: (response: Response) => Promise<unknown>;
27
+ resultPath?: "data" | `data.${string}`;
28
+ resolveResult?: (payload: unknown, request: SubmitRequest) => MaybePromise<unknown>;
29
+ }
30
+ export interface SseTransportOptions {
31
+ endpoint: string | URL;
32
+ source?: string;
33
+ fetch?: typeof globalThis.fetch;
34
+ method?: "POST" | "PUT" | "PATCH";
35
+ headers?: HeadersInit | (() => MaybePromise<HeadersInit>);
36
+ credentials?: RequestCredentials;
37
+ body?: (request: SubmitRequest) => BodyInit | null | undefined;
38
+ decodeEvent?: (event: {
39
+ id?: string;
40
+ event?: string;
41
+ data: string;
42
+ retry?: number;
43
+ }, request: SubmitRequest) => MaybePromise<TransportStreamEvent>;
44
+ resultEvent?: string | ((event: {
45
+ id?: string;
46
+ event?: string;
47
+ data: string;
48
+ retry?: number;
49
+ }) => boolean);
50
+ maxPayloadBytes?: number;
51
+ }
52
+ export interface WebSocketSessionTransportOptions {
53
+ url: string | URL | ((request: SubmitRequest) => MaybePromise<string | URL>);
54
+ source?: string;
55
+ WebSocket?: typeof globalThis.WebSocket;
56
+ protocols?: string | string[] | ((request: SubmitRequest) => MaybePromise<string | string[]>);
57
+ serializeMessage?: (message: unknown) => string | ArrayBuffer | Blob | Uint8Array;
58
+ deserializeMessage?: (data: string | ArrayBuffer | Blob) => MaybePromise<unknown>;
59
+ sessionInit?: TransportSessionMessage | ((request: SubmitRequest) => MaybePromise<TransportSessionMessage | undefined>);
60
+ closeTimeoutMs?: number;
61
+ maxBufferedMessages?: number;
62
+ bufferOverflow?: "close" | "drop-oldest" | "drop-newest" | "error";
63
+ }
64
+ export interface GrpcUnaryTransportOptions {
65
+ source?: string;
66
+ unary?: (request: SubmitRequest) => MaybePromise<unknown>;
67
+ capabilities?: TransportCapabilities;
68
+ }
69
+ export interface GrpcStreamTransportOptions {
70
+ source?: string;
71
+ stream: (request: SubmitRequest) => MaybePromise<AsyncIterable<TransportStreamEvent>>;
72
+ capabilities?: TransportCapabilities;
73
+ }
74
+ export interface GrpcSessionTransportOptions {
75
+ source?: string;
76
+ session: (request: SubmitRequest) => MaybePromise<TransportSession>;
77
+ capabilities?: TransportCapabilities;
78
+ }
79
+ export interface GrpcTransportOptions {
80
+ source?: string;
81
+ unary?: (request: SubmitRequest) => MaybePromise<unknown>;
82
+ stream?: (request: SubmitRequest) => MaybePromise<AsyncIterable<TransportStreamEvent>>;
83
+ session?: (request: SubmitRequest) => MaybePromise<TransportSession>;
84
+ capabilities?: TransportCapabilities;
85
+ }
@@ -0,0 +1,96 @@
1
+ import { MaybePromise, SubmitRequest, Transport, TransportPolicyContext } from './core';
2
+ import { TransportStreamEvent } from './events';
3
+ import { CircuitBreakerSharedState, SharedRateLimiter, TransportCacheStore } from './state';
4
+ export interface SessionTransportOptions {
5
+ submit?: Transport["submit"];
6
+ stream?: Transport["stream"];
7
+ openSession: NonNullable<Transport["openSession"]>;
8
+ capabilities?: import('./capabilities').TransportCapabilities;
9
+ }
10
+ export interface RetryOptions {
11
+ attempts: number;
12
+ backoff?: "exponential" | "linear" | number[] | ((attempt: number) => number);
13
+ baseDelay?: number;
14
+ maxDelay?: number;
15
+ jitter?: boolean;
16
+ allowUnsafeRetry?: boolean;
17
+ retryOn?: (error: unknown, attempt: number) => boolean;
18
+ }
19
+ export interface ApiKeyAuthOptions {
20
+ type: "api-key";
21
+ key: string | (() => MaybePromise<string>);
22
+ header?: string;
23
+ prefix?: string;
24
+ }
25
+ export interface BearerAuthOptions {
26
+ type: "bearer";
27
+ token: string | (() => MaybePromise<string>);
28
+ header?: string;
29
+ prefix?: string;
30
+ }
31
+ export interface CustomAuthOptions {
32
+ type: "custom";
33
+ apply: (request: SubmitRequest) => MaybePromise<SubmitRequest>;
34
+ }
35
+ export interface TransportContextAuthOptions {
36
+ type: "transport-context";
37
+ context: NonNullable<SubmitRequest["transport"]> | (() => MaybePromise<NonNullable<SubmitRequest["transport"]>>);
38
+ }
39
+ export type AuthOptions = ApiKeyAuthOptions | BearerAuthOptions | CustomAuthOptions | TransportContextAuthOptions;
40
+ export interface CircuitBreakerOptions {
41
+ failureThreshold: number;
42
+ resetTimeout: number;
43
+ halfOpenMaxRequests?: number;
44
+ key?: string;
45
+ scope?: string;
46
+ sharedState?: CircuitBreakerSharedState;
47
+ tripOn?: (error: unknown) => boolean;
48
+ onStateChange?: (state: "closed" | "open" | "half-open") => void;
49
+ }
50
+ export interface RateLimitOptions {
51
+ maxConcurrent?: number;
52
+ perSecond?: number;
53
+ queueLimit?: number;
54
+ key?: string;
55
+ scope?: string;
56
+ limiter?: SharedRateLimiter;
57
+ }
58
+ export interface DedupOptions {
59
+ key?: (request: SubmitRequest) => string;
60
+ }
61
+ export interface CacheOptions {
62
+ key: (request: SubmitRequest) => string;
63
+ ttl: number;
64
+ maxEntries?: number;
65
+ scope?: string;
66
+ store?: TransportCacheStore;
67
+ allowUnsafeCache?: boolean;
68
+ shouldCache?: (response: unknown, request: SubmitRequest) => boolean;
69
+ }
70
+ export interface TransportTraceOptions {
71
+ traceparent?: string | ((request: SubmitRequest) => MaybePromise<string | undefined>);
72
+ baggage?: string | ((request: SubmitRequest) => MaybePromise<string | undefined>);
73
+ attributes?: (request: SubmitRequest) => MaybePromise<Record<string, unknown> | undefined>;
74
+ preserveExistingHeaders?: boolean;
75
+ requestId?: string | ((request: SubmitRequest) => MaybePromise<string | undefined>);
76
+ scope?: string | ((request: SubmitRequest) => MaybePromise<string | undefined>);
77
+ }
78
+ export interface TransportTelemetryEvent {
79
+ kind: "request-start" | "request-success" | "request-error" | "stream-event" | "session-open" | "session-close" | "capability-reject" | "policy-block";
80
+ source?: string;
81
+ scope?: string;
82
+ durationMs?: number;
83
+ error?: unknown;
84
+ request: SubmitRequest;
85
+ meta?: Record<string, unknown>;
86
+ }
87
+ export interface TransportMetricsOptions {
88
+ emit(event: TransportTelemetryEvent): void;
89
+ }
90
+ export interface TransportLogOptions {
91
+ onRequest?: (request: SubmitRequest) => void;
92
+ onResponse?: (response: unknown, request: SubmitRequest, durationMs: number) => void;
93
+ onError?: (error: unknown, request: SubmitRequest, durationMs: number) => void;
94
+ onStreamEvent?: (event: TransportStreamEvent, request: SubmitRequest) => void;
95
+ }
96
+ export type TransportContextPolicy = TransportPolicyContext;
@@ -0,0 +1,82 @@
1
+ import { CapabilityRequirement } from './capabilities';
2
+ import { MaybePromise, SubmitRequest, Transport, TransportResponse } from './core';
3
+ import { TransportCollection } from './middleware';
4
+ import { TransportHealthState } from './state';
5
+ export interface RoutingTransportOptions<TTransportId extends string = string> {
6
+ transports: Record<TTransportId, Transport>;
7
+ requiredCapabilities?: CapabilityRequirement;
8
+ selectTransport: (request: SubmitRequest, context: {
9
+ transportIds: readonly TTransportId[];
10
+ }) => MaybePromise<TTransportId>;
11
+ }
12
+ export interface WeightedRoutingTransportOptions<TTransportId extends string = string> {
13
+ transports: Record<TTransportId, Transport>;
14
+ requiredCapabilities?: CapabilityRequirement;
15
+ weights: Partial<Record<TTransportId, number>> | ((request: SubmitRequest, transportId: TTransportId) => MaybePromise<number>);
16
+ filter?: (transportId: TTransportId, request: SubmitRequest) => MaybePromise<boolean>;
17
+ }
18
+ export interface FanoutTransportResult<TTransportId extends string = string> {
19
+ id: TTransportId | undefined;
20
+ index: number;
21
+ response: TransportResponse;
22
+ }
23
+ export interface FanoutTransportFailure<TTransportId extends string = string> {
24
+ id: TTransportId | undefined;
25
+ index: number;
26
+ error: unknown;
27
+ }
28
+ export interface FanoutTransportOptions<TTransportId extends string = string> {
29
+ transports: TransportCollection<TTransportId>;
30
+ requiredCapabilities?: CapabilityRequirement;
31
+ filter?: (transportId: string, request: SubmitRequest) => MaybePromise<boolean>;
32
+ transformRequest?: (transportId: string, request: SubmitRequest) => MaybePromise<SubmitRequest>;
33
+ failurePolicy?: "fail-all" | "partial-success";
34
+ abortPolicy?: "wait-all" | "abort-pending-on-first-failure" | "abort-pending-on-first-success";
35
+ merge?: (context: {
36
+ request: SubmitRequest;
37
+ results: readonly FanoutTransportResult<TTransportId>[];
38
+ failures: readonly FanoutTransportFailure<TTransportId>[];
39
+ }) => MaybePromise<unknown>;
40
+ }
41
+ export interface FallbackTransportFailure<TTransportId extends string = string> {
42
+ id: TTransportId | undefined;
43
+ index: number;
44
+ error: unknown;
45
+ }
46
+ export interface FallbackTransportOptions<TTransportId extends string = string> {
47
+ transports: TransportCollection<TTransportId>;
48
+ shouldFallback?: (error: unknown, context: {
49
+ request: SubmitRequest;
50
+ id: TTransportId | undefined;
51
+ index: number;
52
+ failures: readonly FallbackTransportFailure<TTransportId>[];
53
+ }) => MaybePromise<boolean>;
54
+ }
55
+ export interface PipelineStage {
56
+ id?: string;
57
+ transport: Transport;
58
+ mapToNext?: (response: unknown, originalRequest: SubmitRequest) => MaybePromise<SubmitRequest>;
59
+ nextStageRequirements?: CapabilityRequirement;
60
+ }
61
+ export interface PipelineTransportOptions {
62
+ stages: readonly PipelineStage[];
63
+ }
64
+ export interface RacingTransportOptions {
65
+ transports: TransportCollection;
66
+ }
67
+ export interface HedgedTransportOptions<TTransportId extends string = string> {
68
+ transports: Record<TTransportId, Transport>;
69
+ hedgeDelayMs: number;
70
+ maxAttempts?: number;
71
+ allowUnsafeHedging?: boolean;
72
+ }
73
+ export interface QuorumFanoutTransportOptions<TTransportId extends string = string> extends FanoutTransportOptions<TTransportId> {
74
+ quorum: number;
75
+ }
76
+ export interface LoadBalancingTransportOptions<TTransportId extends string = string> {
77
+ transports: Record<TTransportId, Transport>;
78
+ requiredCapabilities?: CapabilityRequirement;
79
+ strategy?: "round-robin" | "least-loaded" | "random" | "weighted" | "health-weighted";
80
+ weights: Partial<Record<TTransportId, number>> | ((request: SubmitRequest, transportId: TTransportId) => MaybePromise<number>);
81
+ healthState?: TransportHealthState<TTransportId>;
82
+ }
@@ -0,0 +1,3 @@
1
+ export type { JsonTransportMethod, JsonTransportOptions, GraphqlTransportOptions, SseTransportOptions, WebSocketSessionTransportOptions, GrpcUnaryTransportOptions, GrpcStreamTransportOptions, GrpcSessionTransportOptions, GrpcTransportOptions, } from './options-http';
2
+ export type { RoutingTransportOptions, WeightedRoutingTransportOptions, FanoutTransportResult, FanoutTransportFailure, FanoutTransportOptions, FallbackTransportFailure, FallbackTransportOptions, PipelineStage, PipelineTransportOptions, RacingTransportOptions, HedgedTransportOptions, QuorumFanoutTransportOptions, LoadBalancingTransportOptions, } from './options-routing';
3
+ export type { SessionTransportOptions, RetryOptions, ApiKeyAuthOptions, BearerAuthOptions, CustomAuthOptions, TransportContextAuthOptions, AuthOptions, CircuitBreakerOptions, RateLimitOptions, DedupOptions, CacheOptions, TransportTraceOptions, TransportTelemetryEvent, TransportMetricsOptions, TransportLogOptions, TransportContextPolicy, } from './options-middleware';
@@ -0,0 +1,29 @@
1
+ //#region src/shared/object.ts
2
+ var e = (e) => typeof e == "object" && !!e && !Array.isArray(e), t = (e) => typeof e == "object" && !!e || typeof e == "function", n = (e) => t(e) && "then" in e && typeof e.then == "function", r = (e) => e == null ? !0 : typeof e == "string" ? e.trim() === "" : Array.isArray(e) ? e.length === 0 : e instanceof Date ? Number.isNaN(e.getTime()) : !1, i = (e) => {
3
+ if (e instanceof Date) return Number.isNaN(e.getTime()) ? null : e;
4
+ if (typeof e == "string" || typeof e == "number") {
5
+ let t = new Date(e);
6
+ return Number.isNaN(t.getTime()) ? null : t;
7
+ }
8
+ return null;
9
+ }, a = (e) => e, o = (e) => {
10
+ let t = typeof ArrayBuffer < "u" && ArrayBuffer.isView(e), n = typeof ArrayBuffer < "u" && e instanceof ArrayBuffer || typeof SharedArrayBuffer < "u" && e instanceof SharedArrayBuffer, r = typeof Blob < "u" && e instanceof Blob || typeof File < "u" && e instanceof File;
11
+ if (e !== null && (typeof e == "object" || typeof e == "function") && !t && !n && !r && !Object.isFrozen(e)) {
12
+ Object.freeze(e);
13
+ for (let t of Object.values(e)) o(t);
14
+ }
15
+ return e;
16
+ }, s = (e, t) => e <= 0 ? Promise.resolve() : new Promise((n, r) => {
17
+ let i = setTimeout(() => {
18
+ t?.removeEventListener("abort", a), n();
19
+ }, e), a = () => {
20
+ clearTimeout(i), r(t?.reason ?? /* @__PURE__ */ Error("Operation aborted."));
21
+ };
22
+ if (t?.aborted) {
23
+ a();
24
+ return;
25
+ }
26
+ t?.addEventListener("abort", a, { once: !0 });
27
+ });
28
+ //#endregion
29
+ export { n as a, r as i, s as n, i as o, a as r, e as s, o as t };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mlform",
3
- "version": "0.1.7",
3
+ "version": "0.1.9",
4
4
  "private": false,
5
5
  "description": "Composable form generation utilities for machine learning backend integration",
6
6
  "keywords": [
@@ -60,9 +60,25 @@
60
60
  "types": "./dist/types/src/kit/index.d.ts",
61
61
  "import": "./dist/mlform/kit.mjs"
62
62
  },
63
- "./engine": {
64
- "types": "./dist/types/src/engine/index.d.ts",
65
- "import": "./dist/mlform/engine.mjs"
63
+ "./runtime": {
64
+ "types": "./dist/types/src/runtime/index.d.ts",
65
+ "import": "./dist/mlform/runtime.mjs"
66
+ },
67
+ "./schema": {
68
+ "types": "./dist/types/src/schema/index.d.ts",
69
+ "import": "./dist/mlform/schema.mjs"
70
+ },
71
+ "./presentation": {
72
+ "types": "./dist/types/src/presentation/index.d.ts",
73
+ "import": "./dist/mlform/presentation.mjs"
74
+ },
75
+ "./builtins-ml": {
76
+ "types": "./dist/types/src/builtins-ml/index.d.ts",
77
+ "import": "./dist/mlform/builtins-ml.mjs"
78
+ },
79
+ "./behaviors": {
80
+ "types": "./dist/types/src/behaviors/index.d.ts",
81
+ "import": "./dist/mlform/behaviors.mjs"
66
82
  },
67
83
  "./transport": {
68
84
  "types": "./dist/types/src/transport/index.d.ts",
@@ -75,10 +91,6 @@
75
91
  "./design-system": {
76
92
  "types": "./dist/types/src/design-system/index.d.ts",
77
93
  "import": "./dist/mlform/design-system.mjs"
78
- },
79
- "./questionnaire": {
80
- "types": "./dist/types/src/questionnaire/index.d.ts",
81
- "import": "./dist/mlform/questionnaire.mjs"
82
94
  }
83
95
  },
84
96
  "publishConfig": {
@@ -86,15 +98,15 @@
86
98
  "registry": "https://registry.npmjs.org/"
87
99
  },
88
100
  "dependencies": {
89
- "lit": "3.3.2",
90
- "zod": "4.3.6"
101
+ "lit": "3.3.3",
102
+ "zod": "4.4.3"
91
103
  },
92
104
  "devDependencies": {
93
- "@types/node": "^25.5.2",
94
- "jsdom": "^29.0.2",
95
- "typescript": "~6.0.2",
105
+ "@types/node": "^25.8.0",
106
+ "jsdom": "^29.1.1",
107
+ "typescript": "~6.0.3",
96
108
  "vite": "npm:@voidzero-dev/vite-plus-core@latest",
97
- "vite-plugin-dts": "^4.5.4",
109
+ "vite-plugin-dts": "^5.0.0",
98
110
  "vite-plus": "latest",
99
111
  "vitest": "npm:@voidzero-dev/vite-plus-test@latest"
100
112
  },