@astrale-os/kernel-dsl 0.2.0-beta.3 → 0.2.0-beta.31

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 (769) hide show
  1. package/dist/index.d.ts +0 -1
  2. package/dist/index.js +0 -1
  3. package/dist/upgrade/contract.d.ts +0 -1
  4. package/dist/upgrade/contract.js +0 -1
  5. package/dist/upgrade/index.d.ts +0 -1
  6. package/dist/upgrade/index.js +0 -1
  7. package/dist/v1/addressing/class-key.d.ts +12 -0
  8. package/dist/v1/addressing/class-key.js +39 -0
  9. package/dist/v1/addressing/definition-ref.d.ts +28 -0
  10. package/dist/v1/addressing/definition-ref.js +63 -0
  11. package/dist/v1/addressing/domain-dependency.d.ts +18 -0
  12. package/dist/v1/addressing/domain-dependency.js +6 -0
  13. package/dist/v1/addressing/index.d.ts +10 -4
  14. package/dist/v1/addressing/index.js +5 -3
  15. package/dist/v1/addressing/key.d.ts +14 -16
  16. package/dist/v1/addressing/key.js +24 -34
  17. package/dist/v1/addressing/method-address.d.ts +9 -0
  18. package/dist/v1/addressing/method-address.js +1 -0
  19. package/dist/v1/addressing/method-key.d.ts +15 -0
  20. package/dist/v1/addressing/method-key.js +60 -0
  21. package/dist/v1/addressing/ordering.d.ts +6 -0
  22. package/dist/v1/addressing/ordering.js +20 -0
  23. package/dist/v1/addressing/patterns.d.ts +12 -3
  24. package/dist/v1/addressing/patterns.js +11 -2
  25. package/dist/v1/addressing/property-key.d.ts +10 -15
  26. package/dist/v1/addressing/property-key.js +24 -15
  27. package/dist/v1/addressing/revision.d.ts +8 -0
  28. package/dist/v1/addressing/revision.js +8 -0
  29. package/dist/v1/builder/callable/authoring.d.ts +118 -0
  30. package/dist/v1/builder/{callable.js → callable/authoring.js} +28 -7
  31. package/dist/v1/builder/class/authoring.d.ts +380 -0
  32. package/dist/v1/builder/class/authoring.js +134 -0
  33. package/dist/v1/builder/class/property.d.ts +58 -0
  34. package/dist/v1/builder/class/property.js +57 -0
  35. package/dist/v1/builder/core/authoring.d.ts +42 -0
  36. package/dist/v1/builder/core/authoring.js +39 -0
  37. package/dist/v1/builder/index.d.ts +26 -22
  38. package/dist/v1/builder/index.js +11 -11
  39. package/dist/v1/builder/lowering/callable.d.ts +24 -0
  40. package/dist/v1/builder/{compiler → lowering}/callable.js +39 -38
  41. package/dist/v1/builder/lowering/class.d.ts +22 -0
  42. package/dist/v1/builder/lowering/class.js +134 -0
  43. package/dist/v1/builder/lowering/core-properties.d.ts +10 -0
  44. package/dist/v1/builder/{compiler/core.properties.js → lowering/core-properties.js} +14 -8
  45. package/dist/v1/builder/lowering/core.d.ts +22 -0
  46. package/dist/v1/builder/{compiler → lowering}/core.js +17 -11
  47. package/dist/v1/builder/lowering/policy.d.ts +16 -0
  48. package/dist/v1/builder/{compiler → lowering}/policy.js +20 -14
  49. package/dist/v1/builder/{compiler/schema.capture.d.ts → lowering/schema/capture.d.ts} +2 -3
  50. package/dist/v1/builder/lowering/schema/capture.js +75 -0
  51. package/dist/v1/builder/{compiler/schema.d.ts → lowering/schema/compile.d.ts} +4 -4
  52. package/dist/v1/builder/{compiler/schema.js → lowering/schema/compile.js} +34 -44
  53. package/dist/v1/builder/lowering/schema/context.d.ts +44 -0
  54. package/dist/v1/builder/{compiler/schema.context.js → lowering/schema/context.js} +102 -81
  55. package/dist/v1/builder/lowering/schema/ownership.d.ts +8 -0
  56. package/dist/v1/builder/{compiler/schema.ownership.js → lowering/schema/ownership.js} +3 -3
  57. package/dist/v1/builder/lowering/value/compile.d.ts +15 -0
  58. package/dist/v1/builder/{compiler/value.js → lowering/value/compile.js} +44 -61
  59. package/dist/v1/builder/lowering/value/path.d.ts +3 -0
  60. package/dist/v1/builder/{compiler/value.path.js → lowering/value/path.js} +1 -2
  61. package/dist/v1/builder/{compiler/value.zod.d.ts → lowering/value/zod.d.ts} +8 -9
  62. package/dist/v1/builder/{compiler/value.zod.js → lowering/value/zod.js} +10 -11
  63. package/dist/v1/builder/lowering/view.d.ts +11 -0
  64. package/dist/v1/builder/{compiler → lowering}/view.js +7 -7
  65. package/dist/v1/builder/{policy.d.ts → policy/authoring.d.ts} +28 -17
  66. package/dist/v1/builder/policy/authoring.js +115 -0
  67. package/dist/v1/builder/schema/define.d.ts +11 -0
  68. package/dist/v1/builder/{schema.js → schema/define.js} +1 -2
  69. package/dist/v1/builder/schema/diagnostic.d.ts +16 -0
  70. package/dist/v1/builder/schema/diagnostic.js +31 -0
  71. package/dist/v1/builder/{internal/authoring.d.ts → schema/handle.d.ts} +1 -2
  72. package/dist/v1/builder/{internal/authoring.js → schema/handle.js} +0 -1
  73. package/dist/v1/builder/schema/input.d.ts +15 -0
  74. package/dist/v1/builder/schema/input.js +1 -0
  75. package/dist/v1/builder/{internal/authoring.lazy.d.ts → schema/lazy.d.ts} +0 -1
  76. package/dist/v1/builder/{internal/authoring.lazy.js → schema/lazy.js} +0 -1
  77. package/dist/v1/builder/schema/projection.d.ts +370 -0
  78. package/dist/v1/builder/schema/projection.js +1 -0
  79. package/dist/v1/builder/value/full-match.d.ts +4 -0
  80. package/dist/v1/builder/value/full-match.js +11 -0
  81. package/dist/v1/builder/value/path-metadata.d.ts +4 -0
  82. package/dist/v1/builder/{internal/path.metadata.js → value/path-metadata.js} +0 -1
  83. package/dist/v1/builder/value/path.d.ts +8 -0
  84. package/dist/v1/builder/{path.js → value/path.js} +4 -5
  85. package/dist/v1/builder/{value-schema.d.ts → value/schema.d.ts} +2 -3
  86. package/dist/v1/builder/{value-schema.js → value/schema.js} +0 -1
  87. package/dist/v1/builder/view/authoring.d.ts +17 -0
  88. package/dist/v1/builder/view/authoring.js +16 -0
  89. package/dist/v1/bundle/codec.d.ts +0 -1
  90. package/dist/v1/bundle/codec.js +36 -19
  91. package/dist/v1/bundle/create.d.ts +3 -0
  92. package/dist/v1/bundle/create.js +5 -0
  93. package/dist/v1/bundle/diagnostic.d.ts +10 -0
  94. package/dist/v1/bundle/diagnostic.js +17 -0
  95. package/dist/v1/bundle/index.d.ts +3 -2
  96. package/dist/v1/bundle/index.js +2 -2
  97. package/dist/v1/bundle/model.d.ts +1 -4
  98. package/dist/v1/bundle/model.js +0 -6
  99. package/dist/v1/bundle/structure.d.ts +1 -2
  100. package/dist/v1/bundle/structure.js +6 -6
  101. package/dist/v1/bundle/transport.d.ts +8 -0
  102. package/dist/v1/bundle/transport.js +7 -0
  103. package/dist/v1/compiled/admission/accept.d.ts +3 -0
  104. package/dist/v1/compiled/admission/accept.js +961 -0
  105. package/dist/v1/compiled/admission/revision.d.ts +4 -0
  106. package/dist/v1/compiled/admission/revision.js +73 -0
  107. package/dist/v1/compiled/admission/semantics.d.ts +7 -0
  108. package/dist/v1/compiled/admission/semantics.js +1167 -0
  109. package/dist/v1/compiled/codec/json.d.ts +3 -0
  110. package/dist/v1/compiled/codec/json.js +9 -0
  111. package/dist/v1/compiled/compiler/compile.d.ts +4 -0
  112. package/dist/v1/compiled/compiler/compile.js +113 -0
  113. package/dist/v1/compiled/diagnostic.d.ts +11 -0
  114. package/dist/v1/compiled/diagnostic.js +13 -0
  115. package/dist/v1/compiled/generated.d.ts +10 -0
  116. package/dist/v1/compiled/generated.js +15 -0
  117. package/dist/v1/compiled/index.d.ts +7 -0
  118. package/dist/v1/compiled/index.js +5 -0
  119. package/dist/v1/compiled/loader/index.d.ts +1 -0
  120. package/dist/v1/compiled/loader/index.js +1 -0
  121. package/dist/v1/compiled/loader/load.d.ts +9 -0
  122. package/dist/v1/compiled/loader/load.js +147 -0
  123. package/dist/v1/compiled/model/schema.d.ts +73 -0
  124. package/dist/v1/compiled/model/schema.js +1 -0
  125. package/dist/v1/domain/create.d.ts +8 -0
  126. package/dist/v1/domain/create.js +264 -0
  127. package/dist/v1/domain/index.d.ts +2 -0
  128. package/dist/v1/domain/index.js +1 -0
  129. package/dist/v1/domain/model/domain.d.ts +59 -0
  130. package/dist/v1/domain/model/domain.js +1 -0
  131. package/dist/v1/domain/model/input.d.ts +31 -0
  132. package/dist/v1/domain/model/input.js +1 -0
  133. package/dist/v1/domain/namespace/member-collection.d.ts +5 -0
  134. package/dist/v1/domain/namespace/member-collection.js +81 -0
  135. package/dist/v1/domain/projection/classes.d.ts +4 -0
  136. package/dist/v1/domain/projection/classes.js +181 -0
  137. package/dist/v1/domain/validation/create.d.ts +18 -0
  138. package/dist/v1/domain/validation/create.js +75 -0
  139. package/dist/v1/index.d.ts +14 -5
  140. package/dist/v1/index.js +6 -3
  141. package/dist/v1/language/callable/index.d.ts +2 -0
  142. package/dist/v1/language/callable/index.js +1 -0
  143. package/dist/v1/language/callable/model/callable.d.ts +33 -0
  144. package/dist/v1/language/callable/model/callable.js +1 -0
  145. package/dist/v1/language/callable/resolved.d.ts +68 -0
  146. package/dist/v1/language/callable/resolved.js +1 -0
  147. package/dist/v1/language/class/facets.d.ts +58 -0
  148. package/dist/v1/language/class/facets.js +1 -0
  149. package/dist/v1/language/class/index.d.ts +8 -0
  150. package/dist/v1/language/class/index.js +1 -0
  151. package/dist/v1/language/class/model/class.d.ts +37 -0
  152. package/dist/v1/language/class/model/class.js +1 -0
  153. package/dist/v1/{schema/definition → language/class/model}/data.d.ts +2 -3
  154. package/dist/v1/{schema/definition → language/class/model}/data.js +0 -1
  155. package/dist/v1/{schema/definition → language/class/model}/edge.d.ts +9 -6
  156. package/dist/v1/language/class/model/edge.js +1 -0
  157. package/dist/v1/language/class/model/property.d.ts +17 -0
  158. package/dist/v1/language/class/model/property.js +1 -0
  159. package/dist/v1/language/class/property-values.d.ts +15 -0
  160. package/dist/v1/language/class/property-values.js +30 -0
  161. package/dist/v1/language/class/resolved.d.ts +119 -0
  162. package/dist/v1/language/class/resolved.js +1 -0
  163. package/dist/v1/language/core/index.d.ts +2 -0
  164. package/dist/v1/language/core/index.js +1 -0
  165. package/dist/v1/language/core/model/core.d.ts +20 -0
  166. package/dist/v1/language/core/model/core.js +1 -0
  167. package/dist/v1/language/core/resolved.d.ts +21 -0
  168. package/dist/v1/language/core/resolved.js +1 -0
  169. package/dist/v1/{schema → language/definition}/metadata.d.ts +0 -1
  170. package/dist/v1/{schema → language/definition}/metadata.js +0 -1
  171. package/dist/v1/language/definition.d.ts +7 -0
  172. package/dist/v1/language/definition.js +1 -0
  173. package/dist/v1/language/index.d.ts +26 -0
  174. package/dist/v1/language/index.js +3 -0
  175. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.d.ts +4 -5
  176. package/dist/v1/{schema/policy/validation → language/policy/analysis}/branches.js +43 -24
  177. package/dist/v1/{schema/policy/validation → language/policy/analysis}/budgets.d.ts +1 -4
  178. package/dist/v1/language/policy/analysis/budgets.js +25 -0
  179. package/dist/v1/language/policy/index.d.ts +4 -0
  180. package/dist/v1/language/policy/index.js +2 -0
  181. package/dist/v1/language/policy/model/policy.d.ts +115 -0
  182. package/dist/v1/language/policy/model/policy.js +18 -0
  183. package/dist/v1/language/policy/normalization/normalize.d.ts +4 -0
  184. package/dist/v1/{schema/policy → language/policy/normalization}/normalize.js +65 -20
  185. package/dist/v1/language/policy/resolved.d.ts +9 -0
  186. package/dist/v1/language/policy/resolved.js +1 -0
  187. package/dist/v1/language/resolved.d.ts +10 -0
  188. package/dist/v1/language/resolved.js +1 -0
  189. package/dist/v1/language/state/index.d.ts +3 -0
  190. package/dist/v1/language/state/index.js +1 -0
  191. package/dist/v1/language/state/machine.d.ts +28 -0
  192. package/dist/v1/language/state/machine.js +40 -0
  193. package/dist/v1/language/state/topology.d.ts +14 -0
  194. package/dist/v1/language/state/topology.js +69 -0
  195. package/dist/v1/language/validation/diagnostic.d.ts +8 -0
  196. package/dist/v1/language/validation/diagnostic.js +3 -0
  197. package/dist/v1/language/value/compile/fields.d.ts +3 -0
  198. package/dist/v1/language/value/compile/fields.js +60 -0
  199. package/dist/v1/{schema/compiled/program.d.ts → language/value/compile/load.d.ts} +1 -2
  200. package/dist/v1/{schema/compiled/program.js → language/value/compile/load.js} +2 -3
  201. package/dist/v1/language/value/compile/model.d.ts +27 -0
  202. package/dist/v1/language/value/compile/model.js +1 -0
  203. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.d.ts +0 -1
  204. package/dist/v1/{schema/value/instance → language/value/evaluate}/assertions.js +1 -2
  205. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.d.ts +0 -1
  206. package/dist/v1/{schema/value/instance → language/value/evaluate}/evaluator.js +3 -4
  207. package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.d.ts +2 -3
  208. package/dist/v1/{schema/value/instance → language/value/evaluate}/preparation.js +6 -8
  209. package/dist/v1/language/value/evaluate/program.d.ts +3 -0
  210. package/dist/v1/language/value/evaluate/program.js +16 -0
  211. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.d.ts +4 -5
  212. package/dist/v1/{schema/value/instance → language/value/evaluate}/types.js +0 -1
  213. package/dist/v1/{schema/value/instance.validate.d.ts → language/value/evaluate/validate.d.ts} +4 -5
  214. package/dist/v1/{schema/value/instance.validate.js → language/value/evaluate/validate.js} +4 -5
  215. package/dist/v1/language/value/index.d.ts +11 -0
  216. package/dist/v1/language/value/index.js +8 -0
  217. package/dist/v1/{schema/value → language/value/model}/instant.d.ts +1 -1
  218. package/dist/v1/{schema/value → language/value/model}/instant.js +1 -1
  219. package/dist/v1/{schema/value → language/value/model}/object.d.ts +1 -1
  220. package/dist/v1/{schema/value → language/value/model}/object.js +0 -1
  221. package/dist/v1/{schema/value → language/value/model}/schema.d.ts +3 -4
  222. package/dist/v1/{schema/value → language/value/model}/schema.js +0 -2
  223. package/dist/v1/{schema → language}/value/ordering.d.ts +5 -3
  224. package/dist/v1/{schema → language}/value/ordering.js +15 -13
  225. package/dist/v1/{schema → language}/value/profile/canonicalize.d.ts +2 -3
  226. package/dist/v1/{schema → language}/value/profile/canonicalize.js +4 -7
  227. package/dist/v1/language/value/profile/json.validate.d.ts +2 -0
  228. package/dist/v1/{schema → language}/value/profile/json.validate.js +1 -2
  229. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.d.ts +0 -1
  230. package/dist/v1/{schema → language}/value/profile/meta-schema.compiled.js +0 -1
  231. package/dist/v1/language/value/profile/meta-schema.d.ts +4 -0
  232. package/dist/v1/{schema → language}/value/profile/meta-schema.js +1 -2
  233. package/dist/v1/language/value/profile/rules.d.ts +3 -0
  234. package/dist/v1/{schema → language}/value/profile/rules.js +7 -50
  235. package/dist/v1/language/value/profile/validate.d.ts +4 -0
  236. package/dist/v1/{schema → language}/value/profile/validate.js +13 -21
  237. package/dist/v1/{schema → language}/value/profile/vocabulary.d.ts +0 -1
  238. package/dist/v1/{schema → language}/value/profile/vocabulary.js +0 -1
  239. package/dist/v1/language/value/reference/closure.d.ts +11 -0
  240. package/dist/v1/{schema/value/resources → language/value/reference}/closure.js +13 -21
  241. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.d.ts +3 -4
  242. package/dist/v1/{schema/value/resources → language/value/reference}/recursion.js +5 -6
  243. package/dist/v1/language/value/reference/references.d.ts +17 -0
  244. package/dist/v1/language/value/reference/references.js +45 -0
  245. package/dist/v1/{schema/value → language/value/reference}/registry.d.ts +9 -7
  246. package/dist/v1/language/value/reference/registry.index.d.ts +14 -0
  247. package/dist/v1/{schema/value/resources → language/value/reference}/registry.index.js +7 -45
  248. package/dist/v1/language/value/reference/registry.js +1 -0
  249. package/dist/v1/{schema → language}/value/regexp/ast.d.ts +0 -1
  250. package/dist/v1/{schema → language}/value/regexp/ast.js +0 -1
  251. package/dist/v1/{schema → language}/value/regexp/compile.d.ts +1 -2
  252. package/dist/v1/{schema → language}/value/regexp/compile.js +8 -12
  253. package/dist/v1/{schema → language}/value/regexp/lower.d.ts +1 -2
  254. package/dist/v1/{schema → language}/value/regexp/lower.js +2 -3
  255. package/dist/v1/{schema → language}/value/regexp/matcher.d.ts +1 -2
  256. package/dist/v1/{schema → language}/value/regexp/matcher.js +0 -1
  257. package/dist/v1/{schema → language}/value/regexp/pattern.d.ts +0 -1
  258. package/dist/v1/{schema → language}/value/regexp/pattern.js +0 -1
  259. package/dist/v1/{schema → language}/value/regexp/syntax.d.ts +0 -1
  260. package/dist/v1/{schema → language}/value/regexp/syntax.js +0 -1
  261. package/dist/v1/{schema/value → language/value/syntax}/full-match.d.ts +0 -1
  262. package/dist/v1/{schema/value → language/value/syntax}/full-match.js +5 -6
  263. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.d.ts +0 -1
  264. package/dist/v1/{schema/value/location → language/value/syntax}/keywords.js +0 -1
  265. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.d.ts +1 -2
  266. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/schema.js +2 -3
  267. package/dist/v1/language/value/syntax/node-path/validate.d.ts +4 -0
  268. package/dist/v1/{schema/value/extensions → language/value/syntax}/node-path/validate.js +16 -18
  269. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.d.ts +0 -1
  270. package/dist/v1/{schema/value/location → language/value/syntax}/pointer.js +1 -2
  271. package/dist/v1/{schema/value/location → language/value/syntax}/walk.d.ts +1 -2
  272. package/dist/v1/{schema/value/location → language/value/syntax}/walk.js +1 -2
  273. package/dist/v1/language/view/index.d.ts +2 -0
  274. package/dist/v1/language/view/index.js +1 -0
  275. package/dist/v1/language/view/model/view.d.ts +11 -0
  276. package/dist/v1/language/view/model/view.js +1 -0
  277. package/dist/v1/language/view/resolved.d.ts +9 -0
  278. package/dist/v1/language/view/resolved.js +1 -0
  279. package/dist/v1/schema/admission/accept.d.ts +3 -0
  280. package/dist/v1/schema/{domain.accept.js → admission/accept.js} +8 -9
  281. package/dist/v1/schema/{definition/analysis.d.ts → analysis/class.d.ts} +17 -18
  282. package/dist/v1/schema/{definition/analysis.js → analysis/class.js} +21 -30
  283. package/dist/v1/schema/canonical/domain.d.ts +2 -2
  284. package/dist/v1/schema/canonical/domain.digest.d.ts +1 -2
  285. package/dist/v1/schema/canonical/domain.digest.js +2 -6
  286. package/dist/v1/schema/canonical/domain.js +3 -224
  287. package/dist/v1/schema/canonical/freeze.d.ts +0 -1
  288. package/dist/v1/schema/canonical/freeze.js +0 -1
  289. package/dist/v1/schema/{domain.revision.d.ts → canonical/revision.d.ts} +2 -3
  290. package/dist/v1/schema/{domain.revision.js → canonical/revision.js} +7 -5
  291. package/dist/v1/schema/codec/header.d.ts +17 -0
  292. package/dist/v1/schema/codec/header.js +26 -0
  293. package/dist/v1/schema/{domain.codec.d.ts → codec/schema.d.ts} +2 -3
  294. package/dist/v1/schema/{domain.codec.js → codec/schema.js} +4 -5
  295. package/dist/v1/schema/{dependency.meaning.d.ts → compatibility/meaning.d.ts} +4 -5
  296. package/dist/v1/schema/{dependency.meaning.js → compatibility/meaning.js} +121 -124
  297. package/dist/v1/schema/{domain.lookup.d.ts → dependency/lookup.d.ts} +3 -4
  298. package/dist/v1/schema/{domain.lookup.js → dependency/lookup.js} +1 -2
  299. package/dist/v1/schema/diagnostic.d.ts +7 -7
  300. package/dist/v1/schema/diagnostic.js +9 -9
  301. package/dist/v1/schema/index.d.ts +24 -40
  302. package/dist/v1/schema/index.js +11 -18
  303. package/dist/v1/schema/model/format.d.ts +2 -0
  304. package/dist/v1/schema/model/format.js +2 -0
  305. package/dist/v1/schema/model/schema.d.ts +30 -0
  306. package/dist/v1/schema/model/schema.js +4 -0
  307. package/dist/v1/schema/normalization/domain.d.ts +2 -0
  308. package/dist/v1/schema/normalization/domain.js +210 -0
  309. package/dist/v1/schema/resolution/closure.d.ts +3 -4
  310. package/dist/v1/schema/resolution/closure.js +6 -7
  311. package/dist/v1/schema/resolution/context.d.ts +11 -12
  312. package/dist/v1/schema/resolution/context.js +82 -50
  313. package/dist/v1/schema/resolution/definition.index.d.ts +13 -35
  314. package/dist/v1/schema/resolution/definition.index.js +8 -18
  315. package/dist/v1/schema/resolution/domain.d.ts +4 -0
  316. package/dist/v1/schema/resolution/domain.js +112 -0
  317. package/dist/v1/schema/resolution/origins.d.ts +11 -14
  318. package/dist/v1/schema/resolution/origins.js +55 -46
  319. package/dist/v1/schema/resolution/value.registry.d.ts +3 -4
  320. package/dist/v1/schema/resolution/value.registry.js +7 -14
  321. package/dist/v1/schema/revision.d.ts +1 -0
  322. package/dist/v1/schema/revision.js +1 -0
  323. package/dist/v1/schema/validation/class.d.ts +5 -0
  324. package/dist/v1/schema/validation/class.js +241 -0
  325. package/dist/v1/schema/validation/core.d.ts +5 -0
  326. package/dist/v1/schema/{core/validate.js → validation/core.js} +39 -30
  327. package/dist/v1/schema/validation/domain.d.ts +11 -0
  328. package/dist/v1/schema/{domain.validate.js → validation/domain.js} +12 -12
  329. package/dist/v1/schema/validation/domain.route.d.ts +1 -2
  330. package/dist/v1/schema/validation/domain.route.js +3 -4
  331. package/dist/v1/schema/validation/domain.structure.d.ts +3 -4
  332. package/dist/v1/schema/validation/domain.structure.js +218 -210
  333. package/dist/v1/schema/validation/policy/budgets.d.ts +4 -0
  334. package/dist/v1/schema/{policy/validation → validation/policy}/budgets.js +22 -35
  335. package/dist/v1/schema/validation/policy/context.d.ts +28 -0
  336. package/dist/v1/schema/{policy/validation → validation/policy}/context.js +23 -33
  337. package/dist/v1/schema/validation/policy/objects.d.ts +4 -0
  338. package/dist/v1/schema/validation/policy/objects.js +70 -0
  339. package/dist/v1/schema/{policy/validation → validation/policy}/references.d.ts +0 -1
  340. package/dist/v1/schema/{policy/validation → validation/policy}/references.js +32 -13
  341. package/dist/v1/schema/{policy/validation → validation/policy}/typing.d.ts +4 -8
  342. package/dist/v1/schema/{policy/validation → validation/policy}/typing.js +56 -69
  343. package/dist/v1/schema/{policy/validation → validation/policy}/uses.d.ts +0 -1
  344. package/dist/v1/schema/{policy/validation → validation/policy}/uses.js +36 -113
  345. package/dist/v1/schema/{policy/validation → validation/policy}/validate.d.ts +3 -4
  346. package/dist/v1/schema/{policy/validation → validation/policy}/validate.js +0 -1
  347. package/dist/v1/schema/{value/index.d.ts → validation/value-api.d.ts} +9 -10
  348. package/dist/v1/schema/{value/index.js → validation/value-api.js} +4 -5
  349. package/dist/v1/schema/validation/value.d.ts +4 -5
  350. package/dist/v1/schema/validation/value.js +4 -9
  351. package/dist/v1/schema/validation/view.d.ts +3 -0
  352. package/dist/v1/schema/{view/validate.js → validation/view.js} +11 -4
  353. package/dist/v1/value/full-match.d.ts +2 -0
  354. package/dist/v1/value/full-match.js +2 -0
  355. package/dist/v1.d.ts +1 -2
  356. package/dist/v1.js +1 -2
  357. package/dist/value/accept.d.ts +0 -1
  358. package/dist/value/accept.js +0 -1
  359. package/dist/value/canonical.d.ts +3 -1
  360. package/dist/value/canonical.js +11 -5
  361. package/dist/value/decode.d.ts +0 -1
  362. package/dist/value/decode.js +0 -1
  363. package/dist/value/equal.d.ts +0 -1
  364. package/dist/value/equal.js +0 -1
  365. package/dist/value/error.d.ts +0 -1
  366. package/dist/value/error.js +0 -1
  367. package/dist/value/index.d.ts +0 -1
  368. package/dist/value/index.js +0 -1
  369. package/dist/value/json.d.ts +1 -2
  370. package/dist/value/json.js +1 -2
  371. package/dist/value/limits.d.ts +0 -1
  372. package/dist/value/limits.js +0 -1
  373. package/dist/value/types.d.ts +0 -1
  374. package/dist/value/types.js +0 -1
  375. package/dist/value/unicode.d.ts +0 -1
  376. package/dist/value/unicode.js +0 -1
  377. package/dist/version/dispatch.d.ts +0 -1
  378. package/dist/version/dispatch.js +0 -1
  379. package/dist/version/index.d.ts +0 -1
  380. package/dist/version/index.js +0 -1
  381. package/package.json +53 -21
  382. package/dist/index.d.ts.map +0 -1
  383. package/dist/index.js.map +0 -1
  384. package/dist/upgrade/contract.d.ts.map +0 -1
  385. package/dist/upgrade/contract.js.map +0 -1
  386. package/dist/upgrade/index.d.ts.map +0 -1
  387. package/dist/upgrade/index.js.map +0 -1
  388. package/dist/v1/addressing/index.d.ts.map +0 -1
  389. package/dist/v1/addressing/index.js.map +0 -1
  390. package/dist/v1/addressing/key.d.ts.map +0 -1
  391. package/dist/v1/addressing/key.js.map +0 -1
  392. package/dist/v1/addressing/patterns.d.ts.map +0 -1
  393. package/dist/v1/addressing/patterns.js.map +0 -1
  394. package/dist/v1/addressing/property-key.d.ts.map +0 -1
  395. package/dist/v1/addressing/property-key.js.map +0 -1
  396. package/dist/v1/addressing/ref.d.ts +0 -35
  397. package/dist/v1/addressing/ref.d.ts.map +0 -1
  398. package/dist/v1/addressing/ref.js +0 -94
  399. package/dist/v1/addressing/ref.js.map +0 -1
  400. package/dist/v1/addressing/schema-ref.d.ts +0 -8
  401. package/dist/v1/addressing/schema-ref.d.ts.map +0 -1
  402. package/dist/v1/addressing/schema-ref.js +0 -2
  403. package/dist/v1/addressing/schema-ref.js.map +0 -1
  404. package/dist/v1/builder/callable.d.ts +0 -91
  405. package/dist/v1/builder/callable.d.ts.map +0 -1
  406. package/dist/v1/builder/callable.js.map +0 -1
  407. package/dist/v1/builder/compiler/callable.d.ts +0 -20
  408. package/dist/v1/builder/compiler/callable.d.ts.map +0 -1
  409. package/dist/v1/builder/compiler/callable.js.map +0 -1
  410. package/dist/v1/builder/compiler/core.d.ts +0 -6
  411. package/dist/v1/builder/compiler/core.d.ts.map +0 -1
  412. package/dist/v1/builder/compiler/core.js.map +0 -1
  413. package/dist/v1/builder/compiler/core.properties.d.ts +0 -6
  414. package/dist/v1/builder/compiler/core.properties.d.ts.map +0 -1
  415. package/dist/v1/builder/compiler/core.properties.js.map +0 -1
  416. package/dist/v1/builder/compiler/definition.d.ts +0 -32
  417. package/dist/v1/builder/compiler/definition.d.ts.map +0 -1
  418. package/dist/v1/builder/compiler/definition.js +0 -197
  419. package/dist/v1/builder/compiler/definition.js.map +0 -1
  420. package/dist/v1/builder/compiler/policy.d.ts +0 -17
  421. package/dist/v1/builder/compiler/policy.d.ts.map +0 -1
  422. package/dist/v1/builder/compiler/policy.js.map +0 -1
  423. package/dist/v1/builder/compiler/schema.capture.d.ts.map +0 -1
  424. package/dist/v1/builder/compiler/schema.capture.js +0 -85
  425. package/dist/v1/builder/compiler/schema.capture.js.map +0 -1
  426. package/dist/v1/builder/compiler/schema.context.d.ts +0 -45
  427. package/dist/v1/builder/compiler/schema.context.d.ts.map +0 -1
  428. package/dist/v1/builder/compiler/schema.context.js.map +0 -1
  429. package/dist/v1/builder/compiler/schema.d.ts.map +0 -1
  430. package/dist/v1/builder/compiler/schema.js.map +0 -1
  431. package/dist/v1/builder/compiler/schema.ownership.d.ts +0 -9
  432. package/dist/v1/builder/compiler/schema.ownership.d.ts.map +0 -1
  433. package/dist/v1/builder/compiler/schema.ownership.js.map +0 -1
  434. package/dist/v1/builder/compiler/value.d.ts +0 -26
  435. package/dist/v1/builder/compiler/value.d.ts.map +0 -1
  436. package/dist/v1/builder/compiler/value.js.map +0 -1
  437. package/dist/v1/builder/compiler/value.path.d.ts +0 -4
  438. package/dist/v1/builder/compiler/value.path.d.ts.map +0 -1
  439. package/dist/v1/builder/compiler/value.path.js.map +0 -1
  440. package/dist/v1/builder/compiler/value.zod.d.ts.map +0 -1
  441. package/dist/v1/builder/compiler/value.zod.js.map +0 -1
  442. package/dist/v1/builder/compiler/view.d.ts +0 -12
  443. package/dist/v1/builder/compiler/view.d.ts.map +0 -1
  444. package/dist/v1/builder/compiler/view.js.map +0 -1
  445. package/dist/v1/builder/core.d.ts +0 -27
  446. package/dist/v1/builder/core.d.ts.map +0 -1
  447. package/dist/v1/builder/core.js +0 -21
  448. package/dist/v1/builder/core.js.map +0 -1
  449. package/dist/v1/builder/definition.d.ts +0 -155
  450. package/dist/v1/builder/definition.d.ts.map +0 -1
  451. package/dist/v1/builder/definition.js +0 -141
  452. package/dist/v1/builder/definition.js.map +0 -1
  453. package/dist/v1/builder/full-match.d.ts +0 -5
  454. package/dist/v1/builder/full-match.d.ts.map +0 -1
  455. package/dist/v1/builder/full-match.js +0 -12
  456. package/dist/v1/builder/full-match.js.map +0 -1
  457. package/dist/v1/builder/index.d.ts.map +0 -1
  458. package/dist/v1/builder/index.js.map +0 -1
  459. package/dist/v1/builder/internal/authoring.d.ts.map +0 -1
  460. package/dist/v1/builder/internal/authoring.js.map +0 -1
  461. package/dist/v1/builder/internal/authoring.lazy.d.ts.map +0 -1
  462. package/dist/v1/builder/internal/authoring.lazy.js.map +0 -1
  463. package/dist/v1/builder/internal/diagnostic.d.ts +0 -4
  464. package/dist/v1/builder/internal/diagnostic.d.ts.map +0 -1
  465. package/dist/v1/builder/internal/diagnostic.js +0 -16
  466. package/dist/v1/builder/internal/diagnostic.js.map +0 -1
  467. package/dist/v1/builder/internal/path.metadata.d.ts +0 -5
  468. package/dist/v1/builder/internal/path.metadata.d.ts.map +0 -1
  469. package/dist/v1/builder/internal/path.metadata.js.map +0 -1
  470. package/dist/v1/builder/path.d.ts +0 -9
  471. package/dist/v1/builder/path.d.ts.map +0 -1
  472. package/dist/v1/builder/path.js.map +0 -1
  473. package/dist/v1/builder/policy.d.ts.map +0 -1
  474. package/dist/v1/builder/policy.js +0 -79
  475. package/dist/v1/builder/policy.js.map +0 -1
  476. package/dist/v1/builder/property.d.ts +0 -37
  477. package/dist/v1/builder/property.d.ts.map +0 -1
  478. package/dist/v1/builder/property.js +0 -36
  479. package/dist/v1/builder/property.js.map +0 -1
  480. package/dist/v1/builder/schema.d.ts +0 -6
  481. package/dist/v1/builder/schema.d.ts.map +0 -1
  482. package/dist/v1/builder/schema.input.d.ts +0 -19
  483. package/dist/v1/builder/schema.input.d.ts.map +0 -1
  484. package/dist/v1/builder/schema.input.js +0 -2
  485. package/dist/v1/builder/schema.input.js.map +0 -1
  486. package/dist/v1/builder/schema.js.map +0 -1
  487. package/dist/v1/builder/value-schema.d.ts.map +0 -1
  488. package/dist/v1/builder/value-schema.js.map +0 -1
  489. package/dist/v1/builder/view.d.ts +0 -19
  490. package/dist/v1/builder/view.d.ts.map +0 -1
  491. package/dist/v1/builder/view.js +0 -7
  492. package/dist/v1/builder/view.js.map +0 -1
  493. package/dist/v1/builder.d.ts +0 -3
  494. package/dist/v1/builder.d.ts.map +0 -1
  495. package/dist/v1/builder.js +0 -2
  496. package/dist/v1/builder.js.map +0 -1
  497. package/dist/v1/bundle/codec.d.ts.map +0 -1
  498. package/dist/v1/bundle/codec.js.map +0 -1
  499. package/dist/v1/bundle/index.d.ts.map +0 -1
  500. package/dist/v1/bundle/index.js.map +0 -1
  501. package/dist/v1/bundle/model.d.ts.map +0 -1
  502. package/dist/v1/bundle/model.js.map +0 -1
  503. package/dist/v1/bundle/structure.d.ts.map +0 -1
  504. package/dist/v1/bundle/structure.js.map +0 -1
  505. package/dist/v1/bundle.d.ts +0 -3
  506. package/dist/v1/bundle.d.ts.map +0 -1
  507. package/dist/v1/bundle.js +0 -3
  508. package/dist/v1/bundle.js.map +0 -1
  509. package/dist/v1/index.d.ts.map +0 -1
  510. package/dist/v1/index.js.map +0 -1
  511. package/dist/v1/schema/callable.d.ts +0 -29
  512. package/dist/v1/schema/callable.d.ts.map +0 -1
  513. package/dist/v1/schema/callable.js +0 -2
  514. package/dist/v1/schema/callable.js.map +0 -1
  515. package/dist/v1/schema/canonical/domain.d.ts.map +0 -1
  516. package/dist/v1/schema/canonical/domain.digest.d.ts.map +0 -1
  517. package/dist/v1/schema/canonical/domain.digest.js.map +0 -1
  518. package/dist/v1/schema/canonical/domain.js.map +0 -1
  519. package/dist/v1/schema/canonical/freeze.d.ts.map +0 -1
  520. package/dist/v1/schema/canonical/freeze.js.map +0 -1
  521. package/dist/v1/schema/compiled/admission.d.ts +0 -4
  522. package/dist/v1/schema/compiled/admission.d.ts.map +0 -1
  523. package/dist/v1/schema/compiled/admission.js +0 -217
  524. package/dist/v1/schema/compiled/admission.js.map +0 -1
  525. package/dist/v1/schema/compiled/authored-validator.d.ts +0 -5
  526. package/dist/v1/schema/compiled/authored-validator.d.ts.map +0 -1
  527. package/dist/v1/schema/compiled/authored-validator.js +0 -7
  528. package/dist/v1/schema/compiled/authored-validator.js.map +0 -1
  529. package/dist/v1/schema/compiled/compiler.d.ts +0 -5
  530. package/dist/v1/schema/compiled/compiler.d.ts.map +0 -1
  531. package/dist/v1/schema/compiled/compiler.js +0 -86
  532. package/dist/v1/schema/compiled/compiler.js.map +0 -1
  533. package/dist/v1/schema/compiled/model.d.ts +0 -61
  534. package/dist/v1/schema/compiled/model.d.ts.map +0 -1
  535. package/dist/v1/schema/compiled/model.js +0 -2
  536. package/dist/v1/schema/compiled/model.js.map +0 -1
  537. package/dist/v1/schema/compiled/program.d.ts.map +0 -1
  538. package/dist/v1/schema/compiled/program.js.map +0 -1
  539. package/dist/v1/schema/compiled/validator.d.ts +0 -23
  540. package/dist/v1/schema/compiled/validator.d.ts.map +0 -1
  541. package/dist/v1/schema/compiled/validator.js +0 -62
  542. package/dist/v1/schema/compiled/validator.js.map +0 -1
  543. package/dist/v1/schema/core/declaration.d.ts +0 -17
  544. package/dist/v1/schema/core/declaration.d.ts.map +0 -1
  545. package/dist/v1/schema/core/declaration.js +0 -2
  546. package/dist/v1/schema/core/declaration.js.map +0 -1
  547. package/dist/v1/schema/core/validate.d.ts +0 -6
  548. package/dist/v1/schema/core/validate.d.ts.map +0 -1
  549. package/dist/v1/schema/core/validate.js.map +0 -1
  550. package/dist/v1/schema/definition/analysis.d.ts.map +0 -1
  551. package/dist/v1/schema/definition/analysis.js.map +0 -1
  552. package/dist/v1/schema/definition/class.d.ts +0 -28
  553. package/dist/v1/schema/definition/class.d.ts.map +0 -1
  554. package/dist/v1/schema/definition/class.js +0 -2
  555. package/dist/v1/schema/definition/class.js.map +0 -1
  556. package/dist/v1/schema/definition/data.d.ts.map +0 -1
  557. package/dist/v1/schema/definition/data.js.map +0 -1
  558. package/dist/v1/schema/definition/edge.d.ts.map +0 -1
  559. package/dist/v1/schema/definition/edge.js +0 -2
  560. package/dist/v1/schema/definition/edge.js.map +0 -1
  561. package/dist/v1/schema/definition/interface.d.ts +0 -22
  562. package/dist/v1/schema/definition/interface.d.ts.map +0 -1
  563. package/dist/v1/schema/definition/interface.js +0 -2
  564. package/dist/v1/schema/definition/interface.js.map +0 -1
  565. package/dist/v1/schema/definition/property.d.ts +0 -18
  566. package/dist/v1/schema/definition/property.d.ts.map +0 -1
  567. package/dist/v1/schema/definition/property.js +0 -2
  568. package/dist/v1/schema/definition/property.js.map +0 -1
  569. package/dist/v1/schema/definition/validate.d.ts +0 -5
  570. package/dist/v1/schema/definition/validate.d.ts.map +0 -1
  571. package/dist/v1/schema/definition/validate.js +0 -221
  572. package/dist/v1/schema/definition/validate.js.map +0 -1
  573. package/dist/v1/schema/dependency.meaning.d.ts.map +0 -1
  574. package/dist/v1/schema/dependency.meaning.js.map +0 -1
  575. package/dist/v1/schema/diagnostic.d.ts.map +0 -1
  576. package/dist/v1/schema/diagnostic.js.map +0 -1
  577. package/dist/v1/schema/domain.accept.d.ts +0 -4
  578. package/dist/v1/schema/domain.accept.d.ts.map +0 -1
  579. package/dist/v1/schema/domain.accept.js.map +0 -1
  580. package/dist/v1/schema/domain.codec.d.ts.map +0 -1
  581. package/dist/v1/schema/domain.codec.js.map +0 -1
  582. package/dist/v1/schema/domain.header.d.ts +0 -15
  583. package/dist/v1/schema/domain.header.d.ts.map +0 -1
  584. package/dist/v1/schema/domain.header.js +0 -21
  585. package/dist/v1/schema/domain.header.js.map +0 -1
  586. package/dist/v1/schema/domain.ir.d.ts +0 -40
  587. package/dist/v1/schema/domain.ir.d.ts.map +0 -1
  588. package/dist/v1/schema/domain.ir.js +0 -5
  589. package/dist/v1/schema/domain.ir.js.map +0 -1
  590. package/dist/v1/schema/domain.lookup.d.ts.map +0 -1
  591. package/dist/v1/schema/domain.lookup.js.map +0 -1
  592. package/dist/v1/schema/domain.resolve.d.ts +0 -26
  593. package/dist/v1/schema/domain.resolve.d.ts.map +0 -1
  594. package/dist/v1/schema/domain.resolve.js +0 -43
  595. package/dist/v1/schema/domain.resolve.js.map +0 -1
  596. package/dist/v1/schema/domain.revision.d.ts.map +0 -1
  597. package/dist/v1/schema/domain.revision.js.map +0 -1
  598. package/dist/v1/schema/domain.validate.d.ts +0 -12
  599. package/dist/v1/schema/domain.validate.d.ts.map +0 -1
  600. package/dist/v1/schema/domain.validate.js.map +0 -1
  601. package/dist/v1/schema/index.d.ts.map +0 -1
  602. package/dist/v1/schema/index.js.map +0 -1
  603. package/dist/v1/schema/metadata.d.ts.map +0 -1
  604. package/dist/v1/schema/metadata.js.map +0 -1
  605. package/dist/v1/schema/policy/ast.d.ts +0 -77
  606. package/dist/v1/schema/policy/ast.d.ts.map +0 -1
  607. package/dist/v1/schema/policy/ast.js +0 -2
  608. package/dist/v1/schema/policy/ast.js.map +0 -1
  609. package/dist/v1/schema/policy/normalize.d.ts +0 -5
  610. package/dist/v1/schema/policy/normalize.d.ts.map +0 -1
  611. package/dist/v1/schema/policy/normalize.js.map +0 -1
  612. package/dist/v1/schema/policy/validation/branches.d.ts.map +0 -1
  613. package/dist/v1/schema/policy/validation/branches.js.map +0 -1
  614. package/dist/v1/schema/policy/validation/budgets.d.ts.map +0 -1
  615. package/dist/v1/schema/policy/validation/budgets.js.map +0 -1
  616. package/dist/v1/schema/policy/validation/context.d.ts +0 -28
  617. package/dist/v1/schema/policy/validation/context.d.ts.map +0 -1
  618. package/dist/v1/schema/policy/validation/context.js.map +0 -1
  619. package/dist/v1/schema/policy/validation/references.d.ts.map +0 -1
  620. package/dist/v1/schema/policy/validation/references.js.map +0 -1
  621. package/dist/v1/schema/policy/validation/typing.d.ts.map +0 -1
  622. package/dist/v1/schema/policy/validation/typing.js.map +0 -1
  623. package/dist/v1/schema/policy/validation/uses.d.ts.map +0 -1
  624. package/dist/v1/schema/policy/validation/uses.js.map +0 -1
  625. package/dist/v1/schema/policy/validation/validate.d.ts.map +0 -1
  626. package/dist/v1/schema/policy/validation/validate.js.map +0 -1
  627. package/dist/v1/schema/reference.d.ts +0 -43
  628. package/dist/v1/schema/reference.d.ts.map +0 -1
  629. package/dist/v1/schema/reference.js +0 -31
  630. package/dist/v1/schema/reference.js.map +0 -1
  631. package/dist/v1/schema/resolution/closure.d.ts.map +0 -1
  632. package/dist/v1/schema/resolution/closure.js.map +0 -1
  633. package/dist/v1/schema/resolution/context.d.ts.map +0 -1
  634. package/dist/v1/schema/resolution/context.js.map +0 -1
  635. package/dist/v1/schema/resolution/definition.index.d.ts.map +0 -1
  636. package/dist/v1/schema/resolution/definition.index.js.map +0 -1
  637. package/dist/v1/schema/resolution/origins.d.ts.map +0 -1
  638. package/dist/v1/schema/resolution/origins.js.map +0 -1
  639. package/dist/v1/schema/resolution/value.registry.d.ts.map +0 -1
  640. package/dist/v1/schema/resolution/value.registry.js.map +0 -1
  641. package/dist/v1/schema/validation/domain.route.d.ts.map +0 -1
  642. package/dist/v1/schema/validation/domain.route.js.map +0 -1
  643. package/dist/v1/schema/validation/domain.structure.d.ts.map +0 -1
  644. package/dist/v1/schema/validation/domain.structure.js.map +0 -1
  645. package/dist/v1/schema/validation/value.d.ts.map +0 -1
  646. package/dist/v1/schema/validation/value.js.map +0 -1
  647. package/dist/v1/schema/value/extensions/node-path/schema.d.ts.map +0 -1
  648. package/dist/v1/schema/value/extensions/node-path/schema.js.map +0 -1
  649. package/dist/v1/schema/value/extensions/node-path/validate.d.ts +0 -5
  650. package/dist/v1/schema/value/extensions/node-path/validate.d.ts.map +0 -1
  651. package/dist/v1/schema/value/extensions/node-path/validate.js.map +0 -1
  652. package/dist/v1/schema/value/full-match.d.ts.map +0 -1
  653. package/dist/v1/schema/value/full-match.js.map +0 -1
  654. package/dist/v1/schema/value/index.d.ts.map +0 -1
  655. package/dist/v1/schema/value/index.js.map +0 -1
  656. package/dist/v1/schema/value/instance/assertions.d.ts.map +0 -1
  657. package/dist/v1/schema/value/instance/assertions.js.map +0 -1
  658. package/dist/v1/schema/value/instance/evaluator.d.ts.map +0 -1
  659. package/dist/v1/schema/value/instance/evaluator.js.map +0 -1
  660. package/dist/v1/schema/value/instance/preparation.d.ts.map +0 -1
  661. package/dist/v1/schema/value/instance/preparation.js.map +0 -1
  662. package/dist/v1/schema/value/instance/types.d.ts.map +0 -1
  663. package/dist/v1/schema/value/instance/types.js.map +0 -1
  664. package/dist/v1/schema/value/instance.validate.d.ts.map +0 -1
  665. package/dist/v1/schema/value/instance.validate.js.map +0 -1
  666. package/dist/v1/schema/value/instant.d.ts.map +0 -1
  667. package/dist/v1/schema/value/instant.js.map +0 -1
  668. package/dist/v1/schema/value/location/keywords.d.ts.map +0 -1
  669. package/dist/v1/schema/value/location/keywords.js.map +0 -1
  670. package/dist/v1/schema/value/location/pointer.d.ts.map +0 -1
  671. package/dist/v1/schema/value/location/pointer.js.map +0 -1
  672. package/dist/v1/schema/value/location/walk.d.ts.map +0 -1
  673. package/dist/v1/schema/value/location/walk.js.map +0 -1
  674. package/dist/v1/schema/value/object.d.ts.map +0 -1
  675. package/dist/v1/schema/value/object.js.map +0 -1
  676. package/dist/v1/schema/value/ordering.d.ts.map +0 -1
  677. package/dist/v1/schema/value/ordering.js.map +0 -1
  678. package/dist/v1/schema/value/profile/canonicalize.d.ts.map +0 -1
  679. package/dist/v1/schema/value/profile/canonicalize.js.map +0 -1
  680. package/dist/v1/schema/value/profile/dialect.d.ts +0 -5
  681. package/dist/v1/schema/value/profile/dialect.d.ts.map +0 -1
  682. package/dist/v1/schema/value/profile/dialect.js +0 -36
  683. package/dist/v1/schema/value/profile/dialect.js.map +0 -1
  684. package/dist/v1/schema/value/profile/json.validate.d.ts +0 -3
  685. package/dist/v1/schema/value/profile/json.validate.d.ts.map +0 -1
  686. package/dist/v1/schema/value/profile/json.validate.js.map +0 -1
  687. package/dist/v1/schema/value/profile/meta-schema.compiled.d.ts.map +0 -1
  688. package/dist/v1/schema/value/profile/meta-schema.compiled.js.map +0 -1
  689. package/dist/v1/schema/value/profile/meta-schema.d.ts +0 -5
  690. package/dist/v1/schema/value/profile/meta-schema.d.ts.map +0 -1
  691. package/dist/v1/schema/value/profile/meta-schema.js.map +0 -1
  692. package/dist/v1/schema/value/profile/rules.d.ts +0 -5
  693. package/dist/v1/schema/value/profile/rules.d.ts.map +0 -1
  694. package/dist/v1/schema/value/profile/rules.js.map +0 -1
  695. package/dist/v1/schema/value/profile/validate.d.ts +0 -5
  696. package/dist/v1/schema/value/profile/validate.d.ts.map +0 -1
  697. package/dist/v1/schema/value/profile/validate.js.map +0 -1
  698. package/dist/v1/schema/value/profile/vocabulary.d.ts.map +0 -1
  699. package/dist/v1/schema/value/profile/vocabulary.js.map +0 -1
  700. package/dist/v1/schema/value/regexp/ast.d.ts.map +0 -1
  701. package/dist/v1/schema/value/regexp/ast.js.map +0 -1
  702. package/dist/v1/schema/value/regexp/compile.d.ts.map +0 -1
  703. package/dist/v1/schema/value/regexp/compile.js.map +0 -1
  704. package/dist/v1/schema/value/regexp/linear.d.ts +0 -20
  705. package/dist/v1/schema/value/regexp/linear.d.ts.map +0 -1
  706. package/dist/v1/schema/value/regexp/linear.js +0 -24
  707. package/dist/v1/schema/value/regexp/linear.js.map +0 -1
  708. package/dist/v1/schema/value/regexp/lower.d.ts.map +0 -1
  709. package/dist/v1/schema/value/regexp/lower.js.map +0 -1
  710. package/dist/v1/schema/value/regexp/matcher.d.ts.map +0 -1
  711. package/dist/v1/schema/value/regexp/matcher.js.map +0 -1
  712. package/dist/v1/schema/value/regexp/pattern.d.ts.map +0 -1
  713. package/dist/v1/schema/value/regexp/pattern.js.map +0 -1
  714. package/dist/v1/schema/value/regexp/syntax.d.ts.map +0 -1
  715. package/dist/v1/schema/value/regexp/syntax.js.map +0 -1
  716. package/dist/v1/schema/value/registry.d.ts.map +0 -1
  717. package/dist/v1/schema/value/registry.js +0 -2
  718. package/dist/v1/schema/value/registry.js.map +0 -1
  719. package/dist/v1/schema/value/resources/closure.d.ts +0 -12
  720. package/dist/v1/schema/value/resources/closure.d.ts.map +0 -1
  721. package/dist/v1/schema/value/resources/closure.js.map +0 -1
  722. package/dist/v1/schema/value/resources/recursion.d.ts.map +0 -1
  723. package/dist/v1/schema/value/resources/recursion.js.map +0 -1
  724. package/dist/v1/schema/value/resources/references.d.ts +0 -25
  725. package/dist/v1/schema/value/resources/references.d.ts.map +0 -1
  726. package/dist/v1/schema/value/resources/references.js +0 -93
  727. package/dist/v1/schema/value/resources/references.js.map +0 -1
  728. package/dist/v1/schema/value/resources/registry.index.d.ts +0 -22
  729. package/dist/v1/schema/value/resources/registry.index.d.ts.map +0 -1
  730. package/dist/v1/schema/value/resources/registry.index.js.map +0 -1
  731. package/dist/v1/schema/value/schema.d.ts.map +0 -1
  732. package/dist/v1/schema/value/schema.js.map +0 -1
  733. package/dist/v1/schema/view/declaration.d.ts +0 -14
  734. package/dist/v1/schema/view/declaration.d.ts.map +0 -1
  735. package/dist/v1/schema/view/declaration.js +0 -2
  736. package/dist/v1/schema/view/declaration.js.map +0 -1
  737. package/dist/v1/schema/view/validate.d.ts +0 -4
  738. package/dist/v1/schema/view/validate.d.ts.map +0 -1
  739. package/dist/v1/schema/view/validate.js.map +0 -1
  740. package/dist/v1/schema.d.ts +0 -3
  741. package/dist/v1/schema.d.ts.map +0 -1
  742. package/dist/v1/schema.js +0 -3
  743. package/dist/v1/schema.js.map +0 -1
  744. package/dist/v1.d.ts.map +0 -1
  745. package/dist/v1.js.map +0 -1
  746. package/dist/value/accept.d.ts.map +0 -1
  747. package/dist/value/accept.js.map +0 -1
  748. package/dist/value/canonical.d.ts.map +0 -1
  749. package/dist/value/canonical.js.map +0 -1
  750. package/dist/value/decode.d.ts.map +0 -1
  751. package/dist/value/decode.js.map +0 -1
  752. package/dist/value/equal.d.ts.map +0 -1
  753. package/dist/value/equal.js.map +0 -1
  754. package/dist/value/error.d.ts.map +0 -1
  755. package/dist/value/error.js.map +0 -1
  756. package/dist/value/index.d.ts.map +0 -1
  757. package/dist/value/index.js.map +0 -1
  758. package/dist/value/json.d.ts.map +0 -1
  759. package/dist/value/json.js.map +0 -1
  760. package/dist/value/limits.d.ts.map +0 -1
  761. package/dist/value/limits.js.map +0 -1
  762. package/dist/value/types.d.ts.map +0 -1
  763. package/dist/value/types.js.map +0 -1
  764. package/dist/value/unicode.d.ts.map +0 -1
  765. package/dist/value/unicode.js.map +0 -1
  766. package/dist/version/dispatch.d.ts.map +0 -1
  767. package/dist/version/dispatch.js.map +0 -1
  768. package/dist/version/index.d.ts.map +0 -1
  769. package/dist/version/index.js.map +0 -1
@@ -1,71 +1,69 @@
1
- import { z } from 'zod';
1
+ import { array, boolean, custom, discriminatedUnion, enum as enumeration, lazy, literal, null as nullSchema, number, record, strictObject, string, tuple, union, } from 'zod';
2
2
  import { PropertyKey as SemanticPropertyKey } from '../../addressing/index.js';
3
- import { MEDIA_TYPE_PATTERN } from '../definition/data.js';
4
- import { DomainSchemaError, diagnostic } from '../diagnostic.js';
5
- import * as metadata from '../metadata.js';
6
- import { CORE_SLUG_PATTERN, DOMAIN_FORMAT, DOMAIN_ORIGIN_PATTERN, DOMAIN_REVISION_PATTERN, DOMAIN_VERSION, MEMBER_NAME_PATTERN, } from '../reference.js';
7
- const originSchema = z.string().min(3).max(253).regex(DOMAIN_ORIGIN_PATTERN);
8
- const memberNameSchema = z.string().regex(MEMBER_NAME_PATTERN);
9
- const propertyKeySchema = z
10
- .string()
11
- .refine(SemanticPropertyKey.is, 'Expected a canonical PropertyKey.');
12
- const coreSlugSchema = z.string().min(1).max(100).regex(CORE_SLUG_PATTERN);
13
- const revisionSchema = z.string().regex(DOMAIN_REVISION_PATTERN);
14
- const descriptionSchema = z
15
- .string()
3
+ import { CORE_SLUG_PATTERN, DEPENDENCY_ALIAS_PATTERN, DOMAIN_ORIGIN_PATTERN, DOMAIN_REVISION_PATTERN, MEMBER_NAME_PATTERN, } from '../../addressing/patterns.js';
4
+ import { MEDIA_TYPE_PATTERN } from '../../language/class/model/data.js';
5
+ import * as metadata from '../../language/definition/metadata.js';
6
+ import { SchemaError, diagnostic } from '../diagnostic.js';
7
+ import { DOMAIN_FORMAT, DOMAIN_VERSION } from '../model/format.js';
8
+ const originSchema = string().min(3).max(253).regex(DOMAIN_ORIGIN_PATTERN);
9
+ const memberNameSchema = string().regex(MEMBER_NAME_PATTERN);
10
+ const dependencyAliasSchema = string()
11
+ .regex(DEPENDENCY_ALIAS_PATTERN)
12
+ .refine((value) => value !== '__proto__' && value !== 'prototype' && value !== 'constructor', 'Expected a non-reserved dependency alias.');
13
+ const propertyKeySchema = string().refine(SemanticPropertyKey.is, 'Expected a canonical PropertyKey.');
14
+ const coreSlugSchema = string().min(1).max(100).regex(CORE_SLUG_PATTERN);
15
+ const revisionSchema = string().regex(DOMAIN_REVISION_PATTERN);
16
+ const descriptionSchema = string()
16
17
  .min(metadata.description.minLength)
17
18
  .max(metadata.description.maxLength);
18
- const iconSchema = z.string().min(metadata.icon.minLength).max(metadata.icon.maxLength);
19
- const jsonValueSchema = z.lazy(() => z.union([
20
- z.null(),
21
- z.boolean(),
22
- z.number(),
23
- z.string(),
24
- z.array(jsonValueSchema),
25
- z.record(z.string(), jsonValueSchema),
19
+ const iconSchema = string().min(metadata.icon.minLength).max(metadata.icon.maxLength);
20
+ const jsonValueSchema = lazy(() => union([
21
+ nullSchema(),
22
+ boolean(),
23
+ number(),
24
+ string(),
25
+ array(jsonValueSchema),
26
+ record(string(), jsonValueSchema),
26
27
  ]));
27
- const jsonObjectSchema = z.record(z.string(), jsonValueSchema);
28
- const jsonSchemaSchema = z.union([z.boolean(), jsonObjectSchema]);
29
- const propertySchemaRecord = z.record(memberNameSchema, jsonSchemaSchema);
30
- const requiredPropertyNames = uniqueArray(memberNameSchema);
31
- const propertyObjectSchema = z.strictObject({
32
- type: z.literal('object'),
33
- properties: propertySchemaRecord,
34
- required: requiredPropertyNames,
35
- additionalProperties: z.literal(false),
28
+ const jsonObjectSchema = record(string(), jsonValueSchema);
29
+ const jsonSchemaSchema = union([boolean(), jsonObjectSchema]);
30
+ const dataDeclarationSchema = strictObject({
31
+ mediaType: string().regex(MEDIA_TYPE_PATTERN),
36
32
  });
37
- const dataDeclarationSchema = z.strictObject({
38
- mediaType: z.string().regex(MEDIA_TYPE_PATTERN),
33
+ const stateNameSchema = string().min(1);
34
+ const stateTransitionsSchema = custom(isStateTransitions);
35
+ const stateTopologySchema = strictObject({
36
+ initial: stateNameSchema,
37
+ transitions: stateTransitionsSchema,
39
38
  });
40
- const propertyMetadataSchema = z.strictObject({
41
- visibility: z.enum(['public', 'private']),
42
- auto: z
43
- .strictObject({
44
- on: uniqueArray(z.enum(['create', 'update'])).min(1),
45
- set: z.literal('instant'),
46
- })
47
- .optional(),
39
+ const propertyDefinitionSchema = strictObject({
40
+ schema: jsonSchemaSchema,
41
+ required: boolean(),
42
+ auto: strictObject({
43
+ on: uniqueArray(enumeration(['create', 'update'])).min(1),
44
+ set: literal('instant'),
45
+ }).optional(),
46
+ description: descriptionSchema.optional(),
47
+ state: stateTopologySchema.optional(),
48
48
  });
49
- const propertyMetadataRecordSchema = z.record(memberNameSchema, propertyMetadataSchema);
50
- const domainDependencySchema = z.strictObject({
49
+ const propertyRecordSchema = record(memberNameSchema, propertyDefinitionSchema);
50
+ const domainDependencySchema = strictObject({
51
51
  origin: originSchema,
52
52
  revision: revisionSchema,
53
53
  });
54
- const interfaceRefSchema = absoluteRefSchema('interface');
55
54
  const classRefSchema = absoluteRefSchema('class');
56
55
  const functionRefSchema = absoluteRefSchema('function');
57
56
  const policyRefSchema = absoluteRefSchema('policy');
58
57
  const viewRefSchema = absoluteRefSchema('view');
59
- const coreRefSchema = z.strictObject({
58
+ const coreRefSchema = strictObject({
60
59
  origin: originSchema,
61
- kind: z.literal('core'),
60
+ kind: literal('core'),
62
61
  name: coreSlugSchema,
63
62
  });
64
- const domainRefSchema = z.strictObject({ kind: z.literal('domain') });
65
- const coreEndpointRefSchema = z.discriminatedUnion('kind', [coreRefSchema, domainRefSchema]);
66
- const definitionRefSchema = z.discriminatedUnion('kind', [interfaceRefSchema, classRefSchema]);
67
- const policyObjectRefSchema = z.discriminatedUnion('kind', [
68
- interfaceRefSchema,
63
+ const domainRefSchema = strictObject({ kind: literal('domain') });
64
+ const coreEndpointRefSchema = discriminatedUnion('kind', [coreRefSchema, domainRefSchema]);
65
+ const policyObjectRefSchema = discriminatedUnion('kind', [
66
+ strictObject({ kind: literal('method'), owner: classRefSchema, name: memberNameSchema }),
69
67
  classRefSchema,
70
68
  functionRefSchema,
71
69
  policyRefSchema,
@@ -74,115 +72,124 @@ const policyObjectRefSchema = z.discriminatedUnion('kind', [
74
72
  ]);
75
73
  const edgeEndpointBaseShape = {
76
74
  role: memberNameSchema,
77
- accepts: uniqueArray(definitionRefSchema).min(1),
75
+ accepts: uniqueArray(classRefSchema).min(1),
78
76
  };
79
- const edgeCountSchema = z.enum(['0..*', '1..*', '0..1', '1']);
80
- const directedEdgeEndpointsSchema = z.strictObject({
81
- source: z.strictObject({ ...edgeEndpointBaseShape, outgoing: edgeCountSchema }),
82
- target: z.strictObject({ ...edgeEndpointBaseShape, incoming: edgeCountSchema }),
77
+ const edgeCountSchema = enumeration(['0..*', '1..*', '0..1', '1']);
78
+ const directedEdgeEndpointsSchema = strictObject({
79
+ source: strictObject({ ...edgeEndpointBaseShape, outgoing: edgeCountSchema }),
80
+ target: strictObject({ ...edgeEndpointBaseShape, incoming: edgeCountSchema }),
83
81
  });
84
- const incidentEndpointSchema = z.strictObject({
82
+ const incidentEndpointSchema = strictObject({
85
83
  ...edgeEndpointBaseShape,
86
84
  incident: edgeCountSchema,
87
85
  });
88
- const undirectedEdgeEndpointsSchema = z.tuple([incidentEndpointSchema, incidentEndpointSchema]);
89
- const edgeConstraintsSchema = z.strictObject({
90
- noSelf: z.literal(true).optional(),
91
- acyclic: z.literal(true).optional(),
86
+ const undirectedEdgeEndpointsSchema = tuple([incidentEndpointSchema, incidentEndpointSchema]);
87
+ const edgeConstraintsSchema = strictObject({
88
+ noSelf: literal(true).optional(),
89
+ acyclic: literal(true).optional(),
92
90
  });
93
- const policyPatternSubjectSchema = z.strictObject({ kind: z.literal('subject') });
94
- const policyPatternObjectSchema = z.strictObject({ kind: z.literal('object') });
95
- const policyPatternSourceSchema = z.strictObject({ kind: z.literal('source') });
96
- const policyPatternTargetSchema = z.strictObject({ kind: z.literal('target') });
97
- const policyPatternVariableSchema = z.strictObject({
98
- kind: z.literal('variable'),
99
- id: z.number().int().min(0),
91
+ const policyPatternSubjectSchema = strictObject({ kind: literal('subject') });
92
+ const policyPatternObjectSchema = strictObject({ kind: literal('object') });
93
+ const policyPatternSourceSchema = strictObject({ kind: literal('source') });
94
+ const policyPatternTargetSchema = strictObject({ kind: literal('target') });
95
+ const policyPatternVariableSchema = strictObject({
96
+ kind: literal('variable'),
97
+ id: number().int().min(0),
100
98
  });
101
- const policyPatternNodeSchema = z.discriminatedUnion('kind', [
99
+ const policyPatternNodeSchema = discriminatedUnion('kind', [
102
100
  policyPatternSubjectSchema,
103
101
  policyPatternObjectSchema,
104
102
  policyPatternSourceSchema,
105
103
  policyPatternTargetSchema,
106
104
  policyPatternVariableSchema,
105
+ strictObject({ kind: literal('ref'), ref: policyObjectRefSchema }),
107
106
  ]);
108
- const policyVariableSchema = z.strictObject({
109
- variable: policyPatternVariableSchema,
110
- class: classRefSchema,
111
- });
112
- const policyRepeatSchema = z.strictObject({
113
- min: z.number().int().min(0).max(3),
114
- max: z.number().int().min(0).max(3),
107
+ const policyVariableSelectorSchema = discriminatedUnion('kind', [
108
+ strictObject({ kind: literal('any') }),
109
+ strictObject({ kind: literal('satisfies'), class: classRefSchema }),
110
+ ]);
111
+ const policyVariableSchema = union([
112
+ strictObject({ variable: policyPatternVariableSchema, class: classRefSchema }),
113
+ strictObject({ variable: policyPatternVariableSchema, selector: policyVariableSelectorSchema }),
114
+ ]);
115
+ const policyRepeatSchema = strictObject({
116
+ min: number().int().min(0).max(3),
117
+ max: number().int().min(0).max(3),
115
118
  });
116
- const policyPatternExpressionSchema = z.lazy(() => z.union([
117
- z.strictObject({
119
+ const policyPatternExpressionSchema = lazy(() => union([
120
+ strictObject({
121
+ sameNode: strictObject({ left: policyPatternNodeSchema, right: policyPatternNodeSchema }),
122
+ }),
123
+ strictObject({
118
124
  source: policyPatternNodeSchema,
119
125
  class: classRefSchema,
120
126
  target: policyPatternNodeSchema,
121
127
  repeat: policyRepeatSchema.optional(),
122
128
  }),
123
- z.strictObject({
124
- exists: z.strictObject({
125
- nodes: z.array(policyVariableSchema).min(1).max(4),
129
+ strictObject({
130
+ exists: strictObject({
131
+ nodes: array(policyVariableSchema).min(1).max(4),
126
132
  where: policyPatternExpressionSchema,
127
133
  }),
128
134
  }),
129
- z.strictObject({
130
- allOf: z.array(policyPatternExpressionSchema).min(1),
135
+ strictObject({
136
+ allOf: array(policyPatternExpressionSchema).min(1),
131
137
  }),
132
- z.strictObject({
133
- anyOf: z.array(policyPatternExpressionSchema).min(1),
138
+ strictObject({
139
+ anyOf: array(policyPatternExpressionSchema).min(1),
134
140
  }),
135
141
  ]));
136
- const policyCheckObjectSchema = z.discriminatedUnion('kind', [
137
- z.strictObject({ kind: z.literal('self') }),
138
- z.strictObject({
139
- kind: z.literal('input'),
142
+ const policyCheckObjectSchema = discriminatedUnion('kind', [
143
+ strictObject({ kind: literal('self') }),
144
+ strictObject({
145
+ kind: literal('input'),
140
146
  field: memberNameSchema,
141
147
  }),
142
- z.strictObject({
143
- kind: z.literal('ref'),
148
+ strictObject({
149
+ kind: literal('ref'),
144
150
  ref: policyObjectRefSchema,
145
151
  }),
146
152
  ]);
147
- const policyCheckExpressionSchema = z.lazy(() => z.union([
148
- z.strictObject({
153
+ const policyCheckExpressionSchema = lazy(() => union([
154
+ strictObject({
155
+ sameNode: strictObject({ left: policyCheckObjectSchema, right: policyCheckObjectSchema }),
156
+ }),
157
+ strictObject({
149
158
  check: policyRefSchema,
150
159
  object: policyCheckObjectSchema,
151
160
  }),
152
- z.strictObject({
153
- allOf: z.array(policyCheckExpressionSchema).min(1),
161
+ strictObject({
162
+ allOf: array(policyCheckExpressionSchema).min(1),
154
163
  }),
155
- z.strictObject({
156
- anyOf: z.array(policyCheckExpressionSchema).min(1),
164
+ strictObject({
165
+ anyOf: array(policyCheckExpressionSchema).min(1),
157
166
  }),
158
167
  ]));
159
- const callableOutputSchema = z.discriminatedUnion('mode', [
160
- z.strictObject({
161
- mode: z.literal('value'),
168
+ const callableOutputSchema = discriminatedUnion('mode', [
169
+ strictObject({
170
+ mode: literal('value'),
162
171
  schema: jsonSchemaSchema,
163
172
  }),
164
- z.strictObject({
165
- mode: z.literal('stream'),
173
+ strictObject({
174
+ mode: literal('stream'),
166
175
  item: jsonSchemaSchema,
167
176
  }),
168
- z.strictObject({
169
- mode: z.literal('binary'),
177
+ strictObject({
178
+ mode: literal('binary'),
170
179
  }),
171
180
  ]);
172
181
  const callableShape = {
173
182
  description: descriptionSchema.optional(),
174
183
  input: jsonSchemaSchema,
175
184
  output: callableOutputSchema,
176
- auth: z.enum(['anonymous', 'authenticated', 'authorized']),
185
+ auth: enumeration(['anonymous', 'authenticated', 'authorized']),
177
186
  policy: policyCheckExpressionSchema.optional(),
178
187
  };
179
- const methodDeclarationSchema = z
180
- .strictObject({
188
+ const methodDeclarationSchema = strictObject({
181
189
  ...callableShape,
182
- static: z.boolean(),
183
- inheritance: z.enum(['abstract', 'default', 'sealed']),
184
- })
185
- .superRefine((method, context) => {
190
+ static: boolean(),
191
+ inheritance: enumeration(['abstract', 'default', 'sealed']),
192
+ }).superRefine((method, context) => {
186
193
  if (method.inheritance === 'abstract' && method.policy !== undefined) {
187
194
  context.addIssue({
188
195
  code: 'custom',
@@ -200,78 +207,43 @@ const methodDeclarationSchema = z
200
207
  });
201
208
  }
202
209
  });
203
- const methodRecordSchema = z.record(memberNameSchema, methodDeclarationSchema);
204
- const nodeClassPoliciesSchema = z.strictObject({
210
+ const methodRecordSchema = record(memberNameSchema, methodDeclarationSchema);
211
+ const nodeClassPoliciesSchema = strictObject({
205
212
  read: policyRefSchema.optional(),
206
213
  traverse: policyRefSchema.optional(),
207
214
  });
208
- const edgeClassPoliciesSchema = z.strictObject({
215
+ const edgeClassPoliciesSchema = strictObject({
216
+ read: policyRefSchema.optional(),
209
217
  traverse: policyRefSchema.optional(),
210
218
  });
211
- const bothInterfaceSchema = z.strictObject({
212
- family: z.literal('both'),
219
+ const nodeClassSchema = strictObject({
220
+ ref: classRefSchema,
221
+ kind: literal('node'),
222
+ abstract: boolean(),
213
223
  description: descriptionSchema.optional(),
214
- extends: uniqueArray(interfaceRefSchema),
215
- properties: propertyObjectSchema,
216
- propertyMetadata: propertyMetadataRecordSchema,
217
- });
218
- const nodeInterfaceSchema = z.strictObject({
219
- family: z.literal('node'),
220
- description: descriptionSchema.optional(),
221
- extends: uniqueArray(interfaceRefSchema),
222
- properties: propertyObjectSchema,
223
- propertyMetadata: propertyMetadataRecordSchema,
224
- methods: methodRecordSchema,
225
- data: dataDeclarationSchema.optional(),
226
- });
227
- const edgeInterfaceShape = {
228
- family: z.literal('edge'),
229
- description: descriptionSchema.optional(),
230
- extends: uniqueArray(interfaceRefSchema),
231
- properties: propertyObjectSchema,
232
- propertyMetadata: propertyMetadataRecordSchema,
233
- constraints: edgeConstraintsSchema,
234
- };
235
- const edgeInterfaceSchema = z
236
- .strictObject({
237
- ...edgeInterfaceShape,
238
- orientation: z.enum(['directed', 'undirected']),
239
- endpoints: z.union([directedEdgeEndpointsSchema, undirectedEdgeEndpointsSchema]),
240
- })
241
- .superRefine(validateEdgeOrientationShape);
242
- const interfaceDeclarationSchema = z.discriminatedUnion('family', [
243
- bothInterfaceSchema,
244
- nodeInterfaceSchema,
245
- edgeInterfaceSchema,
246
- ]);
247
- const nodeClassSchema = z.strictObject({
248
- family: z.literal('node'),
249
- description: descriptionSchema.optional(),
250
- implements: uniqueArray(interfaceRefSchema),
251
- properties: propertyObjectSchema,
252
- propertyMetadata: propertyMetadataRecordSchema,
224
+ extends: uniqueArray(classRefSchema),
225
+ properties: propertyRecordSchema,
253
226
  methods: methodRecordSchema,
254
227
  data: dataDeclarationSchema.optional(),
255
228
  icon: iconSchema.optional(),
256
229
  policies: nodeClassPoliciesSchema,
257
230
  });
258
231
  const edgeClassShape = {
259
- family: z.literal('edge'),
232
+ ref: classRefSchema,
233
+ kind: literal('edge'),
234
+ abstract: boolean(),
260
235
  description: descriptionSchema.optional(),
261
- implements: uniqueArray(interfaceRefSchema),
262
- properties: propertyObjectSchema,
263
- propertyMetadata: propertyMetadataRecordSchema,
264
- policies: edgeClassPoliciesSchema,
236
+ extends: uniqueArray(classRefSchema),
237
+ properties: propertyRecordSchema,
265
238
  constraints: edgeConstraintsSchema,
266
239
  };
267
- const edgeClassSchema = z
268
- .strictObject({
240
+ const edgeClassSchema = strictObject({
269
241
  ...edgeClassShape,
270
- orientation: z.enum(['directed', 'undirected']),
271
- endpoints: z.union([directedEdgeEndpointsSchema, undirectedEdgeEndpointsSchema]),
272
- })
273
- .superRefine(validateEdgeOrientationShape);
274
- const classDeclarationSchema = z.discriminatedUnion('family', [nodeClassSchema, edgeClassSchema]);
242
+ orientation: enumeration(['directed', 'undirected']),
243
+ endpoints: union([directedEdgeEndpointsSchema, undirectedEdgeEndpointsSchema]),
244
+ policies: edgeClassPoliciesSchema,
245
+ }).superRefine(validateEdgeOrientationShape);
246
+ const classDeclarationSchema = discriminatedUnion('kind', [nodeClassSchema, edgeClassSchema]);
275
247
  function validateEdgeOrientationShape(value, context) {
276
248
  if ((value.orientation === 'undirected') === Array.isArray(value.endpoints))
277
249
  return;
@@ -282,8 +254,11 @@ function validateEdgeOrientationShape(value, context) {
282
254
  params: { structureCode: 'STRUCTURE_EDGE_ORIENTATION' },
283
255
  });
284
256
  }
285
- const functionDeclarationSchema = z.strictObject(callableShape).superRefine((fn, context) => {
286
- if (fn.auth !== 'authorized' && fn.policy !== undefined) {
257
+ const functionDefinitionSchema = strictObject({
258
+ ref: functionRefSchema,
259
+ ...callableShape,
260
+ }).superRefine((callable, context) => {
261
+ if (callable.auth !== 'authorized' && callable.policy !== undefined) {
287
262
  context.addIssue({
288
263
  code: 'custom',
289
264
  path: ['policy'],
@@ -292,57 +267,58 @@ const functionDeclarationSchema = z.strictObject(callableShape).superRefine((fn,
292
267
  });
293
268
  }
294
269
  });
295
- const policyDeclarationSchema = z.union([
296
- z.strictObject({
297
- description: descriptionSchema.optional(),
270
+ const policyExpressionSchema = union([
271
+ strictObject({
298
272
  match: policyPatternExpressionSchema,
299
273
  }),
300
- z.strictObject({
301
- description: descriptionSchema.optional(),
302
- allOf: z.array(policyRefSchema).min(1),
274
+ strictObject({
275
+ allOf: array(policyRefSchema).min(1),
303
276
  }),
304
- z.strictObject({
305
- description: descriptionSchema.optional(),
306
- anyOf: z.array(policyRefSchema).min(1),
277
+ strictObject({
278
+ anyOf: array(policyRefSchema).min(1),
307
279
  }),
308
280
  ]);
309
- const viewTargetSchema = z.discriminatedUnion('kind', [
310
- z.strictObject({ kind: z.literal('domain') }),
311
- z.strictObject({
312
- kind: z.literal('definition'),
313
- definitions: uniqueArray(definitionRefSchema).min(1),
281
+ const policyDefinitionSchema = strictObject({
282
+ ref: policyRefSchema,
283
+ expression: policyExpressionSchema,
284
+ description: descriptionSchema.optional(),
285
+ });
286
+ const viewTargetSchema = discriminatedUnion('kind', [
287
+ strictObject({ kind: literal('domain') }),
288
+ strictObject({
289
+ kind: literal('definition'),
290
+ definitions: uniqueArray(classRefSchema).min(1),
314
291
  }),
315
292
  ]);
316
- const viewDeclarationSchema = z.strictObject({
293
+ const viewDefinitionSchema = strictObject({
294
+ ref: viewRefSchema,
317
295
  description: descriptionSchema.optional(),
318
296
  target: viewTargetSchema,
319
- auth: z.enum(['required', 'optional', 'public']),
320
297
  });
321
- const coreNodeSchema = z.strictObject({
298
+ const coreNodeSchema = strictObject({
299
+ ref: coreRefSchema,
322
300
  class: classRefSchema,
323
- properties: z.record(propertyKeySchema, jsonValueSchema),
301
+ properties: record(propertyKeySchema, jsonValueSchema),
324
302
  });
325
- const coreEdgeSchema = z.strictObject({
303
+ const coreEdgeSchema = strictObject({
326
304
  class: classRefSchema,
327
305
  source: coreEndpointRefSchema,
328
306
  target: coreEndpointRefSchema,
329
- properties: z.record(propertyKeySchema, jsonValueSchema),
307
+ properties: record(propertyKeySchema, jsonValueSchema),
330
308
  });
331
- const coreSchema = z.strictObject({
332
- nodes: z.record(coreSlugSchema, coreNodeSchema),
333
- edges: z.array(coreEdgeSchema),
309
+ const coreSchema = strictObject({
310
+ nodes: record(coreSlugSchema, coreNodeSchema),
311
+ edges: array(coreEdgeSchema),
334
312
  });
335
- const structuralSchema = z.strictObject({
336
- format: z.literal(DOMAIN_FORMAT),
337
- version: z.literal(DOMAIN_VERSION),
313
+ const structuralSchema = strictObject({
314
+ format: literal(DOMAIN_FORMAT),
315
+ version: literal(DOMAIN_VERSION),
338
316
  origin: originSchema,
339
- dependencies: z.array(domainDependencySchema),
340
- types: z.record(memberNameSchema, jsonSchemaSchema),
341
- interfaces: z.record(memberNameSchema, interfaceDeclarationSchema),
342
- classes: z.record(memberNameSchema, classDeclarationSchema),
343
- functions: z.record(memberNameSchema, functionDeclarationSchema),
344
- policies: z.record(memberNameSchema, policyDeclarationSchema),
345
- views: z.record(memberNameSchema, viewDeclarationSchema),
317
+ dependencies: record(dependencyAliasSchema, domainDependencySchema),
318
+ classes: record(memberNameSchema, classDeclarationSchema),
319
+ functions: record(memberNameSchema, functionDefinitionSchema),
320
+ policies: record(memberNameSchema, policyDefinitionSchema),
321
+ views: record(memberNameSchema, viewDefinitionSchema),
346
322
  core: coreSchema,
347
323
  });
348
324
  export const domainSchemaStructuralSchema = structuralSchema;
@@ -350,17 +326,41 @@ export function parseDomainSchemaStructure(input) {
350
326
  const result = domainSchemaStructuralSchema.safeParse(input);
351
327
  if (result.success)
352
328
  return result.data;
353
- throw new DomainSchemaError(result.error.issues.flatMap((issue) => diagnosticsForIssue(issue, input)));
329
+ throw new SchemaError(result.error.issues.flatMap((issue) => diagnosticsForIssue(issue, input)));
354
330
  }
355
331
  function absoluteRefSchema(kind) {
356
- return z.strictObject({
332
+ return strictObject({
357
333
  origin: originSchema,
358
- kind: z.literal(kind),
334
+ kind: literal(kind),
359
335
  name: memberNameSchema,
360
336
  });
361
337
  }
338
+ function isStateTransitions(input) {
339
+ if (!isRecord(input))
340
+ return false;
341
+ for (const state of Reflect.ownKeys(input)) {
342
+ if (typeof state !== 'string' || state.length === 0)
343
+ return false;
344
+ const outgoing = Reflect.get(input, state);
345
+ if (!isRecord(outgoing))
346
+ return false;
347
+ for (const event of Reflect.ownKeys(outgoing)) {
348
+ const target = Reflect.get(outgoing, event);
349
+ if (typeof event !== 'string' ||
350
+ event.length === 0 ||
351
+ typeof target !== 'string' ||
352
+ target.length === 0) {
353
+ return false;
354
+ }
355
+ }
356
+ }
357
+ return true;
358
+ }
359
+ function isRecord(input) {
360
+ return input !== null && typeof input === 'object' && !Array.isArray(input);
361
+ }
362
362
  function uniqueArray(element) {
363
- return z.array(element).superRefine((values, context) => {
363
+ return array(element).superRefine((values, context) => {
364
364
  const firstIndexByValue = new Map();
365
365
  values.forEach((value, index) => {
366
366
  const key = canonicalJson(value);
@@ -392,13 +392,22 @@ function diagnosticsForIssue(issue, input) {
392
392
  if (issue.code === 'unrecognized_keys') {
393
393
  return issue.keys.map((key) => diagnostic('STRUCTURE_UNKNOWN_FIELD', pointer([...issue.path, key]), `Unknown field ${JSON.stringify(key)}.`));
394
394
  }
395
- const customCode = issue.code === 'custom' && typeof issue.params?.structureCode === 'string'
396
- ? issue.params.structureCode
397
- : undefined;
395
+ const customCode = issue.code === 'custom' ? customStructureCode(issue.params?.structureCode) : undefined;
398
396
  return [
399
397
  diagnostic(customCode ?? structureCode(issue, input), pointer(issue.path), structureMessage(issue, input)),
400
398
  ];
401
399
  }
400
+ function customStructureCode(input) {
401
+ switch (input) {
402
+ case 'STRUCTURE_ABSTRACT_POLICY':
403
+ case 'STRUCTURE_CALLABLE_POLICY_AUTH':
404
+ case 'STRUCTURE_DUPLICATE_ITEM':
405
+ case 'STRUCTURE_EDGE_ORIENTATION':
406
+ return input;
407
+ default:
408
+ return undefined;
409
+ }
410
+ }
402
411
  function structureCode(issue, input) {
403
412
  switch (issue.code) {
404
413
  case 'invalid_type':
@@ -450,4 +459,3 @@ function pointer(path) {
450
459
  function escapePointerSegment(segment) {
451
460
  return segment.replaceAll('~', '~0').replaceAll('/', '~1');
452
461
  }
453
- //# sourceMappingURL=domain.structure.js.map
@@ -0,0 +1,4 @@
1
+ import type { PolicyValidationContext } from './context.js';
2
+ import { BRANCH_OVERFLOW, MAX_BRANCHES, MAX_CHECK_DEPTH, MAX_CHECK_LEAVES, MAX_DOMAINS, MAX_EDGES, MAX_PATTERN_DEPTH, MAX_REPEAT, MAX_VARIABLES, measureChecks } from '../../../language/policy/analysis/budgets.js';
3
+ export { BRANCH_OVERFLOW, MAX_BRANCHES, MAX_CHECK_DEPTH, MAX_CHECK_LEAVES, MAX_DOMAINS, MAX_EDGES, MAX_PATTERN_DEPTH, MAX_REPEAT, MAX_VARIABLES, measureChecks, };
4
+ export declare function validatePolicyBudgets(context: PolicyValidationContext): void;