graphql 14.0.0 → 14.1.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.
- package/README.md +4 -4
- package/error/GraphQLError.js +1 -1
- package/error/GraphQLError.js.flow +3 -3
- package/error/GraphQLError.mjs +1 -1
- package/error/formatError.js +1 -1
- package/error/formatError.mjs +1 -1
- package/error/index.mjs +1 -1
- package/error/locatedError.js +1 -1
- package/error/locatedError.mjs +1 -1
- package/error/printError.js +1 -1
- package/error/printError.mjs +1 -1
- package/error/syntaxError.js +1 -1
- package/error/syntaxError.mjs +1 -1
- package/execution/execute.js +4 -4
- package/execution/execute.js.flow +4 -6
- package/execution/execute.mjs +5 -5
- package/execution/index.mjs +1 -1
- package/execution/values.js +4 -4
- package/execution/values.js.flow +3 -3
- package/execution/values.mjs +3 -3
- package/graphql.js +1 -1
- package/graphql.mjs +1 -1
- package/index.js +12 -0
- package/index.js.flow +4 -0
- package/index.mjs +4 -4
- package/jsutils/dedent.js +2 -2
- package/jsutils/dedent.js.flow +1 -1
- package/jsutils/dedent.mjs +2 -2
- package/jsutils/defineToJSON.js +17 -6
- package/jsutils/defineToJSON.js.flow +14 -5
- package/jsutils/defineToJSON.mjs +14 -6
- package/jsutils/defineToStringTag.js +5 -5
- package/jsutils/defineToStringTag.js.flow +3 -3
- package/jsutils/defineToStringTag.mjs +4 -4
- package/jsutils/inspect.js +46 -12
- package/jsutils/inspect.js.flow +42 -15
- package/jsutils/inspect.mjs +45 -5
- package/jsutils/instanceOf.js +1 -1
- package/jsutils/instanceOf.mjs +1 -1
- package/jsutils/invariant.js +1 -1
- package/jsutils/invariant.mjs +1 -1
- package/jsutils/isInvalid.js +1 -1
- package/jsutils/isInvalid.mjs +1 -1
- package/jsutils/isNullish.js +1 -1
- package/jsutils/isNullish.mjs +1 -1
- package/jsutils/isPromise.js +1 -1
- package/jsutils/isPromise.mjs +1 -1
- package/jsutils/keyMap.js +1 -1
- package/jsutils/keyMap.mjs +1 -1
- package/jsutils/keyValMap.js +1 -1
- package/jsutils/keyValMap.mjs +1 -1
- package/jsutils/mapValue.js +54 -0
- package/jsutils/mapValue.js.flow +27 -0
- package/jsutils/mapValue.mjs +44 -0
- package/jsutils/memoize3.js +1 -1
- package/jsutils/memoize3.mjs +1 -1
- package/jsutils/nodejsCustomInspectSymbol.js +18 -0
- package/jsutils/nodejsCustomInspectSymbol.js.flow +15 -0
- package/jsutils/nodejsCustomInspectSymbol.mjs +10 -0
- package/jsutils/orList.js +17 -4
- package/jsutils/orList.js.flow +13 -7
- package/jsutils/orList.mjs +14 -4
- package/jsutils/promiseForObject.js +1 -1
- package/jsutils/promiseForObject.mjs +1 -1
- package/jsutils/promiseReduce.js +1 -1
- package/jsutils/promiseReduce.mjs +1 -1
- package/jsutils/quotedOrList.js +1 -1
- package/jsutils/quotedOrList.mjs +1 -1
- package/jsutils/suggestionList.js +1 -1
- package/jsutils/suggestionList.mjs +1 -1
- package/language/blockStringValue.js +2 -2
- package/language/blockStringValue.js.flow +1 -1
- package/language/blockStringValue.mjs +2 -2
- package/language/directiveLocation.js +1 -1
- package/language/directiveLocation.mjs +1 -1
- package/language/index.mjs +1 -1
- package/language/kinds.js +1 -1
- package/language/kinds.mjs +1 -1
- package/language/lexer.js +29 -13
- package/language/lexer.js.flow +34 -20
- package/language/lexer.mjs +28 -13
- package/language/location.js +1 -1
- package/language/location.mjs +1 -1
- package/language/parser.js +31 -38
- package/language/parser.js.flow +32 -48
- package/language/parser.mjs +30 -38
- package/language/predicates.js +1 -1
- package/language/predicates.mjs +1 -1
- package/language/printer.js +13 -7
- package/language/printer.js.flow +19 -9
- package/language/printer.mjs +13 -7
- package/language/source.js +8 -7
- package/language/source.mjs +1 -9
- package/language/visitor.js +11 -20
- package/language/visitor.js.flow +4 -5
- package/language/visitor.mjs +8 -20
- package/package.json +10 -3
- package/polyfills/find.js +31 -0
- package/polyfills/find.js.flow +29 -0
- package/polyfills/find.mjs +23 -0
- package/{jsutils → polyfills}/isFinite.js +1 -1
- package/{jsutils → polyfills}/isFinite.js.flow +0 -0
- package/{jsutils → polyfills}/isFinite.mjs +1 -1
- package/{jsutils → polyfills}/isInteger.js +1 -1
- package/{jsutils → polyfills}/isInteger.js.flow +0 -0
- package/{jsutils → polyfills}/isInteger.mjs +1 -1
- package/polyfills/objectEntries.js +26 -0
- package/polyfills/objectEntries.js.flow +19 -0
- package/polyfills/objectEntries.mjs +18 -0
- package/{jsutils → polyfills}/objectValues.js +1 -1
- package/{jsutils → polyfills}/objectValues.js.flow +1 -1
- package/{jsutils → polyfills}/objectValues.mjs +1 -1
- package/subscription/asyncIteratorReject.mjs +1 -1
- package/subscription/index.mjs +1 -1
- package/subscription/mapAsyncIterator.mjs +1 -1
- package/subscription/subscribe.js +1 -1
- package/subscription/subscribe.js.flow +1 -1
- package/subscription/subscribe.mjs +2 -2
- package/type/definition.js +31 -130
- package/type/definition.js.flow +35 -47
- package/type/definition.mjs +30 -131
- package/type/directives.js +25 -29
- package/type/directives.js.flow +24 -20
- package/type/directives.mjs +22 -30
- package/type/index.js +12 -0
- package/type/index.js.flow +4 -0
- package/type/index.mjs +5 -3
- package/type/introspection.js +3 -3
- package/type/introspection.js.flow +1 -1
- package/type/introspection.mjs +2 -2
- package/type/scalars.js +45 -34
- package/type/scalars.js.flow +40 -26
- package/type/scalars.mjs +44 -26
- package/type/schema.js +82 -87
- package/type/schema.js.flow +17 -9
- package/type/schema.mjs +79 -86
- package/type/validate.js +168 -175
- package/type/validate.js.flow +8 -49
- package/type/validate.mjs +159 -175
- package/utilities/TypeInfo.js +10 -23
- package/utilities/TypeInfo.js.flow +1 -1
- package/utilities/TypeInfo.mjs +2 -24
- package/utilities/assertValidName.js +1 -1
- package/utilities/assertValidName.mjs +1 -1
- package/utilities/astFromValue.js +2 -2
- package/utilities/astFromValue.js.flow +1 -1
- package/utilities/astFromValue.mjs +2 -2
- package/utilities/buildASTSchema.js +169 -152
- package/utilities/buildASTSchema.js.flow +117 -113
- package/utilities/buildASTSchema.mjs +160 -152
- package/utilities/buildClientSchema.js +24 -14
- package/utilities/buildClientSchema.js.flow +24 -14
- package/utilities/buildClientSchema.mjs +23 -14
- package/utilities/coerceValue.js +38 -19
- package/utilities/coerceValue.js.flow +41 -47
- package/utilities/coerceValue.mjs +38 -20
- package/utilities/concatAST.js +1 -1
- package/utilities/concatAST.mjs +1 -1
- package/utilities/extendSchema.js +228 -312
- package/utilities/extendSchema.js.flow +27 -152
- package/utilities/extendSchema.mjs +229 -312
- package/utilities/findBreakingChanges.js +7 -5
- package/utilities/findBreakingChanges.js.flow +3 -2
- package/utilities/findBreakingChanges.mjs +6 -5
- package/utilities/findDeprecatedUsages.js +1 -1
- package/utilities/findDeprecatedUsages.mjs +1 -1
- package/utilities/getOperationAST.js +1 -1
- package/utilities/getOperationAST.mjs +1 -1
- package/utilities/getOperationRootType.js +1 -1
- package/utilities/getOperationRootType.mjs +1 -1
- package/utilities/index.mjs +1 -1
- package/utilities/introspectionFromSchema.js +1 -1
- package/utilities/introspectionFromSchema.mjs +1 -1
- package/utilities/introspectionQuery.js +1 -1
- package/utilities/introspectionQuery.mjs +1 -1
- package/utilities/isValidJSValue.js +1 -1
- package/utilities/isValidJSValue.mjs +1 -1
- package/utilities/isValidLiteralValue.js +1 -1
- package/utilities/isValidLiteralValue.mjs +1 -1
- package/utilities/lexicographicSortSchema.js +2 -2
- package/utilities/lexicographicSortSchema.js.flow +1 -1
- package/utilities/lexicographicSortSchema.mjs +2 -2
- package/utilities/schemaPrinter.js +3 -3
- package/utilities/schemaPrinter.js.flow +1 -1
- package/utilities/schemaPrinter.mjs +2 -2
- package/utilities/separateOperations.js +1 -1
- package/utilities/separateOperations.mjs +1 -1
- package/utilities/typeComparators.js +1 -1
- package/utilities/typeComparators.mjs +1 -1
- package/utilities/typeFromAST.js +1 -1
- package/utilities/typeFromAST.mjs +1 -1
- package/utilities/valueFromAST.js +3 -3
- package/utilities/valueFromAST.js.flow +1 -1
- package/utilities/valueFromAST.mjs +2 -2
- package/utilities/valueFromASTUntyped.js +1 -1
- package/utilities/valueFromASTUntyped.mjs +1 -1
- package/validation/ValidationContext.js +57 -82
- package/validation/ValidationContext.js.flow +52 -49
- package/validation/ValidationContext.mjs +52 -77
- package/validation/index.js.flow +1 -0
- package/validation/index.mjs +1 -1
- package/validation/rules/ExecutableDefinitions.js +1 -1
- package/validation/rules/ExecutableDefinitions.js.flow +1 -1
- package/validation/rules/ExecutableDefinitions.mjs +1 -1
- package/validation/rules/FieldsOnCorrectType.js +1 -1
- package/validation/rules/FieldsOnCorrectType.mjs +1 -1
- package/validation/rules/FragmentsOnCompositeTypes.js +1 -1
- package/validation/rules/FragmentsOnCompositeTypes.mjs +1 -1
- package/validation/rules/KnownArgumentNames.mjs +1 -1
- package/validation/rules/KnownDirectives.js +1 -1
- package/validation/rules/KnownDirectives.mjs +1 -1
- package/validation/rules/KnownFragmentNames.js +1 -1
- package/validation/rules/KnownFragmentNames.mjs +1 -1
- package/validation/rules/KnownTypeNames.js +59 -21
- package/validation/rules/KnownTypeNames.js.flow +54 -20
- package/validation/rules/KnownTypeNames.mjs +56 -21
- package/validation/rules/LoneAnonymousOperation.js +1 -1
- package/validation/rules/LoneAnonymousOperation.mjs +1 -1
- package/validation/rules/LoneSchemaDefinition.js +1 -1
- package/validation/rules/LoneSchemaDefinition.mjs +1 -1
- package/validation/rules/NoFragmentCycles.js +1 -1
- package/validation/rules/NoFragmentCycles.js.flow +2 -2
- package/validation/rules/NoFragmentCycles.mjs +1 -1
- package/validation/rules/NoUndefinedVariables.js +1 -1
- package/validation/rules/NoUndefinedVariables.mjs +1 -1
- package/validation/rules/NoUnusedFragments.js +1 -1
- package/validation/rules/NoUnusedFragments.js.flow +2 -2
- package/validation/rules/NoUnusedFragments.mjs +1 -1
- package/validation/rules/NoUnusedVariables.js +1 -1
- package/validation/rules/NoUnusedVariables.mjs +1 -1
- package/validation/rules/OverlappingFieldsCanBeMerged.js +57 -33
- package/validation/rules/OverlappingFieldsCanBeMerged.js.flow +5 -6
- package/validation/rules/OverlappingFieldsCanBeMerged.mjs +48 -33
- package/validation/rules/PossibleFragmentSpreads.js +1 -1
- package/validation/rules/PossibleFragmentSpreads.mjs +1 -1
- package/validation/rules/PossibleTypeExtensions.js +158 -0
- package/validation/rules/PossibleTypeExtensions.js.flow +160 -0
- package/validation/rules/PossibleTypeExtensions.mjs +146 -0
- package/validation/rules/ProvidedRequiredArguments.mjs +1 -1
- package/validation/rules/ScalarLeafs.js +1 -1
- package/validation/rules/ScalarLeafs.mjs +1 -1
- package/validation/rules/SingleFieldSubscriptions.js +1 -1
- package/validation/rules/SingleFieldSubscriptions.mjs +1 -1
- package/validation/rules/UniqueArgumentNames.js +1 -1
- package/validation/rules/UniqueArgumentNames.mjs +1 -1
- package/validation/rules/UniqueDirectiveNames.js +55 -0
- package/validation/rules/UniqueDirectiveNames.js.flow +64 -0
- package/validation/rules/UniqueDirectiveNames.mjs +43 -0
- package/validation/rules/UniqueDirectivesPerLocation.js +1 -1
- package/validation/rules/UniqueDirectivesPerLocation.mjs +1 -1
- package/validation/rules/UniqueEnumValueNames.js +94 -0
- package/validation/rules/UniqueEnumValueNames.js.flow +87 -0
- package/validation/rules/UniqueEnumValueNames.mjs +81 -0
- package/validation/rules/UniqueFieldDefinitionNames.js +105 -0
- package/validation/rules/UniqueFieldDefinitionNames.js.flow +101 -0
- package/validation/rules/UniqueFieldDefinitionNames.mjs +92 -0
- package/validation/rules/UniqueFragmentNames.js +1 -1
- package/validation/rules/UniqueFragmentNames.mjs +1 -1
- package/validation/rules/UniqueInputFieldNames.js +1 -1
- package/validation/rules/UniqueInputFieldNames.mjs +1 -1
- package/validation/rules/UniqueOperationNames.js +1 -1
- package/validation/rules/UniqueOperationNames.mjs +1 -1
- package/validation/rules/UniqueOperationTypes.js +85 -0
- package/validation/rules/UniqueOperationTypes.js.flow +76 -0
- package/validation/rules/UniqueOperationTypes.mjs +73 -0
- package/validation/rules/UniqueTypeNames.js +62 -0
- package/validation/rules/UniqueTypeNames.js.flow +67 -0
- package/validation/rules/UniqueTypeNames.mjs +50 -0
- package/validation/rules/UniqueVariableNames.js +1 -1
- package/validation/rules/UniqueVariableNames.mjs +1 -1
- package/validation/rules/ValuesOfCorrectType.js +29 -13
- package/validation/rules/ValuesOfCorrectType.js.flow +4 -5
- package/validation/rules/ValuesOfCorrectType.mjs +28 -13
- package/validation/rules/VariablesAreInputTypes.js +1 -1
- package/validation/rules/VariablesAreInputTypes.mjs +1 -1
- package/validation/rules/VariablesInAllowedPosition.js +4 -4
- package/validation/rules/VariablesInAllowedPosition.mjs +4 -4
- package/validation/specifiedRules.js +14 -2
- package/validation/specifiedRules.js.flow +13 -0
- package/validation/specifiedRules.mjs +8 -2
- package/validation/validate.js +1 -1
- package/validation/validate.mjs +1 -1
- package/jsutils/find.js +0 -22
- package/jsutils/find.js.flow +0 -19
- package/jsutils/find.mjs +0 -15
|
@@ -8,16 +8,15 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
|
|
|
8
8
|
* This source code is licensed under the MIT license found in the
|
|
9
9
|
* LICENSE file in the root directory of this source tree.
|
|
10
10
|
*
|
|
11
|
-
*
|
|
11
|
+
*
|
|
12
12
|
*/
|
|
13
|
+
import objectValues from '../polyfills/objectValues';
|
|
13
14
|
import invariant from '../jsutils/invariant';
|
|
14
|
-
import
|
|
15
|
+
import mapValue from '../jsutils/mapValue';
|
|
15
16
|
import keyValMap from '../jsutils/keyValMap';
|
|
16
|
-
import objectValues from '../jsutils/objectValues';
|
|
17
17
|
import { ASTDefinitionBuilder } from './buildASTSchema';
|
|
18
18
|
import { assertValidSDLExtension } from '../validation/validate';
|
|
19
|
-
import {
|
|
20
|
-
import { isSchema, GraphQLSchema } from '../type/schema';
|
|
19
|
+
import { assertSchema, GraphQLSchema } from '../type/schema';
|
|
21
20
|
import { isIntrospectionType } from '../type/introspection';
|
|
22
21
|
import { isSpecifiedScalarType } from '../type/scalars';
|
|
23
22
|
import { isScalarType, isObjectType, isInterfaceType, isUnionType, isListType, isNonNullType, isEnumType, isInputObjectType, GraphQLList, GraphQLNonNull, GraphQLScalarType, GraphQLObjectType, GraphQLInterfaceType, GraphQLUnionType, GraphQLEnumType, GraphQLInputObjectType } from '../type/definition';
|
|
@@ -44,7 +43,7 @@ import { isTypeDefinitionNode, isTypeExtensionNode } from '../language/predicate
|
|
|
44
43
|
*
|
|
45
44
|
*/
|
|
46
45
|
export function extendSchema(schema, documentAST, options) {
|
|
47
|
-
|
|
46
|
+
assertSchema(schema);
|
|
48
47
|
!(documentAST && documentAST.kind === Kind.DOCUMENT) ? invariant(0, 'Must provide valid Document AST') : void 0;
|
|
49
48
|
|
|
50
49
|
if (!options || !(options.assumeValid || options.assumeValidSDL)) {
|
|
@@ -60,64 +59,54 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
60
59
|
var schemaDef; // Schema extensions are collected which may add additional operation types.
|
|
61
60
|
|
|
62
61
|
var schemaExtensions = [];
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
62
|
+
var _iteratorNormalCompletion = true;
|
|
63
|
+
var _didIteratorError = false;
|
|
64
|
+
var _iteratorError = undefined;
|
|
65
|
+
|
|
66
|
+
try {
|
|
67
|
+
for (var _iterator = documentAST.definitions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
68
|
+
var def = _step.value;
|
|
69
|
+
|
|
70
|
+
if (def.kind === Kind.SCHEMA_DEFINITION) {
|
|
71
|
+
schemaDef = def;
|
|
72
|
+
} else if (def.kind === Kind.SCHEMA_EXTENSION) {
|
|
73
|
+
schemaExtensions.push(def);
|
|
74
|
+
} else if (isTypeDefinitionNode(def)) {
|
|
75
|
+
var typeName = def.name.value;
|
|
76
|
+
typeDefinitionMap[typeName] = def;
|
|
77
|
+
} else if (isTypeExtensionNode(def)) {
|
|
78
|
+
var extendedTypeName = def.name.value;
|
|
79
|
+
var existingTypeExtensions = typeExtensionsMap[extendedTypeName];
|
|
80
|
+
typeExtensionsMap[extendedTypeName] = existingTypeExtensions ? existingTypeExtensions.concat([def]) : [def];
|
|
81
|
+
} else if (def.kind === Kind.DIRECTIVE_DEFINITION) {
|
|
82
|
+
directiveDefinitions.push(def);
|
|
78
83
|
}
|
|
84
|
+
} // If this document contains no new types, extensions, or directives then
|
|
85
|
+
// return the same unmodified GraphQLSchema instance.
|
|
79
86
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (!existingType) {
|
|
88
|
-
throw new GraphQLError("Cannot extend type \"".concat(extendedTypeName, "\" because it does not ") + 'exist in the existing schema.', [def]);
|
|
87
|
+
} catch (err) {
|
|
88
|
+
_didIteratorError = true;
|
|
89
|
+
_iteratorError = err;
|
|
90
|
+
} finally {
|
|
91
|
+
try {
|
|
92
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
93
|
+
_iterator.return();
|
|
89
94
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
typeExtensionsMap[extendedTypeName] = existingTypeExtensions ? existingTypeExtensions.concat([def]) : [def];
|
|
94
|
-
} else if (def.kind === Kind.DIRECTIVE_DEFINITION) {
|
|
95
|
-
var directiveName = def.name.value;
|
|
96
|
-
var existingDirective = schema.getDirective(directiveName);
|
|
97
|
-
|
|
98
|
-
if (existingDirective) {
|
|
99
|
-
throw new GraphQLError("Directive \"".concat(directiveName, "\" already exists in the schema. It ") + 'cannot be redefined.', [def]);
|
|
95
|
+
} finally {
|
|
96
|
+
if (_didIteratorError) {
|
|
97
|
+
throw _iteratorError;
|
|
100
98
|
}
|
|
101
|
-
|
|
102
|
-
directiveDefinitions.push(def);
|
|
103
99
|
}
|
|
104
|
-
}
|
|
105
|
-
// return the same unmodified GraphQLSchema instance.
|
|
106
|
-
|
|
100
|
+
}
|
|
107
101
|
|
|
108
102
|
if (Object.keys(typeExtensionsMap).length === 0 && Object.keys(typeDefinitionMap).length === 0 && directiveDefinitions.length === 0 && schemaExtensions.length === 0 && !schemaDef) {
|
|
109
103
|
return schema;
|
|
110
104
|
}
|
|
111
105
|
|
|
112
|
-
var astBuilder = new ASTDefinitionBuilder(typeDefinitionMap, options, function (
|
|
113
|
-
var typeName = typeRef.name.value;
|
|
106
|
+
var astBuilder = new ASTDefinitionBuilder(typeDefinitionMap, options, function (typeName) {
|
|
114
107
|
var existingType = schema.getType(typeName);
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
return extendNamedType(existingType);
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
throw new GraphQLError("Unknown type: \"".concat(typeName, "\". Ensure that this type exists ") + 'either in the original schema, or is added in a type definition.', [typeRef]);
|
|
108
|
+
!existingType ? invariant(0, "Unknown type: \"".concat(typeName, "\".")) : void 0;
|
|
109
|
+
return extendNamedType(existingType);
|
|
121
110
|
});
|
|
122
111
|
var extendTypeCache = Object.create(null); // Get the extended root operation types.
|
|
123
112
|
|
|
@@ -128,36 +117,31 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
128
117
|
};
|
|
129
118
|
|
|
130
119
|
if (schemaDef) {
|
|
131
|
-
var
|
|
132
|
-
var
|
|
133
|
-
var
|
|
120
|
+
var _iteratorNormalCompletion2 = true;
|
|
121
|
+
var _didIteratorError2 = false;
|
|
122
|
+
var _iteratorError2 = undefined;
|
|
134
123
|
|
|
135
124
|
try {
|
|
136
|
-
for (var
|
|
137
|
-
var _ref2 =
|
|
138
|
-
var operation = _ref2.operation
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
if (operationTypes[operation]) {
|
|
142
|
-
throw new Error("Must provide only one ".concat(operation, " type in schema."));
|
|
143
|
-
} // Note: While this could make early assertions to get the correctly
|
|
125
|
+
for (var _iterator2 = schemaDef.operationTypes[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
|
126
|
+
var _ref2 = _step2.value;
|
|
127
|
+
var operation = _ref2.operation;
|
|
128
|
+
var type = _ref2.type;
|
|
129
|
+
// Note: While this could make early assertions to get the correctly
|
|
144
130
|
// typed values, that would throw immediately while type system
|
|
145
131
|
// validation with validateSchema() will produce more actionable results.
|
|
146
|
-
|
|
147
|
-
|
|
148
132
|
operationTypes[operation] = astBuilder.buildType(type);
|
|
149
133
|
}
|
|
150
134
|
} catch (err) {
|
|
151
|
-
|
|
152
|
-
|
|
135
|
+
_didIteratorError2 = true;
|
|
136
|
+
_iteratorError2 = err;
|
|
153
137
|
} finally {
|
|
154
138
|
try {
|
|
155
|
-
if (!
|
|
156
|
-
|
|
139
|
+
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
|
140
|
+
_iterator2.return();
|
|
157
141
|
}
|
|
158
142
|
} finally {
|
|
159
|
-
if (
|
|
160
|
-
throw
|
|
143
|
+
if (_didIteratorError2) {
|
|
144
|
+
throw _iteratorError2;
|
|
161
145
|
}
|
|
162
146
|
}
|
|
163
147
|
}
|
|
@@ -168,36 +152,31 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
168
152
|
var schemaExtension = schemaExtensions[_i];
|
|
169
153
|
|
|
170
154
|
if (schemaExtension.operationTypes) {
|
|
171
|
-
var
|
|
172
|
-
var
|
|
173
|
-
var
|
|
155
|
+
var _iteratorNormalCompletion14 = true;
|
|
156
|
+
var _didIteratorError14 = false;
|
|
157
|
+
var _iteratorError14 = undefined;
|
|
174
158
|
|
|
175
159
|
try {
|
|
176
|
-
for (var
|
|
177
|
-
var _ref4 =
|
|
178
|
-
var
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
if (operationTypes[operation]) {
|
|
182
|
-
throw new Error("Must provide only one ".concat(operation, " type in schema."));
|
|
183
|
-
} // Note: While this could make early assertions to get the correctly
|
|
160
|
+
for (var _iterator14 = schemaExtension.operationTypes[Symbol.iterator](), _step14; !(_iteratorNormalCompletion14 = (_step14 = _iterator14.next()).done); _iteratorNormalCompletion14 = true) {
|
|
161
|
+
var _ref4 = _step14.value;
|
|
162
|
+
var _operation = _ref4.operation;
|
|
163
|
+
var _type = _ref4.type;
|
|
164
|
+
// Note: While this could make early assertions to get the correctly
|
|
184
165
|
// typed values, that would throw immediately while type system
|
|
185
166
|
// validation with validateSchema() will produce more actionable results.
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
operationTypes[operation] = astBuilder.buildType(type);
|
|
167
|
+
operationTypes[_operation] = astBuilder.buildType(_type);
|
|
189
168
|
}
|
|
190
169
|
} catch (err) {
|
|
191
|
-
|
|
192
|
-
|
|
170
|
+
_didIteratorError14 = true;
|
|
171
|
+
_iteratorError14 = err;
|
|
193
172
|
} finally {
|
|
194
173
|
try {
|
|
195
|
-
if (!
|
|
196
|
-
|
|
174
|
+
if (!_iteratorNormalCompletion14 && _iterator14.return != null) {
|
|
175
|
+
_iterator14.return();
|
|
197
176
|
}
|
|
198
177
|
} finally {
|
|
199
|
-
if (
|
|
200
|
-
throw
|
|
178
|
+
if (_didIteratorError14) {
|
|
179
|
+
throw _iteratorError14;
|
|
201
180
|
}
|
|
202
181
|
}
|
|
203
182
|
}
|
|
@@ -205,9 +184,9 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
205
184
|
}
|
|
206
185
|
|
|
207
186
|
var schemaExtensionASTNodes = schemaExtensions ? schema.extensionASTNodes ? schema.extensionASTNodes.concat(schemaExtensions) : schemaExtensions : schema.extensionASTNodes;
|
|
208
|
-
var types = objectValues(schema.getTypeMap()).map(function (type) {
|
|
187
|
+
var types = [].concat(objectValues(schema.getTypeMap()).map(function (type) {
|
|
209
188
|
return extendNamedType(type);
|
|
210
|
-
})
|
|
189
|
+
}), objectValues(typeDefinitionMap).map(function (type) {
|
|
211
190
|
return astBuilder.buildType(type);
|
|
212
191
|
})); // Support both original legacy names and extended legacy names.
|
|
213
192
|
|
|
@@ -287,74 +266,60 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
287
266
|
}
|
|
288
267
|
|
|
289
268
|
function extendInputFieldMap(type) {
|
|
290
|
-
var newFieldMap =
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
var _fieldName = _arr[_i2];
|
|
297
|
-
var _field = oldFieldMap[_fieldName];
|
|
298
|
-
newFieldMap[_fieldName] = {
|
|
299
|
-
description: _field.description,
|
|
300
|
-
type: extendType(_field.type),
|
|
301
|
-
defaultValue: _field.defaultValue,
|
|
302
|
-
astNode: _field.astNode
|
|
269
|
+
var newFieldMap = mapValue(type.getFields(), function (field) {
|
|
270
|
+
return {
|
|
271
|
+
description: field.description,
|
|
272
|
+
type: extendType(field.type),
|
|
273
|
+
defaultValue: field.defaultValue,
|
|
274
|
+
astNode: field.astNode
|
|
303
275
|
};
|
|
304
|
-
} // If there are any extensions to the fields, apply those here.
|
|
305
|
-
|
|
276
|
+
}); // If there are any extensions to the fields, apply those here.
|
|
306
277
|
|
|
307
278
|
var extensions = typeExtensionsMap[type.name];
|
|
308
279
|
|
|
309
280
|
if (extensions) {
|
|
310
|
-
var
|
|
311
|
-
var
|
|
312
|
-
var
|
|
281
|
+
var _iteratorNormalCompletion3 = true;
|
|
282
|
+
var _didIteratorError3 = false;
|
|
283
|
+
var _iteratorError3 = undefined;
|
|
313
284
|
|
|
314
285
|
try {
|
|
315
|
-
for (var
|
|
316
|
-
var extension =
|
|
317
|
-
var
|
|
318
|
-
var
|
|
319
|
-
var
|
|
286
|
+
for (var _iterator3 = extensions[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
|
287
|
+
var extension = _step3.value;
|
|
288
|
+
var _iteratorNormalCompletion4 = true;
|
|
289
|
+
var _didIteratorError4 = false;
|
|
290
|
+
var _iteratorError4 = undefined;
|
|
320
291
|
|
|
321
292
|
try {
|
|
322
|
-
for (var
|
|
323
|
-
var field =
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
if (oldFieldMap[fieldName]) {
|
|
327
|
-
throw new GraphQLError("Field \"".concat(type.name, ".").concat(fieldName, "\" already exists in the ") + 'schema. It cannot also be defined in this type extension.', [field]);
|
|
328
|
-
}
|
|
329
|
-
|
|
330
|
-
newFieldMap[fieldName] = astBuilder.buildInputField(field);
|
|
293
|
+
for (var _iterator4 = extension.fields[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
|
|
294
|
+
var field = _step4.value;
|
|
295
|
+
newFieldMap[field.name.value] = astBuilder.buildInputField(field);
|
|
331
296
|
}
|
|
332
297
|
} catch (err) {
|
|
333
|
-
|
|
334
|
-
|
|
298
|
+
_didIteratorError4 = true;
|
|
299
|
+
_iteratorError4 = err;
|
|
335
300
|
} finally {
|
|
336
301
|
try {
|
|
337
|
-
if (!
|
|
338
|
-
|
|
302
|
+
if (!_iteratorNormalCompletion4 && _iterator4.return != null) {
|
|
303
|
+
_iterator4.return();
|
|
339
304
|
}
|
|
340
305
|
} finally {
|
|
341
|
-
if (
|
|
342
|
-
throw
|
|
306
|
+
if (_didIteratorError4) {
|
|
307
|
+
throw _iteratorError4;
|
|
343
308
|
}
|
|
344
309
|
}
|
|
345
310
|
}
|
|
346
311
|
}
|
|
347
312
|
} catch (err) {
|
|
348
|
-
|
|
349
|
-
|
|
313
|
+
_didIteratorError3 = true;
|
|
314
|
+
_iteratorError3 = err;
|
|
350
315
|
} finally {
|
|
351
316
|
try {
|
|
352
|
-
if (!
|
|
353
|
-
|
|
317
|
+
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
|
318
|
+
_iterator3.return();
|
|
354
319
|
}
|
|
355
320
|
} finally {
|
|
356
|
-
if (
|
|
357
|
-
throw
|
|
321
|
+
if (_didIteratorError3) {
|
|
322
|
+
throw _iteratorError3;
|
|
358
323
|
}
|
|
359
324
|
}
|
|
360
325
|
}
|
|
@@ -377,76 +342,81 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
377
342
|
|
|
378
343
|
function extendValueMap(type) {
|
|
379
344
|
var newValueMap = Object.create(null);
|
|
380
|
-
var
|
|
381
|
-
|
|
382
|
-
|
|
345
|
+
var _iteratorNormalCompletion5 = true;
|
|
346
|
+
var _didIteratorError5 = false;
|
|
347
|
+
var _iteratorError5 = undefined;
|
|
383
348
|
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
astNode: _value.astNode
|
|
395
|
-
};
|
|
396
|
-
} // If there are any extensions to the values, apply those here.
|
|
349
|
+
try {
|
|
350
|
+
for (var _iterator5 = type.getValues()[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
|
|
351
|
+
var _value = _step5.value;
|
|
352
|
+
newValueMap[_value.name] = {
|
|
353
|
+
description: _value.description,
|
|
354
|
+
value: _value.value,
|
|
355
|
+
deprecationReason: _value.deprecationReason,
|
|
356
|
+
astNode: _value.astNode
|
|
357
|
+
};
|
|
358
|
+
} // If there are any extensions to the values, apply those here.
|
|
397
359
|
|
|
360
|
+
} catch (err) {
|
|
361
|
+
_didIteratorError5 = true;
|
|
362
|
+
_iteratorError5 = err;
|
|
363
|
+
} finally {
|
|
364
|
+
try {
|
|
365
|
+
if (!_iteratorNormalCompletion5 && _iterator5.return != null) {
|
|
366
|
+
_iterator5.return();
|
|
367
|
+
}
|
|
368
|
+
} finally {
|
|
369
|
+
if (_didIteratorError5) {
|
|
370
|
+
throw _iteratorError5;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
}
|
|
398
374
|
|
|
399
375
|
var extensions = typeExtensionsMap[type.name];
|
|
400
376
|
|
|
401
377
|
if (extensions) {
|
|
402
|
-
var
|
|
403
|
-
var
|
|
404
|
-
var
|
|
378
|
+
var _iteratorNormalCompletion6 = true;
|
|
379
|
+
var _didIteratorError6 = false;
|
|
380
|
+
var _iteratorError6 = undefined;
|
|
405
381
|
|
|
406
382
|
try {
|
|
407
|
-
for (var
|
|
408
|
-
var extension =
|
|
409
|
-
var
|
|
410
|
-
var
|
|
411
|
-
var
|
|
383
|
+
for (var _iterator6 = extensions[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
384
|
+
var extension = _step6.value;
|
|
385
|
+
var _iteratorNormalCompletion7 = true;
|
|
386
|
+
var _didIteratorError7 = false;
|
|
387
|
+
var _iteratorError7 = undefined;
|
|
412
388
|
|
|
413
389
|
try {
|
|
414
|
-
for (var
|
|
415
|
-
var value =
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
if (oldValueMap[valueName]) {
|
|
419
|
-
throw new GraphQLError("Enum value \"".concat(type.name, ".").concat(valueName, "\" already exists in the ") + 'schema. It cannot also be defined in this type extension.', [value]);
|
|
420
|
-
}
|
|
421
|
-
|
|
422
|
-
newValueMap[valueName] = astBuilder.buildEnumValue(value);
|
|
390
|
+
for (var _iterator7 = extension.values[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
|
391
|
+
var value = _step7.value;
|
|
392
|
+
newValueMap[value.name.value] = astBuilder.buildEnumValue(value);
|
|
423
393
|
}
|
|
424
394
|
} catch (err) {
|
|
425
|
-
|
|
426
|
-
|
|
395
|
+
_didIteratorError7 = true;
|
|
396
|
+
_iteratorError7 = err;
|
|
427
397
|
} finally {
|
|
428
398
|
try {
|
|
429
|
-
if (!
|
|
430
|
-
|
|
399
|
+
if (!_iteratorNormalCompletion7 && _iterator7.return != null) {
|
|
400
|
+
_iterator7.return();
|
|
431
401
|
}
|
|
432
402
|
} finally {
|
|
433
|
-
if (
|
|
434
|
-
throw
|
|
403
|
+
if (_didIteratorError7) {
|
|
404
|
+
throw _iteratorError7;
|
|
435
405
|
}
|
|
436
406
|
}
|
|
437
407
|
}
|
|
438
408
|
}
|
|
439
409
|
} catch (err) {
|
|
440
|
-
|
|
441
|
-
|
|
410
|
+
_didIteratorError6 = true;
|
|
411
|
+
_iteratorError6 = err;
|
|
442
412
|
} finally {
|
|
443
413
|
try {
|
|
444
|
-
if (!
|
|
445
|
-
|
|
414
|
+
if (!_iteratorNormalCompletion6 && _iterator6.return != null) {
|
|
415
|
+
_iterator6.return();
|
|
446
416
|
}
|
|
447
417
|
} finally {
|
|
448
|
-
if (
|
|
449
|
-
throw
|
|
418
|
+
if (_didIteratorError6) {
|
|
419
|
+
throw _iteratorError6;
|
|
450
420
|
}
|
|
451
421
|
}
|
|
452
422
|
}
|
|
@@ -535,65 +505,6 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
535
505
|
|
|
536
506
|
var extensions = typeExtensionsMap[type.name];
|
|
537
507
|
|
|
538
|
-
if (extensions) {
|
|
539
|
-
var _iteratorNormalCompletion6 = true;
|
|
540
|
-
var _didIteratorError6 = false;
|
|
541
|
-
var _iteratorError6 = undefined;
|
|
542
|
-
|
|
543
|
-
try {
|
|
544
|
-
for (var _iterator6 = extensions[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
|
|
545
|
-
var extension = _step6.value;
|
|
546
|
-
var _iteratorNormalCompletion7 = true;
|
|
547
|
-
var _didIteratorError7 = false;
|
|
548
|
-
var _iteratorError7 = undefined;
|
|
549
|
-
|
|
550
|
-
try {
|
|
551
|
-
for (var _iterator7 = extension.types[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
|
|
552
|
-
var namedType = _step7.value;
|
|
553
|
-
// Note: While this could make early assertions to get the correctly
|
|
554
|
-
// typed values, that would throw immediately while type system
|
|
555
|
-
// validation with validateSchema() will produce more actionable results.
|
|
556
|
-
possibleTypes.push(astBuilder.buildType(namedType));
|
|
557
|
-
}
|
|
558
|
-
} catch (err) {
|
|
559
|
-
_didIteratorError7 = true;
|
|
560
|
-
_iteratorError7 = err;
|
|
561
|
-
} finally {
|
|
562
|
-
try {
|
|
563
|
-
if (!_iteratorNormalCompletion7 && _iterator7.return != null) {
|
|
564
|
-
_iterator7.return();
|
|
565
|
-
}
|
|
566
|
-
} finally {
|
|
567
|
-
if (_didIteratorError7) {
|
|
568
|
-
throw _iteratorError7;
|
|
569
|
-
}
|
|
570
|
-
}
|
|
571
|
-
}
|
|
572
|
-
}
|
|
573
|
-
} catch (err) {
|
|
574
|
-
_didIteratorError6 = true;
|
|
575
|
-
_iteratorError6 = err;
|
|
576
|
-
} finally {
|
|
577
|
-
try {
|
|
578
|
-
if (!_iteratorNormalCompletion6 && _iterator6.return != null) {
|
|
579
|
-
_iterator6.return();
|
|
580
|
-
}
|
|
581
|
-
} finally {
|
|
582
|
-
if (_didIteratorError6) {
|
|
583
|
-
throw _iteratorError6;
|
|
584
|
-
}
|
|
585
|
-
}
|
|
586
|
-
}
|
|
587
|
-
}
|
|
588
|
-
|
|
589
|
-
return possibleTypes;
|
|
590
|
-
}
|
|
591
|
-
|
|
592
|
-
function extendImplementedInterfaces(type) {
|
|
593
|
-
var interfaces = type.getInterfaces().map(extendNamedType); // If there are any extensions to the interfaces, apply those here.
|
|
594
|
-
|
|
595
|
-
var extensions = typeExtensionsMap[type.name];
|
|
596
|
-
|
|
597
508
|
if (extensions) {
|
|
598
509
|
var _iteratorNormalCompletion8 = true;
|
|
599
510
|
var _didIteratorError8 = false;
|
|
@@ -607,12 +518,12 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
607
518
|
var _iteratorError9 = undefined;
|
|
608
519
|
|
|
609
520
|
try {
|
|
610
|
-
for (var _iterator9 = extension.
|
|
521
|
+
for (var _iterator9 = extension.types[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {
|
|
611
522
|
var namedType = _step9.value;
|
|
612
523
|
// Note: While this could make early assertions to get the correctly
|
|
613
524
|
// typed values, that would throw immediately while type system
|
|
614
525
|
// validation with validateSchema() will produce more actionable results.
|
|
615
|
-
|
|
526
|
+
possibleTypes.push(astBuilder.buildType(namedType));
|
|
616
527
|
}
|
|
617
528
|
} catch (err) {
|
|
618
529
|
_didIteratorError9 = true;
|
|
@@ -645,28 +556,11 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
645
556
|
}
|
|
646
557
|
}
|
|
647
558
|
|
|
648
|
-
return
|
|
559
|
+
return possibleTypes;
|
|
649
560
|
}
|
|
650
561
|
|
|
651
|
-
function
|
|
652
|
-
var
|
|
653
|
-
var oldFieldMap = type.getFields();
|
|
654
|
-
|
|
655
|
-
var _arr3 = Object.keys(oldFieldMap);
|
|
656
|
-
|
|
657
|
-
for (var _i4 = 0; _i4 < _arr3.length; _i4++) {
|
|
658
|
-
var _fieldName2 = _arr3[_i4];
|
|
659
|
-
var _field2 = oldFieldMap[_fieldName2];
|
|
660
|
-
newFieldMap[_fieldName2] = {
|
|
661
|
-
description: _field2.description,
|
|
662
|
-
deprecationReason: _field2.deprecationReason,
|
|
663
|
-
type: extendType(_field2.type),
|
|
664
|
-
args: extendArgs(_field2.args),
|
|
665
|
-
astNode: _field2.astNode,
|
|
666
|
-
resolve: _field2.resolve
|
|
667
|
-
};
|
|
668
|
-
} // If there are any extensions to the fields, apply those here.
|
|
669
|
-
|
|
562
|
+
function extendImplementedInterfaces(type) {
|
|
563
|
+
var interfaces = type.getInterfaces().map(extendNamedType); // If there are any extensions to the interfaces, apply those here.
|
|
670
564
|
|
|
671
565
|
var extensions = typeExtensionsMap[type.name];
|
|
672
566
|
|
|
@@ -683,15 +577,12 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
683
577
|
var _iteratorError11 = undefined;
|
|
684
578
|
|
|
685
579
|
try {
|
|
686
|
-
for (var _iterator11 = extension.
|
|
687
|
-
var
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
}
|
|
693
|
-
|
|
694
|
-
newFieldMap[fieldName] = astBuilder.buildField(field);
|
|
580
|
+
for (var _iterator11 = extension.interfaces[Symbol.iterator](), _step11; !(_iteratorNormalCompletion11 = (_step11 = _iterator11.next()).done); _iteratorNormalCompletion11 = true) {
|
|
581
|
+
var namedType = _step11.value;
|
|
582
|
+
// Note: While this could make early assertions to get the correctly
|
|
583
|
+
// typed values, that would throw immediately while type system
|
|
584
|
+
// validation with validateSchema() will produce more actionable results.
|
|
585
|
+
interfaces.push(astBuilder.buildType(namedType));
|
|
695
586
|
}
|
|
696
587
|
} catch (err) {
|
|
697
588
|
_didIteratorError11 = true;
|
|
@@ -724,6 +615,71 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
724
615
|
}
|
|
725
616
|
}
|
|
726
617
|
|
|
618
|
+
return interfaces;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
function extendFieldMap(type) {
|
|
622
|
+
var newFieldMap = mapValue(type.getFields(), function (field) {
|
|
623
|
+
return {
|
|
624
|
+
description: field.description,
|
|
625
|
+
deprecationReason: field.deprecationReason,
|
|
626
|
+
type: extendType(field.type),
|
|
627
|
+
args: extendArgs(field.args),
|
|
628
|
+
astNode: field.astNode,
|
|
629
|
+
resolve: field.resolve
|
|
630
|
+
};
|
|
631
|
+
}); // If there are any extensions to the fields, apply those here.
|
|
632
|
+
|
|
633
|
+
var extensions = typeExtensionsMap[type.name];
|
|
634
|
+
|
|
635
|
+
if (extensions) {
|
|
636
|
+
var _iteratorNormalCompletion12 = true;
|
|
637
|
+
var _didIteratorError12 = false;
|
|
638
|
+
var _iteratorError12 = undefined;
|
|
639
|
+
|
|
640
|
+
try {
|
|
641
|
+
for (var _iterator12 = extensions[Symbol.iterator](), _step12; !(_iteratorNormalCompletion12 = (_step12 = _iterator12.next()).done); _iteratorNormalCompletion12 = true) {
|
|
642
|
+
var extension = _step12.value;
|
|
643
|
+
var _iteratorNormalCompletion13 = true;
|
|
644
|
+
var _didIteratorError13 = false;
|
|
645
|
+
var _iteratorError13 = undefined;
|
|
646
|
+
|
|
647
|
+
try {
|
|
648
|
+
for (var _iterator13 = extension.fields[Symbol.iterator](), _step13; !(_iteratorNormalCompletion13 = (_step13 = _iterator13.next()).done); _iteratorNormalCompletion13 = true) {
|
|
649
|
+
var field = _step13.value;
|
|
650
|
+
newFieldMap[field.name.value] = astBuilder.buildField(field);
|
|
651
|
+
}
|
|
652
|
+
} catch (err) {
|
|
653
|
+
_didIteratorError13 = true;
|
|
654
|
+
_iteratorError13 = err;
|
|
655
|
+
} finally {
|
|
656
|
+
try {
|
|
657
|
+
if (!_iteratorNormalCompletion13 && _iterator13.return != null) {
|
|
658
|
+
_iterator13.return();
|
|
659
|
+
}
|
|
660
|
+
} finally {
|
|
661
|
+
if (_didIteratorError13) {
|
|
662
|
+
throw _iteratorError13;
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
}
|
|
666
|
+
}
|
|
667
|
+
} catch (err) {
|
|
668
|
+
_didIteratorError12 = true;
|
|
669
|
+
_iteratorError12 = err;
|
|
670
|
+
} finally {
|
|
671
|
+
try {
|
|
672
|
+
if (!_iteratorNormalCompletion12 && _iterator12.return != null) {
|
|
673
|
+
_iterator12.return();
|
|
674
|
+
}
|
|
675
|
+
} finally {
|
|
676
|
+
if (_didIteratorError12) {
|
|
677
|
+
throw _iteratorError12;
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
|
|
727
683
|
return newFieldMap;
|
|
728
684
|
}
|
|
729
685
|
|
|
@@ -738,43 +694,4 @@ export function extendSchema(schema, documentAST, options) {
|
|
|
738
694
|
|
|
739
695
|
return extendNamedType(typeDef);
|
|
740
696
|
}
|
|
741
|
-
}
|
|
742
|
-
|
|
743
|
-
function checkExtensionNode(type, node) {
|
|
744
|
-
switch (node.kind) {
|
|
745
|
-
case Kind.OBJECT_TYPE_EXTENSION:
|
|
746
|
-
if (!isObjectType(type)) {
|
|
747
|
-
throw new GraphQLError("Cannot extend non-object type \"".concat(type.name, "\"."), [node]);
|
|
748
|
-
}
|
|
749
|
-
|
|
750
|
-
break;
|
|
751
|
-
|
|
752
|
-
case Kind.INTERFACE_TYPE_EXTENSION:
|
|
753
|
-
if (!isInterfaceType(type)) {
|
|
754
|
-
throw new GraphQLError("Cannot extend non-interface type \"".concat(type.name, "\"."), [node]);
|
|
755
|
-
}
|
|
756
|
-
|
|
757
|
-
break;
|
|
758
|
-
|
|
759
|
-
case Kind.ENUM_TYPE_EXTENSION:
|
|
760
|
-
if (!isEnumType(type)) {
|
|
761
|
-
throw new GraphQLError("Cannot extend non-enum type \"".concat(type.name, "\"."), [node]);
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
break;
|
|
765
|
-
|
|
766
|
-
case Kind.UNION_TYPE_EXTENSION:
|
|
767
|
-
if (!isUnionType(type)) {
|
|
768
|
-
throw new GraphQLError("Cannot extend non-union type \"".concat(type.name, "\"."), [node]);
|
|
769
|
-
}
|
|
770
|
-
|
|
771
|
-
break;
|
|
772
|
-
|
|
773
|
-
case Kind.INPUT_OBJECT_TYPE_EXTENSION:
|
|
774
|
-
if (!isInputObjectType(type)) {
|
|
775
|
-
throw new GraphQLError("Cannot extend non-input object type \"".concat(type.name, "\"."), [node]);
|
|
776
|
-
}
|
|
777
|
-
|
|
778
|
-
break;
|
|
779
|
-
}
|
|
780
697
|
}
|