"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.getOperationAST=getOperationAST;var_kinds=require("../language/kinds");/** * Returns an operation AST given a document AST and optionally an operation * name. If a name is not provided, an operation is only returned if only one is * provided in the document. */functiongetOperationAST(documentAST,operationName){varoperation=null;for(var_i2=0,_documentAST$definiti2=documentAST.definitions;_i2<_documentAST$definiti2.length;_i2++){vardefinition=_documentAST$definiti2[_i2];if(definition.kind===_kinds.Kind.OPERATION_DEFINITION){if(!operationName){// If no operation name was provided, only return an Operation if there// is one defined in the document. Upon encountering the second, return// null.if(operation){returnnull;}operation=definition;}elseif(definition.name&&definition.name.value===operationName){returndefinition;}}}returnoperation;}