123456789101112131415161718192021222324 |
- import { GraphQLError } from "../../error/GraphQLError.mjs";
- import { Kind } from "../../language/kinds.mjs";
- /**
- * Lone anonymous operation
- *
- * A GraphQL document is only valid if when it contains an anonymous operation
- * (the query short-hand) that it contains only that one operation definition.
- */
- export function LoneAnonymousOperationRule(context) {
- var operationCount = 0;
- return {
- Document: function Document(node) {
- operationCount = node.definitions.filter(function (definition) {
- return definition.kind === Kind.OPERATION_DEFINITION;
- }).length;
- },
- OperationDefinition: function OperationDefinition(node) {
- if (!node.name && operationCount > 1) {
- context.reportError(new GraphQLError('This anonymous operation must be the only defined operation.', node));
- }
- }
- };
- }
|