1234567891011121314151617181920212223242526272829303132333435363738 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.anonOperationNotAloneMessage = anonOperationNotAloneMessage;
- exports.LoneAnonymousOperation = LoneAnonymousOperation;
- var _GraphQLError = require("../../error/GraphQLError");
- var _kinds = require("../../language/kinds");
- function anonOperationNotAloneMessage() {
- return 'This anonymous operation must be the only defined operation.';
- }
- /**
- * 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.
- */
- function LoneAnonymousOperation(context) {
- var operationCount = 0;
- return {
- Document: function Document(node) {
- operationCount = node.definitions.filter(function (definition) {
- return definition.kind === _kinds.Kind.OPERATION_DEFINITION;
- }).length;
- },
- OperationDefinition: function OperationDefinition(node) {
- if (!node.name && operationCount > 1) {
- context.reportError(new _GraphQLError.GraphQLError(anonOperationNotAloneMessage(), node));
- }
- }
- };
- }
|