graphql 15.1.0 → 15.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +10 -12
- package/error/GraphQLError.js +5 -5
- package/error/GraphQLError.js.flow +5 -5
- package/error/GraphQLError.mjs +1 -1
- package/error/formatError.js +1 -1
- package/error/formatError.js.flow +2 -3
- package/error/index.js +4 -4
- package/error/index.js.flow +0 -1
- package/error/locatedError.d.ts +2 -2
- package/error/locatedError.js +10 -5
- package/error/locatedError.js.flow +11 -5
- package/error/locatedError.mjs +6 -4
- package/error/syntaxError.js +1 -1
- package/error/syntaxError.js.flow +1 -2
- package/execution/execute.d.ts +24 -16
- package/execution/execute.js +123 -105
- package/execution/execute.js.flow +169 -153
- package/execution/execute.mjs +101 -82
- package/execution/index.d.ts +2 -0
- package/execution/index.js +9 -3
- package/execution/index.js.flow +12 -3
- package/execution/index.mjs +1 -1
- package/execution/values.js +11 -11
- package/execution/values.js.flow +10 -14
- package/graphql.js +5 -5
- package/graphql.js.flow +9 -9
- package/index.d.ts +19 -1
- package/index.js +27 -9
- package/index.js.flow +10 -3
- package/index.mjs +4 -3
- package/jsutils/ObjMap.js.flow +0 -1
- package/jsutils/Path.d.ts +6 -1
- package/jsutils/Path.js +3 -2
- package/jsutils/Path.js.flow +3 -2
- package/jsutils/Path.mjs +3 -2
- package/jsutils/PromiseOrValue.js.flow +0 -1
- package/jsutils/defineInspect.js +2 -2
- package/jsutils/defineInspect.js.flow +0 -1
- package/jsutils/devAssert.js.flow +0 -1
- package/jsutils/didYouMean.js.flow +0 -1
- package/jsutils/identityFunc.js.flow +0 -1
- package/jsutils/inspect.js +1 -2
- package/jsutils/inspect.js.flow +10 -8
- package/jsutils/inspect.mjs +1 -1
- package/jsutils/instanceOf.js.flow +2 -3
- package/jsutils/invariant.js.flow +0 -1
- package/jsutils/isAsyncIterable.js +19 -0
- package/jsutils/isAsyncIterable.js.flow +18 -0
- package/jsutils/isAsyncIterable.mjs +16 -0
- package/jsutils/isCollection.js +1 -1
- package/jsutils/isCollection.js.flow +0 -1
- package/jsutils/isObjectLike.js.flow +0 -1
- package/jsutils/isPromise.js.flow +0 -1
- package/jsutils/keyMap.js.flow +1 -2
- package/jsutils/keyValMap.js.flow +1 -2
- package/jsutils/mapValue.js +1 -1
- package/jsutils/mapValue.js.flow +1 -2
- package/jsutils/memoize3.js +2 -5
- package/jsutils/memoize3.js.flow +2 -5
- package/jsutils/memoize3.mjs +2 -5
- package/jsutils/nodejsCustomInspectSymbol.js.flow +0 -1
- package/jsutils/printPathArray.js.flow +0 -1
- package/jsutils/promiseForObject.js.flow +1 -2
- package/jsutils/promiseReduce.js +1 -1
- package/jsutils/promiseReduce.js.flow +1 -1
- package/jsutils/promiseReduce.mjs +1 -1
- package/jsutils/suggestionList.js.flow +1 -2
- package/jsutils/toObjMap.js +1 -1
- package/jsutils/toObjMap.js.flow +5 -6
- package/language/ast.js +1 -1
- package/language/ast.js.flow +2 -3
- package/language/blockString.d.ts +1 -1
- package/language/blockString.js +53 -32
- package/language/blockString.js.flow +49 -34
- package/language/blockString.mjs +54 -33
- package/language/directiveLocation.js.flow +0 -1
- package/language/experimentalOnlineParser/grammar.d.ts +1006 -0
- package/language/experimentalOnlineParser/grammar.js +987 -0
- package/language/experimentalOnlineParser/grammar.js.flow +1000 -0
- package/language/experimentalOnlineParser/grammar.mjs +980 -0
- package/language/experimentalOnlineParser/index.d.ts +6 -0
- package/language/experimentalOnlineParser/index.js +31 -0
- package/language/experimentalOnlineParser/index.js.flow +7 -0
- package/language/experimentalOnlineParser/index.mjs +1 -0
- package/language/experimentalOnlineParser/onlineParser.d.ts +125 -0
- package/language/experimentalOnlineParser/onlineParser.js +604 -0
- package/language/experimentalOnlineParser/onlineParser.js.flow +723 -0
- package/language/experimentalOnlineParser/onlineParser.mjs +587 -0
- package/language/index.js +12 -12
- package/language/index.js.flow +0 -1
- package/language/kinds.js.flow +0 -1
- package/language/lexer.js +242 -183
- package/language/lexer.js.flow +191 -186
- package/language/lexer.mjs +239 -180
- package/language/location.js.flow +1 -2
- package/language/parser.js +73 -68
- package/language/parser.js.flow +112 -106
- package/language/parser.mjs +66 -62
- package/language/predicates.js +1 -1
- package/language/predicates.js.flow +1 -2
- package/language/printLocation.js +1 -1
- package/language/printLocation.js.flow +4 -4
- package/language/printer.js +20 -13
- package/language/printer.js.flow +27 -25
- package/language/printer.mjs +18 -11
- package/language/source.d.ts +12 -6
- package/language/source.js +25 -9
- package/language/source.js.flow +25 -8
- package/language/source.mjs +19 -7
- package/language/tokenKind.js.flow +0 -1
- package/language/visitor.d.ts +3 -3
- package/language/visitor.js +5 -5
- package/language/visitor.js.flow +5 -5
- package/language/visitor.mjs +3 -3
- package/package.json +1 -1
- package/polyfills/arrayFrom.js +2 -2
- package/polyfills/arrayFrom.js.flow +1 -2
- package/polyfills/arrayFrom.mjs +1 -1
- package/polyfills/find.js +1 -1
- package/polyfills/find.js.flow +1 -2
- package/polyfills/find.mjs +1 -1
- package/polyfills/isFinite.js +1 -1
- package/polyfills/isFinite.js.flow +1 -2
- package/polyfills/isFinite.mjs +1 -1
- package/polyfills/isInteger.js +1 -1
- package/polyfills/isInteger.js.flow +1 -2
- package/polyfills/isInteger.mjs +1 -1
- package/polyfills/objectEntries.js +1 -1
- package/polyfills/objectEntries.js.flow +2 -3
- package/polyfills/objectEntries.mjs +1 -1
- package/polyfills/objectValues.js +1 -1
- package/polyfills/objectValues.js.flow +2 -3
- package/polyfills/objectValues.mjs +1 -1
- package/polyfills/symbols.js +3 -5
- package/polyfills/symbols.js.flow +9 -6
- package/polyfills/symbols.mjs +3 -5
- package/subscription/index.js +1 -1
- package/subscription/index.js.flow +0 -1
- package/subscription/mapAsyncIterator.js +2 -2
- package/subscription/mapAsyncIterator.js.flow +9 -10
- package/subscription/mapAsyncIterator.mjs +1 -1
- package/subscription/subscribe.js +61 -73
- package/subscription/subscribe.js.flow +74 -88
- package/subscription/subscribe.mjs +53 -65
- package/type/definition.d.ts +181 -31
- package/type/definition.js +37 -32
- package/type/definition.js.flow +66 -51
- package/type/definition.mjs +20 -18
- package/type/directives.d.ts +17 -3
- package/type/directives.js +17 -16
- package/type/directives.js.flow +20 -21
- package/type/directives.mjs +6 -5
- package/type/index.d.ts +12 -0
- package/type/index.js +6 -6
- package/type/index.js.flow +0 -1
- package/type/introspection.js +86 -68
- package/type/introspection.js.flow +85 -54
- package/type/introspection.mjs +79 -61
- package/type/scalars.js +9 -9
- package/type/scalars.js.flow +3 -3
- package/type/scalars.mjs +1 -1
- package/type/schema.d.ts +17 -4
- package/type/schema.js +13 -13
- package/type/schema.js.flow +18 -16
- package/type/schema.mjs +1 -1
- package/type/validate.js +52 -19
- package/type/validate.js.flow +67 -18
- package/type/validate.mjs +44 -10
- package/utilities/TypeInfo.js +7 -7
- package/utilities/TypeInfo.js.flow +16 -18
- package/utilities/TypeInfo.mjs +1 -1
- package/utilities/assertValidName.js +2 -2
- package/utilities/assertValidName.js.flow +0 -1
- package/utilities/astFromValue.js +10 -10
- package/utilities/astFromValue.js.flow +2 -3
- package/utilities/buildASTSchema.js +17 -27
- package/utilities/buildASTSchema.js.flow +11 -28
- package/utilities/buildASTSchema.mjs +11 -21
- package/utilities/buildClientSchema.js +14 -14
- package/utilities/buildClientSchema.js.flow +41 -29
- package/utilities/buildClientSchema.mjs +5 -5
- package/utilities/coerceInputValue.js +14 -14
- package/utilities/coerceInputValue.js.flow +7 -6
- package/utilities/coerceInputValue.mjs +2 -2
- package/utilities/concatAST.js +9 -8
- package/utilities/concatAST.js.flow +9 -9
- package/utilities/concatAST.mjs +9 -6
- package/utilities/extendSchema.js +26 -19
- package/utilities/extendSchema.js.flow +58 -45
- package/utilities/extendSchema.mjs +9 -2
- package/utilities/findBreakingChanges.js +9 -9
- package/utilities/findBreakingChanges.js.flow +12 -11
- package/utilities/findDeprecatedUsages.d.ts +9 -1
- package/utilities/findDeprecatedUsages.js +11 -27
- package/utilities/findDeprecatedUsages.js.flow +15 -44
- package/utilities/findDeprecatedUsages.mjs +11 -25
- package/utilities/getIntrospectionQuery.js.flow +2 -3
- package/utilities/getOperationAST.js +1 -1
- package/utilities/getOperationAST.js.flow +1 -5
- package/utilities/getOperationAST.mjs +1 -1
- package/utilities/getOperationRootType.js +1 -1
- package/utilities/getOperationRootType.js.flow +5 -6
- package/utilities/index.d.ts +4 -1
- package/utilities/index.js +22 -22
- package/utilities/index.js.flow +1 -2
- package/utilities/index.mjs +1 -1
- package/utilities/introspectionFromSchema.js +6 -8
- package/utilities/introspectionFromSchema.js.flow +10 -10
- package/utilities/introspectionFromSchema.mjs +3 -4
- package/utilities/lexicographicSortSchema.js +10 -8
- package/utilities/lexicographicSortSchema.js.flow +19 -12
- package/utilities/lexicographicSortSchema.mjs +3 -1
- package/utilities/printSchema.js +15 -16
- package/utilities/printSchema.js.flow +34 -25
- package/utilities/printSchema.mjs +6 -7
- package/utilities/separateOperations.js +2 -2
- package/utilities/separateOperations.js.flow +2 -6
- package/utilities/separateOperations.mjs +1 -1
- package/utilities/stripIgnoredCharacters.js +6 -16
- package/utilities/stripIgnoredCharacters.js.flow +4 -13
- package/utilities/stripIgnoredCharacters.mjs +3 -10
- package/utilities/typeComparators.js +1 -1
- package/utilities/typeComparators.js.flow +2 -4
- package/utilities/typeFromAST.js +6 -6
- package/utilities/typeFromAST.js.flow +11 -14
- package/utilities/typeFromAST.mjs +2 -2
- package/utilities/typedQueryDocumentNode.d.ts +20 -0
- package/utilities/valueFromAST.js +6 -6
- package/utilities/valueFromAST.js.flow +7 -5
- package/utilities/valueFromASTUntyped.js +4 -4
- package/utilities/valueFromASTUntyped.js.flow +2 -3
- package/validation/ValidationContext.d.ts +3 -0
- package/validation/ValidationContext.js +7 -3
- package/validation/ValidationContext.js.flow +28 -22
- package/validation/ValidationContext.mjs +4 -0
- package/validation/index.d.ts +4 -0
- package/validation/index.js +52 -36
- package/validation/index.js.flow +4 -1
- package/validation/index.mjs +4 -1
- package/validation/rules/ExecutableDefinitions.js +1 -1
- package/validation/rules/ExecutableDefinitions.js.flow +0 -1
- package/validation/rules/ExecutableDefinitionsRule.js +3 -3
- package/validation/rules/ExecutableDefinitionsRule.js.flow +2 -3
- package/validation/rules/FieldsOnCorrectTypeRule.js +5 -5
- package/validation/rules/FieldsOnCorrectTypeRule.js.flow +9 -8
- package/validation/rules/FragmentsOnCompositeTypesRule.js +4 -4
- package/validation/rules/FragmentsOnCompositeTypesRule.js.flow +2 -3
- package/validation/rules/KnownArgumentNamesRule.js +5 -5
- package/validation/rules/KnownArgumentNamesRule.js.flow +5 -5
- package/validation/rules/KnownDirectivesRule.js +6 -6
- package/validation/rules/KnownDirectivesRule.js.flow +10 -11
- package/validation/rules/KnownFragmentNamesRule.js +1 -1
- package/validation/rules/KnownFragmentNamesRule.js.flow +3 -3
- package/validation/rules/KnownTypeNamesRule.js +12 -10
- package/validation/rules/KnownTypeNamesRule.js.flow +14 -11
- package/validation/rules/KnownTypeNamesRule.mjs +6 -5
- package/validation/rules/LoneAnonymousOperationRule.js +2 -2
- package/validation/rules/LoneAnonymousOperationRule.js.flow +2 -3
- package/validation/rules/LoneSchemaDefinition.js +1 -1
- package/validation/rules/LoneSchemaDefinition.js.flow +0 -1
- package/validation/rules/LoneSchemaDefinitionRule.js +1 -1
- package/validation/rules/LoneSchemaDefinitionRule.js.flow +2 -3
- package/validation/rules/NoFragmentCyclesRule.js +1 -1
- package/validation/rules/NoFragmentCyclesRule.js.flow +4 -5
- package/validation/rules/NoUndefinedVariablesRule.js +1 -1
- package/validation/rules/NoUndefinedVariablesRule.js.flow +3 -3
- package/validation/rules/NoUnusedFragmentsRule.js +1 -1
- package/validation/rules/NoUnusedFragmentsRule.js.flow +3 -3
- package/validation/rules/NoUnusedVariablesRule.js +1 -1
- package/validation/rules/NoUnusedVariablesRule.js.flow +3 -3
- package/validation/rules/OverlappingFieldsCanBeMergedRule.js +20 -20
- package/validation/rules/OverlappingFieldsCanBeMergedRule.js.flow +29 -27
- package/validation/rules/OverlappingFieldsCanBeMergedRule.mjs +12 -12
- package/validation/rules/PossibleFragmentSpreadsRule.js +5 -5
- package/validation/rules/PossibleFragmentSpreadsRule.js.flow +7 -4
- package/validation/rules/PossibleTypeExtensions.js +1 -1
- package/validation/rules/PossibleTypeExtensions.js.flow +0 -1
- package/validation/rules/PossibleTypeExtensionsRule.js +8 -8
- package/validation/rules/PossibleTypeExtensionsRule.js.flow +8 -6
- package/validation/rules/ProvidedRequiredArgumentsRule.js +7 -7
- package/validation/rules/ProvidedRequiredArgumentsRule.js.flow +7 -6
- package/validation/rules/ScalarLeafsRule.js +3 -3
- package/validation/rules/ScalarLeafsRule.js.flow +3 -4
- package/validation/rules/SingleFieldSubscriptionsRule.js +1 -1
- package/validation/rules/SingleFieldSubscriptionsRule.js.flow +3 -4
- package/validation/rules/UniqueArgumentNamesRule.js +1 -1
- package/validation/rules/UniqueArgumentNamesRule.js.flow +2 -3
- package/validation/rules/UniqueDirectiveNames.js +1 -1
- package/validation/rules/UniqueDirectiveNames.js.flow +0 -1
- package/validation/rules/UniqueDirectiveNamesRule.js +1 -1
- package/validation/rules/UniqueDirectiveNamesRule.js.flow +2 -3
- package/validation/rules/UniqueDirectivesPerLocationRule.js +4 -4
- package/validation/rules/UniqueDirectivesPerLocationRule.js.flow +4 -5
- package/validation/rules/UniqueEnumValueNames.js +1 -1
- package/validation/rules/UniqueEnumValueNames.js.flow +0 -1
- package/validation/rules/UniqueEnumValueNamesRule.js +2 -2
- package/validation/rules/UniqueEnumValueNamesRule.js.flow +11 -4
- package/validation/rules/UniqueFieldDefinitionNames.js +1 -1
- package/validation/rules/UniqueFieldDefinitionNames.js.flow +0 -1
- package/validation/rules/UniqueFieldDefinitionNamesRule.js +3 -3
- package/validation/rules/UniqueFieldDefinitionNamesRule.js.flow +17 -6
- package/validation/rules/UniqueFieldDefinitionNamesRule.mjs +1 -1
- package/validation/rules/UniqueFragmentNamesRule.js +1 -1
- package/validation/rules/UniqueFragmentNamesRule.js.flow +3 -3
- package/validation/rules/UniqueInputFieldNamesRule.js +1 -1
- package/validation/rules/UniqueInputFieldNamesRule.js.flow +3 -3
- package/validation/rules/UniqueOperationNamesRule.js +1 -1
- package/validation/rules/UniqueOperationNamesRule.js.flow +3 -3
- package/validation/rules/UniqueOperationTypes.js +1 -1
- package/validation/rules/UniqueOperationTypes.js.flow +0 -1
- package/validation/rules/UniqueOperationTypesRule.js +1 -1
- package/validation/rules/UniqueOperationTypesRule.js.flow +10 -4
- package/validation/rules/UniqueTypeNames.js +1 -1
- package/validation/rules/UniqueTypeNames.js.flow +0 -1
- package/validation/rules/UniqueTypeNamesRule.js +1 -1
- package/validation/rules/UniqueTypeNamesRule.js.flow +3 -4
- package/validation/rules/UniqueVariableNamesRule.js +1 -1
- package/validation/rules/UniqueVariableNamesRule.js.flow +3 -4
- package/validation/rules/ValuesOfCorrectTypeRule.js +8 -8
- package/validation/rules/ValuesOfCorrectTypeRule.js.flow +3 -4
- package/validation/rules/VariablesAreInputTypesRule.js +4 -4
- package/validation/rules/VariablesAreInputTypesRule.js.flow +3 -4
- package/validation/rules/VariablesInAllowedPositionRule.js +6 -6
- package/validation/rules/VariablesInAllowedPositionRule.js.flow +6 -6
- package/validation/rules/custom/NoDeprecatedCustomRule.d.ts +14 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.js +79 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.js.flow +94 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.mjs +68 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +16 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js +34 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js.flow +38 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.mjs +25 -0
- package/validation/specifiedRules.js +33 -33
- package/validation/specifiedRules.js.flow +0 -1
- package/validation/validate.js +7 -7
- package/validation/validate.js.flow +4 -9
- package/version.js +2 -2
- package/version.js.flow +2 -3
- package/version.mjs +2 -2
- package/polyfills/flatMap.js +0 -30
- package/polyfills/flatMap.js.flow +0 -28
- package/polyfills/flatMap.mjs +0 -23
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
-
|
|
3
2
|
import objectValues from '../polyfills/objectValues';
|
|
4
3
|
|
|
5
4
|
import inspect from '../jsutils/inspect';
|
|
@@ -8,22 +7,26 @@ import invariant from '../jsutils/invariant';
|
|
|
8
7
|
import { print } from '../language/printer';
|
|
9
8
|
import { printBlockString } from '../language/blockString';
|
|
10
9
|
|
|
11
|
-
import {
|
|
10
|
+
import type { GraphQLSchema } from '../type/schema';
|
|
11
|
+
import type { GraphQLDirective } from '../type/directives';
|
|
12
|
+
import type {
|
|
13
|
+
GraphQLNamedType,
|
|
14
|
+
GraphQLArgument,
|
|
15
|
+
GraphQLInputField,
|
|
16
|
+
GraphQLScalarType,
|
|
17
|
+
GraphQLEnumType,
|
|
18
|
+
GraphQLObjectType,
|
|
19
|
+
GraphQLInterfaceType,
|
|
20
|
+
GraphQLUnionType,
|
|
21
|
+
GraphQLInputObjectType,
|
|
22
|
+
} from '../type/definition';
|
|
12
23
|
import { isIntrospectionType } from '../type/introspection';
|
|
13
24
|
import { GraphQLString, isSpecifiedScalarType } from '../type/scalars';
|
|
14
25
|
import {
|
|
15
|
-
GraphQLDirective,
|
|
16
26
|
DEFAULT_DEPRECATION_REASON,
|
|
17
27
|
isSpecifiedDirective,
|
|
18
28
|
} from '../type/directives';
|
|
19
29
|
import {
|
|
20
|
-
type GraphQLNamedType,
|
|
21
|
-
type GraphQLScalarType,
|
|
22
|
-
type GraphQLEnumType,
|
|
23
|
-
type GraphQLObjectType,
|
|
24
|
-
type GraphQLInterfaceType,
|
|
25
|
-
type GraphQLUnionType,
|
|
26
|
-
type GraphQLInputObjectType,
|
|
27
30
|
isScalarType,
|
|
28
31
|
isObjectType,
|
|
29
32
|
isInterfaceType,
|
|
@@ -230,7 +233,7 @@ function printEnum(type: GraphQLEnumType, options): string {
|
|
|
230
233
|
printDescription(options, value, ' ', !i) +
|
|
231
234
|
' ' +
|
|
232
235
|
value.name +
|
|
233
|
-
printDeprecated(value),
|
|
236
|
+
printDeprecated(value.deprecationReason),
|
|
234
237
|
);
|
|
235
238
|
|
|
236
239
|
return (
|
|
@@ -248,7 +251,10 @@ function printInputObject(type: GraphQLInputObjectType, options): string {
|
|
|
248
251
|
);
|
|
249
252
|
}
|
|
250
253
|
|
|
251
|
-
function printFields(
|
|
254
|
+
function printFields(
|
|
255
|
+
options,
|
|
256
|
+
type: GraphQLObjectType | GraphQLInterfaceType,
|
|
257
|
+
): string {
|
|
252
258
|
const fields = objectValues(type.getFields()).map(
|
|
253
259
|
(f, i) =>
|
|
254
260
|
printDescription(options, f, ' ', !i) +
|
|
@@ -257,16 +263,20 @@ function printFields(options, type) {
|
|
|
257
263
|
printArgs(options, f.args, ' ') +
|
|
258
264
|
': ' +
|
|
259
265
|
String(f.type) +
|
|
260
|
-
printDeprecated(f),
|
|
266
|
+
printDeprecated(f.deprecationReason),
|
|
261
267
|
);
|
|
262
268
|
return printBlock(fields);
|
|
263
269
|
}
|
|
264
270
|
|
|
265
|
-
function printBlock(items) {
|
|
271
|
+
function printBlock(items: $ReadOnlyArray<string>): string {
|
|
266
272
|
return items.length !== 0 ? ' {\n' + items.join('\n') + '\n}' : '';
|
|
267
273
|
}
|
|
268
274
|
|
|
269
|
-
function printArgs(
|
|
275
|
+
function printArgs(
|
|
276
|
+
options,
|
|
277
|
+
args: Array<GraphQLArgument>,
|
|
278
|
+
indentation: string = '',
|
|
279
|
+
): string {
|
|
270
280
|
if (args.length === 0) {
|
|
271
281
|
return '';
|
|
272
282
|
}
|
|
@@ -293,16 +303,16 @@ function printArgs(options, args, indentation = '') {
|
|
|
293
303
|
);
|
|
294
304
|
}
|
|
295
305
|
|
|
296
|
-
function printInputValue(arg) {
|
|
306
|
+
function printInputValue(arg: GraphQLInputField): string {
|
|
297
307
|
const defaultAST = astFromValue(arg.defaultValue, arg.type);
|
|
298
308
|
let argDecl = arg.name + ': ' + String(arg.type);
|
|
299
309
|
if (defaultAST) {
|
|
300
310
|
argDecl += ` = ${print(defaultAST)}`;
|
|
301
311
|
}
|
|
302
|
-
return argDecl;
|
|
312
|
+
return argDecl + printDeprecated(arg.deprecationReason);
|
|
303
313
|
}
|
|
304
314
|
|
|
305
|
-
function printDirective(directive, options) {
|
|
315
|
+
function printDirective(directive: GraphQLDirective, options): string {
|
|
306
316
|
return (
|
|
307
317
|
printDescription(options, directive) +
|
|
308
318
|
'directive @' +
|
|
@@ -314,11 +324,10 @@ function printDirective(directive, options) {
|
|
|
314
324
|
);
|
|
315
325
|
}
|
|
316
326
|
|
|
317
|
-
function printDeprecated(
|
|
318
|
-
if (
|
|
327
|
+
function printDeprecated(reason: ?string): string {
|
|
328
|
+
if (reason == null) {
|
|
319
329
|
return '';
|
|
320
330
|
}
|
|
321
|
-
const reason = fieldOrEnumVal.deprecationReason;
|
|
322
331
|
const reasonAST = astFromValue(reason, GraphQLString);
|
|
323
332
|
if (reasonAST && reason !== DEFAULT_DEPRECATION_REASON) {
|
|
324
333
|
return ' @deprecated(reason: ' + print(reasonAST) + ')';
|
|
@@ -326,7 +335,7 @@ function printDeprecated(fieldOrEnumVal) {
|
|
|
326
335
|
return ' @deprecated';
|
|
327
336
|
}
|
|
328
337
|
|
|
329
|
-
function printSpecifiedByUrl(scalar: GraphQLScalarType) {
|
|
338
|
+
function printSpecifiedByUrl(scalar: GraphQLScalarType): string {
|
|
330
339
|
if (scalar.specifiedByUrl == null) {
|
|
331
340
|
return '';
|
|
332
341
|
}
|
|
@@ -341,9 +350,9 @@ function printSpecifiedByUrl(scalar: GraphQLScalarType) {
|
|
|
341
350
|
|
|
342
351
|
function printDescription(
|
|
343
352
|
options,
|
|
344
|
-
def,
|
|
345
|
-
indentation = '',
|
|
346
|
-
firstInBlock = true,
|
|
353
|
+
def: { +description: ?string, ... },
|
|
354
|
+
indentation: string = '',
|
|
355
|
+
firstInBlock: boolean = true,
|
|
347
356
|
): string {
|
|
348
357
|
const { description } = def;
|
|
349
358
|
if (description == null) {
|
|
@@ -5,7 +5,7 @@ import { print } from "../language/printer.mjs";
|
|
|
5
5
|
import { printBlockString } from "../language/blockString.mjs";
|
|
6
6
|
import { isIntrospectionType } from "../type/introspection.mjs";
|
|
7
7
|
import { GraphQLString, isSpecifiedScalarType } from "../type/scalars.mjs";
|
|
8
|
-
import {
|
|
8
|
+
import { DEFAULT_DEPRECATION_REASON, isSpecifiedDirective } from "../type/directives.mjs";
|
|
9
9
|
import { isScalarType, isObjectType, isInterfaceType, isUnionType, isEnumType, isInputObjectType } from "../type/definition.mjs";
|
|
10
10
|
import { astFromValue } from "./astFromValue.mjs";
|
|
11
11
|
|
|
@@ -158,7 +158,7 @@ function printUnion(type, options) {
|
|
|
158
158
|
|
|
159
159
|
function printEnum(type, options) {
|
|
160
160
|
var values = type.getValues().map(function (value, i) {
|
|
161
|
-
return printDescription(options, value, ' ', !i) + ' ' + value.name + printDeprecated(value);
|
|
161
|
+
return printDescription(options, value, ' ', !i) + ' ' + value.name + printDeprecated(value.deprecationReason);
|
|
162
162
|
});
|
|
163
163
|
return printDescription(options, type) + "enum ".concat(type.name) + printBlock(values);
|
|
164
164
|
}
|
|
@@ -172,7 +172,7 @@ function printInputObject(type, options) {
|
|
|
172
172
|
|
|
173
173
|
function printFields(options, type) {
|
|
174
174
|
var fields = objectValues(type.getFields()).map(function (f, i) {
|
|
175
|
-
return printDescription(options, f, ' ', !i) + ' ' + f.name + printArgs(options, f.args, ' ') + ': ' + String(f.type) + printDeprecated(f);
|
|
175
|
+
return printDescription(options, f, ' ', !i) + ' ' + f.name + printArgs(options, f.args, ' ') + ': ' + String(f.type) + printDeprecated(f.deprecationReason);
|
|
176
176
|
});
|
|
177
177
|
return printBlock(fields);
|
|
178
178
|
}
|
|
@@ -208,19 +208,18 @@ function printInputValue(arg) {
|
|
|
208
208
|
argDecl += " = ".concat(print(defaultAST));
|
|
209
209
|
}
|
|
210
210
|
|
|
211
|
-
return argDecl;
|
|
211
|
+
return argDecl + printDeprecated(arg.deprecationReason);
|
|
212
212
|
}
|
|
213
213
|
|
|
214
214
|
function printDirective(directive, options) {
|
|
215
215
|
return printDescription(options, directive) + 'directive @' + directive.name + printArgs(options, directive.args) + (directive.isRepeatable ? ' repeatable' : '') + ' on ' + directive.locations.join(' | ');
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
-
function printDeprecated(
|
|
219
|
-
if (
|
|
218
|
+
function printDeprecated(reason) {
|
|
219
|
+
if (reason == null) {
|
|
220
220
|
return '';
|
|
221
221
|
}
|
|
222
222
|
|
|
223
|
-
var reason = fieldOrEnumVal.deprecationReason;
|
|
224
223
|
var reasonAST = astFromValue(reason, GraphQLString);
|
|
225
224
|
|
|
226
225
|
if (reasonAST && reason !== DEFAULT_DEPRECATION_REASON) {
|
|
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.separateOperations = separateOperations;
|
|
7
7
|
|
|
8
|
-
var _kinds = require("../language/kinds");
|
|
8
|
+
var _kinds = require("../language/kinds.js");
|
|
9
9
|
|
|
10
|
-
var _visitor = require("../language/visitor");
|
|
10
|
+
var _visitor = require("../language/visitor.js");
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* separateOperations accepts a single AST document which may contain many
|
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
+
import type { ObjMap } from '../jsutils/ObjMap';
|
|
2
3
|
|
|
3
|
-
import {
|
|
4
|
-
|
|
4
|
+
import type { DocumentNode, OperationDefinitionNode } from '../language/ast';
|
|
5
5
|
import { Kind } from '../language/kinds';
|
|
6
6
|
import { visit } from '../language/visitor';
|
|
7
|
-
import {
|
|
8
|
-
type DocumentNode,
|
|
9
|
-
type OperationDefinitionNode,
|
|
10
|
-
} from '../language/ast';
|
|
11
7
|
|
|
12
8
|
/**
|
|
13
9
|
* separateOperations accepts a single AST document which may contain many
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Kind } from "../language/kinds.mjs";
|
|
2
2
|
import { visit } from "../language/visitor.mjs";
|
|
3
|
-
|
|
4
3
|
/**
|
|
5
4
|
* separateOperations accepts a single AST document which may contain many
|
|
6
5
|
* operations and fragments and returns a collection of AST documents each of
|
|
7
6
|
* which contains a single operation as well the fragment definitions it
|
|
8
7
|
* refers to.
|
|
9
8
|
*/
|
|
9
|
+
|
|
10
10
|
export function separateOperations(documentAST) {
|
|
11
11
|
var operations = [];
|
|
12
12
|
var depGraph = Object.create(null);
|
|
@@ -5,17 +5,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.stripIgnoredCharacters = stripIgnoredCharacters;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _source = require("../language/source.js");
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _tokenKind = require("../language/tokenKind.js");
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _lexer = require("../language/lexer.js");
|
|
13
13
|
|
|
14
|
-
var
|
|
15
|
-
|
|
16
|
-
var _blockString = require("../language/blockString");
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
|
+
var _blockString = require("../language/blockString.js");
|
|
19
15
|
|
|
20
16
|
/**
|
|
21
17
|
* Strips characters that are not significant to the validity or execution
|
|
@@ -70,12 +66,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
70
66
|
* """Type description""" type Foo{"""Field description""" bar:String}
|
|
71
67
|
*/
|
|
72
68
|
function stripIgnoredCharacters(source) {
|
|
73
|
-
var sourceObj =
|
|
74
|
-
|
|
75
|
-
if (!(sourceObj instanceof _source.Source)) {
|
|
76
|
-
throw new TypeError("Must provide string or Source. Received: ".concat((0, _inspect.default)(sourceObj), "."));
|
|
77
|
-
}
|
|
78
|
-
|
|
69
|
+
var sourceObj = (0, _source.isSource)(source) ? source : new _source.Source(source);
|
|
79
70
|
var body = sourceObj.body;
|
|
80
71
|
var lexer = new _lexer.Lexer(sourceObj);
|
|
81
72
|
var strippedBody = '';
|
|
@@ -116,9 +107,8 @@ function dedentBlockString(blockStr) {
|
|
|
116
107
|
// skip leading and trailing triple quotations
|
|
117
108
|
var rawStr = blockStr.slice(3, -3);
|
|
118
109
|
var body = (0, _blockString.dedentBlockStringValue)(rawStr);
|
|
119
|
-
var lines = body.split(/\r\n|[\n\r]/g);
|
|
120
110
|
|
|
121
|
-
if ((0, _blockString.getBlockStringIndentation)(
|
|
111
|
+
if ((0, _blockString.getBlockStringIndentation)(body) > 0) {
|
|
122
112
|
body = '\n' + body;
|
|
123
113
|
}
|
|
124
114
|
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
-
|
|
3
|
-
import inspect from '../jsutils/inspect';
|
|
4
|
-
|
|
5
|
-
import { Source } from '../language/source';
|
|
2
|
+
import { Source, isSource } from '../language/source';
|
|
6
3
|
import { TokenKind } from '../language/tokenKind';
|
|
7
4
|
import { Lexer, isPunctuatorTokenKind } from '../language/lexer';
|
|
8
5
|
import {
|
|
@@ -63,12 +60,7 @@ import {
|
|
|
63
60
|
* """Type description""" type Foo{"""Field description""" bar:String}
|
|
64
61
|
*/
|
|
65
62
|
export function stripIgnoredCharacters(source: string | Source): string {
|
|
66
|
-
const sourceObj =
|
|
67
|
-
if (!(sourceObj instanceof Source)) {
|
|
68
|
-
throw new TypeError(
|
|
69
|
-
`Must provide string or Source. Received: ${inspect(sourceObj)}.`,
|
|
70
|
-
);
|
|
71
|
-
}
|
|
63
|
+
const sourceObj = isSource(source) ? source : new Source(source);
|
|
72
64
|
|
|
73
65
|
const body = sourceObj.body;
|
|
74
66
|
const lexer = new Lexer(sourceObj);
|
|
@@ -104,13 +96,12 @@ export function stripIgnoredCharacters(source: string | Source): string {
|
|
|
104
96
|
return strippedBody;
|
|
105
97
|
}
|
|
106
98
|
|
|
107
|
-
function dedentBlockString(blockStr) {
|
|
99
|
+
function dedentBlockString(blockStr: string): string {
|
|
108
100
|
// skip leading and trailing triple quotations
|
|
109
101
|
const rawStr = blockStr.slice(3, -3);
|
|
110
102
|
let body = dedentBlockStringValue(rawStr);
|
|
111
103
|
|
|
112
|
-
|
|
113
|
-
if (getBlockStringIndentation(lines) > 0) {
|
|
104
|
+
if (getBlockStringIndentation(body) > 0) {
|
|
114
105
|
body = '\n' + body;
|
|
115
106
|
}
|
|
116
107
|
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Source } from "../language/source.mjs";
|
|
1
|
+
import { Source, isSource } from "../language/source.mjs";
|
|
3
2
|
import { TokenKind } from "../language/tokenKind.mjs";
|
|
4
3
|
import { Lexer, isPunctuatorTokenKind } from "../language/lexer.mjs";
|
|
5
4
|
import { dedentBlockStringValue, getBlockStringIndentation } from "../language/blockString.mjs";
|
|
@@ -57,12 +56,7 @@ import { dedentBlockStringValue, getBlockStringIndentation } from "../language/b
|
|
|
57
56
|
*/
|
|
58
57
|
|
|
59
58
|
export function stripIgnoredCharacters(source) {
|
|
60
|
-
var sourceObj =
|
|
61
|
-
|
|
62
|
-
if (!(sourceObj instanceof Source)) {
|
|
63
|
-
throw new TypeError("Must provide string or Source. Received: ".concat(inspect(sourceObj), "."));
|
|
64
|
-
}
|
|
65
|
-
|
|
59
|
+
var sourceObj = isSource(source) ? source : new Source(source);
|
|
66
60
|
var body = sourceObj.body;
|
|
67
61
|
var lexer = new Lexer(sourceObj);
|
|
68
62
|
var strippedBody = '';
|
|
@@ -103,9 +97,8 @@ function dedentBlockString(blockStr) {
|
|
|
103
97
|
// skip leading and trailing triple quotations
|
|
104
98
|
var rawStr = blockStr.slice(3, -3);
|
|
105
99
|
var body = dedentBlockStringValue(rawStr);
|
|
106
|
-
var lines = body.split(/\r\n|[\n\r]/g);
|
|
107
100
|
|
|
108
|
-
if (getBlockStringIndentation(
|
|
101
|
+
if (getBlockStringIndentation(body) > 0) {
|
|
109
102
|
body = '\n' + body;
|
|
110
103
|
}
|
|
111
104
|
|
|
@@ -7,7 +7,7 @@ exports.isEqualType = isEqualType;
|
|
|
7
7
|
exports.isTypeSubTypeOf = isTypeSubTypeOf;
|
|
8
8
|
exports.doTypesOverlap = doTypesOverlap;
|
|
9
9
|
|
|
10
|
-
var _definition = require("../type/definition");
|
|
10
|
+
var _definition = require("../type/definition.js");
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Provided two types, return true if the types are equal (invariant).
|
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
-
|
|
3
|
-
import {
|
|
2
|
+
import type { GraphQLSchema } from '../type/schema';
|
|
3
|
+
import type { GraphQLType, GraphQLCompositeType } from '../type/definition';
|
|
4
4
|
import {
|
|
5
|
-
type GraphQLType,
|
|
6
|
-
type GraphQLCompositeType,
|
|
7
5
|
isInterfaceType,
|
|
8
6
|
isObjectType,
|
|
9
7
|
isListType,
|
package/utilities/typeFromAST.js
CHANGED
|
@@ -5,13 +5,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.typeFromAST = typeFromAST;
|
|
7
7
|
|
|
8
|
-
var _inspect = _interopRequireDefault(require("../jsutils/inspect"));
|
|
8
|
+
var _inspect = _interopRequireDefault(require("../jsutils/inspect.js"));
|
|
9
9
|
|
|
10
|
-
var _invariant = _interopRequireDefault(require("../jsutils/invariant"));
|
|
10
|
+
var _invariant = _interopRequireDefault(require("../jsutils/invariant.js"));
|
|
11
11
|
|
|
12
|
-
var _kinds = require("../language/kinds");
|
|
12
|
+
var _kinds = require("../language/kinds.js");
|
|
13
13
|
|
|
14
|
-
var _definition = require("../type/definition");
|
|
14
|
+
var _definition = require("../type/definition.js");
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
@@ -21,12 +21,12 @@ function typeFromAST(schema, typeNode) {
|
|
|
21
21
|
|
|
22
22
|
if (typeNode.kind === _kinds.Kind.LIST_TYPE) {
|
|
23
23
|
innerType = typeFromAST(schema, typeNode.type);
|
|
24
|
-
return innerType &&
|
|
24
|
+
return innerType && new _definition.GraphQLList(innerType);
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
if (typeNode.kind === _kinds.Kind.NON_NULL_TYPE) {
|
|
28
28
|
innerType = typeFromAST(schema, typeNode.type);
|
|
29
|
-
return innerType &&
|
|
29
|
+
return innerType && new _definition.GraphQLNonNull(innerType);
|
|
30
30
|
} // istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2618')
|
|
31
31
|
|
|
32
32
|
|
|
@@ -1,21 +1,18 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
-
|
|
3
2
|
import inspect from '../jsutils/inspect';
|
|
4
3
|
import invariant from '../jsutils/invariant';
|
|
5
4
|
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
type NonNullTypeNode,
|
|
5
|
+
import type {
|
|
6
|
+
NamedTypeNode,
|
|
7
|
+
ListTypeNode,
|
|
8
|
+
NonNullTypeNode,
|
|
11
9
|
} from '../language/ast';
|
|
12
10
|
|
|
13
|
-
import {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
} from '../type/definition';
|
|
11
|
+
import { Kind } from '../language/kinds';
|
|
12
|
+
|
|
13
|
+
import type { GraphQLSchema } from '../type/schema';
|
|
14
|
+
import type { GraphQLNamedType } from '../type/definition';
|
|
15
|
+
import { GraphQLList, GraphQLNonNull } from '../type/definition';
|
|
19
16
|
|
|
20
17
|
/**
|
|
21
18
|
* Given a Schema and an AST node describing a type, return a GraphQLType
|
|
@@ -42,11 +39,11 @@ export function typeFromAST(schema, typeNode) {
|
|
|
42
39
|
let innerType;
|
|
43
40
|
if (typeNode.kind === Kind.LIST_TYPE) {
|
|
44
41
|
innerType = typeFromAST(schema, typeNode.type);
|
|
45
|
-
return innerType && GraphQLList(innerType);
|
|
42
|
+
return innerType && new GraphQLList(innerType);
|
|
46
43
|
}
|
|
47
44
|
if (typeNode.kind === Kind.NON_NULL_TYPE) {
|
|
48
45
|
innerType = typeFromAST(schema, typeNode.type);
|
|
49
|
-
return innerType && GraphQLNonNull(innerType);
|
|
46
|
+
return innerType && new GraphQLNonNull(innerType);
|
|
50
47
|
}
|
|
51
48
|
// istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2618')
|
|
52
49
|
if (typeNode.kind === Kind.NAMED_TYPE) {
|
|
@@ -18,12 +18,12 @@ export function typeFromAST(schema, typeNode) {
|
|
|
18
18
|
|
|
19
19
|
if (typeNode.kind === Kind.LIST_TYPE) {
|
|
20
20
|
innerType = typeFromAST(schema, typeNode.type);
|
|
21
|
-
return innerType && GraphQLList(innerType);
|
|
21
|
+
return innerType && new GraphQLList(innerType);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
if (typeNode.kind === Kind.NON_NULL_TYPE) {
|
|
25
25
|
innerType = typeFromAST(schema, typeNode.type);
|
|
26
|
-
return innerType && GraphQLNonNull(innerType);
|
|
26
|
+
return innerType && new GraphQLNonNull(innerType);
|
|
27
27
|
} // istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2618')
|
|
28
28
|
|
|
29
29
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DocumentNode, ExecutableDefinitionNode } from '../language/ast';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Wrapper type that contains DocumentNode and types that can be deduced from it.
|
|
5
|
+
*/
|
|
6
|
+
export interface TypedQueryDocumentNode<
|
|
7
|
+
TResponseData = Record<string, any>,
|
|
8
|
+
TRequestVariables = Record<string, any>
|
|
9
|
+
> extends DocumentNode {
|
|
10
|
+
readonly definitions: ReadonlyArray<ExecutableDefinitionNode>;
|
|
11
|
+
// FIXME: remove once TS implements proper way to enforce nominal typing
|
|
12
|
+
/**
|
|
13
|
+
* This type is used to ensure that the variables you pass in to the query are assignable to Variables
|
|
14
|
+
* and that the Result is assignable to whatever you pass your result to. The method is never actually
|
|
15
|
+
* implemented, but the type is valid because we list it as optional
|
|
16
|
+
*/
|
|
17
|
+
__ensureTypesOfVariablesAndResultMatching?: (
|
|
18
|
+
variables: TRequestVariables,
|
|
19
|
+
) => TResponseData;
|
|
20
|
+
}
|
|
@@ -5,17 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.valueFromAST = valueFromAST;
|
|
7
7
|
|
|
8
|
-
var _objectValues3 = _interopRequireDefault(require("../polyfills/objectValues"));
|
|
8
|
+
var _objectValues3 = _interopRequireDefault(require("../polyfills/objectValues.js"));
|
|
9
9
|
|
|
10
|
-
var _keyMap = _interopRequireDefault(require("../jsutils/keyMap"));
|
|
10
|
+
var _keyMap = _interopRequireDefault(require("../jsutils/keyMap.js"));
|
|
11
11
|
|
|
12
|
-
var _inspect = _interopRequireDefault(require("../jsutils/inspect"));
|
|
12
|
+
var _inspect = _interopRequireDefault(require("../jsutils/inspect.js"));
|
|
13
13
|
|
|
14
|
-
var _invariant = _interopRequireDefault(require("../jsutils/invariant"));
|
|
14
|
+
var _invariant = _interopRequireDefault(require("../jsutils/invariant.js"));
|
|
15
15
|
|
|
16
|
-
var _kinds = require("../language/kinds");
|
|
16
|
+
var _kinds = require("../language/kinds.js");
|
|
17
17
|
|
|
18
|
-
var _definition = require("../type/definition");
|
|
18
|
+
var _definition = require("../type/definition.js");
|
|
19
19
|
|
|
20
20
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
21
|
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
-
|
|
3
2
|
import objectValues from '../polyfills/objectValues';
|
|
4
3
|
|
|
4
|
+
import type { ObjMap } from '../jsutils/ObjMap';
|
|
5
5
|
import keyMap from '../jsutils/keyMap';
|
|
6
6
|
import inspect from '../jsutils/inspect';
|
|
7
7
|
import invariant from '../jsutils/invariant';
|
|
8
|
-
import { type ObjMap } from '../jsutils/ObjMap';
|
|
9
8
|
|
|
9
|
+
import type { ValueNode } from '../language/ast';
|
|
10
10
|
import { Kind } from '../language/kinds';
|
|
11
|
-
import { type ValueNode } from '../language/ast';
|
|
12
11
|
|
|
12
|
+
import type { GraphQLInputType } from '../type/definition';
|
|
13
13
|
import {
|
|
14
|
-
type GraphQLInputType,
|
|
15
14
|
isLeafType,
|
|
16
15
|
isInputObjectType,
|
|
17
16
|
isListType,
|
|
@@ -154,7 +153,10 @@ export function valueFromAST(
|
|
|
154
153
|
|
|
155
154
|
// Returns true if the provided valueNode is a variable which is not defined
|
|
156
155
|
// in the set of variables.
|
|
157
|
-
function isMissingVariable(
|
|
156
|
+
function isMissingVariable(
|
|
157
|
+
valueNode: ValueNode,
|
|
158
|
+
variables: ?ObjMap<mixed>,
|
|
159
|
+
): boolean {
|
|
158
160
|
return (
|
|
159
161
|
valueNode.kind === Kind.VARIABLE &&
|
|
160
162
|
(variables == null || variables[valueNode.name.value] === undefined)
|
|
@@ -5,13 +5,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.valueFromASTUntyped = valueFromASTUntyped;
|
|
7
7
|
|
|
8
|
-
var _inspect = _interopRequireDefault(require("../jsutils/inspect"));
|
|
8
|
+
var _inspect = _interopRequireDefault(require("../jsutils/inspect.js"));
|
|
9
9
|
|
|
10
|
-
var _invariant = _interopRequireDefault(require("../jsutils/invariant"));
|
|
10
|
+
var _invariant = _interopRequireDefault(require("../jsutils/invariant.js"));
|
|
11
11
|
|
|
12
|
-
var _keyValMap = _interopRequireDefault(require("../jsutils/keyValMap"));
|
|
12
|
+
var _keyValMap = _interopRequireDefault(require("../jsutils/keyValMap.js"));
|
|
13
13
|
|
|
14
|
-
var _kinds = require("../language/kinds");
|
|
14
|
+
var _kinds = require("../language/kinds.js");
|
|
15
15
|
|
|
16
16
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
17
|
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
// @flow strict
|
|
2
|
-
|
|
2
|
+
import type { ObjMap } from '../jsutils/ObjMap';
|
|
3
3
|
import inspect from '../jsutils/inspect';
|
|
4
4
|
import invariant from '../jsutils/invariant';
|
|
5
5
|
import keyValMap from '../jsutils/keyValMap';
|
|
6
|
-
import { type ObjMap } from '../jsutils/ObjMap';
|
|
7
6
|
|
|
8
7
|
import { Kind } from '../language/kinds';
|
|
9
|
-
import {
|
|
8
|
+
import type { ValueNode } from '../language/ast';
|
|
10
9
|
|
|
11
10
|
/**
|
|
12
11
|
* Produces a JavaScript value given a GraphQL Value AST.
|
|
@@ -18,6 +18,7 @@ import {
|
|
|
18
18
|
GraphQLCompositeType,
|
|
19
19
|
GraphQLField,
|
|
20
20
|
GraphQLArgument,
|
|
21
|
+
GraphQLEnumValue,
|
|
21
22
|
} from '../type/definition';
|
|
22
23
|
import { TypeInfo } from '../utilities/TypeInfo';
|
|
23
24
|
|
|
@@ -90,6 +91,8 @@ export class ValidationContext extends ASTValidationContext {
|
|
|
90
91
|
getDirective(): Maybe<GraphQLDirective>;
|
|
91
92
|
|
|
92
93
|
getArgument(): Maybe<GraphQLArgument>;
|
|
94
|
+
|
|
95
|
+
getEnumValue(): Maybe<GraphQLEnumValue>;
|
|
93
96
|
}
|
|
94
97
|
|
|
95
98
|
export type ValidationRule = (context: ValidationContext) => ASTVisitor;
|
|
@@ -5,11 +5,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.ValidationContext = exports.SDLValidationContext = exports.ASTValidationContext = void 0;
|
|
7
7
|
|
|
8
|
-
var _kinds = require("../language/kinds");
|
|
8
|
+
var _kinds = require("../language/kinds.js");
|
|
9
9
|
|
|
10
|
-
var _visitor = require("../language/visitor");
|
|
10
|
+
var _visitor = require("../language/visitor.js");
|
|
11
11
|
|
|
12
|
-
var _TypeInfo = require("../utilities/TypeInfo");
|
|
12
|
+
var _TypeInfo = require("../utilities/TypeInfo.js");
|
|
13
13
|
|
|
14
14
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
|
|
15
15
|
|
|
@@ -231,6 +231,10 @@ var ValidationContext = /*#__PURE__*/function (_ASTValidationContext2) {
|
|
|
231
231
|
return this._typeInfo.getArgument();
|
|
232
232
|
};
|
|
233
233
|
|
|
234
|
+
_proto3.getEnumValue = function getEnumValue() {
|
|
235
|
+
return this._typeInfo.getEnumValue();
|
|
236
|
+
};
|
|
237
|
+
|
|
234
238
|
return ValidationContext;
|
|
235
239
|
}(ASTValidationContext);
|
|
236
240
|
|