graphql 17.0.0-beta.1 → 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.ts +1 -1
- 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.map +1 -1
- package/devMode.mjs.map +1 -1
- package/error/GraphQLError.d.mts +94 -10
- package/error/GraphQLError.d.ts +94 -10
- package/error/GraphQLError.js +11 -20
- package/error/GraphQLError.js.map +1 -1
- package/error/GraphQLError.mjs +11 -20
- package/error/GraphQLError.mjs.map +1 -1
- package/error/ensureGraphQLError.d.mts +2 -0
- package/error/ensureGraphQLError.d.ts +2 -0
- package/error/ensureGraphQLError.js +0 -3
- 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 +6 -0
- package/error/index.d.ts +6 -0
- package/error/index.js.map +1 -1
- package/error/index.mjs.map +1 -1
- package/error/locatedError.d.mts +20 -0
- package/error/locatedError.d.ts +20 -0
- package/error/locatedError.js +0 -6
- 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 +15 -0
- package/error/syntaxError.d.ts +15 -0
- package/error/syntaxError.js +0 -4
- 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 +27 -0
- package/execution/AbortedGraphQLExecutionError.d.ts +27 -0
- 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 +1 -5
- 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 +44 -40
- package/execution/Executor.d.ts +44 -40
- package/execution/Executor.js +2 -122
- package/execution/Executor.js.map +1 -1
- package/execution/Executor.mjs +2 -122
- package/execution/Executor.mjs.map +1 -1
- package/execution/ExecutorThrowingOnIncremental.js +0 -2
- 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 +2 -0
- package/execution/buildResolveInfo.d.ts +2 -0
- package/execution/buildResolveInfo.js +0 -3
- package/execution/buildResolveInfo.js.map +1 -1
- package/execution/buildResolveInfo.mjs +0 -3
- package/execution/buildResolveInfo.mjs.map +1 -1
- package/execution/cancellablePromise.d.mts +3 -0
- package/execution/cancellablePromise.d.ts +3 -0
- package/execution/cancellablePromise.js.map +1 -1
- package/execution/cancellablePromise.mjs.map +1 -1
- package/execution/collectFields.d.mts +10 -4
- package/execution/collectFields.d.ts +10 -4
- package/execution/collectFields.js +0 -41
- 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 +0 -5
- 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 +1 -0
- package/execution/createSharedExecutionContext.d.ts +1 -0
- package/execution/createSharedExecutionContext.js.map +1 -1
- package/execution/createSharedExecutionContext.mjs.map +1 -1
- package/execution/execute.d.mts +403 -38
- package/execution/execute.d.ts +403 -38
- package/execution/execute.js +0 -161
- package/execution/execute.js.map +1 -1
- package/execution/execute.mjs +0 -161
- package/execution/execute.mjs.map +1 -1
- package/execution/getStreamUsage.d.mts +4 -1
- package/execution/getStreamUsage.d.ts +4 -1
- package/execution/getStreamUsage.js +0 -7
- 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 +4 -1
- package/execution/getVariableSignature.d.ts +4 -1
- package/execution/getVariableSignature.js +0 -2
- 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 +3 -7
- package/execution/hooks.d.ts +3 -7
- 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 +1 -1
- package/execution/incremental/Computation.d.ts +1 -1
- package/execution/incremental/Computation.js +0 -1
- 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 +124 -9
- package/execution/incremental/IncrementalExecutor.d.ts +124 -9
- package/execution/incremental/IncrementalExecutor.js +1 -31
- package/execution/incremental/IncrementalExecutor.js.map +1 -1
- package/execution/incremental/IncrementalExecutor.mjs +1 -31
- package/execution/incremental/IncrementalExecutor.mjs.map +1 -1
- package/execution/incremental/IncrementalPublisher.d.mts +1 -3
- package/execution/incremental/IncrementalPublisher.d.ts +1 -3
- package/execution/incremental/IncrementalPublisher.js +0 -5
- package/execution/incremental/IncrementalPublisher.js.map +1 -1
- package/execution/incremental/IncrementalPublisher.mjs +0 -5
- package/execution/incremental/IncrementalPublisher.mjs.map +1 -1
- package/execution/incremental/Queue.js +3 -64
- package/execution/incremental/Queue.js.map +1 -1
- package/execution/incremental/Queue.mjs +2 -62
- package/execution/incremental/Queue.mjs.map +1 -1
- package/execution/incremental/WorkQueue.d.mts +8 -0
- package/execution/incremental/WorkQueue.d.ts +8 -0
- package/execution/incremental/WorkQueue.js +0 -15
- 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 +3 -0
- package/execution/incremental/buildExecutionPlan.d.ts +3 -0
- package/execution/incremental/buildExecutionPlan.js.map +1 -1
- package/execution/incremental/buildExecutionPlan.mjs.map +1 -1
- package/execution/index.d.mts +12 -3
- package/execution/index.d.ts +12 -3
- package/execution/index.js +4 -1
- package/execution/index.js.map +1 -1
- package/execution/index.mjs +1 -0
- 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 +2 -0
- package/execution/mapAsyncIterable.d.ts +2 -0
- package/execution/mapAsyncIterable.js +0 -5
- 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 +0 -1
- package/execution/returnIteratorCatchingErrors.js.map +1 -1
- package/execution/returnIteratorCatchingErrors.mjs +0 -1
- package/execution/returnIteratorCatchingErrors.mjs.map +1 -1
- package/execution/values.d.mts +187 -5
- package/execution/values.d.ts +187 -5
- package/execution/values.js +14 -55
- 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 +2 -0
- package/execution/withConcurrentAbruptClose.d.ts +2 -0
- package/execution/withConcurrentAbruptClose.js +0 -14
- package/execution/withConcurrentAbruptClose.js.map +1 -1
- package/execution/withConcurrentAbruptClose.mjs +0 -14
- package/execution/withConcurrentAbruptClose.mjs.map +1 -1
- package/graphql.d.mts +192 -44
- package/graphql.d.ts +192 -44
- package/graphql.js +0 -12
- package/graphql.js.map +1 -1
- package/graphql.mjs +0 -12
- package/graphql.mjs.map +1 -1
- package/harness.d.mts +17 -0
- package/harness.d.ts +17 -0
- package/harness.js.map +1 -1
- package/harness.mjs.map +1 -1
- package/index.d.mts +26 -24
- package/index.d.ts +26 -24
- package/index.js +9 -96
- 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 +30 -0
- package/jsutils/Path.d.ts +30 -0
- 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.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 +0 -6
- 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.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 +0 -3
- 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 +1 -12
- 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 +7 -14
- package/jsutils/keyMap.d.ts +7 -14
- 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 +9 -6
- package/jsutils/keyValMap.d.ts +9 -6
- 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 +2 -0
- package/jsutils/mapValue.d.ts +2 -0
- 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 +2 -0
- package/jsutils/promiseForObject.d.ts +2 -0
- 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 +2 -0
- package/jsutils/promiseReduce.d.ts +2 -0
- package/jsutils/promiseReduce.js +0 -7
- 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 +2 -0
- package/jsutils/promiseWithResolvers.d.ts +2 -0
- 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 +1 -24
- 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 +0 -3
- 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 +2 -0
- package/jsutils/toObjMap.d.ts +2 -0
- package/jsutils/toObjMap.js.map +1 -1
- package/jsutils/toObjMap.mjs.map +1 -1
- package/language/KindTypeMap.d.mts +1 -0
- package/language/KindTypeMap.d.ts +1 -0
- package/language/KindTypeMap.js.map +1 -1
- package/language/KindTypeMap.mjs.map +1 -1
- package/language/ast.d.mts +413 -53
- package/language/ast.d.ts +413 -53
- package/language/ast.js +0 -20
- package/language/ast.js.map +1 -1
- package/language/ast.mjs +0 -20
- 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 +11 -37
- 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 +24 -5
- package/language/directiveLocation.d.ts +24 -5
- package/language/directiveLocation.js +0 -5
- package/language/directiveLocation.js.map +1 -1
- package/language/directiveLocation.mjs +0 -5
- package/language/directiveLocation.mjs.map +1 -1
- package/language/index.d.mts +6 -0
- package/language/index.d.ts +6 -0
- package/language/index.js +0 -4
- 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 +3 -0
- package/language/kinds.d.ts +3 -0
- package/language/kinds.js.map +1 -1
- package/language/kinds.mjs.map +1 -1
- package/language/kinds_.d.mts +100 -12
- package/language/kinds_.d.ts +100 -12
- package/language/kinds_.js +0 -13
- package/language/kinds_.js.map +1 -1
- package/language/kinds_.mjs +0 -13
- package/language/kinds_.mjs.map +1 -1
- package/language/lexer.d.mts +48 -15
- package/language/lexer.d.ts +48 -15
- package/language/lexer.js +37 -278
- 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 +16 -3
- package/language/location.d.ts +16 -3
- package/language/location.js +0 -4
- 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 +224 -9
- package/language/parser.d.ts +224 -9
- package/language/parser.js +0 -375
- package/language/parser.js.map +1 -1
- package/language/parser.mjs +0 -375
- package/language/parser.mjs.map +1 -1
- package/language/predicates.d.mts +181 -0
- package/language/predicates.d.ts +181 -0
- package/language/predicates.js +0 -6
- package/language/predicates.js.map +1 -1
- package/language/predicates.mjs +0 -6
- package/language/predicates.mjs.map +1 -1
- package/language/printLocation.d.mts +28 -0
- package/language/printLocation.d.ts +28 -0
- package/language/printLocation.js +0 -8
- 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 +12 -0
- package/language/printer.d.ts +12 -0
- package/language/printer.js +0 -25
- package/language/printer.js.map +1 -1
- package/language/printer.mjs +0 -25
- package/language/printer.mjs.map +1 -1
- package/language/schemaCoordinateLexer.d.mts +14 -0
- package/language/schemaCoordinateLexer.d.ts +14 -0
- package/language/schemaCoordinateLexer.js +5 -35
- 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 +0 -12
- 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 +182 -72
- package/language/visitor.d.ts +182 -72
- package/language/visitor.js +0 -15
- package/language/visitor.js.map +1 -1
- package/language/visitor.mjs +0 -15
- package/language/visitor.mjs.map +1 -1
- package/package.json +1 -1
- package/type/assertName.d.mts +18 -1
- package/type/assertName.d.ts +18 -1
- package/type/assertName.js +0 -8
- 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 +3258 -128
- package/type/definition.d.ts +3258 -128
- package/type/definition.js +5 -252
- 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 +209 -20
- package/type/directives.d.ts +209 -20
- package/type/directives.js +0 -37
- package/type/directives.js.map +1 -1
- package/type/directives.mjs +0 -37
- package/type/directives.mjs.map +1 -1
- package/type/index.d.mts +6 -0
- package/type/index.d.ts +6 -0
- package/type/index.js +0 -23
- 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 +36 -0
- package/type/introspection.d.ts +36 -0
- package/type/introspection.js +1 -6
- package/type/introspection.js.map +1 -1
- package/type/introspection.mjs +1 -6
- package/type/introspection.mjs.map +1 -1
- package/type/scalars.d.mts +29 -2
- package/type/scalars.d.ts +29 -2
- package/type/scalars.js +0 -15
- 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 +507 -31
- package/type/schema.d.ts +507 -31
- package/type/schema.js +0 -97
- 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 +32 -3
- package/type/validate.d.ts +32 -3
- package/type/validate.js +0 -112
- package/type/validate.js.map +1 -1
- package/type/validate.mjs +0 -112
- package/type/validate.mjs.map +1 -1
- package/utilities/TypeInfo.d.mts +564 -1
- package/utilities/TypeInfo.d.ts +564 -1
- package/utilities/TypeInfo.js +1 -24
- package/utilities/TypeInfo.js.map +1 -1
- package/utilities/TypeInfo.mjs +1 -24
- package/utilities/TypeInfo.mjs.map +1 -1
- package/utilities/astFromValue.d.mts +36 -3
- package/utilities/astFromValue.d.ts +36 -3
- package/utilities/astFromValue.js +0 -42
- package/utilities/astFromValue.js.map +1 -1
- package/utilities/astFromValue.mjs +0 -42
- package/utilities/astFromValue.mjs.map +1 -1
- package/utilities/buildASTSchema.d.mts +66 -6
- package/utilities/buildASTSchema.d.ts +66 -6
- package/utilities/buildASTSchema.js +0 -21
- package/utilities/buildASTSchema.js.map +1 -1
- package/utilities/buildASTSchema.mjs +0 -21
- package/utilities/buildASTSchema.mjs.map +1 -1
- package/utilities/buildClientSchema.d.mts +17 -2
- package/utilities/buildClientSchema.d.ts +17 -2
- package/utilities/buildClientSchema.js +1 -32
- package/utilities/buildClientSchema.js.map +1 -1
- package/utilities/buildClientSchema.mjs +0 -30
- package/utilities/buildClientSchema.mjs.map +1 -1
- package/utilities/coerceInputValue.d.mts +83 -1
- package/utilities/coerceInputValue.d.ts +83 -1
- package/utilities/coerceInputValue.js +21 -50
- 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 +12 -0
- package/utilities/concatAST.d.ts +12 -0
- package/utilities/concatAST.js +0 -5
- 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 +58 -3
- package/utilities/extendSchema.d.ts +58 -3
- package/utilities/extendSchema.js +0 -60
- package/utilities/extendSchema.js.map +1 -1
- package/utilities/extendSchema.mjs +0 -60
- package/utilities/extendSchema.mjs.map +1 -1
- package/utilities/findSchemaChanges.d.mts +99 -1
- package/utilities/findSchemaChanges.d.ts +99 -1
- package/utilities/findSchemaChanges.js +3 -35
- package/utilities/findSchemaChanges.js.map +1 -1
- package/utilities/findSchemaChanges.mjs +3 -35
- package/utilities/findSchemaChanges.mjs.map +1 -1
- package/utilities/getDefaultValueAST.d.mts +1 -0
- package/utilities/getDefaultValueAST.d.ts +1 -0
- package/utilities/getDefaultValueAST.js +0 -2
- package/utilities/getDefaultValueAST.js.map +1 -1
- package/utilities/getDefaultValueAST.mjs +0 -2
- package/utilities/getDefaultValueAST.mjs.map +1 -1
- package/utilities/getIntrospectionQuery.d.mts +132 -0
- package/utilities/getIntrospectionQuery.d.ts +132 -0
- package/utilities/getIntrospectionQuery.js +0 -4
- package/utilities/getIntrospectionQuery.js.map +1 -1
- package/utilities/getIntrospectionQuery.mjs +0 -4
- package/utilities/getIntrospectionQuery.mjs.map +1 -1
- package/utilities/getOperationAST.d.mts +15 -0
- package/utilities/getOperationAST.d.ts +15 -0
- package/utilities/getOperationAST.js +0 -8
- 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 +18 -3
- package/utilities/index.d.ts +18 -3
- package/utilities/index.js +0 -27
- 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 +54 -0
- package/utilities/introspectionFromSchema.d.ts +54 -0
- package/utilities/introspectionFromSchema.js +0 -9
- package/utilities/introspectionFromSchema.js.map +1 -1
- package/utilities/introspectionFromSchema.mjs +0 -9
- package/utilities/introspectionFromSchema.mjs.map +1 -1
- package/utilities/lexicographicSortSchema.d.mts +35 -0
- package/utilities/lexicographicSortSchema.d.ts +35 -0
- package/utilities/lexicographicSortSchema.js +0 -5
- 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 +6 -3
- package/utilities/mapSchemaConfig.d.ts +6 -3
- package/utilities/mapSchemaConfig.js +0 -10
- package/utilities/mapSchemaConfig.js.map +1 -1
- package/utilities/mapSchemaConfig.mjs +0 -10
- package/utilities/mapSchemaConfig.mjs.map +1 -1
- package/utilities/printSchema.d.mts +84 -0
- package/utilities/printSchema.d.ts +84 -0
- package/utilities/printSchema.js +0 -28
- package/utilities/printSchema.js.map +1 -1
- package/utilities/printSchema.mjs +0 -28
- package/utilities/printSchema.mjs.map +1 -1
- package/utilities/replaceVariables.d.mts +36 -0
- package/utilities/replaceVariables.d.ts +36 -0
- package/utilities/replaceVariables.js +0 -8
- 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 +62 -0
- package/utilities/resolveSchemaCoordinate.d.ts +62 -0
- package/utilities/resolveSchemaCoordinate.js +0 -56
- 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 +30 -0
- package/utilities/separateOperations.d.ts +30 -0
- package/utilities/separateOperations.js +0 -15
- package/utilities/separateOperations.js.map +1 -1
- package/utilities/separateOperations.mjs +0 -15
- package/utilities/separateOperations.mjs.map +1 -1
- package/utilities/sortValueNode.js +0 -7
- 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 +13 -6
- package/utilities/stripIgnoredCharacters.d.ts +13 -6
- package/utilities/stripIgnoredCharacters.js +0 -65
- 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 +84 -0
- package/utilities/typeComparators.d.ts +84 -0
- package/utilities/typeComparators.js +0 -33
- 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 +86 -0
- package/utilities/typeFromAST.d.ts +86 -0
- package/utilities/typeFromAST.js.map +1 -1
- package/utilities/typeFromAST.mjs.map +1 -1
- package/utilities/typedQueryDocumentNode.d.mts +4 -0
- package/utilities/typedQueryDocumentNode.d.ts +4 -0
- package/utilities/typedQueryDocumentNode.js.map +1 -1
- package/utilities/typedQueryDocumentNode.mjs.map +1 -1
- package/utilities/validateInputValue.d.mts +123 -0
- package/utilities/validateInputValue.d.ts +123 -0
- package/utilities/validateInputValue.js +0 -20
- 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 +41 -0
- package/utilities/valueFromAST.d.ts +41 -0
- package/utilities/valueFromAST.js +13 -51
- package/utilities/valueFromAST.js.map +1 -1
- package/utilities/valueFromAST.mjs +13 -51
- package/utilities/valueFromAST.mjs.map +1 -1
- package/utilities/valueFromASTUntyped.d.mts +15 -2
- package/utilities/valueFromASTUntyped.d.ts +15 -2
- package/utilities/valueFromASTUntyped.js +0 -16
- 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 +30 -1
- package/utilities/valueToLiteral.d.ts +30 -1
- package/utilities/valueToLiteral.js +7 -40
- 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 +490 -0
- package/validation/ValidationContext.d.ts +490 -0
- package/validation/ValidationContext.js +1 -8
- 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 +7 -0
- package/validation/index.d.ts +7 -0
- package/validation/index.js +0 -34
- 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 +30 -0
- package/validation/rules/DeferStreamDirectiveLabelRule.d.ts +30 -0
- package/validation/rules/DeferStreamDirectiveLabelRule.js +0 -5
- 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 +28 -0
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.d.ts +28 -0
- package/validation/rules/DeferStreamDirectiveOnRootFieldRule.js +0 -5
- 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 +52 -0
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.d.ts +52 -0
- package/validation/rules/DeferStreamDirectiveOnValidOperationsRule.js +0 -5
- 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 +28 -0
- package/validation/rules/ExecutableDefinitionsRule.d.ts +28 -0
- package/validation/rules/ExecutableDefinitionsRule.js +0 -8
- 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 +28 -0
- package/validation/rules/FieldsOnCorrectTypeRule.d.ts +28 -0
- package/validation/rules/FieldsOnCorrectTypeRule.js +0 -27
- 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 +28 -0
- package/validation/rules/FragmentsOnCompositeTypesRule.d.ts +28 -0
- package/validation/rules/FragmentsOnCompositeTypesRule.js +0 -9
- 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 +29 -3
- package/validation/rules/KnownArgumentNamesRule.d.ts +29 -3
- package/validation/rules/KnownArgumentNamesRule.js +0 -13
- 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 +28 -0
- package/validation/rules/KnownDirectivesRule.d.ts +28 -0
- package/validation/rules/KnownDirectivesRule.js +0 -10
- package/validation/rules/KnownDirectivesRule.js.map +1 -1
- package/validation/rules/KnownDirectivesRule.mjs +0 -10
- package/validation/rules/KnownDirectivesRule.mjs.map +1 -1
- package/validation/rules/KnownFragmentNamesRule.d.mts +28 -0
- package/validation/rules/KnownFragmentNamesRule.d.ts +28 -0
- package/validation/rules/KnownFragmentNamesRule.js +0 -8
- 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 +20 -0
- package/validation/rules/KnownOperationTypesRule.d.ts +20 -0
- package/validation/rules/KnownOperationTypesRule.js +0 -8
- 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 +28 -0
- package/validation/rules/KnownTypeNamesRule.d.ts +28 -0
- package/validation/rules/KnownTypeNamesRule.js +0 -8
- 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 +28 -0
- package/validation/rules/LoneAnonymousOperationRule.d.ts +28 -0
- package/validation/rules/LoneAnonymousOperationRule.js +0 -8
- 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 +21 -0
- package/validation/rules/LoneSchemaDefinitionRule.d.ts +21 -0
- package/validation/rules/LoneSchemaDefinitionRule.js +0 -5
- 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 +31 -0
- package/validation/rules/MaxIntrospectionDepthRule.d.ts +31 -0
- package/validation/rules/MaxIntrospectionDepthRule.js +0 -14
- 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 +28 -0
- package/validation/rules/NoFragmentCyclesRule.d.ts +28 -0
- package/validation/rules/NoFragmentCyclesRule.js +0 -15
- 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 +28 -0
- package/validation/rules/NoUndefinedVariablesRule.d.ts +28 -0
- package/validation/rules/NoUndefinedVariablesRule.js +0 -8
- 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 +28 -0
- package/validation/rules/NoUnusedFragmentsRule.d.ts +28 -0
- package/validation/rules/NoUnusedFragmentsRule.js +0 -8
- 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 +29 -0
- package/validation/rules/NoUnusedVariablesRule.d.ts +29 -0
- package/validation/rules/NoUnusedVariablesRule.js +0 -8
- 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 +33 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule.d.ts +33 -0
- package/validation/rules/OverlappingFieldsCanBeMergedRule.js +1 -175
- 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 +36 -0
- package/validation/rules/PossibleFragmentSpreadsRule.d.ts +36 -0
- package/validation/rules/PossibleFragmentSpreadsRule.js +0 -7
- 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 +21 -0
- package/validation/rules/PossibleTypeExtensionsRule.d.ts +21 -0
- package/validation/rules/PossibleTypeExtensionsRule.js +0 -9
- package/validation/rules/PossibleTypeExtensionsRule.js.map +1 -1
- package/validation/rules/PossibleTypeExtensionsRule.mjs +0 -9
- package/validation/rules/PossibleTypeExtensionsRule.mjs.map +1 -1
- package/validation/rules/ProvidedRequiredArgumentsRule.d.mts +29 -3
- package/validation/rules/ProvidedRequiredArgumentsRule.d.ts +29 -3
- package/validation/rules/ProvidedRequiredArgumentsRule.js +0 -13
- 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 +28 -0
- package/validation/rules/ScalarLeafsRule.d.ts +28 -0
- package/validation/rules/ScalarLeafsRule.js +0 -6
- 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 +34 -2
- package/validation/rules/SingleFieldSubscriptionsRule.d.ts +34 -2
- package/validation/rules/SingleFieldSubscriptionsRule.js +0 -9
- 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 +21 -0
- package/validation/rules/StreamDirectiveOnListFieldRule.d.ts +21 -0
- package/validation/rules/StreamDirectiveOnListFieldRule.js +0 -5
- 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 +21 -0
- package/validation/rules/UniqueArgumentDefinitionNamesRule.d.ts +21 -0
- package/validation/rules/UniqueArgumentDefinitionNamesRule.js +0 -6
- 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 +28 -0
- package/validation/rules/UniqueArgumentNamesRule.d.ts +28 -0
- package/validation/rules/UniqueArgumentNamesRule.js +0 -8
- 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 +21 -0
- package/validation/rules/UniqueDirectiveNamesRule.d.ts +21 -0
- package/validation/rules/UniqueDirectiveNamesRule.js +0 -5
- 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 +28 -0
- package/validation/rules/UniqueDirectivesPerLocationRule.d.ts +28 -0
- package/validation/rules/UniqueDirectivesPerLocationRule.js +0 -11
- package/validation/rules/UniqueDirectivesPerLocationRule.js.map +1 -1
- package/validation/rules/UniqueDirectivesPerLocationRule.mjs +0 -11
- package/validation/rules/UniqueDirectivesPerLocationRule.mjs.map +1 -1
- package/validation/rules/UniqueEnumValueNamesRule.d.mts +21 -0
- package/validation/rules/UniqueEnumValueNamesRule.d.ts +21 -0
- package/validation/rules/UniqueEnumValueNamesRule.js +0 -5
- 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 +21 -0
- package/validation/rules/UniqueFieldDefinitionNamesRule.d.ts +21 -0
- package/validation/rules/UniqueFieldDefinitionNamesRule.js +0 -5
- 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 +28 -0
- package/validation/rules/UniqueFragmentNamesRule.d.ts +28 -0
- package/validation/rules/UniqueFragmentNamesRule.js +0 -7
- 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 +32 -0
- package/validation/rules/UniqueInputFieldNamesRule.d.ts +32 -0
- package/validation/rules/UniqueInputFieldNamesRule.js +0 -8
- 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 +28 -0
- package/validation/rules/UniqueOperationNamesRule.d.ts +28 -0
- package/validation/rules/UniqueOperationNamesRule.js +0 -7
- 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 +21 -0
- package/validation/rules/UniqueOperationTypesRule.d.ts +21 -0
- package/validation/rules/UniqueOperationTypesRule.js +0 -5
- 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 +21 -0
- package/validation/rules/UniqueTypeNamesRule.d.ts +21 -0
- package/validation/rules/UniqueTypeNamesRule.js +0 -5
- 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 +28 -0
- package/validation/rules/UniqueVariableNamesRule.d.ts +28 -0
- package/validation/rules/UniqueVariableNamesRule.js +0 -5
- 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 +28 -0
- package/validation/rules/ValuesOfCorrectTypeRule.d.ts +28 -0
- package/validation/rules/ValuesOfCorrectTypeRule.js +1 -21
- 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 +32 -0
- package/validation/rules/VariablesAreInputTypesRule.d.ts +32 -0
- package/validation/rules/VariablesAreInputTypesRule.js +0 -8
- 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 +28 -0
- package/validation/rules/VariablesInAllowedPositionRule.d.ts +28 -0
- package/validation/rules/VariablesInAllowedPositionRule.js +0 -20
- 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 +41 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.d.ts +41 -0
- package/validation/rules/custom/NoDeprecatedCustomRule.js +0 -10
- 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 +28 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.d.ts +28 -0
- package/validation/rules/custom/NoSchemaIntrospectionCustomRule.js +0 -10
- 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 +2 -3
- package/validation/specifiedRules.d.ts +2 -3
- package/validation/specifiedRules.js +0 -46
- 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 +65 -7
- package/validation/validate.d.ts +65 -7
- package/validation/validate.js +0 -41
- 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
|
@@ -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,3 +1,4 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
2
3
|
import type { ASTValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
@@ -7,5 +8,32 @@ import type { ASTValidationContext } from "../ValidationContext.mjs";
|
|
|
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;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.js";
|
|
2
3
|
import type { ASTValidationContext } from "../ValidationContext.js";
|
|
3
4
|
/**
|
|
@@ -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;
|
|
@@ -3,14 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.LoneAnonymousOperationRule = LoneAnonymousOperationRule;
|
|
4
4
|
const GraphQLError_ts_1 = require("../../error/GraphQLError.js");
|
|
5
5
|
const kinds_ts_1 = require("../../language/kinds.js");
|
|
6
|
-
/**
|
|
7
|
-
* Lone anonymous operation
|
|
8
|
-
*
|
|
9
|
-
* A GraphQL document is only valid if when it contains an anonymous operation
|
|
10
|
-
* (the query short-hand) that it contains only that one operation definition.
|
|
11
|
-
*
|
|
12
|
-
* See https://spec.graphql.org/draft/#sec-Lone-Anonymous-Operation
|
|
13
|
-
*/
|
|
14
6
|
function LoneAnonymousOperationRule(context) {
|
|
15
7
|
let operationCount = 0;
|
|
16
8
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoneAnonymousOperationRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneAnonymousOperationRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"LoneAnonymousOperationRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneAnonymousOperationRule.ts"],"names":[],"mappings":";;AA4CA,gEAqBC;AA/DD,iEAA2D;AAE3D,sDAA+C;AAwC/C,SAAgB,0BAA0B,CACxC,OAA6B;IAE7B,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,OAAO;QACL,QAAQ,CAAC,IAAI;YACX,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CACtC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,eAAI,CAAC,oBAAoB,CAC9D,CAAC,MAAM,CAAC;QACX,CAAC;QACD,mBAAmB,CAAC,IAAI;YACtB,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CACd,8DAA8D,EAC9D,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 { Kind } from '../../language/kinds.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ASTValidationContext } from '../ValidationContext.ts';\n\n/**\n * Lone anonymous operation\n *\n * A GraphQL document is only valid if when it contains an anonymous operation\n * (the query short-hand) that it contains only that one operation definition.\n *\n * See https://spec.graphql.org/draft/#sec-Lone-Anonymous-Operation\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 { LoneAnonymousOperationRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * query { name } query Other { name }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [LoneAnonymousOperationRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * { name }\n * `);\n * const validErrors = validate(schema, validDocument, [LoneAnonymousOperationRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function LoneAnonymousOperationRule(\n context: ASTValidationContext,\n): ASTVisitor {\n let operationCount = 0;\n return {\n Document(node) {\n operationCount = node.definitions.filter(\n (definition) => definition.kind === Kind.OPERATION_DEFINITION,\n ).length;\n },\n OperationDefinition(node) {\n if (!node.name && operationCount > 1) {\n context.reportError(\n new GraphQLError(\n 'This anonymous operation must be the only defined operation.',\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n"]}
|
|
@@ -1,13 +1,5 @@
|
|
|
1
1
|
import { GraphQLError } from "../../error/GraphQLError.mjs";
|
|
2
2
|
import { Kind } from "../../language/kinds.mjs";
|
|
3
|
-
/**
|
|
4
|
-
* Lone anonymous operation
|
|
5
|
-
*
|
|
6
|
-
* A GraphQL document is only valid if when it contains an anonymous operation
|
|
7
|
-
* (the query short-hand) that it contains only that one operation definition.
|
|
8
|
-
*
|
|
9
|
-
* See https://spec.graphql.org/draft/#sec-Lone-Anonymous-Operation
|
|
10
|
-
*/
|
|
11
3
|
export function LoneAnonymousOperationRule(context) {
|
|
12
4
|
let operationCount = 0;
|
|
13
5
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoneAnonymousOperationRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneAnonymousOperationRule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LoneAnonymousOperationRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneAnonymousOperationRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,qCAAoC;AAE3D,OAAO,EAAE,IAAI,EAAE,iCAAgC;AAwC/C,MAAM,UAAU,0BAA0B,CACxC,OAA6B;IAE7B,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,OAAO;QACL,QAAQ,CAAC,IAAI;YACX,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CACtC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,IAAI,CAAC,oBAAoB,CAC9D,CAAC,MAAM,CAAC;QACX,CAAC;QACD,mBAAmB,CAAC,IAAI;YACtB,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CACd,8DAA8D,EAC9D,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 { Kind } from '../../language/kinds.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ASTValidationContext } from '../ValidationContext.ts';\n\n/**\n * Lone anonymous operation\n *\n * A GraphQL document is only valid if when it contains an anonymous operation\n * (the query short-hand) that it contains only that one operation definition.\n *\n * See https://spec.graphql.org/draft/#sec-Lone-Anonymous-Operation\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 { LoneAnonymousOperationRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * query { name } query Other { name }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [LoneAnonymousOperationRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * { name }\n * `);\n * const validErrors = validate(schema, validDocument, [LoneAnonymousOperationRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function LoneAnonymousOperationRule(\n context: ASTValidationContext,\n): ASTVisitor {\n let operationCount = 0;\n return {\n Document(node) {\n operationCount = node.definitions.filter(\n (definition) => definition.kind === Kind.OPERATION_DEFINITION,\n ).length;\n },\n OperationDefinition(node) {\n if (!node.name && operationCount > 1) {\n context.reportError(\n new GraphQLError(\n 'This anonymous operation must be the only defined operation.',\n { nodes: node },\n ),\n );\n }\n },\n };\n}\n"]}
|
|
@@ -1,8 +1,29 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
2
3
|
import type { SDLValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
4
5
|
* Lone Schema definition
|
|
5
6
|
*
|
|
6
7
|
* A GraphQL document is only valid if it contains only one schema definition.
|
|
8
|
+
* @param context - The validation context used while checking the document.
|
|
9
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* import { buildSchema } from 'graphql';
|
|
13
|
+
* import { LoneSchemaDefinitionRule } from 'graphql/validation';
|
|
14
|
+
*
|
|
15
|
+
* const invalidSDL = `
|
|
16
|
+
* schema { query: Query } schema { query: Query } type Query { name: String }
|
|
17
|
+
* `;
|
|
18
|
+
*
|
|
19
|
+
* LoneSchemaDefinitionRule.name; // => 'LoneSchemaDefinitionRule'
|
|
20
|
+
* buildSchema(invalidSDL); // throws an error
|
|
21
|
+
*
|
|
22
|
+
* const validSDL = `
|
|
23
|
+
* schema { query: Query } type Query { name: String }
|
|
24
|
+
* `;
|
|
25
|
+
*
|
|
26
|
+
* buildSchema(validSDL); // does not throw
|
|
27
|
+
* ```
|
|
7
28
|
*/
|
|
8
29
|
export declare function LoneSchemaDefinitionRule(context: SDLValidationContext): ASTVisitor;
|
|
@@ -1,8 +1,29 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.js";
|
|
2
3
|
import type { SDLValidationContext } from "../ValidationContext.js";
|
|
3
4
|
/**
|
|
4
5
|
* Lone Schema definition
|
|
5
6
|
*
|
|
6
7
|
* A GraphQL document is only valid if it contains only one schema definition.
|
|
8
|
+
* @param context - The validation context used while checking the document.
|
|
9
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
10
|
+
* @example
|
|
11
|
+
* ```ts
|
|
12
|
+
* import { buildSchema } from 'graphql';
|
|
13
|
+
* import { LoneSchemaDefinitionRule } from 'graphql/validation';
|
|
14
|
+
*
|
|
15
|
+
* const invalidSDL = `
|
|
16
|
+
* schema { query: Query } schema { query: Query } type Query { name: String }
|
|
17
|
+
* `;
|
|
18
|
+
*
|
|
19
|
+
* LoneSchemaDefinitionRule.name; // => 'LoneSchemaDefinitionRule'
|
|
20
|
+
* buildSchema(invalidSDL); // throws an error
|
|
21
|
+
*
|
|
22
|
+
* const validSDL = `
|
|
23
|
+
* schema { query: Query } type Query { name: String }
|
|
24
|
+
* `;
|
|
25
|
+
*
|
|
26
|
+
* buildSchema(validSDL); // does not throw
|
|
27
|
+
* ```
|
|
7
28
|
*/
|
|
8
29
|
export declare function LoneSchemaDefinitionRule(context: SDLValidationContext): ASTVisitor;
|
|
@@ -2,11 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LoneSchemaDefinitionRule = LoneSchemaDefinitionRule;
|
|
4
4
|
const GraphQLError_ts_1 = require("../../error/GraphQLError.js");
|
|
5
|
-
/**
|
|
6
|
-
* Lone Schema definition
|
|
7
|
-
*
|
|
8
|
-
* A GraphQL document is only valid if it contains only one schema definition.
|
|
9
|
-
*/
|
|
10
5
|
function LoneSchemaDefinitionRule(context) {
|
|
11
6
|
const oldSchema = context.getSchema();
|
|
12
7
|
const alreadyDefined = oldSchema?.astNode ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoneSchemaDefinitionRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneSchemaDefinitionRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"LoneSchemaDefinitionRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneSchemaDefinitionRule.ts"],"names":[],"mappings":";;AAiCA,4DAiCC;AAhED,iEAA2D;AA+B3D,SAAgB,wBAAwB,CACtC,OAA6B;IAE7B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACtC,MAAM,cAAc,GAClB,SAAS,EAAE,OAAO;QAClB,SAAS,EAAE,YAAY,EAAE;QACzB,SAAS,EAAE,eAAe,EAAE;QAC5B,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAEnC,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAC/B,OAAO;QACL,gBAAgB,CAAC,IAAI;YACnB,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CACd,uDAAuD,EACvD,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YAED,IAAI,sBAAsB,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CAAC,0CAA0C,EAAE;oBAC3D,KAAK,EAAE,IAAI;iBACZ,CAAC,CACH,CAAC;YACJ,CAAC;YACD,EAAE,sBAAsB,CAAC;QAC3B,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 { SDLValidationContext } from '../ValidationContext.ts';\n\n/**\n * Lone Schema definition\n *\n * A GraphQL document is only valid if it contains only one schema definition.\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 } from 'graphql';\n * import { LoneSchemaDefinitionRule } from 'graphql/validation';\n *\n * const invalidSDL = `\n * schema { query: Query } schema { query: Query } type Query { name: String }\n * `;\n *\n * LoneSchemaDefinitionRule.name; // => 'LoneSchemaDefinitionRule'\n * buildSchema(invalidSDL); // throws an error\n *\n * const validSDL = `\n * schema { query: Query } type Query { name: String }\n * `;\n *\n * buildSchema(validSDL); // does not throw\n * ```\n */\nexport function LoneSchemaDefinitionRule(\n context: SDLValidationContext,\n): ASTVisitor {\n const oldSchema = context.getSchema();\n const alreadyDefined =\n oldSchema?.astNode ??\n oldSchema?.getQueryType() ??\n oldSchema?.getMutationType() ??\n oldSchema?.getSubscriptionType();\n\n let schemaDefinitionsCount = 0;\n return {\n SchemaDefinition(node) {\n if (alreadyDefined) {\n context.reportError(\n new GraphQLError(\n 'Cannot define a new schema within a schema extension.',\n { nodes: node },\n ),\n );\n return;\n }\n\n if (schemaDefinitionsCount > 0) {\n context.reportError(\n new GraphQLError('Must provide only one schema definition.', {\n nodes: node,\n }),\n );\n }\n ++schemaDefinitionsCount;\n },\n };\n}\n"]}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import { GraphQLError } from "../../error/GraphQLError.mjs";
|
|
2
|
-
/**
|
|
3
|
-
* Lone Schema definition
|
|
4
|
-
*
|
|
5
|
-
* A GraphQL document is only valid if it contains only one schema definition.
|
|
6
|
-
*/
|
|
7
2
|
export function LoneSchemaDefinitionRule(context) {
|
|
8
3
|
const oldSchema = context.getSchema();
|
|
9
4
|
const alreadyDefined = oldSchema?.astNode ??
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoneSchemaDefinitionRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneSchemaDefinitionRule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LoneSchemaDefinitionRule.js","sourceRoot":"","sources":["../../../src/validation/rules/LoneSchemaDefinitionRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,qCAAoC;AA+B3D,MAAM,UAAU,wBAAwB,CACtC,OAA6B;IAE7B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACtC,MAAM,cAAc,GAClB,SAAS,EAAE,OAAO;QAClB,SAAS,EAAE,YAAY,EAAE;QACzB,SAAS,EAAE,eAAe,EAAE;QAC5B,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAEnC,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAC/B,OAAO;QACL,gBAAgB,CAAC,IAAI;YACnB,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CACd,uDAAuD,EACvD,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAC;gBACF,OAAO;YACT,CAAC;YAED,IAAI,sBAAsB,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CAAC,0CAA0C,EAAE;oBAC3D,KAAK,EAAE,IAAI;iBACZ,CAAC,CACH,CAAC;YACJ,CAAC;YACD,EAAE,sBAAsB,CAAC;QAC3B,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 { SDLValidationContext } from '../ValidationContext.ts';\n\n/**\n * Lone Schema definition\n *\n * A GraphQL document is only valid if it contains only one schema definition.\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 } from 'graphql';\n * import { LoneSchemaDefinitionRule } from 'graphql/validation';\n *\n * const invalidSDL = `\n * schema { query: Query } schema { query: Query } type Query { name: String }\n * `;\n *\n * LoneSchemaDefinitionRule.name; // => 'LoneSchemaDefinitionRule'\n * buildSchema(invalidSDL); // throws an error\n *\n * const validSDL = `\n * schema { query: Query } type Query { name: String }\n * `;\n *\n * buildSchema(validSDL); // does not throw\n * ```\n */\nexport function LoneSchemaDefinitionRule(\n context: SDLValidationContext,\n): ASTVisitor {\n const oldSchema = context.getSchema();\n const alreadyDefined =\n oldSchema?.astNode ??\n oldSchema?.getQueryType() ??\n oldSchema?.getMutationType() ??\n oldSchema?.getSubscriptionType();\n\n let schemaDefinitionsCount = 0;\n return {\n SchemaDefinition(node) {\n if (alreadyDefined) {\n context.reportError(\n new GraphQLError(\n 'Cannot define a new schema within a schema extension.',\n { nodes: node },\n ),\n );\n return;\n }\n\n if (schemaDefinitionsCount > 0) {\n context.reportError(\n new GraphQLError('Must provide only one schema definition.', {\n nodes: node,\n }),\n );\n }\n ++schemaDefinitionsCount;\n },\n };\n}\n"]}
|
|
@@ -1,3 +1,34 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
2
3
|
import type { ASTValidationContext } from "../ValidationContext.mjs";
|
|
4
|
+
/**
|
|
5
|
+
* Implements the max introspection depth validation rule.
|
|
6
|
+
* @param context - The validation context used while checking the document.
|
|
7
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
11
|
+
* import { MaxIntrospectionDepthRule } from 'graphql/validation';
|
|
12
|
+
*
|
|
13
|
+
* const schema = buildSchema(`
|
|
14
|
+
* type Query {
|
|
15
|
+
* name: String
|
|
16
|
+
* }
|
|
17
|
+
* `);
|
|
18
|
+
*
|
|
19
|
+
* const invalidDocument = parse(`
|
|
20
|
+
* { __schema { types { fields { type { fields { type { fields { name } } } } } } } }
|
|
21
|
+
* `);
|
|
22
|
+
* const invalidErrors = validate(schema, invalidDocument, [MaxIntrospectionDepthRule]);
|
|
23
|
+
*
|
|
24
|
+
* invalidErrors.length; // => 1
|
|
25
|
+
*
|
|
26
|
+
* const validDocument = parse(`
|
|
27
|
+
* { __schema { queryType { name } } }
|
|
28
|
+
* `);
|
|
29
|
+
* const validErrors = validate(schema, validDocument, [MaxIntrospectionDepthRule]);
|
|
30
|
+
*
|
|
31
|
+
* validErrors; // => []
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
3
34
|
export declare function MaxIntrospectionDepthRule(context: ASTValidationContext): ASTVisitor;
|
|
@@ -1,3 +1,34 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.js";
|
|
2
3
|
import type { ASTValidationContext } from "../ValidationContext.js";
|
|
4
|
+
/**
|
|
5
|
+
* Implements the max introspection depth validation rule.
|
|
6
|
+
* @param context - The validation context used while checking the document.
|
|
7
|
+
* @returns A visitor that reports validation errors for this rule.
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { buildSchema, parse, validate } from 'graphql';
|
|
11
|
+
* import { MaxIntrospectionDepthRule } from 'graphql/validation';
|
|
12
|
+
*
|
|
13
|
+
* const schema = buildSchema(`
|
|
14
|
+
* type Query {
|
|
15
|
+
* name: String
|
|
16
|
+
* }
|
|
17
|
+
* `);
|
|
18
|
+
*
|
|
19
|
+
* const invalidDocument = parse(`
|
|
20
|
+
* { __schema { types { fields { type { fields { type { fields { name } } } } } } } }
|
|
21
|
+
* `);
|
|
22
|
+
* const invalidErrors = validate(schema, invalidDocument, [MaxIntrospectionDepthRule]);
|
|
23
|
+
*
|
|
24
|
+
* invalidErrors.length; // => 1
|
|
25
|
+
*
|
|
26
|
+
* const validDocument = parse(`
|
|
27
|
+
* { __schema { queryType { name } } }
|
|
28
|
+
* `);
|
|
29
|
+
* const validErrors = validate(schema, validDocument, [MaxIntrospectionDepthRule]);
|
|
30
|
+
*
|
|
31
|
+
* validErrors; // => []
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
3
34
|
export declare function MaxIntrospectionDepthRule(context: ASTValidationContext): ASTVisitor;
|
|
@@ -5,27 +5,16 @@ const GraphQLError_ts_1 = require("../../error/GraphQLError.js");
|
|
|
5
5
|
const kinds_ts_1 = require("../../language/kinds.js");
|
|
6
6
|
const MAX_LISTS_DEPTH = 3;
|
|
7
7
|
function MaxIntrospectionDepthRule(context) {
|
|
8
|
-
/**
|
|
9
|
-
* Counts the depth of list fields in "__Type" recursively and
|
|
10
|
-
* returns `true` if the limit has been reached.
|
|
11
|
-
*/
|
|
12
8
|
function checkDepth(node, visitedFragments = Object.create(null), depth = 0) {
|
|
13
9
|
if (node.kind === kinds_ts_1.Kind.FRAGMENT_SPREAD) {
|
|
14
10
|
const fragmentName = node.name.value;
|
|
15
11
|
if (visitedFragments[fragmentName] === true) {
|
|
16
|
-
// Fragment cycles are handled by `NoFragmentCyclesRule`.
|
|
17
12
|
return false;
|
|
18
13
|
}
|
|
19
14
|
const fragment = context.getFragment(fragmentName);
|
|
20
15
|
if (!fragment) {
|
|
21
|
-
// Missing fragments checks are handled by `KnownFragmentNamesRule`.
|
|
22
16
|
return false;
|
|
23
17
|
}
|
|
24
|
-
// Rather than following an immutable programming pattern which has
|
|
25
|
-
// significant memory and garbage collection overhead, we've opted to
|
|
26
|
-
// take a mutable approach for efficiency's sake. Importantly visiting a
|
|
27
|
-
// fragment twice is fine, so long as you don't do one visit inside the
|
|
28
|
-
// other.
|
|
29
18
|
try {
|
|
30
19
|
visitedFragments[fragmentName] = true;
|
|
31
20
|
return checkDepth(fragment, visitedFragments, depth);
|
|
@@ -35,18 +24,15 @@ function MaxIntrospectionDepthRule(context) {
|
|
|
35
24
|
}
|
|
36
25
|
}
|
|
37
26
|
if (node.kind === kinds_ts_1.Kind.FIELD &&
|
|
38
|
-
// check all introspection lists
|
|
39
27
|
(node.name.value === 'fields' ||
|
|
40
28
|
node.name.value === 'interfaces' ||
|
|
41
29
|
node.name.value === 'possibleTypes' ||
|
|
42
30
|
node.name.value === 'inputFields')) {
|
|
43
|
-
// eslint-disable-next-line no-param-reassign
|
|
44
31
|
depth++;
|
|
45
32
|
if (depth >= MAX_LISTS_DEPTH) {
|
|
46
33
|
return true;
|
|
47
34
|
}
|
|
48
35
|
}
|
|
49
|
-
// handles fields and inline fragments
|
|
50
36
|
if ('selectionSet' in node && node.selectionSet) {
|
|
51
37
|
for (const child of node.selectionSet.selections) {
|
|
52
38
|
if (checkDepth(child, visitedFragments, depth)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaxIntrospectionDepthRule.js","sourceRoot":"","sources":["../../../src/validation/rules/MaxIntrospectionDepthRule.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"MaxIntrospectionDepthRule.js","sourceRoot":"","sources":["../../../src/validation/rules/MaxIntrospectionDepthRule.ts"],"names":[],"mappings":";;AA0CA,8DAkFC;AA1HD,iEAA2D;AAG3D,sDAA+C;AAK/C,MAAM,eAAe,GAAG,CAAC,CAAC;AAgC1B,SAAgB,yBAAyB,CACvC,OAA6B;IAQ7B,SAAS,UAAU,CACjB,IAAa,EACb,mBAEI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EACvB,QAAgB,CAAC;QAEjB,IAAI,IAAI,CAAC,IAAI,KAAK,eAAI,CAAC,eAAe,EAAE,CAAC;YACvC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACrC,IAAI,gBAAgB,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;gBAE5C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAEd,OAAO,KAAK,CAAC;YACf,CAAC;YAOD,IAAI,CAAC;gBACH,gBAAgB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;gBACtC,OAAO,UAAU,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;YACvD,CAAC;oBAAS,CAAC;gBACT,gBAAgB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,IACE,IAAI,CAAC,IAAI,KAAK,eAAI,CAAC,KAAK;YAExB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ;gBAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY;gBAChC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,eAAe;gBACnC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,EACpC,CAAC;YAED,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,IAAI,eAAe,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAGD,IAAI,cAAc,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAChD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;gBACjD,IAAI,UAAU,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC/C,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;QACL,KAAK,CAAC,IAAI;YACR,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACnE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,WAAW,CACjB,IAAI,8BAAY,CAAC,sCAAsC,EAAE;wBACvD,KAAK,EAAE,CAAC,IAAI,CAAC;qBACd,CAAC,CACH,CAAC;oBACF,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTNode } from '../../language/ast.ts';\nimport { Kind } from '../../language/kinds.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ASTValidationContext } from '../ValidationContext.ts';\n\nconst MAX_LISTS_DEPTH = 3;\n\n/**\n * Implements the max introspection depth validation rule.\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 { MaxIntrospectionDepthRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * { __schema { types { fields { type { fields { type { fields { name } } } } } } } }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [MaxIntrospectionDepthRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * { __schema { queryType { name } } }\n * `);\n * const validErrors = validate(schema, validDocument, [MaxIntrospectionDepthRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function MaxIntrospectionDepthRule(\n context: ASTValidationContext,\n): ASTVisitor {\n /**\n * Counts the depth of list fields in \"__Type\" recursively and\n * returns `true` if the limit has been reached.\n *\n * @internal\n */\n function checkDepth(\n node: ASTNode,\n visitedFragments: {\n [fragmentName: string]: true | undefined;\n } = Object.create(null),\n depth: number = 0,\n ): boolean {\n if (node.kind === Kind.FRAGMENT_SPREAD) {\n const fragmentName = node.name.value;\n if (visitedFragments[fragmentName] === true) {\n // Fragment cycles are handled by `NoFragmentCyclesRule`.\n return false;\n }\n const fragment = context.getFragment(fragmentName);\n if (!fragment) {\n // Missing fragments checks are handled by `KnownFragmentNamesRule`.\n return false;\n }\n\n // Rather than following an immutable programming pattern which has\n // significant memory and garbage collection overhead, we've opted to\n // take a mutable approach for efficiency's sake. Importantly visiting a\n // fragment twice is fine, so long as you don't do one visit inside the\n // other.\n try {\n visitedFragments[fragmentName] = true;\n return checkDepth(fragment, visitedFragments, depth);\n } finally {\n visitedFragments[fragmentName] = undefined;\n }\n }\n\n if (\n node.kind === Kind.FIELD &&\n // check all introspection lists\n (node.name.value === 'fields' ||\n node.name.value === 'interfaces' ||\n node.name.value === 'possibleTypes' ||\n node.name.value === 'inputFields')\n ) {\n // eslint-disable-next-line no-param-reassign\n depth++;\n if (depth >= MAX_LISTS_DEPTH) {\n return true;\n }\n }\n\n // handles fields and inline fragments\n if ('selectionSet' in node && node.selectionSet) {\n for (const child of node.selectionSet.selections) {\n if (checkDepth(child, visitedFragments, depth)) {\n return true;\n }\n }\n }\n\n return false;\n }\n\n return {\n Field(node) {\n if (node.name.value === '__schema' || node.name.value === '__type') {\n if (checkDepth(node)) {\n context.reportError(\n new GraphQLError('Maximum introspection depth exceeded', {\n nodes: [node],\n }),\n );\n return false;\n }\n }\n },\n };\n}\n"]}
|
|
@@ -2,27 +2,16 @@ import { GraphQLError } from "../../error/GraphQLError.mjs";
|
|
|
2
2
|
import { Kind } from "../../language/kinds.mjs";
|
|
3
3
|
const MAX_LISTS_DEPTH = 3;
|
|
4
4
|
export function MaxIntrospectionDepthRule(context) {
|
|
5
|
-
/**
|
|
6
|
-
* Counts the depth of list fields in "__Type" recursively and
|
|
7
|
-
* returns `true` if the limit has been reached.
|
|
8
|
-
*/
|
|
9
5
|
function checkDepth(node, visitedFragments = Object.create(null), depth = 0) {
|
|
10
6
|
if (node.kind === Kind.FRAGMENT_SPREAD) {
|
|
11
7
|
const fragmentName = node.name.value;
|
|
12
8
|
if (visitedFragments[fragmentName] === true) {
|
|
13
|
-
// Fragment cycles are handled by `NoFragmentCyclesRule`.
|
|
14
9
|
return false;
|
|
15
10
|
}
|
|
16
11
|
const fragment = context.getFragment(fragmentName);
|
|
17
12
|
if (!fragment) {
|
|
18
|
-
// Missing fragments checks are handled by `KnownFragmentNamesRule`.
|
|
19
13
|
return false;
|
|
20
14
|
}
|
|
21
|
-
// Rather than following an immutable programming pattern which has
|
|
22
|
-
// significant memory and garbage collection overhead, we've opted to
|
|
23
|
-
// take a mutable approach for efficiency's sake. Importantly visiting a
|
|
24
|
-
// fragment twice is fine, so long as you don't do one visit inside the
|
|
25
|
-
// other.
|
|
26
15
|
try {
|
|
27
16
|
visitedFragments[fragmentName] = true;
|
|
28
17
|
return checkDepth(fragment, visitedFragments, depth);
|
|
@@ -32,18 +21,15 @@ export function MaxIntrospectionDepthRule(context) {
|
|
|
32
21
|
}
|
|
33
22
|
}
|
|
34
23
|
if (node.kind === Kind.FIELD &&
|
|
35
|
-
// check all introspection lists
|
|
36
24
|
(node.name.value === 'fields' ||
|
|
37
25
|
node.name.value === 'interfaces' ||
|
|
38
26
|
node.name.value === 'possibleTypes' ||
|
|
39
27
|
node.name.value === 'inputFields')) {
|
|
40
|
-
// eslint-disable-next-line no-param-reassign
|
|
41
28
|
depth++;
|
|
42
29
|
if (depth >= MAX_LISTS_DEPTH) {
|
|
43
30
|
return true;
|
|
44
31
|
}
|
|
45
32
|
}
|
|
46
|
-
// handles fields and inline fragments
|
|
47
33
|
if ('selectionSet' in node && node.selectionSet) {
|
|
48
34
|
for (const child of node.selectionSet.selections) {
|
|
49
35
|
if (checkDepth(child, visitedFragments, depth)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaxIntrospectionDepthRule.js","sourceRoot":"","sources":["../../../src/validation/rules/MaxIntrospectionDepthRule.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MaxIntrospectionDepthRule.js","sourceRoot":"","sources":["../../../src/validation/rules/MaxIntrospectionDepthRule.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,qCAAoC;AAG3D,OAAO,EAAE,IAAI,EAAE,iCAAgC;AAK/C,MAAM,eAAe,GAAG,CAAC,CAAC;AAgC1B,MAAM,UAAU,yBAAyB,CACvC,OAA6B;IAQ7B,SAAS,UAAU,CACjB,IAAa,EACb,mBAEI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EACvB,QAAgB,CAAC;QAEjB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YACvC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YACrC,IAAI,gBAAgB,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;gBAE5C,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAEd,OAAO,KAAK,CAAC;YACf,CAAC;YAOD,IAAI,CAAC;gBACH,gBAAgB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;gBACtC,OAAO,UAAU,CAAC,QAAQ,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;YACvD,CAAC;oBAAS,CAAC;gBACT,gBAAgB,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,IACE,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK;YAExB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ;gBAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,YAAY;gBAChC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,eAAe;gBACnC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,aAAa,CAAC,EACpC,CAAC;YAED,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,IAAI,eAAe,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAGD,IAAI,cAAc,IAAI,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAChD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;gBACjD,IAAI,UAAU,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC/C,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;QACL,KAAK,CAAC,IAAI;YACR,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACnE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrB,OAAO,CAAC,WAAW,CACjB,IAAI,YAAY,CAAC,sCAAsC,EAAE;wBACvD,KAAK,EAAE,CAAC,IAAI,CAAC;qBACd,CAAC,CACH,CAAC;oBACF,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["/** @category Validation Rules */\n\nimport { GraphQLError } from '../../error/GraphQLError.ts';\n\nimport type { ASTNode } from '../../language/ast.ts';\nimport { Kind } from '../../language/kinds.ts';\nimport type { ASTVisitor } from '../../language/visitor.ts';\n\nimport type { ASTValidationContext } from '../ValidationContext.ts';\n\nconst MAX_LISTS_DEPTH = 3;\n\n/**\n * Implements the max introspection depth validation rule.\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 { MaxIntrospectionDepthRule } from 'graphql/validation';\n *\n * const schema = buildSchema(`\n * type Query {\n * name: String\n * }\n * `);\n *\n * const invalidDocument = parse(`\n * { __schema { types { fields { type { fields { type { fields { name } } } } } } } }\n * `);\n * const invalidErrors = validate(schema, invalidDocument, [MaxIntrospectionDepthRule]);\n *\n * invalidErrors.length; // => 1\n *\n * const validDocument = parse(`\n * { __schema { queryType { name } } }\n * `);\n * const validErrors = validate(schema, validDocument, [MaxIntrospectionDepthRule]);\n *\n * validErrors; // => []\n * ```\n */\nexport function MaxIntrospectionDepthRule(\n context: ASTValidationContext,\n): ASTVisitor {\n /**\n * Counts the depth of list fields in \"__Type\" recursively and\n * returns `true` if the limit has been reached.\n *\n * @internal\n */\n function checkDepth(\n node: ASTNode,\n visitedFragments: {\n [fragmentName: string]: true | undefined;\n } = Object.create(null),\n depth: number = 0,\n ): boolean {\n if (node.kind === Kind.FRAGMENT_SPREAD) {\n const fragmentName = node.name.value;\n if (visitedFragments[fragmentName] === true) {\n // Fragment cycles are handled by `NoFragmentCyclesRule`.\n return false;\n }\n const fragment = context.getFragment(fragmentName);\n if (!fragment) {\n // Missing fragments checks are handled by `KnownFragmentNamesRule`.\n return false;\n }\n\n // Rather than following an immutable programming pattern which has\n // significant memory and garbage collection overhead, we've opted to\n // take a mutable approach for efficiency's sake. Importantly visiting a\n // fragment twice is fine, so long as you don't do one visit inside the\n // other.\n try {\n visitedFragments[fragmentName] = true;\n return checkDepth(fragment, visitedFragments, depth);\n } finally {\n visitedFragments[fragmentName] = undefined;\n }\n }\n\n if (\n node.kind === Kind.FIELD &&\n // check all introspection lists\n (node.name.value === 'fields' ||\n node.name.value === 'interfaces' ||\n node.name.value === 'possibleTypes' ||\n node.name.value === 'inputFields')\n ) {\n // eslint-disable-next-line no-param-reassign\n depth++;\n if (depth >= MAX_LISTS_DEPTH) {\n return true;\n }\n }\n\n // handles fields and inline fragments\n if ('selectionSet' in node && node.selectionSet) {\n for (const child of node.selectionSet.selections) {\n if (checkDepth(child, visitedFragments, depth)) {\n return true;\n }\n }\n }\n\n return false;\n }\n\n return {\n Field(node) {\n if (node.name.value === '__schema' || node.name.value === '__type') {\n if (checkDepth(node)) {\n context.reportError(\n new GraphQLError('Maximum introspection depth exceeded', {\n nodes: [node],\n }),\n );\n return false;\n }\n }\n },\n };\n}\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.mjs";
|
|
2
3
|
import type { ASTValidationContext } from "../ValidationContext.mjs";
|
|
3
4
|
/**
|
|
@@ -7,5 +8,32 @@ import type { ASTValidationContext } from "../ValidationContext.mjs";
|
|
|
7
8
|
* Otherwise an operation could infinitely spread or infinitely execute on cycles in the underlying data.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Fragment-spreads-must-not-form-cycles
|
|
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 { NoFragmentCyclesRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* fragment A on Query { ...B } fragment B on Query { ...A } query { ...A }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [NoFragmentCyclesRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* fragment A on Query { name } query { ...A }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [NoFragmentCyclesRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function NoFragmentCyclesRule(context: ASTValidationContext): ASTVisitor;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** @category Validation Rules */
|
|
1
2
|
import type { ASTVisitor } from "../../language/visitor.js";
|
|
2
3
|
import type { ASTValidationContext } from "../ValidationContext.js";
|
|
3
4
|
/**
|
|
@@ -7,5 +8,32 @@ import type { ASTValidationContext } from "../ValidationContext.js";
|
|
|
7
8
|
* Otherwise an operation could infinitely spread or infinitely execute on cycles in the underlying data.
|
|
8
9
|
*
|
|
9
10
|
* See https://spec.graphql.org/draft/#sec-Fragment-spreads-must-not-form-cycles
|
|
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 { NoFragmentCyclesRule } from 'graphql/validation';
|
|
17
|
+
*
|
|
18
|
+
* const schema = buildSchema(`
|
|
19
|
+
* type Query {
|
|
20
|
+
* name: String
|
|
21
|
+
* }
|
|
22
|
+
* `);
|
|
23
|
+
*
|
|
24
|
+
* const invalidDocument = parse(`
|
|
25
|
+
* fragment A on Query { ...B } fragment B on Query { ...A } query { ...A }
|
|
26
|
+
* `);
|
|
27
|
+
* const invalidErrors = validate(schema, invalidDocument, [NoFragmentCyclesRule]);
|
|
28
|
+
*
|
|
29
|
+
* invalidErrors.length; // => 1
|
|
30
|
+
*
|
|
31
|
+
* const validDocument = parse(`
|
|
32
|
+
* fragment A on Query { name } query { ...A }
|
|
33
|
+
* `);
|
|
34
|
+
* const validErrors = validate(schema, validDocument, [NoFragmentCyclesRule]);
|
|
35
|
+
*
|
|
36
|
+
* validErrors; // => []
|
|
37
|
+
* ```
|
|
10
38
|
*/
|
|
11
39
|
export declare function NoFragmentCyclesRule(context: ASTValidationContext): ASTVisitor;
|