@astrale-os/kernel-dsl 0.1.3 → 0.1.5

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 (211) hide show
  1. package/dist/builders/bitmask.js +1 -0
  2. package/dist/builders/bitmask.js.map +1 -0
  3. package/dist/builders/data.js +1 -0
  4. package/dist/builders/data.js.map +1 -0
  5. package/dist/builders/definition/base.js +1 -0
  6. package/dist/builders/definition/base.js.map +1 -0
  7. package/dist/builders/definition/edge-class.js +1 -0
  8. package/dist/builders/definition/edge-class.js.map +1 -0
  9. package/dist/builders/definition/edge-interface.js +1 -0
  10. package/dist/builders/definition/edge-interface.js.map +1 -0
  11. package/dist/builders/definition/node-class.js +1 -0
  12. package/dist/builders/definition/node-class.js.map +1 -0
  13. package/dist/builders/definition/node-interface.js +1 -0
  14. package/dist/builders/definition/node-interface.js.map +1 -0
  15. package/dist/builders/function.d.ts +16 -2
  16. package/dist/builders/function.d.ts.map +1 -1
  17. package/dist/builders/function.js +1 -1
  18. package/dist/builders/function.js.map +1 -0
  19. package/dist/builders/policy.d.ts +10 -0
  20. package/dist/builders/policy.d.ts.map +1 -0
  21. package/dist/builders/policy.js +28 -0
  22. package/dist/builders/policy.js.map +1 -0
  23. package/dist/builders/prop.js +1 -0
  24. package/dist/builders/prop.js.map +1 -0
  25. package/dist/builders/ref.js +1 -0
  26. package/dist/builders/ref.js.map +1 -0
  27. package/dist/grammar/definition/base.js +1 -0
  28. package/dist/grammar/definition/base.js.map +1 -0
  29. package/dist/grammar/definition/discriminants.js +1 -0
  30. package/dist/grammar/definition/discriminants.js.map +1 -0
  31. package/dist/grammar/definition/edge-class.js +1 -0
  32. package/dist/grammar/definition/edge-class.js.map +1 -0
  33. package/dist/grammar/definition/edge-interface.js +1 -0
  34. package/dist/grammar/definition/edge-interface.js.map +1 -0
  35. package/dist/grammar/definition/node-class.d.ts +5 -0
  36. package/dist/grammar/definition/node-class.d.ts.map +1 -1
  37. package/dist/grammar/definition/node-class.js +1 -0
  38. package/dist/grammar/definition/node-class.js.map +1 -0
  39. package/dist/grammar/definition/node-interface.js +1 -0
  40. package/dist/grammar/definition/node-interface.js.map +1 -0
  41. package/dist/grammar/facets/constraints.js +1 -0
  42. package/dist/grammar/facets/constraints.js.map +1 -0
  43. package/dist/grammar/facets/content.js +1 -0
  44. package/dist/grammar/facets/content.js.map +1 -0
  45. package/dist/grammar/facets/endpoints.js +1 -0
  46. package/dist/grammar/facets/endpoints.js.map +1 -0
  47. package/dist/grammar/facets/indexes.js +1 -0
  48. package/dist/grammar/facets/indexes.js.map +1 -0
  49. package/dist/grammar/facets/properties.js +1 -0
  50. package/dist/grammar/facets/properties.js.map +1 -0
  51. package/dist/grammar/function/config.d.ts +5 -3
  52. package/dist/grammar/function/config.d.ts.map +1 -1
  53. package/dist/grammar/function/config.js +1 -0
  54. package/dist/grammar/function/config.js.map +1 -0
  55. package/dist/grammar/function/def.d.ts +3 -0
  56. package/dist/grammar/function/def.d.ts.map +1 -1
  57. package/dist/grammar/function/def.js +1 -0
  58. package/dist/grammar/function/def.js.map +1 -0
  59. package/dist/grammar/function/inheritance.js +1 -0
  60. package/dist/grammar/function/inheritance.js.map +1 -0
  61. package/dist/grammar/function/output.js +1 -0
  62. package/dist/grammar/function/output.js.map +1 -0
  63. package/dist/grammar/policy/callable.d.ts +40 -0
  64. package/dist/grammar/policy/callable.d.ts.map +1 -0
  65. package/dist/grammar/policy/callable.js +2 -0
  66. package/dist/grammar/policy/callable.js.map +1 -0
  67. package/dist/grammar/policy/def.d.ts +27 -0
  68. package/dist/grammar/policy/def.d.ts.map +1 -0
  69. package/dist/grammar/policy/def.js +2 -0
  70. package/dist/grammar/policy/def.js.map +1 -0
  71. package/dist/grammar/policy/pattern.d.ts +34 -0
  72. package/dist/grammar/policy/pattern.d.ts.map +1 -0
  73. package/dist/grammar/policy/pattern.js +2 -0
  74. package/dist/grammar/policy/pattern.js.map +1 -0
  75. package/dist/grammar/values/bitmask.js +1 -0
  76. package/dist/grammar/values/bitmask.js.map +1 -0
  77. package/dist/grammar/values/data.js +1 -0
  78. package/dist/grammar/values/data.js.map +1 -0
  79. package/dist/grammar/values/ref.js +1 -0
  80. package/dist/grammar/values/ref.js.map +1 -0
  81. package/dist/grammar/values/self.js +1 -0
  82. package/dist/grammar/values/self.js.map +1 -0
  83. package/dist/index.d.ts +5 -1
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +2 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/inference/content.js +1 -0
  88. package/dist/inference/content.js.map +1 -0
  89. package/dist/inference/index.js +1 -0
  90. package/dist/inference/index.js.map +1 -0
  91. package/dist/inference/inheritance.js +1 -0
  92. package/dist/inference/inheritance.js.map +1 -0
  93. package/dist/inference/input.js +1 -0
  94. package/dist/inference/input.js.map +1 -0
  95. package/dist/inference/methods.js +1 -0
  96. package/dist/inference/methods.js.map +1 -0
  97. package/dist/inference/properties.js +1 -0
  98. package/dist/inference/properties.js.map +1 -0
  99. package/dist/inference/schema.js +1 -0
  100. package/dist/inference/schema.js.map +1 -0
  101. package/dist/instance/core/define.js +1 -0
  102. package/dist/instance/core/define.js.map +1 -0
  103. package/dist/instance/core/edge.js +1 -0
  104. package/dist/instance/core/edge.js.map +1 -0
  105. package/dist/instance/core/endpoint.js +1 -0
  106. package/dist/instance/core/endpoint.js.map +1 -0
  107. package/dist/instance/core/node.js +1 -0
  108. package/dist/instance/core/node.js.map +1 -0
  109. package/dist/instance/core/path.js +1 -0
  110. package/dist/instance/core/path.js.map +1 -0
  111. package/dist/instance/core/self.js +1 -0
  112. package/dist/instance/core/self.js.map +1 -0
  113. package/dist/instance/core/types.js +1 -0
  114. package/dist/instance/core/types.js.map +1 -0
  115. package/dist/instance/seed/define.js +1 -0
  116. package/dist/instance/seed/define.js.map +1 -0
  117. package/dist/instance/seed/types.js +1 -0
  118. package/dist/instance/seed/types.js.map +1 -0
  119. package/dist/ir/classes.d.ts +6 -0
  120. package/dist/ir/classes.d.ts.map +1 -1
  121. package/dist/ir/classes.js +1 -0
  122. package/dist/ir/classes.js.map +1 -0
  123. package/dist/ir/domain.js +1 -0
  124. package/dist/ir/domain.js.map +1 -0
  125. package/dist/ir/endpoints.js +1 -0
  126. package/dist/ir/endpoints.js.map +1 -0
  127. package/dist/ir/functions.d.ts +15 -0
  128. package/dist/ir/functions.d.ts.map +1 -1
  129. package/dist/ir/functions.js +1 -0
  130. package/dist/ir/functions.js.map +1 -0
  131. package/dist/ir/index.d.ts +2 -1
  132. package/dist/ir/index.d.ts.map +1 -1
  133. package/dist/ir/index.js +1 -0
  134. package/dist/ir/index.js.map +1 -0
  135. package/dist/ir/ir.d.ts +12 -0
  136. package/dist/ir/ir.d.ts.map +1 -1
  137. package/dist/ir/ir.js +1 -0
  138. package/dist/ir/ir.js.map +1 -0
  139. package/dist/ir/json-schema.js +1 -0
  140. package/dist/ir/json-schema.js.map +1 -0
  141. package/dist/ir/policies.d.ts +74 -0
  142. package/dist/ir/policies.d.ts.map +1 -0
  143. package/dist/ir/policies.js +2 -0
  144. package/dist/ir/policies.js.map +1 -0
  145. package/dist/schema/classify.js +1 -0
  146. package/dist/schema/classify.js.map +1 -0
  147. package/dist/schema/define.d.ts +2 -0
  148. package/dist/schema/define.d.ts.map +1 -1
  149. package/dist/schema/define.js +20 -2
  150. package/dist/schema/define.js.map +1 -0
  151. package/dist/schema/error.js +1 -0
  152. package/dist/schema/error.js.map +1 -0
  153. package/dist/schema/refs.js +1 -0
  154. package/dist/schema/refs.js.map +1 -0
  155. package/dist/schema/resolve/index.js +1 -0
  156. package/dist/schema/resolve/index.js.map +1 -0
  157. package/dist/schema/resolve/methods.js +1 -0
  158. package/dist/schema/resolve/methods.js.map +1 -0
  159. package/dist/schema/resolve/properties.js +1 -0
  160. package/dist/schema/resolve/properties.js.map +1 -0
  161. package/dist/schema/resolve/self.js +1 -0
  162. package/dist/schema/resolve/self.js.map +1 -0
  163. package/dist/schema/resolve/thunks.js +1 -0
  164. package/dist/schema/resolve/thunks.js.map +1 -0
  165. package/dist/schema/schema.d.ts +3 -0
  166. package/dist/schema/schema.d.ts.map +1 -1
  167. package/dist/schema/schema.js +1 -0
  168. package/dist/schema/schema.js.map +1 -0
  169. package/dist/schema/validators/context.d.ts +4 -0
  170. package/dist/schema/validators/context.d.ts.map +1 -1
  171. package/dist/schema/validators/context.js +1 -0
  172. package/dist/schema/validators/context.js.map +1 -0
  173. package/dist/schema/validators/endpoints.js +1 -0
  174. package/dist/schema/validators/endpoints.js.map +1 -0
  175. package/dist/schema/validators/index.d.ts +1 -0
  176. package/dist/schema/validators/index.d.ts.map +1 -1
  177. package/dist/schema/validators/index.js +4 -0
  178. package/dist/schema/validators/index.js.map +1 -0
  179. package/dist/schema/validators/indexes.js +1 -0
  180. package/dist/schema/validators/indexes.js.map +1 -0
  181. package/dist/schema/validators/inheritance.js +1 -0
  182. package/dist/schema/validators/inheritance.js.map +1 -0
  183. package/dist/schema/validators/methods.js +1 -0
  184. package/dist/schema/validators/methods.js.map +1 -0
  185. package/dist/schema/validators/names.js +1 -0
  186. package/dist/schema/validators/names.js.map +1 -0
  187. package/dist/schema/validators/policies.d.ts +4 -0
  188. package/dist/schema/validators/policies.d.ts.map +1 -0
  189. package/dist/schema/validators/policies.js +61 -0
  190. package/dist/schema/validators/policies.js.map +1 -0
  191. package/dist/schema/validators/ref-targets.js +1 -0
  192. package/dist/schema/validators/ref-targets.js.map +1 -0
  193. package/dist/serializer/context.d.ts +3 -0
  194. package/dist/serializer/context.d.ts.map +1 -1
  195. package/dist/serializer/context.js +57 -6
  196. package/dist/serializer/context.js.map +1 -0
  197. package/dist/serializer/helpers.js +1 -0
  198. package/dist/serializer/helpers.js.map +1 -0
  199. package/dist/serializer/index.js +1 -0
  200. package/dist/serializer/index.js.map +1 -0
  201. package/dist/serializer/policies.d.ts +34 -0
  202. package/dist/serializer/policies.d.ts.map +1 -0
  203. package/dist/serializer/policies.js +837 -0
  204. package/dist/serializer/policies.js.map +1 -0
  205. package/dist/serializer/policy-typing.d.ts +56 -0
  206. package/dist/serializer/policy-typing.d.ts.map +1 -0
  207. package/dist/serializer/policy-typing.js +490 -0
  208. package/dist/serializer/policy-typing.js.map +1 -0
  209. package/dist/serializer/serialize.js +1 -0
  210. package/dist/serializer/serialize.js.map +1 -0
  211. package/package.json +4 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/resolve/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA"}
@@ -15,3 +15,4 @@ export function resolveAllMethods(def) {
15
15
  Object.assign(result, ownMethods);
16
16
  return result;
17
17
  }
18
+ //# sourceMappingURL=methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.js","sourceRoot":"","sources":["../../../src/schema/resolve/methods.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,MAAM,MAAM,GAA0B,EAAE,CAAA;IAExC,4EAA4E;IAC5E,MAAM,QAAQ,GAAI,GAAG,CAAC,MAAM,CAAC,QAAiC,IAAI,EAAE,CAAA;IACpE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC/C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACtC,CAAC;IAED,+BAA+B;IAC/B,MAAM,UAAU,GAAI,GAAG,CAAC,MAAM,CAAC,OAA6C,IAAI,EAAE,CAAA;IAClF,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IAEjC,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -34,3 +34,4 @@ export function resolveAllProperties(def) {
34
34
  }
35
35
  return result;
36
36
  }
37
+ //# sourceMappingURL=properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../src/schema/resolve/properties.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAEtE;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAE9B,MAAM,QAAQ,GAAI,GAAG,CAAC,MAAM,CAAC,QAAiC,IAAI,EAAE,CAAA;IACpE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,KAAK,MAAM,GAAG,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACf,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAI,GAAG,CAAC,MAAM,CAAC,UAAwC,IAAI,EAAE,CAAA;IAC3E,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACf,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,MAAM,GAAuC,EAAE,CAAA;IAErD,MAAM,QAAQ,GAAI,GAAG,CAAC,MAAM,CAAC,QAAiC,IAAI,EAAE,CAAA;IACpE,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACpC,CAAC;IAED,MAAM,QAAQ,GAAI,GAAG,CAAC,MAAM,CAAC,UAAwC,IAAI,EAAE,CAAA;IAC3E,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -30,3 +30,4 @@ function walkAndReplace(obj, actualDef, visited) {
30
30
  walkAndReplace(value, actualDef, visited);
31
31
  }
32
32
  }
33
+ //# sourceMappingURL=self.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"self.js","sourceRoot":"","sources":["../../../src/schema/resolve/self.ts"],"names":[],"mappings":"AAIA,mDAAmD;AACnD,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAoB,CAAA;AAClE,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAmB,CAAA;AAE/D,uCAAuC;AACvC,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,gBAAgB,IAAI,KAAK,CAAA;AACjF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,OAAO,EAAU,CAAC,CAAA;AACxD,CAAC;AAED,SAAS,cAAc,CAAC,GAAY,EAAE,SAAiB,EAAE,OAAwB;IAC/E,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAM;IAC/D,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAEhB,MAAM,MAAM,GAAG,GAAuC,CAAA;IAEtD,yDAAyD;IACzD,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,MAAM,CAAC,eAAe,CAA8C,CAAA;QACpF,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,CAAC;YAAC,OAA+B,CAAC,MAAM,GAAG,SAAS,CAAA;QACtD,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;IAC3C,CAAC;AACH,CAAC"}
@@ -34,3 +34,4 @@ export function resolveParamThunks(name, def) {
34
34
  }
35
35
  }
36
36
  }
37
+ //# sourceMappingURL=thunks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thunks.js","sourceRoot":"","sources":["../../../src/schema/resolve/thunks.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEnD;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,GAAW;IAC3D,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,CAAC;YAAC,GAA2B,CAAC,MAAM,GAAI,GAAG,CAAC,MAAwB,EAAE,CAAA;QACxE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,qBAAqB,CAC7B,uCAAuC,IAAI,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,EAC5D,IAAI,EACJ,yBAAyB,EACzB,cAAc,CACf,CAAA;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY,EAAE,GAAW;IAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAA4C,CAAA;IACvE,IAAI,CAAC,OAAO;QAAE,OAAM;IAEpB,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC9C,IAAI,CAAC;gBACH,CAAC;gBAAC,KAAK,CAAC,MAA8B,CAAC,MAAM,GAAI,KAAK,CAAC,MAAM,CAAC,MAAwB,EAAE,CAAA;YAC1F,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,qBAAqB,CAC7B,sCAAsC,IAAI,IAAI,UAAU,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,EACzE,GAAG,IAAI,IAAI,UAAU,SAAS,EAC9B,kBAAkB,EAClB,cAAc,CACf,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { AnyInterfaceDef, AnyClassDef } from '../grammar/definition/discriminants.js';
2
2
  import type { FuncDef } from '../grammar/function/def.js';
3
+ import type { PolicyDef } from '../grammar/policy/def.js';
3
4
  /**
4
5
  * The rich schema object — two groups (interfaces + classes),
5
6
  * pre-resolved types, ref maps, domain. Produced by `defineSchema`.
@@ -17,6 +18,8 @@ export interface Schema<I extends Record<string, AnyInterfaceDef> = Record<strin
17
18
  readonly classes: Readonly<C>;
18
19
  /** Standalone function declarations — slug → whole-object `func()` contract. */
19
20
  readonly functions: Record<string, FuncDef>;
21
+ /** Named, domain-local Policy declarations. Omitted for legacy schemas. */
22
+ readonly policies?: Record<string, PolicyDef>;
20
23
  readonly imports: readonly Schema[];
21
24
  }
22
25
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAA;AAC1F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,MAAM,CACrB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC3E,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC;IAEnE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAChC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAC7B,gFAAgF;IAChF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CACpC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAA;AAC1F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAEzD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,MAAM,CACrB,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAC3E,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC;IAEnE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAChC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAC7B,gFAAgF;IAChF,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC7C,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CACpC"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema/schema.ts"],"names":[],"mappings":""}
@@ -1,4 +1,6 @@
1
1
  import type { AnyDef, AnyInterfaceDef, AnyClassDef } from '../../grammar/definition/discriminants.js';
2
+ import type { FuncDef } from '../../grammar/function/def.js';
3
+ import type { PolicyDef } from '../../grammar/policy/def.js';
2
4
  import type { DefDescriptor } from '../refs.js';
3
5
  import type { Schema } from '../schema.js';
4
6
  /** Validation context passed to each validator */
@@ -6,6 +8,8 @@ export interface SchemaContext {
6
8
  readonly domain: string;
7
9
  readonly interfaces: Record<string, AnyInterfaceDef>;
8
10
  readonly classes: Record<string, AnyClassDef>;
11
+ readonly functions: Record<string, FuncDef>;
12
+ readonly policies: Record<string, PolicyDef>;
9
13
  readonly imports: readonly Schema[];
10
14
  /** Descriptor map for all defs in this schema */
11
15
  readonly descriptorMap: Map<AnyDef, DefDescriptor>;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/schema/validators/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EACf,WAAW,EACZ,MAAM,2CAA2C,CAAA;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE1C,kDAAkD;AAClD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACpD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC7C,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;CACnD"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/schema/validators/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EACf,WAAW,EACZ,MAAM,2CAA2C,CAAA;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAE1C,kDAAkD;AAClD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACpD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC7C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC5C,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,iDAAiD;IACjD,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;CACnD"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/schema/validators/context.ts"],"names":[],"mappings":""}
@@ -24,3 +24,4 @@ export function validateEndpoints(ctx) {
24
24
  }
25
25
  }
26
26
  }
27
+ //# sourceMappingURL=endpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../src/schema/validators/endpoints.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAA;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,mBAAmB,GAA2B,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAEjF,qEAAqE;AACrE,MAAM,UAAU,iBAAiB,CAAC,GAAkB;IAClD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,SAAQ;QAE1B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAsB,CAAA;QACvC,MAAM,EAAE,GAAG,GAAG,CAAC,EAAoB,CAAA;QAEnC,KAAK,MAAM,QAAQ,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;YAClC,+BAA+B;YAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBAClC,IAAI,CAAC,UAAU,CAAC,IAAc,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;oBACnD,MAAM,IAAI,qBAAqB,CAC7B,eAAe,IAAI,6CAA6C,QAAQ,CAAC,EAAE,GAAG,EAC9E,GAAG,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,EACxB,kCAAkC,EAClC,mBAAmB,CACpB,CAAA;gBACH,CAAC;YACH,CAAC;YAED,6BAA6B;YAC7B,IACE,QAAQ,CAAC,WAAW,KAAK,SAAS;gBAClC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,EACnD,CAAC;gBACD,MAAM,IAAI,qBAAqB,CAC7B,wBAAwB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,IAAI,eAAe,QAAQ,CAAC,EAAE,GAAG,EAC9F,GAAG,IAAI,IAAI,QAAQ,CAAC,EAAE,cAAc,EACpC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAC7B,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -6,6 +6,7 @@ export { validateEndpoints } from './endpoints.js';
6
6
  export { validateIndexes } from './indexes.js';
7
7
  export { validateRefTargets } from './ref-targets.js';
8
8
  export { validateMethods } from './methods.js';
9
+ export { validatePolicies } from './policies.js';
9
10
  /** Run all schema validators in sequence */
10
11
  export declare function validateSchema(ctx: SchemaContext): void;
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/validators/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AASjD,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,4CAA4C;AAC5C,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAOvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/schema/validators/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAUjD,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,4CAA4C;AAC5C,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CAQvD"}
@@ -3,6 +3,7 @@ import { validateIndexes } from './indexes.js';
3
3
  import { validateInheritance } from './inheritance.js';
4
4
  import { validateMethods } from './methods.js';
5
5
  import { validateUniqueNames } from './names.js';
6
+ import { validatePolicies } from './policies.js';
6
7
  import { validateRefTargets } from './ref-targets.js';
7
8
  export { validateUniqueNames } from './names.js';
8
9
  export { validateInheritance } from './inheritance.js';
@@ -10,6 +11,7 @@ export { validateEndpoints } from './endpoints.js';
10
11
  export { validateIndexes } from './indexes.js';
11
12
  export { validateRefTargets } from './ref-targets.js';
12
13
  export { validateMethods } from './methods.js';
14
+ export { validatePolicies } from './policies.js';
13
15
  /** Run all schema validators in sequence */
14
16
  export function validateSchema(ctx) {
15
17
  validateUniqueNames(ctx);
@@ -18,4 +20,6 @@ export function validateSchema(ctx) {
18
20
  validateIndexes(ctx);
19
21
  validateRefTargets(ctx);
20
22
  validateMethods(ctx);
23
+ validatePolicies(ctx);
21
24
  }
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/schema/validators/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AAGrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAEhD,4CAA4C;AAC5C,MAAM,UAAU,cAAc,CAAC,GAAkB;IAC/C,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACxB,mBAAmB,CAAC,GAAG,CAAC,CAAA;IACxB,iBAAiB,CAAC,GAAG,CAAC,CAAA;IACtB,eAAe,CAAC,GAAG,CAAC,CAAA;IACpB,kBAAkB,CAAC,GAAG,CAAC,CAAA;IACvB,eAAe,CAAC,GAAG,CAAC,CAAA;IACpB,gBAAgB,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC"}
@@ -16,3 +16,4 @@ export function validateIndexes(ctx) {
16
16
  }
17
17
  }
18
18
  }
19
+ //# sourceMappingURL=indexes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexes.js","sourceRoot":"","sources":["../../../src/schema/validators/indexes.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,oFAAoF;AACpF,MAAM,UAAU,eAAe,CAAC,GAAkB;IAChD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAiC,CAAA;QAC5D,IAAI,CAAC,OAAO;YAAE,SAAQ;QAEtB,MAAM,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAA;QAE7C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAA;YACzD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,qBAAqB,CAC7B,aAAa,IAAI,kCAAkC,IAAI,GAAG,EAC1D,GAAG,IAAI,UAAU,EACjB,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAC9C,IAAI,CACL,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -24,3 +24,4 @@ export function validateInheritance(ctx) {
24
24
  }
25
25
  }
26
26
  }
27
+ //# sourceMappingURL=inheritance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inheritance.js","sourceRoot":"","sources":["../../../src/schema/validators/inheritance.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAA;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEhD,qDAAqD;AACrD,MAAM,UAAU,mBAAmB,CAAC,GAAkB;IACpD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,QAAgC,CAAA;QAC3D,IAAI,CAAC,OAAO;YAAE,SAAQ;QAEtB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,oCAAoC;YACpC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,qBAAqB,CAC7B,eAAe,IAAI,iCAAiC,EACpD,GAAG,IAAI,WAAW,EAClB,kCAAkC,EAClC,mBAAmB,CACpB,CAAA;YACH,CAAC;YAED,mEAAmE;YACnE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,qBAAqB,CAC7B,eAAe,IAAI,2CAA2C,MAAM,CAAC,MAAM,uCAAuC,EAClH,GAAG,IAAI,WAAW,EAClB,iCAAiC,EACjC,MAAM,CAAC,MAAM,CACd,CAAA;YACH,CAAC;YAED,+DAA+D;YAC/D,+EAA+E;YAC/E,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,qBAAqB,CAC7B,oBAAoB,IAAI,mCAAmC,EAC3D,GAAG,IAAI,WAAW,EAClB,gBAAgB,EAChB,MAAM,CAAC,MAAM,CACd,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -41,3 +41,4 @@ export function validateMethods(ctx) {
41
41
  }
42
42
  }
43
43
  }
44
+ //# sourceMappingURL=methods.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.js","sourceRoot":"","sources":["../../../src/schema/validators/methods.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,GAAkB;IAChD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/D,MAAM,UAAU,GAAI,GAAG,CAAC,MAAM,CAAC,OAA6C,IAAI,EAAE,CAAA;QAElF,4DAA4D;QAC5D,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC7D,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;oBAC7B,MAAM,IAAI,qBAAqB,CAC7B,iBAAiB,IAAI,eAAe,UAAU,uBAAuB,KAAK,CAAC,MAAM,CAAC,WAAW,KAAK;wBAChG,kEAAkE,EACpE,GAAG,IAAI,IAAI,UAAU,cAAc,EACnC,6CAA6C,EAC7C,KAAK,CAAC,MAAM,CAAC,WAAW,CACzB,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,MAAM,OAAO,GAAI,GAAG,CAAC,MAAM,CAAC,QAAiC,IAAI,EAAE,CAAA;QACnE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;YAC/C,KAAK,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;gBACnE,IAAI,QAAQ,CAAC,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,UAAU,IAAI,UAAU,EAAE,CAAC;oBACzE,MAAM,IAAI,qBAAqB,CAC7B,eAAe,IAAI,8BAA8B,UAAU,GAAG,EAC9D,GAAG,IAAI,IAAI,UAAU,EAAE,EACvB,gCAAgC,EAChC,mBAAmB,CACpB,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAA;YAC3C,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/D,IAAI,KAAK,CAAC,MAAM,CAAC,WAAW,KAAK,UAAU,IAAI,CAAC,CAAC,UAAU,IAAI,UAAU,CAAC,EAAE,CAAC;oBAC3E,MAAM,IAAI,qBAAqB,CAC7B,iBAAiB,IAAI,yCAAyC,UAAU,GAAG,EAC3E,GAAG,IAAI,IAAI,UAAU,EAAE,EACvB,uBAAuB,EACvB,SAAS,CACV,CAAA;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -16,3 +16,4 @@ export function validateUniqueNames(ctx) {
16
16
  classNames.add(name);
17
17
  }
18
18
  }
19
+ //# sourceMappingURL=names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"names.js","sourceRoot":"","sources":["../../../src/schema/validators/names.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AAEnD,0EAA0E;AAC1E,MAAM,UAAU,mBAAmB,CAAC,GAAkB;IACpD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAA;IACxC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,qBAAqB,CAC7B,6BAA6B,IAAI,GAAG,EACpC,YAAY,EACZ,cAAc,EACd,IAAI,CACL,CAAA;QACH,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAA;IACpC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5C,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,qBAAqB,CAC7B,yBAAyB,IAAI,GAAG,EAChC,SAAS,EACT,cAAc,EACd,IAAI,CACL,CAAA;QACH,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACtB,CAAC;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { SchemaContext } from './context.js';
2
+ /** Validate additive Policy ownership and attachment rules before serialization. */
3
+ export declare function validatePolicies(ctx: SchemaContext): void;
4
+ //# sourceMappingURL=policies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../../../src/schema/validators/policies.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AA4CjD,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI,CA2DzD"}
@@ -0,0 +1,61 @@
1
+ import { isPolicyDef } from '../../builders/policy.js';
2
+ import { isNodeClass } from '../../grammar/definition/discriminants.js';
3
+ import { SchemaValidationError } from '../error.js';
4
+ import { eachDef } from '../refs.js';
5
+ function assertRegistered(value, field, registered) {
6
+ let resolved = value;
7
+ if (typeof value === 'function') {
8
+ try {
9
+ resolved = value();
10
+ }
11
+ catch (error) {
12
+ throw new SchemaValidationError(`Policy use '${field}' could not resolve its lazy reference: ${String(error)}`, field, 'resolvable Policy thunk', 'throwing Policy thunk');
13
+ }
14
+ }
15
+ if (!isPolicyDef(resolved)) {
16
+ throw new SchemaValidationError(`Policy use '${field}' must reference a value created by definePolicy()`, field, 'registered Policy', 'non-Policy value');
17
+ }
18
+ if (!registered.has(resolved)) {
19
+ throw new SchemaValidationError(`Policy use '${field}' references a Policy that is not registered in this schema`, field, 'local Policy registered under defineSchema({ policies })', 'unregistered or foreign Policy');
20
+ }
21
+ return resolved;
22
+ }
23
+ /** Validate additive Policy ownership and attachment rules before serialization. */
24
+ export function validatePolicies(ctx) {
25
+ const ownership = new Map();
26
+ for (const [name, definition] of Object.entries(ctx.policies)) {
27
+ if (!isPolicyDef(definition)) {
28
+ throw new SchemaValidationError(`Policy '${name}' must be created by definePolicy()`, `policies.${name}`, 'PolicyDef', 'non-Policy value');
29
+ }
30
+ const previous = ownership.get(definition);
31
+ if (previous) {
32
+ throw new SchemaValidationError(`Policy values have exactly one owner: '${previous}' and '${name}' register the same value`, `policies.${name}`, 'one local Policy name', `duplicate of policies.${previous}`);
33
+ }
34
+ ownership.set(definition, name);
35
+ }
36
+ const registered = new Set(ownership.keys());
37
+ for (const [name, def] of Object.entries(ctx.classes)) {
38
+ const configured = def.config.policies;
39
+ if (!configured)
40
+ continue;
41
+ if (!isNodeClass(def)) {
42
+ throw new SchemaValidationError(`Only Node Classes may declare application read Policies`, `classes.${name}.policies`, 'Node Class Policy attachment', def.__kind);
43
+ }
44
+ if (configured.read !== undefined) {
45
+ assertRegistered(configured.read, `classes.${name}.policies.read`, registered);
46
+ }
47
+ }
48
+ for (const [ownerName, def] of eachDef(ctx.interfaces, ctx.classes)) {
49
+ const methods = def.config.methods;
50
+ if (!methods)
51
+ continue;
52
+ for (const [methodName, method] of Object.entries(methods)) {
53
+ if (!method.config.policy)
54
+ continue;
55
+ if (method.config.inheritance === 'abstract') {
56
+ throw new SchemaValidationError(`Abstract method '${ownerName}.${methodName}' cannot declare a Policy`, `${ownerName}.${methodName}.policy`, 'no Policy on abstract method', 'Policy callback');
57
+ }
58
+ }
59
+ }
60
+ }
61
+ //# sourceMappingURL=policies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policies.js","sourceRoot":"","sources":["../../../src/schema/validators/policies.ts"],"names":[],"mappings":"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"}
@@ -51,3 +51,4 @@ export function validateRefTargets(ctx) {
51
51
  }
52
52
  }
53
53
  }
54
+ //# sourceMappingURL=ref-targets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ref-targets.js","sourceRoot":"","sources":["../../../src/schema/validators/ref-targets.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export declare class SerializeContext {
8
8
  private zodToTypeName;
9
9
  private types;
10
10
  private imports;
11
+ private policyCompiler;
11
12
  constructor(schema: Schema, options?: {
12
13
  types?: Record<string, z.ZodType>;
13
14
  });
@@ -22,6 +23,8 @@ export declare class SerializeContext {
22
23
  private serializePropertySchema;
23
24
  private serializeMethods;
24
25
  private serializeFn;
26
+ private serializeFunctions;
27
+ private serializeStandaloneSchema;
25
28
  private serializeParams;
26
29
  private convertZodSchema;
27
30
  private zodToJsonSchemaRaw;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/serializer/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAQvB,OAAO,KAAK,EACV,QAAQ,EAUT,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAkBjD,qBAAa,gBAAgB;IAQzB,OAAO,CAAC,MAAM;IAPhB,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,YAAY,CAAiE;IACrF,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,OAAO,CAAuC;IAEtD,YACU,MAAM,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;KAAE,EAkBhD;IAED,GAAG,IAAI,QAAQ,CA6Bd;IAED,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,aAAa;IAiBrB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,oBAAoB;IAyB5B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,eAAe;IAiCvB,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;CA0CnB"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/serializer/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAQvB,OAAO,KAAK,EACV,QAAQ,EAWT,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAmBjD,qBAAa,gBAAgB;IASzB,OAAO,CAAC,MAAM;IARhB,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,YAAY,CAAiE;IACrF,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,KAAK,CAAiC;IAC9C,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,cAAc,CAAgB;IAEtC,YACU,MAAM,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;KAAE,EAmBhD;IAED,GAAG,IAAI,QAAQ,CAoCd;IAED,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,aAAa;IAmBrB,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,oBAAoB;IAyB5B,OAAO,CAAC,mBAAmB;IAc3B,OAAO,CAAC,uBAAuB;IAQ/B,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,kBAAkB;IAmB1B,OAAO,CAAC,yBAAyB;IAqBjC,OAAO,CAAC,eAAe;IAiCvB,OAAO,CAAC,gBAAgB;IAyBxB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;CA0CnB"}
@@ -3,6 +3,7 @@ import { isEdge } from '../grammar/definition/discriminants.js';
3
3
  import { normalizeProperty } from '../grammar/facets/properties.js';
4
4
  import { buildDescriptorMap, findDefTransitive } from '../schema/refs.js';
5
5
  import { unwrapZod, getArrayElement, foldNullable, mapCardinality, hasRefTag, getRefMeta, getDataMeta, hasBitmaskTag, cleanJsonSchema, } from './helpers.js';
6
+ import { PolicyCompiler } from './policies.js';
6
7
  export class SerializeContext {
7
8
  schema;
8
9
  descriptorMap;
@@ -10,9 +11,11 @@ export class SerializeContext {
10
11
  zodToTypeName = new WeakMap();
11
12
  types = {};
12
13
  imports = {};
14
+ policyCompiler;
13
15
  constructor(schema, options) {
14
16
  this.schema = schema;
15
17
  this.descriptorMap = buildDescriptorMap(schema);
18
+ this.policyCompiler = new PolicyCompiler(schema);
16
19
  for (const imported of schema.imports ?? []) {
17
20
  const importedMap = buildDescriptorMap(imported);
18
21
  this.importedMaps.push({ origin: imported.domain, map: importedMap });
@@ -30,6 +33,7 @@ export class SerializeContext {
30
33
  run() {
31
34
  const interfaces = {};
32
35
  const classes = {};
36
+ const policies = this.policyCompiler.compileDeclarations();
33
37
  for (const [name, def] of Object.entries(this.schema.interfaces)) {
34
38
  interfaces[name] = this.serializeInterface(name, def);
35
39
  }
@@ -51,6 +55,12 @@ export class SerializeContext {
51
55
  if (Object.keys(this.imports).length > 0) {
52
56
  result.imports = this.imports;
53
57
  }
58
+ if (Object.keys(policies).length > 0) {
59
+ result.policies = policies;
60
+ }
61
+ if (this.policyCompiler.hasStandalonePolicies) {
62
+ result.functions = this.serializeFunctions();
63
+ }
54
64
  return result;
55
65
  }
56
66
  serializeInterface(name, def) {
@@ -60,7 +70,7 @@ export class SerializeContext {
60
70
  name,
61
71
  extends: this.resolveInherits(config),
62
72
  properties: this.serializeProperties(config.properties),
63
- methods: this.serializeMethods(config.methods, name),
73
+ methods: this.serializeMethods(config.methods, name, def),
64
74
  };
65
75
  const content = config.content;
66
76
  const data = this.serializeData(content);
@@ -75,7 +85,7 @@ export class SerializeContext {
75
85
  name,
76
86
  implements: this.resolveInherits(config),
77
87
  properties: this.serializeProperties(config.properties),
78
- methods: this.serializeMethods(config.methods, name),
88
+ methods: this.serializeMethods(config.methods, name, def),
79
89
  };
80
90
  const content = config.content;
81
91
  const data = this.serializeData(content);
@@ -84,6 +94,9 @@ export class SerializeContext {
84
94
  const icon = config.icon;
85
95
  if (typeof icon === 'string' && icon.length > 0)
86
96
  result.icon = icon;
97
+ const policies = this.policyCompiler.compileNodePolicies(def, `classes.${name}.policies`);
98
+ if (policies)
99
+ result.policies = policies;
87
100
  return result;
88
101
  }
89
102
  serializeEdge(name, def) {
@@ -95,7 +108,7 @@ export class SerializeContext {
95
108
  implements: this.resolveInherits(config),
96
109
  endpoints: [this.serializeEndpoint(edgeDef.from), this.serializeEndpoint(edgeDef.to)],
97
110
  properties: this.serializeProperties(config.properties),
98
- methods: this.serializeMethods(config.methods, name),
111
+ methods: this.serializeMethods(config.methods, name, def),
99
112
  };
100
113
  const constraints = this.serializeConstraints(config.constraints);
101
114
  if (constraints)
@@ -165,16 +178,16 @@ export class SerializeContext {
165
178
  jsonSchema = { ...jsonSchema, default: defaultValue };
166
179
  return jsonSchema;
167
180
  }
168
- serializeMethods(methods, _className) {
181
+ serializeMethods(methods, className, owner) {
169
182
  if (!methods)
170
183
  return {};
171
184
  const result = {};
172
185
  for (const [name, def] of Object.entries(methods)) {
173
- result[name] = this.serializeFn(name, def);
186
+ result[name] = this.serializeFn(name, def, owner, `${className}.${name}.policy`);
174
187
  }
175
188
  return result;
176
189
  }
177
- serializeFn(name, def) {
190
+ serializeFn(name, def, owner, policyField) {
178
191
  const { config } = def;
179
192
  const { inner: returnInner, nullable: returnNullable } = unwrapZod(config.returns);
180
193
  const fn = {
@@ -188,8 +201,45 @@ export class SerializeContext {
188
201
  fn.returnsNullable = true;
189
202
  if (config.output && config.output !== 'value')
190
203
  fn.output = config.output;
204
+ const policy = this.policyCompiler.compileMethodPolicy(def, owner, policyField);
205
+ if (policy)
206
+ fn.policy = policy;
191
207
  return fn;
192
208
  }
209
+ serializeFunctions() {
210
+ const result = {};
211
+ for (const [name, definition] of Object.entries(this.schema.functions)) {
212
+ const policy = this.policyCompiler.compileFunctionPolicy(definition, `functions.${name}.policy`);
213
+ const declaration = {
214
+ input: this.serializeStandaloneSchema(definition.config.input),
215
+ output: this.serializeStandaloneSchema(definition.config.output),
216
+ outputMode: definition.config.mode ?? 'value',
217
+ auth: 'required',
218
+ ...(policy ? { policy } : {}),
219
+ };
220
+ result[name] = declaration;
221
+ }
222
+ return result;
223
+ }
224
+ serializeStandaloneSchema(schema) {
225
+ const def = schema?._zod?.def ?? schema?._def;
226
+ const typeName = def?.typeName ?? def?.type;
227
+ if (typeName !== 'ZodObject' && typeName !== 'object') {
228
+ return this.convertZodSchema(schema);
229
+ }
230
+ const rawShape = typeof def.shape === 'function' ? def.shape() : def.shape;
231
+ const shape = (rawShape ?? {});
232
+ const properties = this.serializeParams(shape);
233
+ const required = Object.entries(shape)
234
+ .filter(([, property]) => !property.safeParse(undefined).success)
235
+ .map(([name]) => name);
236
+ return {
237
+ type: 'object',
238
+ properties,
239
+ required,
240
+ additionalProperties: false,
241
+ };
242
+ }
193
243
  serializeParams(params) {
194
244
  if (!params)
195
245
  return {};
@@ -306,3 +356,4 @@ export class SerializeContext {
306
356
  return descriptor.name;
307
357
  }
308
358
  }
359
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/serializer/context.ts"],"names":[],"mappings":"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"}
@@ -113,3 +113,4 @@ export function cleanJsonSchema(schema) {
113
113
  }
114
114
  return result;
115
115
  }
116
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/serializer/helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1,2 @@
1
1
  export { serialize } from './serialize.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/serializer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,34 @@
1
+ import type { AnyDef } from '../grammar/definition/discriminants.js';
2
+ import type { FnDef, FuncDef } from '../grammar/function/def.js';
3
+ import type { FunctionPolicyExpr, NodeClassPolicies, PolicyDeclaration } from '../ir/index.js';
4
+ import type { Schema } from '../schema/schema.js';
5
+ export declare class PolicyCompiler {
6
+ private readonly schema;
7
+ private readonly localDefs;
8
+ private readonly importedDefs;
9
+ private readonly policyNames;
10
+ private readonly declarations;
11
+ private readonly measures;
12
+ private nextVariableId;
13
+ private typing;
14
+ constructor(schema: Schema);
15
+ get hasStandalonePolicies(): boolean;
16
+ compileDeclarations(): Record<string, PolicyDeclaration>;
17
+ compileNodePolicies(definition: AnyDef, field: string): NodeClassPolicies | undefined;
18
+ compileMethodPolicy(definition: FnDef, owner: AnyDef, field: string): FunctionPolicyExpr | undefined;
19
+ compileFunctionPolicy(definition: FuncDef, field: string): FunctionPolicyExpr | undefined;
20
+ private compileNamed;
21
+ private measureNamed;
22
+ private patternBuilder;
23
+ private patternEndpoint;
24
+ private callableOperators;
25
+ private buildInputBindings;
26
+ private assertDirectNode;
27
+ private resolvePolicyRef;
28
+ private resolveLazyPolicy;
29
+ private resolveLazyDefinition;
30
+ private policyTyping;
31
+ private resolveDefinitionRef;
32
+ private resolveAnyDefinition;
33
+ }
34
+ //# sourceMappingURL=policies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../../src/serializer/policies.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,wCAAwC,CAAA;AAGhF,OAAO,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAQhE,OAAO,KAAK,EAEV,kBAAkB,EAClB,iBAAiB,EAEjB,iBAAiB,EAIlB,MAAM,gBAAgB,CAAA;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAulBjD,qBAAa,cAAc;IAYb,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA4B;IACtD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAGtB;IACP,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAC3D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuC;IACpE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoC;IAC7D,OAAO,CAAC,cAAc,CAAI;IAC1B,OAAO,CAAC,MAAM,CAA0B;IAExC,YAA6B,MAAM,EAAE,MAAM,EAQ1C;IAED,IAAI,qBAAqB,IAAI,OAAO,CAEnC;IAED,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CASvD;IAED,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAepF;IAED,mBAAmB,CACjB,UAAU,EAAE,KAAK,EACjB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GACZ,kBAAkB,GAAG,SAAS,CA8BhC;IAED,qBAAqB,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CA2BxF;IAED,OAAO,CAAC,YAAY;IA8DpB,OAAO,CAAC,YAAY;IA4DpB,OAAO,CAAC,cAAc;IAmGtB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,iBAAiB;IAmCzB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,oBAAoB;CAwB7B"}