graphql 0.0.1-test.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/LICENSE +21 -0
- package/NotSupportedTSVersion.d.ts +1 -0
- package/README.md +158 -0
- package/error/GraphQLError.d.ts +142 -0
- package/error/GraphQLError.js +267 -0
- package/error/GraphQLError.mjs +253 -0
- package/error/index.d.ts +7 -0
- package/error/index.js +41 -0
- package/error/index.mjs +3 -0
- package/error/locatedError.d.ts +13 -0
- package/error/locatedError.js +40 -0
- package/error/locatedError.mjs +32 -0
- package/error/syntaxError.d.ts +11 -0
- package/error/syntaxError.js +21 -0
- package/error/syntaxError.mjs +11 -0
- package/execution/collectFields.d.ts +45 -0
- package/execution/collectFields.js +229 -0
- package/execution/collectFields.mjs +213 -0
- package/execution/execute.d.ts +185 -0
- package/execution/execute.js +1016 -0
- package/execution/execute.mjs +988 -0
- package/execution/index.d.ts +14 -0
- package/execution/index.js +67 -0
- package/execution/index.mjs +9 -0
- package/execution/mapAsyncIterator.d.ts +9 -0
- package/execution/mapAsyncIterator.js +68 -0
- package/execution/mapAsyncIterator.mjs +61 -0
- package/execution/subscribe.d.ts +68 -0
- package/execution/subscribe.js +261 -0
- package/execution/subscribe.mjs +239 -0
- package/execution/values.d.ts +81 -0
- package/execution/values.js +292 -0
- package/execution/values.mjs +255 -0
- package/graphql.d.ts +67 -0
- package/graphql.js +96 -0
- package/graphql.mjs +122 -0
- package/index.d.ts +411 -0
- package/index.js +1263 -0
- package/index.mjs +254 -0
- package/jsutils/Maybe.d.ts +2 -0
- package/jsutils/Maybe.js +5 -0
- package/jsutils/Maybe.mjs +1 -0
- package/jsutils/ObjMap.d.ts +16 -0
- package/jsutils/ObjMap.js +5 -0
- package/jsutils/ObjMap.mjs +1 -0
- package/jsutils/Path.d.ts +20 -0
- package/jsutils/Path.js +33 -0
- package/jsutils/Path.mjs +25 -0
- package/jsutils/PromiseOrValue.d.ts +1 -0
- package/jsutils/PromiseOrValue.js +5 -0
- package/jsutils/PromiseOrValue.mjs +1 -0
- package/jsutils/devAssert.d.ts +1 -0
- package/jsutils/devAssert.js +14 -0
- package/jsutils/devAssert.mjs +7 -0
- package/jsutils/didYouMean.d.ts +8 -0
- package/jsutils/didYouMean.js +38 -0
- package/jsutils/didYouMean.mjs +32 -0
- package/jsutils/groupBy.d.ts +7 -0
- package/jsutils/groupBy.js +26 -0
- package/jsutils/groupBy.mjs +19 -0
- package/jsutils/identityFunc.d.ts +4 -0
- package/jsutils/identityFunc.js +13 -0
- package/jsutils/identityFunc.mjs +6 -0
- package/jsutils/inspect.d.ts +4 -0
- package/jsutils/inspect.js +121 -0
- package/jsutils/inspect.mjs +115 -0
- package/jsutils/instanceOf.d.ts +16 -0
- package/jsutils/instanceOf.js +60 -0
- package/jsutils/instanceOf.mjs +52 -0
- package/jsutils/invariant.d.ts +4 -0
- package/jsutils/invariant.js +16 -0
- package/jsutils/invariant.mjs +9 -0
- package/jsutils/isAsyncIterable.d.ts +7 -0
- package/jsutils/isAsyncIterable.js +18 -0
- package/jsutils/isAsyncIterable.mjs +11 -0
- package/jsutils/isIterableObject.d.ts +20 -0
- package/jsutils/isIterableObject.js +32 -0
- package/jsutils/isIterableObject.mjs +25 -0
- package/jsutils/isObjectLike.d.ts +7 -0
- package/jsutils/isObjectLike.js +14 -0
- package/jsutils/isObjectLike.mjs +7 -0
- package/jsutils/isPromise.d.ts +5 -0
- package/jsutils/isPromise.js +17 -0
- package/jsutils/isPromise.mjs +10 -0
- package/jsutils/keyMap.d.ts +32 -0
- package/jsutils/keyMap.js +43 -0
- package/jsutils/keyMap.mjs +36 -0
- package/jsutils/keyValMap.d.ts +23 -0
- package/jsutils/keyValMap.js +33 -0
- package/jsutils/keyValMap.mjs +26 -0
- package/jsutils/mapValue.d.ts +9 -0
- package/jsutils/mapValue.js +20 -0
- package/jsutils/mapValue.mjs +13 -0
- package/jsutils/memoize3.d.ts +9 -0
- package/jsutils/memoize3.js +41 -0
- package/jsutils/memoize3.mjs +34 -0
- package/jsutils/naturalCompare.d.ts +8 -0
- package/jsutils/naturalCompare.js +69 -0
- package/jsutils/naturalCompare.mjs +61 -0
- package/jsutils/printPathArray.d.ts +6 -0
- package/jsutils/printPathArray.js +17 -0
- package/jsutils/printPathArray.mjs +10 -0
- package/jsutils/promiseForObject.d.ts +11 -0
- package/jsutils/promiseForObject.js +25 -0
- package/jsutils/promiseForObject.mjs +18 -0
- package/jsutils/promiseReduce.d.ts +13 -0
- package/jsutils/promiseReduce.js +27 -0
- package/jsutils/promiseReduce.mjs +20 -0
- package/jsutils/suggestionList.d.ts +8 -0
- package/jsutils/suggestionList.js +139 -0
- package/jsutils/suggestionList.mjs +130 -0
- package/jsutils/toError.d.ts +4 -0
- package/jsutils/toError.js +25 -0
- package/jsutils/toError.mjs +18 -0
- package/jsutils/toObjMap.d.ts +5 -0
- package/jsutils/toObjMap.js +24 -0
- package/jsutils/toObjMap.mjs +17 -0
- package/language/ast.d.ts +536 -0
- package/language/ast.js +224 -0
- package/language/ast.mjs +206 -0
- package/language/blockString.d.ts +28 -0
- package/language/blockString.js +195 -0
- package/language/blockString.mjs +178 -0
- package/language/characterClasses.d.ts +47 -0
- package/language/characterClasses.js +75 -0
- package/language/characterClasses.mjs +64 -0
- package/language/directiveLocation.d.ts +32 -0
- package/language/directiveLocation.js +40 -0
- package/language/directiveLocation.mjs +31 -0
- package/language/index.d.ts +97 -0
- package/language/index.js +215 -0
- package/language/index.mjs +29 -0
- package/language/kinds.d.ts +65 -0
- package/language/kinds.js +64 -0
- package/language/kinds.mjs +55 -0
- package/language/lexer.d.ts +45 -0
- package/language/lexer.js +1006 -0
- package/language/lexer.mjs +902 -0
- package/language/location.d.ts +16 -0
- package/language/location.js +38 -0
- package/language/location.mjs +30 -0
- package/language/parser.d.ts +554 -0
- package/language/parser.js +1567 -0
- package/language/parser.mjs +1524 -0
- package/language/predicates.d.ts +33 -0
- package/language/predicates.js +109 -0
- package/language/predicates.mjs +81 -0
- package/language/printLocation.d.ts +14 -0
- package/language/printLocation.js +74 -0
- package/language/printLocation.mjs +66 -0
- package/language/printString.d.ts +5 -0
- package/language/printString.js +183 -0
- package/language/printString.mjs +176 -0
- package/language/printer.d.ts +6 -0
- package/language/printer.js +351 -0
- package/language/printer.mjs +339 -0
- package/language/source.d.ts +25 -0
- package/language/source.js +65 -0
- package/language/source.mjs +50 -0
- package/language/tokenKind.d.ts +34 -0
- package/language/tokenKind.js +44 -0
- package/language/tokenKind.mjs +35 -0
- package/language/visitor.d.ts +194 -0
- package/language/visitor.js +377 -0
- package/language/visitor.mjs +361 -0
- package/package.json +40 -0
- package/subscription/index.d.ts +19 -0
- package/subscription/index.js +19 -0
- package/subscription/index.mjs +19 -0
- package/type/assertName.d.ts +10 -0
- package/type/assertName.js +59 -0
- package/type/assertName.mjs +44 -0
- package/type/definition.d.ts +917 -0
- package/type/definition.js +1329 -0
- package/type/definition.mjs +1167 -0
- package/type/directives.d.ts +86 -0
- package/type/directives.js +224 -0
- package/type/directives.mjs +190 -0
- package/type/index.d.ts +150 -0
- package/type/index.js +547 -0
- package/type/index.mjs +103 -0
- package/type/introspection.d.ts +29 -0
- package/type/introspection.js +617 -0
- package/type/introspection.mjs +550 -0
- package/type/scalars.d.ts +19 -0
- package/type/scalars.js +359 -0
- package/type/scalars.mjs +299 -0
- package/type/schema.d.ts +170 -0
- package/type/schema.js +402 -0
- package/type/schema.mjs +381 -0
- package/type/validate.d.ts +17 -0
- package/type/validate.js +672 -0
- package/type/validate.mjs +647 -0
- package/utilities/TypeInfo.d.ts +67 -0
- package/utilities/TypeInfo.js +418 -0
- package/utilities/TypeInfo.mjs +395 -0
- package/utilities/assertValidName.d.ts +13 -0
- package/utilities/assertValidName.js +51 -0
- package/utilities/assertValidName.mjs +40 -0
- package/utilities/astFromValue.d.ts +28 -0
- package/utilities/astFromValue.js +190 -0
- package/utilities/astFromValue.mjs +177 -0
- package/utilities/buildASTSchema.d.ts +35 -0
- package/utilities/buildASTSchema.js +115 -0
- package/utilities/buildASTSchema.mjs +97 -0
- package/utilities/buildClientSchema.d.ts +19 -0
- package/utilities/buildClientSchema.js +386 -0
- package/utilities/buildClientSchema.mjs +363 -0
- package/utilities/coerceInputValue.d.ts +16 -0
- package/utilities/coerceInputValue.js +191 -0
- package/utilities/coerceInputValue.mjs +172 -0
- package/utilities/concatAST.d.ts +9 -0
- package/utilities/concatAST.js +26 -0
- package/utilities/concatAST.mjs +19 -0
- package/utilities/extendSchema.d.ts +40 -0
- package/utilities/extendSchema.js +798 -0
- package/utilities/extendSchema.mjs +789 -0
- package/utilities/findBreakingChanges.d.ts +51 -0
- package/utilities/findBreakingChanges.js +547 -0
- package/utilities/findBreakingChanges.mjs +516 -0
- package/utilities/getIntrospectionQuery.d.ts +182 -0
- package/utilities/getIntrospectionQuery.js +134 -0
- package/utilities/getIntrospectionQuery.mjs +127 -0
- package/utilities/getOperationAST.d.ts +11 -0
- package/utilities/getOperationAST.js +43 -0
- package/utilities/getOperationAST.mjs +36 -0
- package/utilities/getOperationRootType.d.ts +15 -0
- package/utilities/getOperationRootType.js +59 -0
- package/utilities/getOperationRootType.mjs +52 -0
- package/utilities/index.d.ts +61 -0
- package/utilities/index.js +233 -0
- package/utilities/index.mjs +55 -0
- package/utilities/introspectionFromSchema.d.ts +18 -0
- package/utilities/introspectionFromSchema.js +42 -0
- package/utilities/introspectionFromSchema.mjs +30 -0
- package/utilities/lexicographicSortSchema.d.ts +9 -0
- package/utilities/lexicographicSortSchema.js +177 -0
- package/utilities/lexicographicSortSchema.mjs +172 -0
- package/utilities/printSchema.d.ts +5 -0
- package/utilities/printSchema.js +333 -0
- package/utilities/printSchema.mjs +309 -0
- package/utilities/separateOperations.d.ts +11 -0
- package/utilities/separateOperations.js +88 -0
- package/utilities/separateOperations.mjs +80 -0
- package/utilities/sortValueNode.d.ts +9 -0
- package/utilities/sortValueNode.js +47 -0
- package/utilities/sortValueNode.mjs +39 -0
- package/utilities/stripIgnoredCharacters.d.ts +62 -0
- package/utilities/stripIgnoredCharacters.js +121 -0
- package/utilities/stripIgnoredCharacters.mjs +104 -0
- package/utilities/typeComparators.d.ts +32 -0
- package/utilities/typeComparators.js +116 -0
- package/utilities/typeComparators.mjs +106 -0
- package/utilities/typeFromAST.d.ts +32 -0
- package/utilities/typeFromAST.js +27 -0
- package/utilities/typeFromAST.mjs +18 -0
- package/utilities/typedQueryDocumentNode.d.ts +22 -0
- package/utilities/typedQueryDocumentNode.js +5 -0
- package/utilities/typedQueryDocumentNode.mjs +1 -0
- package/utilities/valueFromAST.d.ts +29 -0
- package/utilities/valueFromAST.js +185 -0
- package/utilities/valueFromAST.mjs +172 -0
- package/utilities/valueFromASTUntyped.d.ts +23 -0
- package/utilities/valueFromASTUntyped.js +61 -0
- package/utilities/valueFromASTUntyped.mjs +53 -0
- package/validation/ValidationContext.d.ts +95 -0
- package/validation/ValidationContext.js +232 -0
- package/validation/ValidationContext.mjs +212 -0
- package/validation/index.d.ts +40 -0
- package/validation/index.js +317 -0
- package/validation/index.mjs +68 -0
- package/validation/rules/ExecutableDefinitionsRule.d.ts +13 -0
- package/validation/rules/ExecutableDefinitionsRule.js +44 -0
- package/validation/rules/ExecutableDefinitionsRule.mjs +35 -0
- package/validation/rules/FieldsOnCorrectTypeRule.d.ts +13 -0
- package/validation/rules/FieldsOnCorrectTypeRule.js +143 -0
- package/validation/rules/FieldsOnCorrectTypeRule.mjs +125 -0
- package/validation/rules/FragmentsOnCompositeTypesRule.d.ts +14 -0
- package/validation/rules/FragmentsOnCompositeTypesRule.js +65 -0
- package/validation/rules/FragmentsOnCompositeTypesRule.mjs +49 -0
- package/validation/rules/KnownArgumentNamesRule.d.ts +23 -0
- package/validation/rules/KnownArgumentNamesRule.js +116 -0
- package/validation/rules/KnownArgumentNamesRule.mjs +98 -0
- package/validation/rules/KnownDirectivesRule.d.ts +16 -0
- package/validation/rules/KnownDirectivesRule.js +163 -0
- package/validation/rules/KnownDirectivesRule.mjs +146 -0
- package/validation/rules/KnownFragmentNamesRule.d.ts +13 -0
- package/validation/rules/KnownFragmentNamesRule.js +34 -0
- package/validation/rules/KnownFragmentNamesRule.mjs +24 -0
- package/validation/rules/KnownTypeNamesRule.d.ts +16 -0
- package/validation/rules/KnownTypeNamesRule.js +87 -0
- package/validation/rules/KnownTypeNamesRule.mjs +75 -0
- package/validation/rules/LoneAnonymousOperationRule.d.ts +13 -0
- package/validation/rules/LoneAnonymousOperationRule.js +40 -0
- package/validation/rules/LoneAnonymousOperationRule.mjs +32 -0
- package/validation/rules/LoneSchemaDefinitionRule.d.ts +10 -0
- package/validation/rules/LoneSchemaDefinitionRule.js +63 -0
- package/validation/rules/LoneSchemaDefinitionRule.mjs +53 -0
- package/validation/rules/NoFragmentCyclesRule.d.ts +13 -0
- package/validation/rules/NoFragmentCyclesRule.js +83 -0
- package/validation/rules/NoFragmentCyclesRule.mjs +76 -0
- package/validation/rules/NoUndefinedVariablesRule.d.ts +13 -0
- package/validation/rules/NoUndefinedVariablesRule.js +50 -0
- package/validation/rules/NoUndefinedVariablesRule.mjs +43 -0
- package/validation/rules/NoUnusedFragmentsRule.d.ts +13 -0
- package/validation/rules/NoUnusedFragmentsRule.js +59 -0
- package/validation/rules/NoUnusedFragmentsRule.mjs +52 -0
- package/validation/rules/NoUnusedVariablesRule.d.ts +13 -0
- package/validation/rules/NoUnusedVariablesRule.js +55 -0
- package/validation/rules/NoUnusedVariablesRule.mjs +48 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule-old.js +805 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule-old.mjs +788 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule.d.ts +14 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule.js +805 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule.mjs +788 -0
- package/validation/rules/PossibleFragmentSpreadsRule.d.ts +12 -0
- package/validation/rules/PossibleFragmentSpreadsRule.js +91 -0
- package/validation/rules/PossibleFragmentSpreadsRule.mjs +69 -0
- package/validation/rules/PossibleTypeExtensionsRule.d.ts +10 -0
- package/validation/rules/PossibleTypeExtensionsRule.js +167 -0
- package/validation/rules/PossibleTypeExtensionsRule.mjs +147 -0
- package/validation/rules/ProvidedRequiredArgumentsRule.d.ts +20 -0
- package/validation/rules/ProvidedRequiredArgumentsRule.js +158 -0
- package/validation/rules/ProvidedRequiredArgumentsRule.mjs +138 -0
- package/validation/rules/ScalarLeafsRule.d.ts +9 -0
- package/validation/rules/ScalarLeafsRule.js +51 -0
- package/validation/rules/ScalarLeafsRule.mjs +42 -0
- package/validation/rules/SingleFieldSubscriptionsRule.d.ts +13 -0
- package/validation/rules/SingleFieldSubscriptionsRule.js +82 -0
- package/validation/rules/SingleFieldSubscriptionsRule.mjs +73 -0
- package/validation/rules/UniqueArgumentDefinitionNamesRule.d.ts +11 -0
- package/validation/rules/UniqueArgumentDefinitionNamesRule.js +90 -0
- package/validation/rules/UniqueArgumentDefinitionNamesRule.mjs +79 -0
- package/validation/rules/UniqueArgumentNamesRule.d.ts +13 -0
- package/validation/rules/UniqueArgumentNamesRule.js +53 -0
- package/validation/rules/UniqueArgumentNamesRule.mjs +42 -0
- package/validation/rules/UniqueDirectiveNamesRule.d.ts +10 -0
- package/validation/rules/UniqueDirectiveNamesRule.js +50 -0
- package/validation/rules/UniqueDirectiveNamesRule.mjs +43 -0
- package/validation/rules/UniqueDirectivesPerLocationRule.d.ts +16 -0
- package/validation/rules/UniqueDirectivesPerLocationRule.js +93 -0
- package/validation/rules/UniqueDirectivesPerLocationRule.mjs +83 -0
- package/validation/rules/UniqueEnumValueNamesRule.d.ts +10 -0
- package/validation/rules/UniqueEnumValueNamesRule.js +71 -0
- package/validation/rules/UniqueEnumValueNamesRule.mjs +60 -0
- package/validation/rules/UniqueFieldDefinitionNamesRule.d.ts +10 -0
- package/validation/rules/UniqueFieldDefinitionNamesRule.js +83 -0
- package/validation/rules/UniqueFieldDefinitionNamesRule.mjs +75 -0
- package/validation/rules/UniqueFragmentNamesRule.d.ts +12 -0
- package/validation/rules/UniqueFragmentNamesRule.js +39 -0
- package/validation/rules/UniqueFragmentNamesRule.mjs +32 -0
- package/validation/rules/UniqueInputFieldNamesRule.d.ts +13 -0
- package/validation/rules/UniqueInputFieldNamesRule.js +52 -0
- package/validation/rules/UniqueInputFieldNamesRule.mjs +44 -0
- package/validation/rules/UniqueOperationNamesRule.d.ts +12 -0
- package/validation/rules/UniqueOperationNamesRule.js +41 -0
- package/validation/rules/UniqueOperationNamesRule.mjs +34 -0
- package/validation/rules/UniqueOperationTypesRule.d.ts +10 -0
- package/validation/rules/UniqueOperationTypesRule.js +67 -0
- package/validation/rules/UniqueOperationTypesRule.mjs +60 -0
- package/validation/rules/UniqueTypeNamesRule.d.ts +10 -0
- package/validation/rules/UniqueTypeNamesRule.js +53 -0
- package/validation/rules/UniqueTypeNamesRule.mjs +46 -0
- package/validation/rules/UniqueVariableNamesRule.d.ts +10 -0
- package/validation/rules/UniqueVariableNamesRule.js +47 -0
- package/validation/rules/UniqueVariableNamesRule.mjs +39 -0
- package/validation/rules/ValuesOfCorrectTypeRule.d.ts +13 -0
- package/validation/rules/ValuesOfCorrectTypeRule.js +183 -0
- package/validation/rules/ValuesOfCorrectTypeRule.mjs +164 -0
- package/validation/rules/VariablesAreInputTypesRule.d.ts +13 -0
- package/validation/rules/VariablesAreInputTypesRule.js +44 -0
- package/validation/rules/VariablesAreInputTypesRule.mjs +31 -0
- package/validation/rules/VariablesInAllowedPositionRule.d.ts +12 -0
- package/validation/rules/VariablesInAllowedPositionRule.js +114 -0
- package/validation/rules/VariablesInAllowedPositionRule.mjs +95 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.d.ts +15 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.js +121 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.mjs +107 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +15 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js +39 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.mjs +30 -0
- package/validation/specifiedRules.d.ts +12 -0
- package/validation/specifiedRules.js +160 -0
- package/validation/specifiedRules.mjs +123 -0
- package/validation/validate.d.ts +61 -0
- package/validation/validate.js +151 -0
- package/validation/validate.mjs +133 -0
- package/version.d.ts +13 -0
- package/version.js +25 -0
- package/version.mjs +17 -0
|
@@ -0,0 +1,317 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true,
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, 'ExecutableDefinitionsRule', {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ExecutableDefinitionsRule.ExecutableDefinitionsRule;
|
|
10
|
+
},
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, 'FieldsOnCorrectTypeRule', {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _FieldsOnCorrectTypeRule.FieldsOnCorrectTypeRule;
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, 'FragmentsOnCompositeTypesRule', {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _FragmentsOnCompositeTypesRule.FragmentsOnCompositeTypesRule;
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
Object.defineProperty(exports, 'KnownArgumentNamesRule', {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _KnownArgumentNamesRule.KnownArgumentNamesRule;
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
Object.defineProperty(exports, 'KnownDirectivesRule', {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _KnownDirectivesRule.KnownDirectivesRule;
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, 'KnownFragmentNamesRule', {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _KnownFragmentNamesRule.KnownFragmentNamesRule;
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
Object.defineProperty(exports, 'KnownTypeNamesRule', {
|
|
43
|
+
enumerable: true,
|
|
44
|
+
get: function () {
|
|
45
|
+
return _KnownTypeNamesRule.KnownTypeNamesRule;
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(exports, 'LoneAnonymousOperationRule', {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
get: function () {
|
|
51
|
+
return _LoneAnonymousOperationRule.LoneAnonymousOperationRule;
|
|
52
|
+
},
|
|
53
|
+
});
|
|
54
|
+
Object.defineProperty(exports, 'LoneSchemaDefinitionRule', {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _LoneSchemaDefinitionRule.LoneSchemaDefinitionRule;
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(exports, 'NoDeprecatedCustomRule', {
|
|
61
|
+
enumerable: true,
|
|
62
|
+
get: function () {
|
|
63
|
+
return _NoDeprecatedCustomRule.NoDeprecatedCustomRule;
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
Object.defineProperty(exports, 'NoFragmentCyclesRule', {
|
|
67
|
+
enumerable: true,
|
|
68
|
+
get: function () {
|
|
69
|
+
return _NoFragmentCyclesRule.NoFragmentCyclesRule;
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
Object.defineProperty(exports, 'NoSchemaIntrospectionCustomRule', {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function () {
|
|
75
|
+
return _NoSchemaIntrospectionCustomRule.NoSchemaIntrospectionCustomRule;
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
Object.defineProperty(exports, 'NoUndefinedVariablesRule', {
|
|
79
|
+
enumerable: true,
|
|
80
|
+
get: function () {
|
|
81
|
+
return _NoUndefinedVariablesRule.NoUndefinedVariablesRule;
|
|
82
|
+
},
|
|
83
|
+
});
|
|
84
|
+
Object.defineProperty(exports, 'NoUnusedFragmentsRule', {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
get: function () {
|
|
87
|
+
return _NoUnusedFragmentsRule.NoUnusedFragmentsRule;
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
Object.defineProperty(exports, 'NoUnusedVariablesRule', {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function () {
|
|
93
|
+
return _NoUnusedVariablesRule.NoUnusedVariablesRule;
|
|
94
|
+
},
|
|
95
|
+
});
|
|
96
|
+
Object.defineProperty(exports, 'OverlappingFieldsCanBeMergedRule', {
|
|
97
|
+
enumerable: true,
|
|
98
|
+
get: function () {
|
|
99
|
+
return _OverlappingFieldsCanBeMergedRule.OverlappingFieldsCanBeMergedRule;
|
|
100
|
+
},
|
|
101
|
+
});
|
|
102
|
+
Object.defineProperty(exports, 'PossibleFragmentSpreadsRule', {
|
|
103
|
+
enumerable: true,
|
|
104
|
+
get: function () {
|
|
105
|
+
return _PossibleFragmentSpreadsRule.PossibleFragmentSpreadsRule;
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
Object.defineProperty(exports, 'PossibleTypeExtensionsRule', {
|
|
109
|
+
enumerable: true,
|
|
110
|
+
get: function () {
|
|
111
|
+
return _PossibleTypeExtensionsRule.PossibleTypeExtensionsRule;
|
|
112
|
+
},
|
|
113
|
+
});
|
|
114
|
+
Object.defineProperty(exports, 'ProvidedRequiredArgumentsRule', {
|
|
115
|
+
enumerable: true,
|
|
116
|
+
get: function () {
|
|
117
|
+
return _ProvidedRequiredArgumentsRule.ProvidedRequiredArgumentsRule;
|
|
118
|
+
},
|
|
119
|
+
});
|
|
120
|
+
Object.defineProperty(exports, 'ScalarLeafsRule', {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function () {
|
|
123
|
+
return _ScalarLeafsRule.ScalarLeafsRule;
|
|
124
|
+
},
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, 'SingleFieldSubscriptionsRule', {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function () {
|
|
129
|
+
return _SingleFieldSubscriptionsRule.SingleFieldSubscriptionsRule;
|
|
130
|
+
},
|
|
131
|
+
});
|
|
132
|
+
Object.defineProperty(exports, 'UniqueArgumentDefinitionNamesRule', {
|
|
133
|
+
enumerable: true,
|
|
134
|
+
get: function () {
|
|
135
|
+
return _UniqueArgumentDefinitionNamesRule.UniqueArgumentDefinitionNamesRule;
|
|
136
|
+
},
|
|
137
|
+
});
|
|
138
|
+
Object.defineProperty(exports, 'UniqueArgumentNamesRule', {
|
|
139
|
+
enumerable: true,
|
|
140
|
+
get: function () {
|
|
141
|
+
return _UniqueArgumentNamesRule.UniqueArgumentNamesRule;
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
Object.defineProperty(exports, 'UniqueDirectiveNamesRule', {
|
|
145
|
+
enumerable: true,
|
|
146
|
+
get: function () {
|
|
147
|
+
return _UniqueDirectiveNamesRule.UniqueDirectiveNamesRule;
|
|
148
|
+
},
|
|
149
|
+
});
|
|
150
|
+
Object.defineProperty(exports, 'UniqueDirectivesPerLocationRule', {
|
|
151
|
+
enumerable: true,
|
|
152
|
+
get: function () {
|
|
153
|
+
return _UniqueDirectivesPerLocationRule.UniqueDirectivesPerLocationRule;
|
|
154
|
+
},
|
|
155
|
+
});
|
|
156
|
+
Object.defineProperty(exports, 'UniqueEnumValueNamesRule', {
|
|
157
|
+
enumerable: true,
|
|
158
|
+
get: function () {
|
|
159
|
+
return _UniqueEnumValueNamesRule.UniqueEnumValueNamesRule;
|
|
160
|
+
},
|
|
161
|
+
});
|
|
162
|
+
Object.defineProperty(exports, 'UniqueFieldDefinitionNamesRule', {
|
|
163
|
+
enumerable: true,
|
|
164
|
+
get: function () {
|
|
165
|
+
return _UniqueFieldDefinitionNamesRule.UniqueFieldDefinitionNamesRule;
|
|
166
|
+
},
|
|
167
|
+
});
|
|
168
|
+
Object.defineProperty(exports, 'UniqueFragmentNamesRule', {
|
|
169
|
+
enumerable: true,
|
|
170
|
+
get: function () {
|
|
171
|
+
return _UniqueFragmentNamesRule.UniqueFragmentNamesRule;
|
|
172
|
+
},
|
|
173
|
+
});
|
|
174
|
+
Object.defineProperty(exports, 'UniqueInputFieldNamesRule', {
|
|
175
|
+
enumerable: true,
|
|
176
|
+
get: function () {
|
|
177
|
+
return _UniqueInputFieldNamesRule.UniqueInputFieldNamesRule;
|
|
178
|
+
},
|
|
179
|
+
});
|
|
180
|
+
Object.defineProperty(exports, 'UniqueOperationNamesRule', {
|
|
181
|
+
enumerable: true,
|
|
182
|
+
get: function () {
|
|
183
|
+
return _UniqueOperationNamesRule.UniqueOperationNamesRule;
|
|
184
|
+
},
|
|
185
|
+
});
|
|
186
|
+
Object.defineProperty(exports, 'UniqueOperationTypesRule', {
|
|
187
|
+
enumerable: true,
|
|
188
|
+
get: function () {
|
|
189
|
+
return _UniqueOperationTypesRule.UniqueOperationTypesRule;
|
|
190
|
+
},
|
|
191
|
+
});
|
|
192
|
+
Object.defineProperty(exports, 'UniqueTypeNamesRule', {
|
|
193
|
+
enumerable: true,
|
|
194
|
+
get: function () {
|
|
195
|
+
return _UniqueTypeNamesRule.UniqueTypeNamesRule;
|
|
196
|
+
},
|
|
197
|
+
});
|
|
198
|
+
Object.defineProperty(exports, 'UniqueVariableNamesRule', {
|
|
199
|
+
enumerable: true,
|
|
200
|
+
get: function () {
|
|
201
|
+
return _UniqueVariableNamesRule.UniqueVariableNamesRule;
|
|
202
|
+
},
|
|
203
|
+
});
|
|
204
|
+
Object.defineProperty(exports, 'ValidationContext', {
|
|
205
|
+
enumerable: true,
|
|
206
|
+
get: function () {
|
|
207
|
+
return _ValidationContext.ValidationContext;
|
|
208
|
+
},
|
|
209
|
+
});
|
|
210
|
+
Object.defineProperty(exports, 'ValuesOfCorrectTypeRule', {
|
|
211
|
+
enumerable: true,
|
|
212
|
+
get: function () {
|
|
213
|
+
return _ValuesOfCorrectTypeRule.ValuesOfCorrectTypeRule;
|
|
214
|
+
},
|
|
215
|
+
});
|
|
216
|
+
Object.defineProperty(exports, 'VariablesAreInputTypesRule', {
|
|
217
|
+
enumerable: true,
|
|
218
|
+
get: function () {
|
|
219
|
+
return _VariablesAreInputTypesRule.VariablesAreInputTypesRule;
|
|
220
|
+
},
|
|
221
|
+
});
|
|
222
|
+
Object.defineProperty(exports, 'VariablesInAllowedPositionRule', {
|
|
223
|
+
enumerable: true,
|
|
224
|
+
get: function () {
|
|
225
|
+
return _VariablesInAllowedPositionRule.VariablesInAllowedPositionRule;
|
|
226
|
+
},
|
|
227
|
+
});
|
|
228
|
+
Object.defineProperty(exports, 'specifiedRules', {
|
|
229
|
+
enumerable: true,
|
|
230
|
+
get: function () {
|
|
231
|
+
return _specifiedRules.specifiedRules;
|
|
232
|
+
},
|
|
233
|
+
});
|
|
234
|
+
Object.defineProperty(exports, 'validate', {
|
|
235
|
+
enumerable: true,
|
|
236
|
+
get: function () {
|
|
237
|
+
return _validate.validate;
|
|
238
|
+
},
|
|
239
|
+
});
|
|
240
|
+
|
|
241
|
+
var _validate = require('./validate.js');
|
|
242
|
+
|
|
243
|
+
var _ValidationContext = require('./ValidationContext.js');
|
|
244
|
+
|
|
245
|
+
var _specifiedRules = require('./specifiedRules.js');
|
|
246
|
+
|
|
247
|
+
var _ExecutableDefinitionsRule = require('./rules/ExecutableDefinitionsRule.js');
|
|
248
|
+
|
|
249
|
+
var _FieldsOnCorrectTypeRule = require('./rules/FieldsOnCorrectTypeRule.js');
|
|
250
|
+
|
|
251
|
+
var _FragmentsOnCompositeTypesRule = require('./rules/FragmentsOnCompositeTypesRule.js');
|
|
252
|
+
|
|
253
|
+
var _KnownArgumentNamesRule = require('./rules/KnownArgumentNamesRule.js');
|
|
254
|
+
|
|
255
|
+
var _KnownDirectivesRule = require('./rules/KnownDirectivesRule.js');
|
|
256
|
+
|
|
257
|
+
var _KnownFragmentNamesRule = require('./rules/KnownFragmentNamesRule.js');
|
|
258
|
+
|
|
259
|
+
var _KnownTypeNamesRule = require('./rules/KnownTypeNamesRule.js');
|
|
260
|
+
|
|
261
|
+
var _LoneAnonymousOperationRule = require('./rules/LoneAnonymousOperationRule.js');
|
|
262
|
+
|
|
263
|
+
var _NoFragmentCyclesRule = require('./rules/NoFragmentCyclesRule.js');
|
|
264
|
+
|
|
265
|
+
var _NoUndefinedVariablesRule = require('./rules/NoUndefinedVariablesRule.js');
|
|
266
|
+
|
|
267
|
+
var _NoUnusedFragmentsRule = require('./rules/NoUnusedFragmentsRule.js');
|
|
268
|
+
|
|
269
|
+
var _NoUnusedVariablesRule = require('./rules/NoUnusedVariablesRule.js');
|
|
270
|
+
|
|
271
|
+
var _OverlappingFieldsCanBeMergedRule = require('./rules/OverlappingFieldsCanBeMergedRule.js');
|
|
272
|
+
|
|
273
|
+
var _PossibleFragmentSpreadsRule = require('./rules/PossibleFragmentSpreadsRule.js');
|
|
274
|
+
|
|
275
|
+
var _ProvidedRequiredArgumentsRule = require('./rules/ProvidedRequiredArgumentsRule.js');
|
|
276
|
+
|
|
277
|
+
var _ScalarLeafsRule = require('./rules/ScalarLeafsRule.js');
|
|
278
|
+
|
|
279
|
+
var _SingleFieldSubscriptionsRule = require('./rules/SingleFieldSubscriptionsRule.js');
|
|
280
|
+
|
|
281
|
+
var _UniqueArgumentNamesRule = require('./rules/UniqueArgumentNamesRule.js');
|
|
282
|
+
|
|
283
|
+
var _UniqueDirectivesPerLocationRule = require('./rules/UniqueDirectivesPerLocationRule.js');
|
|
284
|
+
|
|
285
|
+
var _UniqueFragmentNamesRule = require('./rules/UniqueFragmentNamesRule.js');
|
|
286
|
+
|
|
287
|
+
var _UniqueInputFieldNamesRule = require('./rules/UniqueInputFieldNamesRule.js');
|
|
288
|
+
|
|
289
|
+
var _UniqueOperationNamesRule = require('./rules/UniqueOperationNamesRule.js');
|
|
290
|
+
|
|
291
|
+
var _UniqueVariableNamesRule = require('./rules/UniqueVariableNamesRule.js');
|
|
292
|
+
|
|
293
|
+
var _ValuesOfCorrectTypeRule = require('./rules/ValuesOfCorrectTypeRule.js');
|
|
294
|
+
|
|
295
|
+
var _VariablesAreInputTypesRule = require('./rules/VariablesAreInputTypesRule.js');
|
|
296
|
+
|
|
297
|
+
var _VariablesInAllowedPositionRule = require('./rules/VariablesInAllowedPositionRule.js');
|
|
298
|
+
|
|
299
|
+
var _LoneSchemaDefinitionRule = require('./rules/LoneSchemaDefinitionRule.js');
|
|
300
|
+
|
|
301
|
+
var _UniqueOperationTypesRule = require('./rules/UniqueOperationTypesRule.js');
|
|
302
|
+
|
|
303
|
+
var _UniqueTypeNamesRule = require('./rules/UniqueTypeNamesRule.js');
|
|
304
|
+
|
|
305
|
+
var _UniqueEnumValueNamesRule = require('./rules/UniqueEnumValueNamesRule.js');
|
|
306
|
+
|
|
307
|
+
var _UniqueFieldDefinitionNamesRule = require('./rules/UniqueFieldDefinitionNamesRule.js');
|
|
308
|
+
|
|
309
|
+
var _UniqueArgumentDefinitionNamesRule = require('./rules/UniqueArgumentDefinitionNamesRule.js');
|
|
310
|
+
|
|
311
|
+
var _UniqueDirectiveNamesRule = require('./rules/UniqueDirectiveNamesRule.js');
|
|
312
|
+
|
|
313
|
+
var _PossibleTypeExtensionsRule = require('./rules/PossibleTypeExtensionsRule.js');
|
|
314
|
+
|
|
315
|
+
var _NoDeprecatedCustomRule = require('./rules/custom/NoDeprecatedCustomRule.js');
|
|
316
|
+
|
|
317
|
+
var _NoSchemaIntrospectionCustomRule = require('./rules/custom/NoSchemaIntrospectionCustomRule.js');
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export { validate } from './validate.mjs';
|
|
2
|
+
export { ValidationContext } from './ValidationContext.mjs';
|
|
3
|
+
// All validation rules in the GraphQL Specification.
|
|
4
|
+
export { specifiedRules } from './specifiedRules.mjs'; // Spec Section: "Executable Definitions"
|
|
5
|
+
|
|
6
|
+
export { ExecutableDefinitionsRule } from './rules/ExecutableDefinitionsRule.mjs'; // Spec Section: "Field Selections on Objects, Interfaces, and Unions Types"
|
|
7
|
+
|
|
8
|
+
export { FieldsOnCorrectTypeRule } from './rules/FieldsOnCorrectTypeRule.mjs'; // Spec Section: "Fragments on Composite Types"
|
|
9
|
+
|
|
10
|
+
export { FragmentsOnCompositeTypesRule } from './rules/FragmentsOnCompositeTypesRule.mjs'; // Spec Section: "Argument Names"
|
|
11
|
+
|
|
12
|
+
export { KnownArgumentNamesRule } from './rules/KnownArgumentNamesRule.mjs'; // Spec Section: "Directives Are Defined"
|
|
13
|
+
|
|
14
|
+
export { KnownDirectivesRule } from './rules/KnownDirectivesRule.mjs'; // Spec Section: "Fragment spread target defined"
|
|
15
|
+
|
|
16
|
+
export { KnownFragmentNamesRule } from './rules/KnownFragmentNamesRule.mjs'; // Spec Section: "Fragment Spread Type Existence"
|
|
17
|
+
|
|
18
|
+
export { KnownTypeNamesRule } from './rules/KnownTypeNamesRule.mjs'; // Spec Section: "Lone Anonymous Operation"
|
|
19
|
+
|
|
20
|
+
export { LoneAnonymousOperationRule } from './rules/LoneAnonymousOperationRule.mjs'; // Spec Section: "Fragments must not form cycles"
|
|
21
|
+
|
|
22
|
+
export { NoFragmentCyclesRule } from './rules/NoFragmentCyclesRule.mjs'; // Spec Section: "All Variable Used Defined"
|
|
23
|
+
|
|
24
|
+
export { NoUndefinedVariablesRule } from './rules/NoUndefinedVariablesRule.mjs'; // Spec Section: "Fragments must be used"
|
|
25
|
+
|
|
26
|
+
export { NoUnusedFragmentsRule } from './rules/NoUnusedFragmentsRule.mjs'; // Spec Section: "All Variables Used"
|
|
27
|
+
|
|
28
|
+
export { NoUnusedVariablesRule } from './rules/NoUnusedVariablesRule.mjs'; // Spec Section: "Field Selection Merging"
|
|
29
|
+
|
|
30
|
+
export { OverlappingFieldsCanBeMergedRule } from './rules/OverlappingFieldsCanBeMergedRule.mjs'; // Spec Section: "Fragment spread is possible"
|
|
31
|
+
|
|
32
|
+
export { PossibleFragmentSpreadsRule } from './rules/PossibleFragmentSpreadsRule.mjs'; // Spec Section: "Argument Optionality"
|
|
33
|
+
|
|
34
|
+
export { ProvidedRequiredArgumentsRule } from './rules/ProvidedRequiredArgumentsRule.mjs'; // Spec Section: "Leaf Field Selections"
|
|
35
|
+
|
|
36
|
+
export { ScalarLeafsRule } from './rules/ScalarLeafsRule.mjs'; // Spec Section: "Subscriptions with Single Root Field"
|
|
37
|
+
|
|
38
|
+
export { SingleFieldSubscriptionsRule } from './rules/SingleFieldSubscriptionsRule.mjs'; // Spec Section: "Argument Uniqueness"
|
|
39
|
+
|
|
40
|
+
export { UniqueArgumentNamesRule } from './rules/UniqueArgumentNamesRule.mjs'; // Spec Section: "Directives Are Unique Per Location"
|
|
41
|
+
|
|
42
|
+
export { UniqueDirectivesPerLocationRule } from './rules/UniqueDirectivesPerLocationRule.mjs'; // Spec Section: "Fragment Name Uniqueness"
|
|
43
|
+
|
|
44
|
+
export { UniqueFragmentNamesRule } from './rules/UniqueFragmentNamesRule.mjs'; // Spec Section: "Input Object Field Uniqueness"
|
|
45
|
+
|
|
46
|
+
export { UniqueInputFieldNamesRule } from './rules/UniqueInputFieldNamesRule.mjs'; // Spec Section: "Operation Name Uniqueness"
|
|
47
|
+
|
|
48
|
+
export { UniqueOperationNamesRule } from './rules/UniqueOperationNamesRule.mjs'; // Spec Section: "Variable Uniqueness"
|
|
49
|
+
|
|
50
|
+
export { UniqueVariableNamesRule } from './rules/UniqueVariableNamesRule.mjs'; // Spec Section: "Values Type Correctness"
|
|
51
|
+
|
|
52
|
+
export { ValuesOfCorrectTypeRule } from './rules/ValuesOfCorrectTypeRule.mjs'; // Spec Section: "Variables are Input Types"
|
|
53
|
+
|
|
54
|
+
export { VariablesAreInputTypesRule } from './rules/VariablesAreInputTypesRule.mjs'; // Spec Section: "All Variable Usages Are Allowed"
|
|
55
|
+
|
|
56
|
+
export { VariablesInAllowedPositionRule } from './rules/VariablesInAllowedPositionRule.mjs'; // SDL-specific validation rules
|
|
57
|
+
|
|
58
|
+
export { LoneSchemaDefinitionRule } from './rules/LoneSchemaDefinitionRule.mjs';
|
|
59
|
+
export { UniqueOperationTypesRule } from './rules/UniqueOperationTypesRule.mjs';
|
|
60
|
+
export { UniqueTypeNamesRule } from './rules/UniqueTypeNamesRule.mjs';
|
|
61
|
+
export { UniqueEnumValueNamesRule } from './rules/UniqueEnumValueNamesRule.mjs';
|
|
62
|
+
export { UniqueFieldDefinitionNamesRule } from './rules/UniqueFieldDefinitionNamesRule.mjs';
|
|
63
|
+
export { UniqueArgumentDefinitionNamesRule } from './rules/UniqueArgumentDefinitionNamesRule.mjs';
|
|
64
|
+
export { UniqueDirectiveNamesRule } from './rules/UniqueDirectiveNamesRule.mjs';
|
|
65
|
+
export { PossibleTypeExtensionsRule } from './rules/PossibleTypeExtensionsRule.mjs'; // Optional rules not defined by the GraphQL Specification
|
|
66
|
+
|
|
67
|
+
export { NoDeprecatedCustomRule } from './rules/custom/NoDeprecatedCustomRule.mjs';
|
|
68
|
+
export { NoSchemaIntrospectionCustomRule } from './rules/custom/NoSchemaIntrospectionCustomRule.mjs';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ASTVisitor } from '../../language/visitor';
|
|
2
|
+
import type { ASTValidationContext } from '../ValidationContext';
|
|
3
|
+
/**
|
|
4
|
+
* Executable definitions
|
|
5
|
+
*
|
|
6
|
+
* A GraphQL document is only valid for execution if all definitions are either
|
|
7
|
+
* operation or fragment definitions.
|
|
8
|
+
*
|
|
9
|
+
* See https://spec.graphql.org/draft/#sec-Executable-Definitions
|
|
10
|
+
*/
|
|
11
|
+
export declare function ExecutableDefinitionsRule(
|
|
12
|
+
context: ASTValidationContext,
|
|
13
|
+
): ASTVisitor;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true,
|
|
5
|
+
});
|
|
6
|
+
exports.ExecutableDefinitionsRule = ExecutableDefinitionsRule;
|
|
7
|
+
|
|
8
|
+
var _GraphQLError = require('../../error/GraphQLError.js');
|
|
9
|
+
|
|
10
|
+
var _kinds = require('../../language/kinds.js');
|
|
11
|
+
|
|
12
|
+
var _predicates = require('../../language/predicates.js');
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Executable definitions
|
|
16
|
+
*
|
|
17
|
+
* A GraphQL document is only valid for execution if all definitions are either
|
|
18
|
+
* operation or fragment definitions.
|
|
19
|
+
*
|
|
20
|
+
* See https://spec.graphql.org/draft/#sec-Executable-Definitions
|
|
21
|
+
*/
|
|
22
|
+
function ExecutableDefinitionsRule(context) {
|
|
23
|
+
return {
|
|
24
|
+
Document(node) {
|
|
25
|
+
for (const definition of node.definitions) {
|
|
26
|
+
if (!(0, _predicates.isExecutableDefinitionNode)(definition)) {
|
|
27
|
+
const defName =
|
|
28
|
+
definition.kind === _kinds.Kind.SCHEMA_DEFINITION ||
|
|
29
|
+
definition.kind === _kinds.Kind.SCHEMA_EXTENSION
|
|
30
|
+
? 'schema'
|
|
31
|
+
: '"' + definition.name.value + '"';
|
|
32
|
+
context.reportError(
|
|
33
|
+
new _GraphQLError.GraphQLError(
|
|
34
|
+
`The ${defName} definition is not executable.`,
|
|
35
|
+
definition,
|
|
36
|
+
),
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return false;
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { GraphQLError } from '../../error/GraphQLError.mjs';
|
|
2
|
+
import { Kind } from '../../language/kinds.mjs';
|
|
3
|
+
import { isExecutableDefinitionNode } from '../../language/predicates.mjs';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Executable definitions
|
|
7
|
+
*
|
|
8
|
+
* A GraphQL document is only valid for execution if all definitions are either
|
|
9
|
+
* operation or fragment definitions.
|
|
10
|
+
*
|
|
11
|
+
* See https://spec.graphql.org/draft/#sec-Executable-Definitions
|
|
12
|
+
*/
|
|
13
|
+
export function ExecutableDefinitionsRule(context) {
|
|
14
|
+
return {
|
|
15
|
+
Document(node) {
|
|
16
|
+
for (const definition of node.definitions) {
|
|
17
|
+
if (!isExecutableDefinitionNode(definition)) {
|
|
18
|
+
const defName =
|
|
19
|
+
definition.kind === Kind.SCHEMA_DEFINITION ||
|
|
20
|
+
definition.kind === Kind.SCHEMA_EXTENSION
|
|
21
|
+
? 'schema'
|
|
22
|
+
: '"' + definition.name.value + '"';
|
|
23
|
+
context.reportError(
|
|
24
|
+
new GraphQLError(
|
|
25
|
+
`The ${defName} definition is not executable.`,
|
|
26
|
+
definition,
|
|
27
|
+
),
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return false;
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ASTVisitor } from '../../language/visitor';
|
|
2
|
+
import type { ValidationContext } from '../ValidationContext';
|
|
3
|
+
/**
|
|
4
|
+
* Fields on correct type
|
|
5
|
+
*
|
|
6
|
+
* A GraphQL document is only valid if all fields selected are defined by the
|
|
7
|
+
* parent type, or are an allowed meta field such as __typename.
|
|
8
|
+
*
|
|
9
|
+
* See https://spec.graphql.org/draft/#sec-Field-Selections
|
|
10
|
+
*/
|
|
11
|
+
export declare function FieldsOnCorrectTypeRule(
|
|
12
|
+
context: ValidationContext,
|
|
13
|
+
): ASTVisitor;
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true,
|
|
5
|
+
});
|
|
6
|
+
exports.FieldsOnCorrectTypeRule = FieldsOnCorrectTypeRule;
|
|
7
|
+
|
|
8
|
+
var _didYouMean = require('../../jsutils/didYouMean.js');
|
|
9
|
+
|
|
10
|
+
var _naturalCompare = require('../../jsutils/naturalCompare.js');
|
|
11
|
+
|
|
12
|
+
var _suggestionList = require('../../jsutils/suggestionList.js');
|
|
13
|
+
|
|
14
|
+
var _GraphQLError = require('../../error/GraphQLError.js');
|
|
15
|
+
|
|
16
|
+
var _definition = require('../../type/definition.js');
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Fields on correct type
|
|
20
|
+
*
|
|
21
|
+
* A GraphQL document is only valid if all fields selected are defined by the
|
|
22
|
+
* parent type, or are an allowed meta field such as __typename.
|
|
23
|
+
*
|
|
24
|
+
* See https://spec.graphql.org/draft/#sec-Field-Selections
|
|
25
|
+
*/
|
|
26
|
+
function FieldsOnCorrectTypeRule(context) {
|
|
27
|
+
return {
|
|
28
|
+
Field(node) {
|
|
29
|
+
const type = context.getParentType();
|
|
30
|
+
|
|
31
|
+
if (type) {
|
|
32
|
+
const fieldDef = context.getFieldDef();
|
|
33
|
+
|
|
34
|
+
if (!fieldDef) {
|
|
35
|
+
// This field doesn't exist, lets look for suggestions.
|
|
36
|
+
const schema = context.getSchema();
|
|
37
|
+
const fieldName = node.name.value; // First determine if there are any suggested types to condition on.
|
|
38
|
+
|
|
39
|
+
let suggestion = (0, _didYouMean.didYouMean)(
|
|
40
|
+
'to use an inline fragment on',
|
|
41
|
+
getSuggestedTypeNames(schema, type, fieldName),
|
|
42
|
+
); // If there are no suggested types, then perhaps this was a typo?
|
|
43
|
+
|
|
44
|
+
if (suggestion === '') {
|
|
45
|
+
suggestion = (0, _didYouMean.didYouMean)(
|
|
46
|
+
getSuggestedFieldNames(type, fieldName),
|
|
47
|
+
);
|
|
48
|
+
} // Report an error, including helpful suggestions.
|
|
49
|
+
|
|
50
|
+
context.reportError(
|
|
51
|
+
new _GraphQLError.GraphQLError(
|
|
52
|
+
`Cannot query field "${fieldName}" on type "${type.name}".` +
|
|
53
|
+
suggestion,
|
|
54
|
+
node,
|
|
55
|
+
),
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Go through all of the implementations of type, as well as the interfaces that
|
|
64
|
+
* they implement. If any of those types include the provided field, suggest them,
|
|
65
|
+
* sorted by how often the type is referenced.
|
|
66
|
+
*/
|
|
67
|
+
|
|
68
|
+
function getSuggestedTypeNames(schema, type, fieldName) {
|
|
69
|
+
if (!(0, _definition.isAbstractType)(type)) {
|
|
70
|
+
// Must be an Object type, which does not have possible fields.
|
|
71
|
+
return [];
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const suggestedTypes = new Set();
|
|
75
|
+
const usageCount = Object.create(null);
|
|
76
|
+
|
|
77
|
+
for (const possibleType of schema.getPossibleTypes(type)) {
|
|
78
|
+
if (!possibleType.getFields()[fieldName]) {
|
|
79
|
+
continue;
|
|
80
|
+
} // This object type defines this field.
|
|
81
|
+
|
|
82
|
+
suggestedTypes.add(possibleType);
|
|
83
|
+
usageCount[possibleType.name] = 1;
|
|
84
|
+
|
|
85
|
+
for (const possibleInterface of possibleType.getInterfaces()) {
|
|
86
|
+
var _usageCount$possibleI;
|
|
87
|
+
|
|
88
|
+
if (!possibleInterface.getFields()[fieldName]) {
|
|
89
|
+
continue;
|
|
90
|
+
} // This interface type defines this field.
|
|
91
|
+
|
|
92
|
+
suggestedTypes.add(possibleInterface);
|
|
93
|
+
usageCount[possibleInterface.name] =
|
|
94
|
+
((_usageCount$possibleI = usageCount[possibleInterface.name]) !==
|
|
95
|
+
null && _usageCount$possibleI !== void 0
|
|
96
|
+
? _usageCount$possibleI
|
|
97
|
+
: 0) + 1;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
return [...suggestedTypes]
|
|
102
|
+
.sort((typeA, typeB) => {
|
|
103
|
+
// Suggest both interface and object types based on how common they are.
|
|
104
|
+
const usageCountDiff = usageCount[typeB.name] - usageCount[typeA.name];
|
|
105
|
+
|
|
106
|
+
if (usageCountDiff !== 0) {
|
|
107
|
+
return usageCountDiff;
|
|
108
|
+
} // Suggest super types first followed by subtypes
|
|
109
|
+
|
|
110
|
+
if (
|
|
111
|
+
(0, _definition.isInterfaceType)(typeA) &&
|
|
112
|
+
schema.isSubType(typeA, typeB)
|
|
113
|
+
) {
|
|
114
|
+
return -1;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
if (
|
|
118
|
+
(0, _definition.isInterfaceType)(typeB) &&
|
|
119
|
+
schema.isSubType(typeB, typeA)
|
|
120
|
+
) {
|
|
121
|
+
return 1;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
return (0, _naturalCompare.naturalCompare)(typeA.name, typeB.name);
|
|
125
|
+
})
|
|
126
|
+
.map((x) => x.name);
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* For the field name provided, determine if there are any similar field names
|
|
130
|
+
* that may be the result of a typo.
|
|
131
|
+
*/
|
|
132
|
+
|
|
133
|
+
function getSuggestedFieldNames(type, fieldName) {
|
|
134
|
+
if (
|
|
135
|
+
(0, _definition.isObjectType)(type) ||
|
|
136
|
+
(0, _definition.isInterfaceType)(type)
|
|
137
|
+
) {
|
|
138
|
+
const possibleFieldNames = Object.keys(type.getFields());
|
|
139
|
+
return (0, _suggestionList.suggestionList)(fieldName, possibleFieldNames);
|
|
140
|
+
} // Otherwise, must be a Union type, which does not define fields.
|
|
141
|
+
|
|
142
|
+
return [];
|
|
143
|
+
}
|