@astrale-os/kernel-dsl 0.1.4 → 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.
- package/dist/builders/bitmask.js +1 -0
- package/dist/builders/bitmask.js.map +1 -0
- package/dist/builders/data.js +1 -0
- package/dist/builders/data.js.map +1 -0
- package/dist/builders/definition/base.js +1 -0
- package/dist/builders/definition/base.js.map +1 -0
- package/dist/builders/definition/edge-class.js +1 -0
- package/dist/builders/definition/edge-class.js.map +1 -0
- package/dist/builders/definition/edge-interface.js +1 -0
- package/dist/builders/definition/edge-interface.js.map +1 -0
- package/dist/builders/definition/node-class.js +1 -0
- package/dist/builders/definition/node-class.js.map +1 -0
- package/dist/builders/definition/node-interface.js +1 -0
- package/dist/builders/definition/node-interface.js.map +1 -0
- package/dist/builders/function.d.ts +16 -2
- package/dist/builders/function.d.ts.map +1 -1
- package/dist/builders/function.js +1 -1
- package/dist/builders/function.js.map +1 -0
- package/dist/builders/policy.d.ts +10 -0
- package/dist/builders/policy.d.ts.map +1 -0
- package/dist/builders/policy.js +28 -0
- package/dist/builders/policy.js.map +1 -0
- package/dist/builders/prop.js +1 -0
- package/dist/builders/prop.js.map +1 -0
- package/dist/builders/ref.js +1 -0
- package/dist/builders/ref.js.map +1 -0
- package/dist/grammar/definition/base.js +1 -0
- package/dist/grammar/definition/base.js.map +1 -0
- package/dist/grammar/definition/discriminants.js +1 -0
- package/dist/grammar/definition/discriminants.js.map +1 -0
- package/dist/grammar/definition/edge-class.js +1 -0
- package/dist/grammar/definition/edge-class.js.map +1 -0
- package/dist/grammar/definition/edge-interface.js +1 -0
- package/dist/grammar/definition/edge-interface.js.map +1 -0
- package/dist/grammar/definition/node-class.d.ts +5 -0
- package/dist/grammar/definition/node-class.d.ts.map +1 -1
- package/dist/grammar/definition/node-class.js +1 -0
- package/dist/grammar/definition/node-class.js.map +1 -0
- package/dist/grammar/definition/node-interface.js +1 -0
- package/dist/grammar/definition/node-interface.js.map +1 -0
- package/dist/grammar/facets/constraints.js +1 -0
- package/dist/grammar/facets/constraints.js.map +1 -0
- package/dist/grammar/facets/content.js +1 -0
- package/dist/grammar/facets/content.js.map +1 -0
- package/dist/grammar/facets/endpoints.js +1 -0
- package/dist/grammar/facets/endpoints.js.map +1 -0
- package/dist/grammar/facets/indexes.js +1 -0
- package/dist/grammar/facets/indexes.js.map +1 -0
- package/dist/grammar/facets/properties.js +1 -0
- package/dist/grammar/facets/properties.js.map +1 -0
- package/dist/grammar/function/config.d.ts +5 -3
- package/dist/grammar/function/config.d.ts.map +1 -1
- package/dist/grammar/function/config.js +1 -0
- package/dist/grammar/function/config.js.map +1 -0
- package/dist/grammar/function/def.d.ts +3 -0
- package/dist/grammar/function/def.d.ts.map +1 -1
- package/dist/grammar/function/def.js +1 -0
- package/dist/grammar/function/def.js.map +1 -0
- package/dist/grammar/function/inheritance.js +1 -0
- package/dist/grammar/function/inheritance.js.map +1 -0
- package/dist/grammar/function/output.js +1 -0
- package/dist/grammar/function/output.js.map +1 -0
- package/dist/grammar/policy/callable.d.ts +40 -0
- package/dist/grammar/policy/callable.d.ts.map +1 -0
- package/dist/grammar/policy/callable.js +2 -0
- package/dist/grammar/policy/callable.js.map +1 -0
- package/dist/grammar/policy/def.d.ts +27 -0
- package/dist/grammar/policy/def.d.ts.map +1 -0
- package/dist/grammar/policy/def.js +2 -0
- package/dist/grammar/policy/def.js.map +1 -0
- package/dist/grammar/policy/pattern.d.ts +34 -0
- package/dist/grammar/policy/pattern.d.ts.map +1 -0
- package/dist/grammar/policy/pattern.js +2 -0
- package/dist/grammar/policy/pattern.js.map +1 -0
- package/dist/grammar/values/bitmask.js +1 -0
- package/dist/grammar/values/bitmask.js.map +1 -0
- package/dist/grammar/values/data.js +1 -0
- package/dist/grammar/values/data.js.map +1 -0
- package/dist/grammar/values/ref.js +1 -0
- package/dist/grammar/values/ref.js.map +1 -0
- package/dist/grammar/values/self.js +1 -0
- package/dist/grammar/values/self.js.map +1 -0
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/inference/content.js +1 -0
- package/dist/inference/content.js.map +1 -0
- package/dist/inference/index.js +1 -0
- package/dist/inference/index.js.map +1 -0
- package/dist/inference/inheritance.js +1 -0
- package/dist/inference/inheritance.js.map +1 -0
- package/dist/inference/input.js +1 -0
- package/dist/inference/input.js.map +1 -0
- package/dist/inference/methods.js +1 -0
- package/dist/inference/methods.js.map +1 -0
- package/dist/inference/properties.js +1 -0
- package/dist/inference/properties.js.map +1 -0
- package/dist/inference/schema.js +1 -0
- package/dist/inference/schema.js.map +1 -0
- package/dist/instance/core/define.js +1 -0
- package/dist/instance/core/define.js.map +1 -0
- package/dist/instance/core/edge.js +1 -0
- package/dist/instance/core/edge.js.map +1 -0
- package/dist/instance/core/endpoint.js +1 -0
- package/dist/instance/core/endpoint.js.map +1 -0
- package/dist/instance/core/node.js +1 -0
- package/dist/instance/core/node.js.map +1 -0
- package/dist/instance/core/path.js +1 -0
- package/dist/instance/core/path.js.map +1 -0
- package/dist/instance/core/self.js +1 -0
- package/dist/instance/core/self.js.map +1 -0
- package/dist/instance/core/types.js +1 -0
- package/dist/instance/core/types.js.map +1 -0
- package/dist/instance/seed/define.js +1 -0
- package/dist/instance/seed/define.js.map +1 -0
- package/dist/instance/seed/types.js +1 -0
- package/dist/instance/seed/types.js.map +1 -0
- package/dist/ir/classes.d.ts +6 -0
- package/dist/ir/classes.d.ts.map +1 -1
- package/dist/ir/classes.js +1 -0
- package/dist/ir/classes.js.map +1 -0
- package/dist/ir/domain.js +1 -0
- package/dist/ir/domain.js.map +1 -0
- package/dist/ir/endpoints.js +1 -0
- package/dist/ir/endpoints.js.map +1 -0
- package/dist/ir/functions.d.ts +15 -0
- package/dist/ir/functions.d.ts.map +1 -1
- package/dist/ir/functions.js +1 -0
- package/dist/ir/functions.js.map +1 -0
- package/dist/ir/index.d.ts +2 -1
- package/dist/ir/index.d.ts.map +1 -1
- package/dist/ir/index.js +1 -0
- package/dist/ir/index.js.map +1 -0
- package/dist/ir/ir.d.ts +12 -0
- package/dist/ir/ir.d.ts.map +1 -1
- package/dist/ir/ir.js +1 -0
- package/dist/ir/ir.js.map +1 -0
- package/dist/ir/json-schema.js +1 -0
- package/dist/ir/json-schema.js.map +1 -0
- package/dist/ir/policies.d.ts +74 -0
- package/dist/ir/policies.d.ts.map +1 -0
- package/dist/ir/policies.js +2 -0
- package/dist/ir/policies.js.map +1 -0
- package/dist/schema/classify.js +1 -0
- package/dist/schema/classify.js.map +1 -0
- package/dist/schema/define.d.ts +2 -0
- package/dist/schema/define.d.ts.map +1 -1
- package/dist/schema/define.js +20 -2
- package/dist/schema/define.js.map +1 -0
- package/dist/schema/error.js +1 -0
- package/dist/schema/error.js.map +1 -0
- package/dist/schema/refs.js +1 -0
- package/dist/schema/refs.js.map +1 -0
- package/dist/schema/resolve/index.js +1 -0
- package/dist/schema/resolve/index.js.map +1 -0
- package/dist/schema/resolve/methods.js +1 -0
- package/dist/schema/resolve/methods.js.map +1 -0
- package/dist/schema/resolve/properties.js +1 -0
- package/dist/schema/resolve/properties.js.map +1 -0
- package/dist/schema/resolve/self.js +1 -0
- package/dist/schema/resolve/self.js.map +1 -0
- package/dist/schema/resolve/thunks.js +1 -0
- package/dist/schema/resolve/thunks.js.map +1 -0
- package/dist/schema/schema.d.ts +3 -0
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +1 -0
- package/dist/schema/schema.js.map +1 -0
- package/dist/schema/validators/context.d.ts +4 -0
- package/dist/schema/validators/context.d.ts.map +1 -1
- package/dist/schema/validators/context.js +1 -0
- package/dist/schema/validators/context.js.map +1 -0
- package/dist/schema/validators/endpoints.js +1 -0
- package/dist/schema/validators/endpoints.js.map +1 -0
- package/dist/schema/validators/index.d.ts +1 -0
- package/dist/schema/validators/index.d.ts.map +1 -1
- package/dist/schema/validators/index.js +4 -0
- package/dist/schema/validators/index.js.map +1 -0
- package/dist/schema/validators/indexes.js +1 -0
- package/dist/schema/validators/indexes.js.map +1 -0
- package/dist/schema/validators/inheritance.js +1 -0
- package/dist/schema/validators/inheritance.js.map +1 -0
- package/dist/schema/validators/methods.js +1 -0
- package/dist/schema/validators/methods.js.map +1 -0
- package/dist/schema/validators/names.js +1 -0
- package/dist/schema/validators/names.js.map +1 -0
- package/dist/schema/validators/policies.d.ts +4 -0
- package/dist/schema/validators/policies.d.ts.map +1 -0
- package/dist/schema/validators/policies.js +61 -0
- package/dist/schema/validators/policies.js.map +1 -0
- package/dist/schema/validators/ref-targets.js +1 -0
- package/dist/schema/validators/ref-targets.js.map +1 -0
- package/dist/serializer/context.d.ts +3 -0
- package/dist/serializer/context.d.ts.map +1 -1
- package/dist/serializer/context.js +57 -6
- package/dist/serializer/context.js.map +1 -0
- package/dist/serializer/helpers.js +1 -0
- package/dist/serializer/helpers.js.map +1 -0
- package/dist/serializer/index.js +1 -0
- package/dist/serializer/index.js.map +1 -0
- package/dist/serializer/policies.d.ts +34 -0
- package/dist/serializer/policies.d.ts.map +1 -0
- package/dist/serializer/policies.js +837 -0
- package/dist/serializer/policies.js.map +1 -0
- package/dist/serializer/policy-typing.d.ts +56 -0
- package/dist/serializer/policy-typing.d.ts.map +1 -0
- package/dist/serializer/policy-typing.js +490 -0
- package/dist/serializer/policy-typing.js.map +1 -0
- package/dist/serializer/serialize.js +1 -0
- package/dist/serializer/serialize.js.map +1 -0
- package/package.json +2 -2
|
@@ -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"}
|
|
@@ -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"}
|
|
@@ -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"}
|
|
@@ -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"}
|
|
@@ -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"}
|
package/dist/schema/schema.d.ts
CHANGED
|
@@ -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"}
|
package/dist/schema/schema.js
CHANGED
|
@@ -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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/schema/validators/context.ts"],"names":[],"mappings":""}
|
|
@@ -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;
|
|
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"}
|
|
@@ -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"}
|
|
@@ -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"}
|
|
@@ -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"}
|
|
@@ -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 @@
|
|
|
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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ref-targets.js","sourceRoot":"","sources":["../../../src/schema/validators/ref-targets.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEhD,iBAAiB;AACjB,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAmB,CAAA;AAE/D,qDAAqD;AACrD,SAAS,iBAAiB,CAAC,MAAe;IACxC,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAA;IAC5D,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,MAAM,MAAM,GAAG,MAA0C,CAAA;IAEzD,8BAA8B;IAC9B,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,CAAwB,CAAA;QAC3D,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACnD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAgB,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,MAAM,GAAG,GAAG,MAAoF,CAAA;IAChG,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAA;IACnF,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,kBAAkB,CAAC,GAAkB;IACnD,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,KAAY,EAAE,EAAE;QACpD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAA;QAClC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YACzE,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAiC,CAAC,EAAE,CAAC;gBACzF,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;oBACpD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;wBAC3C,MAAM,IAAI,qBAAqB,CAC7B,IAAI,IAAI,YAAY,SAAS,6BAA6B,EAC1D,GAAG,IAAI,WAAW,SAAS,EAAE,EAC7B,kCAAkC,EAClC,mBAAmB,CACpB,CAAA;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC3C,MAAM,IAAI,qBAAqB,CAC7B,IAAI,IAAI,yCAAyC,EACjD,GAAG,IAAI,UAAU,EACjB,kCAAkC,EAClC,mBAAmB,CACpB,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IAED,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,OAA4C,CAAA;QACvE,IAAI,CAAC,OAAO;YAAE,SAAQ;QACtB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9D,cAAc,CAAC,GAAG,IAAI,IAAI,UAAU,EAAE,EAAE,SAAS,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -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,
|
|
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,
|
|
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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/serializer/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/serializer/index.js
CHANGED
|
@@ -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"}
|