getOperationASTFromRequest.js 518 B

123456789101112
  1. import { getOperationAST } from 'graphql';
  2. import { memoize1 } from './memoize.js';
  3. export function getOperationASTFromDocument(documentNode, operationName) {
  4. const doc = getOperationAST(documentNode, operationName);
  5. if (!doc) {
  6. throw new Error(`Cannot infer operation ${operationName || ''}`);
  7. }
  8. return doc;
  9. }
  10. export const getOperationASTFromRequest = memoize1(function getOperationASTFromRequest(request) {
  11. return getOperationASTFromDocument(request.document, request.operationName);
  12. });