@astrale-os/kernel-dsl 0.1.0
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.d.ts +5 -0
- package/dist/builders/bitmask.d.ts.map +1 -0
- package/dist/builders/bitmask.js +11 -0
- package/dist/builders/data.d.ts +7 -0
- package/dist/builders/data.d.ts.map +1 -0
- package/dist/builders/data.js +17 -0
- package/dist/builders/definition/base.d.ts +13 -0
- package/dist/builders/definition/base.d.ts.map +1 -0
- package/dist/builders/definition/base.js +23 -0
- package/dist/builders/definition/edge-class.d.ts +8 -0
- package/dist/builders/definition/edge-class.d.ts.map +1 -0
- package/dist/builders/definition/edge-class.js +8 -0
- package/dist/builders/definition/edge-interface.d.ts +8 -0
- package/dist/builders/definition/edge-interface.d.ts.map +1 -0
- package/dist/builders/definition/edge-interface.js +8 -0
- package/dist/builders/definition/index.d.ts +5 -0
- package/dist/builders/definition/index.d.ts.map +1 -0
- package/dist/builders/definition/index.js +4 -0
- package/dist/builders/definition/node-class.d.ts +7 -0
- package/dist/builders/definition/node-class.d.ts.map +1 -0
- package/dist/builders/definition/node-class.js +8 -0
- package/dist/builders/definition/node-interface.d.ts +7 -0
- package/dist/builders/definition/node-interface.d.ts.map +1 -0
- package/dist/builders/definition/node-interface.js +8 -0
- package/dist/builders/function.d.ts +14 -0
- package/dist/builders/function.d.ts.map +1 -0
- package/dist/builders/function.js +4 -0
- package/dist/builders/index.d.ts +10 -0
- package/dist/builders/index.d.ts.map +1 -0
- package/dist/builders/index.js +9 -0
- package/dist/builders/prop.d.ts +7 -0
- package/dist/builders/prop.d.ts.map +1 -0
- package/dist/builders/prop.js +8 -0
- package/dist/builders/ref.d.ts +12 -0
- package/dist/builders/ref.d.ts.map +1 -0
- package/dist/builders/ref.js +26 -0
- package/dist/grammar/definition/base.d.ts +13 -0
- package/dist/grammar/definition/base.d.ts.map +1 -0
- package/dist/grammar/definition/base.js +1 -0
- package/dist/grammar/definition/discriminants.d.ts +31 -0
- package/dist/grammar/definition/discriminants.d.ts.map +1 -0
- package/dist/grammar/definition/discriminants.js +32 -0
- package/dist/grammar/definition/edge-class.d.ts +19 -0
- package/dist/grammar/definition/edge-class.d.ts.map +1 -0
- package/dist/grammar/definition/edge-class.js +1 -0
- package/dist/grammar/definition/edge-interface.d.ts +18 -0
- package/dist/grammar/definition/edge-interface.d.ts.map +1 -0
- package/dist/grammar/definition/edge-interface.js +1 -0
- package/dist/grammar/definition/index.d.ts +8 -0
- package/dist/grammar/definition/index.d.ts.map +1 -0
- package/dist/grammar/definition/index.js +1 -0
- package/dist/grammar/definition/node-class.d.ts +21 -0
- package/dist/grammar/definition/node-class.d.ts.map +1 -0
- package/dist/grammar/definition/node-class.js +1 -0
- package/dist/grammar/definition/node-interface.d.ts +14 -0
- package/dist/grammar/definition/node-interface.d.ts.map +1 -0
- package/dist/grammar/definition/node-interface.js +1 -0
- package/dist/grammar/facets/constraints.d.ts +8 -0
- package/dist/grammar/facets/constraints.d.ts.map +1 -0
- package/dist/grammar/facets/constraints.js +1 -0
- package/dist/grammar/facets/content.d.ts +4 -0
- package/dist/grammar/facets/content.d.ts.map +1 -0
- package/dist/grammar/facets/content.js +1 -0
- package/dist/grammar/facets/endpoints.d.ts +14 -0
- package/dist/grammar/facets/endpoints.d.ts.map +1 -0
- package/dist/grammar/facets/endpoints.js +2 -0
- package/dist/grammar/facets/index.d.ts +9 -0
- package/dist/grammar/facets/index.d.ts.map +1 -0
- package/dist/grammar/facets/index.js +3 -0
- package/dist/grammar/facets/indexes.d.ts +12 -0
- package/dist/grammar/facets/indexes.d.ts.map +1 -0
- package/dist/grammar/facets/indexes.js +8 -0
- package/dist/grammar/facets/properties.d.ts +26 -0
- package/dist/grammar/facets/properties.d.ts.map +1 -0
- package/dist/grammar/facets/properties.js +44 -0
- package/dist/grammar/function/config.d.ts +14 -0
- package/dist/grammar/function/config.d.ts.map +1 -0
- package/dist/grammar/function/config.js +1 -0
- package/dist/grammar/function/def.d.ts +33 -0
- package/dist/grammar/function/def.d.ts.map +1 -0
- package/dist/grammar/function/def.js +1 -0
- package/dist/grammar/function/index.d.ts +5 -0
- package/dist/grammar/function/index.d.ts.map +1 -0
- package/dist/grammar/function/index.js +1 -0
- package/dist/grammar/function/inheritance.d.ts +3 -0
- package/dist/grammar/function/inheritance.d.ts.map +1 -0
- package/dist/grammar/function/inheritance.js +1 -0
- package/dist/grammar/function/output.d.ts +3 -0
- package/dist/grammar/function/output.d.ts.map +1 -0
- package/dist/grammar/function/output.js +1 -0
- package/dist/grammar/index.d.ts +5 -0
- package/dist/grammar/index.d.ts.map +1 -0
- package/dist/grammar/index.js +4 -0
- package/dist/grammar/values/bitmask.d.ts +7 -0
- package/dist/grammar/values/bitmask.d.ts.map +1 -0
- package/dist/grammar/values/bitmask.js +1 -0
- package/dist/grammar/values/data.d.ts +30 -0
- package/dist/grammar/values/data.d.ts.map +1 -0
- package/dist/grammar/values/data.js +1 -0
- package/dist/grammar/values/index.d.ts +9 -0
- package/dist/grammar/values/index.d.ts.map +1 -0
- package/dist/grammar/values/index.js +4 -0
- package/dist/grammar/values/ref.d.ts +26 -0
- package/dist/grammar/values/ref.d.ts.map +1 -0
- package/dist/grammar/values/ref.js +1 -0
- package/dist/grammar/values/self.d.ts +12 -0
- package/dist/grammar/values/self.d.ts.map +1 -0
- package/dist/grammar/values/self.js +5 -0
- package/dist/index.d.ts +53 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +29 -0
- package/dist/inference/content.d.ts +27 -0
- package/dist/inference/content.d.ts.map +1 -0
- package/dist/inference/content.js +1 -0
- package/dist/inference/index.d.ts +7 -0
- package/dist/inference/index.d.ts.map +1 -0
- package/dist/inference/index.js +1 -0
- package/dist/inference/inheritance.d.ts +48 -0
- package/dist/inference/inheritance.d.ts.map +1 -0
- package/dist/inference/inheritance.js +1 -0
- package/dist/inference/input.d.ts +30 -0
- package/dist/inference/input.d.ts.map +1 -0
- package/dist/inference/input.js +1 -0
- package/dist/inference/methods.d.ts +69 -0
- package/dist/inference/methods.d.ts.map +1 -0
- package/dist/inference/methods.js +1 -0
- package/dist/inference/properties.d.ts +37 -0
- package/dist/inference/properties.d.ts.map +1 -0
- package/dist/inference/properties.js +1 -0
- package/dist/inference/schema.d.ts +37 -0
- package/dist/inference/schema.d.ts.map +1 -0
- package/dist/inference/schema.js +1 -0
- package/dist/instance/core/define.d.ts +13 -0
- package/dist/instance/core/define.d.ts.map +1 -0
- package/dist/instance/core/define.js +62 -0
- package/dist/instance/core/edge.d.ts +9 -0
- package/dist/instance/core/edge.d.ts.map +1 -0
- package/dist/instance/core/edge.js +10 -0
- package/dist/instance/core/endpoint.d.ts +11 -0
- package/dist/instance/core/endpoint.d.ts.map +1 -0
- package/dist/instance/core/endpoint.js +18 -0
- package/dist/instance/core/index.d.ts +7 -0
- package/dist/instance/core/index.d.ts.map +1 -0
- package/dist/instance/core/index.js +5 -0
- package/dist/instance/core/node.d.ts +7 -0
- package/dist/instance/core/node.d.ts.map +1 -0
- package/dist/instance/core/node.js +8 -0
- package/dist/instance/core/path.d.ts +21 -0
- package/dist/instance/core/path.d.ts.map +1 -0
- package/dist/instance/core/path.js +20 -0
- package/dist/instance/core/self.d.ts +15 -0
- package/dist/instance/core/self.d.ts.map +1 -0
- package/dist/instance/core/self.js +7 -0
- package/dist/instance/core/types.d.ts +45 -0
- package/dist/instance/core/types.d.ts.map +1 -0
- package/dist/instance/core/types.js +1 -0
- package/dist/instance/index.d.ts +4 -0
- package/dist/instance/index.d.ts.map +1 -0
- package/dist/instance/index.js +2 -0
- package/dist/instance/seed/define.d.ts +12 -0
- package/dist/instance/seed/define.d.ts.map +1 -0
- package/dist/instance/seed/define.js +33 -0
- package/dist/instance/seed/index.d.ts +3 -0
- package/dist/instance/seed/index.d.ts.map +1 -0
- package/dist/instance/seed/index.js +1 -0
- package/dist/instance/seed/types.d.ts +12 -0
- package/dist/instance/seed/types.d.ts.map +1 -0
- package/dist/instance/seed/types.js +1 -0
- package/dist/ir/classes.d.ts +72 -0
- package/dist/ir/classes.d.ts.map +1 -0
- package/dist/ir/classes.js +1 -0
- package/dist/ir/domain.d.ts +13 -0
- package/dist/ir/domain.d.ts.map +1 -0
- package/dist/ir/domain.js +1 -0
- package/dist/ir/endpoints.d.ts +27 -0
- package/dist/ir/endpoints.d.ts.map +1 -0
- package/dist/ir/endpoints.js +1 -0
- package/dist/ir/functions.d.ts +19 -0
- package/dist/ir/functions.d.ts.map +1 -0
- package/dist/ir/functions.js +1 -0
- package/dist/ir/index.d.ts +8 -0
- package/dist/ir/index.d.ts.map +1 -0
- package/dist/ir/index.js +1 -0
- package/dist/ir/ir.d.ts +63 -0
- package/dist/ir/ir.d.ts.map +1 -0
- package/dist/ir/ir.js +4 -0
- package/dist/ir/json-schema.d.ts +20 -0
- package/dist/ir/json-schema.d.ts.map +1 -0
- package/dist/ir/json-schema.js +1 -0
- package/dist/schema/classify.d.ts +8 -0
- package/dist/schema/classify.d.ts.map +1 -0
- package/dist/schema/classify.js +19 -0
- package/dist/schema/define.d.ts +19 -0
- package/dist/schema/define.d.ts.map +1 -0
- package/dist/schema/define.js +47 -0
- package/dist/schema/error.d.ts +8 -0
- package/dist/schema/error.d.ts.map +1 -0
- package/dist/schema/error.js +13 -0
- package/dist/schema/index.d.ts +8 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +5 -0
- package/dist/schema/refs.d.ts +80 -0
- package/dist/schema/refs.d.ts.map +1 -0
- package/dist/schema/refs.js +116 -0
- package/dist/schema/resolve/index.d.ts +5 -0
- package/dist/schema/resolve/index.d.ts.map +1 -0
- package/dist/schema/resolve/index.js +4 -0
- package/dist/schema/resolve/methods.d.ts +8 -0
- package/dist/schema/resolve/methods.d.ts.map +1 -0
- package/dist/schema/resolve/methods.js +17 -0
- package/dist/schema/resolve/properties.d.ts +13 -0
- package/dist/schema/resolve/properties.d.ts.map +1 -0
- package/dist/schema/resolve/properties.js +36 -0
- package/dist/schema/resolve/self.d.ts +7 -0
- package/dist/schema/resolve/self.d.ts.map +1 -0
- package/dist/schema/resolve/self.js +32 -0
- package/dist/schema/resolve/thunks.d.ts +12 -0
- package/dist/schema/resolve/thunks.d.ts.map +1 -0
- package/dist/schema/resolve/thunks.js +36 -0
- package/dist/schema/schema.d.ts +21 -0
- package/dist/schema/schema.d.ts.map +1 -0
- package/dist/schema/schema.js +1 -0
- package/dist/schema/validators/context.d.ts +13 -0
- package/dist/schema/validators/context.d.ts.map +1 -0
- package/dist/schema/validators/context.js +1 -0
- package/dist/schema/validators/endpoints.d.ts +4 -0
- package/dist/schema/validators/endpoints.d.ts.map +1 -0
- package/dist/schema/validators/endpoints.js +26 -0
- package/dist/schema/validators/index.d.ts +11 -0
- package/dist/schema/validators/index.d.ts.map +1 -0
- package/dist/schema/validators/index.js +21 -0
- package/dist/schema/validators/indexes.d.ts +4 -0
- package/dist/schema/validators/indexes.d.ts.map +1 -0
- package/dist/schema/validators/indexes.js +18 -0
- package/dist/schema/validators/inheritance.d.ts +4 -0
- package/dist/schema/validators/inheritance.d.ts.map +1 -0
- package/dist/schema/validators/inheritance.js +26 -0
- package/dist/schema/validators/methods.d.ts +9 -0
- package/dist/schema/validators/methods.d.ts.map +1 -0
- package/dist/schema/validators/methods.js +43 -0
- package/dist/schema/validators/names.d.ts +4 -0
- package/dist/schema/validators/names.d.ts.map +1 -0
- package/dist/schema/validators/names.js +18 -0
- package/dist/schema/validators/ref-targets.d.ts +4 -0
- package/dist/schema/validators/ref-targets.d.ts.map +1 -0
- package/dist/schema/validators/ref-targets.js +53 -0
- package/dist/serializer/context.d.ts +32 -0
- package/dist/serializer/context.d.ts.map +1 -0
- package/dist/serializer/context.js +308 -0
- package/dist/serializer/helpers.d.ts +34 -0
- package/dist/serializer/helpers.d.ts.map +1 -0
- package/dist/serializer/helpers.js +115 -0
- package/dist/serializer/index.d.ts +2 -0
- package/dist/serializer/index.d.ts.map +1 -0
- package/dist/serializer/index.js +1 -0
- package/dist/serializer/serialize.d.ts +12 -0
- package/dist/serializer/serialize.d.ts.map +1 -0
- package/dist/serializer/serialize.js +5 -0
- package/package.json +45 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type { PropertyShape, Property, PropertyDef, NormalizedProperty } from './properties.js';
|
|
2
|
+
export { isPropertyDef, normalizeProperty } from './properties.js';
|
|
3
|
+
export type { ContentShape } from './content.js';
|
|
4
|
+
export type { IndexType, IndexDef } from './indexes.js';
|
|
5
|
+
export { indexProperty, indexType } from './indexes.js';
|
|
6
|
+
export type { Cardinality, EndpointConfig } from './endpoints.js';
|
|
7
|
+
export { DEFAULT_CARDINALITY } from './endpoints.js';
|
|
8
|
+
export type { DefConstraints } from './constraints.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/grammar/facets/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAC/F,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAElE,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAEhD,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAEvD,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAEpD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Index strategy */
|
|
2
|
+
export type IndexType = 'btree' | 'unique' | 'fulltext';
|
|
3
|
+
/** Index definition — shorthand string or explicit config */
|
|
4
|
+
export type IndexDef<K extends string = string> = K | {
|
|
5
|
+
readonly property: K;
|
|
6
|
+
readonly type: IndexType;
|
|
7
|
+
};
|
|
8
|
+
/** Extract the property name from an IndexDef */
|
|
9
|
+
export declare function indexProperty<K extends string>(index: IndexDef<K>): K;
|
|
10
|
+
/** Extract the index type, defaulting to 'btree' */
|
|
11
|
+
export declare function indexType(index: IndexDef): IndexType;
|
|
12
|
+
//# sourceMappingURL=indexes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexes.d.ts","sourceRoot":"","sources":["../../../src/grammar/facets/indexes.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,CAAA;AAEvD,6DAA6D;AAC7D,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,IAC1C,CAAC,GACD;IAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAA;AAEtD,iDAAiD;AACjD,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAErE;AAED,oDAAoD;AACpD,wBAAgB,SAAS,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAEpD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** Extract the property name from an IndexDef */
|
|
2
|
+
export function indexProperty(index) {
|
|
3
|
+
return typeof index === 'string' ? index : index.property;
|
|
4
|
+
}
|
|
5
|
+
/** Extract the index type, defaulting to 'btree' */
|
|
6
|
+
export function indexType(index) {
|
|
7
|
+
return typeof index === 'string' ? 'btree' : index.type;
|
|
8
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
/** Shape of the properties record on a definition config */
|
|
3
|
+
export type PropertyShape = Record<string, Property>;
|
|
4
|
+
/** A property is either a bare Zod schema or a PropertyDef with metadata */
|
|
5
|
+
export type Property = z.ZodType | PropertyDef;
|
|
6
|
+
/** Property definition with explicit metadata (private flag) */
|
|
7
|
+
export interface PropertyDef<S extends z.ZodType = z.ZodType> {
|
|
8
|
+
readonly _tag: 'PropertyDef';
|
|
9
|
+
readonly schema: S;
|
|
10
|
+
readonly private: boolean;
|
|
11
|
+
}
|
|
12
|
+
/** Normalized property — the resolved form of a Property */
|
|
13
|
+
export interface NormalizedProperty {
|
|
14
|
+
readonly schema: z.ZodType;
|
|
15
|
+
readonly private: boolean;
|
|
16
|
+
readonly required: boolean;
|
|
17
|
+
}
|
|
18
|
+
/** Type guard for PropertyDef */
|
|
19
|
+
export declare function isPropertyDef(value: unknown): value is PropertyDef;
|
|
20
|
+
/**
|
|
21
|
+
* True iff the property MUST be provided at create-time.
|
|
22
|
+
*/
|
|
23
|
+
export declare function isPropertyRequired(schema: z.ZodType): boolean;
|
|
24
|
+
/** Normalize a Property into its resolved form */
|
|
25
|
+
export declare function normalizeProperty(prop: Property): NormalizedProperty;
|
|
26
|
+
//# sourceMappingURL=properties.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"properties.d.ts","sourceRoot":"","sources":["../../../src/grammar/facets/properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,4DAA4D;AAC5D,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;AAEpD,4EAA4E;AAC5E,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,GAAG,WAAW,CAAA;AAE9C,gEAAgE;AAChE,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO;IAC1D,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;IAClB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B;AAED,4DAA4D;AAC5D,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;CAC3B;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAOlE;AAQD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,GAAG,OAAO,CAiB7D;AAED,kDAAkD;AAClD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,kBAAkB,CAKpE"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** Type guard for PropertyDef */
|
|
2
|
+
export function isPropertyDef(value) {
|
|
3
|
+
return (typeof value === 'object' &&
|
|
4
|
+
value !== null &&
|
|
5
|
+
'_tag' in value &&
|
|
6
|
+
value._tag === 'PropertyDef');
|
|
7
|
+
}
|
|
8
|
+
// oxlint-disable typescript/no-explicit-any
|
|
9
|
+
function getDef(schema) {
|
|
10
|
+
return schema?._zod?.def ?? schema?._def ?? null;
|
|
11
|
+
}
|
|
12
|
+
// oxlint-enable typescript/no-explicit-any
|
|
13
|
+
/**
|
|
14
|
+
* True iff the property MUST be provided at create-time.
|
|
15
|
+
*/
|
|
16
|
+
export function isPropertyRequired(schema) {
|
|
17
|
+
let current = schema;
|
|
18
|
+
for (let i = 0; i < 8; i++) {
|
|
19
|
+
const def = getDef(current);
|
|
20
|
+
if (!def)
|
|
21
|
+
return true;
|
|
22
|
+
const typeName = (def.typeName ?? def.type);
|
|
23
|
+
if (typeName === 'ZodOptional' || typeName === 'optional')
|
|
24
|
+
return false;
|
|
25
|
+
if (typeName === 'ZodDefault' || typeName === 'default')
|
|
26
|
+
return false;
|
|
27
|
+
if (typeName === 'ZodNullable' || typeName === 'nullable') {
|
|
28
|
+
const inner = (def.innerType ?? def.inner);
|
|
29
|
+
if (!inner)
|
|
30
|
+
return true;
|
|
31
|
+
current = inner;
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
/** Normalize a Property into its resolved form */
|
|
39
|
+
export function normalizeProperty(prop) {
|
|
40
|
+
if (isPropertyDef(prop)) {
|
|
41
|
+
return { schema: prop.schema, private: prop.private, required: isPropertyRequired(prop.schema) };
|
|
42
|
+
}
|
|
43
|
+
return { schema: prop, private: false, required: isPropertyRequired(prop) };
|
|
44
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
import type { MethodInheritance } from './inheritance.js';
|
|
3
|
+
import type { OutputMode } from './output.js';
|
|
4
|
+
/** Shape of the params record on a function config */
|
|
5
|
+
export type ParamShape = Record<string, z.ZodType>;
|
|
6
|
+
/** Function configuration */
|
|
7
|
+
export interface FnConfig {
|
|
8
|
+
readonly params?: ParamShape | (() => ParamShape);
|
|
9
|
+
readonly returns: z.ZodType;
|
|
10
|
+
readonly inheritance?: MethodInheritance;
|
|
11
|
+
readonly output?: OutputMode;
|
|
12
|
+
readonly static?: boolean;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/grammar/function/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,sDAAsD;AACtD,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAA;AAElD,6BAA6B;AAC7B,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,CAAC,MAAM,UAAU,CAAC,CAAA;IACjD,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAA;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAA;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAC1B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
import type { FnConfig, ParamShape } from './config.js';
|
|
3
|
+
import type { MethodInheritance } from './inheritance.js';
|
|
4
|
+
import type { OutputMode } from './output.js';
|
|
5
|
+
/**
|
|
6
|
+
* Branded function definition.
|
|
7
|
+
*
|
|
8
|
+
* Parameterized by the four fields that consumers read at the type level:
|
|
9
|
+
* `params`, `returns`, `inheritance`, `static`. `output` is typed as the full
|
|
10
|
+
* enum (not a generic) because nothing reads it at the type level — keeping
|
|
11
|
+
* it out of the generic surface cuts per-method serialized size.
|
|
12
|
+
*
|
|
13
|
+
* The `params?: ... | (() => ...)` thunk union that appears at the `fn()`
|
|
14
|
+
* builder input is normalized away here — at the `FnDef` type level, params
|
|
15
|
+
* is just `Params | undefined`. The runtime still carries a thunk when
|
|
16
|
+
* declared; `resolveParamThunks` in `defineSchema` collapses it.
|
|
17
|
+
*
|
|
18
|
+
* `FnConfig` remains as the runtime-friendly widest shape; consumers that
|
|
19
|
+
* read `fnDef.config` dynamically still see the full-fat record.
|
|
20
|
+
*/
|
|
21
|
+
export interface FnDef<out Params extends ParamShape = ParamShape, out Returns extends z.ZodType = z.ZodType, out Inheritance extends MethodInheritance = MethodInheritance, out Static extends boolean = boolean> {
|
|
22
|
+
readonly __type: 'fn';
|
|
23
|
+
readonly __brand: unique symbol;
|
|
24
|
+
readonly config: {
|
|
25
|
+
readonly params: Params;
|
|
26
|
+
readonly returns: Returns;
|
|
27
|
+
readonly inheritance: Inheritance;
|
|
28
|
+
readonly output?: OutputMode;
|
|
29
|
+
readonly static: Static;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export type { FnConfig };
|
|
33
|
+
//# sourceMappingURL=def.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"def.d.ts","sourceRoot":"","sources":["../../../src/grammar/function/def.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,KAAK,CACpB,GAAG,CAAC,MAAM,SAAS,UAAU,GAAG,UAAU,EAC1C,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,EACzC,GAAG,CAAC,WAAW,SAAS,iBAAiB,GAAG,iBAAiB,EAC7D,GAAG,CAAC,MAAM,SAAS,OAAO,GAAG,OAAO;IAEpC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAA;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,MAAM,CAAA;IAC/B,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;QACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;QACzB,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;QACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,CAAA;QAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KACxB,CAAA;CACF;AAED,YAAY,EAAE,QAAQ,EAAE,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/grammar/function/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACvD,YAAY,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AACrC,YAAY,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AACzD,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inheritance.d.ts","sourceRoot":"","sources":["../../../src/grammar/function/inheritance.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/grammar/function/output.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/grammar/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Unique symbol brand for bitmask types */
|
|
2
|
+
export declare const BITMASK_TAG: unique symbol;
|
|
3
|
+
/** Branded type for permissions bitfield (resolves to number) */
|
|
4
|
+
export interface BitmaskDef {
|
|
5
|
+
readonly [BITMASK_TAG]: true;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=bitmask.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bitmask.d.ts","sourceRoot":"","sources":["../../../src/grammar/values/bitmask.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,MAAM,CAAC,OAAO,CAAC,MAAM,WAAW,EAAE,OAAO,MAAM,CAAA;AAE/C,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;CAC7B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
/** Unique symbol brand for data access schemas */
|
|
3
|
+
export declare const DATA_TAG: unique symbol;
|
|
4
|
+
/** Marker for the owning node's datastore content */
|
|
5
|
+
export interface DataSelfSchema extends z.ZodType<unknown> {
|
|
6
|
+
readonly [DATA_TAG]: {
|
|
7
|
+
readonly kind: 'self';
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
/** Marker for another node's datastore content */
|
|
11
|
+
export interface DataGrantSchema<D = unknown> extends z.ZodType<unknown> {
|
|
12
|
+
readonly [DATA_TAG]: {
|
|
13
|
+
readonly kind: 'grant';
|
|
14
|
+
readonly target: D;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/** Type-level check: is this a DataSelfSchema? */
|
|
18
|
+
export type IsDataSelf<T> = T extends {
|
|
19
|
+
readonly [DATA_TAG]: {
|
|
20
|
+
readonly kind: 'self';
|
|
21
|
+
};
|
|
22
|
+
} ? true : false;
|
|
23
|
+
/** Type-level check: extract grant target */
|
|
24
|
+
export type DataGrantTarget<T> = T extends {
|
|
25
|
+
readonly [DATA_TAG]: {
|
|
26
|
+
readonly kind: 'grant';
|
|
27
|
+
readonly target: infer D;
|
|
28
|
+
};
|
|
29
|
+
} ? D : never;
|
|
30
|
+
//# sourceMappingURL=data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../../src/grammar/values/data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,kDAAkD;AAClD,MAAM,CAAC,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAA;AAE5C,qDAAqD;AACrD,MAAM,WAAW,cAAe,SAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxD,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAC/C;AAED,kDAAkD;AAClD,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACtE,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;KAAE,CAAA;CACpE;AAED,kDAAkD;AAClD,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACpF,IAAI,GACJ,KAAK,CAAA;AAET,6CAA6C;AAC7C,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS;IACzC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;CAC1E,GACG,CAAC,GACD,KAAK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type { RefSchema, RefTarget, IsRef } from './ref.js';
|
|
2
|
+
export { REF_TAG } from './ref.js';
|
|
3
|
+
export type { DataSelfSchema, DataGrantSchema, IsDataSelf, DataGrantTarget } from './data.js';
|
|
4
|
+
export { DATA_TAG } from './data.js';
|
|
5
|
+
export type { BitmaskDef } from './bitmask.js';
|
|
6
|
+
export { BITMASK_TAG } from './bitmask.js';
|
|
7
|
+
export type { SelfDef } from './self.js';
|
|
8
|
+
export { SELF, SELF_TAG } from './self.js';
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/grammar/values/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAElC,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC7F,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAE1C,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { z } from 'zod';
|
|
2
|
+
/** Unique symbol brand for ref schemas */
|
|
3
|
+
export declare const REF_TAG: unique symbol;
|
|
4
|
+
/**
|
|
5
|
+
* Branded Zod schema wrapping a graph definition reference.
|
|
6
|
+
* At the type level, _output resolves to the full props of the target definition + id.
|
|
7
|
+
*/
|
|
8
|
+
export interface RefSchema<D = unknown, IncludeData extends boolean = false> extends z.ZodType<{
|
|
9
|
+
readonly id: string;
|
|
10
|
+
}> {
|
|
11
|
+
readonly [REF_TAG]: {
|
|
12
|
+
readonly target: D;
|
|
13
|
+
readonly includeData: IncludeData;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/** Type-level extractor: get the ref target from a RefSchema */
|
|
17
|
+
export type RefTarget<R> = R extends {
|
|
18
|
+
readonly [REF_TAG]: {
|
|
19
|
+
readonly target: infer D;
|
|
20
|
+
};
|
|
21
|
+
} ? D : never;
|
|
22
|
+
/** Type-level check: is this a RefSchema? */
|
|
23
|
+
export type IsRef<T> = T extends {
|
|
24
|
+
readonly [REF_TAG]: any;
|
|
25
|
+
} ? true : false;
|
|
26
|
+
//# sourceMappingURL=ref.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ref.d.ts","sourceRoot":"","sources":["../../../src/grammar/values/ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAE5B,0CAA0C;AAC1C,MAAM,CAAC,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAA;AAE3C;;;GAGG;AACH,MAAM,WAAW,SAAS,CAAC,CAAC,GAAG,OAAO,EAAE,WAAW,SAAS,OAAO,GAAG,KAAK,CAAE,SAAQ,CAAC,CAAC,OAAO,CAAC;IAC7F,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,CAAC;IACA,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;KAAE,CAAA;CAC9E;AAED,gEAAgE;AAChE,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;CAAE,GACrF,CAAC,GACD,KAAK,CAAA;AAET,6CAA6C;AAC7C,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,CAAA;CAAE,GAAG,IAAI,GAAG,KAAK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** Unique symbol brand for SELF token */
|
|
2
|
+
export declare const SELF_TAG: unique symbol;
|
|
3
|
+
/** Branded type for self-referencing definitions */
|
|
4
|
+
export interface SelfDef {
|
|
5
|
+
readonly [SELF_TAG]: true;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Self-reference token. Use `ref(SELF)` inside a definition's methods
|
|
9
|
+
* to reference the definition itself without creating a circular type dependency.
|
|
10
|
+
*/
|
|
11
|
+
export declare const SELF: SelfDef;
|
|
12
|
+
//# sourceMappingURL=self.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self.d.ts","sourceRoot":"","sources":["../../../src/grammar/values/self.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,MAAM,CAAC,OAAO,CAAC,MAAM,QAAQ,EAAE,OAAO,MAAM,CAAA;AAE5C,oDAAoD;AACpD,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAA;CAC1B;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,EAAE,OAA0E,CAAA"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
export { nodeInterface } from './builders/definition/node-interface.js';
|
|
2
|
+
export { nodeClass } from './builders/definition/node-class.js';
|
|
3
|
+
export { edgeInterface } from './builders/definition/edge-interface.js';
|
|
4
|
+
export { edgeClass } from './builders/definition/edge-class.js';
|
|
5
|
+
export { fn } from './builders/function.js';
|
|
6
|
+
export { ref } from './builders/ref.js';
|
|
7
|
+
export { data } from './builders/data.js';
|
|
8
|
+
export { prop } from './builders/prop.js';
|
|
9
|
+
export { bitmask } from './builders/bitmask.js';
|
|
10
|
+
export { SELF } from './grammar/values/self.js';
|
|
11
|
+
export { defineSchema } from './schema/define.js';
|
|
12
|
+
export type { Schema } from './schema/schema.js';
|
|
13
|
+
export { SchemaValidationError } from './schema/error.js';
|
|
14
|
+
export type { DefRef, MethodRef, DefDescriptor, KindSegment } from './schema/refs.js';
|
|
15
|
+
export { buildDescriptorMap, buildDefDescriptorMap, defRef, parseDefRef } from './schema/refs.js';
|
|
16
|
+
export { defineCore } from './instance/core/define.js';
|
|
17
|
+
export { defineSeed } from './instance/seed/define.js';
|
|
18
|
+
export { CORE_ANCHOR_SLUG, buildCorePath, isCorePath } from './instance/core/path.js';
|
|
19
|
+
export type { CorePath } from './instance/core/path.js';
|
|
20
|
+
export { node } from './instance/core/node.js';
|
|
21
|
+
export { edge } from './instance/core/edge.js';
|
|
22
|
+
export type { EdgeEndpoint } from './instance/core/edge.js';
|
|
23
|
+
export { selfOf, isSelfMarker } from './instance/core/self.js';
|
|
24
|
+
export type { SelfMarker } from './instance/core/self.js';
|
|
25
|
+
export { serialize } from './serializer/serialize.js';
|
|
26
|
+
export type { DefConfigBase } from './grammar/definition/base.js';
|
|
27
|
+
export type { NodeInterfaceDef, NodeInterfaceConfig } from './grammar/definition/node-interface.js';
|
|
28
|
+
export type { NodeClassDef, NodeClassConfig } from './grammar/definition/node-class.js';
|
|
29
|
+
export type { EdgeInterfaceDef, EdgeInterfaceConfig } from './grammar/definition/edge-interface.js';
|
|
30
|
+
export type { EdgeClassDef, EdgeClassConfig } from './grammar/definition/edge-class.js';
|
|
31
|
+
export type { AnyDef, AnyNodeDef, AnyEdgeDef, AnyInterfaceDef, AnyClassDef, } from './grammar/definition/discriminants.js';
|
|
32
|
+
export type { FnDef } from './grammar/function/def.js';
|
|
33
|
+
export type { FnConfig, ParamShape } from './grammar/function/config.js';
|
|
34
|
+
export type { PropertyShape, PropertyDef, Property, NormalizedProperty, } from './grammar/facets/properties.js';
|
|
35
|
+
export { normalizeProperty, isPropertyDef } from './grammar/facets/properties.js';
|
|
36
|
+
export type { ContentShape } from './grammar/facets/content.js';
|
|
37
|
+
export type { EndpointConfig, Cardinality } from './grammar/facets/endpoints.js';
|
|
38
|
+
export type { DefConstraints } from './grammar/facets/constraints.js';
|
|
39
|
+
export type { IndexDef, IndexType } from './grammar/facets/indexes.js';
|
|
40
|
+
export type { RefSchema } from './grammar/values/ref.js';
|
|
41
|
+
export type { DataSelfSchema, DataGrantSchema } from './grammar/values/data.js';
|
|
42
|
+
export type { SelfDef } from './grammar/values/self.js';
|
|
43
|
+
export type { BitmaskDef } from './grammar/values/bitmask.js';
|
|
44
|
+
export type { MethodInheritance } from './grammar/function/inheritance.js';
|
|
45
|
+
export type { OutputMode } from './grammar/function/output.js';
|
|
46
|
+
export type { ExtractProperties, InferProperties, ExtractFullProperties, ExtractInherits, ExtractContent, ExtractFullContent, HasContent, ExtractMethods, AllMethods, HasMethods, ExtractMethodNames, ExtractMethodParams, ExtractMethodReturns, ExtractMethodReturnValue, MethodSelf, AllSealedKeys, InheritedAbstractKeys, InheritedDefaultKeys, ImplementableOwnKeys, HasImplementableMethods, ExtractNodeInput, FilterByKind, SchemaNodeInterfaces, SchemaNodeClasses, SchemaEdgeInterfaces, SchemaEdgeClasses, SchemaFnRefs, } from './inference/index.js';
|
|
47
|
+
export { resolveAllMethods, resolveAllProperties } from './schema/resolve/index.js';
|
|
48
|
+
export { classifyDefs } from './schema/classify.js';
|
|
49
|
+
export { isNodeInterface, isNodeClass, isEdgeInterface, isEdgeClass, isAbstract, isConcrete, isEdge, isNode, } from './grammar/definition/discriminants.js';
|
|
50
|
+
export type { CoreNode, CoreEdge, PathTree, Core, CoreNodeEntry, CoreEdgeEntry, } from './instance/core/types.js';
|
|
51
|
+
export type { SeedDef } from './instance/seed/types.js';
|
|
52
|
+
export type { SchemaIR, ClassDecl, NodeDecl, EdgeDecl, FunctionDecl, JsonSchema, PropertyDecl, Endpoint, EdgeConstraints, } from './ir/index.js';
|
|
53
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// ── Builders (the authoring API) ───────────────────────────────────
|
|
2
|
+
export { nodeInterface } from './builders/definition/node-interface.js';
|
|
3
|
+
export { nodeClass } from './builders/definition/node-class.js';
|
|
4
|
+
export { edgeInterface } from './builders/definition/edge-interface.js';
|
|
5
|
+
export { edgeClass } from './builders/definition/edge-class.js';
|
|
6
|
+
export { fn } from './builders/function.js';
|
|
7
|
+
export { ref } from './builders/ref.js';
|
|
8
|
+
export { data } from './builders/data.js';
|
|
9
|
+
export { prop } from './builders/prop.js';
|
|
10
|
+
export { bitmask } from './builders/bitmask.js';
|
|
11
|
+
export { SELF } from './grammar/values/self.js';
|
|
12
|
+
// ── Schema (the compiler) ──────────────────────────────────────────
|
|
13
|
+
export { defineSchema } from './schema/define.js';
|
|
14
|
+
export { SchemaValidationError } from './schema/error.js';
|
|
15
|
+
export { buildDescriptorMap, buildDefDescriptorMap, defRef, parseDefRef } from './schema/refs.js';
|
|
16
|
+
// ── Instance (core & seed) ─────────────────────────────────────────
|
|
17
|
+
export { defineCore } from './instance/core/define.js';
|
|
18
|
+
export { defineSeed } from './instance/seed/define.js';
|
|
19
|
+
export { CORE_ANCHOR_SLUG, buildCorePath, isCorePath } from './instance/core/path.js';
|
|
20
|
+
export { node } from './instance/core/node.js';
|
|
21
|
+
export { edge } from './instance/core/edge.js';
|
|
22
|
+
export { selfOf, isSelfMarker } from './instance/core/self.js';
|
|
23
|
+
// ── Serializer ─────────────────────────────────────────────────────
|
|
24
|
+
export { serialize } from './serializer/serialize.js';
|
|
25
|
+
export { normalizeProperty, isPropertyDef } from './grammar/facets/properties.js';
|
|
26
|
+
// ── Helpers (runtime introspection) ────────────────────────────────
|
|
27
|
+
export { resolveAllMethods, resolveAllProperties } from './schema/resolve/index.js';
|
|
28
|
+
export { classifyDefs } from './schema/classify.js';
|
|
29
|
+
export { isNodeInterface, isNodeClass, isEdgeInterface, isEdgeClass, isAbstract, isConcrete, isEdge, isNode, } from './grammar/definition/discriminants.js';
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { AnyDef } from '../grammar/definition/discriminants.js';
|
|
2
|
+
import type { ExtractInherits, InferProperties } from './properties.js';
|
|
3
|
+
/** Extract own content from a def's config */
|
|
4
|
+
export type ExtractContent<D> = D extends {
|
|
5
|
+
config: {
|
|
6
|
+
content: infer C;
|
|
7
|
+
};
|
|
8
|
+
} ? C : {};
|
|
9
|
+
/**
|
|
10
|
+
* Collect inferred content from all ancestors via a tail-recursive worklist.
|
|
11
|
+
*
|
|
12
|
+
* Visits one def per frame; `inherits` are prepended so the DAG is flattened
|
|
13
|
+
* without branching recursion. Eligible for TS tuple tail-call optimization.
|
|
14
|
+
*/
|
|
15
|
+
type CollectAncestorContent<T, Acc = unknown> = T extends readonly [
|
|
16
|
+
infer Head extends AnyDef,
|
|
17
|
+
...infer Tail extends readonly AnyDef[]
|
|
18
|
+
] ? CollectAncestorContent<[
|
|
19
|
+
...ExtractInherits<Head>,
|
|
20
|
+
...Tail
|
|
21
|
+
], Acc & InferProperties<ExtractContent<Head>>> : Acc;
|
|
22
|
+
/** Full inferred content: own shadow inherited (own keys take precedence) */
|
|
23
|
+
export type ExtractFullContent<D> = D extends AnyDef ? Omit<CollectAncestorContent<ExtractInherits<D>>, keyof InferProperties<ExtractContent<D>>> & InferProperties<ExtractContent<D>> : unknown;
|
|
24
|
+
/** Check if a def has any content (own or inherited) */
|
|
25
|
+
export type HasContent<D> = keyof ExtractFullContent<D> extends never ? false : true;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.d.ts","sourceRoot":"","sources":["../../src/inference/content.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wCAAwC,CAAA;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEvE,8CAA8C;AAE9C,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;CAAE,GAAG,CAAC,GAAG,EAAE,CAAA;AAEnF;;;;;GAKG;AACH,KAAK,sBAAsB,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,IAAI,CAAC,SAAS,SAAS;IACjE,MAAM,IAAI,SAAS,MAAM;IACzB,GAAG,MAAM,IAAI,SAAS,SAAS,MAAM,EAAE;CACxC,GACG,sBAAsB,CACpB;IAAC,GAAG,eAAe,CAAC,IAAI,CAAC;IAAE,GAAG,IAAI;CAAC,EACnC,GAAG,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAC5C,GACD,GAAG,CAAA;AAEP,6EAA6E;AAC7E,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAChD,IAAI,CAAC,sBAAsB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GACxF,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACpC,OAAO,CAAA;AAEX,wDAAwD;AACxD,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,MAAM,kBAAkB,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,IAAI,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type { ExtractProperties, InferProperties, ExtractFullProperties, ExtractInherits, } from './properties.js';
|
|
2
|
+
export type { ExtractContent, ExtractFullContent, HasContent } from './content.js';
|
|
3
|
+
export type { ExtractMethods, AllMethods, HasMethods, ExtractMethodNames, ExtractMethodParams, ExtractMethodReturns, ExtractMethodReturnValue, MethodSelf, } from './methods.js';
|
|
4
|
+
export type { AllSealedKeys, InheritedAbstractKeys, InheritedDefaultKeys, ImplementableOwnKeys, HasImplementableMethods, } from './inheritance.js';
|
|
5
|
+
export type { ExtractNodeInput } from './input.js';
|
|
6
|
+
export type { FilterByKind, SchemaNodeInterfaces, SchemaNodeClasses, SchemaEdgeInterfaces, SchemaEdgeClasses, SchemaFnRefs, } from './schema.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/inference/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,eAAe,GAChB,MAAM,iBAAiB,CAAA;AAExB,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAElF,YAAY,EACV,cAAc,EACd,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,UAAU,GACX,MAAM,cAAc,CAAA;AAErB,YAAY,EACV,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,kBAAkB,CAAA;AAEzB,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAElD,YAAY,EACV,YAAY,EACZ,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { AnyDef } from '../grammar/definition/discriminants.js';
|
|
2
|
+
import type { FnDef } from '../grammar/function/def.js';
|
|
3
|
+
import type { ExtractMethods } from './methods.js';
|
|
4
|
+
import type { ExtractInherits } from './properties.js';
|
|
5
|
+
/** Extract own sealed method keys from a def */
|
|
6
|
+
type SealedOwnKeys<D> = {
|
|
7
|
+
[M in keyof ExtractMethods<D> & string]: ExtractMethods<D>[M] extends FnDef<infer _P, infer _R, infer I, infer _S> ? I extends 'sealed' ? M : never : never;
|
|
8
|
+
}[keyof ExtractMethods<D> & string];
|
|
9
|
+
/**
|
|
10
|
+
* Collect sealed method keys via a tail-recursive worklist.
|
|
11
|
+
*
|
|
12
|
+
* Single recursive call per frame — `inherits` of the head get prepended to
|
|
13
|
+
* the worklist so the DAG is flattened. Union accumulates in `Acc`.
|
|
14
|
+
*/
|
|
15
|
+
type SealedKeysFromInherits<T, Acc = never> = T extends readonly [
|
|
16
|
+
infer Head extends AnyDef,
|
|
17
|
+
...infer Tail extends readonly AnyDef[]
|
|
18
|
+
] ? SealedKeysFromInherits<[...ExtractInherits<Head>, ...Tail], Acc | SealedOwnKeys<Head>> : Acc;
|
|
19
|
+
/** All sealed method keys for a def (own + inherited) */
|
|
20
|
+
export type AllSealedKeys<D> = D extends AnyDef ? SealedOwnKeys<D> | SealedKeysFromInherits<ExtractInherits<D>> : never;
|
|
21
|
+
/** Extract own abstract method keys from a def */
|
|
22
|
+
type AbstractOwnKeys<D> = {
|
|
23
|
+
[M in keyof ExtractMethods<D> & string]: ExtractMethods<D>[M] extends FnDef<infer _P, infer _R, infer I, infer _S> ? I extends 'abstract' ? M : never : never;
|
|
24
|
+
}[keyof ExtractMethods<D> & string];
|
|
25
|
+
/** Tail-recursive worklist over the inherits DAG. Union accumulates in `Acc`. */
|
|
26
|
+
type AbstractKeysFromInherits<T, Acc = never> = T extends readonly [
|
|
27
|
+
infer Head extends AnyDef,
|
|
28
|
+
...infer Tail extends readonly AnyDef[]
|
|
29
|
+
] ? AbstractKeysFromInherits<[...ExtractInherits<Head>, ...Tail], Acc | AbstractOwnKeys<Head>> : Acc;
|
|
30
|
+
/** Abstract method keys inherited that still need implementation (not overridden by own methods) */
|
|
31
|
+
export type InheritedAbstractKeys<D> = D extends AnyDef ? Exclude<AbstractKeysFromInherits<ExtractInherits<D>>, keyof ExtractMethods<D>> : never;
|
|
32
|
+
/** Extract own default (non-abstract, non-sealed) method keys from a def */
|
|
33
|
+
type DefaultOwnKeys<D> = {
|
|
34
|
+
[M in keyof ExtractMethods<D> & string]: ExtractMethods<D>[M] extends FnDef<infer _P, infer _R, infer I, infer _S> ? I extends 'sealed' | 'abstract' ? never : M : never;
|
|
35
|
+
}[keyof ExtractMethods<D> & string];
|
|
36
|
+
/** Tail-recursive worklist over the inherits DAG. Union accumulates in `Acc`. */
|
|
37
|
+
type DefaultKeysFromInherits<T, Acc = never> = T extends readonly [
|
|
38
|
+
infer Head extends AnyDef,
|
|
39
|
+
...infer Tail extends readonly AnyDef[]
|
|
40
|
+
] ? DefaultKeysFromInherits<[...ExtractInherits<Head>, ...Tail], Acc | DefaultOwnKeys<Head>> : Acc;
|
|
41
|
+
/** Default method keys inherited that are NOT overridden by own methods */
|
|
42
|
+
export type InheritedDefaultKeys<D> = D extends AnyDef ? Exclude<DefaultKeysFromInherits<ExtractInherits<D>>, keyof ExtractMethods<D>> : never;
|
|
43
|
+
/** Own method keys that need an implementation (sealed or default, not abstract) */
|
|
44
|
+
export type ImplementableOwnKeys<D> = DefaultOwnKeys<D> | SealedOwnKeys<D>;
|
|
45
|
+
/** Check if a def has non-abstract own methods that need an implementation */
|
|
46
|
+
export type HasImplementableMethods<D> = ImplementableOwnKeys<D> extends never ? false : true;
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=inheritance.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inheritance.d.ts","sourceRoot":"","sources":["../../src/inference/inheritance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|