UNPKG

blips

Version:

State management for the GraphQL heads

31 lines (22 loc) 912 B
import { getOperationASTs } from './getOperationASTs'; import { loneAnonymousOperation, uniqueFragmentNames, singleFieldSubscriptions } from './rules'; export function validateWithoutSchema(document) { var operationCount = getOperationASTs(document).length; var knownFragmentNames = Object.create(null); var errors = []; for (var _iterator = document.definitions, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) { var _ref; if (_isArray) { if (_i >= _iterator.length) break; _ref = _iterator[_i++]; } else { _i = _iterator.next(); if (_i.done) break; _ref = _i.value; } var node = _ref; var err = loneAnonymousOperation(node, operationCount) || uniqueFragmentNames(node, knownFragmentNames) || singleFieldSubscriptions(node); err && errors.push(err); } return errors; }