graphql 17.0.0-beta.0 → 17.0.0-beta.2
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/__dev__/devMode.d.ts +1 -1
- package/__dev__/error/GraphQLError.d.ts +1 -1
- package/__dev__/error/ensureGraphQLError.d.ts +1 -1
- package/__dev__/error/index.d.ts +1 -1
- package/__dev__/error/locatedError.d.ts +1 -1
- package/__dev__/error/syntaxError.d.ts +1 -1
- package/__dev__/execution/AbortedGraphQLExecutionError.d.ts +1 -1
- package/__dev__/execution/AsyncWorkTracker.d.ts +1 -1
- package/__dev__/execution/ExecutionArgs.d.mts +1 -0
- package/__dev__/execution/ExecutionArgs.d.ts +1 -0
- package/__dev__/execution/ExecutionArgs.js +3 -0
- package/__dev__/execution/ExecutionArgs.mjs +3 -0
- package/__dev__/execution/Executor.d.ts +1 -1
- package/__dev__/execution/ExecutorThrowingOnIncremental.d.ts +1 -1
- package/__dev__/execution/buildResolveInfo.d.mts +1 -0
- package/__dev__/execution/buildResolveInfo.d.ts +1 -0
- package/__dev__/execution/buildResolveInfo.js +3 -0
- package/__dev__/execution/buildResolveInfo.mjs +3 -0
- package/__dev__/execution/cancellablePromise.d.ts +1 -1
- package/__dev__/execution/collectFields.d.ts +1 -1
- package/__dev__/execution/collectIteratorPromises.d.ts +1 -1
- package/__dev__/execution/createSharedExecutionContext.d.ts +1 -1
- package/__dev__/execution/execute.d.ts +1 -1
- package/__dev__/execution/getStreamUsage.d.ts +1 -1
- package/__dev__/execution/getVariableSignature.d.ts +1 -1
- package/__dev__/execution/hooks.d.ts +1 -1
- package/__dev__/execution/incremental/Computation.d.ts +1 -1
- package/__dev__/execution/incremental/IncrementalExecutor.d.ts +1 -1
- package/__dev__/execution/incremental/IncrementalPublisher.d.ts +1 -1
- package/__dev__/execution/incremental/Queue.d.ts +1 -1
- package/__dev__/execution/incremental/WorkQueue.d.ts +1 -1
- package/__dev__/execution/incremental/buildExecutionPlan.d.ts +1 -1
- package/__dev__/execution/index.d.ts +1 -1
- package/__dev__/execution/legacyIncremental/BranchingIncrementalExecutor.d.mts +1 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalExecutor.d.ts +1 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalExecutor.js +3 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalExecutor.mjs +3 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalPublisher.d.mts +1 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalPublisher.d.ts +1 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalPublisher.js +3 -0
- package/__dev__/execution/legacyIncremental/BranchingIncrementalPublisher.mjs +3 -0
- package/__dev__/execution/legacyIncremental/legacyExecuteIncrementally.d.mts +1 -0
- package/__dev__/execution/legacyIncremental/legacyExecuteIncrementally.d.ts +1 -0
- package/__dev__/execution/legacyIncremental/legacyExecuteIncrementally.js +3 -0
- package/__dev__/execution/legacyIncremental/legacyExecuteIncrementally.mjs +3 -0
- package/__dev__/execution/mapAsyncIterable.d.ts +1 -1
- package/__dev__/execution/returnIteratorCatchingErrors.d.ts +1 -1
- package/__dev__/execution/values.d.ts +1 -1
- package/__dev__/execution/withConcurrentAbruptClose.d.ts +1 -1
- package/__dev__/graphql.d.ts +1 -1
- package/__dev__/harness.d.ts +1 -1
- package/__dev__/index.d.ts +1 -1
- package/__dev__/jsutils/AccumulatorMap.d.ts +1 -1
- package/__dev__/jsutils/Maybe.d.ts +1 -1
- package/__dev__/jsutils/ObjMap.d.ts +1 -1
- package/__dev__/jsutils/Path.d.ts +1 -1
- package/__dev__/jsutils/PromiseOrValue.d.ts +1 -1
- package/__dev__/jsutils/capitalize.d.ts +1 -1
- package/__dev__/jsutils/devAssert.d.ts +1 -1
- package/__dev__/jsutils/didYouMean.d.ts +1 -1
- package/__dev__/jsutils/formatList.d.ts +1 -1
- package/__dev__/jsutils/getBySet.d.ts +1 -1
- package/__dev__/jsutils/groupBy.d.ts +1 -1
- package/__dev__/jsutils/identityFunc.d.ts +1 -1
- package/__dev__/jsutils/inspect.d.ts +1 -1
- package/__dev__/jsutils/instanceOf.d.ts +1 -1
- package/__dev__/jsutils/invariant.d.ts +1 -1
- package/__dev__/jsutils/isAsyncIterable.d.ts +1 -1
- package/__dev__/jsutils/isIterableObject.d.ts +1 -1
- package/__dev__/jsutils/isObjectLike.d.ts +1 -1
- package/__dev__/jsutils/isPromise.d.ts +1 -1
- package/__dev__/jsutils/isSameSet.d.ts +1 -1
- package/__dev__/jsutils/keyMap.d.ts +1 -1
- package/__dev__/jsutils/keyValMap.d.ts +1 -1
- package/__dev__/jsutils/mapValue.d.ts +1 -1
- package/__dev__/jsutils/memoize1.d.ts +1 -1
- package/__dev__/jsutils/memoize2.d.ts +1 -1
- package/__dev__/jsutils/memoize3.d.ts +1 -1
- package/__dev__/jsutils/naturalCompare.d.ts +1 -1
- package/__dev__/jsutils/printPathArray.d.ts +1 -1
- package/__dev__/jsutils/promiseForObject.d.ts +1 -1
- package/__dev__/jsutils/promiseReduce.d.ts +1 -1
- package/__dev__/jsutils/promiseWithResolvers.d.ts +1 -1
- package/__dev__/jsutils/suggestionList.d.ts +1 -1
- package/__dev__/jsutils/toError.d.ts +1 -1
- package/__dev__/jsutils/toObjMap.d.ts +1 -1
- package/__dev__/language/KindTypeMap.d.ts +1 -1
- package/__dev__/language/ast.d.ts +1 -1
- package/__dev__/language/blockString.d.ts +1 -1
- package/__dev__/language/characterClasses.d.ts +1 -1
- package/__dev__/language/directiveLocation.d.ts +1 -1
- package/__dev__/language/index.d.ts +1 -1
- package/__dev__/language/kinds.d.ts +1 -1
- package/__dev__/language/kinds_.d.ts +1 -1
- package/__dev__/language/lexer.d.ts +1 -1
- package/__dev__/language/location.d.ts +1 -1
- package/__dev__/language/parser.d.ts +1 -1
- package/__dev__/language/predicates.d.ts +1 -1
- package/__dev__/language/printLocation.d.ts +1 -1
- package/__dev__/language/printString.d.ts +1 -1
- package/__dev__/language/printer.d.ts +1 -1
- package/__dev__/language/schemaCoordinateLexer.d.ts +1 -1
- package/__dev__/language/source.d.ts +1 -1
- package/__dev__/language/tokenKind.d.ts +1 -1
- package/__dev__/language/visitor.d.ts +1 -1
- package/__dev__/type/assertName.d.ts +1 -1
- package/__dev__/type/definition.d.ts +1 -1
- package/__dev__/type/directives.d.ts +1 -1
- package/__dev__/type/index.d.ts +1 -1
- package/__dev__/type/introspection.d.ts +1 -1
- package/__dev__/type/scalars.d.ts +1 -1
- package/__dev__/type/schema.d.ts +1 -1
- package/__dev__/type/validate.d.ts +1 -1
- package/__dev__/utilities/TypeInfo.d.ts +1 -1
- package/__dev__/utilities/astFromValue.d.ts +1 -1
- package/__dev__/utilities/buildASTSchema.d.ts +1 -1
- package/__dev__/utilities/buildClientSchema.d.ts +1 -1
- package/__dev__/utilities/coerceInputValue.d.ts +1 -1
- package/__dev__/utilities/concatAST.d.ts +1 -1
- package/__dev__/utilities/extendSchema.d.ts +1 -1
- package/__dev__/utilities/findSchemaChanges.d.ts +1 -1
- package/__dev__/utilities/getDefaultValueAST.d.ts +1 -1
- package/__dev__/utilities/getIntrospectionQuery.d.ts +1 -1
- package/__dev__/utilities/getOperationAST.d.ts +1 -1
- package/__dev__/utilities/index.d.ts +1 -1
- package/__dev__/utilities/introspectionFromSchema.d.ts +1 -1
- package/__dev__/utilities/lexicographicSortSchema.d.ts +1 -1
- package/__dev__/utilities/mapSchemaConfig.d.ts +1 -1
- package/__dev__/utilities/printSchema.d.ts +1 -1
- package/__dev__/utilities/replaceVariables.d.ts +1 -1
- package/__dev__/utilities/resolveSchemaCoordinate.d.ts +1 -1
- package/__dev__/utilities/separateOperations.d.ts +1 -1
- package/__dev__/utilities/sortValueNode.d.ts +1 -1
- package/__dev__/utilities/stripIgnoredCharacters.d.ts +1 -1
- package/__dev__/utilities/typeComparators.d.ts +1 -1
- package/__dev__/utilities/typeFromAST.d.ts +1 -1
- package/__dev__/utilities/typedQueryDocumentNode.d.ts +1 -1
- package/__dev__/utilities/validateInputValue.d.ts +1 -1
- package/__dev__/utilities/valueFromAST.d.ts +1 -1
- package/__dev__/utilities/valueFromASTUntyped.d.ts +1 -1
- package/__dev__/utilities/valueToLiteral.d.ts +1 -1
- package/__dev__/validation/ValidationContext.d.ts +1 -1
- package/__dev__/validation/index.d.ts +1 -1
- package/__dev__/validation/rules/DeferStreamDirectiveLabelRule.d.ts +1 -1
- package/__dev__/validation/rules/DeferStreamDirectiveOnRootFieldRule.d.ts +1 -1
- package/__dev__/validation/rules/DeferStreamDirectiveOnValidOperationsRule.d.ts +1 -1
- package/__dev__/validation/rules/ExecutableDefinitionsRule.d.ts +1 -1
- package/__dev__/validation/rules/FieldsOnCorrectTypeRule.d.ts +1 -1
- package/__dev__/validation/rules/FragmentsOnCompositeTypesRule.d.ts +1 -1
- package/__dev__/validation/rules/KnownArgumentNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/KnownDirectivesRule.d.ts +1 -1
- package/__dev__/validation/rules/KnownFragmentNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/KnownOperationTypesRule.d.ts +1 -1
- package/__dev__/validation/rules/KnownTypeNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/LoneAnonymousOperationRule.d.ts +1 -1
- package/__dev__/validation/rules/LoneSchemaDefinitionRule.d.ts +1 -1
- package/__dev__/validation/rules/MaxIntrospectionDepthRule.d.ts +1 -1
- package/__dev__/validation/rules/NoFragmentCyclesRule.d.ts +1 -1
- package/__dev__/validation/rules/NoUndefinedVariablesRule.d.ts +1 -1
- package/__dev__/validation/rules/NoUnusedFragmentsRule.d.ts +1 -1
- package/__dev__/validation/rules/NoUnusedVariablesRule.d.ts +1 -1
- package/__dev__/validation/rules/OverlappingFieldsCanBeMergedRule.d.ts +1 -1
- package/__dev__/validation/rules/PossibleFragmentSpreadsRule.d.ts +1 -1
- package/__dev__/validation/rules/PossibleTypeExtensionsRule.d.ts +1 -1
- package/__dev__/validation/rules/ProvidedRequiredArgumentsRule.d.ts +1 -1
- package/__dev__/validation/rules/ScalarLeafsRule.d.ts +1 -1
- package/__dev__/validation/rules/SingleFieldSubscriptionsRule.d.ts +1 -1
- package/__dev__/validation/rules/StreamDirectiveOnListFieldRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueArgumentDefinitionNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueArgumentNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueDirectiveNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueDirectivesPerLocationRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueEnumValueNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueFieldDefinitionNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueFragmentNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueInputFieldNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueOperationNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueOperationTypesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueTypeNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/UniqueVariableNamesRule.d.ts +1 -1
- package/__dev__/validation/rules/ValuesOfCorrectTypeRule.d.ts +1 -1
- package/__dev__/validation/rules/VariablesAreInputTypesRule.d.ts +1 -1
- package/__dev__/validation/rules/VariablesInAllowedPositionRule.d.ts +1 -1
- package/__dev__/validation/rules/custom/NoDeprecatedCustomRule.d.ts +1 -1
- package/__dev__/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +1 -1
- package/__dev__/validation/specifiedRules.d.ts +1 -1
- package/__dev__/validation/validate.d.ts +1 -1
- package/__dev__/version.d.ts +1 -1
- package/devMode.d.mts +29 -0
- package/devMode.d.ts +29 -0
- package/devMode.js +2 -2
- package/devMode.js.map +1 -1
- package/devMode.mjs.map +1 -1
- package/error/GraphQLError.d.mts +98 -14
- package/error/GraphQLError.d.ts +98 -14
- package/error/GraphQLError.js +18 -28
- package/error/GraphQLError.js.map +1 -1
- package/error/GraphQLError.mjs +11 -21
- package/error/GraphQLError.mjs.map +1 -1
- package/error/ensureGraphQLError.d.mts +3 -1
- package/error/ensureGraphQLError.d.ts +3 -1
- package/error/ensureGraphQLError.js +5 -8
- package/error/ensureGraphQLError.js.map +1 -1
- package/error/ensureGraphQLError.mjs +0 -3
- package/error/ensureGraphQLError.mjs.map +1 -1
- package/error/index.d.mts +10 -4
- package/error/index.d.ts +10 -4
- package/error/index.js +6 -6
- package/error/index.js.map +1 -1
- package/error/index.mjs.map +1 -1
- package/error/locatedError.d.mts +23 -3
- package/error/locatedError.d.ts +23 -3
- package/error/locatedError.js +4 -10
- package/error/locatedError.js.map +1 -1
- package/error/locatedError.mjs +0 -6
- package/error/locatedError.mjs.map +1 -1
- package/error/syntaxError.d.mts +17 -2
- package/error/syntaxError.d.ts +17 -2
- package/error/syntaxError.js +2 -6
- package/error/syntaxError.js.map +1 -1
- package/error/syntaxError.mjs +0 -4
- package/error/syntaxError.mjs.map +1 -1
- package/execution/AbortedGraphQLExecutionError.d.mts +28 -1
- package/execution/AbortedGraphQLExecutionError.d.ts +28 -1
- package/execution/AbortedGraphQLExecutionError.js.map +1 -1
- package/execution/AbortedGraphQLExecutionError.mjs.map +1 -1
- package/execution/AsyncWorkTracker.d.mts +1 -1
- package/execution/AsyncWorkTracker.d.ts +1 -1
- package/execution/AsyncWorkTracker.js +3 -7
- package/execution/AsyncWorkTracker.js.map +1 -1
- package/execution/AsyncWorkTracker.mjs +1 -5
- package/execution/AsyncWorkTracker.mjs.map +1 -1
- package/execution/ExecutionArgs.d.mts +101 -0
- package/execution/ExecutionArgs.d.ts +101 -0
- package/execution/ExecutionArgs.js +3 -0
- package/execution/ExecutionArgs.js.map +1 -0
- package/execution/ExecutionArgs.mjs +2 -0
- package/execution/ExecutionArgs.mjs.map +1 -0
- package/execution/Executor.d.mts +55 -52
- package/execution/Executor.d.ts +55 -52
- package/execution/Executor.js +84 -206
- package/execution/Executor.js.map +1 -1
- package/execution/Executor.mjs +3 -125
- package/execution/Executor.mjs.map +1 -1
- package/execution/ExecutorThrowingOnIncremental.d.mts +6 -6
- package/execution/ExecutorThrowingOnIncremental.d.ts +6 -6
- package/execution/ExecutorThrowingOnIncremental.js +11 -13
- package/execution/ExecutorThrowingOnIncremental.js.map +1 -1
- package/execution/ExecutorThrowingOnIncremental.mjs +0 -2
- package/execution/ExecutorThrowingOnIncremental.mjs.map +1 -1
- package/execution/buildResolveInfo.d.mts +16 -0
- package/execution/buildResolveInfo.d.ts +16 -0
- package/execution/buildResolveInfo.js +21 -0
- package/execution/buildResolveInfo.js.map +1 -0
- package/execution/buildResolveInfo.mjs +18 -0
- package/execution/buildResolveInfo.mjs.map +1 -0
- package/execution/cancellablePromise.d.mts +3 -0
- package/execution/cancellablePromise.d.ts +3 -0
- package/execution/cancellablePromise.js +2 -2
- package/execution/cancellablePromise.js.map +1 -1
- package/execution/cancellablePromise.mjs.map +1 -1
- package/execution/collectFields.d.mts +15 -9
- package/execution/collectFields.d.ts +15 -9
- package/execution/collectFields.js +19 -60
- package/execution/collectFields.js.map +1 -1
- package/execution/collectFields.mjs +0 -41
- package/execution/collectFields.mjs.map +1 -1
- package/execution/collectIteratorPromises.d.mts +2 -0
- package/execution/collectIteratorPromises.d.ts +2 -0
- package/execution/collectIteratorPromises.js +2 -7
- package/execution/collectIteratorPromises.js.map +1 -1
- package/execution/collectIteratorPromises.mjs +0 -5
- package/execution/collectIteratorPromises.mjs.map +1 -1
- package/execution/createSharedExecutionContext.d.mts +3 -2
- package/execution/createSharedExecutionContext.d.ts +3 -2
- package/execution/createSharedExecutionContext.js +2 -2
- package/execution/createSharedExecutionContext.js.map +1 -1
- package/execution/createSharedExecutionContext.mjs.map +1 -1
- package/execution/execute.d.mts +412 -47
- package/execution/execute.d.ts +412 -47
- package/execution/execute.js +73 -254
- package/execution/execute.js.map +1 -1
- package/execution/execute.mjs +12 -193
- package/execution/execute.mjs.map +1 -1
- package/execution/getStreamUsage.d.mts +5 -2
- package/execution/getStreamUsage.d.ts +5 -2
- package/execution/getStreamUsage.js +9 -16
- package/execution/getStreamUsage.js.map +1 -1
- package/execution/getStreamUsage.mjs +0 -7
- package/execution/getStreamUsage.mjs.map +1 -1
- package/execution/getVariableSignature.d.mts +7 -4
- package/execution/getVariableSignature.d.ts +7 -4
- package/execution/getVariableSignature.js +8 -10
- package/execution/getVariableSignature.js.map +1 -1
- package/execution/getVariableSignature.mjs +0 -2
- package/execution/getVariableSignature.mjs.map +1 -1
- package/execution/hooks.d.mts +4 -8
- package/execution/hooks.d.ts +4 -8
- package/execution/hooks.js +0 -1
- package/execution/hooks.js.map +1 -1
- package/execution/hooks.mjs +0 -1
- package/execution/hooks.mjs.map +1 -1
- package/execution/incremental/Computation.d.mts +2 -2
- package/execution/incremental/Computation.d.ts +2 -2
- package/execution/incremental/Computation.js +2 -3
- package/execution/incremental/Computation.js.map +1 -1
- package/execution/incremental/Computation.mjs +0 -1
- package/execution/incremental/Computation.mjs.map +1 -1
- package/execution/incremental/IncrementalExecutor.d.mts +137 -22
- package/execution/incremental/IncrementalExecutor.d.ts +137 -22
- package/execution/incremental/IncrementalExecutor.js +47 -77
- package/execution/incremental/IncrementalExecutor.js.map +1 -1
- package/execution/incremental/IncrementalExecutor.mjs +2 -32
- package/execution/incremental/IncrementalExecutor.mjs.map +1 -1
- package/execution/incremental/IncrementalPublisher.d.mts +4 -6
- package/execution/incremental/IncrementalPublisher.d.ts +4 -6
- package/execution/incremental/IncrementalPublisher.js +12 -18
- package/execution/incremental/IncrementalPublisher.js.map +1 -1
- package/execution/incremental/IncrementalPublisher.mjs +0 -6
- package/execution/incremental/IncrementalPublisher.mjs.map +1 -1
- package/execution/incremental/Queue.d.mts +1 -1
- package/execution/incremental/Queue.d.ts +1 -1
- package/execution/incremental/Queue.js +22 -79
- package/execution/incremental/Queue.js.map +1 -1
- package/execution/incremental/Queue.mjs +8 -64
- package/execution/incremental/Queue.mjs.map +1 -1
- package/execution/incremental/WorkQueue.d.mts +10 -2
- package/execution/incremental/WorkQueue.d.ts +10 -2
- package/execution/incremental/WorkQueue.js +7 -22
- package/execution/incremental/WorkQueue.js.map +1 -1
- package/execution/incremental/WorkQueue.mjs +0 -15
- package/execution/incremental/WorkQueue.mjs.map +1 -1
- package/execution/incremental/buildExecutionPlan.d.mts +4 -1
- package/execution/incremental/buildExecutionPlan.d.ts +4 -1
- package/execution/incremental/buildExecutionPlan.js +4 -4
- package/execution/incremental/buildExecutionPlan.js.map +1 -1
- package/execution/incremental/buildExecutionPlan.mjs.map +1 -1
- package/execution/index.d.mts +17 -8
- package/execution/index.d.ts +17 -8
- package/execution/index.js +26 -22
- package/execution/index.js.map +1 -1
- package/execution/index.mjs +2 -1
- package/execution/index.mjs.map +1 -1
- package/execution/legacyIncremental/BranchingIncrementalExecutor.d.mts +175 -0
- package/execution/legacyIncremental/BranchingIncrementalExecutor.d.ts +175 -0
- package/execution/legacyIncremental/BranchingIncrementalExecutor.js +69 -0
- package/execution/legacyIncremental/BranchingIncrementalExecutor.js.map +1 -0
- package/execution/legacyIncremental/BranchingIncrementalExecutor.mjs +65 -0
- package/execution/legacyIncremental/BranchingIncrementalExecutor.mjs.map +1 -0
- package/execution/legacyIncremental/BranchingIncrementalPublisher.d.mts +12 -0
- package/execution/legacyIncremental/BranchingIncrementalPublisher.d.ts +12 -0
- package/execution/legacyIncremental/BranchingIncrementalPublisher.js +131 -0
- package/execution/legacyIncremental/BranchingIncrementalPublisher.js.map +1 -0
- package/execution/legacyIncremental/BranchingIncrementalPublisher.mjs +127 -0
- package/execution/legacyIncremental/BranchingIncrementalPublisher.mjs.map +1 -0
- package/execution/legacyIncremental/legacyExecuteIncrementally.d.mts +165 -0
- package/execution/legacyIncremental/legacyExecuteIncrementally.d.ts +165 -0
- package/execution/legacyIncremental/legacyExecuteIncrementally.js +17 -0
- package/execution/legacyIncremental/legacyExecuteIncrementally.js.map +1 -0
- package/execution/legacyIncremental/legacyExecuteIncrementally.mjs +13 -0
- package/execution/legacyIncremental/legacyExecuteIncrementally.mjs.map +1 -0
- package/execution/mapAsyncIterable.d.mts +3 -1
- package/execution/mapAsyncIterable.d.ts +3 -1
- package/execution/mapAsyncIterable.js +4 -9
- package/execution/mapAsyncIterable.js.map +1 -1
- package/execution/mapAsyncIterable.mjs +0 -5
- package/execution/mapAsyncIterable.mjs.map +1 -1
- package/execution/returnIteratorCatchingErrors.d.mts +1 -0
- package/execution/returnIteratorCatchingErrors.d.ts +1 -0
- package/execution/returnIteratorCatchingErrors.js +1 -2
- package/execution/returnIteratorCatchingErrors.js.map +1 -1
- package/execution/returnIteratorCatchingErrors.mjs +1 -2
- package/execution/returnIteratorCatchingErrors.mjs.map +1 -1
- package/execution/values.d.mts +196 -14
- package/execution/values.d.ts +196 -14
- package/execution/values.js +45 -86
- package/execution/values.js.map +1 -1
- package/execution/values.mjs +14 -55
- package/execution/values.mjs.map +1 -1
- package/execution/withConcurrentAbruptClose.d.mts +3 -1
- package/execution/withConcurrentAbruptClose.d.ts +3 -1
- package/execution/withConcurrentAbruptClose.js +3 -17
- package/execution/withConcurrentAbruptClose.js.map +1 -1
- package/execution/withConcurrentAbruptClose.mjs +1 -15
- package/execution/withConcurrentAbruptClose.mjs.map +1 -1
- package/graphql.d.mts +198 -50
- package/graphql.d.ts +198 -50
- package/graphql.js +11 -23
- package/graphql.js.map +1 -1
- package/graphql.mjs +0 -12
- package/graphql.mjs.map +1 -1
- package/harness.d.mts +21 -4
- package/harness.d.ts +21 -4
- package/harness.js +7 -7
- package/harness.js.map +1 -1
- package/harness.mjs.map +1 -1
- package/index.d.mts +41 -39
- package/index.d.ts +41 -39
- package/index.js +260 -346
- package/index.js.map +1 -1
- package/index.mjs +5 -149
- package/index.mjs.map +1 -1
- package/jsutils/AccumulatorMap.d.mts +2 -0
- package/jsutils/AccumulatorMap.d.ts +2 -0
- package/jsutils/AccumulatorMap.js +0 -4
- package/jsutils/AccumulatorMap.js.map +1 -1
- package/jsutils/AccumulatorMap.mjs +0 -4
- package/jsutils/AccumulatorMap.mjs.map +1 -1
- package/jsutils/Maybe.d.mts +5 -1
- package/jsutils/Maybe.d.ts +5 -1
- package/jsutils/Maybe.js.map +1 -1
- package/jsutils/Maybe.mjs.map +1 -1
- package/jsutils/ObjMap.d.mts +6 -0
- package/jsutils/ObjMap.d.ts +6 -0
- package/jsutils/ObjMap.js.map +1 -1
- package/jsutils/ObjMap.mjs.map +1 -1
- package/jsutils/Path.d.mts +31 -1
- package/jsutils/Path.d.ts +31 -1
- package/jsutils/Path.js +0 -6
- package/jsutils/Path.js.map +1 -1
- package/jsutils/Path.mjs +0 -6
- package/jsutils/Path.mjs.map +1 -1
- package/jsutils/PromiseOrValue.d.mts +1 -0
- package/jsutils/PromiseOrValue.d.ts +1 -0
- package/jsutils/PromiseOrValue.js.map +1 -1
- package/jsutils/PromiseOrValue.mjs.map +1 -1
- package/jsutils/capitalize.d.mts +2 -0
- package/jsutils/capitalize.d.ts +2 -0
- package/jsutils/capitalize.js +0 -3
- package/jsutils/capitalize.js.map +1 -1
- package/jsutils/capitalize.mjs +0 -3
- package/jsutils/capitalize.mjs.map +1 -1
- package/jsutils/devAssert.d.mts +1 -0
- package/jsutils/devAssert.d.ts +1 -0
- package/jsutils/devAssert.js.map +1 -1
- package/jsutils/devAssert.mjs.map +1 -1
- package/jsutils/didYouMean.d.mts +4 -1
- package/jsutils/didYouMean.d.ts +4 -1
- package/jsutils/didYouMean.js +2 -2
- package/jsutils/didYouMean.js.map +1 -1
- package/jsutils/didYouMean.mjs.map +1 -1
- package/jsutils/formatList.d.mts +6 -2
- package/jsutils/formatList.d.ts +6 -2
- package/jsutils/formatList.js +2 -8
- package/jsutils/formatList.js.map +1 -1
- package/jsutils/formatList.mjs +0 -6
- package/jsutils/formatList.mjs.map +1 -1
- package/jsutils/getBySet.d.mts +1 -0
- package/jsutils/getBySet.d.ts +1 -0
- package/jsutils/getBySet.js +2 -2
- package/jsutils/getBySet.js.map +1 -1
- package/jsutils/getBySet.mjs.map +1 -1
- package/jsutils/groupBy.d.mts +2 -0
- package/jsutils/groupBy.d.ts +2 -0
- package/jsutils/groupBy.js +2 -5
- package/jsutils/groupBy.js.map +1 -1
- package/jsutils/groupBy.mjs +0 -3
- package/jsutils/groupBy.mjs.map +1 -1
- package/jsutils/identityFunc.d.mts +2 -0
- package/jsutils/identityFunc.d.ts +2 -0
- package/jsutils/identityFunc.js +0 -3
- package/jsutils/identityFunc.js.map +1 -1
- package/jsutils/identityFunc.mjs +0 -3
- package/jsutils/identityFunc.mjs.map +1 -1
- package/jsutils/inspect.d.mts +2 -0
- package/jsutils/inspect.d.ts +2 -0
- package/jsutils/inspect.js +0 -4
- package/jsutils/inspect.js.map +1 -1
- package/jsutils/inspect.mjs +0 -4
- package/jsutils/inspect.mjs.map +1 -1
- package/jsutils/instanceOf.d.mts +2 -0
- package/jsutils/instanceOf.d.ts +2 -0
- package/jsutils/instanceOf.js +3 -14
- package/jsutils/instanceOf.js.map +1 -1
- package/jsutils/instanceOf.mjs +1 -12
- package/jsutils/instanceOf.mjs.map +1 -1
- package/jsutils/invariant.d.mts +1 -0
- package/jsutils/invariant.d.ts +1 -0
- package/jsutils/invariant.js.map +1 -1
- package/jsutils/invariant.mjs.map +1 -1
- package/jsutils/isAsyncIterable.d.mts +2 -0
- package/jsutils/isAsyncIterable.d.ts +2 -0
- package/jsutils/isAsyncIterable.js +0 -4
- package/jsutils/isAsyncIterable.js.map +1 -1
- package/jsutils/isAsyncIterable.mjs +0 -4
- package/jsutils/isAsyncIterable.mjs.map +1 -1
- package/jsutils/isIterableObject.d.mts +6 -5
- package/jsutils/isIterableObject.d.ts +6 -5
- package/jsutils/isIterableObject.js +0 -17
- package/jsutils/isIterableObject.js.map +1 -1
- package/jsutils/isIterableObject.mjs +0 -17
- package/jsutils/isIterableObject.mjs.map +1 -1
- package/jsutils/isObjectLike.d.mts +2 -0
- package/jsutils/isObjectLike.d.ts +2 -0
- package/jsutils/isObjectLike.js +0 -4
- package/jsutils/isObjectLike.js.map +1 -1
- package/jsutils/isObjectLike.mjs +0 -4
- package/jsutils/isObjectLike.mjs.map +1 -1
- package/jsutils/isPromise.d.mts +3 -0
- package/jsutils/isPromise.d.ts +3 -0
- package/jsutils/isPromise.js +0 -4
- package/jsutils/isPromise.js.map +1 -1
- package/jsutils/isPromise.mjs +0 -4
- package/jsutils/isPromise.mjs.map +1 -1
- package/jsutils/isSameSet.d.mts +1 -0
- package/jsutils/isSameSet.d.ts +1 -0
- package/jsutils/isSameSet.js.map +1 -1
- package/jsutils/isSameSet.mjs.map +1 -1
- package/jsutils/keyMap.d.mts +8 -15
- package/jsutils/keyMap.d.ts +8 -15
- package/jsutils/keyMap.js +0 -27
- package/jsutils/keyMap.js.map +1 -1
- package/jsutils/keyMap.mjs +0 -27
- package/jsutils/keyMap.mjs.map +1 -1
- package/jsutils/keyValMap.d.mts +10 -7
- package/jsutils/keyValMap.d.ts +10 -7
- package/jsutils/keyValMap.js +0 -17
- package/jsutils/keyValMap.js.map +1 -1
- package/jsutils/keyValMap.mjs +0 -17
- package/jsutils/keyValMap.mjs.map +1 -1
- package/jsutils/mapValue.d.mts +3 -1
- package/jsutils/mapValue.d.ts +3 -1
- package/jsutils/mapValue.js +0 -4
- package/jsutils/mapValue.js.map +1 -1
- package/jsutils/mapValue.mjs +0 -4
- package/jsutils/mapValue.mjs.map +1 -1
- package/jsutils/memoize1.d.mts +2 -0
- package/jsutils/memoize1.d.ts +2 -0
- package/jsutils/memoize1.js +0 -3
- package/jsutils/memoize1.js.map +1 -1
- package/jsutils/memoize1.mjs +0 -3
- package/jsutils/memoize1.mjs.map +1 -1
- package/jsutils/memoize2.d.mts +2 -0
- package/jsutils/memoize2.d.ts +2 -0
- package/jsutils/memoize2.js +0 -3
- package/jsutils/memoize2.js.map +1 -1
- package/jsutils/memoize2.mjs +0 -3
- package/jsutils/memoize2.mjs.map +1 -1
- package/jsutils/memoize3.d.mts +2 -0
- package/jsutils/memoize3.d.ts +2 -0
- package/jsutils/memoize3.js +0 -3
- package/jsutils/memoize3.js.map +1 -1
- package/jsutils/memoize3.mjs +0 -3
- package/jsutils/memoize3.mjs.map +1 -1
- package/jsutils/naturalCompare.d.mts +1 -0
- package/jsutils/naturalCompare.d.ts +1 -0
- package/jsutils/naturalCompare.js +0 -7
- package/jsutils/naturalCompare.js.map +1 -1
- package/jsutils/naturalCompare.mjs +0 -7
- package/jsutils/naturalCompare.mjs.map +1 -1
- package/jsutils/printPathArray.d.mts +2 -0
- package/jsutils/printPathArray.d.ts +2 -0
- package/jsutils/printPathArray.js +0 -3
- package/jsutils/printPathArray.js.map +1 -1
- package/jsutils/printPathArray.mjs +0 -3
- package/jsutils/printPathArray.mjs.map +1 -1
- package/jsutils/promiseForObject.d.mts +4 -2
- package/jsutils/promiseForObject.d.ts +4 -2
- package/jsutils/promiseForObject.js +0 -7
- package/jsutils/promiseForObject.js.map +1 -1
- package/jsutils/promiseForObject.mjs +0 -7
- package/jsutils/promiseForObject.mjs.map +1 -1
- package/jsutils/promiseReduce.d.mts +3 -1
- package/jsutils/promiseReduce.d.ts +3 -1
- package/jsutils/promiseReduce.js +2 -9
- package/jsutils/promiseReduce.js.map +1 -1
- package/jsutils/promiseReduce.mjs +0 -7
- package/jsutils/promiseReduce.mjs.map +1 -1
- package/jsutils/promiseWithResolvers.d.mts +3 -1
- package/jsutils/promiseWithResolvers.d.ts +3 -1
- package/jsutils/promiseWithResolvers.js +0 -5
- package/jsutils/promiseWithResolvers.js.map +1 -1
- package/jsutils/promiseWithResolvers.mjs +0 -5
- package/jsutils/promiseWithResolvers.mjs.map +1 -1
- package/jsutils/suggestionList.d.mts +2 -0
- package/jsutils/suggestionList.d.ts +2 -0
- package/jsutils/suggestionList.js +3 -26
- package/jsutils/suggestionList.js.map +1 -1
- package/jsutils/suggestionList.mjs +1 -24
- package/jsutils/suggestionList.mjs.map +1 -1
- package/jsutils/toError.d.mts +2 -0
- package/jsutils/toError.d.ts +2 -0
- package/jsutils/toError.js +2 -5
- package/jsutils/toError.js.map +1 -1
- package/jsutils/toError.mjs +0 -3
- package/jsutils/toError.mjs.map +1 -1
- package/jsutils/toObjMap.d.mts +4 -2
- package/jsutils/toObjMap.d.ts +4 -2
- package/jsutils/toObjMap.js.map +1 -1
- package/jsutils/toObjMap.mjs.map +1 -1
- package/language/KindTypeMap.d.mts +2 -1
- package/language/KindTypeMap.d.ts +2 -1
- package/language/KindTypeMap.js.map +1 -1
- package/language/KindTypeMap.mjs.map +1 -1
- package/language/ast.d.mts +425 -58
- package/language/ast.d.ts +425 -58
- package/language/ast.js +8 -21
- package/language/ast.js.map +1 -1
- package/language/ast.mjs +8 -21
- package/language/ast.mjs.map +1 -1
- package/language/blockString.d.mts +1 -3
- package/language/blockString.d.ts +1 -3
- package/language/blockString.js +15 -41
- package/language/blockString.js.map +1 -1
- package/language/blockString.mjs +11 -37
- package/language/blockString.mjs.map +1 -1
- package/language/characterClasses.js +2 -45
- package/language/characterClasses.js.map +1 -1
- package/language/characterClasses.mjs +2 -45
- package/language/characterClasses.mjs.map +1 -1
- package/language/directiveLocation.d.mts +26 -6
- package/language/directiveLocation.d.ts +26 -6
- package/language/directiveLocation.js +2 -6
- package/language/directiveLocation.js.map +1 -1
- package/language/directiveLocation.mjs +2 -6
- package/language/directiveLocation.mjs.map +1 -1
- package/language/index.d.mts +22 -16
- package/language/index.d.ts +22 -16
- package/language/index.js +45 -49
- package/language/index.js.map +1 -1
- package/language/index.mjs +0 -4
- package/language/index.mjs.map +1 -1
- package/language/kinds.d.mts +5 -2
- package/language/kinds.d.ts +5 -2
- package/language/kinds.js.map +1 -1
- package/language/kinds.mjs.map +1 -1
- package/language/kinds_.d.mts +102 -12
- package/language/kinds_.d.ts +102 -12
- package/language/kinds_.js +2 -14
- package/language/kinds_.js.map +1 -1
- package/language/kinds_.mjs +1 -13
- package/language/kinds_.mjs.map +1 -1
- package/language/lexer.d.mts +51 -18
- package/language/lexer.d.ts +51 -18
- package/language/lexer.js +102 -343
- package/language/lexer.js.map +1 -1
- package/language/lexer.mjs +37 -278
- package/language/lexer.mjs.map +1 -1
- package/language/location.d.mts +17 -4
- package/language/location.d.ts +17 -4
- package/language/location.js +2 -6
- package/language/location.js.map +1 -1
- package/language/location.mjs +0 -4
- package/language/location.mjs.map +1 -1
- package/language/parser.d.mts +243 -15
- package/language/parser.d.ts +243 -15
- package/language/parser.js +183 -528
- package/language/parser.js.map +1 -1
- package/language/parser.mjs +26 -371
- package/language/parser.mjs.map +1 -1
- package/language/predicates.d.mts +182 -1
- package/language/predicates.d.ts +182 -1
- package/language/predicates.js +45 -49
- package/language/predicates.js.map +1 -1
- package/language/predicates.mjs +3 -7
- package/language/predicates.mjs.map +1 -1
- package/language/printLocation.d.mts +31 -3
- package/language/printLocation.d.ts +31 -3
- package/language/printLocation.js +2 -10
- package/language/printLocation.js.map +1 -1
- package/language/printLocation.mjs +0 -8
- package/language/printLocation.mjs.map +1 -1
- package/language/printString.d.mts +2 -0
- package/language/printString.d.ts +2 -0
- package/language/printString.js +5 -11
- package/language/printString.js.map +1 -1
- package/language/printString.mjs +5 -11
- package/language/printString.mjs.map +1 -1
- package/language/printer.d.mts +13 -1
- package/language/printer.d.ts +13 -1
- package/language/printer.js +10 -31
- package/language/printer.js.map +1 -1
- package/language/printer.mjs +5 -26
- package/language/printer.mjs.map +1 -1
- package/language/schemaCoordinateLexer.d.mts +17 -3
- package/language/schemaCoordinateLexer.d.ts +17 -3
- package/language/schemaCoordinateLexer.js +21 -51
- package/language/schemaCoordinateLexer.js.map +1 -1
- package/language/schemaCoordinateLexer.mjs +5 -35
- package/language/schemaCoordinateLexer.mjs.map +1 -1
- package/language/source.d.mts +28 -1
- package/language/source.d.ts +28 -1
- package/language/source.js +5 -17
- package/language/source.js.map +1 -1
- package/language/source.mjs +0 -12
- package/language/source.mjs.map +1 -1
- package/language/tokenKind.d.mts +5 -0
- package/language/tokenKind.d.ts +5 -0
- package/language/tokenKind.js +0 -4
- package/language/tokenKind.js.map +1 -1
- package/language/tokenKind.mjs +0 -4
- package/language/tokenKind.mjs.map +1 -1
- package/language/visitor.d.mts +184 -74
- package/language/visitor.d.ts +184 -74
- package/language/visitor.js +10 -25
- package/language/visitor.js.map +1 -1
- package/language/visitor.mjs +0 -15
- package/language/visitor.mjs.map +1 -1
- package/package.json +2 -2
- package/type/assertName.d.mts +18 -1
- package/type/assertName.d.ts +18 -1
- package/type/assertName.js +8 -16
- package/type/assertName.js.map +1 -1
- package/type/assertName.mjs +0 -8
- package/type/assertName.mjs.map +1 -1
- package/type/definition.d.mts +3268 -138
- package/type/definition.d.ts +3268 -138
- package/type/definition.js +99 -346
- package/type/definition.js.map +1 -1
- package/type/definition.mjs +5 -252
- package/type/definition.mjs.map +1 -1
- package/type/directives.d.mts +220 -26
- package/type/directives.d.ts +220 -26
- package/type/directives.js +51 -83
- package/type/directives.js.map +1 -1
- package/type/directives.mjs +5 -37
- package/type/directives.mjs.map +1 -1
- package/type/index.d.mts +18 -12
- package/type/index.d.ts +18 -12
- package/type/index.js +106 -129
- package/type/index.js.map +1 -1
- package/type/index.mjs +5 -48
- package/type/index.mjs.map +1 -1
- package/type/introspection.d.mts +38 -2
- package/type/introspection.d.ts +38 -2
- package/type/introspection.js +122 -107
- package/type/introspection.js.map +1 -1
- package/type/introspection.mjs +24 -9
- package/type/introspection.mjs.map +1 -1
- package/type/scalars.d.mts +31 -4
- package/type/scalars.d.ts +31 -4
- package/type/scalars.js +61 -76
- package/type/scalars.js.map +1 -1
- package/type/scalars.mjs +0 -15
- package/type/scalars.mjs.map +1 -1
- package/type/schema.d.mts +514 -38
- package/type/schema.d.ts +514 -38
- package/type/schema.js +32 -129
- package/type/schema.js.map +1 -1
- package/type/schema.mjs +0 -97
- package/type/schema.mjs.map +1 -1
- package/type/validate.d.mts +36 -7
- package/type/validate.d.ts +36 -7
- package/type/validate.js +83 -195
- package/type/validate.js.map +1 -1
- package/type/validate.mjs +1 -113
- package/type/validate.mjs.map +1 -1
- package/utilities/TypeInfo.d.mts +570 -7
- package/utilities/TypeInfo.d.ts +570 -7
- package/utilities/TypeInfo.js +62 -85
- package/utilities/TypeInfo.js.map +1 -1
- package/utilities/TypeInfo.mjs +2 -25
- package/utilities/TypeInfo.mjs.map +1 -1
- package/utilities/astFromValue.d.mts +39 -6
- package/utilities/astFromValue.d.ts +39 -6
- package/utilities/astFromValue.js +30 -74
- package/utilities/astFromValue.js.map +1 -1
- package/utilities/astFromValue.mjs +0 -44
- package/utilities/astFromValue.mjs.map +1 -1
- package/utilities/buildASTSchema.d.mts +71 -11
- package/utilities/buildASTSchema.d.ts +71 -11
- package/utilities/buildASTSchema.js +11 -31
- package/utilities/buildASTSchema.js.map +1 -1
- package/utilities/buildASTSchema.mjs +1 -21
- package/utilities/buildASTSchema.mjs.map +1 -1
- package/utilities/buildClientSchema.d.mts +20 -5
- package/utilities/buildClientSchema.d.ts +20 -5
- package/utilities/buildClientSchema.js +53 -83
- package/utilities/buildClientSchema.js.map +1 -1
- package/utilities/buildClientSchema.mjs +1 -30
- package/utilities/buildClientSchema.mjs.map +1 -1
- package/utilities/coerceInputValue.d.mts +88 -6
- package/utilities/coerceInputValue.d.ts +88 -6
- package/utilities/coerceInputValue.js +52 -81
- package/utilities/coerceInputValue.js.map +1 -1
- package/utilities/coerceInputValue.mjs +21 -50
- package/utilities/coerceInputValue.mjs.map +1 -1
- package/utilities/concatAST.d.mts +13 -1
- package/utilities/concatAST.d.ts +13 -1
- package/utilities/concatAST.js +2 -7
- package/utilities/concatAST.js.map +1 -1
- package/utilities/concatAST.mjs +0 -5
- package/utilities/concatAST.mjs.map +1 -1
- package/utilities/extendSchema.d.mts +61 -6
- package/utilities/extendSchema.d.ts +61 -6
- package/utilities/extendSchema.js +92 -126
- package/utilities/extendSchema.js.map +1 -1
- package/utilities/extendSchema.mjs +27 -61
- package/utilities/extendSchema.mjs.map +1 -1
- package/utilities/findSchemaChanges.d.mts +100 -2
- package/utilities/findSchemaChanges.d.ts +100 -2
- package/utilities/findSchemaChanges.js +41 -75
- package/utilities/findSchemaChanges.js.map +1 -1
- package/utilities/findSchemaChanges.mjs +3 -37
- package/utilities/findSchemaChanges.mjs.map +1 -1
- package/utilities/getDefaultValueAST.d.mts +3 -2
- package/utilities/getDefaultValueAST.d.ts +3 -2
- package/utilities/getDefaultValueAST.js +7 -7
- package/utilities/getDefaultValueAST.js.map +1 -1
- package/utilities/getDefaultValueAST.mjs.map +1 -1
- package/utilities/getIntrospectionQuery.d.mts +151 -3
- package/utilities/getIntrospectionQuery.d.ts +151 -3
- package/utilities/getIntrospectionQuery.js +22 -42
- package/utilities/getIntrospectionQuery.js.map +1 -1
- package/utilities/getIntrospectionQuery.mjs +22 -42
- package/utilities/getIntrospectionQuery.mjs.map +1 -1
- package/utilities/getOperationAST.d.mts +17 -2
- package/utilities/getOperationAST.d.ts +17 -2
- package/utilities/getOperationAST.js +2 -10
- package/utilities/getOperationAST.js.map +1 -1
- package/utilities/getOperationAST.mjs +0 -8
- package/utilities/getOperationAST.mjs.map +1 -1
- package/utilities/index.d.mts +45 -30
- package/utilities/index.d.ts +45 -30
- package/utilities/index.js +61 -88
- package/utilities/index.js.map +1 -1
- package/utilities/index.mjs +4 -37
- package/utilities/index.mjs.map +1 -1
- package/utilities/introspectionFromSchema.d.mts +56 -2
- package/utilities/introspectionFromSchema.d.ts +56 -2
- package/utilities/introspectionFromSchema.js +8 -16
- package/utilities/introspectionFromSchema.js.map +1 -1
- package/utilities/introspectionFromSchema.mjs +1 -9
- package/utilities/introspectionFromSchema.mjs.map +1 -1
- package/utilities/lexicographicSortSchema.d.mts +36 -1
- package/utilities/lexicographicSortSchema.d.ts +36 -1
- package/utilities/lexicographicSortSchema.js +14 -19
- package/utilities/lexicographicSortSchema.js.map +1 -1
- package/utilities/lexicographicSortSchema.mjs +0 -5
- package/utilities/lexicographicSortSchema.mjs.map +1 -1
- package/utilities/mapSchemaConfig.d.mts +9 -6
- package/utilities/mapSchemaConfig.d.ts +9 -6
- package/utilities/mapSchemaConfig.js +28 -40
- package/utilities/mapSchemaConfig.js.map +1 -1
- package/utilities/mapSchemaConfig.mjs +0 -12
- package/utilities/mapSchemaConfig.mjs.map +1 -1
- package/utilities/printSchema.d.mts +87 -3
- package/utilities/printSchema.d.ts +87 -3
- package/utilities/printSchema.js +30 -59
- package/utilities/printSchema.js.map +1 -1
- package/utilities/printSchema.mjs +1 -30
- package/utilities/printSchema.mjs.map +1 -1
- package/utilities/replaceVariables.d.mts +40 -4
- package/utilities/replaceVariables.d.ts +40 -4
- package/utilities/replaceVariables.js +9 -17
- package/utilities/replaceVariables.js.map +1 -1
- package/utilities/replaceVariables.mjs +0 -8
- package/utilities/replaceVariables.mjs.map +1 -1
- package/utilities/resolveSchemaCoordinate.d.mts +67 -5
- package/utilities/resolveSchemaCoordinate.d.ts +67 -5
- package/utilities/resolveSchemaCoordinate.js +23 -79
- package/utilities/resolveSchemaCoordinate.js.map +1 -1
- package/utilities/resolveSchemaCoordinate.mjs +0 -56
- package/utilities/resolveSchemaCoordinate.mjs.map +1 -1
- package/utilities/separateOperations.d.mts +32 -2
- package/utilities/separateOperations.d.ts +32 -2
- package/utilities/separateOperations.js +7 -22
- package/utilities/separateOperations.js.map +1 -1
- package/utilities/separateOperations.mjs +0 -15
- package/utilities/separateOperations.mjs.map +1 -1
- package/utilities/sortValueNode.d.mts +1 -1
- package/utilities/sortValueNode.d.ts +1 -1
- package/utilities/sortValueNode.js +12 -19
- package/utilities/sortValueNode.js.map +1 -1
- package/utilities/sortValueNode.mjs +0 -7
- package/utilities/sortValueNode.mjs.map +1 -1
- package/utilities/stripIgnoredCharacters.d.mts +14 -7
- package/utilities/stripIgnoredCharacters.d.ts +14 -7
- package/utilities/stripIgnoredCharacters.js +11 -76
- package/utilities/stripIgnoredCharacters.js.map +1 -1
- package/utilities/stripIgnoredCharacters.mjs +0 -65
- package/utilities/stripIgnoredCharacters.mjs.map +1 -1
- package/utilities/typeComparators.d.mts +86 -2
- package/utilities/typeComparators.d.ts +86 -2
- package/utilities/typeComparators.js +14 -47
- package/utilities/typeComparators.js.map +1 -1
- package/utilities/typeComparators.mjs +0 -33
- package/utilities/typeComparators.mjs.map +1 -1
- package/utilities/typeFromAST.d.mts +90 -4
- package/utilities/typeFromAST.d.ts +90 -4
- package/utilities/typeFromAST.js +7 -7
- package/utilities/typeFromAST.js.map +1 -1
- package/utilities/typeFromAST.mjs.map +1 -1
- package/utilities/typedQueryDocumentNode.d.mts +5 -1
- package/utilities/typedQueryDocumentNode.d.ts +5 -1
- package/utilities/typedQueryDocumentNode.js.map +1 -1
- package/utilities/typedQueryDocumentNode.mjs.map +1 -1
- package/utilities/validateInputValue.d.mts +129 -6
- package/utilities/validateInputValue.d.ts +129 -6
- package/utilities/validateInputValue.js +60 -80
- package/utilities/validateInputValue.js.map +1 -1
- package/utilities/validateInputValue.mjs +0 -20
- package/utilities/validateInputValue.mjs.map +1 -1
- package/utilities/valueFromAST.d.mts +45 -4
- package/utilities/valueFromAST.d.ts +45 -4
- package/utilities/valueFromAST.js +32 -72
- package/utilities/valueFromAST.js.map +1 -1
- package/utilities/valueFromAST.mjs +13 -53
- package/utilities/valueFromAST.mjs.map +1 -1
- package/utilities/valueFromASTUntyped.d.mts +18 -5
- package/utilities/valueFromASTUntyped.d.ts +18 -5
- package/utilities/valueFromASTUntyped.js +12 -28
- package/utilities/valueFromASTUntyped.js.map +1 -1
- package/utilities/valueFromASTUntyped.mjs +0 -16
- package/utilities/valueFromASTUntyped.mjs.map +1 -1
- package/utilities/valueToLiteral.d.mts +32 -3
- package/utilities/valueToLiteral.d.ts +32 -3
- package/utilities/valueToLiteral.js +37 -70
- package/utilities/valueToLiteral.js.map +1 -1
- package/utilities/valueToLiteral.mjs +7 -40
- package/utilities/valueToLiteral.mjs.map +1 -1
- package/validation/ValidationContext.d.mts +499 -9
- package/validation/ValidationContext.d.ts +499 -9
- package/validation/ValidationContext.js +9 -16
- package/validation/ValidationContext.js.map +1 -1
- package/validation/ValidationContext.mjs +1 -8
- package/validation/ValidationContext.mjs.map +1 -1
- package/validation/index.d.mts +53 -46
- package/validation/index.d.ts +53 -46
- package/validation/index.js +91 -125
- package/validation/index.js.map +1 -1
- package/validation/index.mjs +0 -34
- package/validation/index.mjs.map +1 -1
- package/validation/rules/DeferStreamDirectiveLabelRule.d.mts +32 -2
- package/validation/rules/DeferStreamDirectiveLabelRule.d.ts +32 -2
- package/validation/rules/DeferStreamDirectiveLabelRule.js +9 -14
- package/validation/rules/DeferStreamDirectiveLabelRule.js.map +1 -1
- package/validation/rules/DeferStreamDirectiveLabelRule.mjs +0 -5
- package/validation/rules/DeferStreamDirectiveLabelRule.mjs.map +1 -1
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.d.mts +30 -2
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.d.ts +30 -2
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.js +8 -13
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.js.map +1 -1
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.mjs +0 -5
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.mjs.map +1 -1
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.d.mts +54 -2
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.d.ts +54 -2
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.js +14 -19
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.js.map +1 -1
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.mjs +0 -5
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.mjs.map +1 -1
- package/validation/rules/ExecutableDefinitionsRule.d.mts +30 -2
- package/validation/rules/ExecutableDefinitionsRule.d.ts +30 -2
- package/validation/rules/ExecutableDefinitionsRule.js +7 -15
- package/validation/rules/ExecutableDefinitionsRule.js.map +1 -1
- package/validation/rules/ExecutableDefinitionsRule.mjs +0 -8
- package/validation/rules/ExecutableDefinitionsRule.mjs.map +1 -1
- package/validation/rules/FieldsOnCorrectTypeRule.d.mts +30 -2
- package/validation/rules/FieldsOnCorrectTypeRule.d.ts +30 -2
- package/validation/rules/FieldsOnCorrectTypeRule.js +14 -41
- package/validation/rules/FieldsOnCorrectTypeRule.js.map +1 -1
- package/validation/rules/FieldsOnCorrectTypeRule.mjs +0 -27
- package/validation/rules/FieldsOnCorrectTypeRule.mjs.map +1 -1
- package/validation/rules/FragmentsOnCompositeTypesRule.d.mts +30 -2
- package/validation/rules/FragmentsOnCompositeTypesRule.d.ts +30 -2
- package/validation/rules/FragmentsOnCompositeTypesRule.js +12 -21
- package/validation/rules/FragmentsOnCompositeTypesRule.js.map +1 -1
- package/validation/rules/FragmentsOnCompositeTypesRule.mjs +0 -9
- package/validation/rules/FragmentsOnCompositeTypesRule.mjs.map +1 -1
- package/validation/rules/KnownArgumentNamesRule.d.mts +31 -5
- package/validation/rules/KnownArgumentNamesRule.d.ts +31 -5
- package/validation/rules/KnownArgumentNamesRule.js +16 -29
- package/validation/rules/KnownArgumentNamesRule.js.map +1 -1
- package/validation/rules/KnownArgumentNamesRule.mjs +0 -13
- package/validation/rules/KnownArgumentNamesRule.mjs.map +1 -1
- package/validation/rules/KnownDirectivesRule.d.mts +30 -2
- package/validation/rules/KnownDirectivesRule.d.ts +30 -2
- package/validation/rules/KnownDirectivesRule.js +66 -73
- package/validation/rules/KnownDirectivesRule.js.map +1 -1
- package/validation/rules/KnownDirectivesRule.mjs +3 -10
- package/validation/rules/KnownDirectivesRule.mjs.map +1 -1
- package/validation/rules/KnownFragmentNamesRule.d.mts +30 -2
- package/validation/rules/KnownFragmentNamesRule.d.ts +30 -2
- package/validation/rules/KnownFragmentNamesRule.js +2 -10
- package/validation/rules/KnownFragmentNamesRule.js.map +1 -1
- package/validation/rules/KnownFragmentNamesRule.mjs +0 -8
- package/validation/rules/KnownFragmentNamesRule.mjs.map +1 -1
- package/validation/rules/KnownOperationTypesRule.d.mts +22 -2
- package/validation/rules/KnownOperationTypesRule.d.ts +22 -2
- package/validation/rules/KnownOperationTypesRule.js +2 -10
- package/validation/rules/KnownOperationTypesRule.js.map +1 -1
- package/validation/rules/KnownOperationTypesRule.mjs +0 -8
- package/validation/rules/KnownOperationTypesRule.mjs.map +1 -1
- package/validation/rules/KnownTypeNamesRule.d.mts +30 -2
- package/validation/rules/KnownTypeNamesRule.d.ts +30 -2
- package/validation/rules/KnownTypeNamesRule.js +11 -19
- package/validation/rules/KnownTypeNamesRule.js.map +1 -1
- package/validation/rules/KnownTypeNamesRule.mjs +0 -8
- package/validation/rules/KnownTypeNamesRule.mjs.map +1 -1
- package/validation/rules/LoneAnonymousOperationRule.d.mts +30 -2
- package/validation/rules/LoneAnonymousOperationRule.d.ts +30 -2
- package/validation/rules/LoneAnonymousOperationRule.js +4 -12
- package/validation/rules/LoneAnonymousOperationRule.js.map +1 -1
- package/validation/rules/LoneAnonymousOperationRule.mjs +0 -8
- package/validation/rules/LoneAnonymousOperationRule.mjs.map +1 -1
- package/validation/rules/LoneSchemaDefinitionRule.d.mts +23 -2
- package/validation/rules/LoneSchemaDefinitionRule.d.ts +23 -2
- package/validation/rules/LoneSchemaDefinitionRule.js +3 -8
- package/validation/rules/LoneSchemaDefinitionRule.js.map +1 -1
- package/validation/rules/LoneSchemaDefinitionRule.mjs +0 -5
- package/validation/rules/LoneSchemaDefinitionRule.mjs.map +1 -1
- package/validation/rules/MaxIntrospectionDepthRule.d.mts +33 -2
- package/validation/rules/MaxIntrospectionDepthRule.d.ts +33 -2
- package/validation/rules/MaxIntrospectionDepthRule.js +5 -19
- package/validation/rules/MaxIntrospectionDepthRule.js.map +1 -1
- package/validation/rules/MaxIntrospectionDepthRule.mjs +0 -14
- package/validation/rules/MaxIntrospectionDepthRule.mjs.map +1 -1
- package/validation/rules/NoFragmentCyclesRule.d.mts +30 -2
- package/validation/rules/NoFragmentCyclesRule.d.ts +30 -2
- package/validation/rules/NoFragmentCyclesRule.js +2 -17
- package/validation/rules/NoFragmentCyclesRule.js.map +1 -1
- package/validation/rules/NoFragmentCyclesRule.mjs +0 -15
- package/validation/rules/NoFragmentCyclesRule.mjs.map +1 -1
- package/validation/rules/NoUndefinedVariablesRule.d.mts +30 -2
- package/validation/rules/NoUndefinedVariablesRule.d.ts +30 -2
- package/validation/rules/NoUndefinedVariablesRule.js +2 -10
- package/validation/rules/NoUndefinedVariablesRule.js.map +1 -1
- package/validation/rules/NoUndefinedVariablesRule.mjs +0 -8
- package/validation/rules/NoUndefinedVariablesRule.mjs.map +1 -1
- package/validation/rules/NoUnusedFragmentsRule.d.mts +30 -2
- package/validation/rules/NoUnusedFragmentsRule.d.ts +30 -2
- package/validation/rules/NoUnusedFragmentsRule.js +2 -10
- package/validation/rules/NoUnusedFragmentsRule.js.map +1 -1
- package/validation/rules/NoUnusedFragmentsRule.mjs +0 -8
- package/validation/rules/NoUnusedFragmentsRule.mjs.map +1 -1
- package/validation/rules/NoUnusedVariablesRule.d.mts +31 -2
- package/validation/rules/NoUnusedVariablesRule.d.ts +31 -2
- package/validation/rules/NoUnusedVariablesRule.js +3 -11
- package/validation/rules/NoUnusedVariablesRule.js.map +1 -1
- package/validation/rules/NoUnusedVariablesRule.mjs +0 -8
- package/validation/rules/NoUnusedVariablesRule.mjs.map +1 -1
- package/validation/rules/OverlappingFieldsCanBeMergedRule.d.mts +35 -2
- package/validation/rules/OverlappingFieldsCanBeMergedRule.d.ts +35 -2
- package/validation/rules/OverlappingFieldsCanBeMergedRule.js +32 -206
- package/validation/rules/OverlappingFieldsCanBeMergedRule.js.map +1 -1
- package/validation/rules/OverlappingFieldsCanBeMergedRule.mjs +1 -175
- package/validation/rules/OverlappingFieldsCanBeMergedRule.mjs.map +1 -1
- package/validation/rules/PossibleFragmentSpreadsRule.d.mts +38 -2
- package/validation/rules/PossibleFragmentSpreadsRule.d.ts +38 -2
- package/validation/rules/PossibleFragmentSpreadsRule.js +17 -24
- package/validation/rules/PossibleFragmentSpreadsRule.js.map +1 -1
- package/validation/rules/PossibleFragmentSpreadsRule.mjs +0 -7
- package/validation/rules/PossibleFragmentSpreadsRule.mjs.map +1 -1
- package/validation/rules/PossibleTypeExtensionsRule.d.mts +23 -2
- package/validation/rules/PossibleTypeExtensionsRule.d.ts +23 -2
- package/validation/rules/PossibleTypeExtensionsRule.js +38 -49
- package/validation/rules/PossibleTypeExtensionsRule.js.map +1 -1
- package/validation/rules/PossibleTypeExtensionsRule.mjs +0 -11
- package/validation/rules/PossibleTypeExtensionsRule.mjs.map +1 -1
- package/validation/rules/ProvidedRequiredArgumentsRule.d.mts +31 -5
- package/validation/rules/ProvidedRequiredArgumentsRule.d.ts +31 -5
- package/validation/rules/ProvidedRequiredArgumentsRule.js +20 -33
- package/validation/rules/ProvidedRequiredArgumentsRule.js.map +1 -1
- package/validation/rules/ProvidedRequiredArgumentsRule.mjs +0 -13
- package/validation/rules/ProvidedRequiredArgumentsRule.mjs.map +1 -1
- package/validation/rules/ScalarLeafsRule.d.mts +30 -2
- package/validation/rules/ScalarLeafsRule.d.ts +30 -2
- package/validation/rules/ScalarLeafsRule.js +10 -16
- package/validation/rules/ScalarLeafsRule.js.map +1 -1
- package/validation/rules/ScalarLeafsRule.mjs +0 -6
- package/validation/rules/ScalarLeafsRule.mjs.map +1 -1
- package/validation/rules/SingleFieldSubscriptionsRule.d.mts +36 -4
- package/validation/rules/SingleFieldSubscriptionsRule.d.ts +36 -4
- package/validation/rules/SingleFieldSubscriptionsRule.js +8 -17
- package/validation/rules/SingleFieldSubscriptionsRule.js.map +1 -1
- package/validation/rules/SingleFieldSubscriptionsRule.mjs +0 -9
- package/validation/rules/SingleFieldSubscriptionsRule.mjs.map +1 -1
- package/validation/rules/StreamDirectiveOnListFieldRule.d.mts +23 -2
- package/validation/rules/StreamDirectiveOnListFieldRule.d.ts +23 -2
- package/validation/rules/StreamDirectiveOnListFieldRule.js +7 -12
- package/validation/rules/StreamDirectiveOnListFieldRule.js.map +1 -1
- package/validation/rules/StreamDirectiveOnListFieldRule.mjs +0 -5
- package/validation/rules/StreamDirectiveOnListFieldRule.mjs.map +1 -1
- package/validation/rules/UniqueArgumentDefinitionNamesRule.d.mts +23 -2
- package/validation/rules/UniqueArgumentDefinitionNamesRule.d.ts +23 -2
- package/validation/rules/UniqueArgumentDefinitionNamesRule.js +4 -10
- package/validation/rules/UniqueArgumentDefinitionNamesRule.js.map +1 -1
- package/validation/rules/UniqueArgumentDefinitionNamesRule.mjs +0 -6
- package/validation/rules/UniqueArgumentDefinitionNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueArgumentNamesRule.d.mts +30 -2
- package/validation/rules/UniqueArgumentNamesRule.d.ts +30 -2
- package/validation/rules/UniqueArgumentNamesRule.js +4 -12
- package/validation/rules/UniqueArgumentNamesRule.js.map +1 -1
- package/validation/rules/UniqueArgumentNamesRule.mjs +0 -8
- package/validation/rules/UniqueArgumentNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueDirectiveNamesRule.d.mts +23 -2
- package/validation/rules/UniqueDirectiveNamesRule.d.ts +23 -2
- package/validation/rules/UniqueDirectiveNamesRule.js +3 -8
- package/validation/rules/UniqueDirectiveNamesRule.js.map +1 -1
- package/validation/rules/UniqueDirectiveNamesRule.mjs +0 -5
- package/validation/rules/UniqueDirectiveNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueDirectivesPerLocationRule.d.mts +30 -2
- package/validation/rules/UniqueDirectivesPerLocationRule.d.ts +30 -2
- package/validation/rules/UniqueDirectivesPerLocationRule.js +20 -21
- package/validation/rules/UniqueDirectivesPerLocationRule.js.map +1 -1
- package/validation/rules/UniqueDirectivesPerLocationRule.mjs +10 -11
- package/validation/rules/UniqueDirectivesPerLocationRule.mjs.map +1 -1
- package/validation/rules/UniqueEnumValueNamesRule.d.mts +23 -2
- package/validation/rules/UniqueEnumValueNamesRule.d.ts +23 -2
- package/validation/rules/UniqueEnumValueNamesRule.js +5 -10
- package/validation/rules/UniqueEnumValueNamesRule.js.map +1 -1
- package/validation/rules/UniqueEnumValueNamesRule.mjs +0 -5
- package/validation/rules/UniqueEnumValueNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueFieldDefinitionNamesRule.d.mts +23 -2
- package/validation/rules/UniqueFieldDefinitionNamesRule.d.ts +23 -2
- package/validation/rules/UniqueFieldDefinitionNamesRule.js +5 -10
- package/validation/rules/UniqueFieldDefinitionNamesRule.js.map +1 -1
- package/validation/rules/UniqueFieldDefinitionNamesRule.mjs +0 -5
- package/validation/rules/UniqueFieldDefinitionNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueFragmentNamesRule.d.mts +30 -2
- package/validation/rules/UniqueFragmentNamesRule.d.ts +30 -2
- package/validation/rules/UniqueFragmentNamesRule.js +2 -9
- package/validation/rules/UniqueFragmentNamesRule.js.map +1 -1
- package/validation/rules/UniqueFragmentNamesRule.mjs +0 -7
- package/validation/rules/UniqueFragmentNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueInputFieldNamesRule.d.mts +34 -2
- package/validation/rules/UniqueInputFieldNamesRule.d.ts +34 -2
- package/validation/rules/UniqueInputFieldNamesRule.js +4 -12
- package/validation/rules/UniqueInputFieldNamesRule.js.map +1 -1
- package/validation/rules/UniqueInputFieldNamesRule.mjs +0 -8
- package/validation/rules/UniqueInputFieldNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueOperationNamesRule.d.mts +30 -2
- package/validation/rules/UniqueOperationNamesRule.d.ts +30 -2
- package/validation/rules/UniqueOperationNamesRule.js +2 -9
- package/validation/rules/UniqueOperationNamesRule.js.map +1 -1
- package/validation/rules/UniqueOperationNamesRule.mjs +0 -7
- package/validation/rules/UniqueOperationNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueOperationTypesRule.d.mts +23 -2
- package/validation/rules/UniqueOperationTypesRule.d.ts +23 -2
- package/validation/rules/UniqueOperationTypesRule.js +3 -8
- package/validation/rules/UniqueOperationTypesRule.js.map +1 -1
- package/validation/rules/UniqueOperationTypesRule.mjs +0 -5
- package/validation/rules/UniqueOperationTypesRule.mjs.map +1 -1
- package/validation/rules/UniqueTypeNamesRule.d.mts +23 -2
- package/validation/rules/UniqueTypeNamesRule.d.ts +23 -2
- package/validation/rules/UniqueTypeNamesRule.js +3 -8
- package/validation/rules/UniqueTypeNamesRule.js.map +1 -1
- package/validation/rules/UniqueTypeNamesRule.mjs +0 -5
- package/validation/rules/UniqueTypeNamesRule.mjs.map +1 -1
- package/validation/rules/UniqueVariableNamesRule.d.mts +30 -2
- package/validation/rules/UniqueVariableNamesRule.d.ts +30 -2
- package/validation/rules/UniqueVariableNamesRule.js +4 -9
- package/validation/rules/UniqueVariableNamesRule.js.map +1 -1
- package/validation/rules/UniqueVariableNamesRule.mjs +0 -5
- package/validation/rules/UniqueVariableNamesRule.mjs.map +1 -1
- package/validation/rules/ValuesOfCorrectTypeRule.d.mts +30 -2
- package/validation/rules/ValuesOfCorrectTypeRule.d.ts +30 -2
- package/validation/rules/ValuesOfCorrectTypeRule.js +3 -23
- package/validation/rules/ValuesOfCorrectTypeRule.js.map +1 -1
- package/validation/rules/ValuesOfCorrectTypeRule.mjs +1 -21
- package/validation/rules/ValuesOfCorrectTypeRule.mjs.map +1 -1
- package/validation/rules/VariablesAreInputTypesRule.d.mts +34 -2
- package/validation/rules/VariablesAreInputTypesRule.d.ts +34 -2
- package/validation/rules/VariablesAreInputTypesRule.js +8 -16
- package/validation/rules/VariablesAreInputTypesRule.js.map +1 -1
- package/validation/rules/VariablesAreInputTypesRule.mjs +0 -8
- package/validation/rules/VariablesAreInputTypesRule.mjs.map +1 -1
- package/validation/rules/VariablesInAllowedPositionRule.d.mts +30 -2
- package/validation/rules/VariablesInAllowedPositionRule.d.ts +30 -2
- package/validation/rules/VariablesInAllowedPositionRule.js +14 -34
- package/validation/rules/VariablesInAllowedPositionRule.js.map +1 -1
- package/validation/rules/VariablesInAllowedPositionRule.mjs +0 -20
- package/validation/rules/VariablesInAllowedPositionRule.mjs.map +1 -1
- package/validation/rules/custom/NoDeprecatedCustomRule.d.mts +43 -2
- package/validation/rules/custom/NoDeprecatedCustomRule.d.ts +43 -2
- package/validation/rules/custom/NoDeprecatedCustomRule.js +8 -18
- package/validation/rules/custom/NoDeprecatedCustomRule.js.map +1 -1
- package/validation/rules/custom/NoDeprecatedCustomRule.mjs +0 -10
- package/validation/rules/custom/NoDeprecatedCustomRule.mjs.map +1 -1
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.mts +30 -2
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +30 -2
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js +6 -16
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js.map +1 -1
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.mjs +0 -10
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.mjs.map +1 -1
- package/validation/specifiedRules.d.mts +3 -4
- package/validation/specifiedRules.d.ts +3 -4
- package/validation/specifiedRules.js +87 -133
- package/validation/specifiedRules.js.map +1 -1
- package/validation/specifiedRules.mjs +0 -46
- package/validation/specifiedRules.mjs.map +1 -1
- package/validation/validate.d.mts +70 -12
- package/validation/validate.d.ts +70 -12
- package/validation/validate.js +19 -60
- package/validation/validate.js.map +1 -1
- package/validation/validate.mjs +0 -41
- package/validation/validate.mjs.map +1 -1
- package/version.d.mts +3 -6
- package/version.d.ts +3 -6
- package/version.js +2 -10
- package/version.js.map +1 -1
- package/version.mjs +2 -10
- package/version.mjs.map +1 -1
|
@@ -5,14 +5,6 @@ import { OperationTypeNode } from "../../language/ast.mjs";
|
|
|
5
5
|
import { DirectiveLocation } from "../../language/directiveLocation.mjs";
|
|
6
6
|
import { Kind } from "../../language/kinds.mjs";
|
|
7
7
|
import { specifiedDirectives } from "../../type/directives.mjs";
|
|
8
|
-
/**
|
|
9
|
-
* Known directives
|
|
10
|
-
*
|
|
11
|
-
* A GraphQL document is only valid if all `@directives` are known by the
|
|
12
|
-
* schema and legally positioned.
|
|
13
|
-
*
|
|
14
|
-
* See https://spec.graphql.org/draft/#sec-Directives-Are-Defined
|
|
15
|
-
*/
|
|
16
8
|
export function KnownDirectivesRule(context) {
|
|
17
9
|
const locationsMap = new Map();
|
|
18
10
|
const schema = context.getSchema();
|
|
@@ -99,8 +91,9 @@ function getDirectiveLocationForASTPath(ancestors) {
|
|
|
99
91
|
? DirectiveLocation.INPUT_FIELD_DEFINITION
|
|
100
92
|
: DirectiveLocation.ARGUMENT_DEFINITION;
|
|
101
93
|
}
|
|
102
|
-
|
|
103
|
-
|
|
94
|
+
case Kind.DIRECTIVE_DEFINITION:
|
|
95
|
+
case Kind.DIRECTIVE_EXTENSION:
|
|
96
|
+
return DirectiveLocation.DIRECTIVE_DEFINITION;
|
|
104
97
|
default:
|
|
105
98
|
invariant(false, 'Unexpected kind: ' + inspect(appliedTo.kind));
|
|
106
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownDirectivesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownDirectivesRule.ts"],"names":[],"mappings":"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","sourcesContent":["import { inspect } from '../../jsutils/inspect.js';\nimport { invariant } from '../../jsutils/invariant.js';\n\nimport { GraphQLError } from '../../error/GraphQLError.js';\n\nimport type { ASTNode } from '../../language/ast.js';\nimport { OperationTypeNode } from '../../language/ast.js';\nimport { DirectiveLocation } from '../../language/directiveLocation.js';\nimport { Kind } from '../../language/kinds.js';\nimport type { ASTVisitor } from '../../language/visitor.js';\n\nimport { specifiedDirectives } from '../../type/directives.js';\n\nimport type {\n SDLValidationContext,\n ValidationContext,\n} from '../ValidationContext.js';\n\n/**\n * Known directives\n *\n * A GraphQL document is only valid if all `@directives` are known by the\n * schema and legally positioned.\n *\n * See https://spec.graphql.org/draft/#sec-Directives-Are-Defined\n */\nexport function KnownDirectivesRule(\n context: ValidationContext | SDLValidationContext,\n): ASTVisitor {\n const locationsMap = new Map<string, ReadonlyArray<string>>();\n\n const schema = context.getSchema();\n const definedDirectives = schema\n ? schema.getDirectives()\n : specifiedDirectives;\n for (const directive of definedDirectives) {\n locationsMap.set(directive.name, directive.locations);\n }\n\n const astDefinitions = context.getDocument().definitions;\n for (const def of astDefinitions) {\n if (def.kind === Kind.DIRECTIVE_DEFINITION) {\n locationsMap.set(\n def.name.value,\n def.locations.map((name) => name.value),\n );\n }\n }\n\n return {\n Directive(node, _key, _parent, _path, ancestors) {\n const name = node.name.value;\n const locations = locationsMap.get(name);\n\n if (locations == null) {\n context.reportError(\n new GraphQLError(`Unknown directive \"@${name}\".`, { nodes: node }),\n );\n return;\n }\n\n const candidateLocation = getDirectiveLocationForASTPath(ancestors);\n if (candidateLocation != null && !locations.includes(candidateLocation)) {\n context.reportError(\n new GraphQLError(\n `Directive \"@${name}\" may not be used on ${candidateLocation}.`,\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n\nfunction getDirectiveLocationForASTPath(\n ancestors: ReadonlyArray<ASTNode | ReadonlyArray<ASTNode>>,\n): DirectiveLocation | undefined {\n const appliedTo = ancestors.at(-1);\n invariant(appliedTo != null && 'kind' in appliedTo);\n\n switch (appliedTo.kind) {\n case Kind.OPERATION_DEFINITION:\n return getDirectiveLocationForOperation(appliedTo.operation);\n case Kind.FIELD:\n return DirectiveLocation.FIELD;\n case Kind.FRAGMENT_SPREAD:\n return DirectiveLocation.FRAGMENT_SPREAD;\n case Kind.INLINE_FRAGMENT:\n return DirectiveLocation.INLINE_FRAGMENT;\n case Kind.FRAGMENT_DEFINITION:\n return DirectiveLocation.FRAGMENT_DEFINITION;\n case Kind.VARIABLE_DEFINITION: {\n const parentNode = ancestors[ancestors.length - 3];\n invariant('kind' in parentNode);\n return parentNode.kind === Kind.OPERATION_DEFINITION\n ? DirectiveLocation.VARIABLE_DEFINITION\n : DirectiveLocation.FRAGMENT_VARIABLE_DEFINITION;\n }\n case Kind.SCHEMA_DEFINITION:\n case Kind.SCHEMA_EXTENSION:\n return DirectiveLocation.SCHEMA;\n case Kind.SCALAR_TYPE_DEFINITION:\n case Kind.SCALAR_TYPE_EXTENSION:\n return DirectiveLocation.SCALAR;\n case Kind.OBJECT_TYPE_DEFINITION:\n case Kind.OBJECT_TYPE_EXTENSION:\n return DirectiveLocation.OBJECT;\n case Kind.FIELD_DEFINITION:\n return DirectiveLocation.FIELD_DEFINITION;\n case Kind.INTERFACE_TYPE_DEFINITION:\n case Kind.INTERFACE_TYPE_EXTENSION:\n return DirectiveLocation.INTERFACE;\n case Kind.UNION_TYPE_DEFINITION:\n case Kind.UNION_TYPE_EXTENSION:\n return DirectiveLocation.UNION;\n case Kind.ENUM_TYPE_DEFINITION:\n case Kind.ENUM_TYPE_EXTENSION:\n return DirectiveLocation.ENUM;\n case Kind.ENUM_VALUE_DEFINITION:\n return DirectiveLocation.ENUM_VALUE;\n case Kind.INPUT_OBJECT_TYPE_DEFINITION:\n case Kind.INPUT_OBJECT_TYPE_EXTENSION:\n return DirectiveLocation.INPUT_OBJECT;\n case Kind.INPUT_VALUE_DEFINITION: {\n const parentNode = ancestors.at(-3);\n invariant(parentNode != null && 'kind' in parentNode);\n return parentNode.kind === Kind.INPUT_OBJECT_TYPE_DEFINITION\n ? DirectiveLocation.INPUT_FIELD_DEFINITION\n : DirectiveLocation.ARGUMENT_DEFINITION;\n }\n // Not reachable, all possible types have been considered.\n /* c8 ignore next 2 */\n default:\n invariant(false, 'Unexpected kind: ' + inspect(appliedTo.kind));\n }\n}\n\nfunction getDirectiveLocationForOperation(\n operation: OperationTypeNode,\n): DirectiveLocation {\n switch (operation) {\n case OperationTypeNode.QUERY:\n return DirectiveLocation.QUERY;\n case OperationTypeNode.MUTATION:\n return DirectiveLocation.MUTATION;\n case OperationTypeNode.SUBSCRIPTION:\n return DirectiveLocation.SUBSCRIPTION;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"KnownDirectivesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownDirectivesRule.ts"],"names":[],"mappings":"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","sourcesContent":["/** @category Validation Rules */\n\nimport { inspect } from '../../jsutils/inspect.ts';\nimport { invariant } from '../../jsutils/invariant.ts';\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTNode } from '../../language/ast.ts';\nimport { OperationTypeNode } from '../../language/ast.ts';\nimport { DirectiveLocation } from '../../language/directiveLocation.ts';\nimport { Kind } from '../../language/kinds.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport { specifiedDirectives } from '../../type/directives.ts';\n\nimport type {\n SDLValidationContext,\n ValidationContext,\n} from '../ValidationContext.ts';\n\n/**\n * Known directives\n *\n * A GraphQL document is only valid if all `@directives` are known by the\n * schema and legally positioned.\n *\n * See https://spec.graphql.org/draft/#sec-Directives-Are-Defined\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { buildSchema, parse, validate } from 'graphql';\n * import { KnownDirectivesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * { name @unknown }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [KnownDirectivesRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * { name @include(if: true) }\n * `);\n * const validErrors = validate(schema, validDocument, [KnownDirectivesRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function KnownDirectivesRule(\n context: ValidationContext | SDLValidationContext,\n): ASTVisitor {\n const locationsMap = new Map<string, ReadonlyArray<string>>();\n\n const schema = context.getSchema();\n const definedDirectives = schema\n ? schema.getDirectives()\n : specifiedDirectives;\n for (const directive of definedDirectives) {\n locationsMap.set(directive.name, directive.locations);\n }\n\n const astDefinitions = context.getDocument().definitions;\n for (const def of astDefinitions) {\n if (def.kind === Kind.DIRECTIVE_DEFINITION) {\n locationsMap.set(\n def.name.value,\n def.locations.map((name) => name.value),\n );\n }\n }\n\n return {\n Directive(node, _key, _parent, _path, ancestors) {\n const name = node.name.value;\n const locations = locationsMap.get(name);\n\n if (locations == null) {\n context.reportError(\n new GraphQLError(`Unknown directive \"@${name}\".`, { nodes: node }),\n );\n return;\n }\n\n const candidateLocation = getDirectiveLocationForASTPath(ancestors);\n if (candidateLocation != null && !locations.includes(candidateLocation)) {\n context.reportError(\n new GraphQLError(\n `Directive \"@${name}\" may not be used on ${candidateLocation}.`,\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n\nfunction getDirectiveLocationForASTPath(\n ancestors: ReadonlyArray<ASTNode | ReadonlyArray<ASTNode>>,\n): DirectiveLocation | undefined {\n const appliedTo = ancestors.at(-1);\n invariant(appliedTo != null && 'kind' in appliedTo);\n\n switch (appliedTo.kind) {\n case Kind.OPERATION_DEFINITION:\n return getDirectiveLocationForOperation(appliedTo.operation);\n case Kind.FIELD:\n return DirectiveLocation.FIELD;\n case Kind.FRAGMENT_SPREAD:\n return DirectiveLocation.FRAGMENT_SPREAD;\n case Kind.INLINE_FRAGMENT:\n return DirectiveLocation.INLINE_FRAGMENT;\n case Kind.FRAGMENT_DEFINITION:\n return DirectiveLocation.FRAGMENT_DEFINITION;\n case Kind.VARIABLE_DEFINITION: {\n const parentNode = ancestors[ancestors.length - 3];\n invariant('kind' in parentNode);\n return parentNode.kind === Kind.OPERATION_DEFINITION\n ? DirectiveLocation.VARIABLE_DEFINITION\n : DirectiveLocation.FRAGMENT_VARIABLE_DEFINITION;\n }\n case Kind.SCHEMA_DEFINITION:\n case Kind.SCHEMA_EXTENSION:\n return DirectiveLocation.SCHEMA;\n case Kind.SCALAR_TYPE_DEFINITION:\n case Kind.SCALAR_TYPE_EXTENSION:\n return DirectiveLocation.SCALAR;\n case Kind.OBJECT_TYPE_DEFINITION:\n case Kind.OBJECT_TYPE_EXTENSION:\n return DirectiveLocation.OBJECT;\n case Kind.FIELD_DEFINITION:\n return DirectiveLocation.FIELD_DEFINITION;\n case Kind.INTERFACE_TYPE_DEFINITION:\n case Kind.INTERFACE_TYPE_EXTENSION:\n return DirectiveLocation.INTERFACE;\n case Kind.UNION_TYPE_DEFINITION:\n case Kind.UNION_TYPE_EXTENSION:\n return DirectiveLocation.UNION;\n case Kind.ENUM_TYPE_DEFINITION:\n case Kind.ENUM_TYPE_EXTENSION:\n return DirectiveLocation.ENUM;\n case Kind.ENUM_VALUE_DEFINITION:\n return DirectiveLocation.ENUM_VALUE;\n case Kind.INPUT_OBJECT_TYPE_DEFINITION:\n case Kind.INPUT_OBJECT_TYPE_EXTENSION:\n return DirectiveLocation.INPUT_OBJECT;\n case Kind.INPUT_VALUE_DEFINITION: {\n const parentNode = ancestors.at(-3);\n invariant(parentNode != null && 'kind' in parentNode);\n return parentNode.kind === Kind.INPUT_OBJECT_TYPE_DEFINITION\n ? DirectiveLocation.INPUT_FIELD_DEFINITION\n : DirectiveLocation.ARGUMENT_DEFINITION;\n }\n case Kind.DIRECTIVE_DEFINITION:\n case Kind.DIRECTIVE_EXTENSION:\n return DirectiveLocation.DIRECTIVE_DEFINITION;\n // Not reachable, all possible types have been considered.\n /* node:coverage ignore next 2 */\n default:\n invariant(false, 'Unexpected kind: ' + inspect(appliedTo.kind));\n }\n}\n\nfunction getDirectiveLocationForOperation(\n operation: OperationTypeNode,\n): DirectiveLocation {\n switch (operation) {\n case OperationTypeNode.QUERY:\n return DirectiveLocation.QUERY;\n case OperationTypeNode.MUTATION:\n return DirectiveLocation.MUTATION;\n case OperationTypeNode.SUBSCRIPTION:\n return DirectiveLocation.SUBSCRIPTION;\n }\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
3
|
+
import type { ValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
4
5
|
* Known fragment names
|
|
5
6
|
*
|
|
@@ -7,5 +8,32 @@ import type { ValidationContext } from '../ValidationContext.js';
|
|
|
7
8
|
* to fragments defined in the same document.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Fragment-spread-target-defined
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
16
|
+
* import { KnownFragmentNamesRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* { ...Missing }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [KnownFragmentNamesRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* fragment NameFields on Query { name } query { ...NameFields }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [KnownFragmentNamesRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function KnownFragmentNamesRule(context: ValidationContext): ASTVisitor;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.js";
|
|
3
|
+
import type { ValidationContext } from "../ValidationContext.js";
|
|
3
4
|
/**
|
|
4
5
|
* Known fragment names
|
|
5
6
|
*
|
|
@@ -7,5 +8,32 @@ import type { ValidationContext } from '../ValidationContext.js';
|
|
|
7
8
|
* to fragments defined in the same document.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Fragment-spread-target-defined
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
16
|
+
* import { KnownFragmentNamesRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* { ...Missing }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [KnownFragmentNamesRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* fragment NameFields on Query { name } query { ...NameFields }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [KnownFragmentNamesRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function KnownFragmentNamesRule(context: ValidationContext): ASTVisitor;
|
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.KnownFragmentNamesRule = KnownFragmentNamesRule;
|
|
4
|
-
const
|
|
5
|
-
/**
|
|
6
|
-
* Known fragment names
|
|
7
|
-
*
|
|
8
|
-
* A GraphQL document is only valid if all `...Fragment` fragment spreads refer
|
|
9
|
-
* to fragments defined in the same document.
|
|
10
|
-
*
|
|
11
|
-
* See https://spec.graphql.org/draft/#sec-Fragment-spread-target-defined
|
|
12
|
-
*/
|
|
4
|
+
const GraphQLError_ts_1 = require("../../error/GraphQLError.js");
|
|
13
5
|
function KnownFragmentNamesRule(context) {
|
|
14
6
|
return {
|
|
15
7
|
FragmentSpread(node) {
|
|
16
8
|
const fragmentName = node.name.value;
|
|
17
9
|
const fragment = context.getFragment(fragmentName);
|
|
18
10
|
if (!fragment) {
|
|
19
|
-
context.reportError(new
|
|
11
|
+
context.reportError(new GraphQLError_ts_1.GraphQLError(`Unknown fragment "${fragmentName}".`, {
|
|
20
12
|
nodes: node.name,
|
|
21
13
|
}));
|
|
22
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownFragmentNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownFragmentNamesRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"KnownFragmentNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownFragmentNamesRule.ts"],"names":[],"mappings":";;AA2CA,wDAcC;AAvDD,iEAA2D;AAyC3D,SAAgB,sBAAsB,CAAC,OAA0B;IAC/D,OAAO;QACL,cAAc,CAAC,IAAI;YACjB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CAAC,qBAAqB,YAAY,IAAI,EAAE;oBACtD,KAAK,EAAE,IAAI,CAAC,IAAI;iBACjB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ValidationContext } from '../ValidationContext.ts';\n\n/**\n * Known fragment names\n *\n * A GraphQL document is only valid if all `...Fragment` fragment spreads refer\n * to fragments defined in the same document.\n *\n * See https://spec.graphql.org/draft/#sec-Fragment-spread-target-defined\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { buildSchema, parse, validate } from 'graphql';\n * import { KnownFragmentNamesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * { ...Missing }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [KnownFragmentNamesRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * fragment NameFields on Query { name } query { ...NameFields }\n * `);\n * const validErrors = validate(schema, validDocument, [KnownFragmentNamesRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function KnownFragmentNamesRule(context: ValidationContext): ASTVisitor {\n return {\n FragmentSpread(node) {\n const fragmentName = node.name.value;\n const fragment = context.getFragment(fragmentName);\n if (!fragment) {\n context.reportError(\n new GraphQLError(`Unknown fragment \"${fragmentName}\".`, {\n nodes: node.name,\n }),\n );\n }\n },\n };\n}\n"]}
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { GraphQLError } from "../../error/GraphQLError.mjs";
|
|
2
|
-
/**
|
|
3
|
-
* Known fragment names
|
|
4
|
-
*
|
|
5
|
-
* A GraphQL document is only valid if all `...Fragment` fragment spreads refer
|
|
6
|
-
* to fragments defined in the same document.
|
|
7
|
-
*
|
|
8
|
-
* See https://spec.graphql.org/draft/#sec-Fragment-spread-target-defined
|
|
9
|
-
*/
|
|
10
2
|
export function KnownFragmentNamesRule(context) {
|
|
11
3
|
return {
|
|
12
4
|
FragmentSpread(node) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownFragmentNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownFragmentNamesRule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KnownFragmentNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownFragmentNamesRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,qCAAoC;AAyC3D,MAAM,UAAU,sBAAsB,CAAC,OAA0B;IAC/D,OAAO;QACL,cAAc,CAAC,IAAI;YACjB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CAAC,qBAAqB,YAAY,IAAI,EAAE;oBACtD,KAAK,EAAE,IAAI,CAAC,IAAI;iBACjB,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ValidationContext } from '../ValidationContext.ts';\n\n/**\n * Known fragment names\n *\n * A GraphQL document is only valid if all `...Fragment` fragment spreads refer\n * to fragments defined in the same document.\n *\n * See https://spec.graphql.org/draft/#sec-Fragment-spread-target-defined\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { buildSchema, parse, validate } from 'graphql';\n * import { KnownFragmentNamesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * { ...Missing }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [KnownFragmentNamesRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * fragment NameFields on Query { name } query { ...NameFields }\n * `);\n * const validErrors = validate(schema, validDocument, [KnownFragmentNamesRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function KnownFragmentNamesRule(context: ValidationContext): ASTVisitor {\n return {\n FragmentSpread(node) {\n const fragmentName = node.name.value;\n const fragment = context.getFragment(fragmentName);\n if (!fragment) {\n context.reportError(\n new GraphQLError(`Unknown fragment \"${fragmentName}\".`, {\n nodes: node.name,\n }),\n );\n }\n },\n };\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
3
|
+
import type { ValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
4
5
|
* Known Operation Types
|
|
5
6
|
*
|
|
@@ -7,5 +8,24 @@ import type { ValidationContext } from '../ValidationContext.js';
|
|
|
7
8
|
* the root type for the operation exists within the schema.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Operation-Type-Existence
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { parse } from 'graphql/language';
|
|
16
|
+
* import { buildSchema } from 'graphql/utilities';
|
|
17
|
+
* import { validate, KnownOperationTypesRule } from 'graphql/validation';
|
|
18
|
+
*
|
|
19
|
+
* const schema = buildSchema(`
|
|
20
|
+
* type Query {
|
|
21
|
+
* greeting: String
|
|
22
|
+
* }
|
|
23
|
+
* `);
|
|
24
|
+
* const invalidDocument = parse('mutation { greeting }');
|
|
25
|
+
* const validDocument = parse('{ greeting }');
|
|
26
|
+
*
|
|
27
|
+
* validate(schema, invalidDocument, [KnownOperationTypesRule])[0].message; // => 'The mutation operation is not supported by the schema.'
|
|
28
|
+
* validate(schema, validDocument, [KnownOperationTypesRule]); // => []
|
|
29
|
+
* ```
|
|
10
30
|
*/
|
|
11
31
|
export declare function KnownOperationTypesRule(context: ValidationContext): ASTVisitor;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.js";
|
|
3
|
+
import type { ValidationContext } from "../ValidationContext.js";
|
|
3
4
|
/**
|
|
4
5
|
* Known Operation Types
|
|
5
6
|
*
|
|
@@ -7,5 +8,24 @@ import type { ValidationContext } from '../ValidationContext.js';
|
|
|
7
8
|
* the root type for the operation exists within the schema.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Operation-Type-Existence
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { parse } from 'graphql/language';
|
|
16
|
+
* import { buildSchema } from 'graphql/utilities';
|
|
17
|
+
* import { validate, KnownOperationTypesRule } from 'graphql/validation';
|
|
18
|
+
*
|
|
19
|
+
* const schema = buildSchema(`
|
|
20
|
+
* type Query {
|
|
21
|
+
* greeting: String
|
|
22
|
+
* }
|
|
23
|
+
* `);
|
|
24
|
+
* const invalidDocument = parse('mutation { greeting }');
|
|
25
|
+
* const validDocument = parse('{ greeting }');
|
|
26
|
+
*
|
|
27
|
+
* validate(schema, invalidDocument, [KnownOperationTypesRule])[0].message; // => 'The mutation operation is not supported by the schema.'
|
|
28
|
+
* validate(schema, validDocument, [KnownOperationTypesRule]); // => []
|
|
29
|
+
* ```
|
|
10
30
|
*/
|
|
11
31
|
export declare function KnownOperationTypesRule(context: ValidationContext): ASTVisitor;
|
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.KnownOperationTypesRule = KnownOperationTypesRule;
|
|
4
|
-
const
|
|
5
|
-
/**
|
|
6
|
-
* Known Operation Types
|
|
7
|
-
*
|
|
8
|
-
* A GraphQL document is only valid if when it contains an operation,
|
|
9
|
-
* the root type for the operation exists within the schema.
|
|
10
|
-
*
|
|
11
|
-
* See https://spec.graphql.org/draft/#sec-Operation-Type-Existence
|
|
12
|
-
*/
|
|
4
|
+
const GraphQLError_ts_1 = require("../../error/GraphQLError.js");
|
|
13
5
|
function KnownOperationTypesRule(context) {
|
|
14
6
|
const schema = context.getSchema();
|
|
15
7
|
return {
|
|
16
8
|
OperationDefinition(node) {
|
|
17
9
|
const operation = node.operation;
|
|
18
10
|
if (!schema.getRootType(operation)) {
|
|
19
|
-
context.reportError(new
|
|
11
|
+
context.reportError(new GraphQLError_ts_1.GraphQLError(`The ${operation} operation is not supported by the schema.`, { nodes: node }));
|
|
20
12
|
}
|
|
21
13
|
},
|
|
22
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownOperationTypesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownOperationTypesRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"KnownOperationTypesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownOperationTypesRule.ts"],"names":[],"mappings":";;AAmCA,0DAiBC;AAlDD,iEAA2D;AAiC3D,SAAgB,uBAAuB,CACrC,OAA0B;IAE1B,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,OAAO;QACL,mBAAmB,CAAC,IAAI;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CACd,OAAO,SAAS,4CAA4C,EAC5D,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ValidationContext } from '../ValidationContext.ts';\n\n/**\n * Known Operation Types\n *\n * A GraphQL document is only valid if when it contains an operation,\n * the root type for the operation exists within the schema.\n *\n * See https://spec.graphql.org/draft/#sec-Operation-Type-Existence\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { parse } from 'graphql/language';\n * import { buildSchema } from 'graphql/utilities';\n * import { validate, KnownOperationTypesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * greeting: String\n * }\n * `);\n * const invalidDocument = parse('mutation { greeting }');\n * const validDocument = parse('{ greeting }');\n *\n * validate(schema, invalidDocument, [KnownOperationTypesRule])[0].message; // => 'The mutation operation is not supported by the schema.'\n * validate(schema, validDocument, [KnownOperationTypesRule]); // => []\n * ```\n */\nexport function KnownOperationTypesRule(\n context: ValidationContext,\n): ASTVisitor {\n const schema = context.getSchema();\n return {\n OperationDefinition(node) {\n const operation = node.operation;\n if (!schema.getRootType(operation)) {\n context.reportError(\n new GraphQLError(\n `The ${operation} operation is not supported by the schema.`,\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n"]}
|
|
@@ -1,12 +1,4 @@
|
|
|
1
1
|
import { GraphQLError } from "../../error/GraphQLError.mjs";
|
|
2
|
-
/**
|
|
3
|
-
* Known Operation Types
|
|
4
|
-
*
|
|
5
|
-
* A GraphQL document is only valid if when it contains an operation,
|
|
6
|
-
* the root type for the operation exists within the schema.
|
|
7
|
-
*
|
|
8
|
-
* See https://spec.graphql.org/draft/#sec-Operation-Type-Existence
|
|
9
|
-
*/
|
|
10
2
|
export function KnownOperationTypesRule(context) {
|
|
11
3
|
const schema = context.getSchema();
|
|
12
4
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownOperationTypesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownOperationTypesRule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KnownOperationTypesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownOperationTypesRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,qCAAoC;AAiC3D,MAAM,UAAU,uBAAuB,CACrC,OAA0B;IAE1B,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,OAAO;QACL,mBAAmB,CAAC,IAAI;YACtB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CACd,OAAO,SAAS,4CAA4C,EAC5D,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ValidationContext } from '../ValidationContext.ts';\n\n/**\n * Known Operation Types\n *\n * A GraphQL document is only valid if when it contains an operation,\n * the root type for the operation exists within the schema.\n *\n * See https://spec.graphql.org/draft/#sec-Operation-Type-Existence\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { parse } from 'graphql/language';\n * import { buildSchema } from 'graphql/utilities';\n * import { validate, KnownOperationTypesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * greeting: String\n * }\n * `);\n * const invalidDocument = parse('mutation { greeting }');\n * const validDocument = parse('{ greeting }');\n *\n * validate(schema, invalidDocument, [KnownOperationTypesRule])[0].message; // => 'The mutation operation is not supported by the schema.'\n * validate(schema, validDocument, [KnownOperationTypesRule]); // => []\n * ```\n */\nexport function KnownOperationTypesRule(\n context: ValidationContext,\n): ASTVisitor {\n const schema = context.getSchema();\n return {\n OperationDefinition(node) {\n const operation = node.operation;\n if (!schema.getRootType(operation)) {\n context.reportError(\n new GraphQLError(\n `The ${operation} operation is not supported by the schema.`,\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
3
|
+
import type { SDLValidationContext, ValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
4
5
|
* Known type names
|
|
5
6
|
*
|
|
@@ -7,5 +8,32 @@ import type { SDLValidationContext, ValidationContext } from '../ValidationConte
|
|
|
7
8
|
* variable definitions and fragment conditions) are defined by the type schema.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Fragment-Spread-Type-Existence
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
16
|
+
* import { KnownTypeNamesRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* fragment Bad on Missing { name }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [KnownTypeNamesRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* fragment Good on Query { name }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [KnownTypeNamesRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function KnownTypeNamesRule(context: ValidationContext | SDLValidationContext): ASTVisitor;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.js";
|
|
3
|
+
import type { SDLValidationContext, ValidationContext } from "../ValidationContext.js";
|
|
3
4
|
/**
|
|
4
5
|
* Known type names
|
|
5
6
|
*
|
|
@@ -7,5 +8,32 @@ import type { SDLValidationContext, ValidationContext } from '../ValidationConte
|
|
|
7
8
|
* variable definitions and fragment conditions) are defined by the type schema.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Fragment-Spread-Type-Existence
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
16
|
+
* import { KnownTypeNamesRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* fragment Bad on Missing { name }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [KnownTypeNamesRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* fragment Good on Query { name }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [KnownTypeNamesRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function KnownTypeNamesRule(context: ValidationContext | SDLValidationContext): ASTVisitor;
|
|
@@ -1,26 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.KnownTypeNamesRule = KnownTypeNamesRule;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
/**
|
|
11
|
-
* Known type names
|
|
12
|
-
*
|
|
13
|
-
* A GraphQL document is only valid if referenced types (specifically
|
|
14
|
-
* variable definitions and fragment conditions) are defined by the type schema.
|
|
15
|
-
*
|
|
16
|
-
* See https://spec.graphql.org/draft/#sec-Fragment-Spread-Type-Existence
|
|
17
|
-
*/
|
|
4
|
+
const didYouMean_ts_1 = require("../../jsutils/didYouMean.js");
|
|
5
|
+
const suggestionList_ts_1 = require("../../jsutils/suggestionList.js");
|
|
6
|
+
const GraphQLError_ts_1 = require("../../error/GraphQLError.js");
|
|
7
|
+
const predicates_ts_1 = require("../../language/predicates.js");
|
|
8
|
+
const introspection_ts_1 = require("../../type/introspection.js");
|
|
9
|
+
const scalars_ts_1 = require("../../type/scalars.js");
|
|
18
10
|
function KnownTypeNamesRule(context) {
|
|
19
11
|
const { definitions } = context.getDocument();
|
|
20
12
|
const existingTypesMap = context.getSchema()?.getTypeMap() ?? {};
|
|
21
13
|
const typeNames = new Set([
|
|
22
14
|
...Object.keys(existingTypesMap),
|
|
23
|
-
...definitions.filter(
|
|
15
|
+
...definitions.filter(predicates_ts_1.isTypeDefinitionNode).map((def) => def.name.value),
|
|
24
16
|
]);
|
|
25
17
|
return {
|
|
26
18
|
NamedType(node, _1, parent, _2, ancestors) {
|
|
@@ -33,15 +25,15 @@ function KnownTypeNamesRule(context) {
|
|
|
33
25
|
}
|
|
34
26
|
const suggestedTypes = context.hideSuggestions
|
|
35
27
|
? []
|
|
36
|
-
: (0,
|
|
37
|
-
context.reportError(new
|
|
28
|
+
: (0, suggestionList_ts_1.suggestionList)(typeName, isSDL ? [...standardTypeNames, ...typeNames] : [...typeNames]);
|
|
29
|
+
context.reportError(new GraphQLError_ts_1.GraphQLError(`Unknown type "${typeName}".` + (0, didYouMean_ts_1.didYouMean)(suggestedTypes), { nodes: node }));
|
|
38
30
|
}
|
|
39
31
|
},
|
|
40
32
|
};
|
|
41
33
|
}
|
|
42
|
-
const standardTypeNames = new Set([...
|
|
34
|
+
const standardTypeNames = new Set([...scalars_ts_1.specifiedScalarTypes, ...introspection_ts_1.introspectionTypes].map((type) => type.name));
|
|
43
35
|
function isSDLNode(value) {
|
|
44
36
|
return ('kind' in value &&
|
|
45
|
-
((0,
|
|
37
|
+
((0, predicates_ts_1.isTypeSystemDefinitionNode)(value) || (0, predicates_ts_1.isTypeSystemExtensionNode)(value)));
|
|
46
38
|
}
|
|
47
39
|
//# sourceMappingURL=KnownTypeNamesRule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownTypeNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownTypeNamesRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"KnownTypeNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownTypeNamesRule.ts"],"names":[],"mappings":";;AA0DA,gDAoCC;AA5FD,+DAAyD;AACzD,uEAAiE;AAEjE,iEAA2D;AAG3D,gEAIsC;AAGtC,kEAAiE;AACjE,sDAA6D;AA0C7D,SAAgB,kBAAkB,CAChC,OAAiD;IAEjD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAC9C,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAEjE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;QACxB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAChC,GAAG,WAAW,CAAC,MAAM,CAAC,oCAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;KACzE,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;gBAC9C,MAAM,KAAK,GAAG,cAAc,IAAI,IAAI,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;gBAClE,IAAI,KAAK,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBAED,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe;oBAC5C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,IAAA,kCAAc,EACZ,QAAQ,EACR,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAC9D,CAAC;gBACN,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CACd,iBAAiB,QAAQ,IAAI,GAAG,IAAA,0BAAU,EAAC,cAAc,CAAC,EAC1D,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,CAAC,GAAG,iCAAoB,EAAE,GAAG,qCAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1E,CAAC;AAEF,SAAS,SAAS,CAAC,KAAuC;IACxD,OAAO,CACL,MAAM,IAAI,KAAK;QACf,CAAC,IAAA,0CAA0B,EAAC,KAAK,CAAC,IAAI,IAAA,yCAAyB,EAAC,KAAK,CAAC,CAAC,CACxE,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { didYouMean } from '../../jsutils/didYouMean.ts';\nimport { suggestionList } from '../../jsutils/suggestionList.ts';\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTNode } from '../../language/ast.ts';\nimport {\n isTypeDefinitionNode,\n isTypeSystemDefinitionNode,\n isTypeSystemExtensionNode,\n} from '../../language/predicates.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport { introspectionTypes } from '../../type/introspection.ts';\nimport { specifiedScalarTypes } from '../../type/scalars.ts';\n\nimport type {\n SDLValidationContext,\n ValidationContext,\n} from '../ValidationContext.ts';\n\n/**\n * Known type names\n *\n * A GraphQL document is only valid if referenced types (specifically\n * variable definitions and fragment conditions) are defined by the type schema.\n *\n * See https://spec.graphql.org/draft/#sec-Fragment-Spread-Type-Existence\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { buildSchema, parse, validate } from 'graphql';\n * import { KnownTypeNamesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * fragment Bad on Missing { name }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [KnownTypeNamesRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * fragment Good on Query { name }\n * `);\n * const validErrors = validate(schema, validDocument, [KnownTypeNamesRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function KnownTypeNamesRule(\n context: ValidationContext | SDLValidationContext,\n): ASTVisitor {\n const { definitions } = context.getDocument();\n const existingTypesMap = context.getSchema()?.getTypeMap() ?? {};\n\n const typeNames = new Set([\n ...Object.keys(existingTypesMap),\n ...definitions.filter(isTypeDefinitionNode).map((def) => def.name.value),\n ]);\n\n return {\n NamedType(node, _1, parent, _2, ancestors) {\n const typeName = node.name.value;\n if (!typeNames.has(typeName)) {\n const definitionNode = ancestors[2] ?? parent;\n const isSDL = definitionNode != null && isSDLNode(definitionNode);\n if (isSDL && standardTypeNames.has(typeName)) {\n return;\n }\n\n const suggestedTypes = context.hideSuggestions\n ? []\n : suggestionList(\n typeName,\n isSDL ? [...standardTypeNames, ...typeNames] : [...typeNames],\n );\n context.reportError(\n new GraphQLError(\n `Unknown type \"${typeName}\".` + didYouMean(suggestedTypes),\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n\nconst standardTypeNames = new Set<string>(\n [...specifiedScalarTypes, ...introspectionTypes].map((type) => type.name),\n);\n\nfunction isSDLNode(value: ASTNode | ReadonlyArray<ASTNode>): boolean {\n return (\n 'kind' in value &&\n (isTypeSystemDefinitionNode(value) || isTypeSystemExtensionNode(value))\n );\n}\n"]}
|
|
@@ -4,14 +4,6 @@ import { GraphQLError } from "../../error/GraphQLError.mjs";
|
|
|
4
4
|
import { isTypeDefinitionNode, isTypeSystemDefinitionNode, isTypeSystemExtensionNode, } from "../../language/predicates.mjs";
|
|
5
5
|
import { introspectionTypes } from "../../type/introspection.mjs";
|
|
6
6
|
import { specifiedScalarTypes } from "../../type/scalars.mjs";
|
|
7
|
-
/**
|
|
8
|
-
* Known type names
|
|
9
|
-
*
|
|
10
|
-
* A GraphQL document is only valid if referenced types (specifically
|
|
11
|
-
* variable definitions and fragment conditions) are defined by the type schema.
|
|
12
|
-
*
|
|
13
|
-
* See https://spec.graphql.org/draft/#sec-Fragment-Spread-Type-Existence
|
|
14
|
-
*/
|
|
15
7
|
export function KnownTypeNamesRule(context) {
|
|
16
8
|
const { definitions } = context.getDocument();
|
|
17
9
|
const existingTypesMap = context.getSchema()?.getTypeMap() ?? {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnownTypeNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownTypeNamesRule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KnownTypeNamesRule.js","sourceRoot":"","sources":["../../../src/validation/rules/KnownTypeNamesRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,qCAAoC;AACzD,OAAO,EAAE,cAAc,EAAE,yCAAwC;AAEjE,OAAO,EAAE,YAAY,EAAE,qCAAoC;AAG3D,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,GAC1B,sCAAqC;AAGtC,OAAO,EAAE,kBAAkB,EAAE,qCAAoC;AACjE,OAAO,EAAE,oBAAoB,EAAE,+BAA8B;AA0C7D,MAAM,UAAU,kBAAkB,CAChC,OAAiD;IAEjD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAC9C,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IAEjE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;QACxB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAChC,GAAG,WAAW,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;KACzE,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;gBAC9C,MAAM,KAAK,GAAG,cAAc,IAAI,IAAI,IAAI,SAAS,CAAC,cAAc,CAAC,CAAC;gBAClE,IAAI,KAAK,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7C,OAAO;gBACT,CAAC;gBAED,MAAM,cAAc,GAAG,OAAO,CAAC,eAAe;oBAC5C,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,cAAc,CACZ,QAAQ,EACR,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,iBAAiB,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAC9D,CAAC;gBACN,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CACd,iBAAiB,QAAQ,IAAI,GAAG,UAAU,CAAC,cAAc,CAAC,EAC1D,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAC;YACJ,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,CAAC,GAAG,oBAAoB,EAAE,GAAG,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1E,CAAC;AAEF,SAAS,SAAS,CAAC,KAAuC;IACxD,OAAO,CACL,MAAM,IAAI,KAAK;QACf,CAAC,0BAA0B,CAAC,KAAK,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC,CAAC,CACxE,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { didYouMean } from '../../jsutils/didYouMean.ts';\nimport { suggestionList } from '../../jsutils/suggestionList.ts';\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTNode } from '../../language/ast.ts';\nimport {\n isTypeDefinitionNode,\n isTypeSystemDefinitionNode,\n isTypeSystemExtensionNode,\n} from '../../language/predicates.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport { introspectionTypes } from '../../type/introspection.ts';\nimport { specifiedScalarTypes } from '../../type/scalars.ts';\n\nimport type {\n SDLValidationContext,\n ValidationContext,\n} from '../ValidationContext.ts';\n\n/**\n * Known type names\n *\n * A GraphQL document is only valid if referenced types (specifically\n * variable definitions and fragment conditions) are defined by the type schema.\n *\n * See https://spec.graphql.org/draft/#sec-Fragment-Spread-Type-Existence\n * @param context - The validation context used while checking the document.\n * @returns A visitor that reports validation errors for this rule.\n * @example\n * ```ts\n * import { buildSchema, parse, validate } from 'graphql';\n * import { KnownTypeNamesRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * fragment Bad on Missing { name }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [KnownTypeNamesRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * fragment Good on Query { name }\n * `);\n * const validErrors = validate(schema, validDocument, [KnownTypeNamesRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function KnownTypeNamesRule(\n context: ValidationContext | SDLValidationContext,\n): ASTVisitor {\n const { definitions } = context.getDocument();\n const existingTypesMap = context.getSchema()?.getTypeMap() ?? {};\n\n const typeNames = new Set([\n ...Object.keys(existingTypesMap),\n ...definitions.filter(isTypeDefinitionNode).map((def) => def.name.value),\n ]);\n\n return {\n NamedType(node, _1, parent, _2, ancestors) {\n const typeName = node.name.value;\n if (!typeNames.has(typeName)) {\n const definitionNode = ancestors[2] ?? parent;\n const isSDL = definitionNode != null && isSDLNode(definitionNode);\n if (isSDL && standardTypeNames.has(typeName)) {\n return;\n }\n\n const suggestedTypes = context.hideSuggestions\n ? []\n : suggestionList(\n typeName,\n isSDL ? [...standardTypeNames, ...typeNames] : [...typeNames],\n );\n context.reportError(\n new GraphQLError(\n `Unknown type \"${typeName}\".` + didYouMean(suggestedTypes),\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n\nconst standardTypeNames = new Set<string>(\n [...specifiedScalarTypes, ...introspectionTypes].map((type) => type.name),\n);\n\nfunction isSDLNode(value: ASTNode | ReadonlyArray<ASTNode>): boolean {\n return (\n 'kind' in value &&\n (isTypeSystemDefinitionNode(value) || isTypeSystemExtensionNode(value))\n );\n}\n"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
import type {
|
|
1
|
+
/** @category Validation Rules */
|
|
2
|
+
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
3
|
+
import type { ASTValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
4
5
|
* Lone anonymous operation
|
|
5
6
|
*
|
|
@@ -7,5 +8,32 @@ import type { ASTValidationContext } from '../ValidationContext.js';
|
|
|
7
8
|
* (the query short-hand) that it contains only that one operation definition.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Lone-Anonymous-Operation
|
|
11
|
+
* @param context - The validation context used while checking the document.
|
|
12
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
16
|
+
* import { LoneAnonymousOperationRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* query { name } query Other { name }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [LoneAnonymousOperationRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* { name }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [LoneAnonymousOperationRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function LoneAnonymousOperationRule(context: ASTValidationContext): ASTVisitor;
|