@graphitation/supermassive 3.9.0 → 3.10.1

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 (39) hide show
  1. package/.eslintcache +1 -1
  2. package/CHANGELOG.md +10 -2
  3. package/lib/__testUtils__/execute.js +77 -121
  4. package/lib/__testUtils__/execute.js.map +1 -1
  5. package/lib/__testUtils__/execute.mjs +77 -124
  6. package/lib/__testUtils__/execute.mjs.map +1 -1
  7. package/lib/benchmarks/index.js +41 -63
  8. package/lib/benchmarks/index.js.map +1 -1
  9. package/lib/benchmarks/index.mjs +152 -184
  10. package/lib/benchmarks/index.mjs.map +1 -1
  11. package/lib/benchmarks/nice-benchmark.js +3 -23
  12. package/lib/benchmarks/nice-benchmark.js.map +1 -1
  13. package/lib/benchmarks/nice-benchmark.mjs +3 -24
  14. package/lib/benchmarks/nice-benchmark.mjs.map +1 -1
  15. package/lib/benchmarks/swapi-schema/makeExecutableSchema.js +78 -68
  16. package/lib/benchmarks/swapi-schema/makeExecutableSchema.js.map +1 -1
  17. package/lib/benchmarks/swapi-schema/makeExecutableSchema.mjs +78 -71
  18. package/lib/benchmarks/swapi-schema/makeExecutableSchema.mjs.map +1 -1
  19. package/lib/benchmarks/swapi-schema/resolvers.js +31 -71
  20. package/lib/benchmarks/swapi-schema/resolvers.js.map +1 -1
  21. package/lib/benchmarks/swapi-schema/resolvers.mjs +31 -74
  22. package/lib/benchmarks/swapi-schema/resolvers.mjs.map +1 -1
  23. package/lib/executeWithoutSchema.js +199 -248
  24. package/lib/executeWithoutSchema.js.map +1 -1
  25. package/lib/executeWithoutSchema.mjs +199 -251
  26. package/lib/executeWithoutSchema.mjs.map +1 -1
  27. package/lib/legacyAST/addTypesToRequestDocument.js +6 -21
  28. package/lib/legacyAST/addTypesToRequestDocument.js.map +1 -1
  29. package/lib/legacyAST/addTypesToRequestDocument.mjs +6 -24
  30. package/lib/legacyAST/addTypesToRequestDocument.mjs.map +1 -1
  31. package/lib/utilities/addMinimalViableSchemaToRequestDocument.js +9 -23
  32. package/lib/utilities/addMinimalViableSchemaToRequestDocument.js.map +1 -1
  33. package/lib/utilities/addMinimalViableSchemaToRequestDocument.mjs +9 -26
  34. package/lib/utilities/addMinimalViableSchemaToRequestDocument.mjs.map +1 -1
  35. package/lib/utilities/mapAsyncIterator.js +19 -47
  36. package/lib/utilities/mapAsyncIterator.js.map +1 -1
  37. package/lib/utilities/mapAsyncIterator.mjs +19 -48
  38. package/lib/utilities/mapAsyncIterator.mjs.map +1 -1
  39. package/package.json +1 -1
@@ -1,23 +1,3 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
-
21
1
  // src/benchmarks/swapi-schema/makeExecutableSchema.ts
22
2
  import {
23
3
  GraphQLBoolean,
@@ -69,12 +49,13 @@ var createNewSchemaWithResolvers = (schema, resolvers) => {
69
49
  if (fieldName.startsWith("__")) {
70
50
  config[fieldName.substring(2)] = resolverValue[fieldName];
71
51
  } else if (fieldName === "astNode" && config.astNode != null) {
72
- config.astNode = __spreadProps(__spreadValues({}, config.astNode), {
52
+ config.astNode = {
53
+ ...config.astNode,
73
54
  description: (_b = (_a = resolverValue == null ? void 0 : resolverValue.astNode) == null ? void 0 : _a.description) != null ? _b : config.astNode.description,
74
55
  directives: ((_c = config.astNode.directives) != null ? _c : []).concat(
75
56
  (_e = (_d = resolverValue == null ? void 0 : resolverValue.astNode) == null ? void 0 : _d.directives) != null ? _e : []
76
57
  )
77
- });
58
+ };
78
59
  } else if (fieldName === "extensionASTNodes" && config.extensionASTNodes != null) {
79
60
  config.extensionASTNodes = config.extensionASTNodes.concat(
80
61
  (_f = resolverValue == null ? void 0 : resolverValue.extensionASTNodes) != null ? _f : []
@@ -102,12 +83,13 @@ var createNewSchemaWithResolvers = (schema, resolvers) => {
102
83
  if (fieldName.startsWith("__")) {
103
84
  config[fieldName.substring(2)] = resolverValue[fieldName];
104
85
  } else if (fieldName === "astNode" && config.astNode != null) {
105
- config.astNode = __spreadProps(__spreadValues({}, config.astNode), {
86
+ config.astNode = {
87
+ ...config.astNode,
106
88
  description: (_b = (_a = resolverValue == null ? void 0 : resolverValue.astNode) == null ? void 0 : _a.description) != null ? _b : config.astNode.description,
107
89
  directives: ((_c = config.astNode.directives) != null ? _c : []).concat(
108
90
  (_e = (_d = resolverValue == null ? void 0 : resolverValue.astNode) == null ? void 0 : _d.directives) != null ? _e : []
109
91
  )
110
- });
92
+ };
111
93
  } else if (fieldName === "extensionASTNodes" && config.extensionASTNodes != null) {
112
94
  config.extensionASTNodes = config.extensionASTNodes.concat(
113
95
  (_f = resolverValue == null ? void 0 : resolverValue.extensionASTNodes) != null ? _f : []
@@ -160,7 +142,7 @@ var createNewSchemaWithResolvers = (schema, resolvers) => {
160
142
  if (resolverValue != null) {
161
143
  const fieldResolve = resolverValue[fieldName];
162
144
  if (fieldResolve != null) {
163
- const newFieldConfig = __spreadValues({}, fieldConfig);
145
+ const newFieldConfig = { ...fieldConfig };
164
146
  if (typeof fieldResolve === "function") {
165
147
  newFieldConfig.resolve = fieldResolve.bind(resolverValue);
166
148
  } else {
@@ -213,7 +195,8 @@ function mapSchema(schema, schemaMapper = {}) {
213
195
  const originalDirectives = schema.getDirectives();
214
196
  const newDirectives = mapDirectives(originalDirectives, schema, schemaMapper);
215
197
  const { typeMap, directives } = rewireTypes(newTypeMap, newDirectives);
216
- return new GraphQLSchema(__spreadProps(__spreadValues({}, schema.toConfig()), {
198
+ return new GraphQLSchema({
199
+ ...schema.toConfig(),
217
200
  query: getObjectTypeFromTypeMap(
218
201
  typeMap,
219
202
  getObjectTypeFromTypeMap(newTypeMap, schema.getQueryType())
@@ -228,7 +211,7 @@ function mapSchema(schema, schemaMapper = {}) {
228
211
  ),
229
212
  types: Object.values(typeMap),
230
213
  directives
231
- }));
214
+ });
232
215
  }
233
216
  function mapTypes(originalTypeMap, schema, schemaMapper, testFn = () => true) {
234
217
  const newTypeMap = {};
@@ -285,9 +268,10 @@ function mapEnumValues(originalTypeMap, schema, schemaMapper) {
285
268
  }
286
269
  }
287
270
  return correctASTNodes(
288
- new GraphQLEnumType(__spreadProps(__spreadValues({}, config), {
271
+ new GraphQLEnumType({
272
+ ...config,
289
273
  values: newEnumValueConfigMap
290
- }))
274
+ })
291
275
  );
292
276
  }
293
277
  },
@@ -302,9 +286,10 @@ function mapDefaultValues(originalTypeMap, schema, fn) {
302
286
  }
303
287
  const maybeNewType = getNewType(originalTypeMap, argumentConfig.type);
304
288
  if (maybeNewType != null) {
305
- return __spreadProps(__spreadValues({}, argumentConfig), {
289
+ return {
290
+ ...argumentConfig,
306
291
  defaultValue: fn(maybeNewType, argumentConfig.defaultValue)
307
- });
292
+ };
308
293
  }
309
294
  }
310
295
  });
@@ -315,9 +300,10 @@ function mapDefaultValues(originalTypeMap, schema, fn) {
315
300
  }
316
301
  const maybeNewType = getNewType(newTypeMap, inputFieldConfig.type);
317
302
  if (maybeNewType != null) {
318
- return __spreadProps(__spreadValues({}, inputFieldConfig), {
303
+ return {
304
+ ...inputFieldConfig,
319
305
  defaultValue: fn(maybeNewType, inputFieldConfig.defaultValue)
320
- });
306
+ };
321
307
  }
322
308
  }
323
309
  });
@@ -365,11 +351,13 @@ function mapFields(originalTypeMap, schema, schemaMapper) {
365
351
  } else if (Array.isArray(mappedField)) {
366
352
  const [newFieldName, newFieldConfig] = mappedField;
367
353
  if (newFieldConfig.astNode != null) {
368
- newFieldConfig.astNode = __spreadProps(__spreadValues({}, newFieldConfig.astNode), {
369
- name: __spreadProps(__spreadValues({}, newFieldConfig.astNode.name), {
354
+ newFieldConfig.astNode = {
355
+ ...newFieldConfig.astNode,
356
+ name: {
357
+ ...newFieldConfig.astNode.name,
370
358
  value: newFieldName
371
- })
372
- });
359
+ }
360
+ };
373
361
  }
374
362
  newFieldConfigMap[newFieldName] = newFieldConfig === void 0 ? originalFieldConfig : newFieldConfig;
375
363
  } else if (mappedField !== null) {
@@ -378,21 +366,24 @@ function mapFields(originalTypeMap, schema, schemaMapper) {
378
366
  }
379
367
  if (isObjectType(originalType)) {
380
368
  newTypeMap[typeName] = correctASTNodes(
381
- new GraphQLObjectType(__spreadProps(__spreadValues({}, config), {
369
+ new GraphQLObjectType({
370
+ ...config,
382
371
  fields: newFieldConfigMap
383
- }))
372
+ })
384
373
  );
385
374
  } else if (isInterfaceType(originalType)) {
386
375
  newTypeMap[typeName] = correctASTNodes(
387
- new GraphQLInterfaceType(__spreadProps(__spreadValues({}, config), {
376
+ new GraphQLInterfaceType({
377
+ ...config,
388
378
  fields: newFieldConfigMap
389
- }))
379
+ })
390
380
  );
391
381
  } else {
392
382
  newTypeMap[typeName] = correctASTNodes(
393
- new GraphQLInputObjectType(__spreadProps(__spreadValues({}, config), {
383
+ new GraphQLInputObjectType({
384
+ ...config,
394
385
  fields: newFieldConfigMap
395
- }))
386
+ })
396
387
  );
397
388
  }
398
389
  }
@@ -446,22 +437,26 @@ function mapArguments(originalTypeMap, schema, schemaMapper) {
446
437
  newArgumentConfigMap[argumentName] = mappedArgument;
447
438
  }
448
439
  }
449
- newFieldConfigMap[fieldName] = __spreadProps(__spreadValues({}, originalFieldConfig), {
440
+ newFieldConfigMap[fieldName] = {
441
+ ...originalFieldConfig,
450
442
  args: newArgumentConfigMap
451
- });
443
+ };
452
444
  }
453
445
  if (isObjectType(originalType)) {
454
- newTypeMap[typeName] = new GraphQLObjectType(__spreadProps(__spreadValues({}, config), {
446
+ newTypeMap[typeName] = new GraphQLObjectType({
447
+ ...config,
455
448
  fields: newFieldConfigMap
456
- }));
449
+ });
457
450
  } else if (isInterfaceType(originalType)) {
458
- newTypeMap[typeName] = new GraphQLInterfaceType(__spreadProps(__spreadValues({}, config), {
451
+ newTypeMap[typeName] = new GraphQLInterfaceType({
452
+ ...config,
459
453
  fields: newFieldConfigMap
460
- }));
454
+ });
461
455
  } else {
462
- newTypeMap[typeName] = new GraphQLInputObjectType(__spreadProps(__spreadValues({}, config), {
456
+ newTypeMap[typeName] = new GraphQLInputObjectType({
457
+ ...config,
463
458
  fields: newFieldConfigMap
464
- }));
459
+ });
465
460
  }
466
461
  }
467
462
  }
@@ -583,13 +578,15 @@ function correctASTNodes(type) {
583
578
  fields.push(fieldConfig.astNode);
584
579
  }
585
580
  }
586
- config.astNode = __spreadProps(__spreadValues({}, config.astNode), {
581
+ config.astNode = {
582
+ ...config.astNode,
587
583
  kind: Kind.OBJECT_TYPE_DEFINITION,
588
584
  fields
589
- });
585
+ };
590
586
  }
591
587
  if (config.extensionASTNodes != null) {
592
- config.extensionASTNodes = config.extensionASTNodes.map((node) => __spreadProps(__spreadValues({}, node), {
588
+ config.extensionASTNodes = config.extensionASTNodes.map((node) => ({
589
+ ...node,
593
590
  kind: Kind.OBJECT_TYPE_EXTENSION,
594
591
  fields: void 0
595
592
  }));
@@ -605,13 +602,15 @@ function correctASTNodes(type) {
605
602
  fields.push(fieldConfig.astNode);
606
603
  }
607
604
  }
608
- config.astNode = __spreadProps(__spreadValues({}, config.astNode), {
605
+ config.astNode = {
606
+ ...config.astNode,
609
607
  kind: Kind.INTERFACE_TYPE_DEFINITION,
610
608
  fields
611
- });
609
+ };
612
610
  }
613
611
  if (config.extensionASTNodes != null) {
614
- config.extensionASTNodes = config.extensionASTNodes.map((node) => __spreadProps(__spreadValues({}, node), {
612
+ config.extensionASTNodes = config.extensionASTNodes.map((node) => ({
613
+ ...node,
615
614
  kind: Kind.INTERFACE_TYPE_EXTENSION,
616
615
  fields: void 0
617
616
  }));
@@ -627,13 +626,15 @@ function correctASTNodes(type) {
627
626
  fields.push(fieldConfig.astNode);
628
627
  }
629
628
  }
630
- config.astNode = __spreadProps(__spreadValues({}, config.astNode), {
629
+ config.astNode = {
630
+ ...config.astNode,
631
631
  kind: Kind.INPUT_OBJECT_TYPE_DEFINITION,
632
632
  fields
633
- });
633
+ };
634
634
  }
635
635
  if (config.extensionASTNodes != null) {
636
- config.extensionASTNodes = config.extensionASTNodes.map((node) => __spreadProps(__spreadValues({}, node), {
636
+ config.extensionASTNodes = config.extensionASTNodes.map((node) => ({
637
+ ...node,
637
638
  kind: Kind.INPUT_OBJECT_TYPE_EXTENSION,
638
639
  fields: void 0
639
640
  }));
@@ -649,12 +650,14 @@ function correctASTNodes(type) {
649
650
  values.push(enumValueConfig.astNode);
650
651
  }
651
652
  }
652
- config.astNode = __spreadProps(__spreadValues({}, config.astNode), {
653
+ config.astNode = {
654
+ ...config.astNode,
653
655
  values
654
- });
656
+ };
655
657
  }
656
658
  if (config.extensionASTNodes != null) {
657
- config.extensionASTNodes = config.extensionASTNodes.map((node) => __spreadProps(__spreadValues({}, node), {
659
+ config.extensionASTNodes = config.extensionASTNodes.map((node) => ({
660
+ ...node,
658
661
  values: void 0
659
662
  }));
660
663
  }
@@ -727,16 +730,18 @@ function rewireTypes(originalTypeMap, directives) {
727
730
  function rewireNamedType(type) {
728
731
  if (isObjectType(type)) {
729
732
  const config = type.toConfig();
730
- const newConfig = __spreadProps(__spreadValues({}, config), {
733
+ const newConfig = {
734
+ ...config,
731
735
  fields: () => rewireFields(config.fields),
732
736
  interfaces: () => rewireNamedTypes(config.interfaces)
733
- });
737
+ };
734
738
  return new GraphQLObjectType(newConfig);
735
739
  } else if (isInterfaceType(type)) {
736
740
  const config = type.toConfig();
737
- const newConfig = __spreadProps(__spreadValues({}, config), {
741
+ const newConfig = {
742
+ ...config,
738
743
  fields: () => rewireFields(config.fields)
739
- });
744
+ };
740
745
  if ("interfaces" in newConfig) {
741
746
  newConfig.interfaces = () => rewireNamedTypes(
742
747
  config.interfaces
@@ -745,15 +750,17 @@ function rewireTypes(originalTypeMap, directives) {
745
750
  return new GraphQLInterfaceType(newConfig);
746
751
  } else if (isUnionType(type)) {
747
752
  const config = type.toConfig();
748
- const newConfig = __spreadProps(__spreadValues({}, config), {
753
+ const newConfig = {
754
+ ...config,
749
755
  types: () => rewireNamedTypes(config.types)
750
- });
756
+ };
751
757
  return new GraphQLUnionType(newConfig);
752
758
  } else if (isInputObjectType(type)) {
753
759
  const config = type.toConfig();
754
- const newConfig = __spreadProps(__spreadValues({}, config), {
760
+ const newConfig = {
761
+ ...config,
755
762
  fields: () => rewireInputFields(config.fields)
756
- });
763
+ };
757
764
  return new GraphQLInputObjectType(newConfig);
758
765
  } else if (isEnumType(type)) {
759
766
  const enumConfig = type.toConfig();
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/benchmarks/swapi-schema/makeExecutableSchema.ts"],
4
4
  "sourcesContent": ["/* eslint-disable @typescript-eslint/no-explicit-any */\n/*\n * Taken from https://github.com/ardatan/graphql-tools/blob/820b4d3e052a8fb08b96a9d45456355a7affc168/\n * MIT license https://github.com/ardatan/graphql-tools/blob/820b4d3e052a8fb08b96a9d45456355a7affc168/LICENSE\n */\n\nimport {\n DocumentNode,\n EnumValueDefinitionNode,\n FieldDefinitionNode,\n GraphQLArgumentConfig,\n GraphQLBoolean,\n GraphQLDirective,\n GraphQLEnumType,\n GraphQLEnumValueConfig,\n GraphQLEnumValueConfigMap,\n GraphQLField,\n GraphQLFieldConfig,\n GraphQLFieldConfigArgumentMap,\n GraphQLFieldConfigMap,\n GraphQLFloat,\n GraphQLID,\n GraphQLInputFieldConfig,\n GraphQLInputFieldConfigMap,\n GraphQLInputObjectType,\n GraphQLInputObjectTypeConfig,\n GraphQLInputType,\n GraphQLInt,\n GraphQLInterfaceType,\n GraphQLInterfaceTypeConfig,\n GraphQLList,\n GraphQLNamedType,\n GraphQLNonNull,\n GraphQLObjectType,\n GraphQLObjectTypeConfig,\n GraphQLScalarType,\n GraphQLSchema,\n GraphQLString,\n GraphQLType,\n GraphQLUnionType,\n InputValueDefinitionNode,\n Kind,\n buildASTSchema,\n getNullableType,\n isEnumType,\n isInputObjectType,\n isInterfaceType,\n isLeafType,\n isListType,\n isNamedType,\n isNonNullType,\n isObjectType,\n isScalarType,\n isSpecifiedDirective,\n isSpecifiedScalarType,\n isUnionType,\n} from \"graphql\";\nimport { Resolvers } from \"../../types\";\nimport { Maybe } from \"../../jsutils/Maybe\";\n\nexport const makeExecutableSchema = <TSource, TContext>({\n typeDefs,\n resolvers,\n}: {\n typeDefs: DocumentNode;\n resolvers: Resolvers<TSource, TContext>;\n}): GraphQLSchema => {\n const schema = buildASTSchema(typeDefs);\n return createNewSchemaWithResolvers(schema, resolvers);\n};\n\nconst createNewSchemaWithResolvers = <TSource, TContext>(\n schema: GraphQLSchema,\n resolvers: Resolvers<TSource, TContext>,\n): GraphQLSchema => {\n schema = mapSchema(schema, {\n [MapperKind.SCALAR_TYPE]: (type) => {\n const config = type.toConfig();\n const resolverValue: any = resolvers[type.name];\n if (!isSpecifiedScalarType(type) && resolverValue != null) {\n for (const fieldName in resolverValue) {\n if (fieldName.startsWith(\"__\")) {\n (config as any)[fieldName.substring(2)] = resolverValue[fieldName];\n } else if (fieldName === \"astNode\" && config.astNode != null) {\n config.astNode = {\n ...config.astNode,\n description:\n (resolverValue as GraphQLScalarType)?.astNode?.description ??\n config.astNode.description,\n directives: (config.astNode.directives ?? []).concat(\n (resolverValue as GraphQLScalarType)?.astNode?.directives ?? [],\n ),\n };\n } else if (\n fieldName === \"extensionASTNodes\" &&\n config.extensionASTNodes != null\n ) {\n config.extensionASTNodes = config.extensionASTNodes.concat(\n (resolverValue as GraphQLScalarType)?.extensionASTNodes ?? [],\n );\n } else if (\n fieldName === \"extensions\" &&\n config.extensions != null &&\n (resolverValue as GraphQLScalarType).extensions != null\n ) {\n config.extensions = Object.assign(\n Object.create(null),\n type.extensions,\n (resolverValue as GraphQLScalarType).extensions,\n );\n } else {\n (config as any)[fieldName] = resolverValue[fieldName];\n }\n }\n\n return new GraphQLScalarType(config);\n }\n },\n [MapperKind.ENUM_TYPE]: (type) => {\n const resolverValue: any = resolvers[type.name];\n\n const config = type.toConfig();\n const enumValueConfigMap = config.values;\n\n if (resolverValue != null) {\n for (const fieldName in resolverValue) {\n if (fieldName.startsWith(\"__\")) {\n (config as any)[fieldName.substring(2)] = resolverValue[fieldName];\n } else if (fieldName === \"astNode\" && config.astNode != null) {\n config.astNode = {\n ...config.astNode,\n description:\n (resolverValue as GraphQLScalarType)?.astNode?.description ??\n config.astNode.description,\n directives: (config.astNode.directives ?? []).concat(\n (resolverValue as GraphQLEnumType)?.astNode?.directives ?? [],\n ),\n };\n } else if (\n fieldName === \"extensionASTNodes\" &&\n config.extensionASTNodes != null\n ) {\n config.extensionASTNodes = config.extensionASTNodes.concat(\n (resolverValue as GraphQLEnumType)?.extensionASTNodes ?? [],\n );\n } else if (\n fieldName === \"extensions\" &&\n config.extensions != null &&\n (resolverValue as GraphQLEnumType).extensions != null\n ) {\n config.extensions = Object.assign(\n Object.create(null),\n type.extensions,\n (resolverValue as GraphQLEnumType).extensions,\n );\n } else if (enumValueConfigMap[fieldName]) {\n enumValueConfigMap[fieldName].value = resolverValue[fieldName];\n }\n }\n\n return new GraphQLEnumType(config);\n }\n },\n [MapperKind.UNION_TYPE]: (type) => {\n const resolverValue: any = resolvers[type.name];\n\n if (resolverValue != null) {\n const config = type.toConfig();\n\n if (resolverValue[\"__resolveType\"]) {\n config.resolveType = resolverValue[\"__resolveType\"];\n }\n\n return new GraphQLUnionType(config);\n }\n },\n [MapperKind.OBJECT_TYPE]: (type) => {\n const resolverValue: any = resolvers[type.name];\n if (resolverValue != null) {\n const config = type.toConfig();\n\n if (resolverValue[\"__isTypeOf\"]) {\n config.isTypeOf = resolverValue[\"__isTypeOf\"];\n }\n\n return new GraphQLObjectType(config);\n }\n },\n [MapperKind.INTERFACE_TYPE]: (type) => {\n const resolverValue: any = resolvers[type.name];\n if (resolverValue != null) {\n const config = type.toConfig();\n\n if (resolverValue[\"__resolveType\"]) {\n config.resolveType = resolverValue[\"__resolveType\"];\n }\n\n return new GraphQLInterfaceType(config);\n }\n },\n [MapperKind.COMPOSITE_FIELD]: (fieldConfig, fieldName, typeName) => {\n const resolverValue: any = resolvers[typeName];\n\n if (resolverValue != null) {\n const fieldResolve = resolverValue[fieldName];\n if (fieldResolve != null) {\n const newFieldConfig = { ...fieldConfig };\n if (typeof fieldResolve === \"function\") {\n // for convenience. Allows shorter syntax in resolver definition file\n newFieldConfig.resolve = fieldResolve.bind(resolverValue);\n } else {\n setFieldProperties(newFieldConfig, fieldResolve);\n }\n return newFieldConfig;\n }\n }\n },\n });\n\n function setFieldProperties(\n field: GraphQLField<any, any> | GraphQLFieldConfig<any, any>,\n propertiesObj: Record<string, any>,\n ) {\n for (const propertyName in propertiesObj) {\n (field as any)[propertyName] = propertiesObj[propertyName];\n }\n }\n\n return schema;\n};\n\nfunction mapSchema(\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper = {},\n): GraphQLSchema {\n const newTypeMap = mapArguments(\n mapFields(\n mapTypes(\n mapDefaultValues(\n mapEnumValues(\n mapTypes(\n mapDefaultValues(\n schema.getTypeMap(),\n schema,\n serializeInputValue,\n ),\n schema,\n schemaMapper,\n (type) => isLeafType(type),\n ),\n schema,\n schemaMapper,\n ),\n schema,\n parseInputValue,\n ),\n schema,\n schemaMapper,\n (type) => !isLeafType(type),\n ),\n schema,\n schemaMapper,\n ),\n schema,\n schemaMapper,\n );\n\n const originalDirectives = schema.getDirectives();\n const newDirectives = mapDirectives(originalDirectives, schema, schemaMapper);\n\n const { typeMap, directives } = rewireTypes(newTypeMap, newDirectives);\n\n return new GraphQLSchema({\n ...schema.toConfig(),\n query: getObjectTypeFromTypeMap(\n typeMap,\n getObjectTypeFromTypeMap(newTypeMap, schema.getQueryType()),\n ),\n mutation: getObjectTypeFromTypeMap(\n typeMap,\n getObjectTypeFromTypeMap(newTypeMap, schema.getMutationType()),\n ),\n subscription: getObjectTypeFromTypeMap(\n typeMap,\n getObjectTypeFromTypeMap(newTypeMap, schema.getSubscriptionType()),\n ),\n types: Object.values(typeMap),\n directives,\n });\n}\n\nfunction mapTypes(\n originalTypeMap: Record<string, GraphQLNamedType>,\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n testFn: (originalType: GraphQLNamedType) => boolean = () => true,\n): Record<string, GraphQLNamedType> {\n const newTypeMap: Record<string, GraphQLNamedType> = {};\n\n for (const typeName in originalTypeMap) {\n if (!typeName.startsWith(\"__\")) {\n const originalType = originalTypeMap[typeName];\n\n if (originalType == null || !testFn(originalType)) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n const typeMapper = getTypeMapper(schema, schemaMapper, typeName);\n\n if (typeMapper == null) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n const maybeNewType = typeMapper(originalType, schema);\n\n if (maybeNewType === undefined) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n newTypeMap[typeName] = maybeNewType as GraphQLNamedType;\n }\n }\n\n return newTypeMap;\n}\n\nfunction mapEnumValues(\n originalTypeMap: Record<string, GraphQLNamedType>,\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n): Record<string, GraphQLNamedType> {\n const enumValueMapper = getEnumValueMapper(schemaMapper);\n if (!enumValueMapper) {\n return originalTypeMap;\n }\n\n return mapTypes(\n originalTypeMap,\n schema,\n {\n [MapperKind.ENUM_TYPE]: (type) => {\n const config = type.toConfig();\n const originalEnumValueConfigMap = config.values;\n const newEnumValueConfigMap: GraphQLEnumValueConfigMap = {};\n for (const externalValue in originalEnumValueConfigMap) {\n const originalEnumValueConfig =\n originalEnumValueConfigMap[externalValue];\n const mappedEnumValue = enumValueMapper(\n originalEnumValueConfig,\n type.name,\n schema,\n externalValue,\n );\n if (mappedEnumValue === undefined) {\n newEnumValueConfigMap[externalValue] = originalEnumValueConfig;\n } else if (Array.isArray(mappedEnumValue)) {\n const [newExternalValue, newEnumValueConfig] = mappedEnumValue;\n newEnumValueConfigMap[newExternalValue] =\n newEnumValueConfig === undefined\n ? originalEnumValueConfig\n : newEnumValueConfig;\n } else if (mappedEnumValue !== null) {\n newEnumValueConfigMap[externalValue] = mappedEnumValue;\n }\n }\n return correctASTNodes(\n new GraphQLEnumType({\n ...config,\n values: newEnumValueConfigMap,\n }),\n );\n },\n },\n (type) => isEnumType(type),\n );\n}\n\nfunction mapDefaultValues(\n originalTypeMap: Record<string, GraphQLNamedType>,\n schema: GraphQLSchema,\n fn: IDefaultValueIteratorFn,\n): Record<string, GraphQLNamedType> {\n const newTypeMap = mapArguments(originalTypeMap, schema, {\n [MapperKind.ARGUMENT]: (argumentConfig) => {\n if (argumentConfig.defaultValue === undefined) {\n return argumentConfig;\n }\n\n const maybeNewType = getNewType(originalTypeMap, argumentConfig.type);\n if (maybeNewType != null) {\n return {\n ...argumentConfig,\n defaultValue: fn(maybeNewType, argumentConfig.defaultValue),\n };\n }\n },\n });\n\n return mapFields(newTypeMap, schema, {\n [MapperKind.INPUT_OBJECT_FIELD]: (inputFieldConfig) => {\n if (inputFieldConfig.defaultValue === undefined) {\n return inputFieldConfig;\n }\n\n const maybeNewType = getNewType(newTypeMap, inputFieldConfig.type);\n if (maybeNewType != null) {\n return {\n ...inputFieldConfig,\n defaultValue: fn(maybeNewType, inputFieldConfig.defaultValue),\n };\n }\n },\n });\n}\n\nfunction getNewType<T extends GraphQLType>(\n newTypeMap: Record<string, GraphQLNamedType>,\n type: T,\n): T | null {\n if (isListType(type)) {\n const newType = getNewType(newTypeMap, type.ofType);\n return newType != null ? (new GraphQLList(newType) as T) : null;\n } else if (isNonNullType(type)) {\n const newType = getNewType(newTypeMap, type.ofType);\n return newType != null ? (new GraphQLNonNull(newType) as T) : null;\n } else if (isNamedType(type)) {\n const newType = newTypeMap[type.name];\n return newType != null ? (newType as T) : null;\n }\n\n return null;\n}\n\nfunction mapFields(\n originalTypeMap: Record<string, GraphQLNamedType>,\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n): Record<string, GraphQLNamedType> {\n const newTypeMap: Record<string, GraphQLNamedType> = {};\n\n for (const typeName in originalTypeMap) {\n if (!typeName.startsWith(\"__\")) {\n const originalType = originalTypeMap[typeName];\n\n if (\n !isObjectType(originalType) &&\n !isInterfaceType(originalType) &&\n !isInputObjectType(originalType)\n ) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n const fieldMapper = getFieldMapper(schema, schemaMapper, typeName);\n if (fieldMapper == null) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n const config = originalType.toConfig();\n\n const originalFieldConfigMap = config.fields;\n const newFieldConfigMap:\n | GraphQLFieldConfigMap<unknown, unknown>\n | GraphQLInputFieldConfigMap = {};\n for (const fieldName in originalFieldConfigMap) {\n const originalFieldConfig = originalFieldConfigMap[fieldName];\n const mappedField = fieldMapper(\n originalFieldConfig,\n fieldName,\n typeName,\n schema,\n );\n if (mappedField === undefined) {\n newFieldConfigMap[fieldName] = originalFieldConfig;\n } else if (Array.isArray(mappedField)) {\n const [newFieldName, newFieldConfig] = mappedField;\n if (newFieldConfig.astNode != null) {\n newFieldConfig.astNode = {\n ...newFieldConfig.astNode,\n name: {\n ...newFieldConfig.astNode.name,\n value: newFieldName,\n },\n };\n }\n newFieldConfigMap[newFieldName] =\n newFieldConfig === undefined ? originalFieldConfig : newFieldConfig;\n } else if (mappedField !== null) {\n newFieldConfigMap[fieldName] = mappedField;\n }\n }\n\n if (isObjectType(originalType)) {\n newTypeMap[typeName] = correctASTNodes(\n new GraphQLObjectType({\n ...(config as GraphQLObjectTypeConfig<any, any>),\n fields: newFieldConfigMap as GraphQLFieldConfigMap<\n unknown,\n unknown\n >,\n }),\n );\n } else if (isInterfaceType(originalType)) {\n newTypeMap[typeName] = correctASTNodes(\n new GraphQLInterfaceType({\n ...(config as GraphQLInterfaceTypeConfig<any, any>),\n fields: newFieldConfigMap as GraphQLFieldConfigMap<\n unknown,\n unknown\n >,\n }),\n );\n } else {\n newTypeMap[typeName] = correctASTNodes(\n new GraphQLInputObjectType({\n ...(config as GraphQLInputObjectTypeConfig),\n fields: newFieldConfigMap as GraphQLInputFieldConfigMap,\n }),\n );\n }\n }\n }\n\n return newTypeMap;\n}\n\nfunction mapArguments(\n originalTypeMap: Record<string, GraphQLNamedType>,\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n): Record<string, GraphQLNamedType> {\n const newTypeMap: Record<string, GraphQLNamedType> = {};\n\n for (const typeName in originalTypeMap) {\n if (!typeName.startsWith(\"__\")) {\n const originalType = originalTypeMap[typeName];\n\n if (!isObjectType(originalType) && !isInterfaceType(originalType)) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n const argumentMapper = getArgumentMapper(schemaMapper);\n if (argumentMapper == null) {\n newTypeMap[typeName] = originalType;\n continue;\n }\n\n const config = originalType.toConfig();\n\n const originalFieldConfigMap = config.fields;\n const newFieldConfigMap:\n | GraphQLFieldConfigMap<unknown, unknown>\n | GraphQLInputFieldConfigMap = {};\n for (const fieldName in originalFieldConfigMap) {\n const originalFieldConfig = originalFieldConfigMap[fieldName];\n const originalArgumentConfigMap = originalFieldConfig.args;\n\n if (originalArgumentConfigMap == null) {\n newFieldConfigMap[fieldName] = originalFieldConfig;\n continue;\n }\n\n const argumentNames = Object.keys(originalArgumentConfigMap);\n\n if (!argumentNames.length) {\n newFieldConfigMap[fieldName] = originalFieldConfig;\n continue;\n }\n\n const newArgumentConfigMap: GraphQLFieldConfigArgumentMap = {};\n\n for (const argumentName of argumentNames) {\n const originalArgumentConfig =\n originalArgumentConfigMap[argumentName];\n\n const mappedArgument = argumentMapper(\n originalArgumentConfig,\n fieldName,\n typeName,\n schema,\n );\n\n if (mappedArgument === undefined) {\n newArgumentConfigMap[argumentName] = originalArgumentConfig;\n } else if (Array.isArray(mappedArgument)) {\n const [newArgumentName, newArgumentConfig] = mappedArgument;\n newArgumentConfigMap[newArgumentName] = newArgumentConfig;\n } else if (mappedArgument !== null) {\n newArgumentConfigMap[argumentName] = mappedArgument;\n }\n }\n\n newFieldConfigMap[fieldName] = {\n ...originalFieldConfig,\n args: newArgumentConfigMap,\n };\n }\n\n if (isObjectType(originalType)) {\n newTypeMap[typeName] = new GraphQLObjectType({\n ...(config as unknown as GraphQLObjectTypeConfig<any, any>),\n fields: newFieldConfigMap as GraphQLFieldConfigMap<unknown, unknown>,\n });\n } else if (isInterfaceType(originalType)) {\n newTypeMap[typeName] = new GraphQLInterfaceType({\n ...(config as unknown as GraphQLInterfaceTypeConfig<any, any>),\n fields: newFieldConfigMap as GraphQLFieldConfigMap<unknown, unknown>,\n });\n } else {\n newTypeMap[typeName] = new GraphQLInputObjectType({\n ...(config as unknown as GraphQLInputObjectTypeConfig),\n fields: newFieldConfigMap as GraphQLInputFieldConfigMap,\n });\n }\n }\n }\n\n return newTypeMap;\n}\n\nfunction mapDirectives(\n originalDirectives: ReadonlyArray<GraphQLDirective>,\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n): Array<GraphQLDirective> {\n const directiveMapper = getDirectiveMapper(schemaMapper);\n if (directiveMapper == null) {\n return originalDirectives.slice();\n }\n\n const newDirectives: Array<GraphQLDirective> = [];\n\n for (const directive of originalDirectives) {\n const mappedDirective = directiveMapper(directive, schema);\n if (mappedDirective === undefined) {\n newDirectives.push(directive);\n } else if (mappedDirective !== null) {\n newDirectives.push(mappedDirective);\n }\n }\n\n return newDirectives;\n}\n\nfunction getTypeSpecifiers(\n schema: GraphQLSchema,\n typeName: string,\n): Array<MapperKind> {\n const type = schema.getType(typeName);\n const specifiers = [MapperKind.TYPE];\n\n if (isObjectType(type)) {\n specifiers.push(MapperKind.COMPOSITE_TYPE, MapperKind.OBJECT_TYPE);\n if (typeName === schema.getQueryType()?.name) {\n specifiers.push(MapperKind.ROOT_OBJECT, MapperKind.QUERY);\n } else if (typeName === schema.getMutationType()?.name) {\n specifiers.push(MapperKind.ROOT_OBJECT, MapperKind.MUTATION);\n } else if (typeName === schema.getSubscriptionType()?.name) {\n specifiers.push(MapperKind.ROOT_OBJECT, MapperKind.SUBSCRIPTION);\n }\n } else if (isInputObjectType(type)) {\n specifiers.push(MapperKind.INPUT_OBJECT_TYPE);\n } else if (isInterfaceType(type)) {\n specifiers.push(\n MapperKind.COMPOSITE_TYPE,\n MapperKind.ABSTRACT_TYPE,\n MapperKind.INTERFACE_TYPE,\n );\n } else if (isUnionType(type)) {\n specifiers.push(\n MapperKind.COMPOSITE_TYPE,\n MapperKind.ABSTRACT_TYPE,\n MapperKind.UNION_TYPE,\n );\n } else if (isEnumType(type)) {\n specifiers.push(MapperKind.ENUM_TYPE);\n } else if (isScalarType(type)) {\n specifiers.push(MapperKind.SCALAR_TYPE);\n }\n\n return specifiers;\n}\n\nfunction getTypeMapper(\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n typeName: string,\n): NamedTypeMapper | null {\n const specifiers = getTypeSpecifiers(schema, typeName);\n let typeMapper: NamedTypeMapper | undefined;\n const stack = [...specifiers];\n while (!typeMapper && stack.length > 0) {\n const next = stack.pop() as MapperKind;\n typeMapper = schemaMapper[next] as NamedTypeMapper;\n }\n\n return typeMapper != null ? typeMapper : null;\n}\n\nfunction getFieldSpecifiers(\n schema: GraphQLSchema,\n typeName: string,\n): SchemaFieldMapperTypes {\n const type = schema.getType(typeName);\n const specifiers: SchemaFieldMapperTypes = [MapperKind.FIELD];\n\n if (isObjectType(type)) {\n specifiers.push(MapperKind.COMPOSITE_FIELD, MapperKind.OBJECT_FIELD);\n if (typeName === schema.getQueryType()?.name) {\n specifiers.push(MapperKind.ROOT_FIELD, MapperKind.QUERY_ROOT_FIELD);\n } else if (typeName === schema.getMutationType()?.name) {\n specifiers.push(MapperKind.ROOT_FIELD, MapperKind.MUTATION_ROOT_FIELD);\n } else if (typeName === schema.getSubscriptionType()?.name) {\n specifiers.push(\n MapperKind.ROOT_FIELD,\n MapperKind.SUBSCRIPTION_ROOT_FIELD,\n );\n }\n } else if (isInterfaceType(type)) {\n specifiers.push(MapperKind.COMPOSITE_FIELD, MapperKind.INTERFACE_FIELD);\n } else if (isInputObjectType(type)) {\n specifiers.push(MapperKind.INPUT_OBJECT_FIELD);\n }\n\n return specifiers;\n}\n\nfunction getFieldMapper<\n F extends GraphQLFieldConfig<any, any> | GraphQLInputFieldConfig,\n>(\n schema: GraphQLSchema,\n schemaMapper: SchemaMapper,\n typeName: string,\n): GenericFieldMapper<F> | null {\n const specifiers = getFieldSpecifiers(schema, typeName);\n let fieldMapper: GenericFieldMapper<F> | undefined;\n const stack = [...specifiers];\n while (!fieldMapper && stack.length > 0) {\n // It is safe to use as here as we check the length.\n const next = stack.pop() as MapperKind;\n // TODO: fix this as unknown cast\n fieldMapper = schemaMapper[next] as unknown as GenericFieldMapper<F>;\n }\n\n return fieldMapper ?? null;\n}\n\nfunction getArgumentMapper(schemaMapper: SchemaMapper): ArgumentMapper | null {\n const argumentMapper = schemaMapper[MapperKind.ARGUMENT];\n return argumentMapper != null ? argumentMapper : null;\n}\n\nfunction getDirectiveMapper(\n schemaMapper: SchemaMapper,\n): DirectiveMapper | null {\n const directiveMapper = schemaMapper[MapperKind.DIRECTIVE];\n return directiveMapper != null ? directiveMapper : null;\n}\n\nfunction getEnumValueMapper(\n schemaMapper: SchemaMapper,\n): EnumValueMapper | null {\n const enumValueMapper = schemaMapper[MapperKind.ENUM_VALUE];\n return enumValueMapper != null ? enumValueMapper : null;\n}\n\nfunction correctASTNodes(type: GraphQLObjectType): GraphQLObjectType;\nfunction correctASTNodes(type: GraphQLInterfaceType): GraphQLInterfaceType;\nfunction correctASTNodes(type: GraphQLInputObjectType): GraphQLInputObjectType;\nfunction correctASTNodes(type: GraphQLEnumType): GraphQLEnumType;\nfunction correctASTNodes(type: GraphQLNamedType): GraphQLNamedType {\n if (isObjectType(type)) {\n const config = (type as GraphQLObjectType).toConfig();\n if (config.astNode != null) {\n const fields: Array<FieldDefinitionNode> = [];\n for (const fieldName in config.fields) {\n const fieldConfig = config.fields[fieldName];\n\n if (fieldConfig.astNode != null) {\n fields.push(fieldConfig.astNode);\n }\n }\n\n config.astNode = {\n ...config.astNode,\n kind: Kind.OBJECT_TYPE_DEFINITION,\n fields,\n };\n }\n\n if (config.extensionASTNodes != null) {\n config.extensionASTNodes = config.extensionASTNodes.map((node) => ({\n ...node,\n kind: Kind.OBJECT_TYPE_EXTENSION,\n fields: undefined,\n }));\n }\n\n return new GraphQLObjectType(config);\n } else if (isInterfaceType(type)) {\n const config = (type as GraphQLInterfaceType).toConfig();\n if (config.astNode != null) {\n const fields: Array<FieldDefinitionNode> = [];\n for (const fieldName in config.fields) {\n const fieldConfig = config.fields[fieldName];\n\n if (fieldConfig.astNode != null) {\n fields.push(fieldConfig.astNode);\n }\n }\n config.astNode = {\n ...config.astNode,\n kind: Kind.INTERFACE_TYPE_DEFINITION,\n fields,\n };\n }\n\n if (config.extensionASTNodes != null) {\n config.extensionASTNodes = config.extensionASTNodes.map((node) => ({\n ...node,\n kind: Kind.INTERFACE_TYPE_EXTENSION,\n fields: undefined,\n }));\n }\n\n return new GraphQLInterfaceType(config);\n } else if (isInputObjectType(type)) {\n const config = (type as GraphQLInputObjectType).toConfig();\n if (config.astNode != null) {\n const fields: Array<InputValueDefinitionNode> = [];\n for (const fieldName in config.fields) {\n const fieldConfig = config.fields[fieldName];\n\n if (fieldConfig.astNode != null) {\n fields.push(fieldConfig.astNode);\n }\n }\n config.astNode = {\n ...config.astNode,\n kind: Kind.INPUT_OBJECT_TYPE_DEFINITION,\n fields,\n };\n }\n\n if (config.extensionASTNodes != null) {\n config.extensionASTNodes = config.extensionASTNodes.map((node) => ({\n ...node,\n kind: Kind.INPUT_OBJECT_TYPE_EXTENSION,\n fields: undefined,\n }));\n }\n\n return new GraphQLInputObjectType(config);\n } else if (isEnumType(type)) {\n const config = (type as GraphQLEnumType).toConfig();\n if (config.astNode != null) {\n const values: Array<EnumValueDefinitionNode> = [];\n for (const enumKey in config.values) {\n const enumValueConfig = config.values[enumKey];\n if (enumValueConfig.astNode != null) {\n values.push(enumValueConfig.astNode);\n }\n }\n config.astNode = {\n ...config.astNode,\n values,\n };\n }\n\n if (config.extensionASTNodes != null) {\n config.extensionASTNodes = config.extensionASTNodes.map((node) => ({\n ...node,\n values: undefined,\n }));\n }\n\n return new GraphQLEnumType(config);\n } else {\n return type;\n }\n}\n\nfunction getObjectTypeFromTypeMap(\n typeMap: Record<string, GraphQLNamedType>,\n type: Maybe<GraphQLObjectType>,\n): GraphQLObjectType | undefined {\n if (type) {\n const maybeObjectType = typeMap[type.name];\n if (isObjectType(maybeObjectType)) {\n return maybeObjectType;\n }\n }\n}\n\nenum MapperKind {\n TYPE = \"MapperKind.TYPE\",\n SCALAR_TYPE = \"MapperKind.SCALAR_TYPE\",\n ENUM_TYPE = \"MapperKind.ENUM_TYPE\",\n COMPOSITE_TYPE = \"MapperKind.COMPOSITE_TYPE\",\n OBJECT_TYPE = \"MapperKind.OBJECT_TYPE\",\n INPUT_OBJECT_TYPE = \"MapperKind.INPUT_OBJECT_TYPE\",\n ABSTRACT_TYPE = \"MapperKind.ABSTRACT_TYPE\",\n UNION_TYPE = \"MapperKind.UNION_TYPE\",\n INTERFACE_TYPE = \"MapperKind.INTERFACE_TYPE\",\n ROOT_OBJECT = \"MapperKind.ROOT_OBJECT\",\n QUERY = \"MapperKind.QUERY\",\n MUTATION = \"MapperKind.MUTATION\",\n SUBSCRIPTION = \"MapperKind.SUBSCRIPTION\",\n DIRECTIVE = \"MapperKind.DIRECTIVE\",\n FIELD = \"MapperKind.FIELD\",\n COMPOSITE_FIELD = \"MapperKind.COMPOSITE_FIELD\",\n OBJECT_FIELD = \"MapperKind.OBJECT_FIELD\",\n ROOT_FIELD = \"MapperKind.ROOT_FIELD\",\n QUERY_ROOT_FIELD = \"MapperKind.QUERY_ROOT_FIELD\",\n MUTATION_ROOT_FIELD = \"MapperKind.MUTATION_ROOT_FIELD\",\n SUBSCRIPTION_ROOT_FIELD = \"MapperKind.SUBSCRIPTION_ROOT_FIELD\",\n INTERFACE_FIELD = \"MapperKind.INTERFACE_FIELD\",\n INPUT_OBJECT_FIELD = \"MapperKind.INPUT_OBJECT_FIELD\",\n ARGUMENT = \"MapperKind.ARGUMENT\",\n ENUM_VALUE = \"MapperKind.ENUM_VALUE\",\n}\n\ninterface SchemaMapper {\n [MapperKind.TYPE]?: NamedTypeMapper;\n [MapperKind.SCALAR_TYPE]?: ScalarTypeMapper;\n [MapperKind.ENUM_TYPE]?: EnumTypeMapper;\n [MapperKind.COMPOSITE_TYPE]?: CompositeTypeMapper;\n [MapperKind.OBJECT_TYPE]?: ObjectTypeMapper;\n [MapperKind.INPUT_OBJECT_TYPE]?: InputObjectTypeMapper;\n [MapperKind.ABSTRACT_TYPE]?: AbstractTypeMapper;\n [MapperKind.UNION_TYPE]?: UnionTypeMapper;\n [MapperKind.INTERFACE_TYPE]?: InterfaceTypeMapper;\n [MapperKind.ROOT_OBJECT]?: ObjectTypeMapper;\n [MapperKind.QUERY]?: ObjectTypeMapper;\n [MapperKind.MUTATION]?: ObjectTypeMapper;\n [MapperKind.SUBSCRIPTION]?: ObjectTypeMapper;\n [MapperKind.ENUM_VALUE]?: EnumValueMapper;\n [MapperKind.FIELD]?: GenericFieldMapper<\n GraphQLFieldConfig<any, any> | GraphQLInputFieldConfig\n >;\n [MapperKind.OBJECT_FIELD]?: FieldMapper;\n [MapperKind.ROOT_FIELD]?: FieldMapper;\n [MapperKind.QUERY_ROOT_FIELD]?: FieldMapper;\n [MapperKind.MUTATION_ROOT_FIELD]?: FieldMapper;\n [MapperKind.SUBSCRIPTION_ROOT_FIELD]?: FieldMapper;\n [MapperKind.INTERFACE_FIELD]?: FieldMapper;\n [MapperKind.COMPOSITE_FIELD]?: FieldMapper;\n [MapperKind.ARGUMENT]?: ArgumentMapper;\n [MapperKind.INPUT_OBJECT_FIELD]?: InputFieldMapper;\n [MapperKind.DIRECTIVE]?: DirectiveMapper;\n}\n\ntype SchemaFieldMapperTypes = Array<\n | MapperKind.FIELD\n | MapperKind.COMPOSITE_FIELD\n | MapperKind.OBJECT_FIELD\n | MapperKind.ROOT_FIELD\n | MapperKind.QUERY_ROOT_FIELD\n | MapperKind.MUTATION_ROOT_FIELD\n | MapperKind.SUBSCRIPTION_ROOT_FIELD\n | MapperKind.INTERFACE_FIELD\n | MapperKind.INPUT_OBJECT_FIELD\n>;\n\ntype NamedTypeMapper = (\n type: GraphQLNamedType,\n schema: GraphQLSchema,\n) => GraphQLNamedType | null | undefined;\n\ntype ScalarTypeMapper = (\n type: GraphQLScalarType,\n schema: GraphQLSchema,\n) => GraphQLScalarType | null | undefined;\n\ntype EnumTypeMapper = (\n type: GraphQLEnumType,\n schema: GraphQLSchema,\n) => GraphQLEnumType | null | undefined;\n\ntype EnumValueMapper = (\n valueConfig: GraphQLEnumValueConfig,\n typeName: string,\n schema: GraphQLSchema,\n externalValue: string,\n) =>\n | GraphQLEnumValueConfig\n | [string, GraphQLEnumValueConfig]\n | null\n | undefined;\n\ntype CompositeTypeMapper = (\n type: GraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType,\n schema: GraphQLSchema,\n) =>\n | GraphQLObjectType\n | GraphQLInterfaceType\n | GraphQLUnionType\n | null\n | undefined;\n\ntype ObjectTypeMapper = (\n type: GraphQLObjectType,\n schema: GraphQLSchema,\n) => GraphQLObjectType | null | undefined;\n\ntype InputObjectTypeMapper = (\n type: GraphQLInputObjectType,\n schema: GraphQLSchema,\n) => GraphQLInputObjectType | null | undefined;\n\ntype AbstractTypeMapper = (\n type: GraphQLInterfaceType | GraphQLUnionType,\n schema: GraphQLSchema,\n) => GraphQLInterfaceType | GraphQLUnionType | null | undefined;\n\ntype UnionTypeMapper = (\n type: GraphQLUnionType,\n schema: GraphQLSchema,\n) => GraphQLUnionType | null | undefined;\n\ntype InterfaceTypeMapper = (\n type: GraphQLInterfaceType,\n schema: GraphQLSchema,\n) => GraphQLInterfaceType | null | undefined;\n\ntype DirectiveMapper = (\n directive: GraphQLDirective,\n schema: GraphQLSchema,\n) => GraphQLDirective | null | undefined;\n\ntype GenericFieldMapper<\n F extends GraphQLFieldConfig<any, any> | GraphQLInputFieldConfig,\n> = (\n fieldConfig: F,\n fieldName: string,\n typeName: string,\n schema: GraphQLSchema,\n) => F | [string, F] | null | undefined;\n\ntype FieldMapper = GenericFieldMapper<GraphQLFieldConfig<any, any>>;\n\ntype ArgumentMapper = (\n argumentConfig: GraphQLArgumentConfig,\n fieldName: string,\n typeName: string,\n schema: GraphQLSchema,\n) => GraphQLArgumentConfig | [string, GraphQLArgumentConfig] | null | undefined;\n\ntype InputFieldMapper = GenericFieldMapper<GraphQLInputFieldConfig>;\n\nfunction rewireTypes(\n originalTypeMap: Record<string, GraphQLNamedType | null>,\n directives: ReadonlyArray<GraphQLDirective>,\n): {\n typeMap: Record<string, GraphQLNamedType>;\n directives: Array<GraphQLDirective>;\n} {\n const referenceTypeMap = Object.create(null);\n for (const typeName in originalTypeMap) {\n referenceTypeMap[typeName] = originalTypeMap[typeName];\n }\n const newTypeMap: Record<string, GraphQLNamedType> = Object.create(null);\n\n for (const typeName in referenceTypeMap) {\n const namedType = referenceTypeMap[typeName];\n\n if (namedType == null || typeName.startsWith(\"__\")) {\n continue;\n }\n\n const newName = namedType.name;\n if (newName.startsWith(\"__\")) {\n continue;\n }\n\n if (newTypeMap[newName] != null) {\n console.warn(\n `Duplicate schema type name ${newName} found; keeping the existing one found in the schema`,\n );\n continue;\n }\n\n newTypeMap[newName] = namedType;\n }\n\n for (const typeName in newTypeMap) {\n newTypeMap[typeName] = rewireNamedType(newTypeMap[typeName]);\n }\n\n const newDirectives = directives.map((directive) =>\n rewireDirective(directive),\n );\n\n return {\n typeMap: newTypeMap,\n directives: newDirectives,\n };\n\n function rewireDirective(directive: GraphQLDirective): GraphQLDirective {\n if (isSpecifiedDirective(directive)) {\n return directive;\n }\n const directiveConfig = directive.toConfig();\n directiveConfig.args = rewireArgs(directiveConfig.args);\n return new GraphQLDirective(directiveConfig);\n }\n\n function rewireArgs(\n args: GraphQLFieldConfigArgumentMap,\n ): GraphQLFieldConfigArgumentMap {\n const rewiredArgs: GraphQLFieldConfigArgumentMap = {};\n for (const argName in args) {\n const arg = args[argName];\n const rewiredArgType = rewireType(arg.type);\n if (rewiredArgType != null) {\n arg.type = rewiredArgType;\n rewiredArgs[argName] = arg;\n }\n }\n return rewiredArgs;\n }\n\n function rewireNamedType<T extends GraphQLNamedType>(type: T) {\n if (isObjectType(type)) {\n const config = (type as GraphQLObjectType).toConfig();\n const newConfig = {\n ...config,\n fields: () => rewireFields(config.fields),\n interfaces: () => rewireNamedTypes(config.interfaces),\n };\n return new GraphQLObjectType(newConfig);\n } else if (isInterfaceType(type)) {\n const config = (type as GraphQLInterfaceType).toConfig();\n const newConfig: any = {\n ...config,\n fields: () => rewireFields(config.fields),\n };\n if (\"interfaces\" in newConfig) {\n newConfig.interfaces = () =>\n rewireNamedTypes(\n (config as unknown as { interfaces: Array<GraphQLInterfaceType> })\n .interfaces,\n );\n }\n return new GraphQLInterfaceType(newConfig);\n } else if (isUnionType(type)) {\n const config = (type as GraphQLUnionType).toConfig();\n const newConfig = {\n ...config,\n types: () => rewireNamedTypes(config.types),\n };\n return new GraphQLUnionType(newConfig);\n } else if (isInputObjectType(type)) {\n const config = (type as GraphQLInputObjectType).toConfig();\n const newConfig = {\n ...config,\n fields: () => rewireInputFields(config.fields),\n };\n return new GraphQLInputObjectType(newConfig);\n } else if (isEnumType(type)) {\n const enumConfig = (type as GraphQLEnumType).toConfig();\n return new GraphQLEnumType(enumConfig);\n } else if (isScalarType(type)) {\n if (isSpecifiedScalarType(type)) {\n return type;\n }\n const scalarConfig = (type as GraphQLScalarType).toConfig();\n return new GraphQLScalarType(scalarConfig);\n }\n\n throw new Error(`Unexpected schema type: ${type as unknown as string}`);\n }\n\n function rewireFields(\n fields: GraphQLFieldConfigMap<any, any>,\n ): GraphQLFieldConfigMap<any, any> {\n const rewiredFields: GraphQLFieldConfigMap<any, any> = {};\n for (const fieldName in fields) {\n const field = fields[fieldName];\n const rewiredFieldType = rewireType(field.type);\n if (rewiredFieldType != null && field.args) {\n field.type = rewiredFieldType;\n field.args = rewireArgs(field.args);\n rewiredFields[fieldName] = field;\n }\n }\n return rewiredFields;\n }\n\n function rewireInputFields(\n fields: GraphQLInputFieldConfigMap,\n ): GraphQLInputFieldConfigMap {\n const rewiredFields: GraphQLInputFieldConfigMap = {};\n for (const fieldName in fields) {\n const field = fields[fieldName];\n const rewiredFieldType = rewireType(field.type);\n if (rewiredFieldType != null) {\n field.type = rewiredFieldType;\n rewiredFields[fieldName] = field;\n }\n }\n return rewiredFields;\n }\n\n function rewireNamedTypes<T extends GraphQLNamedType>(\n namedTypes: Iterable<T>,\n ): Array<T> {\n const rewiredTypes: Array<T> = [];\n for (const namedType of namedTypes) {\n const rewiredType = rewireType(namedType);\n if (rewiredType != null) {\n rewiredTypes.push(rewiredType);\n }\n }\n return rewiredTypes;\n }\n\n function rewireType<T extends GraphQLType>(type: T): T | null {\n if (isListType(type)) {\n const rewiredType = rewireType(type.ofType);\n return rewiredType != null ? (new GraphQLList(rewiredType) as T) : null;\n } else if (isNonNullType(type)) {\n const rewiredType = rewireType(type.ofType);\n return rewiredType != null\n ? (new GraphQLNonNull(rewiredType) as T)\n : null;\n } else if (isNamedType(type)) {\n let rewiredType = referenceTypeMap[type.name];\n if (rewiredType === undefined) {\n rewiredType = isNamedStub(type)\n ? getBuiltInForStub(type)\n : rewireNamedType(type);\n newTypeMap[rewiredType.name] = referenceTypeMap[type.name] =\n rewiredType;\n }\n return rewiredType != null ? (newTypeMap[rewiredType.name] as T) : null;\n }\n\n return null;\n }\n}\n\nfunction isNamedStub(type: GraphQLNamedType): boolean {\n if (\"getFields\" in type) {\n const fields = type.getFields();\n // eslint-disable-next-line no-unreachable-loop\n for (const fieldName in fields) {\n const field = fields[fieldName];\n return field.name === \"_fake\";\n }\n }\n\n return false;\n}\n\nfunction getBuiltInForStub(type: GraphQLNamedType): GraphQLNamedType {\n switch (type.name) {\n case GraphQLInt.name:\n return GraphQLInt;\n case GraphQLFloat.name:\n return GraphQLFloat;\n case GraphQLString.name:\n return GraphQLString;\n case GraphQLBoolean.name:\n return GraphQLBoolean;\n case GraphQLID.name:\n return GraphQLID;\n default:\n return type;\n }\n}\n\ntype IDefaultValueIteratorFn = (type: GraphQLInputType, value: any) => void;\n\nfunction transformInputValue(\n type: GraphQLInputType,\n value: any,\n inputLeafValueTransformer: Maybe<InputLeafValueTransformer> = null,\n inputObjectValueTransformer: Maybe<InputObjectValueTransformer> = null,\n): any {\n if (value == null) {\n return value;\n }\n\n const nullableType = getNullableType(type);\n\n if (isLeafType(nullableType)) {\n return inputLeafValueTransformer != null\n ? inputLeafValueTransformer(nullableType, value)\n : value;\n } else if (isListType(nullableType)) {\n return asArray(value).map((listMember: any) =>\n transformInputValue(\n nullableType.ofType,\n listMember,\n inputLeafValueTransformer,\n inputObjectValueTransformer,\n ),\n );\n } else if (isInputObjectType(nullableType)) {\n const fields = nullableType.getFields();\n const newValue: GraphQLInputFieldConfigMap = {};\n for (const key in value) {\n const field = fields[key];\n if (field != null) {\n newValue[key] = transformInputValue(\n field.type,\n value[key],\n inputLeafValueTransformer,\n inputObjectValueTransformer,\n );\n }\n }\n return inputObjectValueTransformer != null\n ? inputObjectValueTransformer(nullableType, newValue)\n : newValue;\n }\n\n // unreachable, no other possible return value\n}\n\nfunction serializeInputValue(type: GraphQLInputType, value: any) {\n return transformInputValue(type, value, (t, v) => {\n try {\n return t.serialize(v);\n } catch {\n return v;\n }\n });\n}\n\nfunction parseInputValue(type: GraphQLInputType, value: any) {\n return transformInputValue(type, value, (t, v) => {\n try {\n return t.parseValue(v);\n } catch {\n return v;\n }\n });\n}\n\ntype InputLeafValueTransformer = (\n type: GraphQLEnumType | GraphQLScalarType,\n originalValue: any,\n) => any;\ntype InputObjectValueTransformer = (\n type: GraphQLInputObjectType,\n originalValue: Record<string, any>,\n) => Record<string, any>;\n\nconst asArray = <T>(fns: T | T[]) =>\n Array.isArray(fns) ? fns : fns ? [fns] : [];\n"],
5
- "mappings": "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",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }