@schema-hub/zod-graphql-query-builder 0.0.13 → 0.0.14

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 (55) hide show
  1. package/package.json +16 -5
  2. package/readme.md +80 -2
  3. package/sbom.cdx.json +67 -0
  4. package/zod-graphql-query-builder/build-context.d.ts +4 -0
  5. package/zod-graphql-query-builder/build-context.d.ts.map +1 -0
  6. package/zod-graphql-query-builder/build-context.js +10 -0
  7. package/zod-graphql-query-builder/build-context.js.map +1 -0
  8. package/zod-graphql-query-builder/builder.d.ts +2 -13
  9. package/zod-graphql-query-builder/builder.d.ts.map +1 -1
  10. package/zod-graphql-query-builder/builder.js +19 -159
  11. package/zod-graphql-query-builder/builder.js.map +1 -1
  12. package/zod-graphql-query-builder/custom-scalar.d.ts +0 -2
  13. package/zod-graphql-query-builder/custom-scalar.d.ts.map +1 -1
  14. package/zod-graphql-query-builder/custom-scalar.js +1 -7
  15. package/zod-graphql-query-builder/custom-scalar.js.map +1 -1
  16. package/zod-graphql-query-builder/entry-point.d.ts +1 -4
  17. package/zod-graphql-query-builder/entry-point.d.ts.map +1 -1
  18. package/zod-graphql-query-builder/fragment-definitions.d.ts +1 -0
  19. package/zod-graphql-query-builder/fragment-definitions.d.ts.map +1 -0
  20. package/zod-graphql-query-builder/fragment-definitions.js +15 -0
  21. package/zod-graphql-query-builder/fragment-definitions.js.map +1 -0
  22. package/zod-graphql-query-builder/query-schema.d.ts +63 -27
  23. package/zod-graphql-query-builder/query-schema.d.ts.map +1 -1
  24. package/zod-graphql-query-builder/query-schema.js +8 -3
  25. package/zod-graphql-query-builder/query-schema.js.map +1 -1
  26. package/zod-graphql-query-builder/root-shape.js +7 -0
  27. package/zod-graphql-query-builder/root-shape.js.map +1 -0
  28. package/zod-graphql-query-builder/serializer.d.ts +5 -0
  29. package/zod-graphql-query-builder/serializer.d.ts.map +1 -0
  30. package/zod-graphql-query-builder/serializer.js +308 -0
  31. package/zod-graphql-query-builder/serializer.js.map +1 -0
  32. package/zod-graphql-query-builder/type-name.d.ts +8 -0
  33. package/zod-graphql-query-builder/type-name.d.ts.map +1 -0
  34. package/zod-graphql-query-builder/type-name.js +45 -0
  35. package/zod-graphql-query-builder/type-name.js.map +1 -0
  36. package/zod-graphql-query-builder/values/enum.d.ts +0 -2
  37. package/zod-graphql-query-builder/values/enum.d.ts.map +1 -1
  38. package/zod-graphql-query-builder/values/enum.js +1 -9
  39. package/zod-graphql-query-builder/values/enum.js.map +1 -1
  40. package/zod-graphql-query-builder/values/parameter-list.js +8 -2
  41. package/zod-graphql-query-builder/values/parameter-list.js.map +1 -1
  42. package/zod-graphql-query-builder/values/value.d.ts +0 -5
  43. package/zod-graphql-query-builder/values/value.d.ts.map +1 -1
  44. package/zod-graphql-query-builder/values/value.js +9 -3
  45. package/zod-graphql-query-builder/values/value.js.map +1 -1
  46. package/zod-graphql-query-builder/values/variable-placeholder.d.ts +0 -3
  47. package/zod-graphql-query-builder/values/variable-placeholder.d.ts.map +1 -1
  48. package/zod-graphql-query-builder/values/variable-placeholder.js +1 -9
  49. package/zod-graphql-query-builder/values/variable-placeholder.js.map +1 -1
  50. package/zod-graphql-query-builder/values/variable-set.js +4 -0
  51. package/zod-graphql-query-builder/values/variable-set.js.map +1 -0
  52. package/zod-graphql-query-builder/variable-definition.d.ts +0 -1
  53. package/zod-graphql-query-builder/variable-definition.d.ts.map +1 -1
  54. package/zod-graphql-query-builder/variable-definition.js +4 -1
  55. package/zod-graphql-query-builder/variable-definition.js.map +1 -1
@@ -1,51 +1,87 @@
1
- import { type $strict, $ZodArray, type $ZodBoolean, $ZodDiscriminatedUnion, $ZodLazy, type $ZodLiteral, type $ZodNull, $ZodNullable, type $ZodNumber, $ZodObject, $ZodPipe, $ZodReadonly, type $ZodShape, type $ZodString, type $ZodTransform, $ZodTuple, type $ZodType, type $ZodUndefined, type $ZodUnion } from 'zod/v4/core';
1
+ import { type $strict, type $ZodArrayDef, type $ZodBoolean, type $ZodDiscriminatedUnionDef, type $ZodLazyDef, type $ZodLiteral, type $ZodNull, type $ZodNullableDef, type $ZodNumber, type $ZodObjectConfig, type $ZodObjectDef, type $ZodReadonlyDef, type $ZodShape, type $ZodString, type $ZodTransform, type $ZodTupleDef, type $ZodType, type $ZodTypeInternals, type $ZodUndefined, type $ZodUnionDef, type util as zodUtil } from 'zod/v4/core';
2
2
  import { type CustomScalarSchema } from './custom-scalar.js';
3
- export interface StrictObjectSchema<Shape extends $ZodShape> extends $ZodObject<Shape, $strict> {
3
+ interface ZodLazyGh4611IssueWorkaround<T extends $ZodType = $ZodType> extends $ZodType {
4
+ readonly _zod: $ZodTypeInternals & {
5
+ readonly def: $ZodLazyDef<T>;
6
+ };
7
+ }
8
+ interface ZodNullableGh4611IssueWorkaround<T extends $ZodType = $ZodType> extends $ZodType {
9
+ readonly _zod: $ZodTypeInternals & {
10
+ readonly def: $ZodNullableDef<T>;
11
+ };
12
+ }
13
+ interface ZodReadonlyGh4611IssueWorkaround<T extends $ZodType = $ZodType> extends $ZodType {
14
+ readonly _zod: $ZodTypeInternals & {
15
+ readonly def: $ZodReadonlyDef<T>;
16
+ };
17
+ }
18
+ interface ZodPipeGh4611IssueWorkaround<A extends $ZodType = $ZodType, B extends $ZodType = $ZodType> extends $ZodType {
19
+ readonly _zod: $ZodTypeInternals & {
20
+ readonly def: {
21
+ readonly type: 'pipe';
22
+ readonly in: A;
23
+ readonly out: B;
24
+ };
25
+ };
26
+ }
27
+ interface ZodObjectGh6015IssueWorkaround<Shape extends $ZodShape = $ZodShape, Config extends $ZodObjectConfig = $ZodObjectConfig> extends $ZodType {
28
+ readonly _zod: $ZodTypeInternals & {
29
+ readonly def: $ZodObjectDef<Shape>;
30
+ readonly config: Config;
31
+ };
32
+ }
33
+ interface ZodArrayGh6015IssueWorkaround<T extends $ZodType = $ZodType> extends $ZodType {
34
+ readonly _zod: $ZodTypeInternals & {
35
+ readonly def: $ZodArrayDef<T>;
36
+ };
37
+ }
38
+ interface ZodUnionGh6015IssueWorkaround<T extends readonly $ZodType[] = readonly $ZodType[]> extends $ZodType {
39
+ readonly _zod: $ZodTypeInternals & {
40
+ readonly def: $ZodUnionDef<T>;
41
+ };
42
+ }
43
+ interface ZodDiscriminatedUnionGh6015IssueWorkaround<Options extends readonly $ZodType[] = readonly $ZodType[], Disc extends string = string> extends $ZodType {
44
+ readonly _zod: $ZodTypeInternals & {
45
+ readonly def: $ZodDiscriminatedUnionDef<Options, Disc>;
46
+ readonly propValues: zodUtil.PropValues;
47
+ };
48
+ }
49
+ interface ZodTupleGh6015IssueWorkaround<T extends zodUtil.TupleItems = readonly $ZodType[], Rest extends $ZodType | null = $ZodType | null> extends $ZodType {
50
+ readonly _zod: $ZodTypeInternals & {
51
+ readonly def: $ZodTupleDef<T, Rest>;
52
+ };
53
+ }
54
+ export interface StrictObjectSchema<Shape extends $ZodShape> extends ZodObjectGh6015IssueWorkaround<Shape, $strict> {
4
55
  }
5
- export declare function isStrictObjectSchema(schema: unknown): schema is StrictObjectSchema<FieldShape>;
6
56
  type LiteralSchema = $ZodLiteral<boolean> | $ZodLiteral<null> | $ZodLiteral<number> | $ZodLiteral<string>;
7
57
  type PrimitiveSchema = $ZodBoolean | $ZodNull | $ZodNumber | $ZodString | $ZodUndefined | LiteralSchema;
8
- export type FragmentTypeName = boolean | number | string | null;
58
+
9
59
  export interface FragmentUnionOptionSchema extends StrictObjectSchema<FieldShape & {
10
60
  __typename: PrimitiveSchema;
11
61
  }> {
12
62
  }
13
- interface FieldTuple extends $ZodTuple<readonly [FieldSchema, ...(readonly FieldSchema[])]> {
63
+ interface FieldTuple extends ZodTupleGh6015IssueWorkaround<readonly [FieldSchema, ...(readonly FieldSchema[])]> {
14
64
  }
15
- export interface FieldArray extends $ZodArray<FieldSchema> {
65
+ export interface FieldArray extends ZodArrayGh6015IssueWorkaround<FieldSchema> {
16
66
  }
17
- interface FieldDiscriminatedUnion extends $ZodDiscriminatedUnion<FragmentUnionOptionSchema[]> {
67
+ interface FieldDiscriminatedUnion extends ZodDiscriminatedUnionGh6015IssueWorkaround<FragmentUnionOptionSchema[]> {
18
68
  }
19
- interface FieldUnion extends $ZodUnion<readonly [PrimitiveSchema, ...(readonly PrimitiveSchema[])]> {
69
+ interface FieldUnion extends ZodUnionGh6015IssueWorkaround<readonly [PrimitiveSchema, ...(readonly PrimitiveSchema[])]> {
20
70
  }
21
71
  export type NonWrappedFieldSchema = CustomScalarSchema<$ZodType> | FieldArray | FieldDiscriminatedUnion | FieldTuple | FieldUnion | PrimitiveSchema | StrictObjectSchema<FieldShape>;
22
- interface FieldLazy extends $ZodLazy<FieldSchema> {
72
+ interface FieldLazy extends ZodLazyGh4611IssueWorkaround<FieldSchema> {
23
73
  }
24
- interface FieldNullable extends $ZodNullable<FieldSchema> {
74
+ interface FieldNullable extends ZodNullableGh4611IssueWorkaround<FieldSchema> {
25
75
  }
26
- interface FieldReadonly extends $ZodReadonly<FieldSchema> {
76
+ interface FieldReadonly extends ZodReadonlyGh4611IssueWorkaround<FieldSchema> {
27
77
  }
28
- interface FieldPipe extends $ZodPipe<FieldSchema, $ZodTransform> {
78
+ interface FieldPipe extends ZodPipeGh4611IssueWorkaround<FieldSchema, $ZodTransform> {
29
79
  }
30
80
  export type WrappedFieldSchema = FieldLazy | FieldNullable | FieldPipe | FieldReadonly;
31
81
  export type FieldSchema = NonWrappedFieldSchema | WrappedFieldSchema;
32
- type UnwrappedChainResult = {
33
- unwrappedSchema: NonWrappedFieldSchema;
34
- wrapperElements: WrappedFieldSchema[];
35
- };
36
- export declare function unwrapFieldSchemaChain(parent: FieldSchema): UnwrappedChainResult;
37
- export declare function unwrapFieldSchema(parent: FieldSchema): NonWrappedFieldSchema;
38
82
  export interface FieldShape {
39
83
  [key: string]: FieldSchema;
40
84
  }
41
- export type QuerySchema = $ZodReadonly<StrictObjectSchema<FieldShape>> | StrictObjectSchema<FieldShape>;
42
- type FieldSchemaTupleItems = readonly [FieldSchema, ...FieldSchema[]];
43
- export type FieldSchemaTuple = $ZodTuple<FieldSchemaTupleItems, FieldSchema | null>;
44
- export type ObjectOrListSchema = FieldArray | FieldSchemaTuple | StrictObjectSchema<FieldShape>;
45
- export declare function isObjectOrListSchema(schema: FieldSchema): schema is ObjectOrListSchema;
46
- export type FragmentsSchema = $ZodDiscriminatedUnion<FragmentUnionOptionSchema[]>;
47
- export declare function isFragmentsSchema(schema: FieldSchema): schema is FragmentsSchema;
48
- export type UnionOrListSchema = FieldArray | FieldSchemaTuple | FragmentsSchema;
49
- export declare function isUnionOrListSchema(schema: FieldSchema): schema is UnionOrListSchema;
85
+ export type QuerySchema = StrictObjectSchema<FieldShape> | ZodReadonlyGh4611IssueWorkaround<StrictObjectSchema<FieldShape>>;
50
86
  export {};
51
87
  //# sourceMappingURL=query-schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-schema.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-schema.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,6 @@
2
2
  /* eslint-disable @typescript-eslint/consistent-type-definitions, @typescript-eslint/no-empty-object-type -- using an interface to avoid circular reference */
3
3
  import { $ZodArray, $ZodDiscriminatedUnion, $ZodLazy, $ZodNullable, $ZodObject, $ZodPipe, $ZodReadonly, $ZodTuple } from 'zod/v4/core';
4
4
  import { isCustomScalarSchema } from './custom-scalar.js';
5
- // @ts-expect-error -- https://github.com/colinhacks/zod/issues/4611
6
5
  export function isStrictObjectSchema(schema) {
7
6
  return schema instanceof $ZodObject;
8
7
  }
@@ -49,13 +48,19 @@ export function unwrapFieldSchema(parent) {
49
48
  const result = unwrapFieldSchemaChain(parent);
50
49
  return result.unwrappedSchema;
51
50
  }
51
+ export function isFieldArraySchema(schema) {
52
+ return schema instanceof $ZodArray;
53
+ }
54
+ export function isFieldTupleSchema(schema) {
55
+ return schema instanceof $ZodTuple;
56
+ }
52
57
  export function isObjectOrListSchema(schema) {
53
- return isStrictObjectSchema(schema) || schema instanceof $ZodArray || schema instanceof $ZodTuple;
58
+ return isStrictObjectSchema(schema) || isFieldArraySchema(schema) || isFieldTupleSchema(schema);
54
59
  }
55
60
  export function isFragmentsSchema(schema) {
56
61
  return schema instanceof $ZodDiscriminatedUnion;
57
62
  }
58
63
  export function isUnionOrListSchema(schema) {
59
- return isFragmentsSchema(schema) || schema instanceof $ZodArray || schema instanceof $ZodTuple;
64
+ return isFragmentsSchema(schema) || isFieldArraySchema(schema) || isFieldTupleSchema(schema);
60
65
  }
61
66
  //# sourceMappingURL=query-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-schema.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,8JAA8J;AAC9J,OAAO,EAEH,SAAS,EAET,sBAAsB,EACtB,QAAQ,EAGR,YAAY,EAEZ,UAAU,EACV,QAAQ,EACR,YAAY,EAIZ,SAAS,EAIZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAA2B,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAInF,oEAAoE;AACpE,MAAM,UAAU,oBAAoB,CAAC,MAAe;IAChD,OAAO,MAAM,YAAY,UAAU,CAAC;AACxC,CAAC;AAsCD,SAAS,oBAAoB,CAAC,MAAmB;IAC7C,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,OAAO,MAAM,YAAY,QAAQ,IAAI,MAAM,YAAY,QAAQ,IAAI,MAAM,YAAY,YAAY;QAC7F,MAAM,YAAY,YAAY,CAAC;AACvC,CAAC;AAOD,wFAAwF;AACxF,SAAS,+BAA+B,CACpC,MAAmB,EACnB,YAAkC;IAElC,IAAI,SAAS,GAAgB,MAAM,CAAC;IAEpC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QAChC,OAAO;YACH,eAAe,EAAE,MAAM;YACvB,eAAe,EAAE,YAAY;SAChC,CAAC;IACN,CAAC;IAED,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;QAC7B,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAiB,CAAC;IACxD,CAAC;SAAM,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;QACpC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAiB,CAAC;IAClD,CAAC;SAAM,IAAI,MAAM,YAAY,YAAY,EAAE,CAAC;QACxC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;IAC1C,CAAC;SAAM,IAAI,MAAM,YAAY,YAAY,EAAE,CAAC;QACxC,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAwB,CAAC;IACzD,CAAC;IAED,IAAI,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,+BAA+B,CAAC,SAAS,EAAE,CAAC,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,OAAO;QACH,eAAe,EAAE,SAAS;QAC1B,eAAe,EAAE,CAAC,GAAG,YAAY,EAAE,MAAM,CAAC;KAC7C,CAAC;AACN,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAmB;IACtD,OAAO,+BAA+B,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACjD,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,eAAe,CAAC;AAClC,CAAC;AAeD,MAAM,UAAU,oBAAoB,CAAC,MAAmB;IACpD,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,MAAM,YAAY,SAAS,IAAI,MAAM,YAAY,SAAS,CAAC;AACtG,CAAC;AAID,MAAM,UAAU,iBAAiB,CAAC,MAAmB;IACjD,OAAO,MAAM,YAAY,sBAAsB,CAAC;AACpD,CAAC;AAOD,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACnD,OAAO,iBAAiB,CAAC,MAAM,CAAC,IAAI,MAAM,YAAY,SAAS,IAAI,MAAM,YAAY,SAAS,CAAC;AACnG,CAAC"}
1
+ {"version":3,"file":"query-schema.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/query-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export function extractRootShape(schema) {
2
+ if (schema._zod.def.type === 'readonly') {
3
+ return schema._zod.def.innerType._zod.def.shape;
4
+ }
5
+ return schema._zod.def.shape;
6
+ }
7
+ //# sourceMappingURL=root-shape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root-shape.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/root-shape.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAAC,MAAmB;IAChD,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;IACpD,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AACjC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { BuildContext } from './build-context.js';
2
+ import { type FieldSchema, type FieldShape } from './query-schema.js';
3
+ import { type FieldOptionsRegistry } from './type-name.js';
4
+ export type { FieldOptionsRegistry, GraphqlFieldOptions } from './type-name.js';
5
+ //# sourceMappingURL=serializer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/serializer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB;AAEtD,OAAO,EAEH,KAAK,WAAW,EAEhB,KAAK,UAAU,EAclB,MAAM,mBAAmB;AAC1B,OAAO,EACH,KAAK,oBAAoB,EAG5B,MAAM,gBAAgB;AAKvB,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB"}
@@ -0,0 +1,308 @@
1
+ /* eslint-disable no-underscore-dangle -- we need to access _zod */
2
+ import { $ZodUndefined } from 'zod/v4/core';
3
+ import { isCustomScalarSchema } from './custom-scalar.js';
4
+ import { isFieldArraySchema, isFragmentsSchema, isObjectOrListSchema, isStrictObjectSchema, isUnionOrListSchema, unwrapFieldSchema, unwrapFieldSchemaChain } from './query-schema.js';
5
+ import { resolveTypeName } from './type-name.js';
6
+ import { normalizeParameterList } from './values/parameter-list.js';
7
+ import { mergeVariables } from './values/variable-set.js';
8
+ const minimumReuseCountForFragment = 2;
9
+ const cyclicSchemaErrorMessage = 'Cyclic schema detected without a resolvable GraphQL type name. ' +
10
+ "Register it with graphqlFieldOptions(schema, { typeName: '...' }) " +
11
+ "or add `__typename: z.literal('...')` to its shape so the builder can emit a named fragment.";
12
+ function unwrapFromArraySchema(predicate, schema) {
13
+ const elementSchema = unwrapFieldSchema(schema._zod.def.element);
14
+ if (predicate(elementSchema)) {
15
+ return elementSchema;
16
+ }
17
+ return null;
18
+ }
19
+ function unwrapFromTupleSchema(predicate, schema) {
20
+ const { items } = schema._zod.def;
21
+ const [firstElementSchema] = items;
22
+ const unwrappedElementSchema = unwrapFieldSchema(firstElementSchema);
23
+ if (predicate(unwrappedElementSchema)) {
24
+ return unwrappedElementSchema;
25
+ }
26
+ return null;
27
+ }
28
+ function getObjectSchema(schema) {
29
+ if (isStrictObjectSchema(schema)) {
30
+ return schema;
31
+ }
32
+ if (isFieldArraySchema(schema)) {
33
+ return unwrapFromArraySchema(isStrictObjectSchema, schema);
34
+ }
35
+ return unwrapFromTupleSchema(isStrictObjectSchema, schema);
36
+ }
37
+ function getUnionSchema(schema) {
38
+ if (isFragmentsSchema(schema)) {
39
+ return schema;
40
+ }
41
+ if (isFieldArraySchema(schema)) {
42
+ return unwrapFromArraySchema(isFragmentsSchema, schema);
43
+ }
44
+ return unwrapFromTupleSchema(isFragmentsSchema, schema);
45
+ }
46
+ function getFieldOptionsForSchema(registry, schema) {
47
+ const unwrappingResult = unwrapFieldSchemaChain(schema);
48
+ const queue = [...unwrappingResult.wrapperElements, unwrappingResult.unwrappedSchema];
49
+ for (const currentSchema of queue) {
50
+ const fieldOptions = registry.get(currentSchema);
51
+ if (fieldOptions !== undefined) {
52
+ return fieldOptions;
53
+ }
54
+ }
55
+ return {};
56
+ }
57
+ function serializedFieldSelector(registry, fieldName, fieldSchema) {
58
+ const { aliasFor, parameters } = getFieldOptionsForSchema(registry, fieldSchema);
59
+ const selectorName = aliasFor === undefined ? fieldName : `${fieldName}: ${aliasFor}`;
60
+ if (parameters === undefined) {
61
+ return { serializedValue: selectorName, referencedVariables: new Set() };
62
+ }
63
+ const normalizedParameterList = normalizeParameterList(parameters);
64
+ return {
65
+ serializedValue: `${selectorName}${normalizedParameterList.serializedValue}`,
66
+ referencedVariables: normalizedParameterList.referencedVariables
67
+ };
68
+ }
69
+ function combineFieldSelectorAndFieldBody(fieldSelector, fieldBody) {
70
+ return {
71
+ serializedValue: `${fieldSelector.serializedValue}${fieldBody.serializedValue}`,
72
+ referencedVariables: mergeVariables(fieldSelector.referencedVariables, fieldBody.referencedVariables)
73
+ };
74
+ }
75
+ function getObjectSchemasFromList(unwrapped) {
76
+ if (!isObjectOrListSchema(unwrapped)) {
77
+ return [];
78
+ }
79
+ const objectSchema = getObjectSchema(unwrapped);
80
+ return objectSchema === null ? [] : [objectSchema];
81
+ }
82
+ function getOptionsFromUnion(unwrapped) {
83
+ if (!isUnionOrListSchema(unwrapped)) {
84
+ return [];
85
+ }
86
+ const unionSchema = getUnionSchema(unwrapped);
87
+ return unionSchema === null ? [] : unionSchema._zod.def.options;
88
+ }
89
+ function getSchemasToVisit(unwrapped) {
90
+ if (unwrapped instanceof $ZodUndefined) {
91
+ return [];
92
+ }
93
+ const objectSchemas = getObjectSchemasFromList(unwrapped);
94
+ if (objectSchemas.length > 0) {
95
+ return objectSchemas;
96
+ }
97
+ return getOptionsFromUnion(unwrapped);
98
+ }
99
+ function ensureCycleHasResolvableTypeName(registry, objectSchema) {
100
+ if (resolveTypeName(registry, objectSchema) !== null) {
101
+ return;
102
+ }
103
+ throw new Error(cyclicSchemaErrorMessage);
104
+ }
105
+ export function collectSchemaReferences(registry, rootShape) {
106
+ const counts = new Map();
107
+ const visiting = new Set();
108
+ function visitObject(objectSchema) {
109
+ counts.set(objectSchema, (counts.get(objectSchema) ?? 0) + 1);
110
+ if (visiting.has(objectSchema)) {
111
+ ensureCycleHasResolvableTypeName(registry, objectSchema);
112
+ return;
113
+ }
114
+ visiting.add(objectSchema);
115
+ for (const childSchema of Object.values(objectSchema._zod.def.shape)) {
116
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define -- mutual recursion
117
+ visitField(childSchema);
118
+ }
119
+ visiting.delete(objectSchema);
120
+ }
121
+ function visitField(fieldSchema) {
122
+ if (isCustomScalarSchema(fieldSchema)) {
123
+ return;
124
+ }
125
+ const unwrapped = unwrapFieldSchema(fieldSchema);
126
+ for (const objectSchema of getSchemasToVisit(unwrapped)) {
127
+ visitObject(objectSchema);
128
+ }
129
+ }
130
+ for (const fieldSchema of Object.values(rootShape)) {
131
+ visitField(fieldSchema);
132
+ }
133
+ return counts;
134
+ }
135
+ function allocateFragmentName(typeName, counterPerTypeName) {
136
+ const nextIndex = (counterPerTypeName.get(typeName) ?? 0) + 1;
137
+ counterPerTypeName.set(typeName, nextIndex);
138
+ return `${typeName}_${nextIndex}`;
139
+ }
140
+ function tryAllocateFragmentForSchema(registry, objectSchema, context) {
141
+ const count = context.counts.get(objectSchema) ?? 0;
142
+ if (count < minimumReuseCountForFragment) {
143
+ return null;
144
+ }
145
+ const typeName = resolveTypeName(registry, objectSchema);
146
+ if (typeName === null) {
147
+ return null;
148
+ }
149
+ const fragmentName = allocateFragmentName(typeName, context.counterPerTypeName);
150
+ context.nameForSchema.set(objectSchema, fragmentName);
151
+ return { fragmentName, typeName };
152
+ }
153
+ function storeFragmentDefinition(registry, allocation, objectSchema, context) {
154
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define -- mutual recursion
155
+ const body = serializeObjectSchemaInline(registry, objectSchema, context);
156
+ context.definitions.set(allocation.fragmentName, {
157
+ typeName: allocation.typeName,
158
+ body: body.serializedValue,
159
+ referencedVariables: body.referencedVariables
160
+ });
161
+ }
162
+ function maybeAssignFragmentName(registry, objectSchema, context) {
163
+ const existing = context.nameForSchema.get(objectSchema);
164
+ if (existing !== undefined) {
165
+ return existing;
166
+ }
167
+ const allocation = tryAllocateFragmentForSchema(registry, objectSchema, context);
168
+ if (allocation === null) {
169
+ return null;
170
+ }
171
+ storeFragmentDefinition(registry, allocation, objectSchema, context);
172
+ return allocation.fragmentName;
173
+ }
174
+ function serializeObjectSchemaInline(registry, objectSchema, context) {
175
+ const entries = Object
176
+ .entries(objectSchema._zod.def.shape)
177
+ .toSorted(([nameA], [nameB]) => {
178
+ return nameA.localeCompare(nameB);
179
+ });
180
+ let referencedVariables = new Set();
181
+ const serializedEntries = [];
182
+ for (const [fieldName, fieldSchema] of entries) {
183
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define -- recursion
184
+ const serializedField = serializeFieldSchema(registry, fieldName, fieldSchema, context);
185
+ referencedVariables = mergeVariables(referencedVariables, serializedField.referencedVariables);
186
+ serializedEntries.push(serializedField.serializedValue);
187
+ }
188
+ return {
189
+ serializedValue: ` { ${serializedEntries.join(', ')} }`,
190
+ referencedVariables
191
+ };
192
+ }
193
+ function serializeFragmentReference(assignedName, context) {
194
+ const definition = context.definitions.get(assignedName);
195
+ return {
196
+ serializedValue: `...${assignedName}`,
197
+ referencedVariables: definition?.referencedVariables ?? new Set()
198
+ };
199
+ }
200
+ function wrapFragmentReferenceAsBody(assignedName, context) {
201
+ const reference = serializeFragmentReference(assignedName, context);
202
+ return {
203
+ serializedValue: ` { ${reference.serializedValue} }`,
204
+ referencedVariables: reference.referencedVariables
205
+ };
206
+ }
207
+ function lookupDiscriminatorName(discriminatorNames, index) {
208
+ const value = discriminatorNames[index];
209
+ if (value === undefined || value === null) {
210
+ throw new Error(`Fragment name for index ${index} is undefined`);
211
+ }
212
+ return value;
213
+ }
214
+ function serializeInlineUnionOption(registry, discriminatorName, fragmentSchema, context) {
215
+ const serializedFragment = serializeObjectSchemaInline(registry, fragmentSchema, context);
216
+ return {
217
+ serializedValue: `... on ${discriminatorName.toString()}${serializedFragment.serializedValue}`,
218
+ referencedVariables: serializedFragment.referencedVariables
219
+ };
220
+ }
221
+ function serializeFragmentUnionOption(registry, discriminatorName, fragmentSchema, context) {
222
+ const assignedName = maybeAssignFragmentName(registry, fragmentSchema, context);
223
+ if (assignedName !== null) {
224
+ return serializeFragmentReference(assignedName, context);
225
+ }
226
+ return serializeInlineUnionOption(registry, discriminatorName, fragmentSchema, context);
227
+ }
228
+ function serializeFragments(registry, discriminatorMap, unionOptions, context) {
229
+ let referencedVariables = new Set();
230
+ const serializedFragments = [];
231
+ const discriminatorNames = Array.from(discriminatorMap.__typename ?? []);
232
+ const pairedOptions = unionOptions.map((fragmentSchema, index) => {
233
+ return { discriminatorName: lookupDiscriminatorName(discriminatorNames, index), fragmentSchema };
234
+ });
235
+ const sortedOptions = pairedOptions.toSorted((optionA, optionB) => {
236
+ return optionA.discriminatorName.toString().localeCompare(optionB.discriminatorName.toString());
237
+ });
238
+ for (const { discriminatorName, fragmentSchema } of sortedOptions) {
239
+ const optionResult = serializeFragmentUnionOption(registry, discriminatorName, fragmentSchema, context);
240
+ referencedVariables = mergeVariables(referencedVariables, optionResult.referencedVariables);
241
+ serializedFragments.push(optionResult.serializedValue);
242
+ }
243
+ return {
244
+ serializedValue: ` { ${serializedFragments.join(', ')} }`,
245
+ referencedVariables
246
+ };
247
+ }
248
+ function serializeObjectField(registry, fieldSelector, objectSchema, context) {
249
+ const assignedName = maybeAssignFragmentName(registry, objectSchema, context);
250
+ if (assignedName !== null) {
251
+ return combineFieldSelectorAndFieldBody(fieldSelector, wrapFragmentReferenceAsBody(assignedName, context));
252
+ }
253
+ return combineFieldSelectorAndFieldBody(fieldSelector, serializeObjectSchemaInline(registry, objectSchema, context));
254
+ }
255
+ function serializeUnionField(registry, fieldSelector, unionSchema, context) {
256
+ return combineFieldSelectorAndFieldBody(fieldSelector, serializeFragments(registry, unionSchema._zod.propValues, unionSchema._zod.def.options, context));
257
+ }
258
+ function trySerializeObjectField(registry, fieldSelector, unwrapped, context) {
259
+ if (!isObjectOrListSchema(unwrapped)) {
260
+ return null;
261
+ }
262
+ const objectSchema = getObjectSchema(unwrapped);
263
+ if (objectSchema === null) {
264
+ return null;
265
+ }
266
+ return serializeObjectField(registry, fieldSelector, objectSchema, context);
267
+ }
268
+ function trySerializeUnionField(registry, fieldSelector, unwrapped, context) {
269
+ if (!isUnionOrListSchema(unwrapped)) {
270
+ return null;
271
+ }
272
+ const unionSchema = getUnionSchema(unwrapped);
273
+ if (unionSchema === null) {
274
+ return null;
275
+ }
276
+ return serializeUnionField(registry, fieldSelector, unionSchema, context);
277
+ }
278
+ function serializeUnwrappedFieldBody(registry, fieldSelector, unwrapped, context) {
279
+ if (unwrapped instanceof $ZodUndefined) {
280
+ return { serializedValue: '', referencedVariables: new Set() };
281
+ }
282
+ return trySerializeObjectField(registry, fieldSelector, unwrapped, context) ??
283
+ trySerializeUnionField(registry, fieldSelector, unwrapped, context);
284
+ }
285
+ function serializeFieldSchema(registry, fieldName, fieldSchema, context) {
286
+ const fieldSelector = serializedFieldSelector(registry, fieldName, fieldSchema);
287
+ if (isCustomScalarSchema(fieldSchema)) {
288
+ return fieldSelector;
289
+ }
290
+ const unwrapped = unwrapFieldSchema(fieldSchema);
291
+ return serializeUnwrappedFieldBody(registry, fieldSelector, unwrapped, context) ?? fieldSelector;
292
+ }
293
+ export function serializeRootShape(registry, rootShape, context) {
294
+ let referencedVariables = new Set();
295
+ const bodyEntries = [];
296
+ const sortedEntries = Object.entries(rootShape).toSorted(([nameA], [nameB]) => {
297
+ return nameA.localeCompare(nameB);
298
+ });
299
+ for (const [fieldName, fieldSchema] of sortedEntries) {
300
+ const serializedField = serializeFieldSchema(registry, fieldName, fieldSchema, context);
301
+ if (serializedField.serializedValue.length > 0) {
302
+ bodyEntries.push(serializedField.serializedValue);
303
+ }
304
+ referencedVariables = mergeVariables(referencedVariables, serializedField.referencedVariables);
305
+ }
306
+ return { bodyEntries, referencedVariables };
307
+ }
308
+ //# sourceMappingURL=serializer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serializer.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/serializer.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,OAAO,EACH,aAAa,EAEhB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAOH,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EAKnB,iBAAiB,EACjB,sBAAsB,EACzB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGH,eAAe,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAgB1D,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC,MAAM,wBAAwB,GAAG,iEAAiE;IAC9F,oEAAoE;IACpE,8FAA8F,CAAC;AAEnG,SAAS,qBAAqB,CAC1B,SAAkE,EAClE,MAAkB;IAElB,MAAM,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACjE,IAAI,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3B,OAAO,aAAa,CAAC;IACzB,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,qBAAqB,CAC1B,SAAkE,EAClE,MAAwB;IAExB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IAClC,MAAM,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC;IACnC,MAAM,sBAAsB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACrE,IAAI,SAAS,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACpC,OAAO,sBAAsB,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CAAC,MAA0B;IAC/C,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,qBAAqB,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,qBAAqB,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,cAAc,CAAC,MAAyB;IAC7C,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,qBAAqB,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,qBAAqB,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,wBAAwB,CAC7B,QAA8B,EAC9B,MAAmB;IAEnB,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,KAAK,GAAkB,CAAC,GAAG,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACrG,KAAK,MAAM,aAAa,IAAI,KAAK,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACjD,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,YAAY,CAAC;QACxB,CAAC;IACL,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,uBAAuB,CAC5B,QAA8B,EAC9B,SAAiB,EACjB,WAAwB;IAExB,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,wBAAwB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACjF,MAAM,YAAY,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,KAAK,QAAQ,EAAE,CAAC;IACtF,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,mBAAmB,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IAC7E,CAAC;IACD,MAAM,uBAAuB,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IACnE,OAAO;QACH,eAAe,EAAE,GAAG,YAAY,GAAG,uBAAuB,CAAC,eAAe,EAAE;QAC5E,mBAAmB,EAAE,uBAAuB,CAAC,mBAAmB;KACnE,CAAC;AACN,CAAC;AAED,SAAS,gCAAgC,CACrC,aAAqC,EACrC,SAAiC;IAEjC,OAAO;QACH,eAAe,EAAE,GAAG,aAAa,CAAC,eAAe,GAAG,SAAS,CAAC,eAAe,EAAE;QAC/E,mBAAmB,EAAE,cAAc,CAAC,aAAa,CAAC,mBAAmB,EAAE,SAAS,CAAC,mBAAmB,CAAC;KACxG,CAAC;AACN,CAAC;AAED,SAAS,wBAAwB,CAC7B,SAAgC;IAEhC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,YAAY,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAChD,OAAO,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,mBAAmB,CACxB,SAAgC;IAEhC,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,OAAO,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;AACpE,CAAC;AAED,SAAS,iBAAiB,CACtB,SAAgC;IAEhC,IAAI,SAAS,YAAY,aAAa,EAAE,CAAC;QACrC,OAAO,EAAE,CAAC;IACd,CAAC;IACD,MAAM,aAAa,GAAG,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAC1D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,aAAa,CAAC;IACzB,CAAC;IACD,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,gCAAgC,CACrC,QAA8B,EAC9B,YAA4C;IAE5C,IAAI,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;QACnD,OAAO;IACX,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,uBAAuB,CACnC,QAA8B,EAC9B,SAAqB;IAErB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAe,CAAC;IAExC,SAAS,WAAW,CAAC,YAA4C;QAC7D,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7B,gCAAgC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACzD,OAAO;QACX,CAAC;QACD,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACnE,uFAAuF;YACvF,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAClC,CAAC;IAED,SAAS,UAAU,CAAC,WAAwB;QACxC,IAAI,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,OAAO;QACX,CAAC;QACD,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACjD,KAAK,MAAM,YAAY,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACtD,WAAW,CAAC,YAAY,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IAED,KAAK,MAAM,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACjD,UAAU,CAAC,WAAW,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB,EAAE,kBAAuC;IACnF,MAAM,SAAS,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC9D,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAC5C,OAAO,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,4BAA4B,CACjC,QAA8B,EAC9B,YAA4C,EAC5C,OAAqB;IAErB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,KAAK,GAAG,4BAA4B,EAAE,CAAC;QACvC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACzD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAChF,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACtD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,uBAAuB,CAC5B,QAA8B,EAC9B,UAA8B,EAC9B,YAA4C,EAC5C,OAAqB;IAErB,uFAAuF;IACvF,MAAM,IAAI,GAAG,2BAA2B,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC1E,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE;QAC7C,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,IAAI,EAAE,IAAI,CAAC,eAAe;QAC1B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;KAChD,CAAC,CAAC;AACP,CAAC;AAED,SAAS,uBAAuB,CAC5B,QAA8B,EAC9B,YAA4C,EAC5C,OAAqB;IAErB,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACzD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,MAAM,UAAU,GAAG,4BAA4B,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACjF,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,uBAAuB,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACrE,OAAO,UAAU,CAAC,YAAY,CAAC;AACnC,CAAC;AAED,SAAS,2BAA2B,CAChC,QAA8B,EAC9B,YAAwE,EACxE,OAAqB;IAErB,MAAM,OAAO,GAAG,MAAM;SACjB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;SACpC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE;QAC3B,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IACP,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,OAAO,EAAE,CAAC;QAC7C,gFAAgF;QAChF,MAAM,eAAe,GAAG,oBAAoB,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACxF,mBAAmB,GAAG,cAAc,CAAC,mBAAmB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;QAC/F,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO;QACH,eAAe,EAAE,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACvD,mBAAmB;KACtB,CAAC;AACN,CAAC;AAED,SAAS,0BAA0B,CAC/B,YAAoB,EACpB,OAAqB;IAErB,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACzD,OAAO;QACH,eAAe,EAAE,MAAM,YAAY,EAAE;QACrC,mBAAmB,EAAE,UAAU,EAAE,mBAAmB,IAAI,IAAI,GAAG,EAAE;KACpE,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAChC,YAAoB,EACpB,OAAqB;IAErB,MAAM,SAAS,GAAG,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACpE,OAAO;QACH,eAAe,EAAE,MAAM,SAAS,CAAC,eAAe,IAAI;QACpD,mBAAmB,EAAE,SAAS,CAAC,mBAAmB;KACrD,CAAC;AACN,CAAC;AAED,SAAS,uBAAuB,CAC5B,kBAAsC,EACtC,KAAa;IAEb,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,eAAe,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,KAA2B,CAAC;AACvC,CAAC;AAED,SAAS,0BAA0B,CAC/B,QAA8B,EAC9B,iBAAqC,EACrC,cAAyC,EACzC,OAAqB;IAErB,MAAM,kBAAkB,GAAG,2BAA2B,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAC1F,OAAO;QACH,eAAe,EAAE,UAAU,iBAAiB,CAAC,QAAQ,EAAE,GAAG,kBAAkB,CAAC,eAAe,EAAE;QAC9F,mBAAmB,EAAE,kBAAkB,CAAC,mBAAmB;KAC9D,CAAC;AACN,CAAC;AAED,SAAS,4BAA4B,CACjC,QAA8B,EAC9B,iBAAqC,EACrC,cAAyC,EACzC,OAAqB;IAErB,MAAM,YAAY,GAAG,uBAAuB,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAChF,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,0BAA0B,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAC5F,CAAC;AAED,SAAS,kBAAkB,CACvB,QAA8B,EAC9B,gBAAiC,EACjC,YAAkD,EAClD,OAAqB;IAErB,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,MAAM,mBAAmB,GAAa,EAAE,CAAC;IACzC,MAAM,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE;QAC7D,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACrG,CAAC,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;QAC9D,OAAO,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;IACH,KAAK,MAAM,EAAE,iBAAiB,EAAE,cAAc,EAAE,IAAI,aAAa,EAAE,CAAC;QAChE,MAAM,YAAY,GAAG,4BAA4B,CAAC,QAAQ,EAAE,iBAAiB,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;QACxG,mBAAmB,GAAG,cAAc,CAAC,mBAAmB,EAAE,YAAY,CAAC,mBAAmB,CAAC,CAAC;QAC5F,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO;QACH,eAAe,EAAE,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QACzD,mBAAmB;KACtB,CAAC;AACN,CAAC;AAED,SAAS,oBAAoB,CACzB,QAA8B,EAC9B,aAAqC,EACrC,YAA4C,EAC5C,OAAqB;IAErB,MAAM,YAAY,GAAG,uBAAuB,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IAC9E,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,gCAAgC,CACnC,aAAa,EACb,2BAA2B,CAAC,YAAY,EAAE,OAAO,CAAC,CACrD,CAAC;IACN,CAAC;IACD,OAAO,gCAAgC,CACnC,aAAa,EACb,2BAA2B,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,CAAC,CAC/D,CAAC;AACN,CAAC;AAED,SAAS,mBAAmB,CACxB,QAA8B,EAC9B,aAAqC,EACrC,WAA4B,EAC5B,OAAqB;IAErB,OAAO,gCAAgC,CACnC,aAAa,EACb,kBAAkB,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CACnG,CAAC;AACN,CAAC;AAED,SAAS,uBAAuB,CAC5B,QAA8B,EAC9B,aAAqC,EACrC,SAAgC,EAChC,OAAqB;IAErB,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,YAAY,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,sBAAsB,CAC3B,QAA8B,EAC9B,aAAqC,EACrC,SAAgC,EAChC,OAAqB;IAErB,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,mBAAmB,CAAC,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,2BAA2B,CAChC,QAA8B,EAC9B,aAAqC,EACrC,SAAgC,EAChC,OAAqB;IAErB,IAAI,SAAS,YAAY,aAAa,EAAE,CAAC;QACrC,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,mBAAmB,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IACnE,CAAC;IACD,OAAO,uBAAuB,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC;QACvE,sBAAsB,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,oBAAoB,CACzB,QAA8B,EAC9B,SAAiB,EACjB,WAAwB,EACxB,OAAqB;IAErB,MAAM,aAAa,GAAG,uBAAuB,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAChF,IAAI,oBAAoB,CAAC,WAAW,CAAC,EAAE,CAAC;QACpC,OAAO,aAAa,CAAC;IACzB,CAAC;IACD,MAAM,SAAS,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACjD,OAAO,2BAA2B,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,aAAa,CAAC;AACrG,CAAC;AAED,MAAM,UAAU,kBAAkB,CAC9B,QAA8B,EAC9B,SAAqB,EACrB,OAAqB;IAErB,IAAI,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE;QAC1E,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,KAAK,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,aAAa,EAAE,CAAC;QACnD,MAAM,eAAe,GAAG,oBAAoB,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACxF,IAAI,eAAe,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7C,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;QACtD,CAAC;QACD,mBAAmB,GAAG,cAAc,CAAC,mBAAmB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;IACnG,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC;AAChD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type FieldSchema, type FieldShape, type StrictObjectSchema } from './query-schema.js';
2
+ import type { GraphqlValue } from './values/value.js';
3
+ export type GraphqlFieldOptions = {
4
+ aliasFor?: string;
5
+ parameters?: Record<string, GraphqlValue>;
6
+ typeName?: string;
7
+ };
8
+ //# sourceMappingURL=type-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-name.d.ts","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/type-name.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,kBAAkB,EAE1B,MAAM,mBAAmB;AAE1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB;AAErD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,45 @@
1
+ /* eslint-disable no-underscore-dangle -- we need to access _zod */
2
+ import { $ZodLiteral } from 'zod/v4/core';
3
+ import { unwrapFieldSchema } from './query-schema.js';
4
+ import { isValidGraphqlName } from './values/name.js';
5
+ function extractLiteralStringValue(schema) {
6
+ const unwrapped = unwrapFieldSchema(schema);
7
+ if (!(unwrapped instanceof $ZodLiteral)) {
8
+ return null;
9
+ }
10
+ const { values } = unwrapped._zod.def;
11
+ if (values.length !== 1) {
12
+ return null;
13
+ }
14
+ const [value] = values;
15
+ if (typeof value !== 'string') {
16
+ return null;
17
+ }
18
+ return value;
19
+ }
20
+ function inferTypeNameFromShape(schema) {
21
+ const typenameField = schema._zod.def.shape.__typename;
22
+ if (typenameField === undefined) {
23
+ return null;
24
+ }
25
+ const value = extractLiteralStringValue(typenameField);
26
+ if (value === null || !isValidGraphqlName(value)) {
27
+ return null;
28
+ }
29
+ return value;
30
+ }
31
+ function assertNoTypeNameConflict(explicit, inferred) {
32
+ if (explicit === null || inferred === null || explicit === inferred) {
33
+ return;
34
+ }
35
+ const prefix = `Conflicting GraphQL type name for schema: registered as "${explicit}" but `;
36
+ const suffix = `\`__typename\` literal is "${inferred}".`;
37
+ throw new Error(prefix + suffix);
38
+ }
39
+ export function resolveTypeName(registry, schema) {
40
+ const explicit = registry.get(schema)?.typeName ?? null;
41
+ const inferred = inferTypeNameFromShape(schema);
42
+ assertNoTypeNameConflict(explicit, inferred);
43
+ return explicit ?? inferred;
44
+ }
45
+ //# sourceMappingURL=type-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-name.js","sourceRoot":"","sources":["../../../../source/zod-graphql-query-builder/type-name.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAIH,iBAAiB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAWtD,SAAS,yBAAyB,CAAC,MAAmB;IAClD,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,SAAS,YAAY,WAAW,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;IACtC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IACvB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAsC;IAClE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;IACvD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,KAAK,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACvD,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAuB,EAAE,QAAuB;IAC9E,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClE,OAAO;IACX,CAAC;IACD,MAAM,MAAM,GAAG,4DAA4D,QAAQ,QAAQ,CAAC;IAC5F,MAAM,MAAM,GAAG,8BAA8B,QAAQ,IAAI,CAAC;IAC1D,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,eAAe,CAC3B,QAA8B,EAC9B,MAAsC;IAEtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,IAAI,IAAI,CAAC;IACxD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAChD,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC7C,OAAO,QAAQ,IAAI,QAAQ,CAAC;AAChC,CAAC"}
@@ -2,6 +2,4 @@ export type GraphqlEnumValue = {
2
2
  readonly enumValue: string;
3
3
  readonly tag: symbol;
4
4
  };
5
- export declare function isEnumValue(value: unknown): value is GraphqlEnumValue;
6
- export declare function enumValue(value: string): GraphqlEnumValue;
7
5
  //# sourceMappingURL=enum.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/enum.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB,CAAC;AAIF,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAErE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,gBAAgB,CASzD"}
1
+ {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../../../source/zod-graphql-query-builder/values/enum.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACxB"}
@@ -4,13 +4,5 @@ const enumValueSymbol = Symbol('GraphQL enum value');
4
4
  export function isEnumValue(value) {
5
5
  return isRecord(value) && hasProperty(value, 'tag') && value.tag === enumValueSymbol;
6
6
  }
7
- export function enumValue(value) {
8
- if (!isValidGraphqlName(value)) {
9
- throw new Error(`Enum value "${value}" is not a valid enum value`);
10
- }
11
- return {
12
- enumValue: value,
13
- tag: enumValueSymbol
14
- };
15
- }
7
+
16
8
  //# sourceMappingURL=enum.js.map