@soda-gql/core 0.1.0 → 0.3.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.
Files changed (70) hide show
  1. package/README.md +108 -161
  2. package/dist/adapter.cjs +35 -0
  3. package/dist/adapter.cjs.map +1 -0
  4. package/dist/adapter.d.cts +35 -0
  5. package/dist/adapter.d.cts.map +1 -0
  6. package/dist/adapter.d.ts +35 -0
  7. package/dist/adapter.d.ts.map +1 -0
  8. package/dist/adapter.js +34 -0
  9. package/dist/adapter.js.map +1 -0
  10. package/dist/index-DH3lMepk.d.cts +569 -0
  11. package/dist/index-DH3lMepk.d.cts.map +1 -0
  12. package/dist/index-WU6aMZjg.d.ts +569 -0
  13. package/dist/index-WU6aMZjg.d.ts.map +1 -0
  14. package/dist/index.cjs +485 -470
  15. package/dist/index.cjs.map +1 -0
  16. package/dist/index.d.cts +97 -3
  17. package/dist/index.d.cts.map +1 -0
  18. package/dist/index.d.ts +97 -3
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +458 -443
  21. package/dist/index.js.map +1 -1
  22. package/dist/runtime.cjs +85 -0
  23. package/dist/runtime.cjs.map +1 -0
  24. package/dist/runtime.d.cts +40 -0
  25. package/dist/runtime.d.cts.map +1 -0
  26. package/dist/runtime.d.ts +40 -0
  27. package/dist/runtime.d.ts.map +1 -0
  28. package/dist/runtime.js +82 -0
  29. package/dist/runtime.js.map +1 -0
  30. package/dist/schema-BElqa12z.d.cts +520 -0
  31. package/dist/schema-BElqa12z.d.cts.map +1 -0
  32. package/dist/schema-BbCrsNkQ.js +86 -0
  33. package/dist/schema-BbCrsNkQ.js.map +1 -0
  34. package/dist/schema-C7q047S0.d.ts +520 -0
  35. package/dist/schema-C7q047S0.d.ts.map +1 -0
  36. package/dist/schema-DuWaRhdp.cjs +122 -0
  37. package/dist/schema-DuWaRhdp.cjs.map +1 -0
  38. package/dist/schema-builder-DDfulXP3.d.cts +40 -0
  39. package/dist/schema-builder-DDfulXP3.d.cts.map +1 -0
  40. package/dist/schema-builder-DfyTaFMt.d.ts +40 -0
  41. package/dist/schema-builder-DfyTaFMt.d.ts.map +1 -0
  42. package/package.json +34 -14
  43. package/dist/index-DYwkqPzd.d.ts +0 -1015
  44. package/dist/index-DYwkqPzd.d.ts.map +0 -1
  45. package/dist/index-Db9ogofS.d.ts +0 -365
  46. package/dist/index-Db9ogofS.d.ts.map +0 -1
  47. package/dist/index-Dth0NSJt.d.cts +0 -1015
  48. package/dist/index-Dth0NSJt.d.cts.map +0 -1
  49. package/dist/index-zGZ61WLt.d.cts +0 -365
  50. package/dist/index-zGZ61WLt.d.cts.map +0 -1
  51. package/dist/merge-CeMx09is.js +0 -74
  52. package/dist/merge-CeMx09is.js.map +0 -1
  53. package/dist/merge-ZxKV1syS.cjs +0 -85
  54. package/dist/metadata/index.cjs +0 -62
  55. package/dist/metadata/index.d.cts +0 -71
  56. package/dist/metadata/index.d.cts.map +0 -1
  57. package/dist/metadata/index.d.ts +0 -71
  58. package/dist/metadata/index.d.ts.map +0 -1
  59. package/dist/metadata/index.js +0 -59
  60. package/dist/metadata/index.js.map +0 -1
  61. package/dist/runtime/index.cjs +0 -107
  62. package/dist/runtime/index.d.cts +0 -72
  63. package/dist/runtime/index.d.cts.map +0 -1
  64. package/dist/runtime/index.d.ts +0 -72
  65. package/dist/runtime/index.d.ts.map +0 -1
  66. package/dist/runtime/index.js +0 -104
  67. package/dist/runtime/index.js.map +0 -1
  68. package/dist/slice-BuSNc8vw.js +0 -278
  69. package/dist/slice-BuSNc8vw.js.map +0 -1
  70. package/dist/slice-C-FIQK-f.cjs +0 -373
@@ -0,0 +1,82 @@
1
+ //#region packages/core/src/utils/hidden.ts
2
+ const _dummy = () => {
3
+ throw new Error("DO NOT CALL THIS FUNCTION -- we use function to safely transfer type information");
4
+ };
5
+ const hidden = () => _dummy;
6
+
7
+ //#endregion
8
+ //#region packages/core/src/runtime/fragment.ts
9
+ const createRuntimeFragment = (input) => {
10
+ const fragment = {
11
+ typename: input.prebuild.typename,
12
+ embed: hidden(),
13
+ attach(attachment) {
14
+ const value = attachment.createValue(fragment);
15
+ Object.defineProperty(fragment, attachment.name, { get() {
16
+ return value;
17
+ } });
18
+ return fragment;
19
+ }
20
+ };
21
+ return fragment;
22
+ };
23
+
24
+ //#endregion
25
+ //#region packages/core/src/runtime/runtime-registry.ts
26
+ const operationRegistry = /* @__PURE__ */ new Map();
27
+ const registerOperation = (operation) => {
28
+ operationRegistry.set(operation.operationName, operation);
29
+ };
30
+ const getOperation = (name) => {
31
+ const operation = operationRegistry.get(name);
32
+ if (!operation) throw new Error(`Operation ${name} not found`);
33
+ return operation;
34
+ };
35
+ /**
36
+ * Test-only function to reset the operation registry
37
+ * @internal
38
+ */
39
+ const __resetRuntimeRegistry = () => {
40
+ operationRegistry.clear();
41
+ };
42
+ /**
43
+ * Test-only function to get all registered operations
44
+ * @internal
45
+ */
46
+ const __getRegisteredOperations = () => {
47
+ return operationRegistry;
48
+ };
49
+
50
+ //#endregion
51
+ //#region packages/core/src/runtime/operation.ts
52
+ const createRuntimeOperation = (input) => {
53
+ const operation = {
54
+ operationType: input.prebuild.operationType,
55
+ operationName: input.prebuild.operationName,
56
+ variableNames: input.prebuild.variableNames,
57
+ documentSource: hidden(),
58
+ document: input.prebuild.document,
59
+ metadata: input.prebuild.metadata,
60
+ attach(attachment) {
61
+ const value = attachment.createValue(operation);
62
+ Object.defineProperty(operation, attachment.name, { get() {
63
+ return value;
64
+ } });
65
+ return operation;
66
+ }
67
+ };
68
+ registerOperation(operation);
69
+ return operation;
70
+ };
71
+
72
+ //#endregion
73
+ //#region packages/core/src/runtime/index.ts
74
+ const gqlRuntime = {
75
+ fragment: createRuntimeFragment,
76
+ operation: createRuntimeOperation,
77
+ getOperation
78
+ };
79
+
80
+ //#endregion
81
+ export { __getRegisteredOperations, __resetRuntimeRegistry, gqlRuntime };
82
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","names":[],"sources":["../src/utils/hidden.ts","../src/runtime/fragment.ts","../src/runtime/runtime-registry.ts","../src/runtime/operation.ts","../src/runtime/index.ts"],"sourcesContent":["const _dummy = () => {\n throw new Error(\"DO NOT CALL THIS FUNCTION -- we use function to safely transfer type information\");\n};\nexport const hidden = <T>(): (() => T) => _dummy;\nexport type Hidden<T> = () => T;\n","import type { AnyFragment, GqlElementAttachment } from \"../types/element\";\nimport { hidden } from \"../utils/hidden\";\nimport type { StripFunctions, StripSymbols } from \"../utils/type-utils\";\n\nexport type RuntimeFragmentInput = {\n prebuild: StripFunctions<AnyFragment>;\n};\n\nexport const createRuntimeFragment = (input: RuntimeFragmentInput): AnyFragment => {\n const fragment = {\n typename: input.prebuild.typename,\n embed: hidden(),\n attach<TName extends string, TValue extends object>(attachment: GqlElementAttachment<typeof fragment, TName, TValue>) {\n const value = attachment.createValue(fragment);\n\n Object.defineProperty(fragment, attachment.name, {\n get() {\n return value;\n },\n });\n\n return fragment as typeof fragment & { [_ in TName]: TValue };\n },\n } satisfies StripSymbols<AnyFragment> as unknown as AnyFragment;\n\n return fragment;\n};\n","import type { AnyOperationOf } from \"../types/element\";\nimport type { OperationType } from \"../types/schema\";\n\nconst operationRegistry = new Map<string, AnyOperationOf<OperationType>>();\n\nexport const registerOperation = (operation: AnyOperationOf<OperationType>) => {\n operationRegistry.set(operation.operationName, operation);\n};\n\nexport const getOperation = (name: string) => {\n const operation = operationRegistry.get(name);\n if (!operation) {\n throw new Error(`Operation ${name} not found`);\n }\n return operation;\n};\n\n/**\n * Test-only function to reset the operation registry\n * @internal\n */\nexport const __resetRuntimeRegistry = () => {\n operationRegistry.clear();\n};\n\n/**\n * Test-only function to get all registered operations\n * @internal\n */\nexport const __getRegisteredOperations = (): ReadonlyMap<string, AnyOperationOf<OperationType>> => {\n return operationRegistry;\n};\n","import type { AnyOperationOf, GqlElementAttachment } from \"../types/element\";\nimport type { OperationType } from \"../types/schema\";\nimport { hidden } from \"../utils/hidden\";\nimport type { StripFunctions, StripSymbols } from \"../utils/type-utils\";\nimport { registerOperation } from \"./runtime-registry\";\n\nexport type RuntimeOperationInput = {\n prebuild: StripFunctions<AnyOperationOf<OperationType>>;\n /**\n * Reserved for future runtime configuration injection.\n * Currently always an empty object, but kept for forward compatibility\n * with potential features like runtime variable injection or context.\n */\n runtime: {};\n};\n\nexport const createRuntimeOperation = (input: RuntimeOperationInput): AnyOperationOf<OperationType> => {\n const operation = {\n operationType: input.prebuild.operationType,\n operationName: input.prebuild.operationName,\n variableNames: input.prebuild.variableNames,\n documentSource: hidden(),\n document: input.prebuild.document,\n metadata: input.prebuild.metadata,\n attach<TName extends string, TValue extends object>(attachment: GqlElementAttachment<typeof operation, TName, TValue>) {\n const value = attachment.createValue(operation);\n\n Object.defineProperty(operation, attachment.name, {\n get() {\n return value;\n },\n });\n\n return operation as typeof operation & { [_ in TName]: TValue };\n },\n } satisfies StripSymbols<AnyOperationOf<OperationType>> as AnyOperationOf<OperationType>;\n\n registerOperation(operation);\n\n return operation;\n};\n","import { createRuntimeFragment } from \"./fragment\";\nimport { createRuntimeOperation } from \"./operation\";\nimport { getOperation } from \"./runtime-registry\";\n\nexport type { RuntimeFragmentInput } from \"./fragment\";\nexport type { RuntimeOperationInput } from \"./operation\";\nexport { __getRegisteredOperations, __resetRuntimeRegistry } from \"./runtime-registry\";\n\nexport const gqlRuntime = {\n fragment: createRuntimeFragment,\n operation: createRuntimeOperation,\n getOperation,\n};\n"],"mappings":";AAAA,MAAM,eAAe;AACnB,OAAM,IAAI,MAAM,mFAAmF;;AAErG,MAAa,eAA6B;;;;ACK1C,MAAa,yBAAyB,UAA6C;CACjF,MAAM,WAAW;EACf,UAAU,MAAM,SAAS;EACzB,OAAO,QAAQ;EACf,OAAoD,YAAkE;GACpH,MAAM,QAAQ,WAAW,YAAY,SAAS;AAE9C,UAAO,eAAe,UAAU,WAAW,MAAM,EAC/C,MAAM;AACJ,WAAO;MAEV,CAAC;AAEF,UAAO;;EAEV;AAED,QAAO;;;;;ACtBT,MAAM,oCAAoB,IAAI,KAA4C;AAE1E,MAAa,qBAAqB,cAA6C;AAC7E,mBAAkB,IAAI,UAAU,eAAe,UAAU;;AAG3D,MAAa,gBAAgB,SAAiB;CAC5C,MAAM,YAAY,kBAAkB,IAAI,KAAK;AAC7C,KAAI,CAAC,UACH,OAAM,IAAI,MAAM,aAAa,KAAK,YAAY;AAEhD,QAAO;;;;;;AAOT,MAAa,+BAA+B;AAC1C,mBAAkB,OAAO;;;;;;AAO3B,MAAa,kCAAsF;AACjG,QAAO;;;;;ACdT,MAAa,0BAA0B,UAAgE;CACrG,MAAM,YAAY;EAChB,eAAe,MAAM,SAAS;EAC9B,eAAe,MAAM,SAAS;EAC9B,eAAe,MAAM,SAAS;EAC9B,gBAAgB,QAAQ;EACxB,UAAU,MAAM,SAAS;EACzB,UAAU,MAAM,SAAS;EACzB,OAAoD,YAAmE;GACrH,MAAM,QAAQ,WAAW,YAAY,UAAU;AAE/C,UAAO,eAAe,WAAW,WAAW,MAAM,EAChD,MAAM;AACJ,WAAO;MAEV,CAAC;AAEF,UAAO;;EAEV;AAED,mBAAkB,UAAU;AAE5B,QAAO;;;;;AC/BT,MAAa,aAAa;CACxB,UAAU;CACV,WAAW;CACX;CACD"}
@@ -0,0 +1,520 @@
1
+ import { DocumentNode } from "graphql";
2
+
3
+ //#region packages/core/src/composer/field-path-context.d.ts
4
+
5
+ /**
6
+ * Field path context using shared value container pattern.
7
+ *
8
+ * This module tracks the current field path during field building,
9
+ * similar to how React tracks the current fiber.
10
+ * No changes to field builder arguments are needed - use getCurrentFieldPath() to access.
11
+ */
12
+ /**
13
+ * A segment in the field path.
14
+ */
15
+ type FieldPathSegment = {
16
+ /** The field name */
17
+ readonly field: string;
18
+ /** The parent type name */
19
+ readonly parent: string;
20
+ /** Whether this field returns a list */
21
+ readonly isList: boolean;
22
+ };
23
+ /**
24
+ * Complete field path from root to current position.
25
+ */
26
+ type FieldPath = {
27
+ /** Full path string (e.g., "$.user.posts[].author") */
28
+ readonly full: string;
29
+ /** Individual path segments */
30
+ readonly segments: readonly FieldPathSegment[];
31
+ };
32
+ /**
33
+ * Get the current field path.
34
+ * Returns null if not in a field building context.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * import { getCurrentFieldPath } from '@soda-gql/core';
39
+ *
40
+ * // Inside a field builder or model embed:
41
+ * const path = getCurrentFieldPath();
42
+ * console.log(path?.full); // "$.user.posts[].author"
43
+ * ```
44
+ */
45
+ declare const getCurrentFieldPath: () => FieldPath | null;
46
+ /**
47
+ * Run a function with a specific field path context.
48
+ * Restores the previous path after the function completes.
49
+ *
50
+ * @internal
51
+ */
52
+ declare const withFieldPath: <T>(path: FieldPath, fn: () => T) => T;
53
+ /**
54
+ * Append a new segment to the current path.
55
+ *
56
+ * @internal
57
+ */
58
+ declare const appendToPath: (parent: FieldPath | null, segment: {
59
+ field: string;
60
+ parentType: string;
61
+ isList: boolean;
62
+ }) => FieldPath;
63
+ /**
64
+ * Check if a type specifier represents a list type.
65
+ * Matches patterns like "Type:![]!", "Type:![]?", "Type:?[]!", etc.
66
+ *
67
+ * @internal
68
+ */
69
+ declare const isListType: (typeString: string) => boolean;
70
+ //#endregion
71
+ //#region packages/core/src/types/type-foundation/const-value.d.ts
72
+ type ConstValue = string | number | boolean | null | undefined | {
73
+ readonly [key: string]: ConstValue;
74
+ } | readonly ConstValue[];
75
+ type ConstValues = {
76
+ readonly [key: string]: ConstValue;
77
+ };
78
+ //#endregion
79
+ //#region packages/core/src/types/type-foundation/type-modifier-core.generated.d.ts
80
+ type TypeModifier = string;
81
+ type ValidTypeModifier = "!" | "?" | "![]!" | "![]?" | "?[]!" | "?[]?" | "![]![]!" | "![]![]?" | "![]?[]!" | "![]?[]?" | "?[]![]!" | "?[]![]?" | "?[]?[]!" | "?[]?[]?" | "![]![]![]!" | "![]![]![]?" | "![]![]?[]!" | "![]![]?[]?" | "![]?[]![]!" | "![]?[]![]?" | "![]?[]?[]!" | "![]?[]?[]?" | "?[]![]![]!" | "?[]![]![]?" | "?[]![]?[]!" | "?[]![]?[]?" | "?[]?[]![]!" | "?[]?[]![]?" | "?[]?[]?[]!" | "?[]?[]?[]?";
82
+ interface Op<T> {
83
+ readonly 0: T[];
84
+ readonly 1: T[] | null | undefined;
85
+ }
86
+ type Modified_0<T> = T;
87
+ type Modified_1<T> = T | null | undefined;
88
+ type Modified_00<T> = Op<Modified_0<T>>[0];
89
+ type Modified_01<T> = Op<Modified_0<T>>[1];
90
+ type Modified_10<T> = Op<Modified_1<T>>[0];
91
+ type Modified_11<T> = Op<Modified_1<T>>[1];
92
+ type Modified_000<T> = Op<Modified_00<T>>[0];
93
+ type Modified_001<T> = Op<Modified_00<T>>[1];
94
+ type Modified_010<T> = Op<Modified_01<T>>[0];
95
+ type Modified_011<T> = Op<Modified_01<T>>[1];
96
+ type Modified_100<T> = Op<Modified_10<T>>[0];
97
+ type Modified_101<T> = Op<Modified_10<T>>[1];
98
+ type Modified_110<T> = Op<Modified_11<T>>[0];
99
+ type Modified_111<T> = Op<Modified_11<T>>[1];
100
+ type Modified_0000<T> = Op<Modified_000<T>>[0];
101
+ type Modified_0001<T> = Op<Modified_000<T>>[1];
102
+ type Modified_0010<T> = Op<Modified_001<T>>[0];
103
+ type Modified_0011<T> = Op<Modified_001<T>>[1];
104
+ type Modified_0100<T> = Op<Modified_010<T>>[0];
105
+ type Modified_0101<T> = Op<Modified_010<T>>[1];
106
+ type Modified_0110<T> = Op<Modified_011<T>>[0];
107
+ type Modified_0111<T> = Op<Modified_011<T>>[1];
108
+ type Modified_1000<T> = Op<Modified_100<T>>[0];
109
+ type Modified_1001<T> = Op<Modified_100<T>>[1];
110
+ type Modified_1010<T> = Op<Modified_101<T>>[0];
111
+ type Modified_1011<T> = Op<Modified_101<T>>[1];
112
+ type Modified_1100<T> = Op<Modified_110<T>>[0];
113
+ type Modified_1101<T> = Op<Modified_110<T>>[1];
114
+ type Modified_1110<T> = Op<Modified_111<T>>[0];
115
+ type Modified_1111<T> = Op<Modified_111<T>>[1];
116
+ type ApplyTypeModifier<T, M extends TypeModifier> = M extends "!" ? Modified_0<T> : M extends "?" ? Modified_1<T> : M extends "![]!" ? Modified_00<T> : M extends "![]?" ? Modified_01<T> : M extends "?[]!" ? Modified_10<T> : M extends "?[]?" ? Modified_11<T> : M extends "![]![]!" ? Modified_000<T> : M extends "![]![]?" ? Modified_001<T> : M extends "![]?[]!" ? Modified_010<T> : M extends "![]?[]?" ? Modified_011<T> : M extends "?[]![]!" ? Modified_100<T> : M extends "?[]![]?" ? Modified_101<T> : M extends "?[]?[]!" ? Modified_110<T> : M extends "?[]?[]?" ? Modified_111<T> : M extends "![]![]![]!" ? Modified_0000<T> : M extends "![]![]![]?" ? Modified_0001<T> : M extends "![]![]?[]!" ? Modified_0010<T> : M extends "![]![]?[]?" ? Modified_0011<T> : M extends "![]?[]![]!" ? Modified_0100<T> : M extends "![]?[]![]?" ? Modified_0101<T> : M extends "![]?[]?[]!" ? Modified_0110<T> : M extends "![]?[]?[]?" ? Modified_0111<T> : M extends "?[]![]![]!" ? Modified_1000<T> : M extends "?[]![]![]?" ? Modified_1001<T> : M extends "?[]![]?[]!" ? Modified_1010<T> : M extends "?[]![]?[]?" ? Modified_1011<T> : M extends "?[]?[]![]!" ? Modified_1100<T> : M extends "?[]?[]![]?" ? Modified_1101<T> : M extends "?[]?[]?[]!" ? Modified_1110<T> : M extends "?[]?[]?[]?" ? Modified_1111<T> : never;
117
+ //#endregion
118
+ //#region packages/core/src/types/type-foundation/type-profile.d.ts
119
+ interface PrimitiveTypeProfile {
120
+ readonly kind: "scalar" | "enum";
121
+ readonly name: string;
122
+ readonly value: any;
123
+ }
124
+ type TypeProfile = [PrimitiveTypeProfile] | {
125
+ readonly [key: string]: TypeProfile.WithMeta;
126
+ };
127
+ declare namespace TypeProfile {
128
+ type WITH_DEFAULT_INPUT = "with_default_input";
129
+ type WithMeta = [TypeProfile, TypeModifier, WITH_DEFAULT_INPUT?];
130
+ type IsOptionalProfile<TField extends WithMeta> = TField[1] extends `${string}?` ? true : TField[2] extends WITH_DEFAULT_INPUT ? true : false;
131
+ type OptionalProfileKeys<TProfileObject extends {
132
+ readonly [key: string]: WithMeta;
133
+ }> = { [K in keyof TProfileObject]: IsOptionalProfile<TProfileObject[K]> extends true ? K : never }[keyof TProfileObject];
134
+ type RequiredProfileKeys<TProfileObject extends {
135
+ readonly [key: string]: WithMeta;
136
+ }> = { [K in keyof TProfileObject]: IsOptionalProfile<TProfileObject[K]> extends false ? K : never }[keyof TProfileObject];
137
+ type Simplify<T> = { [K in keyof T]: T[K] } & {};
138
+ type ObjectTypeProfile<TProfileObject extends {
139
+ readonly [key: string]: WithMeta;
140
+ }> = Simplify<{ readonly [K in OptionalProfileKeys<TProfileObject>]+?: TProfileObject[K] extends WithMeta ? Type<TProfileObject[K]> : never } & { readonly [K in RequiredProfileKeys<TProfileObject>]-?: TProfileObject[K] extends WithMeta ? Type<TProfileObject[K]> : never }>;
141
+ type AssignableObjectTypeProfile<TProfileObject extends {
142
+ readonly [key: string]: WithMeta;
143
+ }> = Simplify<{ readonly [K in OptionalProfileKeys<TProfileObject>]+?: TProfileObject[K] extends WithMeta ? AssignableType<TProfileObject[K]> : never } & { readonly [K in RequiredProfileKeys<TProfileObject>]-?: TProfileObject[K] extends WithMeta ? AssignableType<TProfileObject[K]> : never }>;
144
+ type Type<TProfile extends TypeProfile.WithMeta> = (TProfile[0] extends [PrimitiveTypeProfile] ? ApplyTypeModifier<TProfile[0][0]["value"], TProfile[1]> : TProfile[0] extends {
145
+ readonly [key: string]: WithMeta;
146
+ } ? ObjectTypeProfile<TProfile[0]> : never) | (TProfile[2] extends WITH_DEFAULT_INPUT ? undefined : never);
147
+ type AssignableSignature<TProfile extends TypeProfile.WithMeta> = ApplyTypeModifier<"[TYPE_SIGNATURE]", TProfile[1]> | (TProfile[2] extends WITH_DEFAULT_INPUT ? undefined : never);
148
+ type Signature<TProfile extends TypeProfile.WithMeta> = ApplyTypeModifier<"[TYPE_SIGNATURE]", TProfile[1]> extends infer T ? TProfile[2] extends WITH_DEFAULT_INPUT ? Exclude<T, undefined> : T : never;
149
+ type AssignableVarRefMeta<TProfile extends TypeProfile.WithMeta> = {
150
+ profile: TProfile[0];
151
+ signature: AssignableSignature<TProfile>;
152
+ };
153
+ type AssigningVarRefMeta<TProfile extends TypeProfile.WithMeta> = {
154
+ profile: TProfile[0];
155
+ signature: Signature<TProfile>;
156
+ };
157
+ type AssignableType<TProfile extends TypeProfile.WithMeta> = ApplyTypeModifier<TProfile[0] extends [PrimitiveTypeProfile] ? TProfile[0][0]["value"] : TProfile[0] extends {
158
+ readonly [key: string]: WithMeta;
159
+ } ? AssignableObjectTypeProfile<TProfile[0]> : never, TProfile[1]> | VarRef<AssignableVarRefMeta<TProfile>>;
160
+ type AssigningType<TProfile extends TypeProfile.WithMeta> = VarRef<AssigningVarRefMeta<TProfile>>;
161
+ }
162
+ type GetModifiedType<TProfile extends TypeProfile, TModifier extends TypeModifier> = TypeProfile.Type<[TProfile, TModifier]>;
163
+ type GetConstAssignableType<TProfile extends TypeProfile.WithMeta> = TypeProfile.Type<TProfile>;
164
+ type GetAssigningType<TProfile extends TypeProfile.WithMeta> = TypeProfile.AssigningType<TProfile>;
165
+ //#endregion
166
+ //#region packages/core/src/types/type-foundation/var-ref.d.ts
167
+ interface AnyVarRefMeta {
168
+ readonly profile: TypeProfile;
169
+ readonly signature: unknown;
170
+ }
171
+ type VarRefInner = {
172
+ type: "variable";
173
+ name: string;
174
+ } | {
175
+ type: "const-value";
176
+ value: ConstValue;
177
+ };
178
+ type AnyVarRef = VarRef<any>;
179
+ declare const __VAR_REF_BRAND__: unique symbol;
180
+ declare class VarRef<TMeta extends AnyVarRefMeta> {
181
+ private readonly inner;
182
+ readonly [__VAR_REF_BRAND__]: TMeta;
183
+ constructor(inner: VarRefInner);
184
+ static getInner(varRef: AnyVarRef): VarRefInner;
185
+ }
186
+ declare const isVarRef: (value: unknown) => value is AnyVarRef;
187
+ declare const createVarRefFromVariable: <TProfile extends TypeProfile.WithMeta>(name: string) => VarRef<TypeProfile.AssigningVarRefMeta<TProfile>>;
188
+ declare const createVarRefFromConstValue: <TProfile extends TypeProfile.WithMeta>(value: ConstValue) => VarRef<TypeProfile.AssigningVarRefMeta<TProfile>>;
189
+ declare const getVarRefInner: (varRef: AnyVarRef) => VarRefInner;
190
+ /**
191
+ * Get the variable name from a VarRef.
192
+ * Throws if the VarRef contains a const-value instead of a variable reference.
193
+ */
194
+ declare const getVarRefName: (varRef: AnyVarRef) => string;
195
+ /**
196
+ * Get the const value from a VarRef.
197
+ * Throws if the VarRef contains a variable reference instead of a const-value.
198
+ */
199
+ declare const getVarRefValue: (varRef: AnyVarRef) => ConstValue;
200
+ //#endregion
201
+ //#region packages/core/src/types/metadata/metadata.d.ts
202
+ /**
203
+ * Base metadata types that can be attached to operations.
204
+ * These are consumed at runtime by GraphQL clients for HTTP headers
205
+ * and custom application-specific values.
206
+ */
207
+ type OperationMetadata = {
208
+ /** HTTP headers to include with the GraphQL request */
209
+ readonly headers?: Record<string, string>;
210
+ /** Custom arbitrary metadata values for application-specific use */
211
+ readonly custom?: Record<string, unknown>;
212
+ };
213
+ /**
214
+ * Tools available inside metadata builder callbacks.
215
+ * Access utilities via $var.getName(), $var.getValue(), $var.getInner().
216
+ *
217
+ * @template TVarRefs - Variable references from the operation
218
+ * @template TAggregatedFragmentMetadata - The aggregated fragment metadata type from the adapter
219
+ * @template TSchemaLevel - The schema-level configuration type from the adapter
220
+ */
221
+ type MetadataBuilderTools<TVarRefs extends Record<string, AnyVarRef>, TAggregatedFragmentMetadata = readonly (OperationMetadata | undefined)[], TSchemaLevel$1 = unknown> = {
222
+ /** Variable references created from the operation's variable definitions */
223
+ readonly $: TVarRefs;
224
+ /** The GraphQL DocumentNode (AST) for this operation */
225
+ readonly document: DocumentNode;
226
+ /** Aggregated metadata from embedded fragments, evaluated before operation metadata */
227
+ readonly fragmentMetadata?: TAggregatedFragmentMetadata;
228
+ /** Schema-level fixed values from the adapter */
229
+ readonly schemaLevel?: TSchemaLevel$1;
230
+ };
231
+ /**
232
+ * Metadata builder callback that receives variable tools.
233
+ * Allows metadata to reference operation variables.
234
+ *
235
+ * @template TVarRefs - Variable references from the operation
236
+ * @template TMetadata - The metadata type returned by this builder
237
+ * @template TAggregatedFragmentMetadata - The aggregated fragment metadata type from the adapter
238
+ * @template TSchemaLevel - The schema-level configuration type from the adapter
239
+ */
240
+ type MetadataBuilder<TVarRefs extends Record<string, AnyVarRef>, TMetadata, TAggregatedFragmentMetadata = readonly (OperationMetadata | undefined)[], TSchemaLevel$1 = unknown> = (tools: MetadataBuilderTools<TVarRefs, TAggregatedFragmentMetadata, TSchemaLevel$1>) => TMetadata | Promise<TMetadata>;
241
+ /**
242
+ * Utility type to extract the metadata type from an operation.
243
+ */
244
+ type ExtractMetadata<T> = T extends {
245
+ metadata: infer M;
246
+ } ? M : OperationMetadata;
247
+ /**
248
+ * Tools available inside fragment metadata builder callbacks.
249
+ * Unlike operation metadata, fragments don't have their own document.
250
+ */
251
+ type FragmentMetadataBuilderTools<TVarRefs extends Record<string, AnyVarRef>> = {
252
+ /** Variable references created from the fragment's variable definitions */
253
+ readonly $: TVarRefs;
254
+ };
255
+ /**
256
+ * Metadata builder callback for fragments.
257
+ * Allows metadata to reference fragment variables.
258
+ * Supports both sync and async metadata generation.
259
+ */
260
+ type FragmentMetadataBuilder<TVarRefs extends Record<string, AnyVarRef>, TMetadata = OperationMetadata> = (tools: FragmentMetadataBuilderTools<TVarRefs>) => TMetadata | Promise<TMetadata>;
261
+ //#endregion
262
+ //#region packages/core/src/types/metadata/adapter.d.ts
263
+ /**
264
+ * Information about a fragment's metadata when embedded in an operation.
265
+ */
266
+ type FragmentMetaInfo<TFragmentMetadata> = {
267
+ /** The evaluated metadata from the fragment, if defined */
268
+ readonly metadata: TFragmentMetadata | undefined;
269
+ /** Field path where the fragment was embedded */
270
+ readonly fieldPath: FieldPath | null;
271
+ };
272
+ /**
273
+ * Metadata adapter that defines how fragment metadata is aggregated
274
+ * and provides schema-level configuration.
275
+ *
276
+ * This adapter allows complete customization of:
277
+ * - Fragment metadata type (TFragmentMetadata)
278
+ * - How fragment metadata is aggregated (aggregateFragmentMetadata)
279
+ * - Schema-level fixed values available to all operation metadata builders (schemaLevel)
280
+ *
281
+ * Note: Operation metadata type is inferred from the operation's metadata callback return type.
282
+ *
283
+ * @template TFragmentMetadata - The metadata type returned by fragment metadata builders
284
+ * @template TAggregatedFragmentMetadata - The type returned by aggregateFragmentMetadata
285
+ * @template TSchemaLevel - The type of schema-level configuration values
286
+ */
287
+ type MetadataAdapter<TFragmentMetadata = unknown, TAggregatedFragmentMetadata = unknown, TSchemaLevel$1 = unknown> = {
288
+ /**
289
+ * Aggregates metadata from all embedded fragments in an operation.
290
+ * Called with the metadata from each embedded fragment.
291
+ * The return type becomes the `fragmentMetadata` parameter in operation metadata builders.
292
+ */
293
+ readonly aggregateFragmentMetadata: (fragments: readonly FragmentMetaInfo<TFragmentMetadata>[]) => TAggregatedFragmentMetadata;
294
+ /**
295
+ * Schema-level fixed values that are passed to all operation metadata builders.
296
+ * Useful for configuration that should be consistent across all operations.
297
+ */
298
+ readonly schemaLevel?: TSchemaLevel$1;
299
+ };
300
+ /**
301
+ * Extracts the type parameters from a MetadataAdapter.
302
+ */
303
+ type ExtractAdapterTypes<T> = T extends MetadataAdapter<infer TFragment, infer TAggregated, infer TSchemaLevel> ? {
304
+ fragmentMetadata: TFragment;
305
+ aggregatedFragmentMetadata: TAggregated;
306
+ schemaLevel: TSchemaLevel;
307
+ } : never;
308
+ /**
309
+ * Generic type for any metadata adapter.
310
+ */
311
+ type AnyMetadataAdapter = MetadataAdapter<any, any, any>;
312
+ /**
313
+ * Unified adapter that combines helpers and metadata configuration.
314
+ *
315
+ * @template THelpers - Custom helper functions accessible in gql composer callbacks
316
+ * @template TFragmentMetadata - The metadata type returned by fragment metadata builders
317
+ * @template TAggregatedFragmentMetadata - The type returned by aggregateFragmentMetadata
318
+ * @template TSchemaLevel - The type of schema-level configuration values
319
+ *
320
+ * @example
321
+ * ```typescript
322
+ * const adapter = defineAdapter({
323
+ * helpers: {
324
+ * auth: {
325
+ * requiresLogin: () => ({ requiresAuth: true }),
326
+ * },
327
+ * },
328
+ * metadata: {
329
+ * aggregateFragmentMetadata: (fragments) => fragments.map((m) => m.metadata),
330
+ * schemaLevel: { apiVersion: "v2" },
331
+ * },
332
+ * });
333
+ * ```
334
+ */
335
+ type Adapter<THelpers$1 extends object = object, TFragmentMetadata = unknown, TAggregatedFragmentMetadata = unknown, TSchemaLevel$1 = unknown> = {
336
+ /** Custom helper functions accessible in gql composer callbacks */
337
+ readonly helpers?: THelpers$1;
338
+ /** Metadata configuration for fragments and operations */
339
+ readonly metadata?: MetadataAdapter<TFragmentMetadata, TAggregatedFragmentMetadata, TSchemaLevel$1>;
340
+ };
341
+ /**
342
+ * Generic type for any unified adapter.
343
+ */
344
+ type AnyAdapter = Adapter<any, any, any, any>;
345
+ /**
346
+ * Extracts the type parameters from a unified Adapter.
347
+ */
348
+ type ExtractUnifiedAdapterTypes<T> = T extends Adapter<infer THelpers, infer TFragment, infer TAggregated, infer TSchemaLevel> ? {
349
+ helpers: THelpers;
350
+ fragmentMetadata: TFragment;
351
+ aggregatedFragmentMetadata: TAggregated;
352
+ schemaLevel: TSchemaLevel;
353
+ } : never;
354
+ /**
355
+ * Default adapter that maintains backwards compatibility with the original behavior.
356
+ * Uses OperationMetadata for fragment metadata and aggregates by collecting metadata into a readonly array.
357
+ */
358
+ type DefaultMetadataAdapter = MetadataAdapter<OperationMetadata, readonly (OperationMetadata | undefined)[]>;
359
+ /**
360
+ * Default unified adapter type.
361
+ */
362
+ type DefaultAdapter = Adapter<object, OperationMetadata, readonly (OperationMetadata | undefined)[]>;
363
+ /**
364
+ * Creates the default adapter instance.
365
+ * @internal
366
+ */
367
+ declare const createDefaultAdapter: () => DefaultMetadataAdapter;
368
+ /**
369
+ * The default adapter instance.
370
+ */
371
+ declare const defaultMetadataAdapter: DefaultMetadataAdapter;
372
+ //#endregion
373
+ //#region packages/core/src/types/type-foundation/type-specifier.d.ts
374
+ type AnyDefaultValue = {
375
+ default: ConstValue;
376
+ };
377
+ type InputTypeKind = "scalar" | "enum" | "input";
378
+ type OutputTypeKind = "scalar" | "enum" | "object" | "union" | "typename";
379
+ type AnyTypeSpecifier = {
380
+ readonly kind: string;
381
+ readonly name: string;
382
+ readonly modifier: TypeModifier;
383
+ readonly defaultValue?: AnyDefaultValue | null;
384
+ readonly arguments?: InputTypeSpecifiers;
385
+ };
386
+ type AbstractInputTypeSpecifier<TKind extends InputTypeKind> = {
387
+ readonly kind: TKind;
388
+ readonly name: string;
389
+ readonly modifier: TypeModifier;
390
+ readonly defaultValue: AnyDefaultValue | null;
391
+ };
392
+ type InputTypeSpecifiers = {
393
+ [key: string]: InputTypeSpecifier;
394
+ };
395
+ type InputTypeSpecifier = InputScalarSpecifier | InputEnumSpecifier | InputInputObjectSpecifier;
396
+ type InputInferrableTypeSpecifier = InputScalarSpecifier | InputEnumSpecifier;
397
+ type InputScalarSpecifier = AbstractInputTypeSpecifier<"scalar">;
398
+ type InputEnumSpecifier = AbstractInputTypeSpecifier<"enum">;
399
+ type InputInputObjectSpecifier = AbstractInputTypeSpecifier<"input">;
400
+ type AbstractOutputTypeSpecifier<TKind extends OutputTypeKind> = {
401
+ readonly kind: TKind;
402
+ readonly name: string;
403
+ readonly modifier: TypeModifier;
404
+ readonly arguments: InputTypeSpecifiers;
405
+ };
406
+ type OutputTypeSpecifiers = {
407
+ [key: string]: OutputTypeSpecifier;
408
+ };
409
+ type OutputTypeSpecifier = OutputScalarSpecifier | OutputEnumSpecifier | OutputObjectSpecifier | OutputUnionSpecifier | OutputTypenameSpecifier;
410
+ type OutputInferrableTypeSpecifier = OutputScalarSpecifier | OutputEnumSpecifier | OutputTypenameSpecifier;
411
+ type OutputScalarSpecifier = AbstractOutputTypeSpecifier<"scalar">;
412
+ type OutputEnumSpecifier = AbstractOutputTypeSpecifier<"enum">;
413
+ type OutputObjectSpecifier = AbstractOutputTypeSpecifier<"object">;
414
+ type OutputUnionSpecifier = AbstractOutputTypeSpecifier<"union">;
415
+ type OutputTypenameSpecifier = AbstractOutputTypeSpecifier<"typename">;
416
+ //#endregion
417
+ //#region packages/core/src/utils/type-meta.d.ts
418
+ interface WithTypeMeta<T extends object> {
419
+ readonly $type: T;
420
+ }
421
+ //#endregion
422
+ //#region packages/core/src/types/schema/schema.d.ts
423
+ type OperationType = keyof OperationRoots;
424
+ type AnyTypeName = string;
425
+ type AnyFieldName = string;
426
+ type AnyGraphqlSchema = {
427
+ readonly label: string;
428
+ readonly operations: OperationRoots;
429
+ readonly scalar: {
430
+ readonly [name: string]: ScalarDefinition<any>;
431
+ };
432
+ readonly enum: {
433
+ readonly [name: string]: EnumDefinition<any>;
434
+ };
435
+ readonly input: {
436
+ readonly [name: string]: InputDefinition;
437
+ };
438
+ readonly object: {
439
+ readonly [name: string]: ObjectDefinition;
440
+ };
441
+ readonly union: {
442
+ readonly [name: string]: UnionDefinition;
443
+ };
444
+ };
445
+ type OperationRoots = {
446
+ readonly query: string | null;
447
+ readonly mutation: string | null;
448
+ readonly subscription: string | null;
449
+ };
450
+ interface ScalarDefinition<T extends {
451
+ name: string;
452
+ input: unknown;
453
+ output: unknown;
454
+ }> extends WithTypeMeta<{
455
+ input: T["input"];
456
+ inputProfile: {
457
+ kind: "scalar";
458
+ name: T["name"];
459
+ value: T["input"];
460
+ };
461
+ output: T["output"];
462
+ outputProfile: {
463
+ kind: "scalar";
464
+ name: T["name"];
465
+ value: T["output"];
466
+ };
467
+ }> {
468
+ readonly name: T["name"];
469
+ }
470
+ interface EnumDefinition<T extends {
471
+ name: string;
472
+ values: string;
473
+ }> extends WithTypeMeta<{
474
+ name: T["name"];
475
+ inputProfile: {
476
+ kind: "enum";
477
+ name: T["name"];
478
+ value: T["values"];
479
+ };
480
+ outputProfile: {
481
+ kind: "enum";
482
+ name: T["name"];
483
+ value: T["values"];
484
+ };
485
+ }> {
486
+ readonly name: T["name"];
487
+ readonly values: { readonly [_ in T["values"]]: true };
488
+ }
489
+ interface InputDefinition {
490
+ readonly name: string;
491
+ readonly fields: InputTypeSpecifiers;
492
+ }
493
+ type ObjectDefinition = {
494
+ readonly name: string;
495
+ readonly fields: OutputTypeSpecifiers;
496
+ };
497
+ type UnionDefinition = {
498
+ readonly name: string;
499
+ readonly types: {
500
+ [typename: string]: true;
501
+ };
502
+ };
503
+ type InferInputProfile<TSchema extends AnyGraphqlSchema, TSpecifier extends InputTypeSpecifier> = { [_ in TSchema["label"]]: [TSpecifier extends InputScalarSpecifier ? [TSchema["scalar"][TSpecifier["name"]]["$type"]["inputProfile"]] : TSpecifier extends InputEnumSpecifier ? [TSchema["enum"][TSpecifier["name"]]["$type"]["inputProfile"]] : TSchema["input"][TSpecifier["name"]]["fields"] extends infer TFields ? { [K in keyof TFields]: TFields[K] extends InputTypeSpecifier ? InferInputProfile<TSchema, TFields[K]> : never } : never, TSpecifier["modifier"], TSpecifier["defaultValue"] extends AnyDefaultValue ? TypeProfile.WITH_DEFAULT_INPUT : undefined] }[TSchema["label"]];
504
+ type InferOutputProfile<TSchema extends AnyGraphqlSchema, TSpecifier extends OutputInferrableTypeSpecifier> = { [_ in TSchema["label"]]: [(TSpecifier extends OutputScalarSpecifier ? TSchema["scalar"][TSpecifier["name"]] : TSchema["enum"][TSpecifier["name"]])["$type"]["outputProfile"]] }[TSchema["label"]];
505
+ type PickTypeSpecifierByFieldName<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"], TFieldName$1 extends keyof TSchema["object"][TTypeName$1]["fields"]> = TSchema["object"][TTypeName$1]["fields"][TFieldName$1];
506
+ type InputFieldRecord<TSchema extends AnyGraphqlSchema, TSpecifier extends InputTypeSpecifier> = TSchema["input"][TSpecifier["name"]]["fields"];
507
+ type ObjectFieldRecord<TSchema extends AnyGraphqlSchema, TTypeName$1 extends keyof TSchema["object"]> = { readonly [TFieldName in keyof TSchema["object"][TTypeName$1]["fields"]]: TSchema["object"][TTypeName$1]["fields"][TFieldName] };
508
+ type UnionTypeRecord<TSchema extends AnyGraphqlSchema, TSpecifier extends OutputUnionSpecifier> = { readonly [TTypeName in UnionMemberName<TSchema, TSpecifier>]: TSchema["object"][TTypeName] };
509
+ type UnionMemberName<TSchema extends AnyGraphqlSchema, TSpecifier extends OutputUnionSpecifier> = Extract<keyof TSchema["object"], keyof TSchema["union"][TSpecifier["name"]]["types"]> & string;
510
+ /**
511
+ * Union of all input type names in a schema (scalars, enums, and input objects).
512
+ */
513
+ type AllInputTypeNames<TSchema extends AnyGraphqlSchema> = (keyof TSchema["scalar"] & string) | (keyof TSchema["enum"] & string) | (keyof TSchema["input"] & string);
514
+ /**
515
+ * Infers the input type kind from a type name.
516
+ */
517
+ type InferInputKind<TSchema extends AnyGraphqlSchema, TName extends AllInputTypeNames<TSchema>> = TName extends keyof TSchema["scalar"] ? "scalar" : TName extends keyof TSchema["enum"] ? "enum" : TName extends keyof TSchema["input"] ? "input" : never;
518
+ //#endregion
519
+ export { MetadataBuilderTools as $, OutputInferrableTypeSpecifier as A, AnyMetadataAdapter as B, InputInferrableTypeSpecifier as C, appendToPath as Ct, InputTypeSpecifier as D, InputTypeKind as E, withFieldPath as Et, OutputTypeSpecifiers as F, FragmentMetaInfo as G, DefaultMetadataAdapter as H, OutputTypenameSpecifier as I, defaultMetadataAdapter as J, MetadataAdapter as K, OutputUnionSpecifier as L, OutputScalarSpecifier as M, OutputTypeKind as N, InputTypeSpecifiers as O, OutputTypeSpecifier as P, MetadataBuilder as Q, Adapter as R, InputEnumSpecifier as S, FieldPathSegment as St, InputScalarSpecifier as T, isListType as Tt, ExtractAdapterTypes as U, DefaultAdapter as V, ExtractUnifiedAdapterTypes as W, FragmentMetadataBuilder as X, ExtractMetadata as Y, FragmentMetadataBuilderTools as Z, UnionDefinition as _, TypeModifier as _t, EnumDefinition as a, createVarRefFromConstValue as at, AnyDefaultValue as b, ConstValues as bt, InferOutputProfile as c, getVarRefName as ct, ObjectDefinition as d, GetAssigningType as dt, OperationMetadata as et, ObjectFieldRecord as f, GetConstAssignableType as ft, ScalarDefinition as g, ApplyTypeModifier as gt, PickTypeSpecifierByFieldName as h, TypeProfile as ht, AnyTypeName as i, VarRefInner as it, OutputObjectSpecifier as j, OutputEnumSpecifier as k, InputDefinition as l, getVarRefValue as lt, OperationType as m, PrimitiveTypeProfile as mt, AnyFieldName as n, AnyVarRefMeta as nt, InferInputKind as o, createVarRefFromVariable as ot, OperationRoots as p, GetModifiedType as pt, createDefaultAdapter as q, AnyGraphqlSchema as r, VarRef as rt, InferInputProfile as s, getVarRefInner as st, AllInputTypeNames as t, AnyVarRef as tt, InputFieldRecord as u, isVarRef as ut, UnionMemberName as v, ValidTypeModifier as vt, InputInputObjectSpecifier as w, getCurrentFieldPath as wt, AnyTypeSpecifier as x, FieldPath as xt, UnionTypeRecord as y, ConstValue as yt, AnyAdapter as z };
520
+ //# sourceMappingURL=schema-BElqa12z.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-BElqa12z.d.cts","names":[],"sources":["../src/composer/field-path-context.ts","../src/types/type-foundation/const-value.ts","../src/types/type-foundation/type-modifier-core.generated.ts","../src/types/type-foundation/type-profile.ts","../src/types/type-foundation/var-ref.ts","../src/types/metadata/metadata.ts","../src/types/metadata/adapter.ts","../src/types/type-foundation/type-specifier.ts","../src/utils/type-meta.ts","../src/types/schema/schema.ts"],"sourcesContent":[],"mappings":"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"}