@astrale-os/kernel-dsl 0.2.0-beta.2 → 0.2.0-beta.20

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 (738) hide show
  1. package/CHANGELOG.md +240 -0
  2. package/dist/index.d.ts +0 -1
  3. package/dist/index.js +0 -1
  4. package/dist/upgrade/contract.d.ts +0 -1
  5. package/dist/upgrade/contract.js +0 -1
  6. package/dist/upgrade/index.d.ts +0 -1
  7. package/dist/upgrade/index.js +0 -1
  8. package/dist/v1/addressing/class-key.d.ts +12 -0
  9. package/dist/v1/addressing/class-key.js +39 -0
  10. package/dist/v1/addressing/definition-ref.d.ts +28 -0
  11. package/dist/v1/addressing/definition-ref.js +63 -0
  12. package/dist/v1/addressing/domain-dependency.d.ts +18 -0
  13. package/dist/v1/addressing/domain-dependency.js +6 -0
  14. package/dist/v1/addressing/index.d.ts +10 -4
  15. package/dist/v1/addressing/index.js +5 -3
  16. package/dist/v1/addressing/key.d.ts +14 -16
  17. package/dist/v1/addressing/key.js +24 -34
  18. package/dist/v1/addressing/method-address.d.ts +9 -0
  19. package/dist/v1/addressing/method-address.js +1 -0
  20. package/dist/v1/addressing/method-key.d.ts +15 -0
  21. package/dist/v1/addressing/method-key.js +60 -0
  22. package/dist/v1/addressing/ordering.d.ts +6 -0
  23. package/dist/v1/addressing/ordering.js +20 -0
  24. package/dist/v1/addressing/patterns.d.ts +12 -3
  25. package/dist/v1/addressing/patterns.js +11 -2
  26. package/dist/v1/addressing/property-key.d.ts +10 -15
  27. package/dist/v1/addressing/property-key.js +24 -15
  28. package/dist/v1/addressing/revision.d.ts +8 -0
  29. package/dist/v1/addressing/revision.js +8 -0
  30. package/dist/v1/builder/callable/authoring.d.ts +117 -0
  31. package/dist/v1/builder/{callable.js → callable/authoring.js} +28 -7
  32. package/dist/v1/builder/class/authoring.d.ts +378 -0
  33. package/dist/v1/builder/class/authoring.js +134 -0
  34. package/dist/v1/builder/class/property.d.ts +58 -0
  35. package/dist/v1/builder/class/property.js +57 -0
  36. package/dist/v1/builder/core/authoring.d.ts +42 -0
  37. package/dist/v1/builder/core/authoring.js +39 -0
  38. package/dist/v1/builder/index.d.ts +26 -22
  39. package/dist/v1/builder/index.js +11 -11
  40. package/dist/v1/builder/lowering/callable.d.ts +24 -0
  41. package/dist/v1/builder/{compiler → lowering}/callable.js +11 -14
  42. package/dist/v1/builder/lowering/class.d.ts +22 -0
  43. package/dist/v1/builder/lowering/class.js +134 -0
  44. package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
  45. package/dist/v1/builder/{compiler/core.properties.js → lowering/core-properties.js} +14 -8
  46. package/dist/v1/builder/lowering/core.d.ts +22 -0
  47. package/dist/v1/builder/{compiler → lowering}/core.js +17 -11
  48. package/dist/v1/builder/lowering/policy.d.ts +16 -0
  49. package/dist/v1/builder/{compiler → lowering}/policy.js +19 -14
  50. package/dist/v1/builder/{compiler/schema.capture.d.ts → lowering/schema/capture.d.ts} +2 -3
  51. package/dist/v1/builder/lowering/schema/capture.js +70 -0
  52. package/dist/v1/builder/{compiler/schema.d.ts → lowering/schema/compile.d.ts} +4 -4
  53. package/dist/v1/builder/{compiler/schema.js → lowering/schema/compile.js} +34 -44
  54. package/dist/v1/builder/lowering/schema/context.d.ts +44 -0
  55. package/dist/v1/builder/{compiler/schema.context.js → lowering/schema/context.js} +66 -74
  56. package/dist/v1/builder/{compiler/schema.ownership.d.ts → lowering/schema/ownership.d.ts} +1 -2
  57. package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +1 -2
  58. package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
  59. package/dist/v1/builder/{compiler/value.js → lowering/value/compile.js} +44 -61
  60. package/dist/v1/builder/lowering/value/path.d.ts +3 -0
  61. package/dist/v1/builder/{compiler/value.path.js → lowering/value/path.js} +1 -2
  62. package/dist/v1/builder/{compiler/value.zod.d.ts → lowering/value/zod.d.ts} +8 -9
  63. package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +10 -11
  64. package/dist/v1/builder/lowering/view.d.ts +11 -0
  65. package/dist/v1/builder/{compiler → lowering}/view.js +7 -7
  66. package/dist/v1/builder/{policy.d.ts → policy/authoring.d.ts} +19 -17
  67. package/dist/v1/builder/{policy.js → policy/authoring.js} +23 -12
  68. package/dist/v1/builder/schema/define.d.ts +11 -0
  69. package/dist/v1/builder/{schema.js → schema/define.js} +1 -2
  70. package/dist/v1/builder/schema/diagnostic.d.ts +16 -0
  71. package/dist/v1/builder/schema/diagnostic.js +31 -0
  72. package/dist/v1/builder/{internal/authoring.d.ts → schema/handle.d.ts} +1 -2
  73. package/dist/v1/builder/{internal/authoring.js → schema/handle.js} +0 -1
  74. package/dist/v1/builder/schema/input.d.ts +15 -0
  75. package/dist/v1/builder/schema/input.js +1 -0
  76. package/dist/v1/builder/{internal/authoring.lazy.d.ts → schema/lazy.d.ts} +0 -1
  77. package/dist/v1/builder/{internal/authoring.lazy.js → schema/lazy.js} +0 -1
  78. package/dist/v1/builder/schema/projection.d.ts +370 -0
  79. package/dist/v1/builder/schema/projection.js +1 -0
  80. package/dist/v1/builder/value/full-match.d.ts +4 -0
  81. package/dist/v1/builder/value/full-match.js +11 -0
  82. package/dist/v1/builder/value/path-metadata.d.ts +4 -0
  83. package/dist/v1/builder/{internal/path.metadata.js → value/path-metadata.js} +0 -1
  84. package/dist/v1/builder/value/path.d.ts +8 -0
  85. package/dist/v1/builder/{path.js → value/path.js} +4 -5
  86. package/dist/v1/builder/{value-schema.d.ts → value/schema.d.ts} +2 -3
  87. package/dist/v1/builder/{value-schema.js → value/schema.js} +0 -1
  88. package/dist/v1/builder/view/authoring.d.ts +17 -0
  89. package/dist/v1/builder/view/authoring.js +16 -0
  90. package/dist/v1/bundle/codec.d.ts +0 -1
  91. package/dist/v1/bundle/codec.js +36 -19
  92. package/dist/v1/bundle/create.d.ts +3 -0
  93. package/dist/v1/bundle/create.js +5 -0
  94. package/dist/v1/bundle/diagnostic.d.ts +10 -0
  95. package/dist/v1/bundle/diagnostic.js +17 -0
  96. package/dist/v1/bundle/index.d.ts +3 -2
  97. package/dist/v1/bundle/index.js +2 -2
  98. package/dist/v1/bundle/model.d.ts +1 -4
  99. package/dist/v1/bundle/model.js +0 -6
  100. package/dist/v1/bundle/structure.d.ts +1 -2
  101. package/dist/v1/bundle/structure.js +6 -6
  102. package/dist/v1/bundle/transport.d.ts +8 -0
  103. package/dist/v1/bundle/transport.js +7 -0
  104. package/dist/v1/compiled/admission/accept.d.ts +3 -0
  105. package/dist/v1/compiled/admission/accept.js +910 -0
  106. package/dist/v1/compiled/admission/revision.d.ts +4 -0
  107. package/dist/v1/compiled/admission/revision.js +73 -0
  108. package/dist/v1/compiled/admission/semantics.d.ts +7 -0
  109. package/dist/v1/compiled/admission/semantics.js +1114 -0
  110. package/dist/v1/compiled/codec/json.d.ts +3 -0
  111. package/dist/v1/compiled/codec/json.js +9 -0
  112. package/dist/v1/compiled/compiler/compile.d.ts +4 -0
  113. package/dist/v1/compiled/compiler/compile.js +113 -0
  114. package/dist/v1/compiled/diagnostic.d.ts +11 -0
  115. package/dist/v1/compiled/diagnostic.js +13 -0
  116. package/dist/v1/compiled/generated.d.ts +10 -0
  117. package/dist/v1/compiled/generated.js +15 -0
  118. package/dist/v1/compiled/index.d.ts +7 -0
  119. package/dist/v1/compiled/index.js +5 -0
  120. package/dist/v1/compiled/loader/index.d.ts +1 -0
  121. package/dist/v1/compiled/loader/index.js +1 -0
  122. package/dist/v1/compiled/loader/load.d.ts +9 -0
  123. package/dist/v1/compiled/loader/load.js +147 -0
  124. package/dist/v1/compiled/model/schema.d.ts +73 -0
  125. package/dist/v1/compiled/model/schema.js +1 -0
  126. package/dist/v1/domain/create.d.ts +8 -0
  127. package/dist/v1/domain/create.js +264 -0
  128. package/dist/v1/domain/index.d.ts +2 -0
  129. package/dist/v1/domain/index.js +1 -0
  130. package/dist/v1/domain/model/domain.d.ts +59 -0
  131. package/dist/v1/domain/model/domain.js +1 -0
  132. package/dist/v1/domain/model/input.d.ts +31 -0
  133. package/dist/v1/domain/model/input.js +1 -0
  134. package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
  135. package/dist/v1/domain/namespace/member-collection.js +81 -0
  136. package/dist/v1/domain/projection/classes.d.ts +4 -0
  137. package/dist/v1/domain/projection/classes.js +198 -0
  138. package/dist/v1/domain/validation/create.d.ts +18 -0
  139. package/dist/v1/domain/validation/create.js +75 -0
  140. package/dist/v1/index.d.ts +14 -5
  141. package/dist/v1/index.js +6 -3
  142. package/dist/v1/language/callable/index.d.ts +2 -0
  143. package/dist/v1/language/callable/index.js +1 -0
  144. package/dist/v1/language/callable/model/callable.d.ts +33 -0
  145. package/dist/v1/language/callable/model/callable.js +1 -0
  146. package/dist/v1/language/callable/resolved.d.ts +68 -0
  147. package/dist/v1/language/callable/resolved.js +1 -0
  148. package/dist/v1/language/class/facets.d.ts +58 -0
  149. package/dist/v1/language/class/facets.js +1 -0
  150. package/dist/v1/language/class/index.d.ts +8 -0
  151. package/dist/v1/language/class/index.js +1 -0
  152. package/dist/v1/language/class/model/class.d.ts +37 -0
  153. package/dist/v1/language/class/model/class.js +1 -0
  154. package/dist/v1/{schema/definition → language/class/model}/data.d.ts +2 -3
  155. package/dist/v1/{schema/definition → language/class/model}/data.js +0 -1
  156. package/dist/v1/{schema/definition → language/class/model}/edge.d.ts +9 -6
  157. package/dist/v1/language/class/model/edge.js +1 -0
  158. package/dist/v1/language/class/model/property.d.ts +17 -0
  159. package/dist/v1/language/class/model/property.js +1 -0
  160. package/dist/v1/language/class/property-values.d.ts +15 -0
  161. package/dist/v1/language/class/property-values.js +30 -0
  162. package/dist/v1/language/class/resolved.d.ts +126 -0
  163. package/dist/v1/language/class/resolved.js +1 -0
  164. package/dist/v1/language/core/index.d.ts +2 -0
  165. package/dist/v1/language/core/index.js +1 -0
  166. package/dist/v1/language/core/model/core.d.ts +20 -0
  167. package/dist/v1/language/core/model/core.js +1 -0
  168. package/dist/v1/language/core/resolved.d.ts +21 -0
  169. package/dist/v1/language/core/resolved.js +1 -0
  170. package/dist/v1/{schema → language/definition}/metadata.d.ts +0 -1
  171. package/dist/v1/{schema → language/definition}/metadata.js +0 -1
  172. package/dist/v1/language/definition.d.ts +7 -0
  173. package/dist/v1/language/definition.js +1 -0
  174. package/dist/v1/language/index.d.ts +25 -0
  175. package/dist/v1/language/index.js +2 -0
  176. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +2 -4
  177. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +14 -30
  178. package/dist/v1/{schema/policy/validation → language/policy/analysis}/budgets.d.ts +1 -4
  179. package/dist/v1/language/policy/analysis/budgets.js +25 -0
  180. package/dist/v1/language/policy/index.d.ts +3 -0
  181. package/dist/v1/language/policy/index.js +1 -0
  182. package/dist/v1/{schema/policy/ast.d.ts → language/policy/model/policy.d.ts} +7 -7
  183. package/dist/v1/language/policy/model/policy.js +1 -0
  184. package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
  185. package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +12 -16
  186. package/dist/v1/language/policy/resolved.d.ts +9 -0
  187. package/dist/v1/language/policy/resolved.js +1 -0
  188. package/dist/v1/language/resolved.d.ts +10 -0
  189. package/dist/v1/language/resolved.js +1 -0
  190. package/dist/v1/language/state/index.d.ts +3 -0
  191. package/dist/v1/language/state/index.js +1 -0
  192. package/dist/v1/language/state/machine.d.ts +28 -0
  193. package/dist/v1/language/state/machine.js +40 -0
  194. package/dist/v1/language/state/topology.d.ts +14 -0
  195. package/dist/v1/language/state/topology.js +69 -0
  196. package/dist/v1/language/validation/diagnostic.d.ts +8 -0
  197. package/dist/v1/language/validation/diagnostic.js +3 -0
  198. package/dist/v1/language/value/compile/fields.d.ts +3 -0
  199. package/dist/v1/language/value/compile/fields.js +60 -0
  200. package/dist/v1/language/value/compile/load.d.ts +4 -0
  201. package/dist/v1/language/value/compile/load.js +41 -0
  202. package/dist/v1/language/value/compile/model.d.ts +27 -0
  203. package/dist/v1/language/value/compile/model.js +1 -0
  204. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.d.ts +0 -1
  205. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.js +1 -2
  206. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.d.ts +0 -1
  207. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.js +6 -18
  208. package/dist/v1/{schema/value/instance/compiler.d.ts → language/value/evaluate/preparation.d.ts} +4 -4
  209. package/dist/v1/language/value/evaluate/preparation.js +135 -0
  210. package/dist/v1/language/value/evaluate/program.d.ts +3 -0
  211. package/dist/v1/language/value/evaluate/program.js +16 -0
  212. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.d.ts +8 -5
  213. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.js +0 -1
  214. package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts} +4 -5
  215. package/dist/v1/{schema/value/instance.validate.js → language/value/evaluate/validate.js} +5 -6
  216. package/dist/v1/language/value/index.d.ts +11 -0
  217. package/dist/v1/language/value/index.js +8 -0
  218. package/dist/v1/{schema/value → language/value/model}/instant.d.ts +1 -1
  219. package/dist/v1/{schema/value → language/value/model}/instant.js +1 -1
  220. package/dist/v1/{schema/value → language/value/model}/object.d.ts +1 -1
  221. package/dist/v1/{schema/value → language/value/model}/object.js +0 -1
  222. package/dist/v1/{schema/value → language/value/model}/schema.d.ts +3 -4
  223. package/dist/v1/{schema/value → language/value/model}/schema.js +0 -2
  224. package/dist/v1/{schema → language}/value/ordering.d.ts +5 -3
  225. package/dist/v1/{schema → language}/value/ordering.js +16 -14
  226. package/dist/v1/{schema → language}/value/profile/canonicalize.d.ts +2 -3
  227. package/dist/v1/{schema → language}/value/profile/canonicalize.js +4 -7
  228. package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
  229. package/dist/v1/{schema → language}/value/profile/json.validate.js +1 -2
  230. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.d.ts +0 -1
  231. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.js +1 -2
  232. package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
  233. package/dist/v1/{schema/value/profile/meta-schema.validate.js → language/value/profile/meta-schema.js} +2 -2
  234. package/dist/v1/language/value/profile/rules.d.ts +3 -0
  235. package/dist/v1/{schema → language}/value/profile/rules.js +7 -50
  236. package/dist/v1/language/value/profile/validate.d.ts +4 -0
  237. package/dist/v1/{schema → language}/value/profile/validate.js +14 -22
  238. package/dist/v1/{schema → language}/value/profile/vocabulary.d.ts +0 -1
  239. package/dist/v1/{schema → language}/value/profile/vocabulary.js +0 -1
  240. package/dist/v1/language/value/reference/closure.d.ts +11 -0
  241. package/dist/v1/{schema/value/resources → language/value/reference}/closure.js +13 -21
  242. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.d.ts +3 -4
  243. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.js +5 -6
  244. package/dist/v1/language/value/reference/references.d.ts +17 -0
  245. package/dist/v1/language/value/reference/references.js +45 -0
  246. package/dist/v1/{schema/value → language/value/reference}/registry.d.ts +9 -7
  247. package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
  248. package/dist/v1/{schema/value/resources → language/value/reference}/registry.index.js +7 -45
  249. package/dist/v1/language/value/reference/registry.js +1 -0
  250. package/dist/v1/language/value/regexp/ast.d.ts +21 -0
  251. package/dist/v1/language/value/regexp/ast.js +326 -0
  252. package/dist/v1/language/value/regexp/compile.d.ts +3 -0
  253. package/dist/v1/language/value/regexp/compile.js +96 -0
  254. package/dist/v1/{schema → language}/value/regexp/lower.d.ts +1 -2
  255. package/dist/v1/{schema → language}/value/regexp/lower.js +2 -3
  256. package/dist/v1/language/value/regexp/matcher.d.ts +7 -0
  257. package/dist/v1/language/value/regexp/matcher.js +50 -0
  258. package/dist/v1/{schema → language}/value/regexp/pattern.d.ts +0 -1
  259. package/dist/v1/{schema → language}/value/regexp/pattern.js +0 -1
  260. package/dist/v1/language/value/regexp/syntax.d.ts +2 -0
  261. package/dist/v1/language/value/regexp/syntax.js +5 -0
  262. package/dist/v1/language/value/syntax/full-match.d.ts +6 -0
  263. package/dist/v1/language/value/syntax/full-match.js +20 -0
  264. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.d.ts +0 -1
  265. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.js +0 -1
  266. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.d.ts +1 -2
  267. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.js +2 -3
  268. package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
  269. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/validate.js +16 -18
  270. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.d.ts +0 -1
  271. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.js +1 -2
  272. package/dist/v1/{schema/value/location → language/value/syntax}/walk.d.ts +1 -2
  273. package/dist/v1/{schema/value/location → language/value/syntax}/walk.js +1 -2
  274. package/dist/v1/language/view/index.d.ts +2 -0
  275. package/dist/v1/language/view/index.js +1 -0
  276. package/dist/v1/language/view/model/view.d.ts +11 -0
  277. package/dist/v1/language/view/model/view.js +1 -0
  278. package/dist/v1/language/view/resolved.d.ts +9 -0
  279. package/dist/v1/language/view/resolved.js +1 -0
  280. package/dist/v1/schema/admission/accept.d.ts +3 -0
  281. package/dist/v1/schema/{domain.accept.js → admission/accept.js} +8 -9
  282. package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +17 -18
  283. package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -30
  284. package/dist/v1/schema/canonical/domain.d.ts +2 -2
  285. package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
  286. package/dist/v1/schema/canonical/domain.digest.js +2 -6
  287. package/dist/v1/schema/canonical/domain.js +3 -224
  288. package/dist/v1/schema/canonical/freeze.d.ts +0 -1
  289. package/dist/v1/schema/canonical/freeze.js +0 -1
  290. package/dist/v1/schema/{domain.revision.d.ts → canonical/revision.d.ts} +2 -3
  291. package/dist/v1/schema/{domain.revision.js → canonical/revision.js} +3 -4
  292. package/dist/v1/schema/codec/header.d.ts +17 -0
  293. package/dist/v1/schema/codec/header.js +26 -0
  294. package/dist/v1/schema/{domain.codec.d.ts → codec/schema.d.ts} +2 -3
  295. package/dist/v1/schema/{domain.codec.js → codec/schema.js} +4 -5
  296. package/dist/v1/schema/{dependency.meaning.d.ts → compatibility/meaning.d.ts} +4 -5
  297. package/dist/v1/schema/{dependency.meaning.js → compatibility/meaning.js} +121 -124
  298. package/dist/v1/schema/{domain.lookup.d.ts → dependency/lookup.d.ts} +3 -4
  299. package/dist/v1/schema/{domain.lookup.js → dependency/lookup.js} +1 -2
  300. package/dist/v1/schema/diagnostic.d.ts +7 -7
  301. package/dist/v1/schema/diagnostic.js +9 -9
  302. package/dist/v1/schema/index.d.ts +24 -34
  303. package/dist/v1/schema/index.js +11 -14
  304. package/dist/v1/schema/model/format.d.ts +2 -0
  305. package/dist/v1/schema/model/format.js +2 -0
  306. package/dist/v1/schema/model/schema.d.ts +30 -0
  307. package/dist/v1/schema/model/schema.js +4 -0
  308. package/dist/v1/schema/normalization/domain.d.ts +2 -0
  309. package/dist/v1/schema/normalization/domain.js +210 -0
  310. package/dist/v1/schema/resolution/closure.d.ts +3 -4
  311. package/dist/v1/schema/resolution/closure.js +6 -7
  312. package/dist/v1/schema/resolution/context.d.ts +11 -12
  313. package/dist/v1/schema/resolution/context.js +82 -50
  314. package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
  315. package/dist/v1/schema/resolution/definition.index.js +8 -18
  316. package/dist/v1/schema/resolution/domain.d.ts +4 -0
  317. package/dist/v1/schema/resolution/domain.js +112 -0
  318. package/dist/v1/schema/resolution/origins.d.ts +11 -14
  319. package/dist/v1/schema/resolution/origins.js +31 -44
  320. package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
  321. package/dist/v1/schema/resolution/value.registry.js +7 -14
  322. package/dist/v1/schema/revision.d.ts +1 -0
  323. package/dist/v1/schema/revision.js +1 -0
  324. package/dist/v1/schema/validation/class.d.ts +5 -0
  325. package/dist/v1/schema/validation/class.js +257 -0
  326. package/dist/v1/schema/validation/core.d.ts +5 -0
  327. package/dist/v1/schema/{core/validate.js → validation/core.js} +39 -30
  328. package/dist/v1/schema/validation/domain.d.ts +11 -0
  329. package/dist/v1/schema/{domain.validate.js → validation/domain.js} +12 -12
  330. package/dist/v1/schema/validation/domain.route.d.ts +1 -2
  331. package/dist/v1/schema/validation/domain.route.js +3 -4
  332. package/dist/v1/schema/validation/domain.structure.d.ts +3 -4
  333. package/dist/v1/schema/validation/domain.structure.js +203 -207
  334. package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
  335. package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +2 -32
  336. package/dist/v1/schema/validation/policy/context.d.ts +28 -0
  337. package/dist/v1/schema/{policy/validation → validation/policy}/context.js +23 -33
  338. package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
  339. package/dist/v1/schema/{policy/validation → validation/policy}/references.js +18 -11
  340. package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
  341. package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +25 -67
  342. package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
  343. package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +27 -63
  344. package/dist/v1/schema/{policy/validation → validation/policy}/validate.d.ts +3 -4
  345. package/dist/v1/schema/{policy/validation → validation/policy}/validate.js +0 -1
  346. package/dist/v1/schema/{value/index.d.ts → validation/value-api.d.ts} +9 -10
  347. package/dist/v1/schema/{value/index.js → validation/value-api.js} +4 -5
  348. package/dist/v1/schema/validation/value.d.ts +4 -5
  349. package/dist/v1/schema/validation/value.js +4 -9
  350. package/dist/v1/schema/validation/view.d.ts +3 -0
  351. package/dist/v1/schema/{view/validate.js → validation/view.js} +11 -4
  352. package/dist/v1/value/full-match.d.ts +2 -0
  353. package/dist/v1/value/full-match.js +2 -0
  354. package/dist/v1.d.ts +1 -2
  355. package/dist/v1.js +1 -2
  356. package/dist/value/accept.d.ts +0 -1
  357. package/dist/value/accept.js +0 -1
  358. package/dist/value/canonical.d.ts +0 -1
  359. package/dist/value/canonical.js +0 -1
  360. package/dist/value/decode.d.ts +0 -1
  361. package/dist/value/decode.js +0 -1
  362. package/dist/value/equal.d.ts +0 -1
  363. package/dist/value/equal.js +0 -1
  364. package/dist/value/error.d.ts +0 -1
  365. package/dist/value/error.js +0 -1
  366. package/dist/value/index.d.ts +0 -1
  367. package/dist/value/index.js +0 -1
  368. package/dist/value/json.d.ts +0 -1
  369. package/dist/value/json.js +0 -1
  370. package/dist/value/limits.d.ts +0 -1
  371. package/dist/value/limits.js +0 -1
  372. package/dist/value/types.d.ts +0 -1
  373. package/dist/value/types.js +0 -1
  374. package/dist/value/unicode.d.ts +0 -1
  375. package/dist/value/unicode.js +0 -1
  376. package/dist/version/dispatch.d.ts +0 -1
  377. package/dist/version/dispatch.js +0 -1
  378. package/dist/version/index.d.ts +0 -1
  379. package/dist/version/index.js +0 -1
  380. package/package.json +69 -13
  381. package/dist/index.d.ts.map +0 -1
  382. package/dist/index.js.map +0 -1
  383. package/dist/upgrade/contract.d.ts.map +0 -1
  384. package/dist/upgrade/contract.js.map +0 -1
  385. package/dist/upgrade/index.d.ts.map +0 -1
  386. package/dist/upgrade/index.js.map +0 -1
  387. package/dist/v1/addressing/index.d.ts.map +0 -1
  388. package/dist/v1/addressing/index.js.map +0 -1
  389. package/dist/v1/addressing/key.d.ts.map +0 -1
  390. package/dist/v1/addressing/key.js.map +0 -1
  391. package/dist/v1/addressing/patterns.d.ts.map +0 -1
  392. package/dist/v1/addressing/patterns.js.map +0 -1
  393. package/dist/v1/addressing/property-key.d.ts.map +0 -1
  394. package/dist/v1/addressing/property-key.js.map +0 -1
  395. package/dist/v1/addressing/ref.d.ts +0 -35
  396. package/dist/v1/addressing/ref.d.ts.map +0 -1
  397. package/dist/v1/addressing/ref.js +0 -94
  398. package/dist/v1/addressing/ref.js.map +0 -1
  399. package/dist/v1/addressing/schema-ref.d.ts +0 -8
  400. package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
  401. package/dist/v1/addressing/schema-ref.js +0 -2
  402. package/dist/v1/addressing/schema-ref.js.map +0 -1
  403. package/dist/v1/builder/callable.d.ts +0 -92
  404. package/dist/v1/builder/callable.d.ts.map +0 -1
  405. package/dist/v1/builder/callable.js.map +0 -1
  406. package/dist/v1/builder/compiler/callable.d.ts +0 -20
  407. package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
  408. package/dist/v1/builder/compiler/callable.js.map +0 -1
  409. package/dist/v1/builder/compiler/core.d.ts +0 -6
  410. package/dist/v1/builder/compiler/core.d.ts.map +0 -1
  411. package/dist/v1/builder/compiler/core.js.map +0 -1
  412. package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
  413. package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
  414. package/dist/v1/builder/compiler/core.properties.js.map +0 -1
  415. package/dist/v1/builder/compiler/definition.d.ts +0 -32
  416. package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
  417. package/dist/v1/builder/compiler/definition.js +0 -197
  418. package/dist/v1/builder/compiler/definition.js.map +0 -1
  419. package/dist/v1/builder/compiler/policy.d.ts +0 -17
  420. package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
  421. package/dist/v1/builder/compiler/policy.js.map +0 -1
  422. package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
  423. package/dist/v1/builder/compiler/schema.capture.js +0 -85
  424. package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
  425. package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
  426. package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
  427. package/dist/v1/builder/compiler/schema.context.js.map +0 -1
  428. package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
  429. package/dist/v1/builder/compiler/schema.js.map +0 -1
  430. package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
  431. package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
  432. package/dist/v1/builder/compiler/value.d.ts +0 -26
  433. package/dist/v1/builder/compiler/value.d.ts.map +0 -1
  434. package/dist/v1/builder/compiler/value.js.map +0 -1
  435. package/dist/v1/builder/compiler/value.path.d.ts +0 -4
  436. package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
  437. package/dist/v1/builder/compiler/value.path.js.map +0 -1
  438. package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
  439. package/dist/v1/builder/compiler/value.zod.js.map +0 -1
  440. package/dist/v1/builder/compiler/view.d.ts +0 -12
  441. package/dist/v1/builder/compiler/view.d.ts.map +0 -1
  442. package/dist/v1/builder/compiler/view.js.map +0 -1
  443. package/dist/v1/builder/core.d.ts +0 -27
  444. package/dist/v1/builder/core.d.ts.map +0 -1
  445. package/dist/v1/builder/core.js +0 -21
  446. package/dist/v1/builder/core.js.map +0 -1
  447. package/dist/v1/builder/definition.d.ts +0 -155
  448. package/dist/v1/builder/definition.d.ts.map +0 -1
  449. package/dist/v1/builder/definition.js +0 -141
  450. package/dist/v1/builder/definition.js.map +0 -1
  451. package/dist/v1/builder/full-match.d.ts +0 -12
  452. package/dist/v1/builder/full-match.d.ts.map +0 -1
  453. package/dist/v1/builder/full-match.js +0 -21
  454. package/dist/v1/builder/full-match.js.map +0 -1
  455. package/dist/v1/builder/index.d.ts.map +0 -1
  456. package/dist/v1/builder/index.js.map +0 -1
  457. package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
  458. package/dist/v1/builder/internal/authoring.js.map +0 -1
  459. package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
  460. package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
  461. package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
  462. package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
  463. package/dist/v1/builder/internal/diagnostic.js +0 -16
  464. package/dist/v1/builder/internal/diagnostic.js.map +0 -1
  465. package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
  466. package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
  467. package/dist/v1/builder/internal/path.metadata.js.map +0 -1
  468. package/dist/v1/builder/path.d.ts +0 -9
  469. package/dist/v1/builder/path.d.ts.map +0 -1
  470. package/dist/v1/builder/path.js.map +0 -1
  471. package/dist/v1/builder/policy.d.ts.map +0 -1
  472. package/dist/v1/builder/policy.js.map +0 -1
  473. package/dist/v1/builder/property.d.ts +0 -37
  474. package/dist/v1/builder/property.d.ts.map +0 -1
  475. package/dist/v1/builder/property.js +0 -36
  476. package/dist/v1/builder/property.js.map +0 -1
  477. package/dist/v1/builder/schema.d.ts +0 -6
  478. package/dist/v1/builder/schema.d.ts.map +0 -1
  479. package/dist/v1/builder/schema.input.d.ts +0 -19
  480. package/dist/v1/builder/schema.input.d.ts.map +0 -1
  481. package/dist/v1/builder/schema.input.js +0 -2
  482. package/dist/v1/builder/schema.input.js.map +0 -1
  483. package/dist/v1/builder/schema.js.map +0 -1
  484. package/dist/v1/builder/value-schema.d.ts.map +0 -1
  485. package/dist/v1/builder/value-schema.js.map +0 -1
  486. package/dist/v1/builder/view.d.ts +0 -19
  487. package/dist/v1/builder/view.d.ts.map +0 -1
  488. package/dist/v1/builder/view.js +0 -7
  489. package/dist/v1/builder/view.js.map +0 -1
  490. package/dist/v1/builder.d.ts +0 -3
  491. package/dist/v1/builder.d.ts.map +0 -1
  492. package/dist/v1/builder.js +0 -2
  493. package/dist/v1/builder.js.map +0 -1
  494. package/dist/v1/bundle/codec.d.ts.map +0 -1
  495. package/dist/v1/bundle/codec.js.map +0 -1
  496. package/dist/v1/bundle/index.d.ts.map +0 -1
  497. package/dist/v1/bundle/index.js.map +0 -1
  498. package/dist/v1/bundle/model.d.ts.map +0 -1
  499. package/dist/v1/bundle/model.js.map +0 -1
  500. package/dist/v1/bundle/structure.d.ts.map +0 -1
  501. package/dist/v1/bundle/structure.js.map +0 -1
  502. package/dist/v1/bundle.d.ts +0 -3
  503. package/dist/v1/bundle.d.ts.map +0 -1
  504. package/dist/v1/bundle.js +0 -3
  505. package/dist/v1/bundle.js.map +0 -1
  506. package/dist/v1/index.d.ts.map +0 -1
  507. package/dist/v1/index.js.map +0 -1
  508. package/dist/v1/schema/callable.d.ts +0 -29
  509. package/dist/v1/schema/callable.d.ts.map +0 -1
  510. package/dist/v1/schema/callable.js +0 -2
  511. package/dist/v1/schema/callable.js.map +0 -1
  512. package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
  513. package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
  514. package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
  515. package/dist/v1/schema/canonical/domain.js.map +0 -1
  516. package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
  517. package/dist/v1/schema/canonical/freeze.js.map +0 -1
  518. package/dist/v1/schema/core/declaration.d.ts +0 -17
  519. package/dist/v1/schema/core/declaration.d.ts.map +0 -1
  520. package/dist/v1/schema/core/declaration.js +0 -2
  521. package/dist/v1/schema/core/declaration.js.map +0 -1
  522. package/dist/v1/schema/core/validate.d.ts +0 -6
  523. package/dist/v1/schema/core/validate.d.ts.map +0 -1
  524. package/dist/v1/schema/core/validate.js.map +0 -1
  525. package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
  526. package/dist/v1/schema/definition/analysis.js.map +0 -1
  527. package/dist/v1/schema/definition/class.d.ts +0 -28
  528. package/dist/v1/schema/definition/class.d.ts.map +0 -1
  529. package/dist/v1/schema/definition/class.js +0 -2
  530. package/dist/v1/schema/definition/class.js.map +0 -1
  531. package/dist/v1/schema/definition/data.d.ts.map +0 -1
  532. package/dist/v1/schema/definition/data.js.map +0 -1
  533. package/dist/v1/schema/definition/edge.d.ts.map +0 -1
  534. package/dist/v1/schema/definition/edge.js +0 -2
  535. package/dist/v1/schema/definition/edge.js.map +0 -1
  536. package/dist/v1/schema/definition/interface.d.ts +0 -22
  537. package/dist/v1/schema/definition/interface.d.ts.map +0 -1
  538. package/dist/v1/schema/definition/interface.js +0 -2
  539. package/dist/v1/schema/definition/interface.js.map +0 -1
  540. package/dist/v1/schema/definition/property.d.ts +0 -18
  541. package/dist/v1/schema/definition/property.d.ts.map +0 -1
  542. package/dist/v1/schema/definition/property.js +0 -2
  543. package/dist/v1/schema/definition/property.js.map +0 -1
  544. package/dist/v1/schema/definition/validate.d.ts +0 -5
  545. package/dist/v1/schema/definition/validate.d.ts.map +0 -1
  546. package/dist/v1/schema/definition/validate.js +0 -221
  547. package/dist/v1/schema/definition/validate.js.map +0 -1
  548. package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
  549. package/dist/v1/schema/dependency.meaning.js.map +0 -1
  550. package/dist/v1/schema/diagnostic.d.ts.map +0 -1
  551. package/dist/v1/schema/diagnostic.js.map +0 -1
  552. package/dist/v1/schema/domain.accept.d.ts +0 -4
  553. package/dist/v1/schema/domain.accept.d.ts.map +0 -1
  554. package/dist/v1/schema/domain.accept.js.map +0 -1
  555. package/dist/v1/schema/domain.codec.d.ts.map +0 -1
  556. package/dist/v1/schema/domain.codec.js.map +0 -1
  557. package/dist/v1/schema/domain.header.d.ts +0 -15
  558. package/dist/v1/schema/domain.header.d.ts.map +0 -1
  559. package/dist/v1/schema/domain.header.js +0 -21
  560. package/dist/v1/schema/domain.header.js.map +0 -1
  561. package/dist/v1/schema/domain.ir.d.ts +0 -40
  562. package/dist/v1/schema/domain.ir.d.ts.map +0 -1
  563. package/dist/v1/schema/domain.ir.js +0 -5
  564. package/dist/v1/schema/domain.ir.js.map +0 -1
  565. package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
  566. package/dist/v1/schema/domain.lookup.js.map +0 -1
  567. package/dist/v1/schema/domain.resolve.d.ts +0 -26
  568. package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
  569. package/dist/v1/schema/domain.resolve.js +0 -43
  570. package/dist/v1/schema/domain.resolve.js.map +0 -1
  571. package/dist/v1/schema/domain.revision.d.ts.map +0 -1
  572. package/dist/v1/schema/domain.revision.js.map +0 -1
  573. package/dist/v1/schema/domain.validate.d.ts +0 -12
  574. package/dist/v1/schema/domain.validate.d.ts.map +0 -1
  575. package/dist/v1/schema/domain.validate.js.map +0 -1
  576. package/dist/v1/schema/index.d.ts.map +0 -1
  577. package/dist/v1/schema/index.js.map +0 -1
  578. package/dist/v1/schema/metadata.d.ts.map +0 -1
  579. package/dist/v1/schema/metadata.js.map +0 -1
  580. package/dist/v1/schema/policy/ast.d.ts.map +0 -1
  581. package/dist/v1/schema/policy/ast.js +0 -2
  582. package/dist/v1/schema/policy/ast.js.map +0 -1
  583. package/dist/v1/schema/policy/normalize.d.ts +0 -5
  584. package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
  585. package/dist/v1/schema/policy/normalize.js.map +0 -1
  586. package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
  587. package/dist/v1/schema/policy/validation/branches.js.map +0 -1
  588. package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
  589. package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
  590. package/dist/v1/schema/policy/validation/context.d.ts +0 -28
  591. package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
  592. package/dist/v1/schema/policy/validation/context.js.map +0 -1
  593. package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
  594. package/dist/v1/schema/policy/validation/references.js.map +0 -1
  595. package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
  596. package/dist/v1/schema/policy/validation/typing.js.map +0 -1
  597. package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
  598. package/dist/v1/schema/policy/validation/uses.js.map +0 -1
  599. package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
  600. package/dist/v1/schema/policy/validation/validate.js.map +0 -1
  601. package/dist/v1/schema/reference.d.ts +0 -43
  602. package/dist/v1/schema/reference.d.ts.map +0 -1
  603. package/dist/v1/schema/reference.js +0 -31
  604. package/dist/v1/schema/reference.js.map +0 -1
  605. package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
  606. package/dist/v1/schema/resolution/closure.js.map +0 -1
  607. package/dist/v1/schema/resolution/context.d.ts.map +0 -1
  608. package/dist/v1/schema/resolution/context.js.map +0 -1
  609. package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
  610. package/dist/v1/schema/resolution/definition.index.js.map +0 -1
  611. package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
  612. package/dist/v1/schema/resolution/origins.js.map +0 -1
  613. package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
  614. package/dist/v1/schema/resolution/value.registry.js.map +0 -1
  615. package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
  616. package/dist/v1/schema/validation/domain.route.js.map +0 -1
  617. package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
  618. package/dist/v1/schema/validation/domain.structure.js.map +0 -1
  619. package/dist/v1/schema/validation/value.d.ts.map +0 -1
  620. package/dist/v1/schema/validation/value.js.map +0 -1
  621. package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
  622. package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
  623. package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
  624. package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
  625. package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
  626. package/dist/v1/schema/value/index.d.ts.map +0 -1
  627. package/dist/v1/schema/value/index.js.map +0 -1
  628. package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
  629. package/dist/v1/schema/value/instance/assertions.js.map +0 -1
  630. package/dist/v1/schema/value/instance/compiler.d.ts.map +0 -1
  631. package/dist/v1/schema/value/instance/compiler.js +0 -69
  632. package/dist/v1/schema/value/instance/compiler.js.map +0 -1
  633. package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
  634. package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
  635. package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
  636. package/dist/v1/schema/value/instance/types.js.map +0 -1
  637. package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
  638. package/dist/v1/schema/value/instance.validate.js.map +0 -1
  639. package/dist/v1/schema/value/instant.d.ts.map +0 -1
  640. package/dist/v1/schema/value/instant.js.map +0 -1
  641. package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
  642. package/dist/v1/schema/value/location/keywords.js.map +0 -1
  643. package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
  644. package/dist/v1/schema/value/location/pointer.js.map +0 -1
  645. package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
  646. package/dist/v1/schema/value/location/walk.js.map +0 -1
  647. package/dist/v1/schema/value/object.d.ts.map +0 -1
  648. package/dist/v1/schema/value/object.js.map +0 -1
  649. package/dist/v1/schema/value/ordering.d.ts.map +0 -1
  650. package/dist/v1/schema/value/ordering.js.map +0 -1
  651. package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
  652. package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
  653. package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
  654. package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
  655. package/dist/v1/schema/value/profile/dialect.js +0 -36
  656. package/dist/v1/schema/value/profile/dialect.js.map +0 -1
  657. package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
  658. package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
  659. package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
  660. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
  661. package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
  662. package/dist/v1/schema/value/profile/meta-schema.validate.d.ts +0 -4
  663. package/dist/v1/schema/value/profile/meta-schema.validate.d.ts.map +0 -1
  664. package/dist/v1/schema/value/profile/meta-schema.validate.js.map +0 -1
  665. package/dist/v1/schema/value/profile/rules.d.ts +0 -5
  666. package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
  667. package/dist/v1/schema/value/profile/rules.js.map +0 -1
  668. package/dist/v1/schema/value/profile/validate.d.ts +0 -5
  669. package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
  670. package/dist/v1/schema/value/profile/validate.js.map +0 -1
  671. package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
  672. package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
  673. package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
  674. package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
  675. package/dist/v1/schema/value/regexp/linear.js +0 -24
  676. package/dist/v1/schema/value/regexp/linear.js.map +0 -1
  677. package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
  678. package/dist/v1/schema/value/regexp/lower.js.map +0 -1
  679. package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
  680. package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
  681. package/dist/v1/schema/value/regexp/syntax.d.ts +0 -3
  682. package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
  683. package/dist/v1/schema/value/regexp/syntax.js +0 -217
  684. package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
  685. package/dist/v1/schema/value/registry.d.ts.map +0 -1
  686. package/dist/v1/schema/value/registry.js +0 -2
  687. package/dist/v1/schema/value/registry.js.map +0 -1
  688. package/dist/v1/schema/value/resources/closure.d.ts +0 -12
  689. package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
  690. package/dist/v1/schema/value/resources/closure.js.map +0 -1
  691. package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
  692. package/dist/v1/schema/value/resources/recursion.js.map +0 -1
  693. package/dist/v1/schema/value/resources/references.d.ts +0 -25
  694. package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
  695. package/dist/v1/schema/value/resources/references.js +0 -93
  696. package/dist/v1/schema/value/resources/references.js.map +0 -1
  697. package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
  698. package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
  699. package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
  700. package/dist/v1/schema/value/schema.d.ts.map +0 -1
  701. package/dist/v1/schema/value/schema.js.map +0 -1
  702. package/dist/v1/schema/view/declaration.d.ts +0 -14
  703. package/dist/v1/schema/view/declaration.d.ts.map +0 -1
  704. package/dist/v1/schema/view/declaration.js +0 -2
  705. package/dist/v1/schema/view/declaration.js.map +0 -1
  706. package/dist/v1/schema/view/validate.d.ts +0 -4
  707. package/dist/v1/schema/view/validate.d.ts.map +0 -1
  708. package/dist/v1/schema/view/validate.js.map +0 -1
  709. package/dist/v1/schema.d.ts +0 -3
  710. package/dist/v1/schema.d.ts.map +0 -1
  711. package/dist/v1/schema.js +0 -3
  712. package/dist/v1/schema.js.map +0 -1
  713. package/dist/v1.d.ts.map +0 -1
  714. package/dist/v1.js.map +0 -1
  715. package/dist/value/accept.d.ts.map +0 -1
  716. package/dist/value/accept.js.map +0 -1
  717. package/dist/value/canonical.d.ts.map +0 -1
  718. package/dist/value/canonical.js.map +0 -1
  719. package/dist/value/decode.d.ts.map +0 -1
  720. package/dist/value/decode.js.map +0 -1
  721. package/dist/value/equal.d.ts.map +0 -1
  722. package/dist/value/equal.js.map +0 -1
  723. package/dist/value/error.d.ts.map +0 -1
  724. package/dist/value/error.js.map +0 -1
  725. package/dist/value/index.d.ts.map +0 -1
  726. package/dist/value/index.js.map +0 -1
  727. package/dist/value/json.d.ts.map +0 -1
  728. package/dist/value/json.js.map +0 -1
  729. package/dist/value/limits.d.ts.map +0 -1
  730. package/dist/value/limits.js.map +0 -1
  731. package/dist/value/types.d.ts.map +0 -1
  732. package/dist/value/types.js.map +0 -1
  733. package/dist/value/unicode.d.ts.map +0 -1
  734. package/dist/value/unicode.js.map +0 -1
  735. package/dist/version/dispatch.d.ts.map +0 -1
  736. package/dist/version/dispatch.js.map +0 -1
  737. package/dist/version/index.d.ts.map +0 -1
  738. package/dist/version/index.js.map +0 -1
@@ -1,29 +1,20 @@
1
1
  import { accept as acceptJsonValue } from '@astrale-os/kernel-dsl/value';
2
- import { z } from 'zod';
3
- import { DomainSchemaError } from '../../schema/diagnostic.js';
4
- import { compareSchemaRefs } from '../../schema/reference.js';
5
- import { canonicalizeValueSchema } from '../../schema/value/profile/canonicalize.js';
6
- import { validateValueSchema } from '../../schema/value/profile/validate.js';
7
- import { isAuthoringValue } from '../internal/authoring.js';
8
- import { escapeToken, fail } from '../internal/diagnostic.js';
9
- import { lowerPathSchema } from './value.path.js';
10
- import { convertZodToValueSchema, zodObjectPropertyIsOptional } from './value.zod.js';
2
+ import { ZodType } from 'zod';
3
+ import { compareDefinitionRefs } from '../../../addressing/ordering.js';
4
+ import { canonicalizeValueSchema } from '../../../language/value/profile/canonicalize.js';
5
+ import { validateValueSchema } from '../../../language/value/profile/validate.js';
6
+ import { autoPropertyAuthoringInput, propertyAuthoringInput } from '../../class/property.js';
7
+ import { BuilderError } from '../../schema/diagnostic.js';
8
+ import { escapeToken, fail } from '../../schema/diagnostic.js';
9
+ import { isAuthoringValue } from '../../schema/handle.js';
10
+ import { lowerPathSchema } from './path.js';
11
+ import { convertZodToValueSchema, zodObjectPropertyIsOptional } from './zod.js';
11
12
  export class BuilderValueSchemas {
12
13
  context;
13
- types;
14
14
  registry;
15
- constructor(inputs, context) {
15
+ constructor(context) {
16
16
  this.context = context;
17
- const provisional = {};
18
- this.registry = context.valueRegistry(provisional);
19
- for (const [name, input] of Object.entries(inputs)) {
20
- provisional[name] = this.lower(input, 'callable-output', `/types/${escapeToken(name)}`);
21
- }
22
- for (const [name, schema] of Object.entries(provisional)) {
23
- this.assertValid(schema, 'named-type', `/types/${escapeToken(name)}`);
24
- provisional[name] = canonicalizeValueSchema(schema, 'named-type', this.registry);
25
- }
26
- this.types = provisional;
17
+ this.registry = context.valueRegistry();
27
18
  }
28
19
  schema(input, placement, pointer) {
29
20
  const schema = this.lower(input, 'callable-output', pointer);
@@ -32,52 +23,45 @@ export class BuilderValueSchemas {
32
23
  }
33
24
  properties(input, pointer) {
34
25
  const fields = input ?? {};
35
- const compiled = this.facet(fields, 'property-facet', pointer);
36
- const metadata = {};
26
+ const compiled = {};
37
27
  for (const [name, value] of Object.entries(fields)) {
38
- const automatic = isAutoProperty(value) ? value : undefined;
39
- const authored = automatic?.property ?? (isProperty(value) ? value : undefined);
40
- if (authored !== undefined &&
41
- (authored.visibility === 'private' || automatic !== undefined)) {
42
- metadata[name] = {
43
- visibility: authored.visibility,
44
- ...(automatic === undefined ? {} : { auto: automatic.options }),
45
- };
46
- }
28
+ const auto = isAutoProperty(value) ? value : undefined;
29
+ const autoInput = auto === undefined ? undefined : autoPropertyAuthoringInput(auto);
30
+ const authored = autoInput?.property ?? (isProperty(value) ? value : undefined);
31
+ const authoredInput = authored === undefined ? undefined : propertyAuthoringInput(authored);
32
+ const propertyPointer = `${pointer}/${escapeToken(name)}`;
33
+ const schemaInput = authoredInput === undefined ? value : authoredInput.schema;
34
+ const schema = this.lower(schemaInput, 'callable-output', `${propertyPointer}/schema`, 'object-property');
35
+ this.assertValid(schema, 'property-facet', `${propertyPointer}/schema`);
36
+ compiled[name] = {
37
+ schema: canonicalizeValueSchema(schema, 'property-facet', this.registry),
38
+ required: authoredInput?.options.required ?? isRequired(schemaInput),
39
+ ...(autoInput === undefined ? {} : { auto: autoInput.options }),
40
+ ...(authoredInput?.options.description === undefined
41
+ ? {}
42
+ : { description: authoredInput.options.description }),
43
+ ...(authoredInput?.machine === undefined
44
+ ? {}
45
+ : {
46
+ state: {
47
+ initial: authoredInput.machine.initial,
48
+ transitions: authoredInput.machine.transitions,
49
+ },
50
+ }),
51
+ };
47
52
  }
48
- return { properties: compiled, propertyMetadata: metadata };
49
- }
50
- facet(fields, placement, pointer) {
51
- const properties = {};
52
- const required = [];
53
- for (const [name, input] of Object.entries(fields)) {
54
- const propertyPointer = `${pointer}/properties/${escapeToken(name)}`;
55
- const automatic = isAutoProperty(input) ? input : undefined;
56
- const authoring = automatic?.property ?? (isProperty(input) ? input : undefined);
57
- const schemaInput = authoring === undefined ? input : authoring.schema;
58
- properties[name] = this.lower(schemaInput, 'callable-output', propertyPointer, 'object-property');
59
- if (authoring?.required ?? isRequired(schemaInput))
60
- required.push(name);
61
- }
62
- const schema = {
63
- type: 'object',
64
- properties,
65
- required,
66
- additionalProperties: false,
67
- };
68
- this.assertValid(schema, placement, pointer);
69
- return canonicalizeValueSchema(schema, placement, this.registry);
53
+ return compiled;
70
54
  }
71
55
  lower(input, conversionContext, pointer, zodPosition = 'value') {
72
56
  let schema;
73
- if (input instanceof z.ZodType) {
57
+ if (input instanceof ZodType) {
74
58
  const converted = convertZodToValueSchema(input, conversionContext, this.registry, pointer, {
75
59
  position: zodPosition,
76
60
  validate: false,
77
61
  override: (context) => lowerPathSchema(context, (accepts, markerPointer) => this.resolvePathAccepts(accepts, markerPointer), pointer),
78
62
  });
79
63
  if (!converted.ok)
80
- throw new DomainSchemaError(converted.diagnostics);
64
+ throw new BuilderError(converted.diagnostics);
81
65
  schema = closeZodObjects(converted.schema);
82
66
  }
83
67
  else {
@@ -86,7 +70,7 @@ export class BuilderValueSchemas {
86
70
  return schema;
87
71
  }
88
72
  resolvePathAccepts(inputs, pointer) {
89
- const refs = inputs.map((input, index) => this.context.resolveNodeDefinition(input, `${pointer}/x-astrale-path/accepts/${index}`));
73
+ const refs = inputs.map((input, index) => this.context.resolveNodeClass(input, `${pointer}/x-astrale-path/accepts/${index}`));
90
74
  const seen = new Set();
91
75
  for (const ref of refs) {
92
76
  const key = `${ref.origin}\u0000${ref.kind}\u0000${ref.name}`;
@@ -95,12 +79,12 @@ export class BuilderValueSchemas {
95
79
  }
96
80
  seen.add(key);
97
81
  }
98
- return refs.sort(compareSchemaRefs);
82
+ return refs.sort(compareDefinitionRefs);
99
83
  }
100
84
  assertValid(schema, placement, pointer) {
101
85
  const diagnostics = validateValueSchema(schema, placement, this.registry, pointer);
102
86
  if (diagnostics.length > 0)
103
- throw new DomainSchemaError(diagnostics);
87
+ throw new BuilderError(diagnostics);
104
88
  }
105
89
  }
106
90
  function closeZodObjects(schema) {
@@ -153,8 +137,7 @@ function isAutoProperty(value) {
153
137
  return isAuthoringValue(value, 'auto');
154
138
  }
155
139
  function isRequired(value) {
156
- if (!(value instanceof z.ZodType))
140
+ if (!(value instanceof ZodType))
157
141
  return true;
158
142
  return !zodObjectPropertyIsOptional(value);
159
143
  }
160
- //# sourceMappingURL=value.js.map
@@ -0,0 +1,3 @@
1
+ import type { NodeClassReferenceInput } from '../../class/authoring.js';
2
+ import type { ZodValueSchemaOverrideContext } from './zod.js';
3
+ export declare function lowerPathSchema(context: ZodValueSchemaOverrideContext, resolveAccepts: (inputs: readonly NodeClassReferenceInput[], pointer: string) => readonly unknown[], pointer: string): void;
@@ -1,4 +1,4 @@
1
- import { pathAccepts } from '../internal/path.metadata.js';
1
+ import { pathAccepts } from '../../value/path-metadata.js';
2
2
  export function lowerPathSchema(context, resolveAccepts, pointer) {
3
3
  const inputs = pathAccepts(context.zodSchema);
4
4
  if (inputs === undefined)
@@ -18,4 +18,3 @@ export function lowerPathSchema(context, resolveAccepts, pointer) {
18
18
  function escapeToken(value) {
19
19
  return value.replaceAll('~', '~0').replaceAll('/', '~1');
20
20
  }
21
- //# sourceMappingURL=value.path.js.map
@@ -1,14 +1,14 @@
1
- import { z } from 'zod';
2
- import type { DomainDiagnostic } from '../../schema/diagnostic.js';
3
- import type { ValueSchemaRegistry } from '../../schema/value/registry.js';
4
- import type { JsonSchema, ValueSchemaContext } from '../../schema/value/schema.js';
1
+ import { ZodType } from 'zod';
2
+ import type { JsonSchema, ValueSchemaContext } from '../../../language/value/model/schema.js';
3
+ import type { ValueSchemaRegistry } from '../../../language/value/reference/registry.js';
4
+ import type { BuilderDiagnostic } from '../../schema/diagnostic.js';
5
5
  export type ZodValueSchemaConversion = {
6
6
  readonly ok: true;
7
7
  readonly schema: JsonSchema;
8
8
  readonly diagnostics: readonly [];
9
9
  } | {
10
10
  readonly ok: false;
11
- readonly diagnostics: readonly DomainDiagnostic[];
11
+ readonly diagnostics: readonly BuilderDiagnostic[];
12
12
  };
13
13
  export interface ZodValueSchemaConversionOptions {
14
14
  /** Undefined is representable only as absence at a containing object-property boundary. */
@@ -19,7 +19,7 @@ export interface ZodValueSchemaConversionOptions {
19
19
  readonly validate?: boolean;
20
20
  }
21
21
  export interface ZodValueSchemaOverrideContext {
22
- readonly zodSchema: z.ZodType;
22
+ readonly zodSchema: ZodType;
23
23
  readonly jsonSchema: Record<string, unknown>;
24
24
  readonly path: readonly (string | number)[];
25
25
  }
@@ -27,7 +27,6 @@ export interface ZodValueSchemaOverrideContext {
27
27
  * Converts only Zod contracts whose JSON-value acceptance is represented
28
28
  * without coercion, effects, custom predicates, or format assertions.
29
29
  */
30
- export declare function convertZodToValueSchema(zodSchema: z.ZodType, context: ValueSchemaContext, registry: ValueSchemaRegistry, pointer?: string, options?: ZodValueSchemaConversionOptions): ZodValueSchemaConversion;
30
+ export declare function convertZodToValueSchema(zodSchema: ZodType, context: ValueSchemaContext, registry: ValueSchemaRegistry, pointer?: string, options?: ZodValueSchemaConversionOptions): ZodValueSchemaConversion;
31
31
  /** Whether explicit Zod optionality makes a containing object property absent-able. */
32
- export declare function zodObjectPropertyIsOptional(schema: z.ZodType): boolean;
33
- //# sourceMappingURL=value.zod.d.ts.map
32
+ export declare function zodObjectPropertyIsOptional(schema: ZodType): boolean;
@@ -1,10 +1,10 @@
1
- import { z } from 'zod';
1
+ import { ZodObject, ZodType, toJSONSchema } from 'zod';
2
+ import { VALUE_SCHEMA_DIALECT } from '../../../language/value/model/schema.js';
3
+ import { canonicalizeValueSchema } from '../../../language/value/profile/canonicalize.js';
4
+ import { validateValueSchema } from '../../../language/value/profile/validate.js';
5
+ import { isIRegexp } from '../../../language/value/regexp/syntax.js';
6
+ import { fullMatchSource } from '../../../language/value/syntax/full-match.js';
2
7
  import { diagnostic } from '../../schema/diagnostic.js';
3
- import { canonicalizeValueSchema } from '../../schema/value/profile/canonicalize.js';
4
- import { validateValueSchema } from '../../schema/value/profile/validate.js';
5
- import { isIRegexp } from '../../schema/value/regexp/syntax.js';
6
- import { VALUE_SCHEMA_DIALECT } from '../../schema/value/schema.js';
7
- import { fullMatchSource } from '../full-match.js';
8
8
  /**
9
9
  * Converts only Zod contracts whose JSON-value acceptance is represented
10
10
  * without coercion, effects, custom predicates, or format assertions.
@@ -15,19 +15,19 @@ export function convertZodToValueSchema(zodSchema, context, registry, pointer =
15
15
  return { ok: false, diagnostics };
16
16
  let converted;
17
17
  try {
18
- const raw = z.toJSONSchema(zodSchema, {
18
+ const raw = toJSONSchema(zodSchema, {
19
19
  target: 'draft-2020-12',
20
20
  unrepresentable: 'throw',
21
21
  io: 'input',
22
22
  cycles: 'ref',
23
23
  reused: 'inline',
24
24
  override: ({ zodSchema: source, jsonSchema, path }) => {
25
- if (source instanceof z.ZodObject) {
25
+ if (source instanceof ZodObject) {
26
26
  jsonSchema.required = Object.entries(source.shape)
27
27
  .filter(([, property]) => !zodObjectPropertyIsOptional(property))
28
28
  .map(([name]) => name);
29
29
  }
30
- if (source instanceof z.ZodType) {
30
+ if (source instanceof ZodType) {
31
31
  lowerFullMatchChecks(source, jsonSchema);
32
32
  options.override?.({
33
33
  jsonSchema: jsonSchema,
@@ -284,7 +284,7 @@ function getCheckDefinition(value) {
284
284
  return isPlainRecord(internals?.def) ? internals.def : undefined;
285
285
  }
286
286
  function isZodType(value) {
287
- return value instanceof z.ZodType;
287
+ return value instanceof ZodType;
288
288
  }
289
289
  function escapePointerToken(value) {
290
290
  return value.replaceAll('~', '~0').replaceAll('/', '~1');
@@ -340,4 +340,3 @@ const UNREPRESENTABLE_TYPES = new Set([
340
340
  function errorMessage(error) {
341
341
  return error instanceof Error ? error.message : String(error);
342
342
  }
343
- //# sourceMappingURL=value.zod.js.map
@@ -0,0 +1,11 @@
1
+ import type { ViewDefinition } from '../../language/view/model/view.js';
2
+ import type { View } from '../view/authoring.js';
3
+ import type { BuilderContext } from './schema/context.js';
4
+ export interface ViewCompiler {
5
+ compile(value: View, name: string, pointer: string): ViewDefinition;
6
+ }
7
+ export declare class V1ViewCompiler implements ViewCompiler {
8
+ readonly context: BuilderContext;
9
+ constructor(context: BuilderContext);
10
+ compile(value: View, name: string, pointer: string): ViewDefinition;
11
+ }
@@ -1,27 +1,27 @@
1
- import { compareSchemaRefs } from '../../schema/reference.js';
1
+ import { compareDefinitionRefs } from '../../addressing/ordering.js';
2
+ import { viewAuthoringInput } from '../view/authoring.js';
2
3
  export class V1ViewCompiler {
3
4
  context;
4
5
  constructor(context) {
5
6
  this.context = context;
6
7
  }
7
- compile(value, pointer) {
8
- const config = value.config;
8
+ compile(value, name, pointer) {
9
+ const config = viewAuthoringInput(value);
9
10
  const target = config.target;
10
11
  return {
12
+ ref: { origin: this.context.origin, kind: 'view', name },
11
13
  ...(config.description === undefined ? {} : { description: config.description }),
12
14
  target: target === undefined || target === 'domain'
13
15
  ? { kind: 'domain' }
14
16
  : {
15
17
  kind: 'definition',
16
18
  definitions: (isTargetList(target) ? target : [target])
17
- .map((entry, index) => this.context.resolveNodeDefinition(entry, `${pointer}/target/definitions/${index}`))
18
- .sort(compareSchemaRefs),
19
+ .map((entry, index) => this.context.resolveNodeClass(entry, `${pointer}/target/definitions/${index}`))
20
+ .sort(compareDefinitionRefs),
19
21
  },
20
- auth: config.auth ?? 'required',
21
22
  };
22
23
  }
23
24
  }
24
25
  function isTargetList(input) {
25
26
  return Array.isArray(input);
26
27
  }
27
- //# sourceMappingURL=view.js.map
@@ -1,10 +1,11 @@
1
- import type { PolicyCheckExpression, PolicyPatternExpression, PolicyPatternTerm as CanonicalPolicyPatternTerm } from '../schema/policy/ast.js';
2
- import type { ClassRef } from '../schema/reference.js';
3
- import type { EdgeClassAuthoring, NodeClassAuthoring } from './definition.js';
4
- import type { Lazy } from './internal/authoring.lazy.js';
1
+ import type { ClassRef } from '../../addressing/index.js';
2
+ import type { PolicyCheckExpression, PolicyPatternExpression, PolicyPatternTerm as CanonicalPolicyPatternTerm } from '../../language/policy/model/policy.js';
3
+ import type { EdgeClass, NodeClass } from '../class/authoring.js';
4
+ import type { AuthoringValue } from '../schema/handle.js';
5
+ import type { Lazy } from '../schema/lazy.js';
5
6
  export interface PolicyEdgeInput {
6
7
  readonly source: CanonicalPolicyPatternTerm;
7
- readonly class: Lazy<EdgeClassAuthoring>;
8
+ readonly class: Lazy<EdgeClass>;
8
9
  readonly target: CanonicalPolicyPatternTerm;
9
10
  readonly repeat?: {
10
11
  readonly min: number;
@@ -12,7 +13,7 @@ export interface PolicyEdgeInput {
12
13
  };
13
14
  }
14
15
  export interface PolicyExistsContext {
15
- node(definition: Lazy<NodeClassAuthoring>): CanonicalPolicyPatternTerm;
16
+ node(definition: Lazy<NodeClass>): CanonicalPolicyPatternTerm;
16
17
  }
17
18
  export interface PolicyPatternContext {
18
19
  readonly subject: CanonicalPolicyPatternTerm;
@@ -28,23 +29,24 @@ export interface MatchPolicyInput {
28
29
  readonly description?: string;
29
30
  readonly match: (context: PolicyPatternContext) => PolicyPatternExpression;
30
31
  }
31
- export interface PolicyComposition {
32
+ interface PolicyComposition {
32
33
  readonly operator: 'allOf' | 'anyOf';
33
34
  readonly policies: readonly [PolicyInput, ...PolicyInput[]];
34
35
  }
35
- export interface Policy {
36
- readonly input: MatchPolicyInput | PolicyComposition;
36
+ export interface Policy extends AuthoringValue<'policy'> {
37
37
  }
38
38
  export type PolicyInput = Lazy<Policy>;
39
- export declare function definePolicy(input: MatchPolicyInput | PolicyComposition): Policy;
40
- export declare const policy: {
41
- readonly allOf: (first: PolicyInput, ...rest: readonly PolicyInput[]) => PolicyComposition;
42
- readonly anyOf: (first: PolicyInput, ...rest: readonly PolicyInput[]) => PolicyComposition;
43
- };
39
+ type PolicyDeclaration = MatchPolicyInput | PolicyComposition;
40
+ export interface PolicyBuilder {
41
+ (input: MatchPolicyInput): Policy;
42
+ readonly allOf: (first: PolicyInput, ...rest: readonly PolicyInput[]) => Policy;
43
+ readonly anyOf: (first: PolicyInput, ...rest: readonly PolicyInput[]) => Policy;
44
+ }
45
+ export declare function policyDeclaration(value: Policy): PolicyDeclaration;
46
+ export declare const policy: PolicyBuilder;
44
47
  export declare function createPatternContext(options: {
45
- readonly resolveEdgeClass: (value: Lazy<EdgeClassAuthoring>, pointer: string) => ClassRef;
46
- readonly resolveNodeClass: (value: Lazy<NodeClassAuthoring>, pointer: string) => ClassRef;
48
+ readonly resolveEdgeClass: (value: Lazy<EdgeClass>, pointer: string) => ClassRef;
49
+ readonly resolveNodeClass: (value: Lazy<NodeClass>, pointer: string) => ClassRef;
47
50
  readonly pointer: string;
48
51
  }): PolicyPatternContext;
49
52
  export type { PolicyCheckExpression };
50
- //# sourceMappingURL=policy.d.ts.map
@@ -1,20 +1,30 @@
1
- import { authoringValue, isAuthoringValue } from './internal/authoring.js';
2
- import { assertKnownKeys, fail } from './internal/diagnostic.js';
3
- export function definePolicy(input) {
1
+ import { assertKnownKeys, fail } from '../schema/diagnostic.js';
2
+ import { authoringValue } from '../schema/handle.js';
3
+ const declarations = new WeakMap();
4
+ const compositions = new WeakSet();
5
+ export function policyDeclaration(value) {
6
+ const declaration = declarations.get(value);
7
+ if (declaration === undefined)
8
+ fail('BUILDER_POLICY', '/', 'Policies are created by policy(...).');
9
+ return declaration;
10
+ }
11
+ function createPolicy(input) {
4
12
  if ('operator' in input) {
5
- if (!isAuthoringValue(input, 'policy-composition')) {
13
+ if (!compositions.has(input)) {
6
14
  fail('BUILDER_POLICY_COMPOSITION', '/', 'Policy compositions are created by policy.allOf(...) or policy.anyOf(...).');
7
15
  }
8
16
  }
9
17
  else {
10
18
  assertKnownKeys(input, ['description', 'match']);
11
19
  }
12
- return authoringValue('policy', { input });
20
+ const value = authoringValue('policy', {});
21
+ declarations.set(value, input);
22
+ return value;
13
23
  }
14
- export const policy = Object.freeze({
15
- allOf: (...policies) => composition('allOf', policies),
16
- anyOf: (...policies) => composition('anyOf', policies),
17
- });
24
+ export const policy = Object.freeze(Object.assign(createPolicy, {
25
+ allOf: (first, ...rest) => createPolicy(composition('allOf', first === undefined ? [] : [first, ...rest])),
26
+ anyOf: (first, ...rest) => createPolicy(composition('anyOf', first === undefined ? [] : [first, ...rest])),
27
+ }));
18
28
  export function createPatternContext(options) {
19
29
  let nextVariable = 0;
20
30
  const subject = Object.freeze({ kind: 'subject' });
@@ -67,13 +77,14 @@ export function createPatternContext(options) {
67
77
  }
68
78
  function composition(operator, policies) {
69
79
  nonEmpty(policies, `/${operator}`);
70
- return authoringValue('policy-composition', {
80
+ const value = {
71
81
  operator,
72
82
  policies: [...policies],
73
- });
83
+ };
84
+ compositions.add(value);
85
+ return value;
74
86
  }
75
87
  function nonEmpty(values, pointer) {
76
88
  if (values.length === 0)
77
89
  fail('BUILDER_POLICY_EMPTY_COMPOSITION', pointer, 'Policy composition must be non-empty.');
78
90
  }
79
- //# sourceMappingURL=policy.js.map
@@ -0,0 +1,11 @@
1
+ import type { Domain } from '../../domain/model/domain.js';
2
+ import type { DomainSchema } from '../../schema/model/schema.js';
3
+ import type { DomainSchemaInput } from './input.js';
4
+ import type { ResolvedDomainOfInput } from './projection.js';
5
+ export type { DomainSchemaInput } from './input.js';
6
+ /** Exact named Schema produced from one authored input. */
7
+ export interface DefinedSchema<Origin extends string, Resolved extends Domain> extends DomainSchema<Origin, Resolved> {
8
+ }
9
+ /** Build and semantically accept one immutable V1 DomainSchema. */
10
+ export declare function defineSchema<const Origin extends string, const Input extends DomainSchemaInput>(origin: Origin, input: Input): DefinedSchema<Origin, ResolvedDomainOfInput<Origin, Input>>;
11
+ export type { ResolvedDomainOfInput } from './projection.js';
@@ -1,6 +1,5 @@
1
- import { compileSchema } from './compiler/schema.js';
1
+ import { compileSchema } from '../lowering/schema/compile.js';
2
2
  /** Build and semantically accept one immutable V1 DomainSchema. */
3
3
  export function defineSchema(origin, input) {
4
4
  return compileSchema(origin, input);
5
5
  }
6
- //# sourceMappingURL=schema.js.map
@@ -0,0 +1,16 @@
1
+ import type { DiagnosticCode as LanguageDiagnosticCode } from '../../language/validation/diagnostic.js';
2
+ export type BuilderDiagnosticCode = LanguageDiagnosticCode | 'BUILDER_ABSTRACT_POLICY' | 'BUILDER_AMBIGUOUS_OWNERSHIP' | 'BUILDER_AUTO_EVENT_INVALID' | 'BUILDER_AUTO_NESTED' | 'BUILDER_AUTO_SET_INVALID' | 'BUILDER_CALLABLE_AUTH' | 'BUILDER_CALLABLE_PLACEMENT' | 'BUILDER_CALLABLE_POLICY_AUTH' | 'BUILDER_CORE_CLASS' | 'BUILDER_CORE_EDGE' | 'BUILDER_CORE_NODE' | 'BUILDER_CORE_PROPERTY' | 'BUILDER_CORE_REF' | 'BUILDER_DEFINITION' | 'BUILDER_DEPENDENCY_CONFLICT' | 'BUILDER_DEPENDENCY_ALIAS' | 'BUILDER_DEPENDENCY_DIRECT' | 'BUILDER_DUPLICATE_MEMBER' | 'BUILDER_FOREIGN_POLICY' | 'BUILDER_FULL_MATCH_INVALID' | 'BUILDER_FUNCTION' | 'BUILDER_METHOD' | 'BUILDER_PATH_DUPLICATE' | 'BUILDER_PATH_EMPTY' | 'BUILDER_POLICY' | 'BUILDER_POLICY_COMPOSITION' | 'BUILDER_POLICY_CYCLE' | 'BUILDER_POLICY_EMPTY_COMPOSITION' | 'BUILDER_POLICY_EMPTY_EXISTS' | 'BUILDER_POLICY_INPUT' | 'BUILDER_POLICY_REF' | 'BUILDER_POLICY_SELF' | 'BUILDER_REFERENCE_CYCLE' | 'BUILDER_REFERENCE_KIND' | 'BUILDER_REFERENCE_MISSING' | 'BUILDER_UNKNOWN_FIELD' | 'BUILDER_UNOWNED_REFERENCE' | 'BUILDER_VIEW' | 'ZOD_SCHEMA_NOT_LOSSLESS';
3
+ export interface BuilderDiagnostic<out Code extends BuilderDiagnosticCode = BuilderDiagnosticCode> {
4
+ readonly code: Code;
5
+ readonly pointer: string;
6
+ readonly message: string;
7
+ readonly ref?: string;
8
+ }
9
+ export declare function diagnostic<const Code extends BuilderDiagnosticCode>(code: Code, pointer: string, message: string, ref?: string): BuilderDiagnostic<Code>;
10
+ export declare class BuilderError extends Error {
11
+ readonly diagnostics: readonly BuilderDiagnostic[];
12
+ constructor(diagnostics: readonly BuilderDiagnostic[]);
13
+ }
14
+ export declare function assertKnownKeys(value: object, allowed: readonly string[], pointer?: string): void;
15
+ export declare function fail(code: BuilderDiagnosticCode, pointer: string, message: string): never;
16
+ export declare function escapeToken(value: string): string;
@@ -0,0 +1,31 @@
1
+ import { compareUnicode } from '../../addressing/ordering.js';
2
+ export function diagnostic(code, pointer, message, ref) {
3
+ return Object.freeze({ code, pointer, message, ...(ref === undefined ? {} : { ref }) });
4
+ }
5
+ export class BuilderError extends Error {
6
+ diagnostics;
7
+ constructor(diagnostics) {
8
+ const ordered = [...diagnostics].sort((left, right) => compareUnicode(left.pointer, right.pointer) ||
9
+ compareUnicode(left.code, right.code) ||
10
+ compareUnicode(left.message, right.message));
11
+ super(ordered
12
+ .map(({ code, pointer, message }) => `${pointer || '/'} [${code}] ${message}`)
13
+ .join('\n'));
14
+ this.name = 'BuilderError';
15
+ this.diagnostics = Object.freeze(ordered);
16
+ }
17
+ }
18
+ export function assertKnownKeys(value, allowed, pointer = '') {
19
+ const accepted = new Set(allowed);
20
+ for (const key of Object.keys(value)) {
21
+ if (!accepted.has(key)) {
22
+ fail('BUILDER_UNKNOWN_FIELD', `${pointer}/${escapeToken(key)}`, `Unknown builder field ${key}.`);
23
+ }
24
+ }
25
+ }
26
+ export function fail(code, pointer, message) {
27
+ throw new BuilderError([diagnostic(code, pointer, message)]);
28
+ }
29
+ export function escapeToken(value) {
30
+ return value.replaceAll('~', '~0').replaceAll('/', '~1');
31
+ }
@@ -1,8 +1,7 @@
1
1
  export declare const AUTHORING: unique symbol;
2
- export type AuthoringKind = 'definition' | 'function' | 'callable-output' | 'policy' | 'view' | 'core-node' | 'core-edge' | 'property' | 'auto' | 'policy-composition';
2
+ export type AuthoringKind = 'definition' | 'function' | 'method' | 'callable-output' | 'policy' | 'view' | 'core-node' | 'core-edge' | 'property' | 'auto';
3
3
  export interface AuthoringValue<Kind extends AuthoringKind> {
4
4
  readonly [AUTHORING]: Kind;
5
5
  }
6
6
  export declare function authoringValue<Kind extends AuthoringKind, Value extends object>(kind: Kind, value: Value): Readonly<Value & AuthoringValue<Kind>>;
7
7
  export declare function isAuthoringValue<Kind extends AuthoringKind>(value: unknown, kind: Kind): value is AuthoringValue<Kind> & object;
8
- //# sourceMappingURL=authoring.d.ts.map
@@ -12,4 +12,3 @@ export function isAuthoringValue(value, kind) {
12
12
  value !== null &&
13
13
  value[AUTHORING] === kind);
14
14
  }
15
- //# sourceMappingURL=authoring.js.map
@@ -0,0 +1,15 @@
1
+ import type { DomainSchema } from '../../schema/model/schema.js';
2
+ import type { Function } from '../callable/authoring.js';
3
+ import type { Class } from '../class/authoring.js';
4
+ import type { CoreInput } from '../core/authoring.js';
5
+ import type { Policy } from '../policy/authoring.js';
6
+ import type { View } from '../view/authoring.js';
7
+ /** Complete authoring input accepted by defineSchema. */
8
+ export interface DomainSchemaInput {
9
+ readonly dependencies?: Readonly<Record<string, DomainSchema<string>>>;
10
+ readonly classes?: Readonly<Record<string, Class>>;
11
+ readonly functions?: Readonly<Record<string, Function>>;
12
+ readonly policies?: Readonly<Record<string, Policy>>;
13
+ readonly views?: Readonly<Record<string, View>>;
14
+ readonly core?: CoreInput;
15
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -1,3 +1,2 @@
1
1
  export type Lazy<T> = T | (() => T);
2
2
  export declare function resolveLazy<T>(value: Lazy<T>, pointer: string): T;
3
- //# sourceMappingURL=authoring.lazy.d.ts.map
@@ -11,4 +11,3 @@ export function resolveLazy(value, pointer) {
11
11
  }
12
12
  return current;
13
13
  }
14
- //# sourceMappingURL=authoring.lazy.js.map