!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e.prettierPlugins=e.prettierPlugins||{},e.prettierPlugins.graphql=n())}(this,function(){"use strict";function e(n){return(e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(n)}var n=function(e,n){var t=new SyntaxError(e+" ("+n.start.line+":"+n.start.column+")");return t.loc=n,t};var t=function(e){return/^\s*#[^\n\S]*@(format|prettier)\s*(\n|$)/.test(e)};function r(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function i(e,n){return e(n={exports:{}},n.exports),n.exports}var o=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.getLocation=function(e,n){var t,r=/\r\n|[\n\r]/g,i=1,o=n+1;for(;(t=r.exec(e.body))&&t.index1&&void 0!==arguments[1]?arguments[1]:e.prototype.toString;e.prototype.toJSON=n,e.prototype.inspect=n,r.default&&(e.prototype[r.default]=n)};var t,r=(t=c)&&t.__esModule?t:{default:t}});r(u);var d=i(function(e,n){function t(e,n){var t=e.locationOffset.column-1,i=r(t)+e.body,o=n.line-1,a=e.locationOffset.line-1,c=n.line+a,u=1===n.line?t:0,d=n.column+u,s=i.split(/\r\n|[\n\r]/g);return"".concat(e.name," (").concat(c,":").concat(d,")\n")+function(e){var n=e.filter(function(e){e[0];var n=e[1];return void 0!==n}),t=0,i=!0,o=!1,a=void 0;try{for(var c,u=n[Symbol.iterator]();!(i=(c=u.next()).done);i=!0){var d=c.value,s=d[0];t=Math.max(t,s.length)}}catch(e){o=!0,a=e}finally{try{i||null==u.return||u.return()}finally{if(o)throw a}}return n.map(function(e){var n,i=e[0],o=e[1];return r(t-(n=i).length)+n+o}).join("\n")}([["".concat(c-1,": "),s[o-1]],["".concat(c,": "),s[o]],["",r(d-1)+"^"],["".concat(c+1,": "),s[o+1]]])}function r(e){return Array(e+1).join(" ")}Object.defineProperty(n,"__esModule",{value:!0}),n.printError=function(e){var n=[];if(e.nodes){var r=!0,i=!1,a=void 0;try{for(var c,u=e.nodes[Symbol.iterator]();!(r=(c=u.next()).done);r=!0){var d=c.value;d.loc&&n.push(t(d.loc.source,(0,o.getLocation)(d.loc.source,d.loc.start)))}}catch(e){i=!0,a=e}finally{try{r||null==u.return||u.return()}finally{if(i)throw a}}}else if(e.source&&e.locations){var s=e.source,l=!0,f=!1,v=void 0;try{for(var E,T=e.locations[Symbol.iterator]();!(l=(E=T.next()).done);l=!0){var p=E.value;n.push(t(s,p))}}catch(e){f=!0,v=e}finally{try{l||null==T.return||T.return()}finally{if(f)throw v}}}return 0===n.length?e.message:[e.message].concat(n).join("\n\n")+"\n"}});r(d);var s=i(function(e,n){function t(e,n,r,i,a,c,u){var d=Array.isArray(n)?0!==n.length?n:void 0:n?[n]:void 0,s=r;if(!s&&d){var l=d[0];s=l&&l.loc&&l.loc.source}var f,v=i;!v&&d&&(v=d.reduce(function(e,n){return n.loc&&e.push(n.loc.start),e},[])),v&&0===v.length&&(v=void 0),i&&r?f=i.map(function(e){return(0,o.getLocation)(r,e)}):d&&(f=d.reduce(function(e,n){return n.loc&&e.push((0,o.getLocation)(n.loc.source,n.loc.start)),e},[]));var E=u||c&&c.extensions;Object.defineProperties(this,{message:{value:e,enumerable:!0,writable:!0},locations:{value:f||void 0,enumerable:Boolean(f)},path:{value:a||void 0,enumerable:Boolean(a)},nodes:{value:d||void 0},source:{value:s||void 0},positions:{value:v||void 0},originalError:{value:c},extensions:{value:E||void 0,enumerable:Boolean(E)}}),c&&c.stack?Object.defineProperty(this,"stack",{value:c.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,t):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}Object.defineProperty(n,"__esModule",{value:!0}),n.GraphQLError=t,t.prototype=Object.create(Error.prototype,{constructor:{value:t},name:{value:"GraphQLError"},toString:{value:function(){return(0,d.printError)(this)}}})});r(s);var l=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.syntaxError=function(e,n,t){return new s.GraphQLError("Syntax Error: ".concat(t),void 0,e,[n])}});r(l);var f=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.locatedError=function(e,n,t){if(e&&Array.isArray(e.path))return e;return new s.GraphQLError(e&&e.message,e&&e.nodes||n,e&&e.source,e&&e.positions,t,e)}});r(f);var v=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,n){if(!e)throw new Error(n)}});r(v);var E=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.formatError=function(e){e||(0,r.default)(0,"Received null or undefined error.");var n=e.message||"An unknown error occurred.",t=e.locations,i=e.path,o=e.extensions;return o?{message:n,locations:t,path:i,extensions:o}:{message:n,locations:t,path:i}};var t,r=(t=v)&&t.__esModule?t:{default:t}});r(E);var T=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"GraphQLError",{enumerable:!0,get:function(){return s.GraphQLError}}),Object.defineProperty(n,"syntaxError",{enumerable:!0,get:function(){return l.syntaxError}}),Object.defineProperty(n,"locatedError",{enumerable:!0,get:function(){return f.locatedError}}),Object.defineProperty(n,"printError",{enumerable:!0,get:function(){return d.printError}}),Object.defineProperty(n,"formatError",{enumerable:!0,get:function(){return E.formatError}})});r(T);var p=i(function(e,n){function t(e){for(var n=0;n0&&r(n[0]);)n.shift();for(;n.length>0&&r(n[n.length-1]);)n.pop();return n.join("\n")},n.printBlockString=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",t=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=-1===e.indexOf("\n"),i=" "===e[0]||"\t"===e[0],o='"'===e[e.length-1],a=!r||o||t,c="";!a||r&&i||(c+="\n"+n);c+=n?e.replace(/\n/g,"\n"+n):e,a&&(c+="\n");return'"""'+c.replace(/"""/g,'\\"""')+'"""'}});r(p);var N=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.createLexer=function(e,n){var t=new c(a.SOF,0,0,0,0,null);return{source:e,options:n,lastToken:t,token:t,line:1,lineStart:0,advance:i,lookahead:o}},n.getTokenDesc=function(e){var n=e.value;return n?"".concat(e.kind,' "').concat(n,'"'):e.kind},n.TokenKind=void 0;var t,r=(t=u)&&t.__esModule?t:{default:t};function i(){return this.lastToken=this.token,this.token=this.lookahead()}function o(){var e=this.token;if(e.kind!==a.EOF)do{e=e.next||(e.next=s(this,e))}while(e.kind===a.COMMENT);return e}var a=Object.freeze({SOF:"",EOF:"",BANG:"!",DOLLAR:"$",AMP:"&",PAREN_L:"(",PAREN_R:")",SPREAD:"...",COLON:":",EQUALS:"=",AT:"@",BRACKET_L:"[",BRACKET_R:"]",BRACE_L:"{",PIPE:"|",BRACE_R:"}",NAME:"Name",INT:"Int",FLOAT:"Float",STRING:"String",BLOCK_STRING:"BlockString",COMMENT:"Comment"});function c(e,n,t,r,i,o,a){this.kind=e,this.start=n,this.end=t,this.line=r,this.column=i,this.value=a,this.prev=o,this.next=null}function d(e){return isNaN(e)?a.EOF:e<127?JSON.stringify(String.fromCharCode(e)):'"\\u'.concat(("00"+e.toString(16).toUpperCase()).slice(-4),'"')}function s(e,n){var t=e.source,r=t.body,i=r.length,o=function(e,n,t){var r=e.length,i=n;for(;i=i)return new c(a.EOF,i,i,u,s,n);var v=r.charCodeAt(o);switch(v){case 33:return new c(a.BANG,o,o+1,u,s,n);case 35:return function(e,n,t,r,i){var o,u=e.body,d=n;do{o=u.charCodeAt(++d)}while(!isNaN(o)&&(o>31||9===o));return new c(a.COMMENT,n,d,t,r,i,u.slice(n+1,d))}(t,o,u,s,n);case 36:return new c(a.DOLLAR,o,o+1,u,s,n);case 38:return new c(a.AMP,o,o+1,u,s,n);case 40:return new c(a.PAREN_L,o,o+1,u,s,n);case 41:return new c(a.PAREN_R,o,o+1,u,s,n);case 46:if(46===r.charCodeAt(o+1)&&46===r.charCodeAt(o+2))return new c(a.SPREAD,o,o+3,u,s,n);break;case 58:return new c(a.COLON,o,o+1,u,s,n);case 61:return new c(a.EQUALS,o,o+1,u,s,n);case 64:return new c(a.AT,o,o+1,u,s,n);case 91:return new c(a.BRACKET_L,o,o+1,u,s,n);case 93:return new c(a.BRACKET_R,o,o+1,u,s,n);case 123:return new c(a.BRACE_L,o,o+1,u,s,n);case 124:return new c(a.PIPE,o,o+1,u,s,n);case 125:return new c(a.BRACE_R,o,o+1,u,s,n);case 65:case 66:case 67:case 68:case 69:case 70:case 71:case 72:case 73:case 74:case 75:case 76:case 77:case 78:case 79:case 80:case 81:case 82:case 83:case 84:case 85:case 86:case 87:case 88:case 89:case 90:case 95:case 97:case 98:case 99:case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:case 108:case 109:case 110:case 111:case 112:case 113:case 114:case 115:case 116:case 117:case 118:case 119:case 120:case 121:case 122:return function(e,n,t,r,i){var o=e.body,u=o.length,d=n+1,s=0;for(;d!==u&&!isNaN(s=o.charCodeAt(d))&&(95===s||s>=48&&s<=57||s>=65&&s<=90||s>=97&&s<=122);)++d;return new c(a.NAME,n,d,t,r,i,o.slice(n,d))}(t,o,u,s,n);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return function(e,n,t,r,i,o){var u=e.body,s=t,f=n,v=!1;45===s&&(s=u.charCodeAt(++f));if(48===s){if((s=u.charCodeAt(++f))>=48&&s<=57)throw(0,T.syntaxError)(e,f,"Invalid number, unexpected digit after 0: ".concat(d(s),"."))}else f=l(e,f,s),s=u.charCodeAt(f);46===s&&(v=!0,s=u.charCodeAt(++f),f=l(e,f,s),s=u.charCodeAt(f));69!==s&&101!==s||(v=!0,43!==(s=u.charCodeAt(++f))&&45!==s||(s=u.charCodeAt(++f)),f=l(e,f,s));return new c(v?a.FLOAT:a.INT,n,f,r,i,o,u.slice(n,f))}(t,o,v,u,s,n);case 34:return 34===r.charCodeAt(o+1)&&34===r.charCodeAt(o+2)?function(e,n,t,r,i,o){var u=e.body,s=n+3,l=s,f=0,v="";for(;s=48&&o<=57){do{o=r.charCodeAt(++i)}while(o>=48&&o<=57);return i}throw(0,T.syntaxError)(e,i,"Invalid number, expected digit but got: ".concat(d(o),"."))}function f(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}n.TokenKind=a,(0,r.default)(c,function(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}})});r(N);var I=i(function(n,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return d(e,[])};var r,i=(r=c)&&r.__esModule?r:{default:r};function o(n){return(o="function"==typeof Symbol&&"symbol"===e(Symbol.iterator)?function(n){return e(n)}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":e(n)})(n)}var a=10,u=2;function d(e,n){switch(o(e)){case"string":return JSON.stringify(e);case"function":return e.name?"[function ".concat(e.name,"]"):"[function]";case"object":return function(e,n){if(-1!==n.indexOf(e))return"[Circular]";var t=[].concat(n,[e]);if(e){var r=function(e){var n=e[String(i.default)];if("function"==typeof n)return n;if("function"==typeof e.inspect)return e.inspect}(e);if(r){var o=r.call(e);if(o!==e)return"string"==typeof o?o:d(o,t)}else if(Array.isArray(e))return function(e,n){if(0===e.length)return"[]";if(n.length>u)return"[Array]";for(var t=Math.min(a,e.length),r=e.length-t,i=[],o=0;o1&&i.push("... ".concat(r," more items"));return"["+i.join(", ")+"]"}(e,t);return function(e,n){var t=Object.keys(e);if(0===t.length)return"{}";if(n.length>u)return"["+function(e){var n=Object.prototype.toString.call(e).replace(/^\[object /,"").replace(/]$/,"");if("Object"===n&&"function"==typeof e.constructor){var t=e.constructor.name;if("string"==typeof t)return t}return n}(e)+"]";return"{ "+t.map(function(t){var r=d(e[t],n);return t+": "+r}).join(", ")+" }"}(e,t)}return String(e)}(e,n);default:return String(e)}}});r(I);var y=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e){"function"==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e.prototype,Symbol.toStringTag,{get:function(){return this.constructor.name}})}});r(y);var m=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.Source=void 0;var t=i(v),r=i(y);function i(e){return e&&e.__esModule?e:{default:e}}var o=function(e,n,r){this.body=e,this.name=n||"GraphQL request",this.locationOffset=r||{line:1,column:1},this.locationOffset.line>0||(0,t.default)(0,"line in locationOffset is 1-indexed and must be positive"),this.locationOffset.column>0||(0,t.default)(0,"column in locationOffset is 1-indexed and must be positive")};n.Source=o,(0,r.default)(o)});r(m);var k=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.DirectiveLocation=void 0;var t=Object.freeze({QUERY:"QUERY",MUTATION:"MUTATION",SUBSCRIPTION:"SUBSCRIPTION",FIELD:"FIELD",FRAGMENT_DEFINITION:"FRAGMENT_DEFINITION",FRAGMENT_SPREAD:"FRAGMENT_SPREAD",INLINE_FRAGMENT:"INLINE_FRAGMENT",VARIABLE_DEFINITION:"VARIABLE_DEFINITION",SCHEMA:"SCHEMA",SCALAR:"SCALAR",OBJECT:"OBJECT",FIELD_DEFINITION:"FIELD_DEFINITION",ARGUMENT_DEFINITION:"ARGUMENT_DEFINITION",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",ENUM_VALUE:"ENUM_VALUE",INPUT_OBJECT:"INPUT_OBJECT",INPUT_FIELD_DEFINITION:"INPUT_FIELD_DEFINITION"});n.DirectiveLocation=t});r(k);var O=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.parse=function(e,n){var r="string"==typeof e?new m.Source(e):e;if(!(r instanceof m.Source))throw new TypeError("Must provide Source. Received: ".concat((0,t.default)(r)));return function(e){var n=e.token;return{kind:a.Kind.DOCUMENT,definitions:te(e,N.TokenKind.SOF,o,N.TokenKind.EOF),loc:Q(e,n)}}((0,N.createLexer)(r,n||{}))},n.parseValue=function(e,n){var t="string"==typeof e?new m.Source(e):e,r=(0,N.createLexer)(t,n||{});$(r,N.TokenKind.SOF);var i=A(r,!1);return $(r,N.TokenKind.EOF),i},n.parseType=function(e,n){var t="string"==typeof e?new m.Source(e):e,r=(0,N.createLexer)(t,n||{});$(r,N.TokenKind.SOF);var i=P(r);return $(r,N.TokenKind.EOF),i},n.parseConstValue=g,n.parseTypeReference=P,n.parseNamedType=L;var t=r(I);function r(e){return e&&e.__esModule?e:{default:e}}function i(e){var n=$(e,N.TokenKind.NAME);return{kind:a.Kind.NAME,value:n.value,loc:Q(e,n)}}function o(e){if(H(e,N.TokenKind.NAME))switch(e.token.value){case"query":case"mutation":case"subscription":case"fragment":return c(e);case"schema":case"scalar":case"type":case"interface":case"union":case"enum":case"input":case"directive":return C(e);case"extend":return function(e){var n=e.lookahead();if(n.kind===N.TokenKind.NAME)switch(n.value){case"schema":return function(e){var n=e.token;W(e,"extend"),W(e,"schema");var t=K(e,!0),r=H(e,N.TokenKind.BRACE_L)?te(e,N.TokenKind.BRACE_L,M,N.TokenKind.BRACE_R):[];if(0===t.length&&0===r.length)throw ee(e);return{kind:a.Kind.SCHEMA_EXTENSION,directives:t,operationTypes:r,loc:Q(e,n)}}(e);case"scalar":return function(e){var n=e.token;W(e,"extend"),W(e,"scalar");var t=i(e),r=K(e,!0);if(0===r.length)throw ee(e);return{kind:a.Kind.SCALAR_TYPE_EXTENSION,name:t,directives:r,loc:Q(e,n)}}(e);case"type":return function(e){var n=e.token;W(e,"extend"),W(e,"type");var t=i(e),r=x(e),o=K(e,!0),c=j(e);if(0===r.length&&0===o.length&&0===c.length)throw ee(e);return{kind:a.Kind.OBJECT_TYPE_EXTENSION,name:t,interfaces:r,directives:o,fields:c,loc:Q(e,n)}}(e);case"interface":return function(e){var n=e.token;W(e,"extend"),W(e,"interface");var t=i(e),r=K(e,!0),o=j(e);if(0===r.length&&0===o.length)throw ee(e);return{kind:a.Kind.INTERFACE_TYPE_EXTENSION,name:t,directives:r,fields:o,loc:Q(e,n)}}(e);case"union":return function(e){var n=e.token;W(e,"extend"),W(e,"union");var t=i(e),r=K(e,!0),o=V(e);if(0===r.length&&0===o.length)throw ee(e);return{kind:a.Kind.UNION_TYPE_EXTENSION,name:t,directives:r,types:o,loc:Q(e,n)}}(e);case"enum":return function(e){var n=e.token;W(e,"extend"),W(e,"enum");var t=i(e),r=K(e,!0),o=Y(e);if(0===r.length&&0===o.length)throw ee(e);return{kind:a.Kind.ENUM_TYPE_EXTENSION,name:t,directives:r,values:o,loc:Q(e,n)}}(e);case"input":return function(e){var n=e.token;W(e,"extend"),W(e,"input");var t=i(e),r=K(e,!0),o=J(e);if(0===r.length&&0===o.length)throw ee(e);return{kind:a.Kind.INPUT_OBJECT_TYPE_EXTENSION,name:t,directives:r,fields:o,loc:Q(e,n)}}(e)}throw ee(e,n)}(e)}else{if(H(e,N.TokenKind.BRACE_L))return c(e);if(R(e))return C(e)}throw ee(e)}function c(e){if(H(e,N.TokenKind.NAME))switch(e.token.value){case"query":case"mutation":case"subscription":return d(e);case"fragment":return function(e){var n=e.token;if(W(e,"fragment"),e.options.experimentalFragmentVariables)return{kind:a.Kind.FRAGMENT_DEFINITION,name:h(e),variableDefinitions:l(e),typeCondition:(W(e,"on"),L(e)),directives:K(e,!1),selectionSet:E(e),loc:Q(e,n)};return{kind:a.Kind.FRAGMENT_DEFINITION,name:h(e),typeCondition:(W(e,"on"),L(e)),directives:K(e,!1),selectionSet:E(e),loc:Q(e,n)}}(e)}else if(H(e,N.TokenKind.BRACE_L))return d(e);throw ee(e)}function d(e){var n=e.token;if(H(e,N.TokenKind.BRACE_L))return{kind:a.Kind.OPERATION_DEFINITION,operation:"query",name:void 0,variableDefinitions:[],directives:[],selectionSet:E(e),loc:Q(e,n)};var t,r=s(e);return H(e,N.TokenKind.NAME)&&(t=i(e)),{kind:a.Kind.OPERATION_DEFINITION,operation:r,name:t,variableDefinitions:l(e),directives:K(e,!1),selectionSet:E(e),loc:Q(e,n)}}function s(e){var n=$(e,N.TokenKind.NAME);switch(n.value){case"query":return"query";case"mutation":return"mutation";case"subscription":return"subscription"}throw ee(e,n)}function l(e){return H(e,N.TokenKind.PAREN_L)?te(e,N.TokenKind.PAREN_L,f,N.TokenKind.PAREN_R):[]}function f(e){var n=e.token;return{kind:a.Kind.VARIABLE_DEFINITION,variable:v(e),type:($(e,N.TokenKind.COLON),P(e)),defaultValue:z(e,N.TokenKind.EQUALS)?A(e,!0):void 0,directives:K(e,!0),loc:Q(e,n)}}function v(e){var n=e.token;return $(e,N.TokenKind.DOLLAR),{kind:a.Kind.VARIABLE,name:i(e),loc:Q(e,n)}}function E(e){var n=e.token;return{kind:a.Kind.SELECTION_SET,selections:te(e,N.TokenKind.BRACE_L,p,N.TokenKind.BRACE_R),loc:Q(e,n)}}function p(e){return H(e,N.TokenKind.SPREAD)?function(e){var n=e.token;$(e,N.TokenKind.SPREAD);var t=Z(e,"on");if(!t&&H(e,N.TokenKind.NAME))return{kind:a.Kind.FRAGMENT_SPREAD,name:h(e),directives:K(e,!1),loc:Q(e,n)};return{kind:a.Kind.INLINE_FRAGMENT,typeCondition:t?L(e):void 0,directives:K(e,!1),selectionSet:E(e),loc:Q(e,n)}}(e):function(e){var n,t,r=e.token,o=i(e);z(e,N.TokenKind.COLON)?(n=o,t=i(e)):t=o;return{kind:a.Kind.FIELD,alias:n,name:t,arguments:y(e,!1),directives:K(e,!1),selectionSet:H(e,N.TokenKind.BRACE_L)?E(e):void 0,loc:Q(e,r)}}(e)}function y(e,n){var t=n?_:O;return H(e,N.TokenKind.PAREN_L)?te(e,N.TokenKind.PAREN_L,t,N.TokenKind.PAREN_R):[]}function O(e){var n=e.token,t=i(e);return $(e,N.TokenKind.COLON),{kind:a.Kind.ARGUMENT,name:t,value:A(e,!1),loc:Q(e,n)}}function _(e){var n=e.token;return{kind:a.Kind.ARGUMENT,name:i(e),value:($(e,N.TokenKind.COLON),g(e)),loc:Q(e,n)}}function h(e){if("on"===e.token.value)throw ee(e);return i(e)}function A(e,n){var t=e.token;switch(t.kind){case N.TokenKind.BRACKET_L:return function(e,n){var t=e.token,r=n?g:S;return{kind:a.Kind.LIST,values:ne(e,N.TokenKind.BRACKET_L,r,N.TokenKind.BRACKET_R),loc:Q(e,t)}}(e,n);case N.TokenKind.BRACE_L:return function(e,n){var t=e.token;return{kind:a.Kind.OBJECT,fields:ne(e,N.TokenKind.BRACE_L,function(){return function(e,n){var t=e.token,r=i(e);return $(e,N.TokenKind.COLON),{kind:a.Kind.OBJECT_FIELD,name:r,value:A(e,n),loc:Q(e,t)}}(e,n)},N.TokenKind.BRACE_R),loc:Q(e,t)}}(e,n);case N.TokenKind.INT:return e.advance(),{kind:a.Kind.INT,value:t.value,loc:Q(e,t)};case N.TokenKind.FLOAT:return e.advance(),{kind:a.Kind.FLOAT,value:t.value,loc:Q(e,t)};case N.TokenKind.STRING:case N.TokenKind.BLOCK_STRING:return b(e);case N.TokenKind.NAME:return"true"===t.value||"false"===t.value?(e.advance(),{kind:a.Kind.BOOLEAN,value:"true"===t.value,loc:Q(e,t)}):"null"===t.value?(e.advance(),{kind:a.Kind.NULL,loc:Q(e,t)}):(e.advance(),{kind:a.Kind.ENUM,value:t.value,loc:Q(e,t)});case N.TokenKind.DOLLAR:if(!n)return v(e)}throw ee(e)}function b(e){var n=e.token;return e.advance(),{kind:a.Kind.STRING,value:n.value,block:n.kind===N.TokenKind.BLOCK_STRING,loc:Q(e,n)}}function g(e){return A(e,!0)}function S(e){return A(e,!1)}function K(e,n){for(var t=[];H(e,N.TokenKind.AT);)t.push(D(e,n));return t}function D(e,n){var t=e.token;return $(e,N.TokenKind.AT),{kind:a.Kind.DIRECTIVE,name:i(e),arguments:y(e,n),loc:Q(e,t)}}function P(e){var n,t=e.token;return z(e,N.TokenKind.BRACKET_L)?(n=P(e),$(e,N.TokenKind.BRACKET_R),n={kind:a.Kind.LIST_TYPE,type:n,loc:Q(e,t)}):n=L(e),z(e,N.TokenKind.BANG)?{kind:a.Kind.NON_NULL_TYPE,type:n,loc:Q(e,t)}:n}function L(e){var n=e.token;return{kind:a.Kind.NAMED_TYPE,name:i(e),loc:Q(e,n)}}function C(e){var n=R(e)?e.lookahead():e.token;if(n.kind===N.TokenKind.NAME)switch(n.value){case"schema":return function(e){var n=e.token;W(e,"schema");var t=K(e,!0),r=te(e,N.TokenKind.BRACE_L,M,N.TokenKind.BRACE_R);return{kind:a.Kind.SCHEMA_DEFINITION,directives:t,operationTypes:r,loc:Q(e,n)}}(e);case"scalar":return function(e){var n=e.token,t=F(e);W(e,"scalar");var r=i(e),o=K(e,!0);return{kind:a.Kind.SCALAR_TYPE_DEFINITION,description:t,name:r,directives:o,loc:Q(e,n)}}(e);case"type":return function(e){var n=e.token,t=F(e);W(e,"type");var r=i(e),o=x(e),c=K(e,!0),u=j(e);return{kind:a.Kind.OBJECT_TYPE_DEFINITION,description:t,name:r,interfaces:o,directives:c,fields:u,loc:Q(e,n)}}(e);case"interface":return function(e){var n=e.token,t=F(e);W(e,"interface");var r=i(e),o=K(e,!0),c=j(e);return{kind:a.Kind.INTERFACE_TYPE_DEFINITION,description:t,name:r,directives:o,fields:c,loc:Q(e,n)}}(e);case"union":return function(e){var n=e.token,t=F(e);W(e,"union");var r=i(e),o=K(e,!0),c=V(e);return{kind:a.Kind.UNION_TYPE_DEFINITION,description:t,name:r,directives:o,types:c,loc:Q(e,n)}}(e);case"enum":return function(e){var n=e.token,t=F(e);W(e,"enum");var r=i(e),o=K(e,!0),c=Y(e);return{kind:a.Kind.ENUM_TYPE_DEFINITION,description:t,name:r,directives:o,values:c,loc:Q(e,n)}}(e);case"input":return function(e){var n=e.token,t=F(e);W(e,"input");var r=i(e),o=K(e,!0),c=J(e);return{kind:a.Kind.INPUT_OBJECT_TYPE_DEFINITION,description:t,name:r,directives:o,fields:c,loc:Q(e,n)}}(e);case"directive":return function(e){var n=e.token,t=F(e);W(e,"directive"),$(e,N.TokenKind.AT);var r=i(e),o=w(e);W(e,"on");var c=function(e){z(e,N.TokenKind.PIPE);var n=[];do{n.push(X(e))}while(z(e,N.TokenKind.PIPE));return n}(e);return{kind:a.Kind.DIRECTIVE_DEFINITION,description:t,name:r,arguments:o,locations:c,loc:Q(e,n)}}(e)}throw ee(e,n)}function R(e){return H(e,N.TokenKind.STRING)||H(e,N.TokenKind.BLOCK_STRING)}function F(e){if(R(e))return b(e)}function M(e){var n=e.token,t=s(e);$(e,N.TokenKind.COLON);var r=L(e);return{kind:a.Kind.OPERATION_TYPE_DEFINITION,operation:t,type:r,loc:Q(e,n)}}function x(e){var n=[];if(Z(e,"implements")){z(e,N.TokenKind.AMP);do{n.push(L(e))}while(z(e,N.TokenKind.AMP)||e.options.allowLegacySDLImplementsInterfaces&&H(e,N.TokenKind.NAME))}return n}function j(e){return e.options.allowLegacySDLEmptyFields&&H(e,N.TokenKind.BRACE_L)&&e.lookahead().kind===N.TokenKind.BRACE_R?(e.advance(),e.advance(),[]):H(e,N.TokenKind.BRACE_L)?te(e,N.TokenKind.BRACE_L,B,N.TokenKind.BRACE_R):[]}function B(e){var n=e.token,t=F(e),r=i(e),o=w(e);$(e,N.TokenKind.COLON);var c=P(e),u=K(e,!0);return{kind:a.Kind.FIELD_DEFINITION,description:t,name:r,arguments:o,type:c,directives:u,loc:Q(e,n)}}function w(e){return H(e,N.TokenKind.PAREN_L)?te(e,N.TokenKind.PAREN_L,U,N.TokenKind.PAREN_R):[]}function U(e){var n=e.token,t=F(e),r=i(e);$(e,N.TokenKind.COLON);var o,c=P(e);z(e,N.TokenKind.EQUALS)&&(o=g(e));var u=K(e,!0);return{kind:a.Kind.INPUT_VALUE_DEFINITION,description:t,name:r,type:c,defaultValue:o,directives:u,loc:Q(e,n)}}function V(e){var n=[];if(z(e,N.TokenKind.EQUALS)){z(e,N.TokenKind.PIPE);do{n.push(L(e))}while(z(e,N.TokenKind.PIPE))}return n}function Y(e){return H(e,N.TokenKind.BRACE_L)?te(e,N.TokenKind.BRACE_L,G,N.TokenKind.BRACE_R):[]}function G(e){var n=e.token,t=F(e),r=i(e),o=K(e,!0);return{kind:a.Kind.ENUM_VALUE_DEFINITION,description:t,name:r,directives:o,loc:Q(e,n)}}function J(e){return H(e,N.TokenKind.BRACE_L)?te(e,N.TokenKind.BRACE_L,U,N.TokenKind.BRACE_R):[]}function X(e){var n=e.token,t=i(e);if(k.DirectiveLocation.hasOwnProperty(t.value))return t;throw ee(e,n)}function Q(e,n){if(!e.options.noLocation)return new q(n,e.lastToken,e.source)}function q(e,n,t){this.start=e.start,this.end=n.end,this.startToken=e,this.endToken=n,this.source=t}function H(e,n){return e.token.kind===n}function $(e,n){var t=e.token;if(t.kind===n)return e.advance(),t;throw(0,T.syntaxError)(e.source,t.start,"Expected ".concat(n,", found ").concat((0,N.getTokenDesc)(t)))}function z(e,n){var t=e.token;if(t.kind===n)return e.advance(),t}function W(e,n){var t=e.token;if(t.kind===N.TokenKind.NAME&&t.value===n)return e.advance(),t;throw(0,T.syntaxError)(e.source,t.start,'Expected "'.concat(n,'", found ').concat((0,N.getTokenDesc)(t)))}function Z(e,n){var t=e.token;if(t.kind===N.TokenKind.NAME&&t.value===n)return e.advance(),t}function ee(e,n){var t=n||e.token;return(0,T.syntaxError)(e.source,t.start,"Unexpected ".concat((0,N.getTokenDesc)(t)))}function ne(e,n,t,r){$(e,n);for(var i=[];!z(e,r);)i.push(t(e));return i}function te(e,n,t,r){$(e,n);for(var i=[t(e)];!z(e,r);)i.push(t(e));return i}(0,r(u).default)(q,function(){return{start:this.start,end:this.end}})});r(O);var _=i(function(e,n){Object.defineProperty(n,"__esModule",{value:!0}),n.visit=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i,u=void 0,d=Array.isArray(e),s=[e],l=-1,f=[],v=void 0,E=void 0,T=void 0,p=[],N=[],I=e;do{var y=++l===s.length,m=y&&0!==f.length;if(y){if(E=0===N.length?void 0:p[p.length-1],v=T,T=N.pop(),m){if(d)v=v.slice();else{for(var k={},O=Object.keys(v),_=0;_"!==t.kind;)"Comment"===t.kind&&(Object.assign(t,{column:t.column-1}),n.push(t)),t=t.next;return n}(i),function n(t){if(t&&"object"===e(t))for(var r in delete t.startToken,delete t.endToken,delete t.prev,delete t.next,t)n(t[r]);return t}(i),i}catch(e){throw e instanceof T.GraphQLError?n(e.message,{start:{line:e.locations[0].line,column:e.locations[0].column}}):e}},astFormat:"graphql",hasPragma:t,locStart:function(e){return"number"==typeof e.start?e.start:e.loc&&e.loc.start},locEnd:function(e){return"number"==typeof e.end?e.end:e.loc&&e.loc.end}}}}});