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

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 +247 -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
@@ -0,0 +1,42 @@
1
+ import type { Object as JsonObject } from '@astrale-os/kernel-dsl/value';
2
+ import type { CoreRef } from '../../addressing/index.js';
3
+ import type { DomainEndpointRef } from '../../language/core/model/core.js';
4
+ import type { EdgeClass, NodeClass } from '../class/authoring.js';
5
+ import type { AUTHORING } from '../schema/handle.js';
6
+ import type { Lazy } from '../schema/lazy.js';
7
+ import type { CoreNamedPropertyInput } from '../schema/projection.js';
8
+ interface CoreNodeConfiguration {
9
+ readonly class: Lazy<NodeClass>;
10
+ readonly properties: JsonObject;
11
+ }
12
+ interface CoreEdgeConfiguration {
13
+ readonly source: CoreEndpoint;
14
+ readonly class: Lazy<EdgeClass>;
15
+ readonly target: CoreEndpoint;
16
+ readonly properties: JsonObject;
17
+ }
18
+ export interface CoreNode {
19
+ readonly [AUTHORING]: 'core-node';
20
+ }
21
+ export type CoreEndpoint = CoreNode | CoreRef | DomainEndpointRef;
22
+ export interface CoreEdge {
23
+ readonly [AUTHORING]: 'core-edge';
24
+ }
25
+ export interface CoreInput {
26
+ readonly nodes?: Readonly<Record<string, CoreNode>>;
27
+ readonly edges?: readonly CoreEdge[];
28
+ }
29
+ /** Internal lowering access; Core Node handles expose no public configuration object. */
30
+ export declare function coreNodeConfiguration(value: CoreNode): CoreNodeConfiguration;
31
+ /** Internal lowering access; Core Edge handles expose no public configuration object. */
32
+ export declare function coreEdgeConfiguration(value: CoreEdge): CoreEdgeConfiguration;
33
+ declare function node(definition: () => NodeClass, properties: JsonObject): CoreNode;
34
+ declare function node<const Definition extends NodeClass, const Properties extends CoreNamedPropertyInput<Definition> & JsonObject>(definition: Definition, properties: Properties): CoreNode;
35
+ declare function edge(source: CoreEndpoint, definition: () => EdgeClass, target: CoreEndpoint, properties: JsonObject): CoreEdge;
36
+ declare function edge<const Definition extends EdgeClass, const Properties extends CoreNamedPropertyInput<Definition> & JsonObject>(source: CoreEndpoint, definition: Definition, target: CoreEndpoint, properties: Properties): CoreEdge;
37
+ export declare const core: Readonly<{
38
+ node: typeof node;
39
+ edge: typeof edge;
40
+ domain: DomainEndpointRef;
41
+ }>;
42
+ export {};
@@ -0,0 +1,39 @@
1
+ import { accept as acceptJsonValue } from '@astrale-os/kernel-dsl/value';
2
+ import { authoringValue } from '../schema/handle.js';
3
+ const coreNodeConfigurations = new WeakMap();
4
+ const coreEdgeConfigurations = new WeakMap();
5
+ /** Reference the owning Domain instance as one Core Edge endpoint. */
6
+ const domain = Object.freeze({ kind: 'domain' });
7
+ /** Internal lowering access; Core Node handles expose no public configuration object. */
8
+ export function coreNodeConfiguration(value) {
9
+ const configuration = coreNodeConfigurations.get(value);
10
+ if (configuration === undefined)
11
+ throw new TypeError('Unknown Core Node authoring handle.');
12
+ return configuration;
13
+ }
14
+ /** Internal lowering access; Core Edge handles expose no public configuration object. */
15
+ export function coreEdgeConfiguration(value) {
16
+ const configuration = coreEdgeConfigurations.get(value);
17
+ if (configuration === undefined)
18
+ throw new TypeError('Unknown Core Edge authoring handle.');
19
+ return configuration;
20
+ }
21
+ function node(definition, properties) {
22
+ const value = authoringValue('core-node', {});
23
+ coreNodeConfigurations.set(value, {
24
+ class: definition,
25
+ properties: acceptJsonValue(properties),
26
+ });
27
+ return value;
28
+ }
29
+ function edge(source, definition, target, properties) {
30
+ const value = authoringValue('core-edge', {});
31
+ coreEdgeConfigurations.set(value, {
32
+ source,
33
+ class: definition,
34
+ target,
35
+ properties: acceptJsonValue(properties),
36
+ });
37
+ return value;
38
+ }
39
+ export const core = Object.freeze({ node, edge, domain });
@@ -1,22 +1,26 @@
1
- export { fn, output } from './callable.js';
2
- export { domain, edge, node } from './core.js';
3
- export { defineInterface, edgeClass, edgeInterface, nodeClass, nodeInterface, } from './definition.js';
4
- export { fullMatch } from './full-match.js';
5
- export type { FullMatch } from './full-match.js';
6
- export { path } from './path.js';
7
- export { definePolicy, policy } from './policy.js';
8
- export { auto, property } from './property.js';
9
- export { defineSchema } from './schema.js';
10
- export { valueSchema } from './value-schema.js';
11
- export { view } from './view.js';
12
- export type { AuthoredCallableInput, CallableInput, CallableOutputInput, CallablePolicyBuilder, CallablePolicyContext, BinaryOutput, FunctionAuthoring as Function, PolicyObjectAuthoring, PolicyObjectInput, StreamOutput, } from './callable.js';
13
- export type { CoreEdgeAuthoring as Edge, CoreEndpointAuthoring as CoreEndpoint, CoreInput as Core, CoreNodeAuthoring as Node, } from './core.js';
14
- export type { DefinitionAuthoring as Definition, DefinitionReferenceInput as DefinitionRef, DefinitionReferenceInput as DefinitionReference, DirectedEdgeClassAuthoring as DirectedEdgeClass, DirectedEdgeClassInput, DirectedSourceInput as DirectedSource, DirectedTargetInput as DirectedTarget, EdgeClassAuthoring as EdgeClass, EdgeInterfaceAuthoring as EdgeInterface, EdgeClassOptions, EdgeInterfaceOptions, EndpointInput as Endpoint, IncidentEndpointInput as IncidentEndpoint, InterfaceAuthoring as Interface, InterfaceInput, NodeClassAuthoring as NodeClass, NodeClassInput, NodeDefinitionReferenceInput as NodeDefinitionReference, NodeInterfaceAuthoring as NodeInterface, NodeInterfaceInput, UndirectedEdgeClassAuthoring as UndirectedEdgeClass, UndirectedEdgeClassInput, } from './definition.js';
15
- export type { PathAuthoring as Path } from './path.js';
16
- export type { Lazy } from './internal/authoring.lazy.js';
17
- export type { MatchPolicyInput, Policy, PolicyComposition, PolicyEdgeInput, PolicyExistsContext, PolicyInput, PolicyPatternContext, } from './policy.js';
18
- export type { AutoOptions, AutoPropertyAuthoring as AutoProperty, PropertyAuthoring as Property, PropertyFieldInput, PropertyOptions, PropertyRecordInput, ValueSchemaInput, } from './property.js';
19
- export type { DomainSchemaInput as SchemaInput } from './schema.input.js';
20
- export type { TypedValueSchema } from './value-schema.js';
21
- export type { ViewAuthoring as View, ViewDefinitionTargetsInput, ViewInput, ViewTargetInput, } from './view.js';
22
- //# sourceMappingURL=index.d.ts.map
1
+ export { func, method, output } from './callable/authoring.js';
2
+ export { core } from './core/authoring.js';
3
+ export { defineClass, edgeClass, nodeClass } from './class/authoring.js';
4
+ export { fullMatch } from './value/full-match.js';
5
+ export { path } from './value/path.js';
6
+ export { policy } from './policy/authoring.js';
7
+ export { auto, property, stateProperty } from './class/property.js';
8
+ export { defineSchema } from './schema/define.js';
9
+ export type { DefinedSchema } from './schema/define.js';
10
+ export type { ResolvedDomainOfInput } from './schema/projection.js';
11
+ export { valueSchema } from './value/schema.js';
12
+ export { view } from './view/authoring.js';
13
+ export { BuilderError as Error } from './schema/diagnostic.js';
14
+ export type { BuilderDiagnostic as Diagnostic, BuilderDiagnosticCode as DiagnosticCode, } from './schema/diagnostic.js';
15
+ export type { CallableInputBase, CallableInput, CallableOutputInput, CallableProjection, CallablePolicyBuilder, CallablePolicyContext, BinaryOutput, Function, FunctionInput, Method, MethodInput, PolicyObjectInput, StreamOutput, } from './callable/authoring.js';
16
+ export type { CoreEdge, CoreEndpoint, CoreInput, CoreNode } from './core/authoring.js';
17
+ export type { AuthoredPropertyProjection, AuthoredMethodProjection, Class, ClassIdentityProjection, ClassOwnerProjection, ClassReferenceProjection, ClassReferenceInput as ClassReference, DirectedEdgeInput, DirectedEdgeClass, DirectedSourceInput, DirectedTargetInput, EdgeClassCommon, EdgeClassInput, EdgeClass, EdgeClassReferenceInput as EdgeClassReference, IncidentEndpointInput, NodeClass, NodeClassInput, NodeClassReferenceInput as NodeClassReference, UndirectedEdgeInput, UndirectedEdgeClass, } from './class/authoring.js';
18
+ export type { PathAuthoring } from './value/path.js';
19
+ export type { Lazy } from './schema/lazy.js';
20
+ export type { MatchPolicyInput, Policy, PolicyBuilder as PolicyFactory, PolicyEdgeInput, PolicyExistsContext, PolicyInput, PolicyPatternContext, } from './policy/authoring.js';
21
+ export type { AutoOptions, AutoProperty, Property, PropertyFieldInput as PropertyField, PropertyOptions, ValueSchemaInput, } from './class/property.js';
22
+ export type { CorePropertyInput } from './schema/projection.js';
23
+ export type { ClassProjection, FunctionProjection, MethodProjection, PropertyProjection, } from './schema/projection.js';
24
+ export type { DomainSchemaInput as SchemaInput } from './schema/input.js';
25
+ export type { TypedValueSchema } from './value/schema.js';
26
+ export type { View, ViewInput } from './view/authoring.js';
@@ -1,11 +1,11 @@
1
- export { fn, output } from './callable.js';
2
- export { domain, edge, node } from './core.js';
3
- export { defineInterface, edgeClass, edgeInterface, nodeClass, nodeInterface, } from './definition.js';
4
- export { fullMatch } from './full-match.js';
5
- export { path } from './path.js';
6
- export { definePolicy, policy } from './policy.js';
7
- export { auto, property } from './property.js';
8
- export { defineSchema } from './schema.js';
9
- export { valueSchema } from './value-schema.js';
10
- export { view } from './view.js';
11
- //# sourceMappingURL=index.js.map
1
+ export { func, method, output } from './callable/authoring.js';
2
+ export { core } from './core/authoring.js';
3
+ export { defineClass, edgeClass, nodeClass } from './class/authoring.js';
4
+ export { fullMatch } from './value/full-match.js';
5
+ export { path } from './value/path.js';
6
+ export { policy } from './policy/authoring.js';
7
+ export { auto, property, stateProperty } from './class/property.js';
8
+ export { defineSchema } from './schema/define.js';
9
+ export { valueSchema } from './value/schema.js';
10
+ export { view } from './view/authoring.js';
11
+ export { BuilderError as Error } from './schema/diagnostic.js';
@@ -0,0 +1,24 @@
1
+ import type { FunctionRef } from '../../addressing/index.js';
2
+ import type { FunctionDefinition, MethodDefinition } from '../../language/callable/model/callable.js';
3
+ import type { Function, Method } from '../callable/authoring.js';
4
+ import type { BuilderContext } from './schema/context.js';
5
+ import type { BuilderValueSchemas } from './value/compile.js';
6
+ export type CallablePlacement = {
7
+ readonly kind: 'function';
8
+ readonly ref: FunctionRef;
9
+ readonly pointer: string;
10
+ } | {
11
+ readonly kind: 'node-class-method';
12
+ readonly pointer: string;
13
+ };
14
+ export interface CallableCompiler {
15
+ compile(value: Function | Method, placement: CallablePlacement): FunctionDefinition | MethodDefinition;
16
+ }
17
+ export declare class V1CallableCompiler implements CallableCompiler {
18
+ readonly context: BuilderContext;
19
+ readonly values: BuilderValueSchemas;
20
+ constructor(context: BuilderContext, values: BuilderValueSchemas);
21
+ compile(value: Function | Method, placement: CallablePlacement): FunctionDefinition | MethodDefinition;
22
+ private compileOutput;
23
+ private policyContext;
24
+ }
@@ -1,6 +1,6 @@
1
- import { normalizePolicyChecks } from '../../schema/policy/normalize.js';
2
- import { callableInputField, callablePolicyObject, callableRef, callableSelf, isCallableOutputAuthoring, } from '../callable.js';
3
- import { fail } from '../internal/diagnostic.js';
1
+ import { normalizePolicyChecks } from '../../language/policy/normalization/normalize.js';
2
+ import { callableInputField, callableConfiguration, callablePolicyObject, callableRef, callableSelf, isCallableOutputAuthoring, } from '../callable/authoring.js';
3
+ import { fail } from '../schema/diagnostic.js';
4
4
  export class V1CallableCompiler {
5
5
  context;
6
6
  values;
@@ -9,11 +9,11 @@ export class V1CallableCompiler {
9
9
  this.values = values;
10
10
  }
11
11
  compile(value, placement) {
12
- const config = value.config;
12
+ const config = callableConfiguration(value);
13
13
  if (config.auth !== 'anonymous' &&
14
14
  config.auth !== 'authenticated' &&
15
15
  config.auth !== 'authorized') {
16
- fail('BUILDER_CALLABLE_AUTH', `${placement.pointer}/auth`, 'Function authentication must be anonymous, authenticated, or authorized.');
16
+ fail('BUILDER_CALLABLE_AUTH', `${placement.pointer}/auth`, 'Function auth must be anonymous, authenticated, or authorized.');
17
17
  }
18
18
  const auth = config.auth;
19
19
  if (auth !== 'authorized' && config.policy !== undefined) {
@@ -24,10 +24,7 @@ export class V1CallableCompiler {
24
24
  fail('BUILDER_CALLABLE_PLACEMENT', placement.pointer, 'A standalone Function cannot declare Method staticness or inheritance.');
25
25
  }
26
26
  const isStatic = method ? (config.static ?? false) : undefined;
27
- const inheritance = method
28
- ? (config.inheritance ??
29
- (placement.kind === 'node-interface-method' ? 'abstract' : 'default'))
30
- : undefined;
27
+ const inheritance = method ? (config.inheritance ?? 'default') : undefined;
31
28
  if (inheritance === 'abstract' && config.policy !== undefined) {
32
29
  fail('BUILDER_ABSTRACT_POLICY', `${placement.pointer}/policy`, 'An abstract Method cannot declare a Policy check.');
33
30
  }
@@ -36,15 +33,16 @@ export class V1CallableCompiler {
36
33
  const policy = config.policy === undefined
37
34
  ? undefined
38
35
  : normalizePolicyChecks(config.policy(this.policyContext(input, placement, isStatic ?? false)));
39
- const contract = {
36
+ const base = {
40
37
  ...(config.description === undefined ? {} : { description: config.description }),
41
38
  input,
42
39
  output,
43
- auth,
44
- ...(policy === undefined ? {} : { policy }),
45
40
  };
41
+ const contract = auth === 'authorized'
42
+ ? { ...base, auth, ...(policy === undefined ? {} : { policy }) }
43
+ : { ...base, auth };
46
44
  if (!method)
47
- return contract;
45
+ return { ref: placement.ref, ...contract };
48
46
  return {
49
47
  ...contract,
50
48
  static: isStatic,
@@ -135,4 +133,3 @@ function nonEmpty(values, pointer) {
135
133
  if (values.length === 0)
136
134
  fail('BUILDER_POLICY_EMPTY_COMPOSITION', pointer, 'Policy check composition must be non-empty.');
137
135
  }
138
- //# sourceMappingURL=callable.js.map
@@ -0,0 +1,22 @@
1
+ import type { ClassDefinition } from '../../language/class/model/class.js';
2
+ import type { Class } from '../class/authoring.js';
3
+ import type { CallableCompiler } from './callable.js';
4
+ import type { PolicyCompiler } from './policy.js';
5
+ import type { BuilderContext } from './schema/context.js';
6
+ import type { BuilderValueSchemas } from './value/compile.js';
7
+ export declare class V1DefinitionCompiler {
8
+ readonly context: BuilderContext;
9
+ readonly values: BuilderValueSchemas;
10
+ readonly callables: CallableCompiler;
11
+ readonly policies: PolicyCompiler;
12
+ constructor(context: BuilderContext, values: BuilderValueSchemas, callables: CallableCompiler, policies: PolicyCompiler);
13
+ compileClass(value: Class, name: string, pointer: string): ClassDefinition;
14
+ private nodeClass;
15
+ private edgeClass;
16
+ private endpointBase;
17
+ private directedSource;
18
+ private directedTarget;
19
+ private incidentEndpoint;
20
+ private parents;
21
+ private methods;
22
+ }
@@ -0,0 +1,134 @@
1
+ import { compareDefinitionRefs } from '../../addressing/ordering.js';
2
+ import { classConfiguration } from '../class/authoring.js';
3
+ import { escapeToken } from '../schema/diagnostic.js';
4
+ export class V1DefinitionCompiler {
5
+ context;
6
+ values;
7
+ callables;
8
+ policies;
9
+ constructor(context, values, callables, policies) {
10
+ this.context = context;
11
+ this.values = values;
12
+ this.callables = callables;
13
+ this.policies = policies;
14
+ }
15
+ compileClass(value, name, pointer) {
16
+ return value.kind === 'node'
17
+ ? this.nodeClass(value, name, pointer)
18
+ : this.edgeClass(value, name, pointer);
19
+ }
20
+ nodeClass(value, name, pointer) {
21
+ const input = classConfiguration(value);
22
+ const facet = this.values.properties(input.properties, `${pointer}/properties`);
23
+ const data = dataDeclaration(input.data);
24
+ return {
25
+ ref: { origin: this.context.origin, kind: 'class', name },
26
+ kind: 'node',
27
+ abstract: input.abstract ?? false,
28
+ ...(input.description === undefined ? {} : { description: input.description }),
29
+ extends: this.parents(input.extends, 'node', `${pointer}/extends`),
30
+ properties: facet,
31
+ methods: this.methods(input.methods, `${pointer}/methods`),
32
+ ...(data === undefined ? {} : { data }),
33
+ ...(input.icon === undefined ? {} : { icon: input.icon }),
34
+ policies: {
35
+ ...(input.policies?.read === undefined
36
+ ? {}
37
+ : { read: this.policies.ref(input.policies.read, `${pointer}/policies/read`) }),
38
+ ...(input.policies?.traverse === undefined
39
+ ? {}
40
+ : {
41
+ traverse: this.policies.ref(input.policies.traverse, `${pointer}/policies/traverse`),
42
+ }),
43
+ },
44
+ };
45
+ }
46
+ edgeClass(value, name, pointer) {
47
+ const input = classConfiguration(value);
48
+ const facet = this.values.properties(input.properties, `${pointer}/properties`);
49
+ const contract = (() => {
50
+ if (value.orientation === 'directed') {
51
+ const directed = classConfiguration(value);
52
+ return {
53
+ orientation: 'directed',
54
+ endpoints: {
55
+ source: this.directedSource(directed.source, `${pointer}/endpoints/source`),
56
+ target: this.directedTarget(directed.target, `${pointer}/endpoints/target`),
57
+ },
58
+ constraints: directedConstraints(directed),
59
+ };
60
+ }
61
+ const undirected = classConfiguration(value);
62
+ return {
63
+ orientation: 'undirected',
64
+ endpoints: [
65
+ this.incidentEndpoint(undirected.endpoints[0], `${pointer}/endpoints/0`),
66
+ this.incidentEndpoint(undirected.endpoints[1], `${pointer}/endpoints/1`),
67
+ ],
68
+ constraints: undirectedConstraints(undirected),
69
+ };
70
+ })();
71
+ return {
72
+ ref: { origin: this.context.origin, kind: 'class', name },
73
+ kind: 'edge',
74
+ abstract: input.abstract ?? false,
75
+ ...(input.description === undefined ? {} : { description: input.description }),
76
+ extends: this.parents(input.extends, 'edge', `${pointer}/extends`),
77
+ properties: facet,
78
+ ...contract,
79
+ policies: {
80
+ ...(input.policies?.read === undefined
81
+ ? {}
82
+ : { read: this.policies.ref(input.policies.read, `${pointer}/policies/read`) }),
83
+ ...(input.policies?.traverse === undefined
84
+ ? {}
85
+ : {
86
+ traverse: this.policies.ref(input.policies.traverse, `${pointer}/policies/traverse`),
87
+ }),
88
+ },
89
+ };
90
+ }
91
+ endpointBase(value, pointer) {
92
+ return {
93
+ role: value.as,
94
+ accepts: value.accepts
95
+ .map((entry, index) => this.context.resolveNodeClass(entry, `${pointer}/accepts/${index}`))
96
+ .sort(compareDefinitionRefs),
97
+ };
98
+ }
99
+ directedSource(value, pointer) {
100
+ return { ...this.endpointBase(value, pointer), outgoing: value.outgoing };
101
+ }
102
+ directedTarget(value, pointer) {
103
+ return { ...this.endpointBase(value, pointer), incoming: value.incoming };
104
+ }
105
+ incidentEndpoint(value, pointer) {
106
+ return { ...this.endpointBase(value, pointer), incident: value.incident };
107
+ }
108
+ parents(values, kind, pointer) {
109
+ return (values ?? [])
110
+ .map((entry, index) => this.context.resolveClass(entry, kind, `${pointer}/${index}`))
111
+ .sort(compareDefinitionRefs);
112
+ }
113
+ methods(values, pointer) {
114
+ return Object.fromEntries(Object.entries(values ?? {}).map(([name, value]) => [
115
+ name,
116
+ this.callables.compile(value, {
117
+ kind: 'node-class-method',
118
+ pointer: `${pointer}/${escapeToken(name)}`,
119
+ }),
120
+ ]));
121
+ }
122
+ }
123
+ function dataDeclaration(mediaType) {
124
+ return mediaType === undefined ? undefined : { mediaType };
125
+ }
126
+ function directedConstraints(options) {
127
+ return {
128
+ ...(options.constraints?.noSelf === true ? { noSelf: true } : {}),
129
+ ...(options.constraints?.acyclic === true ? { acyclic: true } : {}),
130
+ };
131
+ }
132
+ function undirectedConstraints(options) {
133
+ return options.constraints?.noSelf === true ? { noSelf: true } : {};
134
+ }
@@ -0,0 +1,10 @@
1
+ import type { CoreContent } from '../../language/core/model/core.js';
2
+ import type { DomainSchemaLookup } from '../../schema/dependency/lookup.js';
3
+ import type { DomainSchemaIR } from '../../schema/model/schema.js';
4
+ import type { UnqualifiedCoreContent } from './core.js';
5
+ type UnqualifiedDomainSchema = Omit<DomainSchemaIR, 'core'> & {
6
+ readonly core: UnqualifiedCoreContent;
7
+ };
8
+ /** Lower rich builder shorthand to the canonical full-key Core representation. */
9
+ export declare function canonicalizeCorePropertyKeys(candidate: UnqualifiedDomainSchema, lookup: DomainSchemaLookup): CoreContent;
10
+ export {};
@@ -1,13 +1,20 @@
1
1
  import { PropertyKey as admitPropertyKey } from '../../addressing/index.js';
2
- import { analyzeDefinitions } from '../../schema/definition/analysis.js';
3
- import { schemaRefIndex } from '../../schema/reference.js';
2
+ import { definitionRefIndex } from '../../addressing/ordering.js';
3
+ import { createPropertyValues } from '../../language/class/property-values.js';
4
+ import { analyzeDefinitions } from '../../schema/analysis/class.js';
4
5
  import { buildDomainResolutionContext } from '../../schema/resolution/context.js';
5
- import { escapeToken, fail } from '../internal/diagnostic.js';
6
+ import { escapeToken, fail } from '../schema/diagnostic.js';
6
7
  /** Lower rich builder shorthand to the canonical full-key Core representation. */
7
8
  export function canonicalizeCorePropertyKeys(candidate, lookup) {
8
- const definitions = analyzeDefinitions(buildDomainResolutionContext(candidate, lookup)).definitions;
9
+ // Core Property values do not participate in Class composition. Analyze the
10
+ // already-canonical Definition surface, then admit Core values below.
11
+ const analysisCandidate = {
12
+ ...candidate,
13
+ core: { nodes: {}, edges: [] },
14
+ };
15
+ const definitions = analyzeDefinitions(buildDomainResolutionContext(analysisCandidate, lookup)).definitions;
9
16
  const nodes = Object.fromEntries(Object.entries(candidate.core.nodes).map(([slug, node]) => {
10
- const definition = definitions.get(schemaRefIndex(node.class));
17
+ const definition = definitions.get(definitionRefIndex(node.class));
11
18
  if (definition === undefined) {
12
19
  fail('BUILDER_CORE_PROPERTY', `/core/nodes/${escapeToken(slug)}/class`, 'Core property shorthand requires a resolvable concrete Class.');
13
20
  }
@@ -20,7 +27,7 @@ export function canonicalizeCorePropertyKeys(candidate, lookup) {
20
27
  ];
21
28
  }));
22
29
  const edges = candidate.core.edges.map((edge, index) => {
23
- const definition = definitions.get(schemaRefIndex(edge.class));
30
+ const definition = definitions.get(definitionRefIndex(edge.class));
24
31
  if (definition === undefined) {
25
32
  fail('BUILDER_CORE_PROPERTY', `/core/edges/${index}/class`, 'Core property shorthand requires a resolvable concrete Class.');
26
33
  }
@@ -49,7 +56,7 @@ function qualify(input, definition, pointer) {
49
56
  sourceByKey.set(key, inputKey);
50
57
  result[key] = value;
51
58
  }
52
- return result;
59
+ return createPropertyValues(Object.entries(result).map(([key, value]) => [admitPropertyKey(key), value]));
53
60
  }
54
61
  function resolveInputKey(input, definition, byName, pointer) {
55
62
  if (admitPropertyKey.is(input)) {
@@ -67,4 +74,3 @@ function resolveInputKey(input, definition, byName, pointer) {
67
74
  }
68
75
  fail('BUILDER_CORE_PROPERTY', pointer, `Property ${JSON.stringify(input)} is ambiguous; use one of: ${candidates.join(', ')}.`);
69
76
  }
70
- //# sourceMappingURL=core.properties.js.map
@@ -0,0 +1,22 @@
1
+ import type { Object as JsonObject } from '@astrale-os/kernel-dsl/value';
2
+ import type { ClassRef, CoreRef } from '../../addressing/index.js';
3
+ import type { CoreEndpointRef } from '../../language/core/model/core.js';
4
+ import type { CoreInput } from '../core/authoring.js';
5
+ import type { BuilderContext } from './schema/context.js';
6
+ export declare function captureCore(input: CoreInput | undefined, context: BuilderContext): void;
7
+ export interface UnqualifiedCoreDefinition {
8
+ readonly ref: CoreRef;
9
+ readonly class: ClassRef;
10
+ readonly properties: JsonObject;
11
+ }
12
+ export interface UnqualifiedCoreEdge {
13
+ readonly class: ClassRef;
14
+ readonly source: CoreEndpointRef;
15
+ readonly target: CoreEndpointRef;
16
+ readonly properties: JsonObject;
17
+ }
18
+ export interface UnqualifiedCoreContent {
19
+ readonly nodes: Readonly<Record<string, UnqualifiedCoreDefinition>>;
20
+ readonly edges: readonly UnqualifiedCoreEdge[];
21
+ }
22
+ export declare function compileCore(input: CoreInput | undefined, context: BuilderContext): UnqualifiedCoreContent;
@@ -1,5 +1,6 @@
1
- import { isAuthoringValue } from '../internal/authoring.js';
2
- import { escapeToken, fail } from '../internal/diagnostic.js';
1
+ import { coreEdgeConfiguration, coreNodeConfiguration } from '../core/authoring.js';
2
+ import { escapeToken, fail } from '../schema/diagnostic.js';
3
+ import { isAuthoringValue } from '../schema/handle.js';
3
4
  export function captureCore(input, context) {
4
5
  for (const [slug, node] of Object.entries(input?.nodes ?? {})) {
5
6
  if (!isAuthoringValue(node, 'core-node')) {
@@ -11,34 +12,39 @@ export function captureCore(input, context) {
11
12
  export function compileCore(input, context) {
12
13
  const nodes = Object.fromEntries(Object.entries(input?.nodes ?? {}).map(([slug, value]) => [
13
14
  slug,
14
- compileNode(value, context, `/core/nodes/${escapeToken(slug)}`),
15
+ compileNode(slug, value, context, `/core/nodes/${escapeToken(slug)}`),
15
16
  ]));
16
17
  const edges = (input?.edges ?? []).map((value, index) => compileEdge(value, context, `/core/edges/${index}`));
17
18
  return { nodes, edges };
18
19
  }
19
- function compileNode(value, context, pointer) {
20
- const ref = context.resolveNodeClass(value.class, `${pointer}/class`);
20
+ function compileNode(slug, value, context, pointer) {
21
+ const configuration = coreNodeConfiguration(value);
22
+ const ref = context.resolveNodeClass(configuration.class, `${pointer}/class`);
21
23
  if (ref.origin !== context.origin) {
22
24
  fail('BUILDER_CORE_CLASS', `${pointer}/class`, 'A Core Node Class must be local to the owning Domain.');
23
25
  }
24
- return { class: ref, properties: value.properties };
26
+ return {
27
+ ref: { origin: context.origin, kind: 'core', name: slug },
28
+ class: ref,
29
+ properties: configuration.properties,
30
+ };
25
31
  }
26
32
  function compileEdge(value, context, pointer) {
27
33
  if (!isAuthoringValue(value, 'core-edge')) {
28
34
  fail('BUILDER_CORE_EDGE', pointer, 'core.edges entries are created by edge(...).');
29
35
  }
30
- const ref = context.resolveEdgeClass(value.class, `${pointer}/class`);
36
+ const configuration = coreEdgeConfiguration(value);
37
+ const ref = context.resolveEdgeClass(configuration.class, `${pointer}/class`);
31
38
  if (ref.origin !== context.origin) {
32
39
  fail('BUILDER_CORE_CLASS', `${pointer}/class`, 'A Core Edge Class must be local to the owning Domain.');
33
40
  }
34
41
  return {
35
42
  class: ref,
36
- source: resolveEndpoint(value.source, context, `${pointer}/source`),
37
- target: resolveEndpoint(value.target, context, `${pointer}/target`),
38
- properties: value.properties,
43
+ source: resolveEndpoint(configuration.source, context, `${pointer}/source`),
44
+ target: resolveEndpoint(configuration.target, context, `${pointer}/target`),
45
+ properties: configuration.properties,
39
46
  };
40
47
  }
41
48
  function resolveEndpoint(value, context, pointer) {
42
49
  return context.resolveCoreEndpoint(value, pointer);
43
50
  }
44
- //# sourceMappingURL=core.js.map
@@ -0,0 +1,16 @@
1
+ import type { PolicyRef } from '../../addressing/index.js';
2
+ import type { PolicyDefinition } from '../../language/policy/model/policy.js';
3
+ import type { Policy } from '../policy/authoring.js';
4
+ import type { Lazy } from '../schema/lazy.js';
5
+ import type { BuilderContext } from './schema/context.js';
6
+ export interface PolicyCompiler {
7
+ compile(value: Policy, name: string, pointer: string): PolicyDefinition;
8
+ ref(value: Lazy<unknown>, pointer: string): PolicyRef;
9
+ }
10
+ export declare class V1PolicyCompiler implements PolicyCompiler {
11
+ readonly context: BuilderContext;
12
+ constructor(context: BuilderContext);
13
+ ref(value: Lazy<unknown>, pointer: string): PolicyRef;
14
+ compile(value: Policy, name: string, pointer: string): PolicyDefinition;
15
+ }
16
+ export declare function assertPolicyCompositionAcyclic(declarations: Readonly<Record<string, PolicyDefinition>>, origin: string): void;
@@ -1,6 +1,6 @@
1
- import { normalizePolicyDeclaration } from '../../schema/policy/normalize.js';
2
- import { fail } from '../internal/diagnostic.js';
3
- import { createPatternContext } from '../policy.js';
1
+ import { normalizePolicyExpression } from '../../language/policy/normalization/normalize.js';
2
+ import { createPatternContext, policyDeclaration } from '../policy/authoring.js';
3
+ import { fail } from '../schema/diagnostic.js';
4
4
  export class V1PolicyCompiler {
5
5
  context;
6
6
  constructor(context) {
@@ -9,21 +9,26 @@ export class V1PolicyCompiler {
9
9
  ref(value, pointer) {
10
10
  return this.context.resolvePolicy(value, pointer);
11
11
  }
12
- compile(value, pointer) {
13
- const input = value.input;
12
+ compile(value, name, pointer) {
13
+ const input = policyDeclaration(value);
14
+ const ref = { origin: this.context.origin, kind: 'policy', name };
14
15
  if ('operator' in input) {
15
16
  const refs = input.policies.map((policy, index) => this.context.resolvePolicy(policy, `${pointer}/${input.operator}/${index}`));
16
- return normalizePolicyDeclaration(input.operator === 'allOf' ? { allOf: refs } : { anyOf: refs });
17
+ return {
18
+ ref,
19
+ expression: normalizePolicyExpression(input.operator === 'allOf' ? { allOf: refs } : { anyOf: refs }),
20
+ };
17
21
  }
18
22
  const match = input.match(createPatternContext({
19
23
  resolveEdgeClass: (definition, refPointer) => this.context.resolveEdgeClass(definition, refPointer),
20
24
  resolveNodeClass: (definition, refPointer) => this.context.resolveNodeClass(definition, refPointer),
21
25
  pointer,
22
26
  }));
23
- return normalizePolicyDeclaration({
27
+ return {
28
+ ref,
24
29
  ...(input.description === undefined ? {} : { description: input.description }),
25
- match,
26
- });
30
+ expression: normalizePolicyExpression({ match }),
31
+ };
27
32
  }
28
33
  }
29
34
  export function assertPolicyCompositionAcyclic(declarations, origin) {
@@ -37,10 +42,11 @@ export function assertPolicyCompositionAcyclic(declarations, origin) {
37
42
  return;
38
43
  visiting.add(name);
39
44
  const declaration = declarations[name];
40
- const refs = declaration !== undefined && 'allOf' in declaration
41
- ? declaration.allOf
42
- : declaration !== undefined && 'anyOf' in declaration
43
- ? declaration.anyOf
45
+ const expression = declaration?.expression;
46
+ const refs = expression !== undefined && 'allOf' in expression
47
+ ? expression.allOf
48
+ : expression !== undefined && 'anyOf' in expression
49
+ ? expression.anyOf
44
50
  : [];
45
51
  for (const ref of refs)
46
52
  if (ref.origin === origin)
@@ -51,4 +57,3 @@ export function assertPolicyCompositionAcyclic(declarations, origin) {
51
57
  for (const name of Object.keys(declarations))
52
58
  visit(name);
53
59
  }
54
- //# sourceMappingURL=policy.js.map
@@ -1,5 +1,4 @@
1
- import type { DomainSchemaInput } from '../schema.input.js';
2
- import { BuilderContext } from './schema.context.js';
1
+ import type { DomainSchemaInput } from '../../schema/input.js';
2
+ import { BuilderContext } from './context.js';
3
3
  export declare function captureSchema(input: DomainSchemaInput, context: BuilderContext): void;
4
4
  export declare function commitSchemaOwnership(input: DomainSchemaInput, origin: string): void;
5
- //# sourceMappingURL=schema.capture.d.ts.map