diff options
Diffstat (limited to 'alarm/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js.flow')
-rw-r--r-- | alarm/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js.flow | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/alarm/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js.flow b/alarm/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js.flow deleted file mode 100644 index 420a2a0..0000000 --- a/alarm/node_modules/graphql/validation/rules/LoneSchemaDefinitionRule.js.flow +++ /dev/null @@ -1,43 +0,0 @@ -// @flow strict -import { GraphQLError } from '../../error/GraphQLError'; -import type { ASTVisitor } from '../../language/visitor'; - -import type { SDLValidationContext } from '../ValidationContext'; - -/** - * Lone Schema definition - * - * A GraphQL document is only valid if it contains only one schema definition. - */ -export function LoneSchemaDefinitionRule( - context: SDLValidationContext, -): ASTVisitor { - const oldSchema = context.getSchema(); - const alreadyDefined = - oldSchema?.astNode ?? - oldSchema?.getQueryType() ?? - oldSchema?.getMutationType() ?? - oldSchema?.getSubscriptionType(); - - let schemaDefinitionsCount = 0; - return { - SchemaDefinition(node) { - if (alreadyDefined) { - context.reportError( - new GraphQLError( - 'Cannot define a new schema within a schema extension.', - node, - ), - ); - return; - } - - if (schemaDefinitionsCount > 0) { - context.reportError( - new GraphQLError('Must provide only one schema definition.', node), - ); - } - ++schemaDefinitionsCount; - }, - }; -} |